Dieser Artikel zeigt, wie die Modbus RTU-Kommunikation zwischen einer Siemens S7-1200 PLC und einem T6-Treiber eingerichtet wird.
- Hardware:
- S7-1200 PLC: CPU 1215C DC/DC/DC
- CM1241: RS422/485
- T6: T6-1000RS, T6M80-1000H2A3-M17S
- 24V Netzteil: S-150-24
- Übersicht:
Die S7-1200 PLC fungiert als Modbus RTU Master und der T6-Treiber als Modbus Slave. Die PLC liest den Motorpositionsparameter vom T6-Treiber.
- Implementierungsschritte:
- Schritt 1: T6-Treiberparameter konfigurieren
| Parameter | Einstellung |
|---|---|
| Pr5.29 = 4 | Parität: Keine, Datenbits: 8, Stoppbits: 1 |
| Pr5.30 = 6 | Baudrate: 115200 |
| Pr5.31 = 1 | RS485 Slave-Adresse: 1 |
- Schritt 2: Modbus RTU Kommunikationsmodul konfigurieren

- Schritt 3: Systemspeicher aktivieren
Im Projektbaum PLC_1 auswählen und mit Rechtsklick Eigenschaften öffnen. Im Eigenschaftenfenster zu System und Taktmerker navigieren und das Kontrollkästchen Systemmerkerbytes aktivieren aktivieren.

- Schritt 4: MB_COMM_LOAD Anweisung aufrufen
Den Main [OB1]-Baustein öffnen. Zu Anweisungen → Kommunikation → Kommunikationsprozessor → Modbus navigieren und die MB_COMM_LOAD Anweisung wie unten gezeigt in das Programmsegment ziehen.

- Schritt 5: Daten-Sende- und Empfangspufferbereiche erstellen
Im Projektbaum Neuen Baustein hinzufügen → Datenbaustein (DB) → OK auswählen, wie unten gezeigt. Nach dem Hinzufügen des neuen Bausteins die Option Optimierter Bausteinzugriff deaktivieren und die Daten-Sende- und Empfangspufferarrays definieren.

- Schritt 6: MB_MASTER Anweisung aufrufen
Den Main [OB1]-Baustein öffnen. Zu Anweisungen → Kommunikation → Kommunikationsprozessor → Modbus navigieren und die MB_MASTER Anweisung wie unten gezeigt in das Programmsegment ziehen.

In dieser Anweisung MB_ADDR (Slave-Adresse) auf 1 und MODE auf 0 setzen, wodurch der Master in den Lesemodus versetzt wird. Die DATA_ADDR Startadresse ist 424620. Diese Adresse entspricht dem Parameter Pr8.43 (Motorposition) für die RS485-Kommunikation. Die Modbus-Registeradresse für Pr8.43 ist 0x602B, was dezimal 24619 entspricht. Addiert man den Holding-Register-Offset des T6-Treibers von 400001, ergibt sich: 24619 + 400001 = 424620.
- Schritt 7: Programm ausführen und Pr8.43 lesen
Im PLC-Programm sind die empfangenen Daten 0x1A9D, was dezimal 6813 entspricht. Am T6-Treiber überprüfen, dass Pr8.43 = 6813, um zu bestätigen, dass die Daten korrekt gelesen wurden.
- Zusammenfassung
Dieser Artikel zeigt eine grundlegende Modbus RTU-Kommunikationseinrichtung zwischen der Siemens S7-1200 PLC und dem T6-Treiber. Der gleiche Ansatz kann für die Kommunikation zwischen der S7-1200 und anderen StepperOnline-Treibern angepasst werden.