Tabla de contenido:

Circuitos GPIO de Raspberry Pi: uso de un sensor analógico LDR sin un ADC (convertidor analógico a digital): 4 pasos
Circuitos GPIO de Raspberry Pi: uso de un sensor analógico LDR sin un ADC (convertidor analógico a digital): 4 pasos

Video: Circuitos GPIO de Raspberry Pi: uso de un sensor analógico LDR sin un ADC (convertidor analógico a digital): 4 pasos

Video: Circuitos GPIO de Raspberry Pi: uso de un sensor analógico LDR sin un ADC (convertidor analógico a digital): 4 pasos
Video: YAHBOOM Pico Sensor Kit para Raspberry Pi Pico: Detectar intensidad de luz 2024, Mes de julio
Anonim
Circuitos GPIO de Raspberry Pi: uso de un sensor analógico LDR sin un ADC (convertidor analógico a digital)
Circuitos GPIO de Raspberry Pi: uso de un sensor analógico LDR sin un ADC (convertidor analógico a digital)

En nuestros Instructables anteriores, le mostramos cómo puede vincular los pines GPIO de su Raspberry Pi a los LED e interruptores y cómo los pines GPIO pueden ser altos o bajos. Pero, ¿y si desea utilizar su Raspberry Pi con un sensor analógico?

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.

Este Instructable le mostrará cómo se puede hacer esto.

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 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 la resistencia dependiente de la luz

Cree una secuencia de comandos de Python para leer la resistencia dependiente de la luz
Cree una secuencia de comandos de Python para leer la resistencia dependiente de la luz

Ahora escribiremos un breve script que leerá y mostrará la resistencia del LDR usando Python.

En su Raspberry Pi, abra IDLE (Menú> Programación> Python 2 (IDLE)). Abra un nuevo proyecto, vaya a Archivo> Nuevo archivo. Luego escriba (o copie y pegue) el siguiente código:

importar RPi. GPIO como GPIOimportar timempin = 17 tpin = 27 GPIO.setmode (GPIO. BCM) cap = 0.000001 adj = 2.130620985i = 0 t = 0 while True: 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) hora de inicio = hora.hora () hora de finalización = hora.hora () while (GPIO.input (mpin) == GPIO. LOW): hora de finalización = hora.hora () medir la resistencia = hora de finalización-hora de inicio res = (medir la resistencia / límite) * adj i = i + 1 t = t + res si i == 10: t = t / i imprime (t) i = 0 t = 0

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

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

python lightsensor.py

La Raspberry Pi mostrará repetidamente la resistencia del fotorresistor. Si coloca su dedo sobre el fotorresistor, la resistencia aumentará. Si ilumina la fotorresistencia con una luz brillante, la resistencia disminuirá. Puede detener la ejecución de este programa presionando CTRL + Z.

Paso 4: cómo funciona

A medida que el condensador se carga gradualmente, aumenta el voltaje que pasa a través del circuito y al pin GPIO. Una vez que el capacitor se carga hasta cierto punto, su voltaje aumenta por encima de los 2 voltios y la Raspberry Pi detectará que el pin 13 de GPIO está ALTO.

Si la resistencia del sensor aumenta, el condensador se cargará más lentamente y el circuito tardará más en alcanzar los 2 voltios.

El script anterior esencialmente mide el tiempo que tarda el pin 13 en ponerse alto y luego usa esta medida para calcular la resistencia del fotorresistor.

Recomendado: