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

Sensor de luz Raspberry Pi:un tutorial sencillo de LDR

En este tutorial del sensor de luz Raspberry Pi, te muestro cómo conectar correctamente el sensor de fotorresistencia a los pines GPIO. Por último, le muestro cómo se puede usar en un script de Python simple para que pueda recopilar y usar los datos de él.

Este es otro sensor que consideraré incorporar en proyectos futuros, como un reloj despertador activado por luz.

Explico un poco más abajo cada una de las partes que estaré usando en este circuito. Asegúrese de leerlo si necesita más información sobre estos. Es importante tener en cuenta que para este tutorial solo estoy usando un sensor de fotocélula simple, mientras que estos son perfectos para algunas tareas, es posible que no sean tan precisos como le gustaría.

Si desea ver visualmente paso a paso cómo configurar el circuito y el código del sensor de luz, asegúrese de ver el video justo debajo de la lista de equipos.

Equipo:

Necesitará el siguiente equipo para poder completar este tutorial del sensor de luz Raspberry Pi. Puede hacer esto sin ningún equipo de tablero, pero le recomiendo que invierta en algunos si planea hacer mucho trabajo de circuitos.

Recomendado:

Frambuesa Pi

Tarjeta SD de 8 GB o tarjeta Micro SD si está utilizando una Raspberry Pi 2 o B +

Cable Ethernet o dongle Wifi

Sensor de luz (sensor LDR)

1 condensador de 1uF

Opcional:

Estuche para Raspberry Pi

Teclado USB

Ratón USB

Kit de conexión GPIO

Protoboard

Alambre de tablero

Video

El video contiene casi todo lo que hace la versión de texto de este tutorial. Es perfecto si prefiere ver las cosas hechas de forma visual. También podrá ver cómo debería funcionar el circuito una vez que haya terminado.

Puede encontrar instrucciones e información de texto justo debajo del video.

El circuito del sensor de luz Raspberry Pi

El circuito que vamos a hacer para este tutorial es súper simple y es excelente para cualquiera que esté comenzando con los circuitos.

La resistencia dependiente de la luz o también conocida como sensor LDR es la pieza más importante del equipo en nuestro circuito (obviamente). Sin él, no podríamos detectar si está oscuro o claro. A la luz, este sensor tendrá una resistencia de solo unos pocos cientos de ohmios, mientras que en la oscuridad puede tener una resistencia de varios megaohmios.

El condensador de nuestro circuito está ahí, por lo que podemos medir la resistencia del sensor LDR. Un condensador actúa esencialmente como una batería que se carga mientras recibe energía y luego se descarga cuando ya no recibe energía. Usando esto en serie con el LDR podemos calcular cuánta resistencia está dando el LDR, por lo tanto, si es claro u oscuro.

Para que el circuito del sensor de luz se construya correctamente, siga los pasos a continuación o consulte el diagrama del circuito justo debajo de los pasos. En los siguientes pasos me refiero a los números físicos de los pines (orden lógico).

  1. Primero conecte el pin n. ° 1 (3v3) al riel positivo en la placa de pruebas.
  2. Luego, conecte el pin n. ° 6 (tierra) al riel de tierra en la placa de pruebas.
  3. Ahora coloque el sensor LDR en la placa y haga que un cable vaya desde un extremo hasta el riel positivo.
  4. En el otro lado del sensor LDR, coloque un cable que conduzca de regreso a la Raspberry Pi. Enganche esto al pin n. ° 7.
  5. Finalmente, coloque el capacitor desde el cable hasta el riel negativo en la placa de pruebas. Asegúrese de tener el pin negativo del capacitor en el riel negativo.

Ahora estamos listos para pasar al código Python, si tiene algún problema con el circuito, consulte el diagrama a continuación.

El código

El código para este proyecto es bastante simple y nos dirá aproximadamente si es claro, sombreado o completamente oscuro.

El mayor problema al que nos enfrentamos con este circuito es el hecho de que el Pi no tiene pines analógicos. Todos son digitales, por lo que no podemos medir con precisión la variación en la resistencia en nuestra entrada. Esta falta de pines analógicos no fue un problema en el tutorial del sensor de movimiento, ya que la salida era alta o baja (digital). En cambio, mediremos el tiempo que tarda el condensador en cargarse y enviar el pin alto. Este método es una forma fácil pero inexacta de saber si hay luz u oscuridad.

Explicaré brevemente el código del sensor de luz Raspberry Pi y lo que hace, si quieres el código, puedes copiarlo y pegarlo a continuación o descargarlo de mi GitHub.

Para empezar, importamos el paquete GPIO que necesitaremos para poder comunicarnos con los pines GPIO. También importamos el paquete de tiempo, por lo que podemos poner el script en reposo cuando lo necesitemos.

  #! / usr / local / bin / pythonimport RPi.GPIO como GPIOimport time  

Luego configuramos el modo GPIO en GPIO.BOARD, esto significa que toda la numeración que usamos en este script se referirá a la numeración física de los pines. Como solo tenemos un pin de entrada / salida, solo necesitamos establecer una variable. Establezca esta variable en el número del pin que tiene actuando como pin de entrada / salida.

  GPIO.setmode (GPIO.BOARD) #define el pin que va al circuito pin_to_circuit =7  

A continuación, tenemos una función llamada rc_time que requiere un parámetro que es el número de pin del circuito. En esta función inicializamos una variable llamada count, devolveremos este valor una vez que el pin llegue a alto.

Luego configuramos nuestro pin para que actúe como una salida y luego lo configuramos en bajo, luego hacemos que el script duerma durante 10 ms.

Después de esto, configuramos el pin para que se convierta en entrada y luego ingresamos un bucle while. Permanecemos en este bucle hasta que el pin se pone alto, esto es cuando el capacitor se carga a aproximadamente 3/4. Una vez que sube, devolvemos el valor de recuento a la función principal. Puede usar este valor para encender y apagar un LED, activar otra cosa o registrar los datos y mantener estadísticas sobre cualquier variación en la luz.

  def rc_time (pin_to_circuit):count =0 #Salida en el pin para GPIO.setup (pin_to_circuit, GPIO.OUT) GPIO.output (pin_to_circuit, GPIO.LOW) time.sleep (0.1) #Cambiar el pin de nuevo a la entrada GPIO.setup (pin_to_circuit, GPIO.IN) #Contar hasta que el pin se ponga alto mientras (GPIO.input (pin_to_circuit) ==GPIO.LOW):count + =1 return count # Detectar cuando el script se interrumpe, limpieza intentar correctamente:# Bucle principal mientras es Verdadero:imprimir rc_time (pin_to_circuit) excepto KeyboardInterrupt:passfinally:GPIO.cleanup ()  

Implementación y ejecución del código en su Raspberry Pi

Este paso es increíblemente fácil, pero los seguiré rápidamente para que pueda tenerlo en funcionamiento en su Pi de la manera más rápida y sencilla posible. Como todos los tutoriales en este sitio web, estoy usando Raspbian si necesita ayuda para instalar Raspbian, consulte mi guía para instalar Raspbian.

Si bien todos los paquetes de software ya deberían estar instalados en algunos casos, es posible que no lo esté. Si desea obtener más información sobre los pines GPIO y cómo actualizar e instalar el software, asegúrese de consultar mi tutorial sobre cómo configurar los pines GPIO en la Raspberry Pi.

Puedes descargar el código usando git clone. El siguiente comando hará exactamente eso:

  clon de git https://github.com/pimylifeup/Light_Sensor/cd ./Light_Sensor  

Alternativamente, puede copiar y pegar el código, solo asegúrese de que el archivo sea una secuencia de comandos de Python.

  sudo nano light_sensor.py  

Una vez que haya terminado con el archivo, simplemente use ctrl x luego y para guardar y salir.

Finalmente, ejecute el código usando el siguiente comando:

  sudo python light_sensor.py  

Espero que ahora tenga el script funcionando y esté recibiendo datos que reflejen correctamente los cambios de luz en el sensor. Si tiene problemas, no dude en dejar un comentario a continuación.

Mejora de la precisión y posibles usos

Hay innumerables usos para un sensor de luz en un circuito. Solo nombraré algunos en los que pensé mientras escribía este tutorial.

Hay mucho que puede hacer con este pequeño sensor genial, pero también recuerde que si necesita algo un poco más preciso que la fotocélula, mire algo como el sensor de luz digital de alto rango dinámico Adafruit.

Espero que hayas podido configurar este sensor de luz Raspberry Pi sin ningún problema. Si encuentra un problema, tiene comentarios, me he perdido algo o cualquier otra cosa que le gustaría decir, no dude en dejar un comentario a continuación.

Fuente:Sensor de luz Raspberry Pi:un tutorial simple de LDR


Proceso de manufactura

  1. Registrador de temperatura Raspberry Pi
  2. Sensor de temperatura Python y Raspberry Pi
  3. Estación meteorológica Raspberry Pi
  4. Sensor de temperatura de 1 cable DS1820 en Raspberry Pi (GPIO directamente)
  5. Sensor ultrasónico (HC-SR04) + Raspberry Pi
  6. Sensor de movimiento, alarma, grabación de video en HA en Raspberry Pi
  7. Sensor de movimiento con Raspberry Pi
  8. Sensor de humedad del suelo Raspberry Pi
  9. Sensor de pasillo digital Raspberry Pi en JAVA
  10. Sensor de temperatura y luz Raspberry Pi
  11. Luz solar de entrada al nodo de sensor inalámbrico MSP430