Taula de continguts:

Sistema de temperatura DIY Raspberry Pi amb Ubidots: 7 passos (amb imatges)
Sistema de temperatura DIY Raspberry Pi amb Ubidots: 7 passos (amb imatges)

Vídeo: Sistema de temperatura DIY Raspberry Pi amb Ubidots: 7 passos (amb imatges)

Vídeo: Sistema de temperatura DIY Raspberry Pi amb Ubidots: 7 passos (amb imatges)
Vídeo: Red de sensores de bajo costo para monitorear la calidad de aire 2024, Desembre
Anonim
Sistema de temperatura DIY Raspberry Pi amb Ubidots
Sistema de temperatura DIY Raspberry Pi amb Ubidots

Un sistema de control de temperatura proporciona informació valuosa tant en entorns comercials com industrials per reduir les ineficiències o mantenir la qualitat dels productes i la seva qualitat. Què passa si us digui que podeu controlar la temperatura del celler de construcció pròpia o de l'aquari de la vostra família a casa mitjançant el mateix dispositiu. A més, i si us digués que el mateix dispositiu es podria utilitzar per controlar la temperatura de l’aire i dels líquids dels fluids a la vostra fàbrica? Els fabricants del nostre món ho han fet possible i aquesta guia és aquí per ajudar-vos a iniciar les vostres pròpies iniciatives a casa o al taller.

Aquesta guia serà el vostre tutorial per a un senzill sistema de control de temperatura de bricolatge que també sigui impermeable per arrencar. Amb un Raspberry Pi i Ubidots, us mostrarem com connectar el vostre Pi i mostrar-lo en temps real amb les mètriques del vostre sistema de temperatura. Mitjançant Ubidots, també podeu crear correus electrònics o esdeveniments SMS per assegurar-vos que la vostra "variable" (en aquest cas, la temperatura) es mantingui dins d'un conjunt de límits definits assignats per garantir la qualitat i l'eficiència de les condicions del vostre sistema.

Per a aquest projecte, farem servir una versió amb 1 cable i preimpregnada del sensor DS18B20. Què és 1 cable? Es tracta d’un protocol de comunicació que facilita la connexió dels sensors IoT mitjançant l’agregació de tots els cables en un sol cable (… en realitat són tres, dos són connexions a terra i d’alimentació per obtenir energia, el tercer és el cable 1 per a la transmissió de dades).

NOTA IMPORTANT: El sensor de temperatura de 1 cable té diferents versions a la venda; un amb una resistència integrada al sensor i l’altre sense. Quan compreu o configureu el maquinari, assegureu-vos que els vostres dispositius i sensors siguin compatibles abans de seguir endavant en aquest tutorial.

Pas 1: requisits

  • Model Raspberry Pi 3 (ja configurat)
  • Sensor de temperatura OneWire - DS18B20
  • Compte Ubidots o llicència STEM

Pas 2: Configuració del cablejat

Configuració del cablejat
Configuració del cablejat
Configuració del cablejat
Configuració del cablejat
Configuració del cablejat
Configuració del cablejat

Com es va esmentar anteriorment, el sensor de temperatura OneWire es ven amb diferents versions que contenen resistències. Per a aquest tutorial, il·lustrarem les dues versions, amb i sense resister. Independentment del que trieu per al vostre sistema, assegureu-vos de comprovar que les connexions estiguin correctament basades en els diagrames i les fotos següents.

    Amb resistència integrada - amb connector de bosquet

Seguiu la taula i la imatge anterior per establir les connexions adequades per al sensor de temperatura OneWire amb resistència.

SUGGERIMENT: L'Arduberry és una nova campanya a Kickstarter, que proporciona una manera senzilla i econòmica de portar escuts Arduino al Raspberry Pi. Aquesta increïble opció és la manera més senzilla de començar a connectar els vostres sensors de bosquet mitjançant un escut Arduino Grove. Per obtenir més informació al respecte, consulteu la campanya:)

    Sense resistència integrada- sense connector de ranura

La resistència d'aquesta configuració s'utilitza com a extracció de la línia de dades i s'ha de connectar entre el cable de dades i el cable d'alimentació. Això garanteix que la línia de dades estigui en un nivell lògic definit i limita la interferència del soroll elèctric si el nostre pin es quedés flotant.

Utilitzeu una resistència de 4,7 kΩ (o 10 kΩ) i seguiu el diagrama anterior per fer les connexions correctes. Tingueu en compte que els pins connectats al Raspberry Pi són els mateixos que s’utilitzen a la taula.

Pas 3: Configuració del sensor

Configuració del sensor
Configuració del sensor
Configuració del sensor
Configuració del sensor

1. Amb el Raspberry Pi connectat a Internet, verifiqueu l'adreça IP assignada a l'accés a la placa mitjançant ssh al terminal de l'ordinador:

ssh pi @ {IP_Address_assigned}

Si encara no heu configurat les credencials del vostre Raspberry Pi, tingueu en compte que haureu d'utilitzar les credencials predeterminades proporcionades:

  • nom d'usuari: pi
  • contrasenya: gerd

Quan el vostre pi està configurat i connectat correctament, l'usuari del vostre terminal apareix a la llista: pi @ raspberrypi

2. Ara actualitzem alguns paquets i instal·lem pip, el gestor de paquets de Python. Copieu i enganxeu les ordres següents al vostre terminal i premeu "entrar" després de cadascuna per executar-les.

sudo apt-get update> sudo apt-get upgrade

sudo apt-get install python-pip python-dev build-essential

3. A continuació, instal·leu la biblioteca de sol·licituds, que és una popular biblioteca de Python que simplifica la realització de sol·licituds HTTP. Copieu i enganxeu les ordres següents al vostre terminal i premeu "entrar" per executar l'ordre.

Sol·licituds d'instal·lació de $ pip

4. El Raspberry Pi ve equipat amb diversos controladors per a la interfície. En aquest cas, per poder carregar el controlador del sensor 1-Wire als pins GPIO, hem d’utilitzar-los per sota de dos controladors. Per tant, aquests controladors s’emmagatzemen com a mòduls carregables i s’utilitza l’ordre modprobe per arrencar-los al nucli Linux quan sigui necessari.

Executeu les ordres següents:

$ sudo modprobe w1-gpio> $ sudo modprobe w1-therm

5. Ara, hem de canviar el directori a la nostra carpeta de dispositius 1-Wire i enumerar els dispositius per assegurar-nos que el sensor s'ha carregat correctament. Copieu i enganxeu les ordres següents al vostre terminal i premeu "entrar" després de cadascuna per executar-les.

$ cd / sys / bus / w1 / devices /> $ ls

En aquest moment, el sensor ja està muntat i connectat i hauria de figurar com una sèrie de números i lletres. En el nostre cas, el dispositiu està registrat com a 28-00000830fa90, però el vostre cas serà una sèrie diferent de lletres i números, així que substituïu el nostre número de sèrie pel vostre i executeu l'ordre.

$ cd 28-00000830fa90

El sensor escriu periòdicament al fitxer w1_slave, per llegir el sensor de temperatura, executeu l'ordre següent:

$ cat w1_slave

Aquesta ordre us mostrarà dues línies de text amb la sortida t = que mostra la temperatura en graus centígrads. Tingueu en compte que s’ha de col·locar un punt decimal després dels dos primers dígits (això es proporciona al codi final; no us preocupeu); per exemple, la lectura de temperatura que hem rebut és de 29.500 graus centígrads.

Ara que podeu fer lectures de temperatures, és hora de publicar-les a Ubidots.

Pas 4: enviament de dades a Ubidots per a la seva visualització

Enviament de dades a Ubidots per a la seva visualització
Enviament de dades a Ubidots per a la seva visualització
Enviament de dades a Ubidots per a la seva visualització
Enviament de dades a Ubidots per a la seva visualització
Enviament de dades a Ubidots per a la seva visualització
Enviament de dades a Ubidots per a la seva visualització

Ara és hora de codificar!:) Crea i executa un script Python al terminal de l'ordinador:

$ nano onewire_temp_ubidots.py

A continuació, enganxeu i deseu el següent codi al vostre terminal: premeu aquí per obtenir el codi

Assegureu-vos de substituir el número de sèrie 28-00000830fa90 pel vostre i assigneu el testimoni del compte Ubidots a l'URL de sol·licitud. Si no sabeu com obtenir el vostre testimoni Ubidots, consulteu l'article següent per obtenir ajuda:

Cerqueu el vostre TOKEN des del vostre compte Ubidots

Ara anem a provar el guió. Enganxeu i executeu el següent script al terminal de l'ordinador.

python onewire_temp_ubidots.py

Si funciona correctament, veureu un dispositiu nou al vostre compte d’Ubidots amb dues variables: temp_celsius i temp_fahrenheit

Pas 5: passos opcionals: canvieu el nom del dispositiu i de les variables

Passos opcionals: canvieu el nom del dispositiu i de les variables
Passos opcionals: canvieu el nom del dispositiu i de les variables
Passos opcionals: canvieu el nom del dispositiu i de les variables
Passos opcionals: canvieu el nom del dispositiu i de les variables

Els noms de les variables creades són els mateixos que les etiquetes de l'API, que són els identificadors que utilitza l'API. Això no vol dir que no es puguin canviar els seus noms, de manera que es recomana canviar els noms dels vostres dispositius i variables per fer-los més amables amb la vostra nomenclatura. Per obtenir informació sobre com canviar el nom dels noms de les variables, consulteu a continuació:

Com es pot ajustar el nom del dispositiu i el nom de la variable

També podeu afegir i ajustar les unitats de cada variable a la llista d’opcions.

Com podeu veure més amunt, hem assignat diferents unitats a cada variable i també hem assignat noms més amigables per adaptar-se a la nomenclatura dels nostres projectes. Es recomana molt als usuaris que cerquin desplegaments de 100 o dispositius.

Pas 6: Configuració d'esdeveniments

Un esdeveniment (o alerta) és qualsevol acció activada quan les dades compleixen o superen una regla de disseny. Per exemple, es pot enviar un missatge de correu electrònic o SMS cada vegada que un sensor deixa d’enviar dades o si la temperatura supera el llindar màxim o mínim.

Per crear l'esdeveniment, consulteu l'article següent:

Esdeveniments: creació d'un esdeveniment de missatges de text (SMS, correu electrònic i Telegram)

Pas 7: Resultat

En pocs minuts haureu construït un fàcil sistema de control de temperatura de bricolatge. Ara col·loqueu els sensors on sigui necessari i comenceu a fer un seguiment de les temperatures des del dispositiu avui mateix.

Feliç pirateria:)

Recomanat: