Übersicht

Die TwinCAT SPS Bibliothek Modbus RTU bietet Funktionsbausteine zur seriellen Kommunikation mit Modbus-Endgeräten.

Typische Endgeräte sind Bedienterminals, die über eine serielle RS-232, RS-422 oder RS-485 Schnittstelle an eine TwinCAT Steuerung angeschlossen werden und über einen Modbus-Treiber verfügen. In diesem Fall ist die TwinCAT-SPS ein Modbus-Slave und das Bedienterminal ein Modbus-Master. Der Programmieraufwand auf der SPS-Seite ist in dieser Konfiguration sehr gering.

Alternativ stehen in der Bibliothek Modbus-Master-Funktionen zur Verfügung, mit denen die SPS ein oder mehrere Modbus-Slaves ansprechen kann. Diese Konfiguration ist seltener anzutreffen und auch weniger zu empfehlen, weil der Programmieraufwand höher ist.

Unterstützte TwinCAT Steuerungen

Unterstützte Schnittstellen

Randbedingungen

Das Modbus-Protokoll definiert ein exaktes Timing, so sollen z. B. alle Zeichen eines Telegramms lückenlos übertragen werden. Da die Kommunikation Modbus RTU auf einer SPS-Steuerung realisiert wird, kann wegen der zyklischen Abarbeitung des SPS-Programms, dieses exakte Timing nicht garantiert werden. Die meisten Endgeräte sind sehr tolerant und verhalten sich problemlos, falls kurze Zeitlücken zwischen den Zeichen auftreten. Im Einzelfall muss das Verhalten des Endgerätes überprüft werden.

Bei einer EL60x2 ist der zweite Kanal nicht für ModbusRTU-Kommunikation geeignet, da dieser Low Prior bearbeitet wird und dadurch die Frames mit Lücken versendet, was wiederum die Gegenstelle als Frame Error detektieren könnte.

Übersicht 1:

Bei einigen seriellen Schnittstellen Klemmen kann ein Interner Buffer vor dem Senden gefüllt werden (Option kontinuierliches Senden). Die Bibliothek ModbusRTU kann diese Funktion verwenden, wenn dies in der entsprechenden seriellen Klemme eingestellt ist. Zum Beispiel kann bei der KL6031 mit dem Konfigurationsbaustein KL6configuration der ContinuousMode aktiviert werden (Register 34 Bit 6). Damit werden dann bis zu 128 Byte in den internen Buffer der Busklemme gelegt und kontinuierlich gesendet.

Weiterführende Dokumentation

www.modbus.org