Obsah:
- Krok 1: Potřebné vybavení
- Krok 2: Hardwarová připojení k sestavení obvodu
- Krok 3: Programování Raspberry Pi v Pythonu
- Krok 4: Praktičnost kódu (testování)
- Krok 5: Aplikace a funkce
- Krok 6: Závěr
Video: Nadmořská výška, tlak a teplota pomocí Raspberry Pi s MPL3115A2: 6 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:19
Zní to zajímavě. V této době, kdy všichni přecházíme do generace IoT, je to docela možné. Jako elektronický šílenec jsme si hráli s Raspberry Pi a rozhodli jsme se pomocí těchto znalostí dělat zajímavé projekty. V tomto projektu budeme měřit nadmořskou výšku, tlak vzduchu a teplotu pomocí Raspberry Pi. Takže tady je dokumentace (vždy se mění a rozšiřuje). Doporučujeme začít podle pokynů a zkopírujte kód. Experimentovat můžete později. Začněme tedy.
Krok 1: Potřebné vybavení
1. Raspberry Pi
Prvním krokem bylo získání desky Raspberry Pi. My jsme koupili ten náš a vy také. Začali jsme se učit z tutoriálů, porozuměli jsme konceptům skriptování a připojení a učili jsme se později. Tento malý génius je běžný pro fandy, učitele a při vytváření inovativních prostředí.
2. I²C štít pro Raspberry Pi
INPI2 (adaptér I2C) poskytuje port Raspberry Pi 2/3 a I²C pro použití s více zařízeními I2C. Je k dispozici v Dcube Store
3. Výškoměr, snímač tlaku a teploty, MPL3115A2
MPL3115A2 je tlakový senzor MEMS s rozhraním I²C, který poskytuje údaje o tlaku/nadmořské výšce a teplotě. Tento senzor používá ke komunikaci protokol I²C. Tento senzor jsme zakoupili v Dcube Store
4. Připojovací kabel
V Dcube Store jsme měli k dispozici propojovací kabel I2C
5. Micro USB kabel
Micro USB kabel Napájecí zdroj je ideální volbou pro napájení Raspberry Pi.
6. Vylepšení přístupu k internetu - ethernetový kabel/WiFi adaptér
V této době získání přístupu k čemukoli vyžaduje připojení k internetu (téměř stejně jako existuje život offline). Necháme si tedy poradit s LAN kabelem nebo bezdrátovým Nano USB adaptérem (WiFi), abychom vytvořili připojení k internetu, abychom mohli náš Rasp Pi používat snadno a vůbec bez problémů.
7. Kabel HDMI (volitelný, vaše volba)
Je to trochu ošidné. Pokud chcete, můžete mít možnost připojit další monitor, nebo je to pro vás velmi nákladově efektivní díky bezhlavému připojení Pi k vašemu počítači/notebooku.
Krok 2: Hardwarová připojení k sestavení obvodu
Vytvořte obvod podle zobrazeného schématu. Obecně je připojení velmi jednoduché. Postupujte podle pokynů a obrázků a neměli byste mít žádné problémy.
Při plánování jsme se zabývali hardwarem a kódováním a také základy elektroniky. Chtěli jsme pro tento projekt navrhnout jednoduché schéma elektroniky. V diagramu si můžete všimnout různých částí, napájecích komponent a čidla I²C podle komunikačních protokolů I²C. Naštěstí to ukazuje, jak jednoduchá je elektronika pro tento projekt.
Připojení Raspberry Pi a I2C Shield
Nejprve si vezměte Raspberry Pi a umístěte na něj I²C Shield. Jemně stiskněte štít (viz obrázek).
Připojení senzoru a Raspberry Pi
Vezměte snímač a připojte k němu kabel I²C. Ujistěte se, že se výstup I²C VŽDY připojí ke vstupu I²C. To samé bude následovat Raspberry Pi s I²C štítem přes něj. Máme I²C Shield a I²C propojovací kabely na naší straně jako velmi velkou výhodu, protože nám zbývá pouze možnost plug and play. Už žádné problémy s kolíky a kabeláží, a proto zmatek zmizel. Jaká to úleva, když si představíte sami sebe v síti drátů a pustíte se do toho. Jen jednoduchý proces, který jsme zmínili.
Poznámka: Hnědý vodič by měl vždy sledovat uzemnění (GND) mezi výstupem jednoho zařízení a vstupem jiného zařízení
Připojení k internetu je životně důležité
Tady máte vlastně na výběr. Raspberry Pi můžete připojit pomocí kabelu LAN nebo bezdrátového adaptéru Nano USB pro připojení WiFi. Každopádně to mělo hlavní cíl, kterým je připojení k internetu.
Napájení obvodu
Zapojte kabel Micro USB do napájecího konektoru Raspberry Pi. Rozsviťte to a můžeme vyrazit.
Připojení k obrazovce
Buď můžeme mít kabel HDMI připojený k novému monitoru, nebo můžeme vytvořit náš bezhlavý Pi, který je kreativní a nákladově efektivní pomocí vzdáleného přístupu jako SSH/PuTTY. (Vím, že nejsme financováni jako tajná organizace)
Krok 3: Programování Raspberry Pi v Pythonu
Kód Pythonu pro snímač Raspberry Pi a MPL3115A2. Je k dispozici v našem úložišti Github.
Než přejdete ke kódu, přečtěte si pokyny uvedené v souboru Readme a podle něj nastavte svůj Raspberry Pi. Bude to chvíli trvat.
Nadmořská výška se vypočítá z tlaku pomocí následující rovnice:
h = 44330,77 {1 - (p / p0) ^ 0,1902632} + OFF_H (hodnota registru)
Kde p0 = tlak hladiny moře (101326 Pa) a h je v metrech. MPL3115A2 používá tuto hodnotu, protože offsetový registr je definován jako 2 Pascaly na LSB.
Kód je jasně před vámi a je v nejjednodušší formě, jakou si dokážete představit, a neměli byste mít žádné problémy.
Odtud také můžete zkopírovat funkční kód Pythonu pro tento senzor.
# 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. # MPL3115A2 # Tento kód je navržen pro práci s mini modulem MPL3115A2_I2CS I2C, který je k dispozici na ControlEverything.com. #
importovat smbus
čas importu
# Získejte autobus I2C
bus = smbus. SMBus (1)
# MPL3115A2 adresa, 0x60 (96)
# Vyberte řídicí registr, 0x26 (38) # 0xB9 (185) Aktivní režim, OSR = 128, sběrnice v režimu výškoměru.write_byte_data (0x60, 0x26, 0xB9) # Adresa MPL3115A2, 0x60 (96) # Vyberte konfigurační registr dat, 0x13 (19) # 0x07 (07) Událost připravenosti dat povolena pro nadmořskou výšku, tlak, teplotní sběrnici. Write_byte_data (0x60, 0x13, 0x07) # Adresa MPL3115A2, 0x60 (96) # Vyberte řídicí registr, 0x26 (38) # 0xB9 (185) Aktivní režim, OSR = 128, sběrnice v režimu výškoměru.write_byte_data (0x60, 0x26, 0xB9)
time.sleep (1)
# MPL3115A2 adresa, 0x60 (96)
# Číst data zpět z 0x00 (00), 6 bytů # stav, tHeight MSB1, tHeight MSB, tHeight LSB, temp MSB, temp LSB data = bus.read_i2c_block_data (0x60, 0x00, 6)
# Převeďte data na 20 bitů
tHeight = ((data [1] * 65536) + (data [2] * 256) + (data [3] & 0xF0)) / 16 temp = ((data [4] * 256) + (data [5] & 0xF0)) / 16 nadmořská výška = tVýška / 16,0 cTemp = teplota / 16,0 fTemp = cTemp * 1,8 + 32
# MPL3115A2 adresa, 0x60 (96)
# Vyberte řídicí registr, 0x26 (38) # 0x39 (57) Aktivní režim, OSR = 128, sběrnice barometrického režimu.
time.sleep (1)
# MPL3115A2 adresa, 0x60 (96)
# Číst data zpět z 0x00 (00), 4 bajty # stav, pres MSB1, pres MSB, pres LSB data = bus.read_i2c_block_data (0x60, 0x00, 4)
# Převeďte data na 20 bitů
pres = ((data [1] * 65536) + (data [2] * 256) + (data [3] & 0xF0)) / 16 tlak = (pres / 4,0) / 1000,0
# Výstup dat na obrazovku
tisk "Tlak: %.2f kPa" %tlakový tisk "Nadmořská výška: %.2f m" %nadmořská výška tisk "Teplota ve stupních Celsia: %.2f C" %cTemp tisk "Teplota ve stupních Fahrenheita: %.2f F" %fTemp
Krok 4: Praktičnost kódu (testování)
Nyní si stáhněte (nebo git pull) kód 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 sekundách se zobrazí všechny parametry. Poté, co se ujistíte, že vše funguje hladce, můžete tento projekt převést na větší projekt.
Krok 5: Aplikace a funkce
Běžné použití snímače MPL3115A2 Precision Altimeter I²C je v aplikacích, jako je Map (Map Assist, Navigation), Magnetic Compass, Nebo GPS (GPS Dead Reckoning, GPS Enhancement for Emergency Services), High Accuracy Altimetry, Smartphones/Tablets, Personal Electronics Altimetry a satelity (vybavení/předpovědi meteorologické stanice).
Například pro projekt výroby osobního elektronického výškoměru, který měří nadmořskou výšku, tlak vzduchu a teplotu pomocí Raspberry Pi. Osobní elektronický výškoměr je celkem docela rychlý projekt na stavbu. Bude to trvat jen několik okamžiků, pokud budete mít všechny části a nebudete improvizovat (samozřejmě můžete!). Tlakový výškoměr je výškoměr nacházející se ve většině letadel a parašutisté pro podobné účely používají verze upevněné na zápěstí. Turisté a horolezci používají výškoměry namontované na zápěstí nebo ruční.
Krok 6: Závěr
Doufám, že tento projekt inspiruje k dalšímu experimentování. Tento senzor I²C je neuvěřitelně univerzální, levný a dostupný. Protože se jedná o extrémně proměnlivý program, existují zajímavé způsoby, jak tento projekt rozšířit a ještě vylepšit. Výškoměr je například nástroj volitelný v terénních vozidlech, který pomáhá při navigaci. Tuto technologii používají některá vysoce výkonná luxusní auta, která nikdy neměla opustit zpevněné silnice. Pro vaše pohodlí máme zajímavý videonávod na YouTube, který by mohl pomoci vašemu průzkumu. Doufám, že tento projekt inspiruje k dalšímu experimentování.
Doporučuje:
M5STACK Jak zobrazit teplotu, vlhkost a tlak na M5StickC ESP32 pomocí Visuino - snadné provedení: 6 kroků
M5STACK Jak zobrazit teplotu, vlhkost a tlak na M5StickC ESP32 pomocí Visuino - snadné provedení: V tomto tutoriálu se naučíme, jak naprogramovat ESP32 M5Stack StickC s Arduino IDE a Visuino tak, aby zobrazoval teplotu, vlhkost a tlak pomocí snímače ENV (DHT12, BMP280, BMM150)
Meteostanice Arduino využívající BMP280 -DHT11 - teplota, vlhkost a tlak: 8 kroků
Meteostanice Arduino pomocí BMP280 -DHT11 - teplota, vlhkost a tlak: V tomto tutoriálu se naučíme, jak vytvořit meteorologickou stanici, která bude na displeji TFT 7735 zobrazovat TEPLOTU, VLHKOST A TLAK. Podívejte se na ukázkové video
Visuino I2C BMP280 tlak, teplota+OLED: 7 kroků
Visuino I2C BMP280 Pressure, Temperature+OLED: V tomto tutoriálu použijeme tlak, teplotní senzor I2C BMP280, OLED lcd, Arduino UNO měří tlak a teplotu a zobrazuje výsledky na LCD. Podívejte se na ukázkové video
Pomocí Raspberry Pi změřte nadmořskou výšku, tlak a teplotu pomocí MPL3115A2: 6 kroků
Pomocí Raspberry Pi změřte nadmořskou výšku, tlak a teplotu pomocí MPL3115A2: Vědět, co vlastníte, a vědět, proč to vlastníte! Je to zajímavé. Žijeme v době internetové automatizace, která se vrhá do velkého množství nových aplikací. Jako nadšenci počítačů a elektroniky jsme se s Raspberry Pi hodně naučili
Změřte tlak pomocí mikro: bit: 5 kroků (s obrázky)
Měření tlaku pomocí mikroskopu: bit: Následující instrukce popisuje snadno sestavitelné a levné zařízení pro provádění měření tlaku a demonstraci Boyleova zákona pomocí mikro: bitu v kombinaci se snímačem tlaku/teploty BMP280. Zatímco tato stříkačka/tlak