- Jazýčkový spínač
- Súčasti sú povinné
- Schéma zapojenia jazýčkového spínača Arduino
- Práca Reed Switch s Arduino
- Vysvetlenie kódu
Jazýčkový spínač sa používa v mnohých skutočných aplikáciách, ako sú magnetické dverové spínače, notebooky, smartphony atď. V tomto článku sa dozvieme viac o jazýčkovom spínači a prevedieme vás prepojením jazýčkového spínača s Arduino.
Jazýčkový spínač
Jazýčkový spínač je v podstate elektrický spínač, ktorý sa ovláda, keď sa k nemu priblíži magnetické pole. Vynašiel ho WB Ellwood v roku 1936 v zvonových laboratóriách. Skladá sa z dvoch malých kovových kúskov držaných vo vákuovej sklenenej trubici. V typickom jazýčkovom spínači budú dva kovové diely vyrobené z feromagnetického materiálu a pokryté ródiom alebo ruténiom, aby mali dlhú životnosť. Prepínač sa aktivuje, ak je prítomnosť magnetického poľa okolo spínača.
Sklenený kryt dvoch kovových častí ich chráni pred nečistotami, prachom a inými časticami. Jazýčkový spínač možno prevádzkovať v akomkoľvek prostredí, napríklad v prostredí s prítomnosťou horľavých plynov alebo v prostredí, kde by korózia ovplyvňovala otvorené kontakty spínača.
Existujú dva typy jazýčkových spínačov.
- Normálne otvorený jazýčkový spínač
- Normálne uzavretý jazýčkový spínač
V normálne otvorenom jazýčkovom spínači je spínač otvorený v neprítomnosti magnetického poľa a je zopnutý v prítomnosti magnetického poľa. Za prítomnosti magnetického poľa sa dva kovové kontakty vo vnútri sklenenej trubice navzájom priťahujú a vytvárajú kontakt.
V normálne zatvorenom jazýčkovom spínači je spínač zatvorený v neprítomnosti magnetického poľa a je otvorený v prítomnosti magnetického poľa.
Aplikácie jazýčkového spínača
- Používa sa v telefónnej ústredni
- Ak je displej zatvorený, v notebookoch sa prepne do režimu spánku
- Používa sa v senzoroch okien a dverí v EZS
Súčasti sú povinné
- Arduino Uno
- Jazýčkový spínač
- Rezistory
- LED
- Magnet
- Pripojovacie vodiče
Schéma zapojenia jazýčkového spínača Arduino
Práca Reed Switch s Arduino
Arduino Uno je doska mikrokontroléra s otvoreným zdrojom založená na mikrokontroléri ATmega328p. Má 14 digitálnych pinov (z toho 6 pinov je možné použiť ako PWM výstup), 6 analógových vstupov, integrované regulátory napätia atď. Arduino Uno má 32 kB flash pamäte, 2 kB SRAM a 1 kB EEPROM. Pracuje na taktovacej frekvencii 16MHz. Arduino Uno podporuje komunikáciu Serial, I2C, SPI pre komunikáciu s inými zariadeniami. Nasledujúca tabuľka zobrazuje technickú špecifikáciu Arduino Uno.
Mikrokontrolér |
ATmega328p |
Prevádzkové napätie |
5V |
Vstupné napätie |
7-12 V (odporúčané) |
Digitálne I / O piny |
14 |
Analógové kolíky |
6 |
Flash pamäť |
32 kB |
SRAM |
2 kB |
EEPROM |
1 kB |
Rýchlosť hodín |
16 MHz |
Pre prepojenie jazýčkového spínača s Arduinom musíme vytvoriť obvod deliča napätia, ako je znázornené na obrázku nižšie. Vo je + 5 V, keď je spínač otvorený, a 0 V, keď je spínač zatvorený. V tomto projekte používame normálne otvorený jazýčkový spínač . Spínač je uzavretý v prítomnosti magnetického poľa a je otvorený v neprítomnosti magnetického poľa.
Vysvetlenie kódu
Kompletný kód pre tento projekt prepínača jazýčkov Arduino je uvedený na konci tohto článku. Kód je rozdelený na malé zmysluplné bloky a je vysvetlený nižšie.
V tejto časti kódu musíme definovať piny, na ktorých je prepínač Reed a LED, ktorá je pripojená k Arduinu. Jazýčkový spínač je pripojený k digitálnemu kolíku 4 Arduina a LED je pripojená k digitálnemu kolíku 7 Arduina cez rezistor obmedzujúci prúd. Premenná „reed_status“ sa používa na udržanie stavu jazýčkového spínača.
int LED = 7; int reed_switch = 4; int reed_status;
V tejto časti kódu musíme nastaviť stav pinov, na ktorých je pripojená LED a jazýčkový spínač. Pin číslo 4 je nastavený ako vstup a pin číslo 7 ako výstup.
void setup () { pinMode (LED, OUTPUT); pinMode (reed_switch, INPUT); }
Ďalej si musíme prečítať stav jazýčkového spínača. Ak je rovná 1, spínač je otvorený a LED dióda zhasne. Ak je rovná 0, spínač je zatvorený a musíme rozsvietiť LED. Tento proces sa opakuje každú sekundu. Táto úloha je splnená pomocou tejto časti kódu nižšie.
void loop () {reed_status = digitalRead (reed_switch); if (reed_status == 1) digitalWrite (LED, LOW); else digitalWrite (LED, VYSOKÉ); oneskorenie (1 000); }
Takže ako ste videli, jeho veľmi ľahko použiteľný spínač Reed Switch s Arduinom.