Sommario:
- Passaggio 1: componenti:
- Fase 2: SENSORE DI BASE: Umidità del suolo FC 28
- Passaggio 3: comprensione di MQTT: per la pubblicazione remota dei dati
- Passaggio 4: MQTT: configurazione dell'account broker MQTT
- Passaggio 5: MQTT: creazione di un'istanza
- Passaggio 6: MQTT: informazioni sull'istanza
- Passaggio 7: MQTT: aggiunta dell'utente
- Passaggio 8: MQTT: assegnazione della regola ACL
- Passaggio 9: Nodemcu: configurazione
- Passaggio 10: Nodemcu: caricamento degli script Lua su Nodemcu con ESPlorer_1
- Passaggio 11: Nodemcu: caricamento degli script Lua su Nodemcu con ESPlorer_II
- Passaggio 12: Nodemcu: caricamento degli script Lua su Nodemcu con ESPlorer_III
- Passaggio 13: Nodemcu: configurazione di Arduino per parlare con Nodemcu
- Passaggio 14: Nodemcu: configurazione del client MQTT in Android
- Passaggio 15: passaggi aggiuntivi: lavorare con Nokia LCD 5110
- Passaggio 16: l'assemblaggio finale
Video: CONTROLLA IL TUO GIARDINO: 16 passaggi (con immagini)
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:04
Monitora il tuo giardino da qualsiasi luogo, usa il display locale per monitorare le condizioni del suolo localmente o usa Mobile per monitorare da remoto. Il circuito utilizza un sensore di umidità del suolo, abbinato a temperatura e umidità per informare sulle condizioni ambientali del suolo.
Passaggio 1: componenti:
- Arduino uno
- Nodemcu
- Sensore di temperatura e umidità DHT 11
- Sensore di umidità del suolo - FC28
- Banco batterie da 10000 mAh (per l'alimentazione di arduino e nodemcu)
- LCD 5110. Nokia
- Resistore (5 x 10 k, 1 x 330 ohm)
- Potenziometro Tipo rotante (per regolare la luminosità LCD) 0-100K
- Ponticelli
- tagliere
Fase 2: SENSORE DI BASE: Umidità del suolo FC 28
Per misurare l'umidità, utilizziamo il sensore di umidità del suolo FC 28, il cui principio di base è il seguente: -
Le specifiche del sensore di umidità del suolo FC-28 sono le seguenti: Tensione di ingresso: 3,3 – 5 V
Tensione di uscita: 0 – 4.2V
Corrente di ingresso: 35 mA
Segnale di uscita: sia analogico che digitale
Il sensore di umidità del suolo FC-28 ha quattro pin: VCC: Power
A0: Uscita analogica
D0: uscita digitale
GND: Terra
Modalità analogicaPer collegare il sensore in modalità analogica, sarà necessario utilizzare l'uscita analogica del sensore. Quando si prende l'uscita analogica dal sensore di umidità del suolo FC-28, il sensore ci fornisce un valore da 0 a 1023. L'umidità viene misurata in percentuale, quindi mapperemo questi valori da 0 a 100 e poi mostreremo questi valori su il monitor seriale È possibile impostare diversi intervalli dei valori di umidità e accendere o spegnere la pompa dell'acqua in base ad esso.
Il Modulo contiene anche un potenziometro che imposterà il valore di soglia. Questo valore di soglia sarà confrontato dal comparatore LM393. Il LED di uscita si accenderà e si abbasserà in base a questo valore di soglia.
Il codice per l'interfacciamento con il sensore di umidità del suolo viene ripreso in ulteriori passaggi
Passaggio 3: comprensione di MQTT: per la pubblicazione remota dei dati
Prima di iniziare ulteriormente, esaminiamo prima la pubblicazione dei dati remota per IOT
MQTT sta per MQ Telemetry Transport. È un protocollo di messaggistica di pubblicazione/sottoscrizione, estremamente semplice e leggero, progettato per dispositivi vincolati e reti a bassa larghezza di banda, alta latenza o inaffidabili. I principi di progettazione consistono nel ridurre al minimo la larghezza di banda della rete e i requisiti delle risorse del dispositivo, cercando anche di garantire l'affidabilità e un certo grado di garanzia di consegna. Questi principi si rivelano anche per rendere il protocollo ideale per l'emergente mondo "machine-to-machine" (M2M) o "Internet of Things" dei dispositivi connessi e per le applicazioni mobili in cui la larghezza di banda e la potenza della batteria sono un vantaggio.
Fonte:
MQTT[1] (MQ Telemetry Transport o Message Queuing Telemetry Transport) è uno standard ISO (ISO/IEC PRF 20922)[2] protocollo di messaggistica basato su pubblicazione-sottoscrizione. Funziona con il protocollo TCP/IP. È progettato per connessioni con postazioni remote in cui è richiesta una "impronta di codice ridotta" o la larghezza di banda della rete è limitata.
Fonte:
Passaggio 4: MQTT: configurazione dell'account broker MQTT
Esistono vari account broker MQTT, per questo tutorial ho usato cloudmqtt (https://www.cloudmqtt.com/)
CloudMQTT sono server Mosquitto gestiti nel cloud. Mosquitto implementa il protocollo MQ Telemetry Transport, MQTT, che fornisce metodi leggeri per eseguire la messaggistica utilizzando un modello di accodamento dei messaggi di pubblicazione/sottoscrizione.
È necessario eseguire i seguenti passaggi per configurare l'account cloudmqtt come broker
- Crea un account e accedi al pannello di controllo
- premi Crea+ per creare una nuova istanza
- Per iniziare dobbiamo iscriverci a un piano cliente, possiamo provare CloudMQTT gratuitamente con il piano CuteCat.
- Dopo aver creato "istanza", il passaggio successivo consiste nel creare l'utente e assegnare ulteriormente l'autorizzazione all'utente per l'accesso ai messaggi (tramite le regole ACL)
La guida completa per configurare l'account broker MQTT in cloudmqtt è accessibile seguendo il link: -
Tutti i passaggi precedenti vengono inseriti uno per uno nelle diapositive seguenti
Passaggio 5: MQTT: creazione di un'istanza
Ho creato un'istanza con il nome "myIOT"
piano: piano carino
Passaggio 6: MQTT: informazioni sull'istanza
L'istanza viene fornita immediatamente dopo la registrazione ed è possibile visualizzare i dettagli dell'istanza, come le informazioni sulla connessione, nella pagina dei dettagli. Da lì puoi anche raggiungere l'interfaccia di gestione. A volte è necessario utilizzare un URL di connessione specifica
Passaggio 7: MQTT: aggiunta dell'utente
Crea un utente con il nome "nodemcu_12" e fornisci una password
Passaggio 8: MQTT: assegnazione della regola ACL
Dopo la creazione del nuovo utente (nodemcu_12), salvare il nuovo utente, ora deve essere fornito un ulteriore ACL al nuovo utente. Nella foto allegata, si può vedere che ho fornito sia l'accesso in lettura che in scrittura all'utente.
Nota: l'argomento deve essere aggiunto come mostrato nel formato (questo è ulteriormente richiesto per leggere e scrivere dal nodo al client MQTT)
Passaggio 9: Nodemcu: configurazione
In questo particolare progetto, ho usato nodemcu di Knewron Technologies, maggiori informazioni possono essere ottenute seguendo il link: -(https://www.dropbox.com/s/73qbh1jfdgkauii/smartWiFi%20Development%20Module%20-%20User% 20Guida.pdf?dl=0)
Si può notare che NodeMCU è un firmware basato su eLua per il SOC WiFi ESP8266 di Espressif. Nodemcu di Knowron è precaricato con il firmware, quindi dobbiamo solo caricare il software dell'app e cioè: -
- init.lua
- setup.lua
- config.lua
- app.lua
Tutti gli script lua di cui sopra possono essere scaricati da Github seguendo il link: Scarica da Github
Dagli script lua sopra, modificare gli script config.lua con nome host MQTT, password, ssid wifi ecc.
Per scaricare gli script di cui sopra su nodemcu, dobbiamo utilizzare strumenti come "ESPlorer", fare riferimento ai documenti per ulteriori informazioni:
Il lavoro con ESPlorer è descritto nel passaggio successivo
Passaggio 10: Nodemcu: caricamento degli script Lua su Nodemcu con ESPlorer_1
- Fare clic sul pulsante Aggiorna
- Seleziona la porta COM (comunicazione) e il baud rate (usato comunemente 9600)
- Fare clic su Apri
Passaggio 11: Nodemcu: caricamento degli script Lua su Nodemcu con ESPlorer_II
Passaggio 12: Nodemcu: caricamento degli script Lua su Nodemcu con ESPlorer_III
Il pulsante Salva e compila invierebbe tutti e quattro gli script lua a nodemcu, dopo che questo nodemcu è pronto per parlare con il nostro arduino.
Raccolta delle informazioni sull'ID CHIP:
Ogni nodemcu ha un ID chip (probabilmente un numero), questo ID chip è inoltre necessario per pubblicare il messaggio sul broker MQTT, per conoscere l'ID del chip fare clic sul pulsante ID chip in "ESPlorer"
Passaggio 13: Nodemcu: configurazione di Arduino per parlare con Nodemcu
Il codice indicato di seguito determina l'umidità del suolo, la temperatura e l'umidità e visualizza ulteriormente i dati su Nokia LCD 5110 e in serie.
Codice Arduino
Quindi collegare Arduino RX ---Nodemcu TX
Arduino TX ---Nodemcu RX
Il codice sopra include anche i modi per utilizzare la libreria softserial, con la quale i pin DO possono anche essere usati per funzionare come pin seriali, ho usato i pin RX/TX per collegarmi alla porta seriale di nodemcu.
Attenzione: poiché nodemcu funziona con 3,3 V, si consiglia di utilizzare il cambio di livello, tuttavia mi sono collegato direttamente senza alcun cambio di livello e le prestazioni sembrano giuste per l'applicazione di cui sopra.
Passaggio 14: Nodemcu: configurazione del client MQTT in Android
Il passaggio finale per visualizzare le informazioni sul cellulare con il client Android: -
Ci sono una varietà di applicazioni Android MQTT, ho usato quella di Google Play con il seguente link:
.https://play.google.com/store/apps/details?
La configurazione per l'app Android è abbastanza semplice e si deve configurare quanto segue
- Indirizzo host MQTT insieme al numero di porta
- Nome utente e indirizzo MQTT
- Indirizzo del nodo del broker MQTT
Dopo aver aggiunto i dettagli sopra, connettere l'applicazione, se l'applicazione è connessa al broker MQTT, tutti i dati di stato degli ingressi/comunicazione seriale da arduino vengono visualizzati come log.
Passaggio 15: passaggi aggiuntivi: lavorare con Nokia LCD 5110
Di seguito sono riportate le configurazioni dei pin per LCD 5110
1) RST – Reimposta
2) CE – Abilitazione chip
3) D/C – Selezione dati/comando
4) DIN – Ingresso seriale
5) CLK – Ingresso orologio
6) VCC – 3.3V
7) LUCE – Controllo della retroilluminazione
8) GND – Terra
Come mostrato sopra, collega arduino a LCD 5110 nell'ordine sopra con una resistenza da 1-10 K in mezzo.
Di seguito sono riportate le connessioni pin to pin per LCD 5110 su Arduino uno
- CLK - Arduino Digital pin 3
- DIN - Arduino Pin digitale 4
- D/C - Arduino Digitale pin 5
- RST - Arduino Digital pin 6
- CE - Arduino Digitale pin 7
È possibile utilizzare un ulteriore pin "BL" dell'LCD 5110 insieme al potenziometro (0-100K) per controllare la luminosità dell'LCD
La libreria utilizzata per il codice sopra è: - Scarica il PCD8544 dal link sotto indicato
L'integrazione di DHT11, sensore di temperatura e umidità con arduino può essere esaminata dal seguente link DHT11.
Passaggio 16: l'assemblaggio finale
L'ultimo passo è assemblare tutto quanto sopra in una scatola preferibilmente, per l'alimentazione ho usato un powerbank da 10000 mAh per alimentare sia Arduino che Nodemcu.
Possiamo anche utilizzare il caricatore della presa a muro per una lunga durata, se lo desideri.
Consigliato:
Controlla il tuo computer con la testa!: 6 passaggi (con immagini)
Controlla il tuo computer con la tua testa!: Ciao, ho creato un sistema che ti permette di controllare il mouse del tuo computer semplicemente muovendo la testa. Se ti piace il mio progetto, non esitare a votarmi all'Arduino Contest 2017.;) Perché ho fatto questo?Volevo realizzare un oggetto che rendesse i videogiochi m
Controlla il tuo cancello scorrevole automatico con Home Assistant ed ESPHome: 5 passaggi (con immagini)
Controlla il tuo cancello scorrevole automatico con Home Assistant ed ESPHome: Il seguente articolo è un feedback sulla mia esperienza personale nel controllo del cancello scorrevole automatico che avevo installato a casa mia. Questo cancello, marchiato "V2 Alfariss", era dotato di alcuni telecomandi Phox V2 per controllarlo. Ho anche
Controlla il layout del tuo modello di treno con il tuo cellulare!: 11 passaggi (con immagini)
Controlla il layout del tuo modello di treno con il tuo telefono cellulare!: Il controllo di un layout di modello di treno con un acceleratore cablato e controller di affluenza potrebbe essere un buon inizio per i principianti, ma pongono un problema di non portabilità. Inoltre, i controller wireless disponibili sul mercato possono controllare solo alcune locomotive
Controlla il tuo computer con il tuo iPod Touch o Iphone: 4 passaggi
Controlla il tuo computer con il tuo Ipod Touch o Iphone: questo è il mio primo istruibile quindi mi dispiace se non è il migliore. Non hai mai desiderato sederti sul divano o sul letto e controllare i tuoi dispositivi Mac o Windows nel modo più semplice. Questo tutorial ti insegnerà come controllare completamente il tuo computer con il tuo Ipo
Controlla il tuo iPhone o iPod Touch con il tuo computer: 4 passaggi
Controlla il tuo iPhone o iPod Touch con il tuo computer: questo Instructable ti insegnerà come usare veency, un programma disponibile da Cydia, che ti permetterà di controllare il tuo iPhone o iPod tramite VNC sul tuo computer. Ciò richiede di avere: - un iPhone o iPod touch jailbroken con Cydia, un computer