SUSV Auswertung über Callback Funktion
Moderatoren: jmaus, Co-Administratoren
- Black
- Beiträge: 5483
- Registriert: 12.09.2015, 22:31
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Wegberg
- Hat sich bedankt: 424 Mal
- Danksagung erhalten: 1074 Mal
- Kontaktdaten:
Re: SUSV Auswertung über Callback Funktion
joah, da hab ich dir geschrieben, das deine Sysvar "USV:Source" heissen wird, in meinem programm aber auf eine Zugegriffen wird, welche sich "USV.Source" nennt.(Ich nutz immer eine Punkt Notation bei mir) Damit griff das dom.GetObject ins leere --> Scriptabbruch
egal, kleine Ursache, grosse Wirkung..
tuts ja nun,
Black
egal, kleine Ursache, grosse Wirkung..
tuts ja nun,
Black
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
-
- Beiträge: 93
- Registriert: 21.10.2018, 07:33
- Wohnort: Dresden
- Hat sich bedankt: 1 Mal
- Danksagung erhalten: 2 Mal
Re: SUSV Auswertung über Callback Funktion
Was leider nicht ausgegeben wird ist die mA Anzeige dort steht immer 0.00mA egal in welchem Strommodus!?
in der Shell Console wird bei Akkubetrieb der mA Verbrauch angezeigt.
und "Versorgesystem der Raspimatik" gibt auch immer nur den Wert "Akku" an also wird nicht geändert, egal ob im Netz oder Akkumodus!?
Hast du noch eine Idee für mich an was dies liegen kann?
Gruß Thomas
Code: Alles auswählen
USV.CurrBatterier:
in der Shell Console wird bei Akkubetrieb der mA Verbrauch angezeigt.
und
Code: Alles auswählen
USV.System
Hast du noch eine Idee für mich an was dies liegen kann?
Gruß Thomas
- Dateianhänge
-
- 10.JPG (17.87 KiB) 1753 mal betrachtet
-
- 9.JPG (24.05 KiB) 1753 mal betrachtet
Raspimatic auf RPI3b+
HM & HMiP
FHEM
HM & HMiP
FHEM
- Black
- Beiträge: 5483
- Registriert: 12.09.2015, 22:31
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Wegberg
- Hat sich bedankt: 424 Mal
- Danksagung erhalten: 1074 Mal
- Kontaktdaten:
Re: SUSV Auswertung über Callback Funktion
guck ich mir zuhause mal an...
kannst mir aber im vorfeld mal gefallen tun:
Für das programm mal bitte unter script testen aus.
Den string, wie shcon mal gehabt, dann mit ctrl-C kopieren, mit putty per SSH auf die CCU und dann führst du den string nach dem einfügen einmal im Normallauf und einmal im akkubetrieb aus. Poste mir dnan mal bitte beide male den Ausgabestring dann.
dann guck ich mir das zuhause mal in ruhe an, kann nix wildes sein eigentlich
eins hab ich jetzt schin direkt gesehen:
du hast noch eine Systemvariable falsch geschrieben.
die soll so heissen: USV.CurrBatterie
kannst mir aber im vorfeld mal gefallen tun:
Code: Alles auswählen
!- Kapazität der USV auslesen
!- Michael Thelen Januar 2018
!- Kapazität der USV auslesen (CallBack version benötigt noch programm CallBackExec11_SUSV)
!- Michael Thelen September 2018
!- Bash Kommandozeile zusammensetzen
!-
string q= 's=$(/opt/susvd/susv -status|tr -s "*" " ");';
q= q# 'b=${s#*Source: };list=${b%% *};';
q= q# 'b=${b#*age in: };list=$list";"${b%% *};';
q= q# 'b=${b#*capacity: };list=$list";"${b%%%*};';
q= q# 'b=${b#*voltage: };list=$list";"${b%%V*};';
q= q# 'b=${b#*Battery: };list=$list";"${b%% *};';
q= q# 'echo $list';
WriteLine (q);
!------------------------------
Den string, wie shcon mal gehabt, dann mit ctrl-C kopieren, mit putty per SSH auf die CCU und dann führst du den string nach dem einfügen einmal im Normallauf und einmal im akkubetrieb aus. Poste mir dnan mal bitte beide male den Ausgabestring dann.
dann guck ich mir das zuhause mal in ruhe an, kann nix wildes sein eigentlich
eins hab ich jetzt schin direkt gesehen:
du hast noch eine Systemvariable falsch geschrieben.
die soll so heissen: USV.CurrBatterie
Zuletzt geändert von Black am 13.11.2018, 10:20, insgesamt 1-mal geändert.
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
-
- Beiträge: 93
- Registriert: 21.10.2018, 07:33
- Wohnort: Dresden
- Hat sich bedankt: 1 Mal
- Danksagung erhalten: 2 Mal
Re: SUSV Auswertung über Callback Funktion
Danke dir, also Thema
" USV.CurrBatterie:" habe ich rausgefunden das war wieder ein Schreibfehler von mir
Nur beim Thema "USV.System" komme ich nicht ganz weiter. Ich weiß nicht was er da genau nimmt.
Skript teste ich gleich
Edit: es werden doch nur 5 Werte ausgegeben mit "USV.System" sind es doch aber 6 Systemvariablen!?
es geht ja eigentlich hierum:
" USV.CurrBatterie:" habe ich rausgefunden das war wieder ein Schreibfehler von mir
Nur beim Thema "USV.System" komme ich nicht ganz weiter. Ich weiß nicht was er da genau nimmt.
Skript teste ich gleich
Edit: es werden doch nur 5 Werte ausgegeben mit "USV.System" sind es doch aber 6 Systemvariablen!?
es geht ja eigentlich hierum:
Code: Alles auswählen
real usv=100.0; !- Einstellen Netzbetrieb
if (s=="Battery") {usv=r;}
dom.GetObject (ID_SYSTEM_VARIABLES).Get ("USV.System").State (usv);
WriteLine ("DONE");
Raspimatic auf RPI3b+
HM & HMiP
FHEM
HM & HMiP
FHEM
- Black
- Beiträge: 5483
- Registriert: 12.09.2015, 22:31
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Wegberg
- Hat sich bedankt: 424 Mal
- Danksagung erhalten: 1074 Mal
- Kontaktdaten:
Re: SUSV Auswertung über Callback Funktion
In USV.System... das stammt noch aus einer Zeit, als die S.USV nicht so sauber funktionierte und die Raspberrymatik gar nicht herrunterfuhr.
Da hatte ich auhc mal ein Programm, welches bei unterschreitung einer Kapazität ein System.Save ausführte und dann ein runterfahren des raspberry.
Aus der zeit stammte die Sysvar.
eigentlich sollte da eine Zahl drinstehen. Bei Netzbetrieb 100%, bei Akkubetrieb die aktuelle kapazität. Die Systemvariable sollt ebei dir also eine Typ Zahl sein. Das war die entscheidungsvariante für das Down programm.
brauchen tuts die nicht, ist eine alte Leiche.
drum mach aus
ein
und lösch die sysvar (vorher aber noch aus eventuell startseite und der kanalzuordnung rausnehmen)
und gut is...
Black
Da hatte ich auhc mal ein Programm, welches bei unterschreitung einer Kapazität ein System.Save ausführte und dann ein runterfahren des raspberry.
Aus der zeit stammte die Sysvar.
eigentlich sollte da eine Zahl drinstehen. Bei Netzbetrieb 100%, bei Akkubetrieb die aktuelle kapazität. Die Systemvariable sollt ebei dir also eine Typ Zahl sein. Das war die entscheidungsvariante für das Down programm.
brauchen tuts die nicht, ist eine alte Leiche.
drum mach aus
Code: Alles auswählen
dom.GetObject (ID_SYSTEM_VARIABLES).Get ("USV.System").State (usv);
Code: Alles auswählen
!-dom.GetObject (ID_SYSTEM_VARIABLES).Get ("USV.System").State (usv);
und gut is...
Black
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
-
- Beiträge: 93
- Registriert: 21.10.2018, 07:33
- Wohnort: Dresden
- Hat sich bedankt: 1 Mal
- Danksagung erhalten: 2 Mal
Re: SUSV Auswertung über Callback Funktion
Super Danke.
Kann ich bei "USV.Source" aus dem angezeigten Wert(Zeichenkette) "Primary" den Namen "Netzbetrieb" machen?
Und gibt es vorn auf der Starseite die Möglichkeit mit alle 5 USV Infos anzeigen zu lassen ohe das die Tastersymbole des EXEC_SUSV:11 mit angezeigt wird? Siehe Foto
Kann ich bei "USV.Source" aus dem angezeigten Wert(Zeichenkette) "Primary" den Namen "Netzbetrieb" machen?
Und gibt es vorn auf der Starseite die Möglichkeit mit alle 5 USV Infos anzeigen zu lassen ohe das die Tastersymbole des EXEC_SUSV:11 mit angezeigt wird? Siehe Foto
Raspimatic auf RPI3b+
HM & HMiP
FHEM
HM & HMiP
FHEM
- Black
- Beiträge: 5483
- Registriert: 12.09.2015, 22:31
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Wegberg
- Hat sich bedankt: 424 Mal
- Danksagung erhalten: 1074 Mal
- Kontaktdaten:
Re: SUSV Auswertung über Callback Funktion
gehen tut alles:
in quick and dirty in dem callback programm:
aus
mache
in quick and dirty in dem callback programm:
aus
Code: Alles auswählen
string s= sout.StrValueByIndex (";",0);
dom.GetObject (ID_SYSTEM_VARIABLES).Get ("USV.Source").State (s);
Code: Alles auswählen
string s= sout.StrValueByIndex (";",0);
if (s=="Primary") {
dom.GetObject (ID_SYSTEM_VARIABLES).Get ("USV.Source").State ("Netzbetrieb");
} else {
dom.GetObject (ID_SYSTEM_VARIABLES).Get ("USV.Source").State (s);
}
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
-
- Beiträge: 93
- Registriert: 21.10.2018, 07:33
- Wohnort: Dresden
- Hat sich bedankt: 1 Mal
- Danksagung erhalten: 2 Mal
Re: SUSV Auswertung über Callback Funktion
Hallo Black, ich dann nochmal wieder
ist es möglich noch eine Systemvariable der USV zusätzlich abzufragen?
Ich hätte gern den "Charging current" Wert (300mA) mit angezeigt.
Siehe Bild Ist dies möglich?
ist es möglich noch eine Systemvariable der USV zusätzlich abzufragen?
Ich hätte gern den "Charging current" Wert (300mA) mit angezeigt.
Siehe Bild Ist dies möglich?
- Dateianhänge
-
- Unbenannt.PNG (20.65 KiB) 1653 mal betrachtet
Raspimatic auf RPI3b+
HM & HMiP
FHEM
HM & HMiP
FHEM
- Black
- Beiträge: 5483
- Registriert: 12.09.2015, 22:31
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Wegberg
- Hat sich bedankt: 424 Mal
- Danksagung erhalten: 1074 Mal
- Kontaktdaten:
Re: SUSV Auswertung über Callback Funktion
Auf Nachfrage, wie sich die S.USV unter IOBroker auslesen lässt,
- mein altes Script , lief auf einem ASUS Tinkerboard mit S.USV, bevor der Broker auf einen NUC umgezogen ist.
nicht vergessen, exec muss im javascript Adapter erlaubt sein !
- mein altes Script , lief auf einem ASUS Tinkerboard mit S.USV, bevor der Broker auf einen NUC umgezogen ist.
Code: Alles auswählen
var pfad = "javascript.0.Systeminfos.SUSV.";
// Datenpunktnamen:
var idVin = pfad + 'Vin';
var idCapBatt = pfad + 'Capacity';
var idSource = pfad + 'Source';
function AktualisierenWerte () {
exec('/opt/susvd/susv -status', function (error, stdout, stderr) {
var erg;
var reg= /Voltage in: (\d*\.?\d*)/gi;
var match= reg.exec (stdout);
if (match !== undefined && match !== null && match.length !== undefined) {
erg= parseFloat (match [match.length-1]);
setState (idVin,erg,true);
}
reg= /ry capacity: (\d*\.?\d*)/gi;
match= reg.exec (stdout);
if (match !== undefined && match !== null && match.length !== undefined) {
erg= parseFloat (match [match.length-1]);
setState (idCapBatt,erg,true);
}
reg= /ing Source: ([a-zA-Z]*)/gi;
match= reg.exec (stdout);
if (match !== undefined && match !== null && match.length !== undefined) {
erg= match [match.length-1];
setState (idSource,erg,true);
}
});
}
function AnlegensysVars () {
createState (idVin, "", {
name: 'Vin',
desc: 'Volt eingehend',
type: 'number',
unit: 'V',
role: 'object'
});
createState (idCapBatt, "", {
name: 'Capacity',
desc: 'Vapazität Akku',
type: 'number',
unit: '%',
role: 'object'
});
createState (idSource, "", {
name: 'Source',
desc: 'Versorgung Board',
type: 'string',
unit: '',
role: 'object'
});
}
AnlegensysVars ();
schedule("30 * * * * *", function () {
// Jede Minute zur 30. Sekunde
AktualisierenWerte ();
});
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising