Seite 1 von 1

AutoWrite und Error

Verfasst: Donnerstag 4. Dezember 2014, 18:01
von Mike D
Hallo,
ich benutze schon seit einiger Zeit den ModbusClient um mit RTU den PID Regler eines Grätes auszulesen.
Das klappt auch gut, vor allem ist die Umrechnung von Float sehr nützlich.
Jetzt möchte ich mit der Funktion 16 auch Register beschreiben.
Das funktioniert auch, ich bekomme aber trotzdem bei jedem Schreibversuch die Fehlermeldung "Keine Antwort von .... (COM1)".
Verändern von Wartezeiten hat nichts gebracht.

2. Was bewirkt das Auswahlkästchen "AutoWrite"?

Mike

Re: AutoWrite und Error

Verfasst: Montag 8. Dezember 2014, 15:17
von Anton
" Ist ein Fehler aufgetreten, so verändert er den Funktionscode, indem er das höchstwertige Bit des Funktionsfeldes auf 1 setzt. Das Datenfeld enthält Hinweise, welche Register der Slave auslesen soll, und ab welcher Adresse diese beginnen "

Meinst du das?

Re: AutoWrite und Error

Verfasst: Montag 8. Dezember 2014, 16:42
von Mike D
Hallo Anton,
die Frage versteh ich nicht.
Die Schreibfunktion wird ausgeführt, denn das angeschlossene Gerät übernimmt den Wert.
Aber der ModbusClient zeigt die Fehlermelung, sowohl im Anzeigefenster des ModbusClienten im Standalone-Betrieb, als auch am Fehlerausgang des Bausteins in PL.

Mike

Re: AutoWrite und Error

Verfasst: Dienstag 9. Dezember 2014, 10:32
von abacom
AutoWrite:
Normalerweise erfolgt der Triggern mit dem CLK-Signal.
Mit AutoWrite aktiviert man eine zusätzliche Trigger-Möglichkeit. Verändert sich dann
der Eingangswert (String) für ein Schreibregister, wird in diesem Fall intern ebenfalls
die Triggerung ausgelöst.
Typische Anwendung: Werte werden nur "selten" gelesen werden (langsamer CLK).
Schreibwerte sollen hingegen (bei Veränderung) möglichst sofort übertragen werden,
ohne auf den nächsten CLK warten zu müssen.
(Das Beispiel Labjack T7 - DAC macht davon Gebrauch.)

Error:
Hier scheint die obligatorische Antwort auf einen Request nicht zurück zu kommen.
Könnte ein Fehler des Modbus-Gerätes sein.
Oder die Zeit für Response-Timeout ("Auf Antwort warten") ist zu kurz eingestellt.