Hallovy snímače jsou snímače, které na svém výstupu vytvářejí elektrický signál při kontaktu s magnetickým polem. Analogová hodnota elektrického signálu na výstupu senzoru je funkcí síly magnetického pole. Hallové senzory jsou dnes všude, používají se z různých důvodů a ve všech druzích zařízení od mobilních telefonů až po přepínače, pro měření rychlosti, polohy a vzdálenosti v automobilech a v dalších výrobcích z automobilového průmyslu. Tato univerzálnost Hallova senzoru je činí nezbytnou pro výrobce a elektrotechniky, a proto nám dnes ukážu, jak používat Hall senzor v projektu založeném na Raspberry Pi.
Kdykoli můžete zkontrolovat naše další projekty založené na Hallově senzoru, včetně propojení Hallova senzoru s Arduino.
Požadované komponenty
K sestavení tohoto projektu jsou vyžadovány následující součásti / součásti;
- Raspberry pi 2 nebo 3
- SD karta (minimálně 8 GB)
- Hallův snímač
- Propojovací vodiče
- Nepájivé pole
- LAN kabel
- Zdroj energie
Některé volitelné součásti, které lze použít, zahrnují:
- Monitor
- Klávesnice a myš
- Kabel HDMI
- Wi-Fi dongle
Tento tutoriál bude založen na Raspbian stretch OS, takže jako obvykle budu předpokládat, že jste obeznámeni s nastavením Raspberry Pi s Raspbian stretch OS a víte, jak SSH do maliny pi pomocí terminálového softwaru, jako je tmel. Pokud máte problémy s něčím z toho, na tomto webu najdete spoustu návodů pro Raspberry Pi, které vám mohou pomoci.
Pro ty, kteří budou instalovat Raspbian stretch OS poprvé, je jedním z problémů, které jsem objevil, většina lidí, dostat se do Raspberry Pi přes ssh. Je třeba poznamenat, že ssh je v operačním systému OS původně zakázán a pro jeho aktivaci budete potřebovat buď monitor, nebo v rámci možností konfigurace maliny pi nebo vytvoříte prázdný soubor ssh pomocí počítače se systémem Windows nebo Linux a zkopírujete prázdný soubor do kořenový adresář SD karty. Budete muset vložit vozík SD do slotu pro kartu SDd v počítači a zkopírovat do něj.
Použití druhé metody je vhodnější pro ty, kteří provozují pí v bezhlavém režimu. S připravenými všemi částmi pak můžeme pokračovat do stavby.
Kruhový diagram:
Pro použití snímače Hallova efektu s Raspberry Pi připojte komponenty podle níže uvedeného schématu.
Hallův snímač použitý v tomto výukovém programu může poskytovat analogové i digitální hodnoty na výstupu. Ale pro zjednodušení tutoriálu jsem se rozhodl použít digitální hodnotu, protože použití analogového výstupu bude vyžadovat připojení ADC k Raspberry Pi.
Pythonský kód a pracovní vysvětlení:
Python kód pro tento projekt Hallův snímač je velmi jednoduchá, vše, co potřebujete udělat, je přečíst výstup z Hallův snímač a zapnout nebo vypnout podle toho LED. LED dioda se rozsvítí, pokud je detekován magnet a jinak se vypne.
Zapněte do něj Raspberry Pi a SSH pomocí tmelu (pokud je připojen v bezhlavém režimu jako já). Jako obvykle u většiny mých projektů vytvořím adresář uvnitř domovského adresáře, kde je uloženo vše o každém projektu, takže pro tento projekt vytvoříme adresář s názvem hala . Vezměte prosím na vědomí, že jde pouze o osobní preference, aby bylo vše v pořádku.
Vytvořte adresář pomocí;
mkdir hallsensor
Změňte adresář na nový adresář, který jste právě vytvořili, a otevřete editor a vytvořte skript pythonu pomocí;
cd hallsensor
následován;
nano hallsensorcode.py
Jakmile se editor otevře, zadáme kód pro projekt. Udělám krátký rozpis kódu, abych ukázal klíčové koncepty, a poté bude k dispozici kompletní kód pythonu.
Spustíme kód importováním knihovny RPI.GPIO, která nám umožňuje psát skripty pythonu pro interakci s GPIO piny Raspberry Pi.
importovat RPi.GPIO jako gpio
Dále nastavíme konfiguraci číslování pro GPIO Rpi, které budeme rádi používat, a deaktivujeme varování GPIO, abychom umožnili provedení volného toku kódu.
gpio.setmode (gpio.BCM) gpio.setwarnings (False)
Poté nastavíme deklaraci pinů GPIO, ke kterým jsou připojeny LED a digitální výstup Hallova senzoru v souladu s vybraným číslováním BCM.
hallpin = 2 ledpin = 3
Dále jsme nastavili GPIO piny jako vstup nebo výstup. Pin, ke kterému je připojena LED, je nastaven jako výstup a ten, ke kterému je připojen Hallův senzor, je nastaven jako vstup.
gpio.setup (hallpin, gpio.IN) gpio.setup (ledpin, gpio.OUT)
Po dokončení napíšeme hlavní část kódu, což je smyčka while, která neustále vyhodnocuje výstup z halového senzoru a rozsvítí LED, pokud je detekován magnet, a zhasne LED, pokud není detekován magnet.
while True: if (gpio.input (hallpin) == False): gpio.output (ledpin, True) print ("magnet detekován") else: gpio.output (ledpin, False) print ("magnetické pole nebylo detekováno")
Kompletní python code s demo Video je uveden na konci projektu.
Zkopírujte a uložte kód a ukončete editor po jeho zadání pomocí;
CTRL + X následované y .
Po uložení znovu projděte svá připojení a spusťte skript pythonu pomocí;
sudo python hallsensorcode.py
Když je skript spuštěn, kdykoli se magnet nebo cokoli magnetické přiblíží k Hallovu senzoru, LED se rozsvítí, jak je znázorněno na obrázku níže.
Od jazýčkových spínačů pro inteligentní domácnost až po rychloměry na kole, existuje několik skvělých věcí, které lze postavit pomocí tohoto tutoriálu na základně. V sekci komentářů níže můžete sdílet jakýkoli projekt, který plánujete postavit.
Všechny zkontrolujte naše předchozí projekty založené na Hallových senzorech:
- DIY rychloměr pomocí Arduina a zpracování aplikace pro Android
- Digitální obvod rychloměru a počítadla kilometrů pomocí mikrokontroléru PIC
- Virtuální realita pomocí Arduina a zpracování
- Měření síly magnetického pole pomocí Arduina