Grazie allo script di Flane e qualche modifica posso autoconsumarmi l'energia che produco.
Ho a disposizione un SDM120 sulla linea del boiler, quindi ho modificato lo script di Flane per utilizzare il consumo con il contatore invece di utilizzare quello software, che non ho provato.
La prima modifica riguarda l'inizio e la fine del processo, ho utilizzato la funzione "date_sun_info" per avviare ed interrompere il processo (in pratica come fa 123solar). Posso così utilizzate lo script come servizio, lasciandolo sempre attivo.
Codice: Seleziona tutto
/* Data attuale */
$nowUTC = strtotime(date('Ymd H:i'));
/**
* Ricavo informazioni giornata solare
* sunrise: Alba
* sunset: Tramonto
* transit: Zenith
* civil_twilight_begin: Inizio crepuscolo civile
* civil_twilight_end: Fine crepuscolo civile
* nautical_twilight_begin: Inizio crepuscolo nautico
* nautical_twilight_end: Fine crepuscolo nautico
* astronomical_twilight_begin: Inizio crepuscolo astronomico
* astronomical_twilight_end: Fine crepuscolo astronomico
*/
$sun_info = date_sun_info((strtotime(date('Ymd'))), LATITUDE, LONGITUDE);
Ho inserito anche la gestione della terminazione processo con "pkill" utilizzando (con kill -9 non funziona):
Codice: Seleziona tutto
/* Task monitor signal event */
declare(ticks = 1);
/* Catch Fatal Error */
register_shutdown_function('fatalErrorShutdown');
/* Catch Ctrl+C, kill and SIGTERM */
pcntl_signal(SIGTERM, 'sigintShutdown');
pcntl_signal(SIGINT, 'sigintShutdown');
Come ultima cosa ho inserito il log eventi del boiler direttamente nel file di MeterN "events.txt".
A prima vista sembra funzionate tutto. Ogni tanto però ho dei prelievi dalla rete (visualizzati dal gauge principale, il conteggio nel "Cruscotto" non riporta nessun consumo), solo alcuni secondi, il tempo necessario afficnhè lo script ricalcoli il nuovo setpoint.
La connessione di tutto (schema da wiki di Flane):

Analizzando la cosa, i prelievi dalla rete sono dovuti ad una non perfetta misura sul contatore dei consumi, che risulta essere "ballerino", immagino dovuto al fatto che il tempo acceso/spento del boiler ha comunque una frequenza lenta (5Hz - 0.2 sec).
Qualcuno ha notato questo tipo di prelievo, oppure sono io che sbaglio qualcosa ?
Ho voluto fare un ulteriore prova apportato una modifica alla lettura dei consumi: facendo una media. Cerco così di stabilizzare la lettura. In questo modo la risposta sarà più lenta, ma prevedo di migliorare la cosa.
debugasm