Taula de continguts:
- Pas 1: Equip imperatiu que necessitem
- Pas 2: connexions de maquinari per unir el circuit
- Pas 3: programació de Raspberry Pi a Python
- Pas 4: La pràctica del codi (proves)
- Pas 5: Aplicacions i funcions
- Pas 6: Conclusió
Vídeo: Altitud, pressió i temperatura mitjançant Raspberry Pi amb MPL3115A2: 6 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:11
Sona interessant. És molt possible en aquest moment en què tots entrem en la generació d’IoT. Com a monstre de l’electrònica, hem estat jugant amb el Raspberry Pi i hem decidit fer projectes interessants amb aquest coneixement. En aquest projecte, mesurarem l’altitud, la pressió de l’aire i la temperatura amb Raspberry Pi. Així doncs, aquí va la documentació (sempre es modifica i amplia). Us recomanem que seguiu les instruccions i copieu el codi. Podeu experimentar més endavant. Comencem doncs.
Pas 1: Equip imperatiu que necessitem
1. Raspberry Pi
El primer pas va ser obtenir una placa Raspberry Pi. Hem comprat el nostre i tu també. Vaig començar a aprendre dels tutorials, vam entendre els conceptes de seqüència d’ordres i connexió i vam aprendre després. Aquest petit geni és comú per a aficionats, professors i per crear entorns innovadors.
2. Escut I²C per a Raspberry Pi
L'INPI2 (adaptador I2C) proporciona a Raspberry Pi 2/3 un port I²C per utilitzar-lo amb diversos dispositius I2C. Està disponible a Dcube Store
3. Altímetre, sensor de pressió i temperatura, MPL3115A2
El MPL3115A2 és un sensor de pressió MEMS amb una interfície I²C que proporciona dades de pressió / altitud i temperatura. Aquest sensor utilitza el protocol I²C per comunicar-se. Hem comprat aquest sensor a Dcube Store
4. Cable de connexió
Teníem el cable de connexió I2C disponible a Dcube Store
5. Cable micro USB
El cable micro USB és una opció ideal per alimentar el Raspberry Pi.
6. Millora de l’accés a Internet: adaptador de cable / WiFi Ethernet
En aquesta època, accedir a qualsevol cosa necessita una connexió a Internet (gairebé ja que també hi ha vida fora de línia). Així doncs, anem a recomanar-nos un cable LAN o un adaptador Nano USB sense fils (WiFi) per construir la connexió a Internet de manera que puguem utilitzar el nostre Rasp Pi amb facilitat i sense cap problema.
7. Cable HDMI (opcional, segons el vostre criteri)
És una mica complicat. Podeu connectar un altre monitor si voleu o és molt rendible per vosaltres mateixos mitjançant una connexió Pi sense cap amb el vostre PC / portàtil.
Pas 2: connexions de maquinari per unir el circuit
Feu el circuit segons l’esquema que es mostra. En general, les connexions són molt senzilles. Seguiu les instruccions i les imatges i no hauríeu de tenir problemes.
Durant la planificació, vam examinar el maquinari i la codificació, així com els conceptes bàsics sobre electrònica. Volíem dissenyar un esquema electrònic senzill per a aquest projecte. Al diagrama, podeu observar les diferents parts, components de potència i sensor I²C seguint els protocols de comunicació I²C. Amb sort, això il·lustra el simple que és l'electrònica per a aquest projecte.
Connexió de l’escut Raspberry Pi i I2C
Primer de tot, agafeu el Raspberry Pi i col·loqueu-hi l’escut I²C. Premeu l'escut suaument (vegeu la foto).
Connexió del sensor i del gerd Pi
Agafeu el sensor i connecteu-hi el cable I²C. Assegureu-vos que la sortida I²C SEMPRE es connecti a l'entrada I²C. El mateix que seguirà el Raspberry Pi amb l’escut I²C muntat damunt seu. Tenim els cables de connexió I²C Shield i I²C al nostre costat com un gran avantatge, ja que només ens queda l’opció plug and play. Ja no hi ha problemes de cablejat i pins i, per tant, la confusió ha desaparegut. Quin alleujament, només imaginar-se a la xarxa de cables i entrar-hi. Només el procés senzill que hem esmentat.
Nota: el cable marró sempre ha de seguir la connexió de terra (GND) entre la sortida d’un dispositiu i l’entrada d’un altre dispositiu
La connectivitat a Internet és vital
En realitat, aquí podeu triar. Podeu connectar Raspberry Pi amb el cable LAN o l’adaptador Nano USB sense fils per a la connectivitat WiFi. De tota manera, va fer l'objectiu principal que era connectar-se a Internet.
Alimentació del circuit
Connecteu el cable Micro USB a la presa d’alimentació de Raspberry Pi. Enceneu-lo i ja estem bé.
Connexió a pantalla
Podem tenir el cable HDMI connectat a un monitor nou o fer que el nostre Pi sense cap sigui creatiu i rendible mitjançant l'accés remot com-SSH / PuTTY. (Sé que no estem finançats com una organització secreta).
Pas 3: programació de Raspberry Pi a Python
El codi Python per al sensor Raspberry Pi i MPL3115A2. Està disponible al nostre dipòsit de Github.
Abans d’accedir al codi, assegureu-vos de llegir les instruccions del fitxer Llegeix-me i configurar el Raspberry Pi segons el mateix. Només trigarà un moment a fer-ho.
L'altitud es calcula a partir de la pressió mitjançant l'equació següent:
h = 44330,77 {1 - (p / p0) ^ 0,1902632} + OFF_H (valor de registre)
On p0 = pressió del nivell del mar (101326 Pa) i h és en metres. El MPL3115A2 utilitza aquest valor ja que el registre de desplaçament es defineix com a 2 Pascals per LSB.
El codi està clarament davant vostre i es troba en la forma més senzilla que us podeu imaginar i no hauríeu de tenir problemes.
Podeu copiar també el codi Python de treball d’aquest sensor des d’aquí.
# Distribuïda amb una llicència de lliure voluntat. # Utilitzeu-la de la manera que vulgueu, de forma gratuïta o gratuïta, sempre que encaixi en les llicències de les obres associades. # MPL3115A2 # Aquest codi està dissenyat per funcionar amb el mini mòdul MPL3115A2_I2CS I2C disponible a ControlEverything.com. #
importar smbus
temps d'importació
# Aconsegueix un bus I2C
bus = smbus. SMBus (1)
# MPL3115A2 adreça, 0x60 (96)
# Seleccioneu el registre de control, 0x26 (38) # 0xB9 (185) Mode actiu, OSR = 128, mode altímetre bus.write_byte_data (0x60, 0x26, 0xB9) # Adreça MPL3115A2, 0x60 (96) # Seleccioneu registre de configuració de dades, 0x13 (19)) # 0x07 (07) Esdeveniment preparat per a dades habilitat per altitud, pressió, temperatura bus.write_byte_data (0x60, 0x13, 0x07) # MPL3115A2 adreça, 0x60 (96) # Seleccionar registre de control, 0x26 (38) # 0xB9 (185) Mode actiu, OSR = 128, mode altímetre bus.write_byte_data (0x60, 0x26, 0xB9)
time.sleep (1)
# MPL3115A2 adreça, 0x60 (96)
# Llegir dades de 0x00 (00), 6 bytes # estat, tHeight MSB1, tHeight MSB, tHeight LSB, temp MSB, temp LSB data = bus.read_i2c_block_data (0x60, 0x00, 6)
# Converteix les dades a 20 bits
tAlçada = ((dades [1] * 65536) + (dades [2] * 256) + (dades [3] i 0xF0)) / 16 temp = ((dades [4] * 256) + (dades [5] i 0xF0)) / 16 altitud = tAltura / 16,0 cTemp = temp / 16,0 fTemp = cTemp * 1,8 + 32
# MPL3115A2 adreça, 0x60 (96)
# Seleccioneu el registre de control, 0x26 (38) # 0x39 (57) Mode actiu, OSR = 128, mode Baròmetre bus.write_byte_data (0x60, 0x26, 0x39)
time.sleep (1)
# MPL3115A2 adreça, 0x60 (96)
# Llegir dades de 0x00 (00), 4 bytes # estat, pres MSB1, pres MSB, pres LSB data = bus.read_i2c_block_data (0x60, 0x00, 4)
# Converteix les dades a 20 bits
pres = ((dades [1] * 65536) + (dades [2] * 256) + (dades [3] i 0xF0)) / 16 pressió = (pres / 4.0) / 1000.0
# Sortida de dades a la pantalla
imprimir "Pressió:%.2f kPa"% pressió d'impressió "Altitud:%.2f m"% altitud d'impressió "Temperatura en centígrads:%.2f C"% cImpressió temporal "Temperatura en Fahrenheit:%.2f F"% fTemp
Pas 4: La pràctica del codi (proves)
Ara, descarregueu (o git pull) el codi i obriu-lo al Raspberry Pi.
Executeu les ordres per compilar i penjar el codi al terminal i veure la sortida a Monitor. Al cap de pocs segons, es mostraran tots els paràmetres. Després d'assegurar-vos que tot funciona correctament, podeu convertir aquest projecte en un projecte més gran.
Pas 5: Aplicacions i funcions
L’ús comú del sensor d’altímetre de precisió I²C MPL3115A2 és en aplicacions com Map (Assistència al mapa, navegació), brúixola magnètica, o GPS (GPS Dead Reckoning, GPS Enhancement for Emergency Services), altimetria d’alta precisió, telèfons intel·ligents / tauletes, altimetria electrònica personal i satèl·lits (equipament de l'estació meteorològica / predicció).
Per exemple, un projecte per fabricar Personal Electronics Altimeter que mesura l’altitud, la pressió de l’aire i la temperatura mitjançant Raspberry Pi. El Personal Electronics Altimeter és un projecte bastant ràpid de construir. Només trigareu uns quants moments si teniu totes les parts i no improviseu (és clar que podeu!). Un altímetre de pressió és un altímetre que es troba a la majoria d’avions i els paracaigudistes utilitzen versions muntades al canell per a propòsits similars. Els excursionistes i alpinistes fan servir altímetres de mà o canells.
Pas 6: Conclusió
Espero que aquest projecte inspiri més experimentació. Aquest sensor I²C és increïblement versàtil, barat i accessible. Com que és un programa extremadament mutable, hi ha maneres interessants d’estendre aquest projecte i millorar-lo encara més. Per exemple, l’altímetre és un instrument opcional en vehicles tot terreny per ajudar a la navegació. Alguns cotxes de luxe d’altes prestacions que mai no havien tingut la intenció de deixar carreteres asfaltades utilitzen aquesta tecnologia. Per a la vostra comoditat, tenim un interessant vídeo tutorial a YouTube que pot ajudar-vos a explorar. Espero que aquest projecte inspiri més experimentació.
Recomanat:
M5STACK Com mostrar temperatura, humitat i pressió a M5StickC ESP32 mitjançant Visuino - Fàcil de fer: 6 passos
M5STACK Com mostrar temperatura, humitat i pressió a M5StickC ESP32 mitjançant Visuino: fàcil de fer: en aquest tutorial aprendrem a programar ESP32 M5Stack StickC amb Arduino IDE i Visuino per mostrar la temperatura, humitat i pressió mitjançant el sensor ENV (DHT12, BMP280, BMM150)
Altímetre (mesurador d’altitud) basat en la pressió atmosfèrica: 7 passos (amb imatges)
Altímetre (mesurador d’altitud) basat en la pressió atmosfèrica: [Editar]; Vegeu la versió 2 al pas 6 amb entrada d’altitud de línia de base manual. Aquesta és la descripció de l’edifici d’un altímetre basat en un Arduino Nano i un sensor de pressió atmosfèrica Bosch BMP180. El disseny és senzill, però les mesures
Determinació de la pressió i l'altitud mitjançant GY-68 BMP180 i Arduino: 6 passos
Determinació de la pressió i l’altitud mitjançant GY-68 BMP180 i Arduino: Visió general En molts projectes com ara robots voladors, estacions meteorològiques, millorar el rendiment de l’enrutament, esports, etc., és molt important mesurar la pressió i l’altitud. En aquest tutorial, aprendreu a utilitzar el sensor BMP180, que és un dels més
Mitjançant Raspberry Pi, mesureu l’altitud, la pressió i la temperatura amb MPL3115A2: 6 passos
Ús de Raspberry Pi: mesura l’altitud, la pressió i la temperatura amb MPL3115A2: sapigueu el que teniu i sabeu per què el teniu. És intrigant. Vivim en l’era de l’automatització d’Internet, ja que s’enfonsa en una gran quantitat de noves aplicacions. Com a aficionats a la informàtica i l’electrònica, hem estat aprenent moltes coses amb el Raspberry Pi a
Registrador de temperatura, humitat relativa i pressió atmosfèrica mitjançant connectivitat Raspberry Pi i TE MS8607-02BA01: 22 passos (amb imatges)
Registrador de temperatura, humitat relativa i pressió atmosfèrica mitjançant Raspberry Pi i connectivitat TE MS8607-02BA01: Introducció: en aquest projecte us mostraré com construir la configuració per passos d’un sistema de registre per a la humitat de la temperatura i la pressió atmosfèrica. Aquest projecte es basa en el xip del sensor ambiental Raspberry Pi 3 Model B i TE Connectivity MS8607-02BA