TIA CPU300 Modbus TCP 2. Datenbereich ansprechen

Supermario73

Level-2
Beiträge
108
Reaktionspunkte
3
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Automationsgeneinde
Zuerst wünsche ich Euch schöne Weihnachten und bleibt gesund.
Nun zur Frage:
Habe eine Modbus TCP Kommunikation auf einer 300er CPU interne Schnittstelle, data_area_1 funktioniert wunderbar, alle Daten werden gelesen.
Das Problem ist, die Daten aus dem Data_area_2 werden nicht gelesen. Der DB732 ist angelegt (200 DW lang). Muss ich irgendwo die Anzahl der Data_area's parametrieren oder wie wird das Data_area_2 gelesen?

Besten Dank für Euren Input

dataarea.JPG
 
Mit welchem Baustein liest Du die Modbus-Daten? Vermutlich musst Du abwechselnd gegenseitig verriegelt 2 verschiedene Lese-Aufträge ausführen. Oder liegen die Modbus-Register so nahe beieinander, daß Du sie mit nur einem Leseauftrag gemeinsam lesen kannst?

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Harald
Besten Dank für Deine schnelle Amtwort:
Die Kommunikation wird mit dem MODBUSPN Baustein erledigt.
Leider liegen diese zuweit (>125DW) ausseinander. Wie meinst Du dass verschiedene Leseaufträge? Im Modbus Parameter DB haben wir ja die Möglichkeit 8 Datenbereiche anzugeben. Ich rufe den MODBUSPN zyklisch auf, und wenn der Auftrag erledigt ist starte ich einen neuen.

MODBUSPN:

MODBUSPN.JPG

Auftrag starten (s "CONTROL_DAT_WB".ENQ_ENR)

MODBUSPN_1.JPG

Hast Du dazu eine Idee?
Besten Dank für die Hilfe
 
Hast du die Parameter im laufenden Betrieb geändert? Ich meine beim Modbus-Funktionen für die CPUs mit CP musste der Aufruf im OB100 eingefügt werden, und nur im Anlauf wurden die Parameter übernommen. Schau am Besten nochmal ins Handbuch ob dazu etwas steht.
 
Hallo Thomas
Ja habe den 2. Teil im laufenden Betrieb vorgenommen. Habe auch mal einen Warmstart durchgeführt und es wird immer noch nicht gelesen.
Werde es morgen nochmals versuchen, besten Dank für Deinen Tipp.
 
Lege mal versuchsweise alle 8 Datenbereiche in den selben Empfangs-DB. siehe TIA-Hilfe zum MODBUSPN zu den 8 Datenbereichen.
Verwendest Du MODBUSPN V1 oder MODBUSPN V2? (Ich weiß nicht was der Unterschied ist)

Harald
 
Die Datenbereiche aus den data_area werden nicht automatisch gelesen. Das ist "nur" das Mapping, damit der Baustein weiß, in welchen Datenbaustein er welche Modbusregister schubsen oder herholen muss.
Um die Bereiche nacheinander zu lesen oder zu schreiben, musst Du die Runtime-Parameter START_ADDRESS, LENGTH etc. am Modbusbaustein nach jedem Telegramm ändern. Entweder Du baust Dir selber eine Liste zusammen oder Du nimmst den Job_List-Baustein (https://support.industry.siemens.com/cs/ww/de/view/62830463). Der macht genau so eine Auftragsliste.
 
Zurück
Oben