Code: Alles auswählen
#!/bin/tclsh
load tclrega.so
set f [open "/media/sd-mmcblk0/SB_Ueberschuss.txt"]
set input [read $f]
close $f
# Werte aus Datei auslesen
# =============================
regexp "Einspeisenleistung=(.*) W" $input dummy ueberschuss ; #Ueberschuss
regexp "Entladeleistung=(.*) W" $input dummy entladen ; #Entladen
regexp "Ladezustand=(.*) %" $input dummy soc ; #SOC
#puts $hauptschalter
#puts $halletemp
# Werte in Variabel schreiben
# =============================
set rega_cmd ""
append rega_cmd "var w0 = dom.GetObject('SB_Ueberschuss');"
append rega_cmd "w0.State('$ueberschuss');"
append rega_cmd "var w1 = dom.GetObject('SB_Entladung');"
append rega_cmd "w1.State('$entladen');"
append rega_cmd "var w2 = dom.GetObject('SB_Ladezustand');"
append rega_cmd "w2.State('$soc');"
rega_script $rega_cmd
Code: Alles auswählen
Einspeisenleistung=479 W
Entladeleistung=0 W
Ladezustand=94 %
Code: Alles auswählen
string stderr;
string stdout;
system.Exec("tclsh /usr/local/etc/ueberschuss.tcl", &stdout, &stderr);
Gruß
Markus