NEWS
S.USV Status auslesen
-
Ich lese zwar nicht alle Statusinformationen aus, aber das Prinzip sollte das gleiche sein.
// USV Netzausfall und Akkukapazität var voltid = getIdByName("USV.Akkuspannung"); var capid = getIdByName("USV.Akkukapazitaet"); var netid = getIdByName("USV.Netz"); // Netzspannung vorhanden function netz() { var net = getState(netid).val; exec('/opt/susvd/susv -pwrbat 0', function(err, stdout, stderr) { if (err) { log(stderr,"error"); return; } if(net && parseFloat(stdout) > 200) { setState(netid, false, true); flog("Netzspannung ausgefallen"); } else if (!net && parseFloat(stdout) < 100) { setState(netid, true, true); flog("Netzspannung vorhanden"); } }); } setInterval(netz, 10000); // Akkuspannung und -kapazität auslesen function akku() { exec('/opt/susvd/susv -capbat 0', function(err, stdout, stderr) { if (err) { log(stderr,"error"); return; } stdout = stdout.split("\n"); setState(voltid, parseFloat(stdout[1]), true); setState(capid, parseFloat(stdout[0]), true); }); } schedule("*/5 * * * *", akku);
-
Hi,
leider bin ich im Skripten nicht so die Leuchte.
Habe lediglich die Variablen auf meine Belange angepasst:
var voltid = getIdByName("javascript.0.Eigene_Variablen.SUSV.SV_ioB_USV_Akkuspannung"); var capid = getIdByName("javascript.0.Eigene_Variablen.SUSV.SV_ioB_USV_Akkukapazitaet"); var netid = getIdByName("javascript.0.Eigene_Variablen.SUSV.SV_ioB_USV_Netz");
Bekomme immer folgende Fehlermeldung:
19:04:07.259 [error] javascript.0 at Object.netz (script.js._Testumgebung.PRG_000_SYS_ioB_S_USV_Data:10:15)
Danke für deine Hilfe
-
Wenn die Datenpunkt-ID angegeben wird, dann ohne getIdByName(name) !
var voltid = "javascript.0.Eigene_Variablen.SUSV.SV_ioB_USV_Akkuspannung"; var capid = "javascript.0.Eigene_Variablen.SUSV.SV_ioB_USV_Akkukapazitaet"; var netid = "javascript.0.Eigene_Variablen.SUSV.SV_ioB_USV_Netz";
-
Ich hatte mir dazu auch mal ein Skript geschrieben und wollte es immer mal der Gemeinschaft schenken. Jetzt ist ein guter Moment
–--------------
Update:
Hier stand mal mein Skript, inzwischen gibt es aber einen eigenen Thread:
-
Vielen Dank für deine schnelle Hilfe.
Vielen Dank für dein super Skript. Das ist genau das, was ich gesucht habe.
Stell doch dazu einen eigenen Thread ein, so dass du ggf. auch zukünftige Änderungen dort posten kannst.
Bei mir kommt allerdings immer der Hinweis im Log:
Unexpected version 2.40, possibly not all values are correctly identified
Herzlichen Dank euch Beiden.
Grüße
Sascha
-
Vielen Dank für dein super Skript. Das ist genau das, was ich gesucht habe.
Stell doch dazu einen eigenen Thread ein, so dass du ggf. auch zukünftige Änderungen dort posten kannst.
Bei mir kommt allerdings immer der Hinweis im Log:
Unexpected version 2.40, possibly not all values are correctly identified ```` `
Freut ich wenn es hilft!
Gute Idee, ich werde einen eigenen thread machen … und da muss auch gleich ein update dazu. Die Meldung sagt dass Du eine neuere Version des susv Programms installiert hast, das möglicherweise andere Ausgaben liefert. Muss ich selbst ausprobieren.
-
Super,
dann poste hier doch bitte eine Verlinkung,
so dass ich das Update nicht verpasse.
Danke und Gruß
Sascha
-
So, ich habe jetzt einen eigenen Thread aufgemacht:
-
Hallo zusammen,
ich gehe davon aus, dass bei den Skripten der ioBrocker auf dem RPI mit der S.USV installiert sein muss.
Meine Konfiguration besteht aus zwei RPI, ein RPI mit S.USV und Raspberrymatic und ein RPI mit ioBroker.
Ich habe im Moment noch keinen Plan, wie ich den S.USV Status mittels der Skripte am entfernten RPI
auslesen kann. Ein Hinweis würde mir da weiterhelfen.
Gruß Hans
-
ich gehe davon aus, dass bei den Skripten der ioBrocker auf dem RPI mit der S.USV installiert sein muss. `
Richtig.
@Düsendaniel:ein RPI mit S.USV und Raspberrymatic und ein RPI mit ioBroker. `
Dann muss die Auswertung der S.USV unter Raspberrymatic erfolgen mit dem Ergebnis in Systemvariable(n).