Pokeys: IPS Watchdog, wie geht sowas?

Hallo zusammen,

ich versuche mich anhand einigen Beispielen hier aus dem Forum mit der Poblocks-Programmierung. Mein Ziel soll es sein, die Warmwasser-Steuerung in IPSymcon zu realisieren.

Ich habe aber eine Frage, ich habe hier aus dem Forum eine Lösung gefunden, diese sieht in etwas so aus:

Wenn ich das Richtig sehe, wurde ein Digitial-IN (From 1 = Pin 39) genutzt um diese Periodisch mit IPS zu schalten.

Die Frage ist nur wie? Ich dachte zuerst an soetwas hier:

ModBus_WriteCoil(41704 /*[PoKeys56E\Pin 39]*/, true);

Aber es passier nichts. Als Schreibadresse habe ich in der Instans die 38 und die Leseadresse 0 (hatte auch 38 getestet), jeweils passiert aber genau, gar nichts.

Wo habe ich den Denkfehler?

Vielen Dank für Denkanstösse

Der Denkfehler liegt darin, dass ein Eingang nicht von IP-Symcon bzw. so nicht geschaltet werden kann.

Es geht schon, wenn man einen Eingang erzeugt, den Hakken bei Init NICHT setzt und den gleichen Pin als Ausgang mit Hakken bei Init dort aber setzt.

Der Ausgang läßt sich dann schalten und der „Eingang“ geht dann mit.

Anbei eine Watchdogschaltung, IPS muß Ausgang Pin31 = Modbus Adresse 30 innerhalb gewisser Zeit Schalten und ausschalten.

Wenn dieses zyklische Reseten des Zählers im Pokeys ausbleibt, nimmt zB ein Relais am Ausgang Pin32 dem Pokeys den Saft weg oder löst anders eine Reset aus.

Gruß Helmut

watchdog.zip (1003 Bytes)

Hallo Helmut,

danke für den Denkanstoss, ich glaub ich war zu lange mit dem Kram beschäftigt, gerade kam mir die Lösung wie man es auch anders lösen kann.

Man nehme ein Shared 1-Bit und nutzt einen freien Shared-Slot um diesen mit IPSymcon periodisch zu beschreiben.

In IP-Symcon lege ich eine Instanz an, nehme den Punkt „Status emulieren“ raus und nutze folgendes Script welches innerhalb einer Minute bspw ausgeführt wird

ModBus_WriteRegisterWord(56781  /*[PoKeys56E\Shared Slot 3]*/, 1);
ModBus_WriteRegisterWord(56781  /*[PoKeys56E\Shared Slot 3]*/, 0);

Läuft :wink:

Mit freundlichen Grüßen
Kris