Tabla de contenido:

Hacer un registrador de datos con Raspberry Pi: 3 pasos (con imágenes)
Hacer un registrador de datos con Raspberry Pi: 3 pasos (con imágenes)

Video: Hacer un registrador de datos con Raspberry Pi: 3 pasos (con imágenes)

Video: Hacer un registrador de datos con Raspberry Pi: 3 pasos (con imágenes)
Video: CREAR una NUBE PRIVADA: ¿Raspberry Pi o un NAS Synology? 2024, Mes de julio
Anonim
Hacer un registrador de datos con Raspberry Pi
Hacer un registrador de datos con Raspberry Pi

Este registrador de datos simple toma medidas de luz regulares con un LDR (fotorresistor) analógico y las almacena en un archivo de texto en su Raspberry Pi. Este registrador de datos medirá y registrará el nivel de luz cada 60 segundos, lo que le permitirá controlar cómo cambia el brillo durante un período de tiempo.

Si queremos usar sensores analógicos con la Raspberry Pi, necesitaríamos poder medir la resistencia del sensor. A diferencia del Arduino, los pines GPIO de la Raspberry Pi no pueden medir la resistencia y solo pueden detectar si el voltaje que se les suministra está por encima de un cierto voltaje (aproximadamente 2 voltios). Para solucionar este problema, puede utilizar un convertidor analógico a digital (ADC) o, en su lugar, puede utilizar un condensador relativamente económico.

Paso 1: lo que necesitará

Que necesitarás
Que necesitarás
Que necesitarás
Que necesitarás
Que necesitarás
Que necesitarás
Que necesitarás
Que necesitarás

- Un RaspberryPi con Raspbian ya instalado. También deberá poder acceder a la Pi mediante un monitor, un mouse y un teclado o mediante un escritorio remoto. Puede utilizar cualquier modelo de Raspberry Pi. Si tiene uno de los modelos Pi Zero, es posible que desee soldar algunos pines de encabezado al puerto GPIO.

- Una resistencia dependiente de la luz (también conocida como LDR o fotorresistencia)

- Un condensador cerámico de 1 uF

- Una placa de prototipos sin soldadura

- Algunos cables de puente macho a hembra

Paso 2: construye tu circuito

Construye tu circuito
Construye tu circuito
Construye tu circuito
Construye tu circuito

Construya el circuito anterior en su tablero asegurándose de que ninguno de los cables de los componentes se toque. La resistencia dependiente de la luz y el condensador cerámico no tienen polaridad, lo que significa que se puede conectar una corriente negativa y positiva a cualquiera de los cables. Por lo tanto, no necesita preocuparse por la forma en que estos componentes se han conectado en su circuito.

Una vez que haya verificado su circuito, conecte con cuidado los cables de puente a los pines GPIO de su Raspberry Pi siguiendo el diagrama anterior.

Paso 3: cree una secuencia de comandos de Python para leer y registrar sus datos

Cree una secuencia de comandos de Python para leer y registrar sus datos
Cree una secuencia de comandos de Python para leer y registrar sus datos

Abra IDLE en su Raspberry Pi (Menú> Programación> Python 2 (IDLE)) y abra un nuevo proyecto (Archivo> Nuevo archivo). Luego escriba lo siguiente:

importar RPi. GPIO como GPIO

import time import datetime loginterval = 60 # intervalo de registro en segundos savefilename = "lightlevels.txt" SensorPin = 17 TriggerPin = 27

GPIO.setmode (GPIO. BCM)

cap = 0.000001 # 1uf adj = 2.130620985

def medir la resistencia (mpin, tpin):

GPIO.setup (mpin, GPIO. OUT) GPIO.setup (tpin, GPIO. OUT) GPIO.output (mpin, False) GPIO.output (tpin, False) time.sleep (0.2) GPIO.setup (mpin, GPIO. IN) time.sleep (0.2) GPIO.output (tpin, True) starttime = time.time () endtime = time.time () while (GPIO.input (mpin) == GPIO. LOW): endtime = time.time () return endtime-starttime def writeeline (txt, fn): f = open (fn, 'a') f.write (txt + '\ n') f.close () i = 0 t = 0 while True: stime = time.time () para a en el rango (1, 11): res = (medir la resistencia (SensorPin, TriggerPin) / cap) * adj i = i + 1 t = t + res if a == 10: t = t / i print (t) writeeline (str (datetime.datetime.now ()) + "," + str (t), savefilename) i = 0 t = 0 while stime + loginterval> time.time (): #esperar hasta que el tiempo de registro haya tiempo pasado dormido (0.0001)

Guarde su proyecto como datalogger.py (Archivo> Guardar como) en su carpeta Documentos.

Ahora abra Terminal (Menú> Accesorios> Terminal) y escriba el siguiente comando:

Python datalogger.py

El script creará un archivo de texto llamado "lightlevels.txt" y lo actualizará cada 60 segundos. Puede cambiar este nombre de archivo en la línea 6. También puede ajustar la frecuencia con la que se actualiza el registrador de datos cambiando la línea 5.

Recomendado: