Modbus Kommunitkation über CP343-1

tundgil

Level-2
Beiträge
15
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo, ich versuche eine s7-300 über cp343-1 als Client mit einem Modbus-Simulator (www.plcsimulator.org) als Modbus-Server kommunizieren zu lassen.
Ich benutze die Modbus Version 3.2.
Nach Einbinden der benötigten Bibliotheken und Einstellung der Verbindungen (habe dies aus dem Beispielprogramm angepasst) zeigt mir die Software auch an, dass ich eine Verbindung habe.
Mein Problem ist jetzt, wie müsste ich den OB1 bzw OB100 programmieren, dass er z.B. Daten aus dem Input Register (z.B. Registeradresse 30002) in die DB16 schreibt. In dem Open MODBUS /TCP Handbuch steht das leider nicht so eindeutig beschrieben.

Eine weitere Frage wäre noch, wie genau kann ich die Diagnosemeldungen des FB MODBUS bzw. FB MODB4 auslesen?

Vielen Dank im Voraus für eure Hilfe

Viele Grüße

Tundgil
 
Zuletzt bearbeitet:
Hallo,
hast Du den entsprechenden Dongle für Modbus in Deinem CP stecken und hast Du die entsprechenden Funktinonsbausteine von Siemens installiert?
Wenn ja, dann mußt Du in der Hardwarekonfig für den CP341 die entsprechenden Registerbereiche einstellen.
Danach wird die Kommunikation durch die Verwendung der Siemens-FB's realisiert. Siemens liefert hierzu ein kleines Beispiel-Projekt mit. Wenn Du es genauso realisierst müßte es eigentlich funktionieren.
Achso, Du schreibst von Modbus-TCP, das ist aber über Ethernet. Der CP-341 ist aber seriell für Modbus-RTU.

Gruß Frank
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Frank,

in der Überschrift steht ja, dass es sich um die cp341-1 handelt und die ist definitiv für Ethernet und die Schnittstelle will ich auch nutzen.

Ebenfalls schrieb ich, dass ich die benötigten Bibliotheken installiert habe und das Beispiel als Grundlage für mein Programm genommen habe. Eine Verbindung bekomme ich ja hin. Wie gesagt, ich benutze die Version 3.2 (Version 4.1 ist die aktuellste) von Modbus und da muss ich auch kein Dogle oder ähnliches in die CP stecken.

Was meinst du genau mit Registerbereiche in der Hardware-Konfig einstellen?

Mein Problem liegt meiner Meinung nach in dem OB1.

Ich kann morgen früh vielleicht mal meine OB1 und OB100 posten. Vielleicht kannst du oder andere etwas damit anfangen.
 
Ja, das ist blöd erklärt. Das Ding ist das du das fast von Hand machen musst wenn die SPS der Master sein soll. Umgekehrt ist wesentlich einfacher :D

Aber poste mal deine Bausteine.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo tundgil,
in der Überschrift steht CP343 aber in Deinen beiden Posts schreibst Du vom CP341.
Modbus-TCP habe ich bei S7 noch nicht gemacht.
Soweit ich mich beim CP341 entsinne (Modbus-RTU) mußte in der HW-Konfig auf dem CP341 doppelgeklickt werden. Dann öffnete sich ein spezielles Parametrierfenster für den Modbus (es mußte aber vorher von Siemens alles installiert werden). In einem dieser Karteireiter des Parametrierfensters konnte man entsprechend des Modbus-Befehlscodes entsprechende Datenbereiche z.B. in Form von Datenbausteinen eintragen.
So konnte man z.B. dem Bit- oder Flagbereich einen DB mit Startadresse zuweisen.
Die nachfolgenden Bits wurden einfach nur der Reihe nach angeordnet.
Bei Registern war es das gleiche.

Gruß Frank
 
Was hast Du denn nun? Einen CP343-1 oder einen CP341?
Mit einem CP343-1 kannst Du nur ModbusTCP machen, da brauchst Du keinen Dongle.
Mit einem CP341 kannst Du nur ModbusRTU machen, dafür brauchst Du einen Dongle.

Snape
 
Modbus-TCP über CP343-1

Hallo Leute,

also um alle Missverständnisse aus dem Weg zum räumen:

ich benutze die CP343-1 und will über Modbus-TCP kommunizieren, wobei die SPS als Client fungieren soll.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
CP341 kann nur seriell und nicht TCP. Dann musst Du ModbusRTU (mit Dongle) einsetzen und einen Seriell-/TCP-Konverter einsetzen.
Dann nützen Dir die Bausteine MODBUS und MODB4 überhaupt nichts, weil das die ModbusTCP-Bausteine sind. Und die laufen nur mit einem CP343-1.

Snape
 
Hallo Snape, du hast vollkommen Recht. Die CP343-1 kann nur Ethernet und genau die habe ich auch. Sorry, ich bin ganz durch einander gekommen mit den Typen.

Also nochmal: CP343-1 mit Modbus-TCP
 
OB1 und OB100

hier sind mal meine OB1 und OB100 als pdf. Vielleicht kann jemand damit etwas anfangen und mir weiter helfen.
 

Anhänge

  • OB100.pdf
    19,8 KB · Aufrufe: 42
  • OB1.pdf
    20,1 KB · Aufrufe: 62
Zurück
Oben