Ich habe drei Baylan BT.11 3-Phasen Stromzähler, die ich auslesen möchte. Ich habe bereits einen WiFi Stromleser im Betrieb, das funktioniert problemlos. Der Baylan BT.11 benötigt ein Skript wie der Iskra AM550 (mit Baud-Raten-Wechsel).
>D
res=0
scnt=0
>B
=>sensor53 r
>F
scnt+=1
switch scnt
case 6
res=sml(1 0 300)
res=sml(1 1 "2F3F210D0A")
case 18
res=sml(1 1 "063035300D0A")
case 20
res=sml(1 0 9600)
case 80
scnt=0
ends
>M 1
+1,3,o,0,9600,Eins,1
1,1.8.0(@1,Zählerstand,kWh,Total_in,3
1,1.8.1(@1,Zählerstand P1,kWh,Total_in,3
1,1.8.2(@1,Zählerstand P2,kWh,Total_in,3
1,1.8.3(@1,Zählerstand P3,kWh,Total_in,3
Kann ich das Skript so anpassen das ich mit 2 weiteren TTL Stromlesern die anderen 2 Zähler auslesen kann oder benötige ich dazu 3 WiFi Leseköpfe?
Hey, vielen Dank für deine Nachricht und das Skript!
Du kannst versuchen, das Skript entsprechend anzupassen und mit 2 weiteren TTL-Stromlesern die anderen Zähler auszulesen. In der Theorie sollte das funktionieren, da du über die TTL-Schnittstellen die Daten parallel auslesen kannst. Wichtig ist, dass du die Konfiguration im Skript so anpasst, dass die Kommunikation mit den jeweiligen Zählern eindeutig und konfliktfrei ist.
Falls du schon weitere WiFi-Stromleser hättest, wäre es natürlich einfacher, aber mit den TTL-Leseköpfen sollte es definitiv klappen – einfach testen und schauen, ob die Daten korrekt ausgelesen werden.
Wenn du Unterstützung bei der Anpassung des Skripts brauchst, lass es mich wissen!
Liebe Grüße aus Stuttgart,
Andy vom Team Stromleser
Ich hatte noch einen TTL Lesekopf daheim und habe mir Stecker besorgt um den mit dem Stromleser WiFi zu verbinden. Ich habe den Stecker rechts oben angesteckt (IO 4, IO 5) und das Skript angepasst um nur den IO4/5 Lesekopf anzusteuern:
>D
;Var for baudrate changing
res=0
;Var for counter see >F=ms
scnt=0
>B
->sensor53 r
;Set teleperiod to 20sec
;tper=10
>F
; count 100ms
scnt+=1
switch scnt
case 6
;set sml driver to 300 baud and send /?! as HEX to trigger the Meter
res=sml(4 0 300)
res=sml(4 1 "2F3F210D0A")
;1800ms later \> Ack and ask for switching to 9600 baud
case 18
res=sml(4 1 "063035300D0A")
;Restart sequence after 50x100ms
;2000ms later \> Switching sml driver to 9600 baud
case 20
res=sml(4 0 9600)
case 50
; 5000ms later \> restart sequence
scnt=0
ends
>M 1
+1,5,o,0,9600,Vier,4
1,1.8.0(@1,Zählerstand,kWh,Total_in,3
1,1.8.1(@1,Zählerstand P1,kWh,Total_in,3
1,1.8.2(@1,Zählerstand P2,kWh,Total_in,3
1,1.8.3(@1,Zählerstand P3,kWh,Total_in,3
Leider kein Erfolg, so lässt sich nichts auslesen. Ich bekomme über all nur 0. Ich habe mal gelesen, dass man einen vollwertigen RX/TX braucht um das Skript mit Baud-Raten Wechsel überhaupt verwenden zu können? Ich gehe davon aus das ihr den für IO 1/3 verwendet?
Ja, du kannst es auf jeden Fall ausprobieren – idealerweise sollte es direkt mit Pin 5 und 4 funktionieren. Falls es trotzdem nicht klappt, sag einfach Bescheid, dann finden wir eine Lösung!