NEWS
DMP8624 -> iobroker
-
@ralla66 ,
hmm gut und wie machen wir weiter ?
Eins nach dem anderen hinzufügen ?>D SW=0 rSW="01060002000" vSW="" >B ->sensor53 r >W bu(SW "DPM Ein" "DPM Aus") >T if ((chg[SW]>0) then vSW=rSW+s(SW) sml(1 3 vSW) endif >M 1 +1,3,m,16,9600,DC,1,2,010300000001,010300010001,010300020001,010310010001,010310020001,010310030001 1,010302SSssxxxx@i0:100,Spannung (set),V,sVolt,2 1,010302SSssxxxx@i1:1000,Strom (set),A,sCur,2 1,010302SSssxxxx@i2:1,Ausgang (set),,sSwitch,0 1,010302SSssxxxx@i3:100,Spannung (disp),V,dVolt,2 1,010302SSssxxxx@i4:1000,Strom (disp),A,vCur,2 1,010302SSssxxxx@i5:1,Temp,°C,tCur,1 #
-
was passiert hier :
if ((chg[SW]>0)
wenn der Zustand des Web Gui Switch wechselt und >0 ist ?
Also Switch Web Gui muß 1 sein ?Nachtrag 2 Script geht auch Es wird
-
@ralla66 ,
SW Groß geschrieben ist der Status des Buttons.>W bu(SW "DPM Ein" "DPM Aus")
-
ja ok das then wird ausgeführt bei 1 und wenn Switch 0 ist ?
-
@ralla66 ,
SW nimmt den Buttonstatus an undchg[SW] >0 heisst change[SW] wenn SW geändert wurde.
if ((chg[SW]>0) then vSW=rSW+s(SW) sml(1 3 vSW) endif
-
Script 2 schalten geht, Werte keine
19:10:26.697 MQT: tele/tasmota_3CECBB/SENSOR = {"Time":"2023-09-17T19:10:26","DC":{"sVolt":0.00,"sCur":0.00,"sSwitch":0,"dVolt":0.00,"vCur":0.00,"tCur":0.0}}
-
@ralla66 ,
da haben wir schon ein Problem. -
sollten ankommen
-
@ralla66 ,
ja du hast Recht.
Das hier funktioniert also nicht, ist aber nur die Anzeige die macht aber programmtechnisch nichts.>M 1 +1,3,m,16,9600,DC,1,2,010300000001,010300010001,010300020001,010310010001,010310020001,010310030001 1,010302SSssxxxx@i0:100,Spannung (set),V,sVolt,2 1,010302SSssxxxx@i1:1000,Strom (set),A,sCur,2 1,010302SSssxxxx@i2:1,Ausgang (set),,sSwitch,0 1,010302SSssxxxx@i3:100,Spannung (disp),V,dVolt,2 1,010302SSssxxxx@i4:1000,Strom (disp),A,vCur,2 1,010302SSssxxxx@i5:1,Temp,°C,tCur,1 #
-
dann was für später eben.
Ein / Aus und Vorgaben Volt und Ampere sollte min lauffähig sein.
Bin noch ne Stunde Online wenn du noch was testen möchtest.Erst einmal Danke für die Mühe, Top
Ralla
-
@ralla66 ,
das Einzige wäre nur die Anzeige testen.>D >M 1 +1,3,m,16,9600,DC,1,2,010300000001,010300010001,010300020001,010310010001,010310020001,010310030001 1,010302SSssxxxx@i0:100,Spannung (set),V,sVolt,2 1,010302SSssxxxx@i1:1000,Strom (set),A,sCur,2 1,010302SSssxxxx@i2:1,Ausgang (set),,sSwitch,0 1,010302SSssxxxx@i3:100,Spannung (disp),V,dVolt,2 1,010302SSssxxxx@i4:1000,Strom (disp),A,vCur,2 1,010302SSssxxxx@i5:1,Temp,°C,tCur,1 #
-
keine Werte in der Web Gui.
den Status sw Switch vom DPM kann man weglassen, würde stumpf Ein / Aus senden
Nachtrag zum Feierabend :
habe and (sw!=SW) entfernt, Ein / Aus geht, Volt und Ampere geht. Yeep
( Dein Script von oben )
keine Werte in der Web Gui -
@ralla66 sagte in DMP8624 -> iobroker:
habe and (sw!=SW) entfernt, Ein / Aus geht, Volt und Ampere geht.
Super, dadurch konnte ich das Skript anpassen und die Verzögerung ist dadurch weg.
>D Vmax=60 Cmax=24 v=0 V=0 c=0 C=0 sw=0 SW=0 rV="01060000" vV="" rC="01060001" vC="" rSW="01060002000" vSW="" >BS +>subscribe V, cmnd/%topic%/tvolt +>subscribe C, cmnd/%topic%/tampere +>subscribe SW, cmnd/%topic%/tpow >B smlj=0 ->sensor53 r >R smlj=0 >S if upsecs>30 then smlj=1 endif sw=DC#sSwitch v=DC#sVolt c=DC#sCur if (chg[sw]>0) then SW=sw +>publish stat/%topic%/RESULT {"tpow":%0sw%} endif if ((chg[v]>0) and (V!=v)) then V=v +>publish stat/%topic%/RESULT {"tvolt":%2v%} endif if ((chg[c]>0) and (C!=c)) then C=c +>publish stat/%topic%/RESULT {"tampere":%2c%} endif if chg[V]>0 then if V>Vmax then V=Vmax endif if V<0 then V=0 endif vV=rV+sb(hx((V*100)) 4 4) +>publish stat/%topic%/RESULT {"tvolt":%2V%} sml(1 3 vV) endif if chg[C]>0 then if C>Cmax then C=Cmax endif if C<0 then C=0 endif vC=rC+sb(hx((C*1000)) 4 4) +>publish stat/%topic%/RESULT {"tampere":%2C%} sml(1 3 vC) endif if (chg[SW]>0) then vSW=rSW+s(SW) +>publish stat/%topic%/RESULT {"tpow":%0SW%} sml(1 3 vSW) endif >W bu(SW "DPM Ein" "DPM Aus") nm(0.0 60.0 0.01 V "DPM Ausgang (V)" 200 2) nm(0.0 24.0 0.01 C "DPM Ausgang (A)" 200 2) >M 1 +1,3,m,16,9600,DC,1,2,010300000001,010300010001,010300020001,010310010001,010310020001,010310030001 1,010302SSssxxxx@i0:100,Spannung (set),V,sVolt,2 1,010302SSssxxxx@i1:1000,Strom (set),A,sCur,2 1,010302SSssxxxx@i2:1,Ausgang (set),,sSwitch,0 1,010302SSssxxxx@i3:100,Spannung (disp),V,dVolt,2 1,010302SSssxxxx@i4:1000,Strom (disp),A,vCur,2 1,010302SSssxxxx@i5:1,Temp,°C,tCur,1 #
-
schaltet, V, A geht
sw brauchen wir noch damit Status DPM und Web Gui gleich ist.
Fast am Ziel ,
bin weg für heute 3,2,1 shutdown -----------------------------> -
@ralla66 ,
habe das Skript reduziert, kannst nochmal testen.>D Vmax=60 Cmax=24 V=0 C=0 SW=0 rV="01060000" vV="" rC="01060001" vC="" rSW="01060002000" vSW="" sSwitch=0 sVolt=0 sCur=0 >BS +>subscribe V, cmnd/%topic%/tvolt +>subscribe C, cmnd/%topic%/tampere +>subscribe SW, cmnd/%topic%/tpow >B ->sensor53 r tper=10 >S if chg[SW]>0 { vSW=rSW+s(SW) sml(1 3 vSW) +>publish stat/%topic%/RESULT {"tpow":%0SW%} } if chg[V]>0 { if V>Vmax { V=Vmax } if V<0 { V=0 } vV=rV+sb(hx((V*100)) 4 4) sml(1 3 vV) +>publish stat/%topic%/RESULT {"tvolt":%2V%} } if chg[C]>0 { if C>Cmax { C=Cmax } if C<0 { C=0 } vC=rC+sb(hx((C*1000)) 4 4) sml(1 3 vC) +>publish stat/%topic%/RESULT {"tampere":%2C%} } >W bu(SW "DPM Ein" "DPM Aus") nm(0.0 60.0 0.01 V "DPM Ausgang (V)" 200 2) nm(0.0 24.0 0.01 C "DPM Ausgang (A)" 200 2) >M 1 +1,3,m,16,9600,DC,1,2,010300000001,010300010001,010300020001,010310010001,010310020001,010310030001 1,010302SSssxxxx@i0:100,Spannung (set),V,sVolt,2 1,010302SSssxxxx@i1:1000,Strom (set),A,sCur,2 1,010302SSssxxxx@i2:1,Ausgang (set),,sSwitch,0 1,010302SSssxxxx@i3:100,Spannung (disp),V,dVolt,2 1,010302SSssxxxx@i4:1000,Strom (disp),A,vCur,2 1,010302SSssxxxx@i5:1,Temp,°C,tCur,1 #
-
schaltet, V, A geht
keine Wertekönnen wir das Word von SSss per print in der Console ausgeben ?
-
@ralla66 ,
müsste gehen, ich schau mal. -
@ralla66 sagte in DMP8624 -> iobroker:
schaltet, V, A geht
keine Wertekönnen wir das Word von SSss per print in der Console ausgeben ?
Habe jetzt nichts gefunden.
Man kann nur mitsensor53 d1
die Raw Daten anzeigen lassen.
Teste bitte das nochmal, ich habe mal was von einer Beschränkung auf 8 Zeichen gelesen.
>D Vmax=60 Cmax=24 V=0 C=0 SW=0 rV="01060000" vV="" rC="01060001" vC="" rSW="01060002000" vSW="" >BS +>subscribe V, cmnd/%topic%/tvolt +>subscribe C, cmnd/%topic%/tampere +>subscribe SW, cmnd/%topic%/tpow >B ->sensor53 r tper=10 >S if chg[SW]>0 { vSW=rSW+s(SW) sml(1 3 vSW) +>publish stat/%topic%/RESULT {"tpow":%0SW%} } if chg[V]>0 { if V>Vmax { V=Vmax } if V<0 { V=0 } vV=rV+sb(hx((V*100)) 4 4) sml(1 3 vV) +>publish stat/%topic%/RESULT {"tvolt":%2V%} } if chg[C]>0 { if C>Cmax { C=Cmax } if C<0 { C=0 } vC=rC+sb(hx((C*1000)) 4 4) sml(1 3 vC) +>publish stat/%topic%/RESULT {"tampere":%2C%} } >W bu(SW "DPM Ein" "DPM Aus") nm(0.0 60.0 0.01 V "DPM V" 200 2) nm(0.0 24.0 0.01 C "DPM A" 200 2) >M 1 +1,3,m,16,9600,DC,1,2,010300000001,010300010001,010300020001,010310010001,010310020001,010310030001 1,010302SSssxxxx@i0:100,setV,V,sVolt,2 1,010302SSssxxxx@i1:1000,setA,A,sCur,2 1,010302SSssxxxx@i2:1,setP,,sSwitch,0 1,010302SSssxxxx@i3:100,disV,V,dVolt,2 1,010302SSssxxxx@i4:1000,disA,A,vCur,2 1,010302SSssxxxx@i5:1,Temp,°C,tCur,1 #
-
@wal
keine Änderung,ESP TX geht ja mit RS485 -> Hterm/DPM bei mir.
Geantwortet wird auch.
Schauen was an RX ankommt per print ?
Was bedeutet das DC hinter der Baud ? for web ui cmd Mqtt Json .
Was bewirkt das. -
@ralla66 ,
das ist der Name den man als Platzhalter vergibt, damit man die Empfangenen Daten im Skript nutzen kann.temp=DC#sVolt print %temp%
da wird bei dir aber auch 0 rauskommen wie in der Anzeige.
edit: schau doch mal in die Konsole mit sensor53 d1