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
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.
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:
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
Il programma è strutturato in 3 layer:
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
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.
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
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
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
📂 MyHEM ├── 📄 index.html ├── 📄 meter.html ├── 📄 synoptic.html ├── 📁 config <-- cartella per dati di configurazione │ ├── 📄 .htaccess │ ├── 📄 .htpasswd │ ├── 📄 admin.php <-- programma per la gestione del file config.php │ ├── 📄 config.php <-- contiene i dati di configurazione │ ├── 📄 login.php <-- programma per entrare in admin │ └── 📄 logout.php <-- programma per uscita da admin senza lasciare tracce ├── 📁 dati <-- La tua cartella dedicata │ ├── 📄 dati1.txt <-- Il file di testo con i valori live │ ├── 📄 dati2.txt <-- Il file di testo con i valori live │ └── 📄 dati_.txt <-- Il file di testo con i valori live ├── 📁 images <-- Cartella con le immagini │ └── 📄 logo.png <-- Il file con il logo del sito ├── 📁 js <-- Cartella con i programmi e funzioni │ ├── 📄 .htaccess <-- pulisce la cache per js/css │ ├── 📄 function.js <-- contiene le funzioni per lanciare i programm-legge i dati_.txt-scrive il dato nei meter/batterie │ └── 📄 synoptic.js <-- gestisce i dati per il sinottico ├── 📁 meters <-- cartella dei meter disponibili │ ├── 📄 meter-component.js │ ├── 📄 meter-component2.js │ ├── 📄 Vbatterymeter.js │ └── 📄 Vbatterymeter3.js ├── 📁 program <-- cartella dei programmi di lettura dati │ ├── 📄 read_batteri.php <-- legge i dati da solax per la batteria │ ├── 📄 read_consumption.php <-- legge lo schelly dei consumi │ ├── 📄 read_export.php <-- legge i dati dallo shelly per l'esportato (non usato) │ ├── 📄 read_import_export.php <-- legge i dati dallo shelly per l'importato e esportato │ └── 📄 read_import.php <-- legge i dati dallo shelly per l'importato (non usato) ├── 📁 read.me <-- File con spiegazioni │ ├── 📄 configurazione.md <-- lista variabili di sistema │ ├── 📄 note.md <-- funzionamento nodi e linee fi flusso │ └── 📄 struttura.md <-- Questi file └── 📁 styles <-- cartella degli stili ├── 📄 style.css └── 📄 synoptic.css