Sommario:
- Forniture
- Passaggio 1: configurazione del Raspberry Pi
- Passaggio 2: costruzione del circuito
- Passaggio 3: costruire il caso
- Passaggio 4: il codice
- Passaggio 5: configurazione del database
- Passaggio 6: guarda crescere quelle piante
Video: Plant'm: 6 passaggi (con immagini)
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:01
Come la maggior parte, adoro avere piante in casa. Sfortunatamente, finiscono quasi sempre per morire entro un paio di settimane. Così, quando alla fine del mio primo anno da studente all'MCT di Howest mi è stato chiesto di creare un progetto che mostrasse tutto ciò che avevo imparato fino a quel momento, volevo realizzare qualcosa che riducesse il numero di piante morte in casa. E così è nato Plant'm.
Ho guardato indietro alle mie piante precedenti e ho cercato di pensare alle varie ragioni per cui non sono sopravvissute. Principalmente questo è stato perché ho dimenticato di annaffiarli, li ho innaffiati troppo o non ho mai permesso loro di vedere la luce del giorno. È qui che interviene Plant'm e si prende cura di queste cose per te.
Forniture
Elettronica:
- Raspberry pi 4 + breakout GPIO
- Scheda SD 16 GB o più
- Sensore di livello del liquido
- LM35
- Sensore di umidità del suolo
- LDR
- Transistor (BC337)
- Pompa dell'acqua
- Striscia LED
- Tagliere + alimentatore
- display LCD
- Molti cavi jumper sia maschio-maschio che femmina-maschio
Materiali
- Vecchie casse di vino
- Vecchia lampada da tavolo
- Viti e bulloni
- cerniere
- Unghia
- Colla e nastro adesivo
Passaggio 1: configurazione del Raspberry Pi
Puoi scaricare l'immagine richiesta per il Pi qui. Di solito scelgo la versione senza desktop poiché mi collego al Pi solo tramite PuTTY. Dopo aver scritto l'immagine sulla scheda SD, dovrai modificare e aggiungere alcuni file. Nel file "cmdline.txt" (non aprire questo file nel blocco note, aprilo in Notepad++ o qualsiasi altro IDE) dovrai aggiungere "ip=169.254.10.1" alla fine. Questo assicurerà che tu possa connetterti al nostro dispositivo tramite ethernet (assicurati di non aggiungere alcun INVIO alla fine del tuo file o avrai problemi).
Ora puoi inserire la scheda SD, collegare il Pi al computer tramite Ethernet e avviare il Pi. Potrebbe volerci un po' di tempo prima che il Pi si avvii per la prima volta. Una volta effettuato il login potrai quindi con l'utente predefinito "pi" con la sua password "raspberry". Puoi sempre cambiarlo in seguito.
Per prima cosa dovrai modificare alcune configurazioni. Usa "sudo raspi-config" per aprire il menu di configurazione e qui andremo a Opzioni di interfaccia. Qui sotto attiveremo la seguente opzione su SPI.
Ora puoi configurare una connessione wireless come spiegato qui. Ora che abbiamo una connessione Internet possiamo scaricare alcuni pacchetti nel seguente ordine:
- "sudo apt update && apt upgrade -y" Questo otterrà gli ultimi aggiornamenti per il Pi.
- "sudo apt install mariadb-server apache2" Questi eseguiranno rispettivamente il server web e il database.
- "sudo pip3 install Flask Flask-Cors Flask-SocketIO gevent gevent-websocket greenlet spi SPI-Pyspidev" Questi sono alcuni pacchetti Python necessari per eseguire il backend per questo progetto.
- E infine "sudo apt install python3-mysql.connector -y" per connettersi al database
Successivamente creeremo un utente del database. Usa "sudo mysql -u root" per accedere al tuo server MySQL, qui creeremo un utente chiamato db_admin con la sua rispettiva password, mantieni questa password annotata da qualche parte per dopo nelle istruzioni. CONCEDI TUTTI I PRIVILEGI SU *.* A "db_admin "@"%" IDENTIFICATO DA "yourPasswordHere" CON L'OPZIONE DI CONCESSIONE. Ora puoi visitare il server web sull'indirizzo IP che abbiamo aggiunto prima.
Passaggio 2: costruzione del circuito
Per creare il circuito puoi seguire usando la vista schematica e breadboard aggiunta con le altre immagini.
Passaggio 3: costruire il caso
Questa cassa è composta da 4 vecchie casse di vino, 3 delle quali sono state rotte. Ho praticato alcuni fori nel case principale per collegare il display, la lampada, il cavo di prolunga e il sensore di temperatura.
Usando alcune cerniere, ho fissato 2 coperchi. Uno per dare accesso al serbatoio dell'acqua. Nell'altro, ho ritagliato un foro per far crescere la mia pianta e altri 2 fori per il passaggio del sensore di luce. Ha anche un ritaglio per la lampada.
Per mantenere l'elettronica separata dall'acqua, costruisco un secondo livello su cui appoggiare il serbatoio dell'acqua utilizzando un'altra tavola e 4 viti e bulloni. Ho praticato dei fori extra in questo per il cablaggio e per dare un po' più di spazio per far passare la lampada.
Come base per la lampada ho utilizzato una vecchia lampada da scrivania che non funzionava più. Ho rimosso tutte le parti interne in quanto non servivano più. Ho quindi incollato la striscia led e collegato i 2 tubi metallici con dei tubi in PVC e abbondante colla.
Passaggio 4: il codice
Puoi trovare il codice qui. Basta scaricarlo.
Ora sul posizionamento dei file. Copia tutti i file all'interno della cartella "Code/Frontend" in "/var/www/html" sul Pi. Questi sono i file per il sito web. Molto probabilmente ci sarà già un file chiamato "index.html" in questa cartella, puoi semplicemente eliminarlo. I file nella cartella "Backend" possono essere inseriti in una nuova cartella nella directory "home/pi". Dovrai utilizzare le tue password e nomi utente in "config.py".
Affinché si avvii una volta collegato, dovremo renderlo un servizio. Puoi imparare come impostare i servizi qui. Dovrai creare un file nella cartella "/etc/systemd/system". In questo file copia e incolla quanto segue:
[Unità]
Description=Impianto
Dopo=rete.obiettivo
[Servizio]
ExecStart=/usr/bin/python3 -u app.py
Directorydilavoro=/home/ine/project1
StandardOutput=eredita
StandardError=eredita
Riavvia=sempre
Utente=ine
[Installare]
WantedBy=multi-user.target
Dovrai modificare WorkingDirectory nella posizione in cui salvi i file di backend e l'utente con il tuo nome utente. Dopo averlo fatto, usa "sudo systemctl start myscript.service" per verificare se il servizio funziona. Se digita "sudo systemctl enable myscript.service" per avviarlo automaticamente al riavvio.
Passaggio 5: configurazione del database
Per questo, utilizzeremo MySQL Workbench. Iniziando creerai una nuova connessione al pi. Puoi vedere le mie impostazioni nello screenshot incluso. Non dimenticare di utilizzare il tuo nome utente e password. Quando hai compilato le impostazioni, premi "Prova connessione" per assicurarti che funzioni.
Una volta stabilita la connessione, vai avanti e connettiti. Ora useremo il file nella cartella "Database-export". Apri il file SQL ed eseguilo. Questo creerà il database e tutte le sue tabelle. Ho anche aggiunto in alcuni dati di test da visualizzare sul sito.
Passaggio 6: guarda crescere quelle piante
Fatto tutto, ora abbiamo un progetto funzionante che si prenderà cura delle nostre piante.
Se riscontri problemi, hai una domanda o un suggerimento, non esitare a lasciare un commento. Cercherò di ricontattarti il prima possibile.
Consigliato:
Smart Indoor Plant Monitor - Scopri quando la tua pianta ha bisogno di annaffiare: 8 passaggi (con immagini)
Smart Indoor Plant Monitor - Scopri quando la tua pianta ha bisogno di annaffiare: un paio di mesi fa, ho realizzato un bastoncino per il monitoraggio dell'umidità del suolo che è alimentato a batteria e può essere inserito nel terreno nel vaso della tua pianta da interno per darti alcune informazioni utili sul terreno livello di umidità e LED lampeggianti per dirti quando wa
Come installare Raspberry PI 4 Headless (VNC) con Rpi-imager e immagini: 7 passaggi (con immagini)
Howto: installazione di Raspberry PI 4 Headless (VNC) con Rpi-imager e immagini: ho intenzione di utilizzare questo Rapsberry PI in una serie di progetti divertenti nel mio blog. Sentiti libero di dare un'occhiata. Volevo tornare a usare il mio Raspberry PI ma non avevo una tastiera o un mouse nella mia nuova posizione. Era un po' che non installavo un Raspberry
Telecomando wireless con modulo NRF24L01 da 2,4 Ghz con Arduino - Nrf24l01 Ricevitore trasmettitore 4 canali / 6 canali per quadricottero - Elicottero Rc - Aereo RC con Arduino: 5 passaggi (con immagini)
Telecomando wireless con modulo NRF24L01 da 2,4 Ghz con Arduino | Nrf24l01 Ricevitore trasmettitore 4 canali / 6 canali per quadricottero | Elicottero Rc | Aereo radiocomandato con Arduino: per far funzionare un'auto radiocomandata | Quadricottero | Drone | Aereo RC | Barca RC, abbiamo sempre bisogno di un ricevitore e trasmettitore, supponiamo che per RC QUADCOPTER abbiamo bisogno di un trasmettitore e ricevitore a 6 canali e quel tipo di TX e RX è troppo costoso, quindi ne faremo uno sul nostro
Come smontare un computer con semplici passaggi e immagini: 13 passaggi (con immagini)
Come smontare un computer con semplici passaggi e immagini: questa è un'istruzione su come smontare un PC. La maggior parte dei componenti di base sono modulari e facilmente smontabili. Tuttavia è importante che tu sia organizzato al riguardo. Questo ti aiuterà a non perdere parti e anche a rendere più facile il rimontaggio
Plant Monitor: 12 passaggi (con immagini)
Plant Monitor: lo scopo del monitor dell'impianto è di scansionare e somministrare l'acqua, se necessario, a una pianta collegata al sensore analogico del suolo fornito. Le parti necessarie per questo progetto sono: 1 x Arduino Uno 1 x schermo LCD 1 x servomotore 1 x unità sensore del suolo 1 x potenziometro 1 x medico 30c