Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Monitoreo de temperatura en Raspberry Pi

Descripción general

La Raspberry Pi es una pequeña computadora de placa única (SBC) desarrollada aquí en el Reino Unido por la Fundación Raspberry Pi. Ejecuta varias versiones de Linux en ARM y tiene un conjunto de pines de E / S que puede usar para conectar componentes externos como sensores, botones, etc. La Raspberry Pi, lamentablemente, no tiene un convertidor analógico a digital integrado, por lo que no podemos usar un sensor de temperatura analógico como el TMP36 que funciona muy bien con el Arduino, la alternativa es usar un sensor de temperatura digital.

Piezas

Raspberry Pi
Sensor de temperatura DS18B20
Resistencia de 4.8k Ohm
Placa de prototipos
Pi Cobbler
Tablero de pruebas de tamaño medio
Paquete de cables de puente

Diseño básico

Hardware

En el diseño básico, todo lo que necesitamos es Raspberry Pi, sensor de temperatura DS18B20, resistencia de 4.8k Ohm, Pi Cobbler, placa de pruebas de tamaño medio y cables de puente. Todo se insertará en la placa de pruebas para facilitar las pruebas y el diseño.

Diagrama de cableado

Los sensores son bastante únicos en el sentido de que se pueden conectar en paralelo y se pueden agregar al sistema tantos sensores como se desee. Los sensores se comunican mediante una interfaz en serie de un solo cable y si está utilizando Rasbian en la Raspberry Pi, identificará los sensores como dispositivos en serie conectados. Sin embargo, el sensor debe estar conectado al pin 4 en el GPIO ya que este es el único pin que (actualmente) permite la comunicación usando el protocolo serial de un cable.

Puede utilizar este diagrama de la guía de Adafruit sobre cómo configurar el sensor de temperatura DS18B20 en la Raspberry Pi para comprender mejor al conectar todo.

DS18B20

Puede comprar el DS18B20 en tres formas, hay disponible un componente de tipo transistor normal, una versión resistente al agua con un cable largo adjunto y una versión para alta temperatura.

Los tres DS18B20 incluyen la interfaz en serie especial de 1 cable, así como la lógica de control y el sensor de temperatura en sí. Envía las medidas digitales a Raspberry Pi y, dependiendo de su distribución, la última versión de Raspbian incluye una forma de leer esos mensajes sin un trabajo adicional. Si tiene todo conectado, puede probarlo a través de la línea de comando usando los siguientes comandos.

123456sudo modprobe w1 – gpiosudo modprobe w1 – thermcd / sys / bus / w1 / deviceslscd 28 – xxxx (cambie esto para que coincida con el suyo) cat w1_slave

Escriba los comandos que ve arriba en una ventana de terminal. Navegue hasta el directorio '/ sys / bus / s1 / devices'. En los comandos de arriba, el comando 'cd' se estableció en el directorio que comienza en '28 - 'Puede tener un nombre diferente en su sistema, ya que se basa en la serie DS18B20. número, así que cd al nombre de cualquier directorio que esté allí.

La respuesta tendrá SÍ o NO al final de la primera línea. Si es así, entonces la temperatura estará al final de la segunda línea, en 1/000 grados C.

Software

Una vez que se ha ensamblado el circuito, ahora necesitamos escribir el programa para leer los datos de temperatura del sensor, en el diseño básico, el programa leerá los datos cada segundo y mostrará la lectura en la salida estándar en la terminal.

El lenguaje de software que usaremos para leer los datos del sensor de temperatura DS18B20 es Python. Agregue esto a un archivo y guárdelo como "temp_logger_basic.py"

1234567891011121314151617181920212223242526272829303132importar osimport globimport timeos.system ('modprobe w1-gpio') os.system ('modprobe w1-therm') base_dir ='/ sys / bus / w1 / devices /' device +folder =) [0] device_file =device_folder + '/ w1_slave'def read_temp_raw ():f =open (device_file,' r ') lines =f.readlines () f.close () return linesdef read_temp ():lines =read_temp_raw () while lines [0] .strip () [- 3:]! ='YES':time.sleep (0.2) lines =read_temp_raw () equals_pos =lines [1] .find ('t =') if equals_pos! =- 1:temp_string =líneas [1] [equals_pos + 2:] temp_c =float (temp_string) / 1000.0 temp_f =temp_c * 9.0 / 5.0 + 32.0 return temp_c, temp_f while True:print (read_temp ()) time.sleep (1)

En la parte superior del programa incluimos módulos que usaremos en el script, luego pasa a emitir los comandos "modprobe" que son necesarios para iniciar la interfaz. En las siguientes tres líneas, busque el archivo desde el que se pueden leer los datos.

Hay dos funciones que manejan la lectura de la temperatura, "read_temp_raw" recupera las dos líneas de mensaje de la interfaz. La función "read_temp" devuelve dos valores, la temperatura en Celsius y la temperatura en Fahrenheit cada segundo.

Aquí hay una salida del script.

123456789sculley @ berry:/ usr / local / temperature / $ sudo python ./temp_logger_basic.py(18.875, 65.975) (18.875, 65.975) (18.875, 65.975) (18.875, 65.975) (18.875, 65.975) (18.875, 65.975) ( 18.875, 65.975) (18.875, 65.975)

La secuencia de comandos debe ejecutarse como root, y también debe usar Python para llamar a la secuencia de comandos, ya que no hemos agregado el shebang de Python en la parte superior de la secuencia de comandos.

Así que eso es todo, debería haber conectado correctamente el diseño básico y escrito el guión básico para leer los datos de temperatura del sensor de temperatura DS18B20. Ahora podemos pasar al diseño más avanzado.

Diseño avanzado

En el diseño avanzado, les mostraré mi diseño de mi registrador de temperatura, que he soldado los componentes a un protector de PCB que se conecta a la Raspberry Pi y se almacena dentro de una pequeña caja negra para ocultar todo, el código se ejecuta cada hora y almacena el datos a una base de datos MySQL, lo uso para mostrar los datos en un gráfico de Google que hace que sea más fácil de visualizar.

Hardware

Para el diseño avanzado, necesitamos las mismas partes que el básico excepto el Pi Cobbler (Raspberry Pi, sensor de temperatura DS18B20, resistencia de 4.8k Ohm, placa de pruebas de tamaño medio y cables de puente) pero también necesitamos un PCB, compré el Raspberry Pi escudo de creación de prototipos de Adafruit que es ideal para hacer diseños semipermanentes.

Para más detalles:Monitoreo de temperatura en Raspberry Pi


Proceso de manufactura

  1. Registrador de temperatura Raspberry Pi
  2. Perfil de temperatura de Raspberry Pi usando LabVIEW
  3. Monitor de red de temperatura y humedad Raspberry Pi
  4. Leer temperatura con DS18B20 | Raspberry Pi 2
  5. Medición de temperatura con RASPBERRY PI
  6. Sensor de temperatura Python y Raspberry Pi
  7. Temperatura y humedad sencillas en Raspberry Pi
  8. Supervisión de la temperatura con Raspberry Pi
  9. Bricolaje:Regulación y monitoreo de temperatura para HomeBrew
  10. Lectura de Raspberry Pi BMP085 Temperatura y presión
  11. Monitoreo remoto del clima usando Raspberry Pi