# Codesys HMI Zugriff Regelung



## ebert (17 Juli 2011)

Hi Leute ich bin neu in diesem Forum und hoffe das Ihr mir helfen könnt 

Wusste das Thema nicht genau einzuordnen, da es sich um ein Codesys spezifisches HMI Steuerungs/Koordinierungs Problem handelt.

Als Basissystem dient ein Wago 750-881.

Auf meine Steuerung lässt sich auf zwei Arten Zugreifen, zum Einen per WebVisu und zum Anderen durch eine embedded Anwendung (.Net Compact Framework) welche via Modbus auf Variablen zugreift. Der Zugriff auf die Variablen erscheint mir noch nicht als der Weisheit letzter Schluß, als SPS Anfänger bin ich für Kritik und Anregung offen  Nun zum eigentlichen Problem. Die Visualisierung soll für alle HMI Nutzer gleichzeitig sichtbar sein (WebVisu oder embedded HMI), die Steuerung selber aber immer genau für einen HMI Nutzer freigeschaltet sein. D.h. ein Master hat Zugriff auf die Steuerung (Buttons etc. Sichtbar) und für alle anderen Slaves sind die Buttons ausgeblendet. Über einen Request Masterbutton sollte es für jede HMI möglich sein dem aktuellen Master die Steuerungsrechte zu entziehen. Meine Idee war es für jede HMI eine feste Kennung zu vergeben, welche in der Steuerung den aktuellen Master beschreibt, allerdings konnte ich nicht rausfinden wie ich eine eindeutige ID der WebVisu generieren kann. Mir ist klar das es sich dabei wohl nicht um die eleganteste Lösung handelt, aber die erste auf die ich gekommen bin.

Danke und Gruß,
Michael


----------



## WAGO (20 Juli 2011)

Hallo Michael,

Dein Problem ist ein "Systemverhalten". Die WebVisu wird von dem  WebServer (=750-881) an alle Browser verteilt. Daher ist auf jedem  Browser exakt dieselbe WebVisu ausgeliefert worden. Eine eindeutige  Kennung je Browser kann damit nicht zugeordnet werden. Über diesen Weg  lässt sich Dein geplantes Vorhaben nicht realisieren.
Über eine frei programmierte Anwendung bist Du da natürlich flexibler.  Allerdings kann diese nicht als embedded Software auf dem 750-881  laufen, da das .Net Compact Framework nur auf bestimmten  Betriebssystemen funktioniert. Sollte die Software auf einem HMI zum  Einsatz kommen, kannst Du Dir ein eigenes Handshaking auf Basis einer  Modbus-Adresse aufbauen. Loggt sich ein Gerät ein, schreibt es einen  Wert auf die Adresse. Will sich ein anderer Teilnehmer einloggen, muss  er sich die Freigabe über die gleiche Adresse holen. Alle Geräte  arbeiten auf derselben Adresse.

Bei weiteren Fragen kannst Du uns auch gerne unter den unten genannten Kontaktdaten erreichen.


----------

