Questa è una vecchia versione del documento!
My House Energy Meter
1. Installazione
L'installazione del software è molto semplice, basta copiare la directory MyHEM sulla radice del vostro web server
Attenzione verificare che non ci sia un file “index” sulla directory principale del web server, se c'è serve capire se eliminabile o se si deve integrare in qualche modo
- Portarsi sulla directory www del web server
- scaricare il file MyHEM.zip
- scompattare il file
- lanciare il programma di installazione
cd /var/www sudo bash ./Install.sh
Attenzione a maiuscole e minuscole
Si avvia l'installazione automatica che vi guida in tutti i passi necessari
A questo punto il software è installato e funzionante, per avviare il menu basta digitare su un browser qualsiasi l'indirizzo del webserver o l'IP pubblico seguito da “/MyHEM” per aprire il menu.
2. Configurazione
Per la configurazione andare sul menu servizi > configurazione
Si aprirà il file di configurazione dove si trovano tutte le variabili modificabili, il file è strutturato in sezioni successive dedicate a varie funzioni:
- variabili del sito, logo, tempi di refresh
- impostazione dei meter
- Dati meter = variabile da leggere per ottenere il dato
- Fondo scala = il massimo valore da visualizzare sul meter
- Menu impostazione dei menu
- Nome voce = testo che apparirà sul menu
- Link URL = azione che deve compiere al click del menu
- Icona = nome file dell'icona da usare sulla voce del menu
- Mostra questa voce del menu = se la casella è spuntata il menu sarà visibile altrimenti viene nascosto
In fondo alla lista delle variabili c'è il pulsante per salvare le modifiche, sotto il titolo principale, in alto, apparirà una scritta con l'esito del salvataggio
3. Struttura del programma
Il programma è strutturato in 3 layer:
- Primo layer: Front-end, la parete grafica lato utente che visualizza i dati
- Secondo layer: strato intermedio che riceve le chiamate dal front-end attiva i programmi di lettura dati, li elabora e li espone nel front-end
- Terzo layer: strato operativo, qui ci sono tutti i programmi che si occupano di interfacciarsi con i dispositivi per leggere i dati e passarli allo strato superiore per la loro elaborazione
4. Funzionamento
Il funzionamento, di per se, è abbastanza semplice, il front-end ad intervalli regolari chiama le funzioni per aggiornare l'interfaccia, la funzione, una volta attivata richiama il relativo programma di lettura dati, quandop il programma restituisce il dato la funzione lo elabora e aggiorna il front-end
Meter
Il programma viene rilasciato per lavorare in abbinata a meterN sfruttandone i dati, più precisamente usa i file creati sul il file system in RAM /dev/shm, più precisamente legge i file LIVEMEMORY.json e lLIVEMEMORY.json.
In questo modo il programma non usa in nessun modo la SD in quanto non scrive niente sul FS
Il programma è già predisposto anche per interagire con i dispositivi Shelly ma necessita di alcune modifiche manuali sul software del secondo layer per richiamare i programmi di lettura corretti.
le variabili di configurazione rimangono invece le stesse in quanto gestiranno autonomamente o il dato da leggere o l'indirizzo IP da contattare.
Sinottico/schema
Qui la situazione è un po più complicata, la presenza dell'accumulo fa si che ogni sistema abbia le sue API da richiamare e quindi il programma di interfacciamento con l'inverter deve essere sviluppato ad hoc per il proprio impianto
Variabili
Le variabili da inserire sul file di configurazione le trovate all'interno dei due files LIVEMEMORY.json e lLIVEMEMORY.json come detto in precedenza, per trovarle procedere come segue:
Connettersi al sistema (Raspberry) usando FileZilla con utente “root” navigare finbo a /dev/shm e li troverete i files, potrebbero essercene altri, dipende da come è configurato mN.
Con mN in funzione che legge dati, selezionate i files e scaricateli in locale in una directory sicura tipo “Download”, aprite i due files con un edito di testo (tipo blocco note) meglio se usate Notepad++
Ilcontenuto sarà qualcosa di simile a:
LIVEMEMORY.json [mettere contenuto]
lLIVEMEMORYjson (elle minuscola iniziale) [mettere contenuto]
le variabili tra parentesi quadre sono le variabili da inserire sul file di configurazione es. [mettere contenuto] , ovviamente dovete sapere a cosa si riferiscono, il valoire che sta dopo, che è il valore letto vi auterà a capire a cosaa si riferiscono
Icone
le icone e le immagini da usare come logo e sui menu, sono contenute sulla directory “/images” del webserver dove si può vedere la corrispondenza immagine/nome file.
Se volete aggiungere altre immagini dovete inserirle in questa directory
5. Struttura del WEB Server
MyHEM
├── index.html
├── meter.html
├── synoptic.html
├── config/ <;– cartella per dati di configurazione
├── dati/ <;– La tua cartella dedicata
├── images/ <;– Cartella con le immagini
├── js/ <;– Cartella con i programmi e funzioni
├── meters/ <;– cartella dei meter disponibili
├── program/ <;– cartella dei programmi di lettura dati
├── read.me/ <;– File con spiegazioni
└── styles/ <;– cartella degli stili
└── style.css
└── synoptic.css