TIA RS485 Modbus RTU Register in schritten lesen

MLindner

Level-2
Beiträge
22
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo , ich bin so langsam Ratlos wie ich mein Projekt realisieren soll. Ich möchte mit meiner S7-1200 mit cb1421 Modul 114 Halteregister auslesen. Der Slave kann nur 100 Register auf einmal herausschicken. Die Daten die ich bisher bekommen habe habe ich in ein ARRAY 0...113 geschrieben, das hat aus soweit super funktioniert. Da ich bisher relativ wenig Berührungspunkte mit TIA Portal habe würde ich mich über Hilfe freuen. Es müsste also nach dem Register lesen die DATA_ADDR geändert werden und auch der Bereich im ARRAY wo es gespeichert wird.

Screenshot 2023-11-02 073558.png
 
Du kannst dir Variablen im DB anlegen zB und diese dann zum beschreiben benutzen für DATA_ADDR.
Das könntest du in eine CASE Anweisung packen zB und so alles auslesen was du möchtest. Das DONE Signal kannst du dann in der CASE Anweisung dafür nutzen um zum nächsten CASE zu gehen
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Du kannst dir Variablen im DB anlegen zB und diese dann zum beschreiben benutzen für DATA_ADDR.
Das könntest du in eine CASE Anweisung packen zB und so alles auslesen was du möchtest. Das DONE Signal kannst du dann in der CASE Anweisung dafür nutzen um zum nächsten CASE zu gehen
Ja das verstehe ich soweit auch, ich bekomme es nur nicht hin den DATA_PTR "hochzuzählen, füge noch ein Bild von meinem DB ein.
db.png
 
Ich würde mir nach jedem Lesen die Daten separat wegspeichern und vor jedem Lesen einmal das Register, welches am Baustein parametriert ist einmal mit einer leeren Struktur beschreiben. Dann kannst du die beiden separaten Teile über eine FOR Schleife zusammenführen.
 
Zurück
Oben