Halllo,
habe eine Beckhoff Steuerung für Heizung, Einzelraumregelung und Lüftung am laufen. Möchte jetzt mit ips visualisieren und mit homematic ein monitoring vom stromverbrauch einbinden.
Ich wollte fragen ob ich bis jetzt alles richtig verstanden habe.
Für die Beckhoff brauche ich noch den modbus server aber keine Bausteine oder??
Wenn ich den modbus server installiert habe muss ich für die adressierung die 4 arrays anlegen.
VAR_GLOBAL
mb_Input_Coils : ARRAY [0…255] OF BOOL;
mb_Output_Coils : ARRAY [0…255] OF BOOL;
mb_Input_Registers : ARRAY [0…255] OF WORD;
mb_Output_Registers : ARRAY [0…255] OF WORD;
END_VAR
welche adressen muss ich dann mit ips abfragen?? funktioniert die abfrage dann schon?? wie finde ich die modbus adresse an der Beckhoff heraus?? Kann ich merker und ausgänge dann abfragen und schreiben??
Hallo andy,
bist du vor 2 Jahren mit Beckhoff und IP-Symcon und somit mit Modbus weitergekommen?
Ich hänge derzeit an der selben Stelle. In Symcon einen offset mit 32768 das klappt, aber ich weiß nicht, wie ich dann in Symcon eine weitere Variablen anlege. Was ich auch vermute ist, dass die Ausgangsbits und und die Words auf den gleichen Bereich zugreifen. Das Geliche gilt für die Eingänge.
Hallo Jürgen,
danke für die schnelle Antwort. Die 32768 kommen von den 8000hex aus Beckhoff.
Heißt das, dass es sich hier, bei allem, also den Coils und den Registern, nur um Merker handelt, die ab 32768 beginnen?
Sprich man muss sich
mal klar sein welche Adresse man für was verwendet und
die Bits, Bytes und … können von beiden Seiten aus beschrieben und gelesen werden
sie liegen alle in dem Bereich ab 8000hex
Es handelt sich somit nicht um Eingänge einer SPS die nur gelesen werden können und Ausgänge, die man in der Regel zuweißt.
Aber wie unterscheide ich in IPS die Input-Coils von den Output-Coils und gleiches mit den Registern?
Ebenso beschäftigt mich die Frage, sind die 1. 16 Coils beginnend bei 32768 nicht auch gleich der Inhalt des 1.Registers?
Da ein Wort gleich 16 Bit sind.
ich habe zwischenzeitlich die Antwort auf meine Fragen herausgefunden.
Was mir schon immer klar war, ist wie ich die einzelnen Coils und Register in Twincat anspreche.
Was mir nicht klar war, ist die Richtung der Inputs und Outputs und somit auch die Anbindung an IPS.
Jetzt die Lösung:
In ein mb_Input_Coils[0…255] schreibt man in Twincat was man in IPS sehen will.
Hier beginnt man in IPS mit den Offset 32768 und zwar mit dem Haken „nur Lesen“.
Aus dem mb_Output_Coils[0…255] liest man in Twincat was man aus IPS erhalten will.
Hier beginnt man in IPS ebenfalls mit den Offset 32768 und zwar „ohne“ den Haken „nur Lesen“.
Gleiches gilt für die Registers.
Somit hat man die bereit angesprochenen 1024 Variablen, die Modbus zur Verfügung stellt.