APNT-78 - Estensione del controllo degli irrigatori in <tc>Fibaro</tc> Centro Casa

Questa guida mostra come estendere il Fibaro Le funzionalità del pannello di irrigazione di Home Center 2 consentono di regolare da remoto il periodo di irrigazione e ritardare automaticamente il ciclo di irrigazione successivo se Fibaro le previsioni meteo dicono che sta piovendo.

Nell'esempio precedente APNT-77 - Controllo degli irrigatori abbiamo introdotto il Fibaro Pannello sprinkler disponibile nel Fibaro Centro Casa 2 (HC2) Z-Wave Controllore.

Estensione del controllo del pannello di irrigazione

Il pannello Irrigatori consente di aggiungere manualmente un "Ritardo pioggia" e di aumentare/diminuire il tempo del ciclo dell'acqua dall'interno del pannello Irrigatori (vedere APNT-77 per i dettagli), tuttavia non è possibile farlo dall'attuale app per smartphone e non è possibile modificarli direttamente da una scena Home Center standard.

Creando un dispositivo virtuale, insieme a un po' di codice LUA, puoi avere il controllo di queste funzioni e puoi usare una scena standard per regolarle in base alle condizioni meteorologiche.

Questa guida ti mostra come:

  • Crea un dispositivo virtuale in Fibaro Centro Casa
  • Programmare i pulsanti per controllare le funzioni "Ritardo pioggia" e "Regolazione acqua" del pannello di irrigazione
  • Crea una scena per ritardare automaticamente il ciclo di irrigazione in caso di pioggia o temporale

Nota: Questo può essere utilizzato solo in Fibaro Home Center 2 (HC2) poiché richiede la codifica LUA e non può essere utilizzato in Fibaro Home Center Lite (HCL)


Dispositivo virtuale di irrigazione

Un Dispositivo Virtuale è esattamente ciò che sembra: un dispositivo che non è un dispositivo fisico, ma uno creato in Home Center per controllare altri dispositivi. Questo esempio mostra un Dispositivo Virtuale in grado di modificare i valori di "Ritardo Pioggia" (0, 24 ore, 48 ore) e "Regolazione Acqua" (0, 10%, 20%) del Pannello Irrigazione.

Virtual Device to control 'Rain Delay' and 'Adjust Water'Figura 1: Dispositivo virtuale per controllare 'Ritardo pioggia' e 'Regolazione acqua'

Crea il dispositivo virtuale

  • Nel Centro Home vai a Dispositivi &gran parte; Aggiungi Rimuovi Dispositivi
  • Nella sezione Dispositivo virtuale fare clic su 'Aggiungere'
  • Dai al dispositivo un Nome
  • Scegli un Camera dall'elenco a discesa
  • Indirizzo IP - Inserisci l'indirizzo IP dell'Home Center
  • Porta TCP - Entra 80 (questa è la porta utilizzata da Home Center)
  • Clicca su 'Salva' icona sulla barra laterale destra

Creating a Virtual Device for the Sprinkler PanelFigura 2: Creazione di un dispositivo virtuale per il pannello di irrigazione

Crea i pulsanti

Il dispositivo virtuale necessita di due file di tre pulsanti: la prima riga controlla il "Ritardo pioggia" e la seconda controlla il valore "Regola acqua".

  • Vai al dispositivo virtuale 'Avanzatoscheda '
  • Scorri verso il basso fino alla sezione "Scegli set di pulsanti"
  • Seleziona 'Tre pulsanti per riga'- questo ci darà tre pulsanti
  • Clicca su 'Aggiungi set' pulsante
  • Aggiungere una seconda riga di tre pulsanti (per il controllo Regola acqua)
  • Clicca su 'Salva' icona sulla barra laterale destra

Creating a Button in the Virtual DeviceFigura 3: Creazione di un pulsante nel dispositivo virtuale

Aggiungi il codice LUA

Ogni pulsante sarà controllato da un semplice script LUA che prende il valore "Ritardo pioggia" o "Regola acqua" dal pannello Irrigatori, modifica il valore e quindi aggiorna il pannello.

  • Scorri verso il basso fino al primo pulsante e assegnagli il nome: '0 ore' in questo caso (per zero ore di ritardo)
  • Seleziona 'LUA' (in fondo all'editor in basso)
  • Incolla il codice LUA (sotto) e apporta le modifiche per il tuo sistema (Indirizzo IP HC2, nome utente E password)
  • Clicca sul pulsante blu 'Salva' icona sulla barra laterale destra
  • Se lo desideri, prova il pulsante nella finestra "Debug" e controlla che il ritardo pioggia sia stato modificato nel pannello Irrigatori

Codice LUA

-- Imposta autenticazione

HC2 = Net.FHttp("192.168.1.162",80)

HC2:setBasicAuthentication("amministratore","amministratore")

fibaro:debug('Pulsante LUA attivato: ')

-- ottenere la tabella dati dal pannello Sprinklers

risposta, stato, codice di errore = HC2:GET("/api/panels/drenchers")

jsonTable = json.decode(risposta)

fibaro:debug('Valore ritardo pioggia: ' ..jsonTable.rainDelay);

-- modifica i dati in LUA per 0 ore di ritardo

jsonTable.rainDelay = 0

fibaro:debug('Nuovo valore ritardo pioggia: ' ..jsonTable.rainDelay);

-- invia la tabella aggiornata al pannello

json = json.encode(tabella json);

HC2:PUT("/api/pannelli/drenchers", json)

fibaro:log("pronto")

fibaro:debug('Pulsante LUA completato: ')

Spiegazione LUA

Il codice LUA è suddiviso in sezioni tramite righe di commento (che è possibile rimuovere); include inoltre diverse righe di debug per aiutarti a testarlo nel debugger del dispositivo virtuale.

  • La prima sezione specifica l'indirizzo IP del tuo HC2: devi aggiungere l'indirizzo IP corretto
  • Inserisci il tuo corretto nome utente E password nella seconda riga (amministratore &lificatore; amministratore in questo esempio)
  • La seconda sezione ottiene la tabella dati del pannello Sprinkler da HC2
  • IL 'rainDelay' il valore viene modificato nella terza sezione - in Zero in questo caso
  • La sezione finale invia la tabella dati al pannello Sprinkler con il nuovo valore per 'rainDelay'

Linee di debug: Le linee blu (a partire da 'fibaro:debug) sono righe di debug che visualizzano valori nella finestra di debug: puoi usarle per verificare che il codice funzioni correttamente. Puoi eliminarle una volta che il pulsante funziona.

Adding the IR Command String to the ButtonFigura 4: Codice LUA nel pulsante del dispositivo virtuale

Configura gli altri pulsanti

Ora è necessario configurare i due pulsanti rimanenti "Ritardo pioggia" e i tre pulsanti "Regola acqua", ripetendo la procedura descritta sopra.

  • 24 ore - cambia la riga rainDelay in jsonTable.rainDelay = 24
  • 48 ore - cambia la riga rainDelay in jsonTable.rainDelay = 48
  • 0% (Regola acqua) - cambia la linea rainDelay in jsonTable.adjustWater = 0
  • 10% - cambia la riga rainDelay in jsonTable.adjustWater = 10
  • 20% - cambia la riga rainDelay in jsonTable.adjustWater = 20
  • Clicca sul pulsante blu 'Salva' icona sulla barra laterale destra

Il dispositivo virtuale finale è mostrato nella Figura 5, questo ha l'icona Sprinkler anziché l'icona standard del dispositivo virtuale - vedere APNT-72 - Cambiamento Fibaro Icone del centro domesticoOra puoi apportare modifiche ai valori del pannello Sprinkler senza doverlo aprire e, cosa altrettanto importante, ora puoi modificare questi valori automaticamente da un Fibaro Scena.

Virtual Device to control 'Rain Delay' and 'Adjust Water'Figura 5: Dispositivo virtuale Sprinkler con icona aggiornata

Scena meteorologica automatizzata

Ora possiamo utilizzare il dispositivo virtuale dell'irrigatore come parte di una scena per ritardare il ciclo dell'irrigatore di 24 ore se ha piovuto.

Home Center ha un bollettino meteo integrato che scarica regolarmente da Yahoo Weather; lo utilizziamo per sapere se ha piovuto.

Virtual Device to control 'Rain Delay' and 'Adjust Water'Figura 6: Scena di ritardo dell'irrigatore basata sulle condizioni meteorologiche

  • Crea una scena - dai un'occhiata a APNT-61 - Creazione di scene in Fibaro Centro Casa
  • Scegliere 'Tempo atmosferico &gran parte; Condizioni meteorologiche dal menu a discesa del trigger
  • Aggiungi una condizione meteo per Piovere E e seconda condizione per Tempesta
  • Aggiungi una riga Dispositivo virtuale con il pulsante 'Ritardo 24 ore' selezionato - Pulsante 12 in questo esempio
  • La scena di esempio include anche una notifica push per avvisarti che HC ha ritardato il prossimo ciclo di irrigazione - Vedi APNT-76 - Notifiche Home Center

Parola finale su LUA

Questa guida illustra come creare una scena automatizzata per ritardare il ciclo dell'acqua. In alternativa, è possibile utilizzare una singola scena LUA per ottenere i valori e modificarli in base alle condizioni meteorologiche, oppure è possibile creare una scena LUA separata per controllarli in base alle condizioni meteorologiche, sostituendo la scena "a blocchi" standard utilizzata in questo esempio. Sono disponibili numerose opzioni per perfezionare il controllo all'interno di Home Center.

Riferimento

Questa nota applicativa si basa sui test effettuati da Vesternet così come molti utili post del forum da parte degli utenti del Fibaro Foro.

Informazioni correlate