Modbus Adapter nach Stromausfall

Hallo am Sonntag
Ich habe einen Modbus Adapter USR TCP 232-304. 485
Nach Stromausfall und wiederkehr der Spannung werden keine Daten mehr übertragen.
Erst nach Symcon Neustart funktionierts wieder.
Gibt es bei dem Ding eine Einstellung die das verhindert?
TCP Server-kick off old connection ?? oder welche??
Nachtrag: Wenn der Stromzähler stromlos gemacht wird und wieder am Strom ist funktionierts auch.
Nur wenn der Adapter vom Strom getrennt wird verliert Symcon die Verbindung dauerhaft bis zum Symconneustart.
Ist bei einem Stromzähler ja blöd wenn der nicht mehr zählt
Schönen Gruß
Egon

@DerStandart hast Du da eine Lösung für?
cheers Seppm

Hilft Dir diese Beitrag, Im Router immer die gleiche IP_Adr eingestellt, eigentlich sollte IPS sich neu verbinden.

Hi Helmut
Symcon ist verbunden. Verbindet sich auch automatisch bei einem Ausfall wieder=o.K.
Nur die Verbindung Symcon zum USR Adapter wird bei Stromausfall des Adapters nicht wieder hergestellt.
(kann ich leicht simulieren durch ziehen des Netzsteckers)
Erst nach Neustart von Symcon ist die Verb. zum Adapter wieder o.K.
Nützt da das Watchdog Modul etwas, abfragen einer Variablen?
Kann ich Symcon automatisch mit einem Befehl rebooten? Raspi 4.
Weiss jemand ob das bei einem teureren (besseren?) Adapter einwandfrei funktioniert?
Schönen Gruß
Egon

Ich kann mir grad noch nicht erklären warum das so sein sollte. Wir der Client Socket in IP-Symcon denn korrekt als „rot“ dargestellt wenn das Problem auftritt? Würde es reichen wenn du den I/O schließt und wieder öffnest?

paresy

Kann Dir Codeschnippsel anbieten, schaut nach dem (Pokeys)Client, wenn er nicht da ist gibt es ein Versuch des Neuverbinden, braucht eine Stausvariable, die Du erstellen mußt.

<?
$id=14098; //vom Pokeys
$Pokeysda=GetValueBoolean(55270);
echo $Pokeysda;
if ( $Pokeysda==false) 
{ 
IPS_SetProperty($id, "Open", true); //I/O Instanz soll aktiviert sein.
$Da=IPS_ApplyChanges($id); //Neue Konfiguration übernehmen
}
If ($Da == true){
 echo "Client da";
  SetValueBoolean(55270,true);
} 
If ($Da == false){
 echo "Client nicht da";
 SetValueBoolean(55270,false);
} 
?>

Echos kannst Du ja rausnehmen

Ich komme wahrscheinlich am späten Nachmittag dazu, das hier mal zu testen bzw. nachzustellen.

Hi Paresy

Gute Idee…
Schnittstelle ist nicht rot, ist geöffnet und Haken dran…
Ja Schnittstelle schliessen/Öffnen dann wiederVerbindung zum Adapter o.k.
Schönen Gruß
Egon

Mach doch Mal ein paar Screenshots von den Weboberfläche des USRs.
Ich hab auch so ein Teil und keinerlei Probleme…

Hi Mastermind1
Mein Teil läuft bei mir auch. Ausser nach einem Stromausfall dann werden die Daten nicht mehr aktualisiert.
Teste doch bitte mal für mich:
Netzteilstecker ziehen vom Adapter, wieder reinstecken und gucken ob die Daten danach wieder normal aktualisiert werden.
Bei mir muss ich die Client-Schnittstelle deaktivieren wieder aktivieren dann läufts wieder.
Screenshots morgen.
Fällt mir grad noch ein:
Ich habe nur A und B angeschlossen.
GND anschliessen gibts versch. Meinungen…
Schönen Gruß :smile:
Egon

Hallo Mastermind1
Danke für die Hilfe.






Hab ich da was falsches drin?
Es funktioniert ja auch super wenn ich keinen seltenen Stromausfall habe.

Für einen 2. Stromzähler was muss ich da noch hinzufügen?
Das hätte dann Portnummer 2 ?
Static IP z.B. 192.168.178.61 ?

Schönen Gruß
Egon

Hi
Nächstes Problem:
Ich benutze das MODBUS Modul
Ich habe jetzt einen 2. B+G E 230 Stromzähler angeschlossen.
Der 1. Zähler hat die Adresse 001 der 2. die Adresse 002.
Leider zeigen die 2 Zähler das selbe an.
Muss ich ein 2. Gateway anlegen oder 2. Schnittstelle und da dann die ADR eintragen?


Remote Port Number 502 wo wird der Port eingetragen? Ist auch nicht änderbar in der WEBUI

Ich gebs bald auf. :hot_face:
Schönen Gruß
Egon

Ja, in Symcon ein zweites Modbus-Gateway (Splitter) anlegen und dort die ID 2 eintragen.
Den Modus identisch zum 1. Modbus-Gateway und beide müssen am gleichen IO (Clientsocket) gebunden sein.
Am USR muss dazu nichts verändert werden.
Der ist ja nur Wandler zwischen Netzwerk und RS485.
Michael

Hi Michael
Es kann so einfach sein… :smiley: :smiley: :smiley:
Herzlichen Dank dafür.

Bleibt nur noch das kleine Problem:
Netzstecker am Adapter ziehen (oder Stromausfall), wieder stecken keine Verbindung mehr zur Symcon-Client Schnittstelle.
Erst nach inaktiv und wieder aktiv setzen funktinierts wieder.

Schönen Gruß
Egon

Ich mach heute Abend Mal Screenshot s.

Hallo Helmut
Vielen Dank für das Script. :smiley:
Muss ich noch testen…
Hatte mit den 2 Stromzählern zu „kämpfen“
@Nall-chan hat mir prima geholfen
Schönen Gruß
Egon

hier sind noch meine Einstellungen…

expand

misc

Hallo Mastermind1
Vielen Dank für die Mühe. :beer: :beer: :beer:
Habs genauso eingestellt wie du.
Leider verliert der Client Socket Modbus immer noch die Verbindung zu Symcon wenn ich den Netzstecker kurz ziehe und wieder in den Adapter stecke.
Nach deaktivieren des Clients und wieder aktivieren funktionierts wieder.
Muss also an der Client Schnittstelle liegen…
Schönen Gruß :smile:
Egon

Wird denn die Schnittstelle korrekt als „fehlerhaft“ markiert? Wir haben dies Thema noch offen bei dem auf dem RPi solche Abbrüche erst sehr verzögert bemerkt werden: Client Socket - Verhalten im Fehlerfall Dies scheint aber mein Linux Problem als ein IP-Symcon Problem zu sein.

paresy

Hallo Paresy
Nach Stecker ziehen am Adapter (Stromausfall) bleibt die Schnittstelle Aktiv-geöffnet . Wird nicht rot. Meldet keinen Fehler.
Stecker wieder rein, Daten werden nicht mehr aktualisiert.
Nach deaktivieren der Schnittstelle dann wieder aktivieren kommen wieder Daten.

Ich habe mal den Versuch mit dem Homematic Socket gemacht:
Stecker ziehen, Schnittstelle meldet Fehler. =Korrekt
Stecker wieder rein, Schnittstelle wieder o.K. Verbindung zur OCCU wieder O.K.

Schönen Gruß
Egon