A Hall-érzékelők olyan érzékelők, amelyek kimenetén elektromos jelet generálnak, amikor mágneses mezővel érintkeznek. Az elektromos jel analóg értéke az érzékelő kimenetén a mágneses tér erősségének függvénye. A Hall-érzékelők manapság mindenhol megtalálhatók, ezeket különböző okokból és mindenféle eszközben használják a mobiltelefonoktól a kapcsolókig, sebesség, helyzet és távolság mérésére az autókban és más autóipar alapú termékekben. A hall-érzékelőnek ez a sokoldalúsága kötelezővé teszi őket a gyártók és villamosmérnökök számára, ezért ma megmutatom nekünk, hogyan kell használni a Hall-érzékelőt egy Raspberry Pi alapú projektben.
Bármikor ellenőrizheti a többi Hall Sensor alapú projektünket, beleértve a hall érzékelő és az Arduino összekapcsolását.
Szükséges alkatrészek
A projekt felépítéséhez a következő alkatrészekre / alkatrészekre van szükség;
- Málna pi 2 vagy 3
- SD-kártya (minimum 8 GB)
- Hall Effect Sensor
- Jumper huzalok
- Kenyérlapok
- LAN kábel
- Áramforrás
Néhány választható alkatrész, amely használható:
- Monitor
- Billentyűzet és egér
- HDMI kábel
- Wi-Fi kulcs
Ez az oktatóanyag a Raspbian stretch operációs rendszeren fog alapulni, ezért a szokásos módon folytatva feltételezem, hogy ismeri a Raspberry Pi beállítását a Raspbian stretch operációs rendszerrel, és tudja, hogyan lehet SSH-t tenni a málna pi-be egy terminálszoftver, például gitt segítségével.. Ha bármilyen problémája merül fel, ezen a weboldalon rengeteg Raspberry Pi oktatóanyag segíthet.
Azok számára, akik először telepítik a Raspbian stretch operációs rendszert, az egyik kérdés, amelyet felfedeztem, a legtöbb ember számára az, hogy belépek a Raspberry Pi-be ssh-n keresztül. Meg kell jegyezni, hogy az ssh eredetileg le van tiltva az operációs rendszeren, és vagy monitorra lesz szüksége az engedélyezéséhez, vagy a raspberry pi konfigurációs beállításai alatt, vagy létrehoz egy üres ssh nevű fájlt a Windows vagy Linux számítógépén, és átmásolja az üres fájlt az SD-kártya gyökérkönyvtárát. A másoláshoz be kell helyeznie az SD kosarat a számítógép SDd kártyanyílásába.
A második módszer használata azok számára alkalmas, akik fej nélküli üzemmódban futtatják a pi-t. Miután az összes alkatrész készen áll, folytathatjuk az építkezést.
Kördiagramm:
Ha Hall hatásérzékelőt használ a Raspberry Pi készülékhez, csatlakoztassa az alkatrészeket az alábbi vázlat szerint.
Az oktatóanyaghoz használt Hall szenzor mind analóg, mind digitális értékeket adhat meg a kimeneten. De az oktatóanyag egyszerűsítése érdekében úgy döntöttem, hogy a digitális értéket használom, mert az analóg kimenet használatához ADC csatlakoztatása szükséges a Raspberry Pi-hez.
Python-kód és magyarázat:
A Hall Sensor projekt Python kódja nagyon egyszerű, csak annyit kell tennünk, hogy leolvassuk a Hall érzékelő kimenetét, és ennek megfelelően be- vagy kikapcsoljuk a LED-et. A LED-et fel kell kapcsolni, ha a mágnest észleli, és ellenkező esetben ki kell kapcsolni.
Kapcsolja be a Raspberry Pi-t és az SSH-t gitt segítségével (ha fej nélküli módban csatlakozik, mint én vagyok). A legtöbb projektemhez hasonlóan egy könyvtárat hozok létre a házkönyvtárban, ahol minden projektről mindent tárolunk, ezért ehhez a projekthez létrehozunk egy hall nevű könyvtárat. Felhívjuk figyelmét, hogy ez csak személyes preferencia a dolgok rendezettségének megőrzése érdekében.
Hozza létre a könyvtárat a;
mkdir hallsensor
Változtassa a könyvtárat az imént létrehozott új könyvtárba, és nyisson meg egy szerkesztőt a python parancsfájl létrehozásához;
cd hallsensor
utána;
nano hallsensorcode.py
Amint megnyílik a szerkesztő, beírjuk a projekt kódját. Röviden lebontom a kódot, hogy megmutassam a kulcsfogalmakat, és ezután a teljes python kód elérhetővé válik.
A kódot az RPI.GPIO könyvtár importálásával kezdjük, amely lehetővé teszi számunkra, hogy python szkripteket írjunk a málna pi GPIO csapokhoz.
importálja az RPi.GPIO-t gpio-ként
Ezután beállítjuk az Rpi GPIO-jának számozási konfigurációját, amelyet szívesen használunk és letiltjuk a GPIO-figyelmeztetéseket, hogy lehetővé tegyük a kód szabad áramlását.
gpio.setmode (gpio.BCM) gpio.setwarnings (hamis)
Ezután a kiválasztott BCM számozásnak megfelelően deklaráljuk azokat a GPIO csapokat, amelyekhez a hall és érzékelő LED-je és digitális kimenete csatlakozik.
hallpin = 2 ledpin = 3
Ezután bemenetként vagy kimenetként beállítjuk a GPIO csapokat. Az a csap, amellyel a LED van csatlakoztatva, kimenetnek van beállítva, és az, amelyhez a Hall-érzékelő csatlakozik.
gpio.setup (hallpin, gpio.IN) gpio.setup (ledpin, gpio.OUT)
Ezzel elkészül a kód fő része, amely egy idő hurok, amely folyamatosan értékeli a hall-érzékelő kimenetét, és bekapcsolja a LED-et, ha mágnest észlelnek, és kikapcsolja a LED-et, ha nem érzékelnek mágnest.
míg True: if (gpio.input (hallpin) == Hamis): gpio.output (ledpin, True) print ("mágnes észlelve") else: gpio.output (ledpin, False) print ("mágneses mező nem észlelhető")
A teljes python kódot a demo Video-val a projekt végén adjuk meg.
Másolja és mentse a kódot, és lépjen ki a szerkesztőből, miután beírta a használatba;
CTRL + X, majd y .
Mentés után még egyszer nézze át a kapcsolatait, és futtassa a python parancsfájlt a;
sudo python hallsensorcode.py
A szkript futása közben, amikor egy mágnest vagy bármi mágnest viszünk a hall-érzékelő közelébe, a LED kigyullad, ahogy az alábbi képen látható.
Az intelligens otthoni nádkapcsolóktól kezdve a kerékpár sebességmérőin át számos szuper klassz cucc építhető fel ezzel az oktatóanyaggal a tövében. Nyugodtan ossza meg az alábbi megjegyzés részben bármelyik projektet, amelyet fel kíván építeni.
Mindegyik ellenőrizze korábbi csarnok-érzékelő alapú projektjeinket:
- Barkácssebességmérő az Arduino használatával és az Android App feldolgozásával
- Digitális sebességmérő és kilométeróra áramkör PIC mikrokontrollerrel
- Virtuális valóság az Arduino és a Processing használatával
- Mágneses térerősség mérése Arduino segítségével