I lettori come te aiutano a sostenere MUO. Quando effettui un acquisto utilizzando i link sul nostro sito, potremmo guadagnare una commissione di affiliazione. Per saperne di più.

Con il pollice verde e un po' di pazienza, il giardinaggio è un hobby adorabile, indipendentemente dal fatto che tu abbia alcune piante esotiche in casa o un giardino all'aperto in piena regola con patate e piante perenni.

Detto questo, ci sono anche momenti in cui la tua pazienza potrebbe esaurirsi quando le piante iniziano a morire per quella che sembra non essere una buona ragione.

Il Raspberry Pi Pico W può aiutare a fornire una soluzione per garantire che le piante prosperino senza muovere un dito (beh, quasi).

Rivediamo come un monitor per piante, un codice e un minuscolo microcontrollore terranno traccia della salute della tua pianta da qualsiasi punto della casa.

Hardware richiesto

Sorprendentemente, non è necessario molto hardware. Gran parte della magia è contenuta nel Plant Monitor. Hai davvero bisogno solo di pochi elementi per iniziare.

instagram viewer
  • Plant Monitor di Monk Makes
  • 4 cavi jumper femmina-maschio
  • Raspberry Pi Pico W

Sebbene questo monitor dell'impianto supporti l'uso di clip a coccodrillo, questo progetto utilizza i connettori a pin fissati sul retro del dispositivo di monitoraggio dell'impianto.

Configurazione dell'assistente al giardinaggio

Questo progetto prevede il collegamento del monitor dell'impianto al tuo Raspberry Pi Pico W, nonché la creazione e la manipolazione del codice per far funzionare tutto. Sarà necessario un server Web per fornire una semplice pagina Web accessibile tramite la connessione Internet domestica.

Esistono diverse versioni del modello del Raspberry Pi Pico. Per questo progetto, dovrai utilizzare un Raspberry Pi Pico W. Per sapere di cosa è capace Pico W, consulta la nostra guida su cos'è il Pico W e cosa può fare.

Innanzitutto, assicuriamoci che il monitor dell'impianto sia collegato e funzioni correttamente. Più avanti nell'articolo, affronterai la configurazione di un semplice server Web utilizzato per monitorare il tuo impianto con qualsiasi dispositivo abilitato al browser connesso alla tua rete domestica.

Preparazione del monitor dell'impianto

Con molti sensori disponibili per l'acquisto attraverso vari siti Internet, imparerai che alcuni sensori del suolo si consumano facilmente nel suolo e altri resistono abbastanza bene agli elementi. Il Monk Makes Plant Monitor è una buona opzione in quanto non è soggetto a corrodersi nel terreno. Questo monitor non solo misura l'umidità del suolo, ma misura anche l'umidità e la temperatura.

Solo quattro pin dovranno essere collegati dal monitor dell'impianto al tuo Raspberry Pi Pico W:

  • GND va a GND
  • 3V si collega a 3V3 Out
  • RX_IN troverà la sua strada verso GP0
  • TX_OUT si incontrerà con GP1

Una volta collegato all'alimentazione, il tuo Raspberry Pi Pico W sarà in grado di fornire alimentazione a se stesso e al monitor dell'impianto. Noterai alcune luci sull'hardware che confermano che il dispositivo è funzionante. Inoltre, c'è una luce LED che brillerà di verde, giallo o rosso (a seconda del livello di umidità rilevato nel terreno).

Sebbene Monk Makes Plant Monitor sia dotato di alcuni fantastici moduli Python, dovrai comunque creare un semplice codice per monitorare la salute del suolo della tua pianta. Puoi prendere i seguenti file python dal nostro Repository GitHub di MUO.

Avrai bisogno pmon.py E prova.py per la porzione di rilevamento del suolo e i file python microdot.py, mm_wlan.py, E pico_w_server.py verrà utilizzato per completare il semplice server Web in seguito.

Ora è un ottimo momento per fare una pausa e rinfrescarti sottili differenze tra MicroPython e Python se non lo hai già fatto.

Il file Python, pmon.py, crea una classe MicroPython per il monitor dell'impianto. UART si occuperà della trasmissione duplex dei dati e quindi è necessario anche un lavoro di conversione da analogico a digitale. Noterai anche il umidità, temp, E umidità funzioni definite anche in questo file.

defget_wetness(se stesso):
ritorno int(se stesso.request_property("w"))

defget_temp(se stesso):
ritorno galleggiante(se stesso.request_property("T"))

defget_humidity(se stesso):
ritorno galleggiante(se stesso.request_property("H"))

defled_spento(se stesso):
se stesso.uart.write("io")

defled_on(se stesso):
se stesso.uart.write("L")

Successivamente, avrai bisogno di prova.py file ottenuto dal ns Repository GitHub di MUO.

Noterai che i moduli ora, pomeriggio (da PlantMonitor), E macchina sono necessari per monitorare correttamente la salute della tua pianta.

Come il PlantMonitor viene importato il modulo, tutto ciò che serve per monitorare le condizioni del suolo è un semplice ciclo while. Anche il stampa comando produrrà le letture dell'umidità del suolo, della temperatura e dell'umidità dopo l'esecuzione prova.py in Tonny.

tempo.sleep(2) # Tempo di avvio di PlantMonitor
pm = PlantMonitor()

MentreVERO:
w = pm.get_wetness()
t = pm.get_temp()
h = pm.get_humidity()
stampa("Umidità: {0} Temp: {1} Umidità: {2}".format (w, t, h))
tempo.sonno(1)

Non hai voglia di annaffiare la tua pianta quando il terreno è troppo secco? Assegna il relè della tua pompa a un pin sul Raspberry Pi Pico e utilizza un'istruzione if per controllare a valore di umidità (su 100) per attivare la pompa dell'acqua, tramite un relè, per accendere ed erogare acqua Ancora.

relè1 = Pin(15, Spillo. FUORI) Il #relè è cablato fino a GP15 e GND

Se w = 24# guarda per un valore di umidità di 24/100

relè1.valore(1) # attiva il relè
relè1(0) # spegni il relè

Dovrai fare alcuni test per trovare l'equilibrio perfetto per assicurarti che la tua pianta sia soddisfatta della quantità di acqua che sta ricevendo. Puoi anche aggiungere un'altra istruzione if per accendere una lampada riscaldante, tramite un relè, se il tuo impianto è troppo freddo.

Server web semplice

Avrai bisogno di tre file python, dal nostro Repository GitHub di MUO, affinché il tuo Raspberry Pi Pico W trasmetta le statistiche del suolo alle tue connessioni Internet domestiche:

  • microdot.py
  • mm_wlan.py
  • pico_w_server.py

IL micropunto file gestisce le funzioni di back-end per creare questo semplice server Web basato su HTTP e visualizza il file output del codice python come una pagina Web basata su html che può essere richiamata utilizzando l'indirizzo IP del Raspberry Pi Picco W.

IL mm_wlan.py file offre un modo semplice per connettersi a una rete wireless. Riceverai un indirizzo IP del tuo Raspberry Pi Pico e un messaggio connesso. Se la connessione non è andata a buon fine, riceverai invece un messaggio di connessione fallita.

IL pico_w_server.py file è dove inserisci l'SSID (ricorda che Raspberry Pi Pico W si connette solo a SSID a 2,4 GHz) e la tua password Wi-Fi. All'interno della sezione HTML, puoi personalizzare ciò che il tuo server web visualizzerà su un browser web. Puoi anche rimuovere i commenti dalla sezione di aggiornamento e modificare l'intervallo se non desideri che la pagina web si aggiorni ogni secondo circa.

In fondo a questo file, puoi anche personalizzare la porta. Questo è utile se desideri esporre queste informazioni a Internet fuori casa.

Quando corri il tuo prova.py file, i file python del server richiesti (mm_wlan E pico_w_server) vengono importati per te. Dopo aver eseguito il file prova.py file, prendi l'indirizzo IP se il tuo Pi (trovato nell'output di Thonny) e aggiungi la porta che hai usato (l'impostazione predefinita è 80) da qualsiasi browser Web connesso allo stesso SSID a 2,4 GHz a casa. Dovresti vedere qualcosa del genere:

Per ridurre la dipendenza del PC connesso, modificare il file prova.py archiviare in principale.py e risparmia sul tuo Raspberry Pi Pico W. Potresti anche prendere in considerazione la connessione di un LCD al tuo Pico in modo da programmare il display per emettere l'indirizzo IP (quando rimuovi la dipendenza del tuo PC collegato).

Riporta quel pollice verde

Con un sofisticato sensore del suolo e un semplice server Web ora puoi monitorare la salute della tua pianta da un browser Web ovunque nella tua casa.

Sentiti libero di modificare il codice come meglio credi. Se sei pronto, prendi in considerazione la creazione di un'app di rilevamento del suolo che aggiunga un po 'di rifinitura al semplice server web che hai appena configurato.

Per completare questo progetto, aggiungi una pompa e un relè, insieme a una lampada riscaldante, e avrai un giardino completamente automatizzato. Ora sarai in grado di mantenere per sempre il tuo status di "pollice verde".