Taula de continguts:
- Pas 1: prepareu el Pi
- Pas 2: connecteu-ho tot
- Pas 3: proveu el vostre I2C
- Pas 4: Instal·leu MySQL i PhpMyAdmin
- Pas 5: instal·leu els mòduls Python
- Pas 6: Codi per iniciar sessió a la base de dades
- Pas 7: Codi per mostrar la temperatura
- Pas 8: recinte imprès en 3D
- Pas 9: coses a fer
Vídeo: Rellotge meteorològic del baròmetre Raspberry Pi: 9 passos (amb imatges)
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:12
En aquest instructiu us mostraré com construir un rellotge bàsic de termòmetre / baròmetre amb un Raspberry Pi 2 amb un sensor BMP180 I2C que es mostra en una pantalla I2C de 7 dígits Adafruit de 4 dígits. El Pi també utilitza un mòdul de rellotge I2C DS3231 en temps real per mantenir el temps quan es reinicia el Pi.
El rellotge passa per 4 etapes durant 5 segons cadascuna. Primer mostra la temperatura en centígrads, després en Fahrenheit, després la pressió baromètrica en kPa * (camina aquest nombre cap a l’esquerra a causa d’un nombre limitat de dígits) i, finalment, mostra una tendència de canvi de pressió baromètrica d’ara a la mitjana de la hora anterior.
El que fa que aquest rellotge sigui diferent és que utilitza una base de dades MySQL al Pi per registrar dades del BMP180 cada minut. Com que la pressió baromètrica actual no és tan valuosa com el seu moviment cap amunt o cap avall durant un període de temps determinat, utilitza aquesta base de dades per calcular una mitjana d’un lapse d’hores entre fa 2 hores i 1 hora i la compara amb la pressió actual. Un augment significatiu de la pressió baromètrica sol indicar una millora de les condicions meteorològiques i una gran caiguda podria advertir d’una tempesta imminent.
El rellotge està allotjat en una carcassa ABS impresa en 3D amb el BMP180 en una tapa ventilada a la part posterior del rellotge per evitar que la calor generada pel Pi afecti les lectures de temperatura. Proporcionaré l’esquema Autodesk 123D Design si voleu imprimir-ne el vostre.
El rellotge s’alimenta amb una berruga de paret USB estàndard i atrau al voltant de 450 mA en total.
No entraré en massa detalls sobre la configuració bàsica del Pi i de l’I2C, ja que s’ha tractat en molts altres instructius als quals proporcionaré enllaços.
Pas 1: prepareu el Pi
Configureu el vostre Raspberry Pi: detalls a Raspberrypi.org
- Baixeu-vos i instal·leu la vostra distribució Linux seleccionada en una targeta SD: he utilitzat Raspbian
- Connecteu el pi i arrenceu-lo
- Vaig utilitzar un adaptador micro WiFi per connectar el pi al meu enrutador, ja que la carcassa del rellotge enfosqueix el port Ethernet.
- He utilitzat el mode sense cap on es connecta al pi mitjançant SSH, de manera que tot el que necessita connectat és la potència.
-
Configureu I2C al Pi: he seguit aquestes instruccions al lloc d'Adafruit.
Pas 2: connecteu-ho tot
Tots els mòduls que faig servir en aquest projecte són tolerants a 5 V i utilitzen I2C, que és un protocol de 2 fils que s’utilitza per comunicar-se entre ells els IC, de manera que el cablejat és bastant senzill. Connecteu tots els VCC a 5V, tots els terrenys junts i totes les línies SCA i SCL juntes segons l’esquema. Feina feta.
Pas 3: proveu el vostre I2C
Part de la instal·lació d’I2C és executar i2cdetect, que hauria de semblar a la imatge adjunta si tot està connectat correctament.
A continuació es mostren les adreces coincidents
- 0x70 = 7 segments de visualització
- 0x77 = Termòmetre / sensor de baròmetre BMP180
- 0x68 = DS3231 Mòdul de rellotge en temps real
- 0x57 = DS3231 a bord de l'EEPROM per emmagatzemar dades d'alarma.
Pas 4: Instal·leu MySQL i PhpMyAdmin
Instal·lar mySQL és bastant senzill si seguiu el tutorial aquí
sudo apt-get install mysql-server
També he instal·lat phpMyAdmin, que és un lloc web que funciona amb Apache que podeu utilitzar per crear i gestionar bases de dades mySQL. Tutorial aquí
sudo apt-get install phpmyadmin
Un cop instal·lada, he configurat una base de dades anomenada BP180 mitjançant phpMyAdmin amb l'estructura segons la imatge.
També faig servir un mòdul python anomenat mysqlDB que podeu instal·lar mitjançant
sudo apt-get install python-mysqldb
Pas 5: instal·leu els mòduls Python
Descarregueu i instal·leu els mòduls python següents que utilitzarà per connectar-vos als sensors.
- Mòdul Adafruit_BMP085
- Mòdul SDL_DS3231
- Mòdul de segment Adafruit 7
Pas 6: Codi per iniciar sessió a la base de dades
El fragment de codi següent s’utilitza per registrar la temperatura i la pressió baromètrica i es crida des d’un script cron (tasques programades de Linux) que s’executa cada 5 minuts. Per obtenir informació sobre com utilitzar el crond, consulteu aquest tutorial.
NB! No us molesteu a eliminar les meves habilitats de codificació, no sóc desenvolupador, així que sí, probablement hi ha un milió de maneres millors, ràpides, fluides i més netes de fer-ho
Notareu al codi que la temperatura disminueix 7 graus, la qual cosa equival a la calor generada pel Raspberry Pi fins i tot amb el BMP180 muntat a la part exterior de la carcassa. Quan originalment el tenia dins de la carcassa feia uns 15 graus més calents que l’ambient. Sembla ser bastant lineal, però no he tingut l'oportunitat de provar cap extrem. S’agrairia la retroalimentació de les vostres experiències.
Pas 7: Codi per mostrar la temperatura
Aquest codi es diu per circular per la pantalla segons la introducció.
Una vegada més, no sóc desenvolupador, de manera que el codi és realment aproximat, però funciona
Pas 8: recinte imprès en 3D
El següent és el disseny del recinte. Això era bastant difícil, ja que la forma és propensa a deformar-se perquè algunes parts de la carcassa exterior només tenen un gruix de 2 mm. Primer vaig dibuixar maquetes del Pi i de totes les parts i després vaig dissenyar el recinte al seu voltant. La impressió va trigar unes 7 hores al meu RapMan 3.2 (que és una impressora bastant lenta) a una profunditat de capa de 0,25.
L’esquema adjunt es realitza a Autodesk 123D Design, que crec que és una fantàstica peça de programari lliure.
Tingueu en compte que alguns dels forats com els necessaris per muntar el Pi no apareixen al disseny, ja que és millor perforar-los després en cas que la vostra impressió es deformi una mica. Amb una mà ferma, una broca de 3 mm és tot el que necessiteu. Marqueu la profunditat de la broca amb una mica de cinta adhesiva perquè no passeu accidentalment directament per la vostra impressió de 7 hores com jo.
Pas 9: coses a fer
- El rellotge en temps real va ser un afegit després d'imprimir el recinte per cinquena vegada, de manera que actualment està enganxat en calent al lateral del recinte, cosa que no sembla bo, així que m'agradaria tornar a fer el disseny i afegir-hi un lloc.
- Actualment, la brillantor de la pantalla de 7 segments es defineix com a la més lleugera, cosa que no és òptima per a condicions de llum intensa. M'agradaria afegir una resistència fotogràfica a la part superior del recinte i ajustar la brillantor de 7 segments en funció de les condicions de llum ambiental.
- Hi ha alguns problemes de disseny menors amb el cracking de la base que també es solucionaran.
- Qualsevol idea és benvinguda.
Espero que us hagi agradat aquest instructiu i l’hagueu inspirat prou per posar-vos en marxa. La idea és proporcionar una plataforma que pugueu utilitzar per afegir les vostres pròpies idees. Diverteix-te!
Recomanat:
Baròmetre de l'IoT: 5 passos (amb imatges)
Baròmetre IoT: mesureu i registreu la temperatura i la pressió atmosfèrica amb aquest baròmetre IoT. Vull presentar un baròmetre IoT. Permet mesurar i emmagatzemar dades de temperatura i pressió a la plataforma IoT d'Adafruit. He publicat un projecte similar que fa
Rellotge meteorològic: 11 passos (amb imatges)
Weather Clock: Actualització amb esquema elèctric i esquema Fritzing Faig dues premisses: Aquest és el meu primer instructable. Sóc un italià ignorant que no ha estudiat anglès a l'escola i per això vaig demanar ajuda a: https: //translate.google.itStart amb agraïment af
Baròmetre d'ànim Nixie Clock: 7 passos (amb imatges)
Nixie Clock Mood Barometer: una víctima no destacada de Progress és el baròmetre de casa aneroide. Actualment, és possible que encara pugueu trobar exemples a les cases de més de noranta anys, però milions més són a la deixalleria o a ebay. En realitat, el baròmetre de la vella escola no em va ajudar
Rellotge meteorològic: 15 passos (amb imatges)
Weather Clock: rellotge d'escriptori d'aspecte fantàstic amb data i amp; visualització del temps
Rellotge meteorològic ESP8266: 6 passos (amb imatges)
ESP8266 Weather Clock: Estic molt orgullós de la vostra arribada i us donem la benvinguda