# 750-841 Modbus Adresse



## JoTec2002 (3 Februar 2022)

Hallo,

ich habe einen WAGO 750-841 Ethernet Controller.

Bisher wurde dieser nur über Codesys gesteuert/ das Programm verwaltet.

Ich würde nun gerne die Werte der Sensoren per Modbus auslesen. (Damit ich sie in Home Assistant verwenden kann)
Die Sensoren mit der Adresse (%IW0, %IW1, …) kann ich problemlos auslesen. Ich habe nun allerdings das Problem, dass auf die Adressen (%IX100.0 - %IX102.15) zugegriffen wird. In der Bedienungsanleitung (Link unten Kapitel 12.3.4) fangen die %IX Adressen allerdings erst bei %IX256.0 an.

Und ja ich weiß, dass über IX einzelne Bits ausgelesen werden.



			https://www.wago.com/medias/m07500841-00000000-0de.pdf?context=bWFzdGVyfGRvd25sb2Fkc3w4MzMzNzY0fGFwcGxpY2F0aW9uL3BkZnxoYWQvaDRiLzEyMjAwNjM0OTc0MjM4L20wNzUwMDg0MV8wMDAwMDAwMF8wZGUucGRmfGY0NGE1MTZhYmUyNWI2MzlmNmYwNWQ4MjNiZjUwNGQ2NzkyYjE3NjRkODVhOGQ1ZGJmMjdlNzkzZDA4N2M2ZTQ&attachment=true#page168
		


Viele Grüße und Danke schoneinmal für die Hilfe


----------



## KLM (3 Februar 2022)

Moin, woher nimmst Du die Erkenntnis, dass %IX Adressen bei 256 anfangen und nicht bei 0? Wie sieht denn der Knotenaufbau aus?


----------



## Oberchefe (3 Februar 2022)

Wenn du tatsächlich über Modbus einen Eingang des Controllers lesen willst, dann findest du den %IX100.x im Bereich

Physical Input Area (2)


Die Physical Input Area (1) beinhaltet die ersten 512 Eingänge, also von %IX0.0 bis %IX32.15
Die Physical Input Area (2) startet demnach mit %IX33.0, dein %IX100.0 sollte also auf Modbus Adresse 33856 liegen (sofern ich mich nicht verrechnet habe).


----------



## JoTec2002 (4 Februar 2022)

Vielen Dank für die schnellen Antworten.

Mir war bewusst, dass die %IX Adressen bei 0 anfangen leider sind in den Tabellen erst die Modbusadressen ab %IX256.0 angegeben. mir war nicht bewusst, dass sich die %IX Adressen bis 256.0 hinter der Beschreibung Physical-Output-Area "verstecken".


Der Knoten sollte folgendermaßen aufgebaut sein: (von links nach rechts)
Controller
5* Modul 750-430 (Adressen %IX100.0 - %IX102.7)
5* Modul 750-530 (Adressen %QX100.0 - %QX101.15)
4* Modul 750-460 (Adressen %IW0 - %IW15)
Endmodul
Bild Address Konfiguration - Dies ist ein Bild von der Konfiguration der Codesys von den Verschiedenen Adressen

Ich habe versucht die Modbus Adressen 33840 - 33896 (Sowohl als Coil als auch als discrete_input) zu lesen (müssten meins Verständnisses nach ja die IX Adressen in irgendeiner Form dabei gehabt haben) leider ohne Erfolg.

Außerdem habe ich versucht die Modbus Adressen 37936 - 38000 (Sowohl als Coil als auch als discrete_input) zu lesen (müssten meins Verständnisses nach ja die QX Adressen in irgendeiner Form dabei gehabt haben) leider auch ohne Erfolg.

Habt ihr noch eine Idee was ich falsch gemacht haben könnte?


----------



## Oberchefe (4 Februar 2022)

> mir war nicht bewusst, dass sich die %IX Adressen bis 256.0 hinter der Beschreibung Physical-Output-Area "verstecken".



Da verstecken sie sich auch nicht, sondern sie sind unter Physical Input Area. Wieso hast du eine Lücke zwischen IW15 und IX100?


----------



## JoTec2002 (4 Februar 2022)

Oberchefe schrieb:


> Wieso hast du eine Lücke zwischen IW15 und IX100?


Das Programm wurde 2004 von jemand anderem geschrieben, ich weiß also leider nicht genau warum da diese Lücke ist.


----------



## KLM (5 Februar 2022)

Der Screenshot sieht für mich so aus, al hätte Dein Vorgänger Variablen deklariert und mit AT auf %I Input-Adressen gemappt. Richtig wäre Programmvariablen auf %M Adressen, also Merker zu mappen.
Zeig doch mal einen Screenshot der Hardware-Konfiguration (offline) und die Liste von oben auch offline.


----------



## JoTec2002 (5 Februar 2022)

Kann ich auch wenn er sie in Codesys mit AT gemappt hat über Modbus trotzdem auf die Werte der Input Adressen zugreifen?


----------



## Oberchefe (5 Februar 2022)

Normalerweise sollte das so aussehen und somit der letzte Digitaleingang bei IX18.7 liegen. Feldbusvariablen wie in deinem Screenshot ist was anderes.


----------



## JoTec2002 (5 Februar 2022)

Oberchefe schrieb:


> Normalerweise sollte das so aussehen und somit der letzte Digitaleingang bei IX18.7 liegen. Feldbusvariablen wie in deinem Screenshot ist was anderes.


Wo genau finde ich dann die Hardwarekonfiguration, weil wenn ich bei mir im Codesys auf "Steuerungskonfiguration" gehe kommt nur die Fieldbuskonfiguration.?


----------



## KLM (5 Februar 2022)

Versuch mal in die Steuerungskonfiguration zu wechseln und dann unter Menü "Extras" die "Standardkonfiguration" neu zu erstellen.


----------



## JoTec2002 (6 Februar 2022)

KLM schrieb:


> Versuch mal in die Steuerungskonfiguration zu wechseln und dann unter Menü "Extras" die "Standardkonfiguration" neu zu erstellen.


Habe ich gemacht die Steuerungskonfiguration ist allerdings komplett leer.

Habe dann versucht den Knoten manuell hinzuzufügen, dabei ist mir Aufgefallen, dass er standardmäßig wieder bei %IX0.0 das zählen anfängt für die Digitalen Bausteine, deshalb habe ich versucht über die Modbus Adressen von Physical Input Area (1) und Physical Output Area (1) auf die Sensoren zuzugreifen was zum Erflog führt. 

Vielen Dank für eure Hilfe.


----------



## Oberchefe (6 Februar 2022)

Ich würde mir aber trotzdem überlegen, ob direkt auf Eingänge zugegriffen werden soll. Im Fall von Hardwareänderungen verschieben sich die Adressen und es muss dann sowohl in der SPS als auch im Modbus-Client geändert werden. Eine Rangieren in der SPS auf Merkeradressen und Zugriff auf diese von Seiten des Modbus-Clients würde das verhindern.


----------



## KLM (6 Februar 2022)

JoTec2002 schrieb:


> Habe ich gemacht die Steuerungskonfiguration ist allerdings komplett leer.


Das ist wie ein Rücksetzen der gesamten Systemkonfiguration. Aber wenn Dir dort ein ganzer Eintrag fehlt, bekommst Du ihn damit zurück. Wenn Du eine gehabt hättest, hättest die vorher exportieren und nach Rücksetzten wieder importieren können. Aber da Dir genau der Teil gefehlt hat ...


----------

