Cree un sistema de jardinería automatizado con Raspberry Pi Pico W
Con un dedo verde y un poco de paciencia, la jardinería es un pasatiempo favorito si tiene algunas plantas exóticas en el interior o un jardín al aire libre lleno de papas y plantas perennes.
Pero también hay momentos en que se agota la paciencia cuando las plantas comienzan a morir sin una buena razón.
El Raspberry Pi Pico W puede ayudar a proporcionar una solución para mantener las plantas prósperas sin siquiera mover un dedo (bueno, casi).
Considere cómo un monitor de planta, algún código y un pequeño microcontrolador monitorearán la salud de su planta desde cualquier lugar de su hogar.
Equipo requerido
Sorprendentemente, no se requiere mucho equipo. Hay muchos hechizos en el monitor de la planta. Realmente solo necesita algunos elementos para comenzar.
Aunque este monitor de planta admite el uso de pinzas de cocodrilo, este proyecto utiliza conectores de clavija conectados a la parte posterior del monitor de planta.
Construyendo un asistente de jardinería
Este proyecto implica conectar el monitor de fábrica a la Raspberry Pi Pico W, así como crear y manipular el código para que todo funcione. Se requerirá un servidor web para servir una página web simple dentro de la conexión a Internet de su hogar.
Hay diferentes versiones de modelos de Raspberry Pi Pico. Para este proyecto, deberá utilizar una Raspberry Pi Pico W. Consulta nuestra guía para descubrir de qué es capaz el Pico W. ¿Qué es Pico W y qué puede hacer?.
Primero, asegurémonos de que el monitor de fábrica esté conectado y funcione correctamente. Más adelante en este artículo, trabajará en la configuración de un servidor web simple que se puede usar para monitorear su planta con cualquier dispositivo habilitado para navegador conectado a su red doméstica.
Desarrollo de Monitor de Planta
Con tantos sensores disponibles a través de varios sitios web, encontrará que algunos sensores de suelo se desgastan fácilmente en el suelo, mientras que otros resisten bastante bien a los elementos. Monk Makes Plant Monitor es una excelente opción porque no es propenso a la corrosión en el suelo. Este monitor no solo mide la humedad del suelo, sino también la humedad y la temperatura.
Solo es necesario conectar cuatro pines desde el monitor de la planta al Raspberry Pi Pico W:
- GND va a GND
- 3V está conectado a la salida 3V3
- RX_IN encontrará la ruta GP0
- TX_OUT se encontrará con GP1
Una vez conectado a la alimentación, el Raspberry Pi Pico W podrá alimentarse a sí mismo y al monitor de la planta. Verá algunas luces en el dispositivo que confirman que el dispositivo está funcionando. También hay una luz LED que brillará en verde, amarillo o rojo (dependiendo del nivel de humedad detectado en el suelo).
Aunque Monk Makes Plant Monitor viene con algunos excelentes módulos de python, aún necesita crear un código simple para monitorear la salud del suelo de su planta. Puede descargar los siguientes archivos de Python de nosotros Repositorio MUO GitHub.
Lo necesitaras pmon.py y prueba.py para la parte de detección del suelo y los archivos python micropunto.py, mm_wlan.pyy pico_w_server.py que luego se utilizará para completar un servidor web simple.
Ahora es un buen momento para tomar un descanso y refrescarse Sutiles diferencias entre MicroPython y Python si aún no lo ha hecho.
archivo de Python, pmon.py, crea una clase de MicroPython para el monitor de planta. El UART manejará la transferencia de datos dúplex y luego se necesita algo de trabajo para convertir analógico a digital. tu tambien celebraras humedad, temperaturay humedad Las funciones también se definen en este archivo.
def get_wetness(self):
return int(self.request_property("w")) def get_temp(self):
return float(self.request_property("t"))
def get_humidity(self):
return float(self.request_property("h"))
def led_off(self):
self.uart.write("l")
def led_on(self):
self.uart.write("L")
Entonces, lo necesitarás prueba.py obtenido de nuestro archivo Repositorio MUO GitHub.
Verás los módulos. hora (de monitor de planta), y auto necesita monitorear adecuadamente la salud de su planta.
A quién monitor de planta módulo es importado, todo lo que se requiere para monitorear el estado del suelo es un término simple. También, Imprímelo el comando generará lecturas de humedad, temperatura y humedad del suelo prueba.py En lo de Thonny.
time.sleep(2)
pm = PlantMonitor()while True:
w = pm.get_wetness()
t = pm.get_temp()
h = pm.get_humidity()
print("Wetness: {0} Temp: {1} Humidity: {2}".format(w, t, h))
time.sleep(1)
¿No quieres regar tu planta cuando el suelo está demasiado seco? Configure el relé de su bomba en un pin en Raspberry Pi Pico y use una instrucción if para iniciar su bomba de agua, controle el valor de humedad (de 100) para reiniciar y distribuir el agua.
relay1 = Pin(15, Pin.OUT) if w = 24
relay1.value(1)
relay1(0)
Querrá hacer algunas pruebas para encontrar el equilibrio perfecto para asegurarse de que su planta esté contenta con la cantidad de agua que recibe. Si su planta está demasiado fría, puede agregar otra instrucción if para encender la lámpara de calor a través de un relé.
Servidor web sencillo
Necesitará tres archivos python de nosotros Repositorio MUO GitHubPara transmitir las estadísticas de suelo de Raspberry Pi Pico W a las conexiones de Internet de su hogar:
- micropunto.py
- mm_wlan.py
- pico_w_server.py
Él micropunto El archivo maneja las funciones de back-end para crear este servidor web simple basado en HTTP y muestra la salida del código python como una página web basada en html a la que se puede llamar usando la dirección IP de Raspberry Pi Pico W.
Él mm_wlan.py El archivo ofrece una forma sencilla de conectarse a una red inalámbrica. Obtendrá la dirección IP de Raspberry Pi Pico y un mensaje conectado. Si la conexión falla, recibirá un mensaje de conexión fallida en su lugar.
Él pico_w_server.py El archivo es donde ingresa su SSID (recuerde que Raspberry Pi Pico W solo se conecta a SSID de 2.4GHz) y su contraseña de Wi-Fi. En la sección HTML, puede personalizar lo que su servidor web mostrará en un navegador web. También puede eliminar los comentarios de la sección de actualización y ajustar el intervalo si no desea que la página web se actualice cada segundo.
En la parte inferior de este archivo, también puede personalizar el puerto. Esto es útil si desea exponer esta información a Internet fuera de su hogar.
Cuando trabajas prueba.py archivo, archivos python del servidor requeridos (mm_wlan y pico_w_servidor) se importa para usted. Después de ejecutarlo prueba.py archivo, tome la dirección IP de su Pi (que se encuentra en la salida de Thonny) y agregue el puerto (el predeterminado es 80) que usa desde cualquier navegador web conectado al mismo SSID de 2,4 GHz en casa. Debería ver algo como esto:
Cambie para reducir la dependencia de su computadora conectada prueba.py al archivo principal.py y ahorra en Raspberry Pi Pico W. También puede considerar conectar la pantalla LCD al Pico para que pueda programar la pantalla para extraer la dirección IP (cuando elimine la dependencia de su PC conectada).
Devolver el Pulgar Verde
Con un sensor de suelo sofisticado y un servidor web simple, ahora puede monitorear la salud de su planta desde un navegador web en cualquier lugar de su hogar.
Siéntete libre de modificar el código como mejor te parezca. Si está preparado para ello, considere crear una aplicación de sensor de suelo que agregue algo de brillo al servidor web simple que acaba de instalar.
Agregue una bomba y un relé junto con una lámpara de calor para que este proyecto se sienta completo y tenga un jardín completamente automatizado. Ahora podrá mantener su estado de “pulgar verde” para siempre.