Hallovi senzorji so senzorji, ki na izhodu oddajo električni signal, ko pride v stik z magnetnim poljem. Analogna vrednost električnega signala na izhodu senzorja je funkcija jakosti magnetnega polja. Hallovi senzorji so danes povsod, uporabljajo se iz različnih razlogov in v vseh vrstah naprav, od mobilnih telefonov do stikal, za merjenje hitrosti, položaja in razdalje v avtomobilih in drugih izdelkih, ki temeljijo na avtomobilski industriji. Zaradi vsestranskosti Hall-ovih senzorjev jih morajo imeti proizvajalci in elektroinženirji, zato nam bo danes pokazal, kako uporabljati Hall-senzor v projektu, ki temelji na Raspberry Pi.
Kadar koli lahko preverite naše druge projekte, ki temeljijo na senzorju Hall, vključno s povezovanjem halskega senzorja z Arduinom.
Zahtevane komponente
Za gradnjo tega projekta so potrebni naslednji sestavni deli / deli;
- Malina pi 2 ali 3
- Kartica SD (najmanj 8 GB)
- Hallov senzor učinka
- Jumper žice
- Breadboards
- LAN kabel
- Vir energije
Nekateri neobvezni deli, ki se lahko uporabljajo, vključujejo:
- Monitor
- Tipkovnica in miška
- Kabel HDMI
- Dongle za Wi-Fi
Ta vadnica bo temeljila na Raspbian stretch OS, zato nadaljujem kot običajno, predvidevam, da ste seznanjeni z nastavitvijo Raspberry Pi z Raspbian stretch OS in veste, kako SSH v Raspberry Pi uporabiti s terminalsko programsko opremo, kot je kit.. Če imate težave s katerim koli od tega, je na tej spletni strani na voljo veliko vadnic Raspberry Pi, ki vam lahko pomagajo.
Za tiste, ki bodo Raspbian stretch OS namestili prvič, je eno vprašanje, ki sem ga odkril večina ljudi, vstop v Raspberry Pi prek ssh. Treba je opozoriti, da je ssh prvotno onemogočen v operacijskem sistemu in za njegovo uporabo potrebujete monitor ali pa v konfiguracijskih možnostih Raspberry Pi ali pa ustvarite prazno datoteko z imenom ssh z računalnikom z operacijskim sistemom Windows ali Linux in kopirajte prazno datoteko v korenski imenik kartice SD. Kopirajte kartico SD v režo za kartico SDd v računalniku, da jo boste lahko kopirali.
Uporaba druge metode je primernejša za tiste, ki vodijo pi v načinu brez glave. Ko so vsi deli pripravljeni, lahko nadaljujemo z gradnjo.
Shema vezja:
Za uporabo Hallovega senzorja učinka z Raspberry Pi priključite komponente v skladu s spodnjo shemo.
Hallov senzor, uporabljen za to vadnico, lahko na izhodu zagotavlja tako analogne kot digitalne vrednosti. Toda za poenostavitev vadnice sem se odločil uporabiti digitalno vrednost, ker bo za uporabo analognega izhoda potrebna povezava ADC-ja z Raspberry Pi.
Koda Python in delovna razlaga:
Python Koda za ta projekt Hall senzor je zelo preprost, vse, kar morate storiti je, da se glasi izhod iz senzorja dvorano, in vklop ali izklop ustrezno LED. LED je treba vklopiti, če je magnet zaznan, drugače pa ga je treba izklopiti.
Vključite Raspberry Pi in SSH vanj s pomočjo kita (če je povezan v brezglavem načinu, kot sem jaz). Kot običajno pri večini mojih projektov, v domačem imeniku ustvarim imenik, kjer je shranjeno vse o vsakem projektu, zato bomo za ta projekt ustvarili imenik z imenom dvorana . Upoštevajte, da je to le osebna želja, da se stvari organizirajo.
Ustvari imenik z uporabo;
mkdir dvoranski senzor
Spremenite imenik v pravkar ustvarjeni novi imenik in odprite urejevalnik, da ustvarite skript python z uporabo;
cd dvoranski senzor
čemur sledi;
nano hallsensorcode.py
Ko se urejevalnik odpre, vtipkamo kodo projekta. Naredil bom kratko razčlenitev kode, da pokažem ključne koncepte, po tem pa bo na voljo celotna koda pythona.
Kodo začnemo z uvozom knjižnice RPI.GPIO, ki nam omogoča pisanje skriptov python za interakcijo z malino pi GPIO zatiči.
uvozi RPi.GPIO kot gpio
Nato nastavimo konfiguracijo oštevilčenja za GPIO Rpi, ki jo bomo radi uporabili in onemogočili opozorila GPIO, da omogočimo izvajanje kode v prostem toku.
gpio.setmode (gpio.BCM) gpio.setwarnings (False)
Nato nastavimo deklarirati zatiče GPIO, na katere sta v skladu z izbrano številko BCM priključena LED in digitalni izhod halskega senzorja.
zatič = 2 ledpin = 3
Nato nastavimo zatiče GPIO kot vhod ali izhod. Zatič, s katerim je priključena LED, je nastavljen kot izhod, tisti, na katerega je povezan senzor Hall, pa je nastavljen kot vhod.
gpio.setup (hallpin, gpio.IN) gpio.setup (ledpin, gpio.OUT)
Ko končamo, napišemo glavni del kode, ki je časovna zanka, ki nenehno ocenjuje izhod iz halskega senzorja in vklopi LED, če je magnet zaznan, in ugasne LED, ko magnet ni zaznan.
medtem ko True: če (gpio.input (hallpin) == False): gpio.output (ledpin, True) print ("magnet zaznan") else: gpio.output (ledpin, False) print ("magnetno polje ni zaznano")
Popolna python kodo z demo video je podan na koncu projekta.
Kopirajte in shranite kodo ter po uporabi vnesite urejevalnik;
CTRL + X, čemur sledi y .
Po shranjevanju še enkrat preglejte povezave in zaženite skript python z uporabo;
sudo python hallsensorcode.py
Ko se skript zažene, vsakič, ko magnet ali karkoli magnetnega približate senzorju dvorane, LED zasveti, kot je prikazano na spodnji sliki.
Od trstičnih stikal za pametni dom do merilnikov hitrosti za kolo je na voljo nekaj super kul stvari, ki jih lahko zgradite s to vadnico na dnu. V spodnjem oddelku za komentarje lahko delite kateri koli projekt, ki ga nameravate zgraditi.
Vsi preverite naše prejšnje projekte, ki temeljijo na senzorju dvorane:
- DIY merilnik hitrosti z uporabo Arduino in obdelavo Android App
- Vezje digitalnega merilnika hitrosti in števca kilometrov z uporabo mikrokrmilnika PIC
- Navidezna resničnost z uporabo Arduina in obdelave
- Merjenje jakosti magnetnega polja z uporabo Arduina