WAGO PFC100 750-8100 & Buskoppler 750-352 ModbusTCP

THDstud

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

ich arbeite an der Hochschule an einem Projekt mit einem Modell der Fa. Christiani:

Hochregallager: http://www.christiani.de/product_info.php/cPath/611_387_388/products_id/3007

Die Positionserkennung des Krans erfolgt hier jeweils über Löcher in den Schienen der Horizontal-/Vertikalachsen und Lichtschranken. Meine Idee war daher bei Impulsen der Lichtschranken einen Zähler hochzählen zu lassen und einen Soll-Ist-Vergleich durchzuführen. Daraus resultiert wie weit der Kran horizontal und vertikal verfahren muss, um ein bestimmes Regalfach anzufahren.

Problem: Solange meine IOs direkt an der Steuerung hängen, klappt alles wunderbar. Sobald diese aber am Buskoppler hängen und per ModbusTCP mit der Steuerung kommunizieren, werden manche Zählimpulse "übersprungen" bzw. kommen nicht bei der Steuerung an. Am Buskoppler sehe ich die Impulse aber. Habe sie auch mit einem Oszi gemessen, Dauer ca. 90ms. Meiner Meinung nach muss es also an der Modbus-Verbindung haken oder eventuell an der Zykluszeit/Priorität der Task für das Zähl_PRG ?! :confused:

Ich verwende e!COCKPIT als IDE. Die Busverbindung habe ich über den enthaltenen Feldbuskonfigurator eingestellt. Trotz zahlreicher Versuche die Konfiguration anzupassen kein Erfolg...

Ich hoffe ihr könnt mir weiterhelfen! :icon_rolleyes:
 
Hi,

ohne mich jetzt genau mit e!Cockpit auszukennen vermute ich mal, dass es an deiner Modbus Verbindung liegt. Modbus ist KEIN Echtzeit Kommunikationsprotokoll im gegensatz zu EtherCat oder Profinet. Die Zykluszeit bei Modbus (Vom ersten Modbus Befehl bis zum letzten Befehl um deine Komplette IO zu kommunizieren) kann mitunter ziemlich hoch werden (mehrere Hundert ms bis zu s). Bedeutet wenn genau zu der Zeit wo der Impuls anliegt die IO Karte nicht gelesen wird, bekommst du das in der Steuerung nicht mit. Modbus ist ein Protokoll welches vor allem in der Gebäudeautomatisierung verwendung findet, dort können dann auch die Zykluszeiten hoch sein.

Lösungsvorschläge:
- auf dezentrale IO verzichten und diese Module direkt an die Steuerung hängen oder
- Versuchen die Modbus Zykluszeit zu reduzieren
- diese spezielle IO Karte öfters abfragen (Zälhkarte -> IOKarte 1 -> Zählkarte -> IOKarte 2 ...)
- ein Echtzeitkommunikationsprotokoll einsetzen z.B. Profinet oder EtherCat. Dazu gibt es m.E. auch Buskoppler von Wago

Gruß
Robert
 
Zurück
Oben