Pagina 1 di 1

grafico temperatura

Inviato: 19/12/2019, 9:31
da s_p
buongiorno a tutti

vorrei visualizzare l'andamento della temperatura del boiler con un grafico, ma non riesco a capire qual è la configurazione del meter da impostare.
attualmente la leggo con reqsdm da una sonda collegata ad un sonoff ma appunto è notlogged

Re: grafico temperatura

Inviato: 19/12/2019, 18:59
da Flane
Lo configuri come misuratore invece che indicatore, mettendo lo stesso comando di lettura sia in live che in main (la temperatura non cambia così repentinamente da richiedere medie sui 5 min)

Re: grafico temperatura

Inviato: 19/12/2019, 19:47
da s_p
ho già provato ma non va bene

mi dai un'occhita dagli screen?

in più i valori del gauge vanno a zero e poi si riprendono

Re: grafico temperatura

Inviato: 19/12/2019, 20:02
da Flane
Se il tuo misuratore è il numero 11, ovviamente devi modificare reqsdm in modo che non restituisca il numero 5 ma il numero 11

Re: grafico temperatura

Inviato: 19/12/2019, 20:28
da s_p
flane scusami ma non ho capito...

il reqsdm mio è così

Codice: Seleziona tutto

#!/usr/bin/php
<?php
// This script will output a meterN compatible format for the main or live command
// You'll need to setup correct permission chmod +x
// then ln -s /var/www/comapps/reqsdm.php /usr/bin/reqsdm
// Request command with 'reqsdm tensione' or 'reqsdm corrente' or ......
if (isset($_SERVER['REMOTE_ADDR'])) {
    die('Direct access not permitted');
}
if (!isset($argv[1])) {
   die("Abording: no valid argument given.\nUsage: reqsdm (tensione|corrente|cospi|cpu-temp|pdc_l|pdc_t|boiler|camino)\n");
      } elseif ($argv[1] == 'tensione') {
         $outstr =  exec('cat /dev/shm/metern2.txt | egrep "^2_1\(" | grep "*V)"');
      } elseif ($argv[1] == 'corrente') {
         $outstr =  exec('cat /run/shm/metern2.txt | egrep "^2_2\(" | grep "*A)"');
      } elseif ($argv[1] == 'frequenza') {
         $outstr =  exec('cat /run/shm/metern2.txt | egrep "^2_3\(" | grep "*Hz)"');
      } elseif ($argv[1] == 'cospi') {
         $outstr =  exec('cat /run/shm/metern2.txt | egrep "^2_4\(" | grep "*F)"');
      } elseif ($argv[1] == 'cpu-temp') {
         $outstr =  exec('cat /sys/class/thermal/thermal_zone0/temp');
         $outstr = $outstr/1000;
         $outstr = "cpu($outstr*°C)";
//
// METERS
//
} elseif ($argv[1] == 'pdc_l') {
$outstr = exec('cat /dev/shm/metern6.txt | egrep "^6\(" | grep "*W)"');
} elseif ($argv[1] == 'pdc_t') {
$outstr = exec('cat /dev/shm/metern6.txt | egrep "^6\(" | grep "*Wh)"');
} elseif ($argv[1] == 'boiler') {
         $outstr =  exec('curl -s http://192.168.0.151/json | egrep \'"temperaturaboiler":\' | egrep -o \'[0-9]*(\.)?[0-9]*\'');
         $outstr = "5($outstr*°C)";
} elseif ($argv[1] == 'camino') {
         $outstr =  exec('curl -s http://192.168.0.150/json | egrep \'"temperaturacamino":\' | egrep -o \'[0-9]*(\.)?[0-9]*\'');
         $outstr = "6($outstr*°C)";
} elseif ($argv[1] == 'impianto') {
         $outstr =  exec('curl -s http://192.168.0.151/json | egrep \'"temperaturaimpianto":\' | egrep -o \'[0-9]*(\.)?[0-9]*\'');
         $outstr = "7($outstr*°C)";
} elseif ($argv[1] == 'collettori') {
         $outstr =  exec('curl -s http://192.168.0.151/json | egrep \'"temperaturacollettori":\' | egrep -o \'[0-9]*(\.)?[0-9]*\'');
         $outstr = "8($outstr*°C)";      
       // and so on ....
   } else {
    die("Usage: reqsdm (tensione|corrente|cospi|cpu-temp|pdc_l|pdc_t|boiler|camino|impianto|collettori)\n");
   }
echo "$outstr";
?>




l'ID 5 è negli indicatori, proprio non ho capito

Re: grafico temperatura

Inviato: 24/12/2019, 9:49
da s_p
buongiorno

se dovesse servire a qualcuno la mia esperienza

1. eliminato indicatore ID 5 riguardante la temperatura del boiler
2. aggiunto nuovo sensor con ID 11 e comando uguale per live e 5 min, reqsdm
3. modificato reqsdm.php mettendo il nuovo ID (da 5 a 11)

fine

Re: grafico temperatura

Inviato: 24/12/2019, 9:58
da Flane
Vedi che con un pò di applicazione i risultati arrivano ;)