Obsah:
- Krok 1: Co je snímač s Hallovým efektem?
- Krok 2: Co je přerušení?
- Krok 3: Připojení a kód
- Krok 4: Další akce
Video: Senzor Hallova efektu Arduino s přerušením: 4 kroky
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:22
Ahoj všichni, Dnes vám ukážu, jak můžete připojit snímač halového efektu k Arduinu a používat jej s přerušením.
Nástroje a materiály použité ve videu (odkazy na partnery): Arduino Uno:
Senzory Hallova efektu:
Různé rezistory:
Krok 1: Co je snímač s Hallovým efektem?
Senzor Hallova jevu je zařízení, které se používá k měření velikosti magnetického pole. Jeho výstupní napětí je přímo úměrné síle magnetického pole, které jím prochází.
Senzory s Hallovým efektem se používají pro aplikace snímání blízkosti, polohování, detekce rychlosti a snímání proudu.
Ten, se kterým budu dnes pracovat, je označen jako 3144, což je přepínač s Hallovým efektem, který se používá především pro vysokoteplotní a automobilové aplikace. Jeho výstup je ve výchozím nastavení vysoký a jednou klesá v přítomnosti magnetického pole.
Senzor má 3 piny, VCC, zem a výstup. V tomto pořadí je můžete identifikovat, pokud držíte senzor štítky směrem k sobě. VCC je vlevo a výstup je na pravé straně. Aby se zabránilo jakémukoli driftu napětí, je mezi VCC a výstupem použit 10k rezistor v pull-up konfiguraci.
Krok 2: Co je přerušení?
Pro připojení senzoru k Arduinu použijeme jednoduchou, ale velmi výkonnou funkci s názvem Interrupt. Úkolem přerušení je zajistit, aby procesor rychle reagoval na důležité události. Když je detekován určitý signál, Přerušení (jak název napovídá) přeruší cokoli, co procesor dělá, a spustí nějaký kód navržený tak, aby reagoval na jakýkoli vnější podnět, který je přiváděn do Arduina. Jakmile je tento kód zabalen, procesor se vrátí k tomu, co původně dělal, jako by se nic nestalo!
Úžasné na tom je, že strukturuje váš systém tak, aby reagoval rychle a efektivně na důležité události, které nelze v softwaru snadno předvídat. Nejlepší ze všeho je, že uvolní váš procesor pro provádění dalších věcí, zatímco čeká na událost, která se objeví.
Arduino Uno má dva piny, které můžeme použít jako přerušení, pin 2 a 3. Funkce, kterou používáme k registraci pinu jako přerušení, se nazývá attachInterrupt, kde jako první parametr posíláme pin, který má být použit, druhý parametr je název funkce, kterou chceme volat, jakmile je detekováno přerušení, a jako třetí parametr odesíláme v režimu, ve kterém chceme, aby přerušení fungovalo. V popisu videa je odkaz na úplný odkaz na tuto funkci.
Krok 3: Připojení a kód
V našem příkladu připojíme snímač Hallových efektů ke kolíku 2 na Arduinu. Na začátku skici definujeme proměnné pro počet pinů vestavěné LED diody, kolík přerušení a bajtovou proměnnou, kterou použijeme k modifikaci prostřednictvím přerušení. Je důležité, abychom tento označili jako těkavý, aby kompilátor věděl, že se mění mimo hlavní tok programu přes přerušení.
Ve funkci nastavení nejprve specifikujeme režimy na použitých pinech a poté připojíme přerušení, jak bylo vysvětleno dříve. Jedna další funkce, kterou zde používáme, je digitalPinToInterrupt, která, jak název napovídá, překládá číslo PIN na číslo přerušení.
V hlavní metodě jen napíšeme stavovou proměnnou na LED pin a přidáme velmi malé zpoždění, aby měl procesor čas pracovat správně.
Tam, kde jsme připojili přerušení, jsme jako druhý parametr určili blikání a toto je název funkce, která se má volat. Uvnitř jen převrátíme hodnotu stavu.
Třetím parametrem funkce attachIntertupt je režim, ve kterém funguje. Když to máme jako ZMĚNU, funkce blikání bude spuštěna pokaždé, když se stav přerušení změní, takže bude jednou vyvolána, jakmile se magnet přiblíží k senzoru a spustí se znovu, jakmile jej odstraníme. Tímto způsobem LED svítí, zatímco držíme magnet blízko senzoru.
Pokud nyní změníme režim na RISING, funkce blikání se spustí pouze tehdy, když je na kolíku přerušení vidět stoupající hrana signálu. Nyní pokaždé, když přitáhneme magnet k senzoru, LED buď zhasne nebo se rozsvítí, takže jsme v podstatě vytvořili magnetický spínač.
Poslední režim, který zkusíme, je NÍZKÝ. S ním, když je magnet blízko, bude funkce blikání neustále spuštěna a LED bude blikat, přičemž jeho stav bude neustále invertován. Když magnet odstraníme, je opravdu nepředvídatelné, jak stav skončí, protože to závisí na načasování. Tento režim je však opravdu užitečný, pokud potřebujeme vědět, jak dlouho bylo tlačítko stisknuto, protože k tomu můžeme použít funkce časování.
Krok 4: Další akce
Přerušení jsou jednoduchým způsobem, jak zajistit, aby váš systém lépe reagoval na úkoly citlivé na čas. Mají také tu výhodu, že uvolní vaši hlavní `smyčku ()`, aby se mohla soustředit na nějaký primární úkol v systému. (Zjistil jsem, že to má za následek, že je můj kód trochu organizovanější, když je používám - je snazší zjistit, k čemu byl navržen hlavní kus kódu, zatímco přerušení zpracovávají periodické události.) Zde uvedený příklad je asi nejvíce základní případ použití přerušení - můžete je použít ke čtení zařízení I2C, odesílání nebo přijímání bezdrátových dat nebo dokonce ke spuštění nebo zastavení motoru.
Pokud máte zajímavé využití přerušení nebo senzoru Hallových efektů, určitě mi dejte vědět v komentářích, lajkujte a sdílejte tento Instructable a nezapomeňte se přihlásit k odběru mého kanálu YouTube, kde získáte další úžasné návody a projekty v budoucnost.
Na zdraví a díky za sledování!
Doporučuje:
Konverze senzoru Hallova efektu Logitech 3D Extreme Pro: 9 kroků
Převod senzoru Hallova efektu Logitech 3D Extreme Pro: Ovládání kormidla na mém joysticku zhaslo. Zkoušel jsem hrnce rozebrat a vyčistit, ale moc to nepomohlo. Začal jsem tedy hledat náhradní hrnce a narazil jsem na několik různých webových stránek z doby před několika lety, které odkazují
Tlačítko STM32CubeMX Debounce s přerušením: 5 kroků
Odbití tlačítka STM32CubeMX s přerušením: Dobrý den, v tomto tutoriálu se pokusím poskytnout jednoduché řešení, jak zabránit odrazu tlačítka, což je velmi závažný problém. Na internetu existuje mnoho videí, která nabízejí řešení tohoto problému, ale žádná z nich pro externí přerušení. U všech těchto videí tlačítko
Senzor Hallova efektu: Vánoční hudební skříňka: 4 kroky
Hall Effect Sensor: Christmas Music Box: Toto je hudební skříňka, která přehrává hudbu po otevření (podívejte se na video!). Je to skvělý, speciální a jedinečný způsob, jak zabalit své dárky pro někoho výjimečného! Pomocí senzoru s Hallovým efektem kontroluje, zda bylo víko otevřeno kvůli nedostatku magnetického pole
Generátor tónů Arduino bez knihovny nebo sériových funkcí (s přerušením): 10 kroků
Generátor tónů Arduino bez knihovny nebo sériových funkcí (s přerušeními): Není to něco, o čem bych normálně dělal instruktáž, dávám přednost své zámečnické práci, ale jelikož jsem student elektrotechniky a musím absolvovat třídu na mikrokontrolérech ( Embedded Systems Design), myslel jsem si, že udělám instruktáž na jednom ze svých
Senzor Hallova efektu na Arduinu pomocí Fidget Spinner: 3 kroky (s obrázky)
Senzor Hall Effect na Arduinu pomocí Fidget Spinner: Abstrakt V tomto projektu vysvětluji, jak funguje snímač Hall efektu měřící rychlost fidget spinneru s deskou arduino. pracující: -Senzor Hallova jevu je převodník, který mění své výstupní napětí v reakci na magnetické pole. Hallův efekt