Sonstiges Modbus TCP Störungen mit S7-1200 im Netzwerk

TIAnoob93

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

ich versuche aktuell für ein Projekt eine S7-1200 als Modbus Client und/oder Server zu betreiben. Das ganze dient Versuchsaufbauten.

Aktuell liegen 3 Dinge auf einem Switch (Weidmüller IE-SW-EL08-8TX [Part No. 2682140000])
Mein Laptop (192.168.0.21)
Modbus Server (192.168.0.100)
S7-1200 (192.168.0.20)

Wenn ich von meinem Laptop über das Programm QModMaster versuche vom Modbus Server Werte auszulesen oder zu schreiben, funktioniert das nur wenn die SPS nicht auf dem Switch hängt. Ob Sie in RUN oder STOP steht ist irrelevant. Ein Lesen und schreiben funktioniert aus der SPS heraus auch nicht, das kann aber auch an einem unfertigen Programm liegen. Jetzt habe ich aber die Befürchtung, dass das auch von der SPS nicht geht solange ein dritter Teilnehmer auf dem Switch ist.

Einen anderen unmanaged Switch habe ich auch schon probiert (Netgear ProSAFE GS108).

Ich kann den Modbus Server anpingen, sowohl über CMD als auch über QModMaster und die Befehle kommen auch an, scheitern dann aber bei der Verarbeitung oder bei dem rückschicken. Ich kann gerade von meinem Firmenrechner keinen Log bzw. keine Bilder anhängen, das reiche ich im nächsten Post nach.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wenn ich von meinem Laptop über das Programm QModMaster versuche vom Modbus Server Werte auszulesen oder zu schreiben, funktioniert das nur wenn die SPS nicht auf dem Switch hängt.
Hat die SPS wirklich die IP 192.168.0.20? Hardware Konfig ist an die SPS übertragen? SPS mal ausgeschaltet?
Oder gib mal dem Modbus Server eine andere IP, z.B. 192.168.0.101 - geht es dann?
 
Hat die SPS wirklich die IP 192.168.0.20? Hardware Konfig ist an die SPS übertragen? SPS mal ausgeschaltet?
Oder gib mal dem Modbus Server eine andere IP, z.B. 192.168.0.101 - geht es dann?
Vielen Dank für die fixe Antwort.

Ich habe in der Zwischenzeit selbst rumprobiert, aber nicht gedacht das ich damit Erfolg haben werde.
Es lag daran dass mein Modbus Server die Rückmeldung für die Befehle ins Nirvana schickt. Das sieht man auch in den Logs.
Die Lösung dafür war es die IP-Adresse des Modbus Client als Gateway im Modbus Server zu hinterlegen. Jetzt kann ich QModMaster und auch die S7 nutzen um zu lesen und zu schreiben.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Warum das so ist kann ich nicht genau sagen bis ich mit jemandem aus der Softwareentwicklung gesprochen habe.
Es kann ein Bug sein oder tatsächlich "stümperhaft" programmiert.
Die Modbus Schnittstelle ist hier neu implementiert worden und ich möchte gerne ein Prüfumgebung schaffen wo es auch genau um diese Dinge geht.
Wir arbeiten uns von der Elektronik Seite an die Entwicklungsseite heran. Von der Programmierung an sich, habe ich genau wie von SPS und TIA, leider nur absolutes Basis Wissen. Aber ich nehme das was ich bekomme und arbeite damit.
 
Soll dieser Modbus Server tatsächlich nur mit einem einzigen vorher festgelegten Modbus Client arbeiten können? Das passiert nämlich, wenn man die IP-Adresse des Clients als Gateway eintragen muß...
 
Ich stimme @PN/DP hier zu. Das das Eintragen eines Wertes beim Gateway das Problem behebt macht keinen Sinn, da, alle Teilnehmer im selben Netz hängen, es sei denn Du hast eine ziemlich schräge Subnetzmaske. Welche ist es denn und ist diese bei allen Teilnehmern gleich? Ein Gateway muss nur angegeben werden, wenn man Teilnehmer in einem anderen Netz erreichen möchte, dafür müssen dann aber auch noch andere
Voraussetzungen erfüllt sein.
Was passiert, wenn Du beim Gateway 0.0.0.0 einträgst?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich stimme @PN/DP hier zu. Das das Eintragen eines Wertes beim Gateway das Problem behebt macht keinen Sinn, da, alle Teilnehmer im selben Netz hängen, es sei denn Du hast eine ziemlich schräge Subnetzmaske. Welche ist es denn und ist diese bei allen Teilnehmern gleich? Ein Gateway muss nur angegeben werden, wenn man Teilnehmer in einem anderen Netz erreichen möchte, dafür müssen dann aber auch noch andere
Voraussetzungen erfüllt sein.
Was passiert, wenn Du beim Gateway 0.0.0.0 einträgst?
Ja diese grundsätzlichen IP Netzwerk Sachen weiß ich. Ergibt für mich auch keinen Sinn, weil wir wie du schon sagtest das Subnetz nicht verlassen.

Wir befinden uns im IP-Adressbereich 192.168.0.X mit der Subnetzmaske 255.255.255.0, also alles Standard.
Ich kann aktuell auch vom Laptop (also QModMaster) schreiben und lesen. Heißt, es reicht dem Server wenn irgendein Gateway drin steht.

0.0.0.0 funktioniert ebenfalls. Ich verstehe da, genau wie Ihr, den Sinn noch nicht ganz hinter aber ich gebe es mal an die Entwicklung weiter.

Soll dieser Modbus Server tatsächlich nur mit einem einzigen vorher festgelegten Modbus Client arbeiten können? Das passiert nämlich, wenn man die IP-Adresse des Clients als Gateway eintragen muß...

Nein, der Server soll grundsätzlich mit allem zusammenarbeiten können was Modbus TCP fähig ist.
 
0.0.0.0 funktioniert ebenfalls. Ich verstehe da, genau wie Ihr, den Sinn noch nicht ganz hinter aber ich gebe es mal an die Entwicklung weiter.
Ich vermute, dass Eure Entwicklung eine fehlende Angabe beim Gateway nicht verarbeiten kann und zumindest 0.0.0.0 zwingend eingegeben werden muss. Ob man das jetzt als Fehler betrachtet ist Definitionssache, unschön ist es aber schon.
 
Zurück
Oben