Codice: Seleziona tutto
<?php
if(!defined('checkaccess')){die('Direct access not permitted');}
// Manage com. apps daemon as 'http' user if needed
if (is_null($PID)) { // Stop Daemon
exec("pkill -f pooler485 > /dev/null 2>&1 &");
} else { //Start
exec("pooler485 2,6,7 9600 /dev/ttyUSB0 > /dev/null 2>/dev/null &");
}
?>
ma nella cartella dev/shm ci sono i seguenti files:
Codice: Seleziona tutto
123s_LIVEMEMORY.json
123s_MEMORY.json
consumi2.txt
consumi7.txt
mN_ILIVEMEMORY.json
mN_LIVEMEMORY.json
mN_MEMORY.json
produzione1.txt
ups.txt
tra l'altro non c'è quello del metern6, allego il mio file reqsdm.php
Codice: Seleziona tutto
#!/usr/bin/php
<?php
if (isset($_SERVER['REMOTE_ADDR'])) {
die('Direct access not permitted');
}
if (!isset($argv[1])) {
die("Abording: no valid argument given.\n");
} 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)"');
} elseif ($argv[1] == 'cpu-temp') {
$outstr = exec('cat /sys/class/thermal/thermal_zone0/temp');
$outstr = $outstr/1000;
$outstr = "cpu($outstr*°C)";
} elseif ($argv[1] == 'babbo-live') {
$outstr = exec('cat /dev/shm/metern6.txt | egrep "^6\(" | grep "*W)"');
} elseif ($argv[1] == 'babbo-main') {
$outstr = exec('cat /dev/shm/metern6.txt | egrep "^6\(" | grep "*Wh)"');
} elseif ($argv[1] == 'bat_ten') {
$outstr = exec('cat /dev/shm/ups.txt | grep "*V)"');
} elseif ($argv[1] == 'bat_cap') {
$outstr = exec('cat /dev/shm/ups.txt | grep "*%)"');
} else {
die("Usage: reqsdm (tensione|corrente|freq|cospi|cpu-temp|babbo-live|babbo-main|bat_ten|bat_cap)\n");
}
echo "$outstr";
?>
Ripeto che i contatori li leggo bene da terminale e riga di comando (sdm120c -a 2 -P N -b 9600 -j10 -z10 -w10 /dev/ ttyUSB0) ma i comandi lanciati in Metern non sembrano funzionare, cos'altro posso controllare?