- Reed-switch
- Komponenter, der kræves
- Arduino Reed Switch kredsløbsdiagram
- Arbejde med Reed Switch med Arduino
- Kode forklaring
Reed-switch bruges i mange af de virkelige applikationer som magnetisk dørkontakt, bærbare computere, smartphones osv. I denne artikel lærer vi om Reed Switch og guider dig til Interface en Reed-switch med Arduino.
Reed-switch
Reed switch er dybest set en elektrisk switch, der betjenes, når et magnetfelt bringes tæt på det. Det blev opfundet af WB Ellwood i 1936 på klokkelaboratorier. Den består af to små metalstykker, der holdes inde i et glasrør under vakuum. I en typisk reed-switch vil to metalstykker være lavet af et ferromagnetisk materiale og dækket med rhodium eller ruthenium for at give dem lang levetid. Den kontakten vil blive aktiveret, når der er en tilstedeværelse af magnetfelt omkring kontakten.
Glaskabinettet på de to metalstykker beskytter dem mod snavs, støv og andre partikler. Reed-switch kan betjenes i ethvert miljø såsom miljø, hvor der er antændelig gas eller miljø, hvor korrosion vil påvirke åbne kontaktkontakter.
Der er to typer reed-switch.
- Normalt åben reed switch
- Normalt lukket rørkontakt
I normalt åbent rørkontakt er kontakten åben i fravær af magnetfelt, og den er lukket i nærvær af magnetfelt. Under tilstedeværelsen af magnetfelt tiltrækker to metalkontakter inde i glasrøret hinanden for at komme i kontakt.
I normalt lukket rørkontakt er kontakten lukket i fravær af magnetfelt, og den er åben i nærvær af magnetfelt.
Anvendelser af Reed switch
- Anvendes i telefoncentral
- I bærbare computere til at sætte skærmen i dvale, hvis låget er lukket
- Bruges i vindues- og dørsensorer i indbrudssystem
Komponenter, der kræves
- Arduino Uno
- Reed-switch
- Modstande
- LED
- Magnet
- Tilslutning af ledninger
Arduino Reed Switch kredsløbsdiagram
Arbejde med Reed Switch med Arduino
Arduino Uno er et open source-microcontroller-kort baseret på ATmega328p microcontroller. Den har 14 digitale stifter (hvoraf 6 stifter kan bruges som PWM-udgange), 6 analoge indgange, indbyggede spændingsregulatorer osv. Arduino Uno har 32 KB flashhukommelse, 2 KB SRAM og 1 KB EEPROM. Det fungerer ved urfrekvensen på 16MHz. Arduino Uno understøtter seriel, I2C, SPI-kommunikation til kommunikation med andre enheder. Tabellen nedenfor viser den tekniske specifikation for Arduino Uno.
Mikrocontroller |
ATmega328p |
Driftsspænding |
5V |
Indgangsspænding |
7-12V (anbefales) |
Digitale I / O-ben |
14 |
Analoge ben |
6 |
Glimtvis erindring |
32KB |
SRAM |
2KB |
EEPROM |
1KB |
Urets hastighed |
16 MHz |
For at interface reed switch med Arduino er vi nødt til at opbygge et spændingsdelerkredsløb som vist i figuren nedenfor. Vo er + 5V, når kontakten er åben, og 0V, når kontakten er lukket. Vi bruger en normalt åben reed-switch i dette projekt. Afbryderen er lukket i nærvær af magnetfelt, og den er åben i fravær af magnetfelt.
Kode forklaring
Den komplette kode til dette Arduino reed switch-projekt er givet i slutningen af denne artikel. Koden er opdelt i små meningsfulde bidder og forklaret nedenfor.
I denne del af koden skal vi definere stifter på hvilken Reed-switch og LED, der er forbundet til Arduino. Reed-switch er tilsluttet digital pin 4 i Arduino og LED er forbundet til digital pin 7 i Arduino gennem en strømbegrænsende modstand. Variablen “reed_status” bruges til at holde status for reed-switch.
int LED = 7; int reed_switch = 4; int reed_status;
I denne del af koden skal vi indstille status for ben, hvorpå LED og reed-switch er tilsluttet. Pin nummer 4 er indstillet som input og pin nummer 7 er indstillet som output.
ugyldig opsætning () { pinMode (LED, OUTPUT); pinMode (reed_switch, INPUT); }
Dernæst skal vi læse status for reed switch. Hvis det er lig med 1, er kontakten åben, og LED slukkes. Hvis det er lig med 0, er kontakten lukket, og vi er nødt til at tænde LED. Denne proces gentages hvert sekund. Denne opgave udføres med denne del af koden nedenfor.
ugyldig sløjfe () {reed_status = digitalRead (reed_switch); hvis (reed_status == 1) digitalWrite (LED, LOW); ellers digitalWrite (LED, HIGH); forsinkelse (1000); }
Så som du har set, er det meget nemt at bruge Reed Switch med Arduino.