Kommunikationsmodul / RS485

Robsch77

Level-1
Beiträge
15
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Miteinander,

Ich habe bei einer Anlage ein Kommunikationsmodul PtP (6ES7 137-6AA00-0BA0) verbaut und muss damit von mehreren Sensoren aktuelle Daten über eine serielle RS485 Schnittstelle und mittels ASCII Telegramm abfragen. Dazu muss ich zum Sensor eine "Anfrage Telegramm" senden und der Sensor gibt mir den aktuellen Wert zurück - mit einem Sensor funktioniert es einwandfrei!
Jedoch habe ich Probleme damit mehrere Sensoren abzufragen - kann mir jemand Tipps geben wie ein vernünftiges Handling zur Abfrage von mehreren Sensoren programmtechnisch aussehen soll.

Muss ich dazu eine Schrittkette programmieren die die Sensoren nacheinander abfragt...? oder gibt es dazu auch eine elegantere Lösung...?

Vielen Dank und Grüße aus Österreich
 
Ist das Modbus Protokoll? Oder was spezielles?
Das wichtigste bei RS485-Bus: die Sensoren reihum nacheinander abfragen. Also vollständige Frage/Antwort-Sequenz inkl. eventuell Timeout, dann nächster Teilnehmer/Slave.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Guten Morgen, was ich bis jetzt herausgefunden habe ist es ein normales ASCII Protokoll über eine RS485 Schnittstelle.
Wie sieht bzw. macht man eine vernünftige Abfrage von mehreren Sensoren, damit ich auch die Zuordnung von empfangenen Istwert zu Sensor sicherstellen kann...?
 
Bei den Sensoren handelt es sich um die Type MPT 200 (PT R40 150) und CPT 200 (PT R36 130 A) von Pfeiffer. Wie gesagt die Abfrage funktioniert nur tue ich mich schwer eine vernünftige Abfrage von mehreren Sensoren programmtechnisch hinzubekommen - darum wäre ich für Tipps und Vorschläge dankbar.

Ich verwende dazu die Bausteine P2P Send und Receive
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Bei den Sensoren handelt es sich um die Type MPT 200 (PT R40 150) und CPT 200 (PT R36 130 A) von Pfeiffer. Wie gesagt die Abfrage funktioniert nur tue ich mich schwer eine vernünftige Abfrage von mehreren Sensoren programmtechnisch hinzubekommen - darum wäre ich für Tipps und Vorschläge dankbar.

Ich verwende dazu die Bausteine P2P Send und Receive
Ich weiß jetzt nicht genau wo Dein Problem liegt. Wenn die Abfrage eines Sensors funktioniert, wird auch die Abfrage mehrerer Sensoren funktionieren. Das Pfeiffer Vacuum Protokoll enthält eine Adresse (Byte 1-3) für jeden Sensor und über diese sprichst Du jeden einzelnen Sensor an.
Wo genau hängt es denn bei Dir?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Du hast doch bestimmt schon eine Schrittkette für die Abfrage eines Sensors. In der Schrittkette machst du die Sensoradresse (RS485-Busadresse) im Protokoll und die Datenablage in der SPS (Index oder Pointer) variabel und rufst dann dieselbe Schrittkette immer wieder auf mit einem Sensorzähler oder Index, der sich merkt, für welchen Sensor die Schrittkette gerade abgearbeitet wird. Zuerst mit den Adressen für Sensor_1, dann für Sensor_2, dannn ... Nach der Abfrage des letzten Sensors beginne wieder bei Sensor_1. Da bietet es sich an, mit einem Array of Struct (z.B. UDT) zu arbeiten. Das Array enthält für jeden Sensor einen eigenen Eintrag, der die Busadresse und die Daten enthält. Bei nur wenigen Sensoren kann man anstatt dem Array auch mit CASE selektiv die Busadresse und Daten-Zieladresse auswählen.
 
Zurück
Oben