Obsah:
- Krok 1: Základní hardware, který požadujeme
- Krok 2: Připojení hardwaru
- Krok 3: Kódování Pythonu pro Raspberry Pi
- Krok 4: Praktičnost kodexu
- Krok 5: Aplikace a funkce
- Krok 6: Závěr
Video: 3osý akcelerometr, ADXL345 s Raspberry Pi pomocí Pythonu: 6 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:21
Přemýšlíte o miniaplikaci, která dokáže zkontrolovat bod, ve kterém je váš Offroader nakloněn směrem k prodlevě. Nebylo by to příjemné v případě, že je někdo upraven, když existuje možnost převrhnutí? Evidentně ano. Bylo by to opravdu užitečné pro jednotlivce, kteří rádi jezdí na hory a podnikové výlety.
Bezpochyby je to skutečně brilantní období pokročilého vyhodnocování hodnocení, IoT je na nás. Jako milovníci gadgetů a programování věříme, že Raspberry Pi, počítač s mikroprocesorem s operačním systémem micro Linux, zacházel s kreativními schopnostmi lidí obecně a přinesl s sebou ohromný pokrok v inovativních metodikách. Jaké jsou tedy myslitelné výsledky toho, co můžeme udělat v případě, že máme poblíž Raspberry Pi a 3osý akcelerometr? Měli bychom objevit! V tomto úkolu pocítíme zrychlení na 3 osách, X, Y a Z s využitím Raspberry Pi a ADXL345, 3osého akcelerometru. Při této exkurzi bychom tedy měli pozorovat výrobu rámce pro měření 3-dimenzionálního zrychlení nahoru nebo G-Force.
Krok 1: Základní hardware, který požadujeme
Problémů pro nás bylo méně, protože máme spoustu věcí, ze kterých můžeme pracovat. Nicméně víme, jak je pro ostatní obtížné sestavit správnou část v správném čase z vhodného místa, a to je odůvodněné bez ohledu na každý cent. Pomohli bychom vám tedy ve všech regionech. Přečtěte si následující informace, abyste získali kompletní seznam dílů.
1. Raspberry Pi
Prvním krokem bylo získání desky Raspberry Pi. Tento malý počítač s nízkým výkonem poskytuje levnou a obecně jednoduchou základnu pro podnikání s elektronikou, internet věcí (IoT), chytrá města, školní vzdělávání.
2. I2C štít pro Raspberry Pi
Hlavní věc, které Raspberry Pi skutečně chybí, je port I²C. Konektor TOUTPI2 I²C vám tedy dává smysl využívat Rasp Pi se zařízeními MULTIPLE I²C. Je přístupný v obchodě DCUBE
3. 3osý akcelerometr, ADXL345
ADXL345, vyráběný společností Analog Devices, je 3osý akcelerometr s nízkým výkonem a 13bitovým měřením s vysokým rozlišením až ± 16 g. Tento senzor jsme získali z obchodu DCUBE
4. Připojovací kabel
V obchodě DCUBE jsme měli přístupný propojovací kabel I2C
5. Micro USB kabel
Nejméně zmatený, ale nejpřísnější, pokud jde o nutnost napájení, je Raspberry Pi! Nejjednodušší přístup k zapnutí Raspberry Pi je pomocí kabelu Micro USB.
6. Web Access is Need
Přístup na web lze posílit pomocí kabelu Ethernet (LAN) spojeného s místní sítí a webem. Na druhou stranu se můžete spojit s bezdrátovou sítí pomocí bezdrátového klíče USB, který bude vyžadovat konfiguraci.
7. Kabel HDMI/vzdálený přístup
S kabelem HDMI na desce jej můžete připojit k digitální televizi nebo monitoru. Je třeba ušetřit peníze! Raspberry Pi lze vzdáleně dostat k používání charakteristických strategií, jako je SSH a přístup přes web. Můžete použít zdrojový software PuTTYopen.
Krok 2: Připojení hardwaru
Vytvořte obvod podle schématu. Nakreslete obrys a záměrně proveďte konfiguraci.
Připojení Raspberry Pi a I2C Shield
Především vezměte Raspberry Pi a všimněte si na něm I2C Shield. Jemně přitlačte štít na GPIO piny Pi a jsme hotovi s touto progresí tak jednoduchou jako koláč (viz snap).
Připojení senzoru a Raspberry Pi
Vezměte s sebou senzor a propojte kabel I2C. Pro správnou funkci tohoto kabelu si prosím VŽDY spomeňte výstup I2C se vstupem I2C. Totéž je třeba vzít v úvahu pro Raspberry Pi s I2C štítem namontovaným přes GPIO piny.
Předepisujeme využití kabelu I2C, protože vyvrací požadavek na prohlížení vývodů, pájení a malátnosti způsobené i tou nejmenší chybou. Pomocí tohoto základního kabelu typu plug and play můžete do aplikace snadno zavádět, vyměňovat zařízení nebo přidávat další zařízení. Díky tomu jsou věci nekomplikované.
Poznámka: Hnědý vodič by měl spolehlivě sledovat uzemnění (GND) mezi výstupem jednoho zařízení a vstupem jiného zařízení
Klíčem je webová síť
Aby náš podnik vyhrál, potřebujeme pro naše Raspberry Pi webové připojení. K tomu máte alternativy, jako je propojení ethernetového (LAN) kabelu s domácím systémem. Kromě toho je volitelnou cestou využití konektoru WiFi. Někdy k tomu potřebujete ovladač, aby to fungovalo. Přikloňte se tedy k tomu, který má na obrázku Linux.
Zdroj napájení
Zapojte kabel Micro USB do napájecího konektoru Raspberry Pi. Rozsviťte to a můžeme vyrazit.
Připojení k obrazovce
Můžeme mít kabel HDMI přidružený k jiné obrazovce. V některých případech se musíte dostat k Raspberry Pi bez jeho připojení k obrazovce, nebo budete muset zobrazit některá data z něj odjinud. Je možné, že existují inovativní a finančně důvtipné přístupy k tomu, jak to udělat. Jedním z nich je využití - SSH (vzdálené přihlášení do příkazového řádku). K tomu můžete také použít software PuTTY.
Krok 3: Kódování Pythonu pro Raspberry Pi
Kód Pythonu pro snímač Raspberry Pi a ADXL345 je přístupný v našem úložišti Github.
Než přejdete ke kódu, přečtěte si pokyny uvedené v dokumentu Readme a nastavte podle něj Raspberry Pi. Jednoduše se na minutu pozastaví.
Akcelerometr je zařízení, které měří správné zrychlení; správné zrychlení není totéž jako zrychlení souřadnic (rychlost změny rychlosti). Jednoosé a víceosé modely akcelerometru jsou přístupné k identifikaci velikosti a směru správného zrychlení jako vektorové veličiny a lze je využít ke snímání orientace, koordinace zrychlení, vibrací, rázů a pádů v odporovém médiu.
Kód je před vámi prostý a je v nejjednodušší struktuře, jakou si dokážete představit, a neměli byste mít žádné problémy.
# Distribuováno s licencí svobodné vůle.# Používejte jej libovolným způsobem, ať už ziskem nebo zdarma, za předpokladu, že se vejde do licencí souvisejících děl. # ADXL345 # Tento kód je navržen pro práci s mini modulem ADXL345_I2CS I2C, který je k dispozici na webu dcubestore.com # https://dcubestore.com/product/adxl345-3-axis-accelerometer-13-bit-i%C2%B2c-mini -modul/
importovat smbus
čas importu
# Získejte autobus I2C
bus = smbus. SMBus (1)
# Adresa ADXL345, 0x53 (83)
# Vyberte registr rychlosti přenosu šířky pásma, 0x2C (44) # 0x0A (10) Normální režim, výstupní datová rychlost = 100 Hz sběrnice. Zápis_byte_data (0x53, 0x2C, 0x0A) # adresa ADXL345, 0x53 (83) # Vyberte registr řízení výkonu, 0x2D (45) # 0x08 (08) Automatické vypnutí spánku bus.write_byte_data (0x53, 0x2D, 0x08) # ADXL345 adresa, 0x53 (83) # Vyberte datový formát registru, 0x31 (49) # 0x08 (08) Vlastní test deaktivován, 4vodičový interface # Full resolution, Range = +/- 2g bus.write_byte_data (0x53, 0x31, 0x08)
time.sleep (0,5)
# Adresa ADXL345, 0x53 (83)
# Přečíst data zpět z 0x32 (50), 2 bajty # Osa X LSB, X-osa MSB data0 = bus.read_byte_data (0x53, 0x32) data1 = bus.read_byte_data (0x53, 0x33)
# Převeďte data na 10 bitů
xAccl = ((data1 & 0x03) * 256) + data0 if xAccl> 511: xAccl -= 1024
# Adresa ADXL345, 0x53 (83)
# Přečíst data zpět z 0x34 (52), 2 bajty # Osa Y LSB, data osy Y MSB = bus.read_byte_data (0x53, 0x34) data1 = bus.read_byte_data (0x53, 0x35)
# Převeďte data na 10 bitů
yAccl = ((data1 & 0x03) * 256) + data0 if yAccl> 511: yAccl -= 1024
# Adresa ADXL345, 0x53 (83)
# Přečíst data zpět z 0x36 (54), 2 bajty # Z-osa LSB, osa Z MSB data0 = bus.read_byte_data (0x53, 0x36) data1 = bus.read_byte_data (0x53, 0x37)
# Převeďte data na 10 bitů
zAccl = ((data1 & 0x03) * 256) + data0 if zAccl> 511: zAccl -= 1024
# Výstup dat na obrazovku
tisk "Zrychlení v ose X: %d" %xAccl tisk "Zrychlení v ose Y: %d" %yAccl tisk "Zrychlení v ose Z: %d" %zAccl
Krok 4: Praktičnost kodexu
Stáhněte (nebo git pull) kód z Githubu a otevřete jej v Raspberry Pi.
Spusťte příkazy pro kompilaci a nahrání kódu do terminálu a podívejte se na výstup na monitoru. Po několika okamžicích se zobrazí všechny parametry. V návaznosti na zajištění toho, aby vše fungovalo snadno, můžete tento podnik převést na větší úkol.
Krok 5: Aplikace a funkce
ADXL345 je malý, tenký, ultralehký, 3osý akcelerometr s měřením s vysokým rozlišením (13 bitů) až ± 16 g. ADXL345 je vhodný pro aplikace pro mobilní telefony. Kvantifikuje statické zrychlení gravitace v aplikacích s detekcí náklonu a navíc dynamické zrychlení, které se blíží pohybu nebo šoku. Mezi další aplikace patří mobilní telefony, lékařské přístroje, herní a polohovací zařízení, průmyslové přístroje, osobní navigační zařízení a ochrana pevného disku (HDD).
Krok 6: Závěr
Doufám, že tento úkol motivuje další experimentování. Tento senzor I2C je mimořádně flexibilní, levný a dostupný. Jelikož se jedná o do značné míry nestálý systém, existují zajímavé způsoby, jak tento úkol rozšířit a dokonce jej vylepšit.
Můžete například začít s myšlenkou Inclinometru pomocí ADXL345 a Raspberry Pi. Ve výše uvedeném projektu jsme použili základní výpočty. Můžete improvizovat kód pro hodnoty G, úhly sklonu (nebo náklonu), elevaci nebo depresi objektu s ohledem na gravitaci. Poté můžete zkontrolovat možnosti posunu, jako jsou úhly natočení pro náklon (osa zepředu dozadu, X), rozteč (osa ze strany na stranu, Y) a zatáčení (svislá osa, Z). Tento akcelerometr zobrazuje 3-D G-Forces. Tento senzor byste tedy mohli využít různými způsoby, které můžete zvážit.
Pro vaše pohodlí máme na YouTube fascinující video instruktážní cvičení, které vám může pomoci při vyšetřování. Věřte, že tento podnik motivuje další průzkum. Pokračujte v přemýšlení! Mějte na paměti, že je třeba hledat, protože se neustále objevují další.
Doporučuje:
Raspberry Pi - 3osý akcelerometr ADXL345 Python Výukový program: 4 kroky
Raspberry Pi-3osý akcelerometr ADXL345 Python Výukový program: ADXL345 je malý, tenký, ultralehký, 3osý akcelerometr s měřením s vysokým rozlišením (13bitové) až ± 16 g. Data digitálního výstupu jsou formátována jako 16bitová dvojčata a jsou přístupná prostřednictvím digitálního rozhraní I2 C. Měří
Raspberry Pi - 3osý akcelerometr ADXL345 Java Výukový program: 4 kroky
Raspberry Pi-3osý akcelerometr ADXL345 Java Výukový program: ADXL345 je malý, tenký, ultralehký, 3osý akcelerometr s měřením s vysokým rozlišením (13bitové) až ± 16 g. Data digitálního výstupu jsou formátována jako 16bitová dvojčata a jsou přístupná prostřednictvím digitálního rozhraní I2 C. Měří
Raspberry Pi MMA8452Q 3osý 12bitový/8bitový digitální akcelerometr Python Výuka: 4 kroky
3osý 12bitový/8bitový digitální akcelerometr Raspberry Pi MMA8452Q Python Výukový program: MMA8452Q je chytrý, tříosý, kapacitní, mikroobráběný akcelerometr s nízkým výkonem a rozlišením 12 bitů. Flexibilní uživatelsky programovatelné možnosti jsou poskytovány pomocí vestavěných funkcí v akcelerometru, konfigurovatelných na dvě přerušení
Raspberry Pi MMA8452Q 3osý 12bitový/8bitový digitální akcelerometr Java výuka: 4 kroky
3osý 12bitový/8bitový digitální akcelerometr Raspberry Pi MMA8452Q Java: MMA8452Q je chytrý, tříosý, kapacitní, mikroobráběný akcelerometr s nízkým výkonem a rozlišením 12 bitů. Flexibilní uživatelsky programovatelné možnosti jsou poskytovány pomocí vestavěných funkcí v akcelerometru, konfigurovatelných na dvě přerušení
3osý akcelerometr LIS2HH12 modul: 10 kroků (s obrázky)
3osý akcelerometr LIS2HH12 Modul: Tento instruktáž je považován za úroveň začátečníka s určitými zkušenostmi se softwarem arduino a pájením. Modul LIS2HH12 vyrábí společnost Tiny9. Tiny9 je nová společnost, která se zabývá prodejem senzorových modulů pro kutily, společnosti nebo vynálezce. Tam