Waelder
Level-2
- Beiträge
- 977
- Reaktionspunkte
- 121
-> Hier kostenlos registrieren
Hallo zusammen,
ich habe eine Frage zwecks Datenübertragung bei Modubus. Vorab die Steuerung ist in Betrieb und funktioniert seit x Jahren.
Meine SPS ist eine IM151-8PN CPU wir Kommunizieren per Modbus TCP mit Client-Server-Kommunikation meine SPS ist Server.
Gestern musste ich auf Service, da anscheinend ein empfangendes "binär" Signal über den Bus gefehlt hat. Ich habe testweise
auf meiner SPS Seite das Signal direkt im DB auf 1 gesetzt um zu prüfen ob meine Steuerung dann wieder funktioniert (tat sie auch)
Ich bin es normalerweise gewöhnt, wenn ich das "gefakte" Bit wieder normal laufen lasse, dass der Bus beim nächsten einlesen dieses Bit wieder in seinen
auf dem Bus befindlichen Zustand versetzt. Aber das Bit blieb auf 1. Das hat mich dann doch verwundert. Nach mehrerem Probieren auch mit
anderen Signalen habe ich festgestellt, dass sich auf meiner Empfangsseite die Werte nur wieder zurück ändern wenn mein Partner auch die Werte ändert.
Beispiel war ein Integer Temperaturwert. Den habe ich auf meiner Empfangsseite von 121 auf 135 gesetzt. Der blieb dann so lange 135 bis die Partnerseite
einen anderen Wert geschrieben hatte.
Für mich sieht das so aus als ob in der Kommunikation immer der der neue Daten in das Register schreibt diese auch beim nächsten Buszyklus im Partner ändert.
Alle anderen Empfangswerte sind aber sozusagen anpassbar solang sich der Wert auf der Gegenseite nicht ändert.
Ist diesem Wirklich so ? Mir geht es da eigentlich um das Verständnis.
Meine Datenbausteine sind wie folgt in der SPS
DB300 Sende Bit
DB301 Sende Integer
DB302 Empfang Bit
DB303 Empfang Integer
lt. Wizzard ist alles wie folgt eingestellt :

Danke fürs Lesen und eure Antworten.
Wälder
ich habe eine Frage zwecks Datenübertragung bei Modubus. Vorab die Steuerung ist in Betrieb und funktioniert seit x Jahren.
Meine SPS ist eine IM151-8PN CPU wir Kommunizieren per Modbus TCP mit Client-Server-Kommunikation meine SPS ist Server.
Gestern musste ich auf Service, da anscheinend ein empfangendes "binär" Signal über den Bus gefehlt hat. Ich habe testweise
auf meiner SPS Seite das Signal direkt im DB auf 1 gesetzt um zu prüfen ob meine Steuerung dann wieder funktioniert (tat sie auch)
Ich bin es normalerweise gewöhnt, wenn ich das "gefakte" Bit wieder normal laufen lasse, dass der Bus beim nächsten einlesen dieses Bit wieder in seinen
auf dem Bus befindlichen Zustand versetzt. Aber das Bit blieb auf 1. Das hat mich dann doch verwundert. Nach mehrerem Probieren auch mit
anderen Signalen habe ich festgestellt, dass sich auf meiner Empfangsseite die Werte nur wieder zurück ändern wenn mein Partner auch die Werte ändert.
Beispiel war ein Integer Temperaturwert. Den habe ich auf meiner Empfangsseite von 121 auf 135 gesetzt. Der blieb dann so lange 135 bis die Partnerseite
einen anderen Wert geschrieben hatte.
Für mich sieht das so aus als ob in der Kommunikation immer der der neue Daten in das Register schreibt diese auch beim nächsten Buszyklus im Partner ändert.
Alle anderen Empfangswerte sind aber sozusagen anpassbar solang sich der Wert auf der Gegenseite nicht ändert.
Ist diesem Wirklich so ? Mir geht es da eigentlich um das Verständnis.
Meine Datenbausteine sind wie folgt in der SPS
DB300 Sende Bit
DB301 Sende Integer
DB302 Empfang Bit
DB303 Empfang Integer
lt. Wizzard ist alles wie folgt eingestellt :

Danke fürs Lesen und eure Antworten.
Wälder
Zuletzt bearbeitet: