CONFIGURAZIONE INDICATORI

Discussioni relative al software di monitoraggio energetico METERN
Avatar utente
maxsemp
Messaggi: 85
Iscritto il: 13/04/2018, 11:44

CONFIGURAZIONE INDICATORI

Messaggioda maxsemp » 29/05/2018, 13:44

Salve a tutti.
Ho appena installato un contatore Eastron SDM120 Modbus nel mio impianto FTV off-grid, per monitorare i soli consumi di casa. Ho seguito passo passo la guida ed i vostri suggerimenti nel forum, per configurare metern e collegato il contatore al raspo PI3 con SolarJessie 2.6. Metern è versione 0.8.3. Sembra funzionare tutto, tranne che la visualizzazione del cosfi dell'impianto negli indicatori (vedi immagini allegate). Cosa può essere?

Immagine

Immagine

Grazie mille per le eventuali risposte.
Buon sole a tutti. :D


Avatar utente
Flane
Messaggi: 2463
Iscritto il: 16/01/2016, 15:02

Re: CONFIGURAZIONE INDICATORI

Messaggioda Flane » 29/05/2018, 21:00

reqsdm è fatto per una configurazione standard come da guida e cioè:

Codice: Seleziona tutto

1 Produzione
2 Consumi
3 Prelievi
4 Immissioni
5 Autoconsumo.

Se come nel tuo caso hai

Codice: Seleziona tutto

1 Consumi

devi editare reqsdm e correggere i comandi da così:

Codice: Seleziona tutto

      } elseif ($argv[1] == 'tensione') {
         $outstr =  exec('cat /dev/shm/metern2.txt | egrep "^2_1\(" | grep "*V)"');
      } elseif ($argv[1] == 'corrente') {
         $outstr =  exec('cat /dev/shm/metern2.txt | egrep "^2_2\(" | grep "*A)"');
      } elseif ($argv[1] == 'freq') {
         $outstr =  exec('cat /dev/shm/metern2.txt | egrep "^2_3\(" | grep "*Hz)"');
      } elseif ($argv[1] == 'cospi') {
         $outstr =  exec('cat /dev/shm/metern2.txt | egrep "^2_4\(" | grep "*F)"');

a così

Codice: Seleziona tutto

       } elseif ($argv[1] == 'tensione') {
         $outstr =  exec('cat /dev/shm/metern1.txt | egrep "^1_1\(" | grep "*V)"');
      } elseif ($argv[1] == 'corrente') {
         $outstr =  exec('cat /dev/shm/metern2.txt | egrep "^1_2\(" | grep "*A)"');
      } elseif ($argv[1] == 'freq') {
         $outstr =  exec('cat /dev/shm/metern2.txt | egrep "^1_3\(" | grep "*Hz)"');
      } elseif ($argv[1] == 'cospi') {
         $outstr =  exec('cat /dev/shm/metern2.txt | egrep "^1_4\(" | grep "*F)"');


e poi perchè per cospi hai messo 1_6 ???

Avatar utente
maxsemp
Messaggi: 85
Iscritto il: 13/04/2018, 11:44

Re: CONFIGURAZIONE INDICATORI

Messaggioda maxsemp » 30/05/2018, 11:39

Grazie Flane.
Ora è tutto a posto e funzionante. C'era un errore di scrittura nel file reqsdm.php.
Se volessi aggiungere altri indicatori, tipo potenza apparente o potenza reattiva, come devo nominare questi parametri nella configurazione di metern e nel file di cui sopra?
Mi spiego meglio, esistono nomi ed unità di misura precisi da rispettare.
Grazie e saluti. :D
Immagine

miki8989
Messaggi: 299
Iscritto il: 22/01/2016, 6:39

Re: CONFIGURAZIONE INDICATORI

Messaggioda miki8989 » 30/05/2018, 14:05

ciao
per le utenze domestiche il valore dell'energia reattiva è di poco conto, basta il cosfi...

non mi sembra che sdm120c di Gianfranco consenta di leggere i Kvar ma monitor di Garluk lo consente
leggiti questo post http://www.flanesi.it/forum/viewtopic.php?f=4&t=2039

ciao

Avatar utente
Flane
Messaggi: 2463
Iscritto il: 16/01/2016, 15:02

Re: CONFIGURAZIONE INDICATORI

Messaggioda Flane » 30/05/2018, 22:59

Certo che si può leggere la potenza reattiva con sdm120c, si usa l'opzione -n

Per leggerla devi modificare il file pooler485 aggiungendo anche il parametro n per la lettura della potenza reattiva.

A quel punto ti trovi la lettura nel relativo file /dev/shm/meternX.txt e basta estrarlo con un comando cat in reqsdm

Avatar utente
maxsemp
Messaggi: 85
Iscritto il: 13/04/2018, 11:44

Re: CONFIGURAZIONE INDICATORI

Messaggioda maxsemp » 02/06/2018, 15:20

Modifica pooler485 (esempio):

Codice: Seleziona tutto

   if [ "$CHECK" = "OK" ]; then
      echo -e "$ID($POWER*W)\n$ID($ENERGY*Wh)\n${ID}_1($VOLTAGE*V)\n${ID}_2($CURRENT*A)\n${ID}_3($FREQUENCY*Hz)\n${ID}_4($FACTOR*F)\n${ID}_5($APPARENT*VA)\n${ID}_6($REACTIVE*VAr)" > /dev/shm/metern${ADDRESS}.txt
    else
        if [ -f /dev/shm/metern${ADDRESS}.txt ]; then
            POWER="0.00"
            ENERGY=`sed -n '2p' /dev/shm/metern${ADDRESS}.txt`
      VOLTAGE="0.00"
      CURRENT="0.00"
      FREQUENCY="0.00"
      FACTOR="0.00"
           APPARENT="0.00"
           REACTIVE="0.00"
            echo -e "$ID($POWER*W)\$ENERGY\n${ID}_1($VOLTAGE*V)\n${ID}_2($CURRENT*A)\n${ID}_3($FREQUENCY*Hz)\n${ID}_4($FACTOR*F)\n${ID}_5($APPARENT*VA)\n${ID}_6($REACTIVE*VAr)" > /dev/shm/metern${ADDRESS}.txt
        fi
    fi
    sleep 2s

    done

e modifica di reqsdm (esempio)

Codice: Seleziona tutto

if (!isset($argv[1])) {
   die("Abording: no valid argument given.\nUsage: reqsdm (tensione|corrente|freq|cospi|cpu-temp)\n");
      } elseif ($argv[1] == 'tensione') {
         $outstr =  exec('cat /dev/shm/metern1.txt | egrep "^1_1\(" | grep "*V)"');
      } elseif ($argv[1] == 'corrente') {
         $outstr =  exec('cat /run/shm/metern1.txt | egrep "^1_2\(" | grep "*A)"');
      } elseif ($argv[1] == 'freq') {
         $outstr =  exec('cat /run/shm/metern1.txt | egrep "^1_3\(" | grep "*Hz)"');
      } elseif ($argv[1] == 'cospi') {
         $outstr =  exec('cat /run/shm/metern1.txt | egrep "^1_4\(" | grep "*F)"');
      } elseif ($argv[1] == 'apparente') {
         $outstr =  exec('cat /run/shm/metern1.txt | egrep "^1_5\(" | grep "*VA)"');
      } elseif ($argv[1] == 'reattiva') {
         $outstr =  exec('cat /run/shm/metern1.txt | egrep "^1_6\(" | grep "*VAr)"');
      } elseif ($argv[1] == 'cpu-temp') {
         $outstr =  exec('cat /sys/class/thermal/thermal_zone0/temp');
         $outstr = $outstr/1000;
         $outstr = "cpu($outstr*°C)";
      // and so on ....

E' corretto, Flane.
Grazie.


Torna a “MeterN”

Chi c’è in linea

Visitano il forum: Nessuno e 11 ospiti