Schneider M340 Modbus TCP

bfunk

Level-1
Beiträge
3
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Moin,
ich muss von einer S7-CPU eine verbindung mit meiner Schneider M340 CPU aufbaunen.
Die kommunikation laeuft ueber eine ModBUS TCP (Schneider seite) / Profinet (S7-Seite) Gateway.
Die Schneider CPU ist der ModBus TCP server und das Gateway der Client.
Bei einer simulation der Schneider CPU durch ein Raspberry Pi mit Codesys funktioniert das system fehlerfrei.
Es muessen binaere und worte ausgetauscht werden, auf dem Gateway werden die Binaeren Werte als Coils bzw. status projektiert und die worte als Holding- / Input register.

Nun behauptet die Schneider-Seite dass ihr CPU nur holding-Register koennte (sowohl lesend als auch schreibend) koennt ihr mir sagen ob das so stimmt?
Sollte das nicht so sein, koennt ihr mir einen Tip geben wie das auf der Schneider seite geloest werden kann / muss?

Mfg
Bjoern Funk
 
Nun behauptet die Schneider-Seite dass ihr CPU nur holding-Register koennte (sowohl lesend als auch schreibend)
Ist das nicht egal, ob die sich Holding- oder Input-Register nennen? Was geht denn nicht?

Alternativ: anstatt dem Profinet/ModbusTCP-Gateway könnte Deine S7 vielleicht direkt per ModbusTCP mit der Schneider CPU kommunizieren?

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Moin Harald,

nein, Holding- und input register sind lt. spezifikation bei ModBus-TCP etwas unterschiedliches (Input-register koennen vom Client nur gelesen, Holding-register gelesen und geschrieben werden). Die input-Register wie Holding register zu behandeln waere auch das grosse Problem.

Die groesseren Probleme liegen in den Binaeren Signalen. Wenn die als Holding-Register gelesen / geschrieben werden gibt es einen Byte-Swap.
Da die Siganle in der S7 als Binaere EA genutzt werden wuesste ich so nicht, wie ich das abfangen koennte ohne den umweg ueber Merker oder einen zwischen-DB zu gehen. Dieser umweg wuerde jedoch viel umschreibungen im S7-Programm bedeuten.

Die S7 direkt via ModBus mit der Schneider kommunizieren zu lassen ist leider auch keine Option (es wird kein TIA verwendet, die S7-CPU ist von VIPA und die Schneider CPU (also die Modbus Seite) liegt in einem anderen Subnet.

Bjoern
 
Hi ruf doch einfach mal bei Schneider Electric an. Die werden dir da schon eine auskunft erteilen können. Ansonsten musst du das eine Bit halt aus maskieren und nur das beobachten. Oder halt einen vergleicher nehmen wenn komischer wert 1 dann aus wenn komischer wert 2 dann ein. Kann ja keiner was dafür das Siemens eine komische word order hat.
 
wenn die Schneider als Server konfiguriert ist, dann muss alles von der S7 Seiter abgefragt / gesetzt werden.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Nun behauptet die Schneider-Seite dass ihr CPU nur holding-Register koennte
Da hat sie recht.
M340 als Server - hier sind nur Register ala %MW konfigurier bar - also Holding.
M340 als Client - hier sind lt. Schneider Holding Register möglich. Mit etwas mehr Programmierung ist auch die Abfrage von Inputregistern und Coils möglich.
 
Zurück
Oben