Modbus Adressierung

Hallo liebe Community,

es ist nicht direkt eine Frage zu IPS, sondern eher allgemein zur Modbus Adressierung.
Ich habe folgende Tabelle gefunden, verstehe aber die Abhängigkeiten nicht ganz.
Wenn z.B. %MW0 eine Real (32Bit) ist, wirken sich alle %MX0.0-1.15 (32Bit) auf diese MW0 aus.
Scheinbar wirken sich aber z.B. %MX2.0-3.15 nicht auf MW32 aus (laut Tabelle im gleichen Bereich wie das obere Beispiel)

Könnt ihr mir einen Hinweis geben, wie diese Tabelle zu lesen ist ?
Ich würde natürlich ungern durch fehlerhafte Adressierungen meine Variablen zerstören :slight_smile:

Danke !

Hier ist wsl eine Wago unter Codesys 2.3 im Einsatz.
Ein Real benötigt immer 2 Wörter.
Also wenn du 12288 als Real liest dann kannst du das nächste Real erst bei 12290 lesen.

Ich muss mal schauen ob ich noch eine Variablen Liste aus einem alten Projekt finde, das erklärt es dann besser.

Du musst hier gut aufpassen das sich nichts überschneidet.

Ja, korrekt.
Eine Wago mit Codesys 2.3.

Das ich die nächste Real erst bei 12290 einlesen kann, ist mir bewusst und irgendwie nach der Tabelle noch logisch.
Nur die Überschneidungen mit den Bool`s (%MX) verstehe ich nicht ganz.
Welche %MX überschneiden sich womit.

Über deine Variablen liste würde ich mich freuen.

Modbus.pdf (535,1 KB)
Schau mal die PDF an.
Das ist genau das was du suchst…

Nur zur Info.

Grundsätzlich ist die Info OK.

Es kommt jedoch auf den Controller an, vor allem wenn der neuer ist.
Da stimmt die Adressierung nicht mehr weil die Speicher größer geworden sind und sich
dadurch die Adressierung verschoben hat.

@Lenz

ich habe das vor 10 Jahren mal so gemacht, allerdings würde ich heute mit der Bibliothek arbeiten, nicht mehr rein statisch adressieren.

Ich habe mit der 12288 mit den Coils angefangen

VAR_GLOBAL
(*Globales_IPS*)
(*#####################################################################               Beleuchtung_Wohngeschoss                    ##########################################################################################*)
(*W1_ Wohnzimmer_Beleuchtung*)
	Merker_12288  AT%MX0.0:	BOOL;	(*W1_L1_Schreiben*)
	Merker_12289	  AT%MX0.1:	BOOL;	(*W1_L1_Lesen*)
	Merker_12290	  AT%MX0.2:	BOOL;	(*W1_L2_Schreiben*)
	Merker_12291	  AT%MX0.3:	BOOL;	(*W1_L2_Lesen*)
	Merker_12292	  AT%MX0.4:	BOOL;	(*W1_L3_Schreiben*)
	Merker_12293	  AT%MX0.5:	BOOL;	(*W1_L3_Lesen*)
	Merker_12294	  AT%MX0.6:	BOOL;	(*W1_Std_1_1_Schreiben*)
	Merker_12295	  AT%MX0.7:	BOOL;	(*W1_Std_1_1_Lesen*)
	Merker_12296	  AT%MX0.8:	BOOL;	(**)
	Merker_12297	  AT%MX0.9:	BOOL;	(**)
(*W2_W10_Flur_Beleuchtung*)
	Merker_12298	  AT%MX0.10:	BOOL;	(*W10_L1_Schreiben*)
	Merker_12299	  AT%MX0.11:	BOOL;	(*W10_L1_Lesen*)
	Merker_12300	  AT%MX0.12:	BOOL;	(**)
	Merker_12301	  AT%MX0.13:	BOOL;	(**)
(*W3_Küche_Beleuchtung*)
	Merker_12302	  AT%MX0.14:	BOOL;	(**)
	Merker_12303	  AT%MX0.15:	BOOL;	(**)
	Merker_12304	  AT%MX1.0:	BOOL;	(**)
	Merker_12305	  AT%MX1.1:	BOOL;	(**)
	Merker_12306	  AT%MX1.2:	BOOL;	(*W3_L3_Schreiben*)
	Merker_12307	  AT%MX1.3:	BOOL;	(*W3_L3_Lesen*)
	Merker_12308	  AT%MX1.4:	BOOL;	(*W3_L4_Schreiben*)
	Merker_12309	  AT%MX1.5:	BOOL;	(*W3_L4_Lesen*)
	Merker_12310	  AT%MX1.6:	BOOL;	(**)
	Merker_12311	  AT%MX1.7:	BOOL;	(**)
(*W4_Esszimmer_Beleuchtung*)
	Merker_12312	  AT%MX1.8:	BOOL;	(*W4_L1_Schreiben*)
	Merker_12313	  AT%MX1.9:	BOOL;	(*W4_L1_Lesen*)
	Merker_12314	  AT%MX1.10:	BOOL;	(*W4_L2_Schreiben*)
	Merker_12315	  AT%MX1.11:	BOOL;	(*W4_L2_Lesen*)
	Merker_12316	  AT%MX1.12:	BOOL;	(*W4_L3_Schreiben*)
	Merker_12317	  AT%MX1.13:	BOOL;	(*W4_L3_Lesen*)
	Merker_12318	  AT%MX1.14:	BOOL;	(**)
	Merker_12319	  AT%MX1.15:	BOOL;	(**)
	Merker_12320	  AT%MX2.0:	BOOL;	(**)
	Merker_12321	  AT%MX2.1:	BOOL;	(**)
(*W5_Speis_Beleuchtung*)
	Merker_12322	  AT%MX2.2:	BOOL;	(*W5_L1_Schreiben*)
	Merker_12323	  AT%MX2.3:	BOOL;	(*W5_L1_Lesen*)
(*W6_Buero_Beleuchtung*)
	Merker_12324	  AT%MX2.4:	BOOL;	(*W6_L1_Schreiben*)
	Merker_12325	  AT%MX2.5:	BOOL;	(*W6_L1_Lesen*)
	Merker_12326	  AT%MX2.6:	BOOL;	(**)
	Merker_12327	  AT%MX2.7:	BOOL;	(**)
	Merker_12328	  AT%MX2.8:	BOOL;	(**)
	Merker_12329	  AT%MX2.9:	BOOL;	(**)
	Merker_12330	  AT%MX2.10:	BOOL;	(**)
(*W7_Gaestetoilette_Beleuchtung*)
	Merker_12331	  AT%MX2.11:	BOOL;	(*W7_L1_Schreiben*)
	Merker_12332	  AT%MX2.12:	BOOL;	(*W7_L1_Lesen*)
(*W8_Garderobe_Beleuchtung*)
	Merker_12333	  AT%MX2.13:	BOOL;	(*W8_L1_Schreiben*)
	Merker_12334	  AT%MX2.14:	BOOL;	(*W8_L1_Lesen*)
(*W9_Hauswirtschaft_Beleuchtung*)
	Merker_12335	  AT%MX2.15:	BOOL;	(*W9_L1_Schreiben*)
	Merker_12336	  AT%MX3.0:	BOOL;	(*W9_L1_Lesen*)
(*#####################################################################               Beleuchtung_Aussenbereich                 ##########################################################################################*)
	Merker_12337	  AT%MX3.1:	BOOL;	(*A1_L1_Schreiben*)
	Merker_12338	  AT%MX3.2:	BOOL;	(*A1_L1_Lesen*)
	Merker_12339	  AT%MX3.3:	BOOL;	(*A3_L1_Schreiben*)
	Merker_12340	  AT%MX3.4:	BOOL;	(*A3_L1_Lesen*)
	Merker_12341	  AT%MX3.5:	BOOL;	(*A4_L1_Schreiben*)
	Merker_12342	  AT%MX3.6:	BOOL;	(*A4_L1_Lesen*)
	Merker_12343	  AT%MX3.7:	BOOL;	(*A5_L1_Schreiben*)
	Merker_12344	  AT%MX3.8:	BOOL;	(*A5_L1_Lesen*)
	Merker_12345	  AT%MX3.9:	BOOL;	(**)
	Merker_12346	  AT%MX3.10:	BOOL;	(**)
(*#####################################################################               Beleuchtung_Schlafgeschoss                ##########################################################################################*)
(*S1_Elternschlafzimmer_Beleuchtung*)
	Merker_12347	  AT%MX3.11:	BOOL;	(*S1_L1_Schreiben*)
	Merker_12348	  AT%MX3.12:	BOOL;	(*S1_L1_Lesen*)
	Merker_12349	  AT%MX3.13:	BOOL;	(*S1_Std_1_3_Schreiben*)
	Merker_12350	  AT%MX3.14:	BOOL;	(*S1_Std_1_3_Lesen*)
	Merker_12351	  AT%MX3.15:	BOOL;	(*S1_Std_1_4_Schreiben*)
	Merker_12352	  AT%MX4.0:	BOOL;	(*S1_Std_1_4_Lesen*)
	Merker_12353	  AT%MX4.1:	BOOL;	(**)
	Merker_12354	  AT%MX4.2:	BOOL;	(**)
	Merker_12355	  AT%MX4.3:	BOOL;	(**)
(*S2_Jacobs_Zimmer_Beleuchtung*)
	Merker_12356	  AT%MX4.4:	BOOL;	(*S2_L1_Schreiben*)
	Merker_12357	  AT%MX4.5:	BOOL;	(*S2_L1_Lesen*)
	Merker_12358	  AT%MX4.6:	BOOL;	(**)
	Merker_12359	  AT%MX4.7:	BOOL;	(**)
	Merker_12360	  AT%MX4.8:	BOOL;	(**)
	Merker_12361	  AT%MX4.9:	BOOL;	(**)
(*S3_Antonias_Zimmer_Beleuchtung*)
	Merker_12362	  AT%MX4.10:	BOOL;	(*S3_L1_Schreiben*)
	Merker_12363	  AT%MX4.11:	BOOL;	(*S3_L1_Lesen*)
	Merker_12364	  AT%MX4.12:	BOOL;	(**)
	Merker_12365	  AT%MX4.13:	BOOL;	(**)
(*S4_Elternbad_Beleuchtung*)
	Merker_12366	  AT%MX4.14:	BOOL;	(**)
	Merker_12367	  AT%MX4.15:	BOOL;	(**)
	Merker_12368	  AT%MX5.0:	BOOL;	(**)
	Merker_12369	  AT%MX5.1:	BOOL;	(**)
	Merker_12370	  AT%MX5.2:	BOOL;	(*S4_L3_Schreiben*)
	Merker_12371	  AT%MX5.3:	BOOL;	(*S4_L3_Lesen*)
	Merker_12372	  AT%MX5.4:	BOOL;	(**)
	Merker_12373	  AT%MX5.5:	BOOL;	(**)
(*S5_Kleiderschrank_Beleuchtung*)
	Merker_12374	  AT%MX5.6:	BOOL;	(*S5_L1_Schreiben*)
	Merker_12375	  AT%MX5.7:	BOOL;	(*S5_L1_Lesen*)
(*S6_Flur_OG_Beleuchtung*)
	Merker_12376	  AT%MX5.8:	BOOL;	(**)
	Merker_12377	  AT%MX5.9:	BOOL;	(**)
	Merker_12378	  AT%MX5.10:	BOOL;	(*S6_L2_Schreiben*)
	Merker_12379	  AT%MX5.11:	BOOL;	(*S6_L2_Lesen*)
(*S7_Abstellraum_Beleuchtung*)
	Merker_12380	  AT%MX5.12:	BOOL;	(*S7_L1_Schreiben*)
	Merker_12381	  AT%MX5.13:	BOOL;	(*S7_L1_Lesen*)
(*S8_Kinderbad_Beleuchtung*)
	Merker_12382	  AT%MX5.14:	BOOL;	(*S8_L1_Schreiben*)
	Merker_12383	  AT%MX5.15:	BOOL;	(*S8_L1_Lesen*)
(*D1_Spitzboden_Beleuchtung*)
	Merker_12384	  AT%MX6.0:	BOOL;	(*D1_L1_Schreiben*)
	Merker_12385	  AT%MX6.1:	BOOL;	(*D1_L1_Lesen*)
	Merker_12386	  AT%MX6.2:	BOOL;	(**)
	Merker_12387	  AT%MX6.3:	BOOL;	(**)
	Merker_12388	  AT%MX6.4:	BOOL;	(**)
	Merker_12389	  AT%MX6.5:	BOOL;	(**)

Hallo, könnte mir bitte jemand mit der Modbus Adressierung Hilfestellung geben.
Bekomme immer wieder illegal Data Adresse von Symcon gemeldet.

So schaut die Registerbeschreibung Herstellerseitig aus. Ich habe 128byte im Gateway eingestellt.
Coils schreiben(code 05) von 16384…16567 sowie lesen(01) von 0 bis 183 funktioniert. 184…383 input lesen (02) auch. Ist die Adresse zum Lesen von Analogwerten read input registers (04) dann nicht ab 384 ? In der Hilfe bei Symcon steht bei Code 04: 30001 - 40000

Auf Steuerungsseite funktioniert alles bis Ausgangsadresse A93.7 bzw. A93.0 (Bool Input 183)

Zur Info was die Ursachen waren:
Der Speicherbereich in SPS für die Ausgangswörter war der falsche → max. bis Ausgangswort 127
Und die Modbus Adresse muss dann für Analogsignale Wortweise gezählt werden.
z.B. sind die Single coil(code 05) / single input register (code 02) bitweise zu Zählen: 0-383
Die Analogen Adressen(Code 04) Starten dann aber mit 24 und nicht 384 wie von mir fälschlicherweise angenommen. (in anderer Form so oben beschrieben :banghead:)