Obsah:
- Krok 1: Čo je snímač Hallovho efektu?
- Krok 2: Čo je prerušenie?
- Krok 3: Pripojenia a kód
- Krok 4: Ďalšie opatrenia
Video: Senzor Hallovho efektu Arduino s prerušeniami: 4 kroky
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:59
Ahoj všetci, Dnes vám ukážem, ako môžete k Arduinu pripojiť snímač Hallovho efektu a používať ho s prerušením.
Nástroje a materiály použité vo videu (odkazy na pobočky): Arduino Uno:
Senzory Hallovho efektu:
Rôzne rezistory:
Krok 1: Čo je snímač Hallovho efektu?
Senzor s Hallovým efektom je zariadenie, ktoré sa používa na meranie veľkosti magnetického poľa. Jeho výstupné napätie je priamo úmerné jeho sile.
Senzory s Hallovým efektom sa používajú na aplikácie snímania blízkosti, polohy, detekcie rýchlosti a snímania prúdu.
Ten, s ktorým budem dnes pracovať, je označený ako 3144, čo je spínač s Hallovým efektom, ktorý sa používa predovšetkým pre vysokoteplotné a automobilové aplikácie. Jeho výkon je predvolene vysoký a v prítomnosti magnetického poľa sa raz zníži.
Senzor má 3 piny, VCC, uzemnenie a výstup. V tomto poradí ich môžete identifikovať, ak držíte senzor štítkami smerom k sebe. VCC je vľavo a výstup je na pravej strane. Aby sa zabránilo posunu napätia, medzi VCC a výstupom sa používa 10k odpor, ktorý je v pull-up konfigurácii.
Krok 2: Čo je prerušenie?
Na pripojenie senzora k Arduinu použijeme jednoduchú, ale veľmi výkonnú funkciu s názvom Interrupt. Úlohou prerušenia je zabezpečiť, aby procesor rýchlo reagoval na dôležité udalosti. Keď je detegovaný určitý signál, prerušenie (ako naznačuje názov) preruší čokoľvek, čo procesor robí, a vykoná nejaký kód navrhnutý tak, aby reagoval na akýkoľvek vonkajší stimul, ktorý je privádzaný do Arduina. Akonáhle je tento kód zabalený, procesor sa vráti k tomu, čo pôvodne robil, akoby sa nič nestalo!
Úžasné na tom je, že štruktúruje váš systém tak, aby reagoval rýchlo a efektívne na dôležité udalosti, ktoré nie je ľahké v softvéri predvídať. Najlepšie zo všetkého je, že uvoľní váš procesor pre ďalšie činnosti, zatiaľ čo čaká na príchod udalosti.
Arduino Uno má dva piny, ktoré môžeme použiť ako prerušenia, pin 2 a 3. Funkcia, ktorú používame na registráciu kolíka ako prerušenia, sa nazýva attachInterrupt, kde ako prvý parameter posielame pin, ktorý sa má použiť, druhý parameter je je zistený názov funkcie, ktorú chceme zavolať po prerušení, a ako tretí parameter odosielame v režime, v ktorom chceme, aby prerušenie fungovalo. V popise videa je odkaz na úplnú referenciu na túto funkciu.
Krok 3: Pripojenia a kód
V našom prípade pripojíme snímač Hallových efektov k pinu 2 na Arduine. Na začiatku náčrtu definujeme premenné pre počet pinov vstavanej LED diódy, kolík prerušenia a tiež bajtovú premennú, ktorú použijeme na úpravu prostredníctvom prerušenia. Je dôležité, aby sme to označili ako prchavé, aby kompilátor vedel, že sa modifikuje mimo hlavného toku programu cez prerušenie.
Vo funkcii nastavenia najskôr špecifikujeme režimy na použitých kolíkoch a potom pripojíme prerušenie, ako bolo vysvetlené vyššie. Jednou z ďalších funkcií, ktoré tu používame, je digitalPinToInterrupt, ktorý, ako naznačuje názov, prekladá číslo PIN na číslo prerušenia.
V hlavnej metóde napíšeme stavovú premennú na pin LED a pridáme veľmi malé oneskorenie, aby mal procesor čas pracovať správne.
Tam, kde sme pripojili prerušenie, sme ako druhý parameter uviedli blikanie a toto je názov funkcie, ktorú treba volať. Vnútri len prevrátime hodnotu štátu.
Tretím parametrom funkcie attachIntertupt je režim, v ktorom funguje. Keď to máme ako ZMENU, funkcia blikania sa spustí zakaždým, keď sa zmení stav prerušenia, takže sa to raz zavolá, keď sa magnet priblížime k senzoru, a znova sa spustí, keď ho odstránime. Týmto spôsobom svieti LED dióda, zatiaľ čo držíme magnet v blízkosti senzora.
Ak teraz zmeníme režim na RISING, funkcia blikania sa spustí iba vtedy, keď je na kolíku prerušenia vidieť stúpajúcu hranu signálu. Teraz, keď priblížime magnet k senzoru, dióda LED sa buď vypne alebo zapne, takže sme v podstate urobili magnetický spínač.
Posledný režim, ktorý vyskúšame, je NÍZKY. Keď je magnet zatvorený, funkcia blikania sa bude neustále spúšťať a LED dióda bliká, pričom je jej stav neustále obrátený. Keď odstránime magnet, je skutočne nepredvídateľné, ako stav skončí, pretože to závisí od načasovania. Tento režim je však skutočne užitočný, ak potrebujeme vedieť, ako dlho bolo tlačidlo stlačené, pretože na to môžeme použiť funkcie časovania.
Krok 4: Ďalšie opatrenia
Prerušenia sú jednoduchým spôsobom, ako zaistiť, aby váš systém lepšie reagoval na úlohy citlivé na čas. Majú tiež ďalšiu výhodu v uvoľnení vašej hlavnej `slučky ()`, aby sa mohli zamerať na niektoré primárne úlohy v systéme. (Zistil som, že vďaka tomu je môj kód pri ich použití trocha organizovanejší - je jednoduchšie pochopiť, na čo bol hlavný kus kódu navrhnutý, zatiaľ čo prerušenia zvládajú pravidelné udalosti.) Tu uvedený príklad je asi najviac základný prípad použitia prerušenia - môžete ich použiť na čítanie zariadenia I2C, odosielanie alebo prijímanie bezdrôtových dát alebo dokonca štartovanie alebo zastavovanie motora.
Ak máte zaujímavé využitie prerušenia alebo senzora Hallových efektov, dajte mi vedieť v komentároch, dajte like a zdieľajte tento návod a nezabudnite sa prihlásiť na odber môjho kanála YouTube, kde nájdete ďalšie úžasné návody a projekty v budúcnosť.
Na zdravie a ďakujem za sledovanie!
Odporúča:
Konverzia senzora Hallovho efektu Logitech 3D Extreme Pro: 9 krokov
Konverzia senzora Hallovho efektu Logitech 3D Extreme Pro: Ovládač kormidla na mojom joysticku zhasol. Skúšal som hrnce rozobrať a vyčistiť, ale veľmi to nepomohlo. Začal som hľadať náhradné hrnce a narazil som na niekoľko rôznych webových stránok spred niekoľkých rokov, ktoré odkazujú na
Ako vytvoriť vlastný anemometer pomocou jazýčkových spínačov, snímača Hallovho efektu a niektorých odkazov na Nodemcu - časť 2 - Software: 5 krokov (s obrázkami)
Ako si zostrojiť vlastný anemometer pomocou jazýčkových spínačov, senzora Hallovho efektu a niektorých zápiskov v Nodemcu - časť 2 - Software: Úvod Toto je pokračovanie prvého príspevku „Ako si postaviť vlastný anemometer pomocou jazýčkových spínačov, senzora Hallovho efektu a niektorých útržkov na Nodemcu - časť 1 - Hardvér " - kde ukážem, ako zostaviť nameranú rýchlosť a smer vetra
Ako si zostrojte svoj vlastný anemometer pomocou jazýčkových spínačov, senzora Hallovho efektu a niektorých kúskov na Nodemcu. - Časť 1 - Hardvér: 8 krokov (s obrázkami)
Ako si zostrojte svoj vlastný anemometer pomocou jazýčkových spínačov, senzora Hallovho efektu a niektorých kúskov na Nodemcu. - Časť 1 - Hardvér: Úvod Odkedy som začal so štúdiom Arduino a Maker Culture, rád som staval užitočné zariadenia pomocou nevyžiadanej pošty a šrotu, ako sú uzávery fliaš, kusy PVC, plechovky od nápojov atď. Rád by som dal sekundu život každému kúsku alebo akémukoľvek partnerovi
Senzor Hallovho efektu: Vianočný hudobný box: 4 kroky
Snímač Hall Effect: Vianočný hudobný box: Jedná sa o hudobný box, ktorý po otvorení prehráva hudbu (pozrite si video!). Je to úžasný, špeciálny a jedinečný spôsob, ako zabaliť darčeky pre svojho výnimočného človeka! Pomocou senzora s Hallovým efektom kontroluje, či bolo veko otvorené kvôli nedostatku magnetického poľa a
Senzor Hallovho efektu na Arduine pomocou Fidget Spinner: 3 kroky (s obrázkami)
Senzor Hallovho efektu na Arduine pomocou Fidget Spinner: Abstrakt V tomto projekte vysvetľujem, ako funguje snímač Hallovho efektu merajúci rýchlosť fidget spinnera s doskou Arduino. funguje: -Senzor Hallovho efektu je prevodník, ktorý mení svoje výstupné napätie v závislosti od magnetického poľa. Hallov efekt