Der PoKeys57E ist ein Modul mit div I/O's, Fühlern incl der Möglichkeit einer Speicherprogrammierbaren Steuerung (SPS) mit Ethernet Anschluss, dieses Bord wird von PoLabs entwickelt.

Die Key- Features:

 

Bild 1. Quelle: https://www.poscope.com/PoKeys57E

 

Arbeitsschritte für die Kopplung Pokeys ↔ Miniserver mittels UDP


Warum UDP?

Das User Datagram Protocol, kurz UDP, ist ein minimales, verbindungsloses Netzwerkprotokoll, das zur Transportschicht der Internetprotokollfamilie gehört. UDP ermöglicht Anwendungen den Versand von Datagrammen in IP-basierten Rechnernetzen.

Die Entwicklung von UDP begann 1977, als man für die Übertragung von Sprache ein einfacheres Protokoll benötigte als das bisherige verbindungsorientierte TCP. Es wurde ein Protokoll benötigt, das nur für die Adressierung zuständig war, ohne die Datenübertragung zu sichern, da dies zu Verzögerungen bei der Sprachübertragung führen würde. ...

UDP ist ein verbindungslosesnicht-zuverlässiges und ungesichertes wie auch ungeschütztes Übertragungsprotokoll. Das bedeutet, es gibt keine Garantie, dass ein einmal gesendetes Paket auch ankommt, dass Pakete in der gleichen Reihenfolge ankommen, in der sie gesendet wurden, oder dass ein Paket nur einmal beim Empfänger eintrifft. Es gibt auch keine Gewähr dafür, dass die Daten unverfälscht oder unzugänglich für Dritte beim Empfänger eintreffen. Eine Anwendung, die UDP nutzt, muss daher gegenüber verlorengegangenen und unsortierten Paketen unempfindlich sein oder selbst entsprechende Korrekturmaßnahmen und ggfs. auch Sicherungsmaßnahmen vorsehen

Quelle: Wikipedia

Durch die Einschränkung der ModbusTCP Funktion ab Firmware V8.1.11.11 (PoKeys57E 55 - Digitale Ein und Ausgänge, div Fühler via ModbusTCP an LOXONE koppeln. oder Modbus TCP- und RTU-Schnittstelle) ist die Idee entstanden, die Zustände der Eingänge über UDP an den Miniserver zu schicken. Dabei hat man keine Einschränkung wie den minimalen Abfragezyklus von 5s bei ModbusTCP. Für kritische Signale, sollte dies nicht verwendet werden, da es sich hier um ein ungeschütztes Übertragungsprotokoll handelt. (siehe Info oben)

In der aktuellen Version PoKeys v4.2.19 ist das versenden von UDP Daten nur mit Hilfe der Shared Data Slots möglich. Bereits in der aktuellen Beta v4.2.21 sind neue UDP Send Blöcke hinzugekommen und in den neusten Versionen wird man von Loxo Befehle und Abfragen per UDP an das Pokeys57E Modul senden können.

In diesem Artikel werden beide Wege beschrieben falls man die Betaversion nicht nutzen möchte. 


Konfiguration mit Hilfe von Shared Data

Die folgende Konfiguration sollte gewählt werden, wenn man die Betaversion nicht nutzen möchte.

Schritt 1: Installation der PoKeys Konfigurationssoftware

Für die Konfiguration des PoKeys ist eine Konfigurationssoftware des Herstellers nötig und kann von der Herstellerseite heruntergeladen werden:


Schritt 2: PoKey Netzwerkeinstellungen anpassen

Über "Device / Network device settings.." kann eine feste IP und Gateway vergeben werden. Die Gateway IP ist nur wichtig, wenn eine Kommunikation über mehrere Netzwerke stattfinden soll (z.B. Heimnetzwerk → Internet)

Bild 3: Netzwerkeinstellungen vom PoKeys

Schritt 3: I/O Konfiguration anpassen (Optional)

Dieser Schritt ist nicht unbedingt nötig, da die Einstellungen später in einem anderen Programm gemacht werden.

 

Drückt man F4 oder geht auf "Peripherals / Digital Input and Outputs" kann man die Funktion der Eingänge testen. Aktive Eingänge werden Grün dargestellt.

Bild 5: Eingang 2 aktiv       Bild 6: Eingang 2 inaktiv

Schritt 4: PoKeys UDP Kommunikation einstellen

Bild 7: Shared Slot Settings
  1. Add new
  2. Item caption / Data source / Display type / Data unit / Min value einstellen wie auf dem Screenshot. Item caption kann frei gewählt werden.
    Data Source ist ein Shared Memory. Auf diesen kann per UDP zugegriffen werden. Wir beginnen hier mit dem ersten Speicherbereich "Shared slot 1". Dieser wird später in PoBlocks S0 benannt. Leider zählt die Konfigurationssoftware von 1 bis X und PoBlocks von 0 bis X-1.
  3. Acces rights wählt man "Server reports" aus. Ohne diese Einstellung werden keine Werte gesendet.
  4. Über "Send to device (without saving) wird die Konfiguration temporär auf den PoKey gespeichert.
Bild 8: UDP Settings

 

 


Schritt 5: Erster UDP Emfpangstest in der LoxConfig

Verwendete LoxConfig Version: V8.1.11.11

 


Schritt 6: Zustand der Eingänge im Shared Slot ablegen

Bei der PoKeys Installation wird ein Programm "PoBlocks" installiert. Dabei handelt es sich um ein sehr mächtiges Programm. Damit lassen sich per Drag&Drop und grafischer Programmierung Logik-Schaltungen erstellen. Diese können direkt auf den PoKeys übertragen und getestet werden.

 


Schritt 7: Empfangen der Werte in der LoxConfig

Die einzelnen Bytes können mit Hilfe des Binärdekoders in der LoxConfig in einzelne Bits getrennt werden. Bei mir steht jedes Bit für einen Fensterkontakt. Mit diesen Signalen gehe ich dann in die Logik mit verketteten Statusbausteinen. Link ins Forum

 


Konfiguration mit UDP Send Blöcken

Diese Konfiguration ist momentan nur möglich, wenn man die aktuelle Betaversion "PoKeys v4.2.21 beta Configuration and PoBlocks (18.1.2017).exe (38.57 Mb)" von der Downloadseite nutzt.

Schritt 1: Installation der PoKeys Konfigurationssoftware

Kann von oben übernommen werden. Es muss nur v4.2.21 installiert werden.

Schritt 2: PoKey Netzwerkeinstellungen anpassen

Kann von oben übernommen werden.

Schritt 3: PoBlock Konfiguration

Bei der PoKeys Installation wird ein Programm "PoBlocks" installiert. Dabei handelt es sich um ein sehr mächtiges Programm. Damit lassen sich per Drag&Drop und grafischer Programmierung Logik-Schaltungen erstellen. Diese können direkt auf den PoKeys übertragen und getestet werden.

Bild 10: Zusammenfassen von jeweils 8 Signalen zu einem Byte

Zum Schluss muss noch der AutoStart des Programms aktiviert werden. Ist kein Block markiert, werden rechts die allgemeinen Einstellungen angezeigt. Über "Check and transfer" die Änderung noch an den PoKeys senden.


Schritt 4:Empfangen der Werte in der LoxConfig



Zum Schluss möchte ich mich noch bei den Entwicklern des PoKeys bedanken. Der Support ist super und neue Funktionen werden auch auf Wunsch der Community eingebaut. Sofern diese sinnvoll sind. So hat man zufriedene Kunden (Lächeln) Manch anderer könnte sich hier eine Scheibe von abschneiden.



Quellen und Links: