Der Modbus Überprüfung Sensor ist vielfältig nutzbar und kann umfassend konfiguriert werden.
Dabei gelten folgende Rahmenbedingungen:
- Maximale Abfrage über Einstellung "Adressabfragen" von 20!
- Überstützung der Register FC1 (Read Coils), FC3 (Holding Registers) und FC4 (Input Registers)
Zuerst gilt es mit einem Tool der Wahl herauszufinden welche Werte der Modbus an welcher Adresse ausgibt. Wir empfehlen EasyModbusTCP (Siehe Anhang), da es einfach zu nutzen und frei verfügbar ist. (Im Anhang)
- Daten eintragen
- Connect ausführen
- Danach Adressspanne eintragen und auf die entsprechende Funktion klicken (hier FC3)
Als Beispiel wäre hier für uns der Wert 107, 109 und 110 interessant. Der Sensor ist nun wie folgt analog zu konfigurieren.
- IP und Port eintragen (192.168.91.20 und 502 hier)
- Als "ausgewählte Funktion" Read Holding Registers (FC3) wählen
- Einstellung Adresse und Anzahl von Adressen auf 100 und 20 stellen ( hier würde auch 11 reichen, wenn wir nur an die 110 als Maximum wollen). Bitte die maximale Adressspanne von 20 im Sensor beachten!!
- Unter "Adressabfragen" die entsprechenden Vergleiche anlegen (siehe Abschnitt Adressabfragen)
Adressabfragen
Im folgenden gehen wir näher auf die Möglichkeiten ein die unter der Einstellung "Adressabfragen" eingetragen werden können. In der Einstellung lassen sich bis zu 20 Einträge hinzufügen ( Achtung nicht limitiert durch GUI!)
Jeder Eintrag ist dabei nach dem Format [Adresse] [Operator] [Wert] aufzubauen.
Im Feld [Adresse] sollte dann die gewünschte Adresse eingetragen werden. Hier wäre das 107, 109 oder 110.
Folgende Operatoren können genutzt werden:
- > (größer als) , < (kleiner als)
- != (ungleich), == (gleich)
- >= (größer gleich), <= (kleiner gleich)
- && (und) , || (oder)
Nun legen wir die Vergleiche an für die 3 gewünschten Adressen:
- [107] > 500 ---> Die Adresse 107 muss also einen Wert enthalten der größer 500 ist
- [109] == 455 ---> Die Adresse 109 muss immer den Wert 455 aufweisen
- [110] >=300 && [110] < 500 ---> Die Adresse 110 muss größer gleich 300 und kleiner als 500 sein.
Eine Ausgabe im Sensor sieht dann wie folgt aus, wenn alle Bedingungen erfüllt sind.
Noch eine Anmerkung. Da das Register "FC1 Read Coils" nur boolsche Werte enthält, sähe ein Vergleich dort wie folgt aus:
- [Adresse] == True
- [Adresse] == False
Hier bitte auf die korrekte Schreibweise achten!! (nicht true oder false).