Kazalo:
- 1. korak: Kaj je Hall -ov senzor?
- 2. korak: Kaj je prekinitev?
- 3. korak: Povezave in koda
- 4. korak: Nadaljnji ukrepi
Video: Senzor učinka Arduino Hall s prekinitvami: 4 koraki
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:05
Zdravo vsi, Danes vam bom pokazal, kako lahko senzor Hallovega učinka povežete z Arduinom in ga uporabite s prekinitvijo.
Orodja in materiali, uporabljeni v videoposnetku (partnerske povezave): Arduino Uno:
Senzorji Hallovih učinkov:
Različni upori:
1. korak: Kaj je Hall -ov senzor?
Hall -ov senzor je naprava, ki se uporablja za merjenje velikosti magnetnega polja. Njegova izhodna napetost je neposredno sorazmerna z jakostjo magnetnega polja skozi to.
Hall -ovi senzorji se uporabljajo za zaznavanje bližine, pozicioniranje, zaznavanje hitrosti in zaznavanje toka.
Tisti, s katerim bom danes delal, je označen kot 3144, ki je stikalo z učinkom Hall -a, ki se uporablja predvsem za visokotemperaturne in avtomobilske aplikacije. Njegov izhod je privzeto visok in se enkrat zniža v prisotnosti magnetnega polja.
Senzor ima 3 zatiče, VCC, ozemljitev in izhod. Prepoznate jih lahko v tem vrstnem redu, če držite senzor z nalepkami proti sebi. VCC je na levi, izhod pa na desni strani. Za preprečitev kakršnega koli premika napetosti se med VCC in izhodom v vlečni konfiguraciji uporablja 10k upor.
2. korak: Kaj je prekinitev?
Za priključitev senzorja na Arduino bomo uporabili preprosto, a zelo zmogljivo funkcijo, imenovano Interrupt. Naloga prekinitve je zagotoviti, da se procesor hitro odzove na pomembne dogodke. Ko zaznamo določen signal, prekinitev (kot že ime pove) prekine vse, kar procesor počne, in izvede neko kodo, namenjeno odzivanju na kakršen koli zunanji dražljaj, ki se napaja v Arduino. Ko se koda zaključi, se procesor vrne k temu, kar je prvotno počel, kot da se ni nič zgodilo!
Pri tem je super to, da sistem strukturira tako, da se hitro in učinkovito odzove na pomembne dogodke, ki jih programska oprema ni težko predvideti. Najboljše od vsega je, da osvobodi vaš procesor za opravljanje drugih stvari, medtem ko čaka na pojav dogodka.
Arduino Uno ima dva zatiča, ki ju lahko uporabimo kot prekinitve, pin 2 in 3. Funkcija, ki jo uporabljamo za registracijo zatiča kot prekinitve, se imenuje attachInterrupt, kjer kot prvi parameter pošljemo pin, ki ga je treba uporabiti, je drugi parameter ime funkcije, ki jo želimo poklicati, ko zazna prekinitev, in kot tretji parameter pošljemo v načinu, v katerem želimo, da prekinitev deluje. V opisu videoposnetka je povezava do celotne reference za to funkcijo.
3. korak: Povezave in koda
V našem primeru senzor Hallovih učinkov povežemo z nožico 2 na Arduinu. Na začetku skice določimo spremenljivke za številko pina vgrajene LED, prekinitveni pin in bajtno spremenljivko, ki jo bomo uporabili za spreminjanje prek prekinitve. Ključno je, da to označimo kot nestanovitno, da bo prevajalnik vedel, da se spreminja zunaj glavnega toka programa skozi prekinitev.
V nastavitveni funkciji najprej določimo načine na uporabljenih zatičih, nato pa prekinitev pripnemo, kot je bilo že pojasnjeno. Druga funkcija, ki jo uporabljamo tukaj, je digitalPinToInterrupt, ki kot že ime pove, številko pin prevede v številko prekinitve.
Pri glavni metodi samo zapišemo spremenljivko stanja na LED zatič in dodamo zelo majhno zamudo, da ima procesor dovolj časa za pravilno delovanje.
Kjer smo priložili prekinitev, smo kot drugi parameter podali utripanje in to je ime funkcije, ki jo je treba poklicati. V notranjosti samo obrnemo državno vrednost.
Tretji parameter funkcije attachIntertupt je način, v katerem deluje. Ko ga imamo kot CHANGE, se bo funkcija utripanja izvajala vsakič, ko se spremeni stanje prekinitve, zato jo bomo enkrat poklicali, ko magnet približamo senzorju, in znova sprožili, ko ga odstranimo. Na ta način sveti LED, medtem ko magnet držimo blizu senzorja.
Če način spremenimo v RISING, se bo funkcija utripanja sprožila šele, ko bo na prekinitvenem zatiču viden naraščajoči rob signala. Zdaj, ko magnet približamo senzorju, se LED -dioda bodisi izklopi ali prižge, zato smo v bistvu naredili magnetno stikalo.
Končni način, ki ga bomo poskusili, je NIZKA. Ko je magnet blizu, se bo funkcija utripanja nenehno sprožala in LED bo utripala, pri čemer bo stanje ves čas obrnjeno. Ko odstranimo magnet, je res nepredvidljivo, kako se bo stanje končalo, saj je to odvisno od časa. Vendar je ta način zelo koristen, če moramo vedeti, kako dolgo je bil pritisnjen gumb, saj lahko to določimo s funkcijami za merjenje časa.
4. korak: Nadaljnji ukrepi
Prekinitve so preprost način, da naredite sistem bolj odziven na časovno občutljiva opravila. Prav tako imajo dodatno prednost, da osvobodijo vašo glavno `zanko () ', da se osredotočijo na nekaj primarnih nalog v sistemu. (Ugotavljam, da je zaradi tega moja koda nekoliko bolj organizirana, ko jih uporabljam - lažje je videti, čemu je bil namenjen glavni del kode, medtem ko prekinitve obravnavajo periodične dogodke.) Primer, prikazan tukaj, je skoraj najbolj osnovni primer uporabe prekinitve - uporabite jih lahko za branje naprave I2C, pošiljanje ali sprejemanje brezžičnih podatkov ali celo zagon ali ustavitev motorja.
Če imate zanimivo uporabo senzorja za prekinitve ali halne učinke, mi to sporočite v komentarjih, všečkajte in delite ta Instructable ter se ne pozabite naročiti na moj YouTube kanal za več čudovitih vaj in projektov v prihodnost.
Na zdravje in hvala za ogled!
Priporočena:
Raspberry Pi A1332 Precision Hall - Senzor kota učinka Java Vadnica: 4 koraki
Raspberry Pi A1332 Precision Hall - Senzor kota učinka Java Vadnica: A1332 je 360 ° brezkontaktno programabilno tipalo magnetnega kota z visoko ločljivostjo. Zasnovan je za digitalne sisteme z vmesnikom I2C. Zgrajen je na tehnologiji CVH (Circular Vertical Hall) in programirljivem mikroprocesorskem signalu
Preiskava učinka resonančne strukture s papirnatim satjem: 6 korakov
Preiskava učinka resonančne strukture s papirnatim satjem: Mislil sem, da bi tisti, ki se radi ukvarjajo z alternativnimi energijami, to morda poskusili. Temelji na odkritju Viktorja Grebennkova. Zgodbo lahko najdemo na številnih mestih, toda to na keelynetu sem našel http://www.keelynet.com/gr
Generator tonov Arduino brez knjižnice ali zaporednih funkcij (s prekinitvami): 10 korakov
Arduino Tone Generator brez knjižnice ali zaporednih funkcij (s prekinitvami): To ni nekaj, za kar bi običajno poučeval, raje imam kovinsko obdelavo, a ker sem študent elektrotehnike in moram opraviti tečaj mikrokrmilnikov ( Embedded Systems Design), mislil sem, da bom na enem od svojih p
Hall -ov senzor učinka na Arduinu z vrtenjem vrtenja: 3 koraki (s slikami)
Senzor Hallovih učinkov na Arduinu z uporabo Fidget Spinnerja: Povzetek V tem projektu razlagam, kako deluje senzor Hall efekta, ki meri hitrost vrtenja fidgeta z arduino ploščo. deluje: -A Hall-ov senzor je pretvornik, ki spreminja svojo izhodno napetost kot odziv na magnetno polje. Hall učinek
Preoblikovanje kamere v "vojaško nočno videnje", dodajanje učinka nočne vizije ali ustvarjanje načina "NightVision" na kateri koli kameri !!!: 3 koraki
Preoblikovanje vaše kamere v "vojaško nočno vizijo", dodajanje učinka nočne vizije ali ustvarjanje načina "NightVision" na kateri koli kameri !!!: *** To je bilo že vpleteno v DIGITALNO DANE FOTOGRAFIJO NATEČAJ, Glasujte zame ** *Če potrebujete pomoč, nam pošljite e -pošto: [email protected] Govorim angleško, francosko, japonsko, špansko in poznam še druge jezike, če