creadores

Riega tus plantas con un aspersor inteligente de bricolaje usando PiFace y Ubidots

daniel da silva
· 4 min de lectura
Enviar por correo electrónico

Una de las razones por las que tengo principalmente cactus en casa es porque a menudo me olvido de regar mis plantas. Es por eso que construyo este proyecto para controlar una electroválvula de forma remota para regar mis plantas desde cualquier lugar con solo usar mi teléfono.

Al final de este tutorial, deberías poder hacer algo como esto:

Materiales

  • Frambuesa Pi modelo B:frambuesa_pi-1
  • cara digital

piface-digital

  • Válvula de agua de plástico – 3/4″ – 12V nominal

válvula

  • Cable flexible para 1A

bobinas_de_alambre

  • Conector de barril de CC

dcjack

  • Adaptador de corriente conmutado regulado de 12 VCC 1000 mA

cargador 12v

  • Acoplamiento roscado de pvc de 3/4”

enganche

  • cinta de teflón

teflón

  • Manguera

manguera

  • Aspersor

aspersor

Conexiones

Las conexiones eléctricas son bastante sencillas:

  • En primer lugar, conecte su piface a la Raspberry Pi sin enchufar ningún adaptador de corriente.
  • Siga el diagrama a continuación. El cable blanco es GND y está conectado al terminal común del relé, el rojo está conectado al NO (normalmente abierto).

sch

En cuanto a las conexiones hidráulicas, asegúrate de utilizar cinta de teflón en cada unión para evitar fugas de agua.

Configure su cuenta, variables y widgets Ubidots

Si eres nuevo en Ubidots , crea una cuenta aquí .

  • Navegue a la pestaña "Fuentes" y agregue una nueva fuente.

Paso 1 fuente

  • Seleccione Raspberry Pi como su nueva fuente de datos y complete el formulario.

Paso2fuente

  • Ahora haga clic en la nueva fuente "Mi Raspberry Pi"

Paso 1Variable

  • Añade dos nuevas variables llamadas “valve” y “relay_state” y no olvides completar los campos nombre y unidad.

variable paso 2

  • Tome nota de la identificación de su variable:

variable paso 3

  • Tome nota de su clave API que se encuentra en " Mi perfil -> Clave API ".
  • Ahora, creemos un nuevo widget para controlar la válvula de forma remota:

Indicador paso 1

  • Elija el widget "Cambiar" y vincúlelo a la variable "válvula". Este widget escribirá "1" o "0" en la variable "válvula", que sondearemos más adelante desde nuestra Raspberry Pi.

Paso 1 cambiar

  • Agrega otro widget llamado “indicador” y elige la variable Valve_State:

Indicador paso 2

  • Así es como se ve tu dashboard ahora:

dashboard

Codificación

Antes de que podamos comenzar a codificar, ya deberías haber configurado tu Raspberry Pi con Internet. De lo contrario, consulte esta publicación de blog sobre cómo configurar WiFi . Ahora podemos continuar, iniciar sesión a través de una terminal en su Raspberry Pi y configurar el módulo SPI para comunicarse con PiFace Digital:

sudo nano /etc/modprobe.d/raspi-blacklist.conf

Agregue un carácter "#" antes de la línea spi-bcm2708, luego presione CTRL-X, escriba Y y Enter. Esto habilita SPI desde el arranque. Ahora instalemos y configuremos la biblioteca PiFace Digital:

sudo apt-get update sudo apt-get install python3-pifacedigitalio python-pifacedigitalio

Reinicia tu Pi:

reiniciar sudo

¡Excelente! Estamos listos para comenzar a codificar nuestro proyecto. Cree un nuevo archivo llamado "valve.py" y pegue el siguiente código en él:

sudo nano valvula.py

import pifacedigitalio #Biblioteca para pifacedigitalio #Biblioteca para retrasos de ubidots import ApiClient #Biblioteca para Ubidots pifacedigital = pifacedigitalio.PiFaceDigital() #Declarar objeto piface ##Conéctate a Ubidots prueba: api = ApiClient("1fc7a56bf4b539725ace7a3f4aa623e9e9620612") #No olvides a ponga su propia válvula Apikey = api.get_variable('53cd4cb07625425b70f5c21e') #Ponga aquí el ID de su válvula ValveState = api.get_variable("53ce95547625420403d81468") #Ponga aquí su ID de estado real excepto: print("cant connect") #Compruebe su Apikey , ID de la variable y conexión a Internet while(True): lastValue = Valve.get_values(1) #Obtener el último valor de la válvula de Ubidots rele = pifacedigital.relays[0].value #Guardar estado del relé ValveState.save_value({'value' :rele}) #Enviar estado del relé a Ubidots para un in lastValue: imprimir un['valor'] if(a['value']): #Activar o desactivar el relé pifacedigital.output_pins[0].turn_on() else : pifacedigital.output_pins[0].turn_off()

Ejecute su programa:

$ sudo python válvula.py

Concluyendo

En este ejemplo pudimos controlar una electroválvula con Piface Digital. Encendimos/apagamos un actuador desde el dashboard Ubidots , que debería permitirle controlar casi cualquier proceso físico siempre que pueda ser controlado por un relé.

También puede utilizar Ubidots para medir datos de series temporales, como niveles de señal, generar alertas y controlar otros dispositivos. Quizás quieras consultar estos otros ejemplos:


¿Tienes más ideas de proyectos? Crea una cuenta Ubidots y hazlos realidad.