Wie kann ich auf einem WLAN Panel nach dem verlust des WLAN eine Meldung generrieren?

Dennis auf der Arbeit

Active member
Beiträge
32
Punkte Reaktionen
0
Zuviel Werbung?
->Hier kostenlos registrieren
Hallo alle zusammen.
Ich habe folgendes Problem:
Ich habe ein WLAN Panel in meiner Anlage eingebaut. Leider bricht mir die Verbindung des öfteren ab da das WLAN Signal nicht überall hinreicht. Jetzt möchte ich gerne das jedesmal wenn das Panel kein WLAN Signal mehr hat einem Meldung auf dem Panel erscheint und mich darauf hinweist und gleichzeitig verhindert das man noch irgendwelche Tasten bedienen kann. Hatte schon das Problem dass das WLAN Signal wärend der Bedinung der Anlage abgerissen war und dann Die Anlage plötzlich los fuhr als das WLAN Signal wieder da war, was sehr gefährlich werden kann.

Hoffe einer von euch hat eine Lösung für mich. Schonmal danke im vorraus ;-)

MFG Dennis
 

MSB

Well-known member
Beiträge
7.116
Punkte Reaktionen
1.601
Scheint ja eine höchst eigenartige Projektierung zu sein, wenn irgendwas "plötzlich" von selbst los fährt,
wobei dieses Problem auch bei einer Meldung noch bestehen würde.

Ansonsten *ACK* Helmut.

Mfg
Manuel
 
OP
D

Dennis auf der Arbeit

Active member
Beiträge
32
Punkte Reaktionen
0
@ rostiger Nagel
Hersteller: Siemens
Panel: Mobile Panel 277 8'' IWLAN 1.0.3.0
Sofware: WINCC flexible Advanced

@ Crack
Wie kann ich das Signal den so bearbeiten das wenn es nicht mehr kommt nach 1-2sec die Meldung ausgelöst wird?
 

rostiger Nagel

Forums-Knochenbrecher
Teammitglied
Beiträge
14.366
Punkte Reaktionen
4.198
Zuviel Werbung?
->Hier kostenlos registrieren
Ich hab jetz so ein WLAN-Gerät noch nicht in den Finger gehabt, aber laut
Handbuch müßtes du da Elemente zu WLAN Verbindung anzeigen können
und für die Zonen.
 
OP
D

Dennis auf der Arbeit

Active member
Beiträge
32
Punkte Reaktionen
0
Zuviel Werbung?
->Hier kostenlos registrieren
Ich habe keine gefunden. Hab es jetzt aber hin bekommen. Ich habe mir ein Skript geschrieben das mir immer wenn der 0,5Hz Taktgeber eine 1 oder 0 hat ein zähler auf Null gesetzt und gleichzeitig wieder gestart wird. Wenn dann der Zähler den Wert 60000 erreicht was ca. 2-3sec entspricht, weil der Taktgeber nicht mehr seinen Wert ändert kommt die Meldung. Wenn dann das WLAN wieder kommt, kommt auch der Takt wieder und die Meldung verschwindet und es erscheint ein Tasterfeld das man weiter machen kann und mit dem man den Zähler wieder startet.
 

nicS

Well-known member
Beiträge
76
Punkte Reaktionen
20
wenn die verbindung über WLAN abbricht, müsste eigendlich auch die Verbindung zur Steuerung unterbrochen sein und eine entsprechende Systemmeldung kommen.
Hast du Eine Meldeanzeige zum Anzeigen der Systemmeldungen und darin mal nachgesehen was passiert?
Wenn eine Meldung über den Verbindungsabbruch zu Steuerung kommt, könntest du an diese Systemmeldung eine Funktion projektieren die dir z.B. ein Bit setzt. mit diesem Bit kannst du dann irgendetwas einblenden.

Gruß, Nico
 

PN/DP

User des Jahres 2011-2013; 2015-2017; 2020-2021
Beiträge
17.595
Punkte Reaktionen
5.172
Ich habe mir ein Skript geschrieben das mir immer wenn der 0,5Hz Taktgeber eine 1 oder 0 hat ein zähler auf Null gesetzt und gleichzeitig wieder gestart wird. Wenn dann der Zähler den Wert 60000 erreicht was ca. 2-3sec entspricht, weil der Taktgeber nicht mehr seinen Wert ändert kommt die Meldung. Wenn dann das WLAN wieder kommt, kommt auch der Takt wieder und die Meldung verschwindet und es erscheint ein Tasterfeld das man weiter machen kann und mit dem man den Zähler wieder startet.
Interessant. Bist Du sicher, daß das bei Dir so funktioniert? Kannst Du mal etwas genauer erklären, was Du wo gemacht hast?
An dem Problem, in WinCCflex kurzfristig zu Erkennen, wenn die Verbindung zur CPU abgebrochen ist, haben sich schon viele Leute erfolglos versucht.

Wo läuft Dein Zähler? Im Panel? Welches Ereignis sagt Dir, daß der Zähler nicht mehr resettet wird? Welches Ereignis läßt die Meldung auf dem Panel kommen?

Harald
 

BenR

Well-known member
Beiträge
51
Punkte Reaktionen
12
Und welcher Zauberspruch gibt mir die Systemmeldungen zur Ansicht und Bearbeitung frei?

In meinen Projekten ist zwischen Bitmeldungen und Einstellungen nämlich kein Ordner Systemmeldungen :confused:

(WinCC flex 2008 Advanced SP2 Upd 13; Siemens PC477C)
 

BenR

Well-known member
Beiträge
51
Punkte Reaktionen
12
Das hatte ich auch vermutet, jedoch den entsprechenden Haken nicht gefunden.

...

Jetzt hab ich's doch in den unendlichen Weiten der Flex-Hilfe gefunden:

Editor "Systemmeldungen" anzeigen
Den textlichen Inhalt der Systemmeldung finden Sie in WinCC flexible. Der Editor "Systemmeldungen" wird in WinCC flexible nicht standardmäßig angezeigt. Aktivieren Sie den Editor "Systemmeldungen" unter "Extras > Einstellungen... > Workbench > Einstellungen für Projektfenster" mit "Alle Einträge anzeigen".

Man lernt nie aus.
 
OP
D

Dennis auf der Arbeit

Active member
Beiträge
32
Punkte Reaktionen
0
Ja das funktioniert allerdings muß man den Wert noch hör setzen hab das erst über die Runtime getestet wo es super klapte, als ich dann aber übertragen hatte kam die Meldung immer. Zudem muß man aufpassen den durch das Skript wird die CPU des Panels doch sehr ausgelastet bei mir wirkte sich das so aus das ein anderes Skript nicht mehr bearbeitet wurde.

Gemacht habe ich das so:
1) Koordinierung aktivieren

2) Eine Interne Variable angelegt

3) Habe ich mir das folgende Skript geschrieben:
If SmartTags("00-DB-Panel.Koordinierung")=1 Then
Do

IncreaseValue SmartTags("Interne Variablen\WLAN Störung"), 1

Loop Until SmartTags("Interne Variablen\WLAN Störung")=2000000
End If


If SmartTags("00-DB-Panel.Koordinierung")=5 Then
Do

IncreaseValue SmartTags("Interne Variablen\WLAN Störung"), 1

Loop Until SmartTags("Interne Variablen\WLAN Störung")=2000000
End If

4) Lasse ich von dem Taktmerker der CPU meiner SPS, den Wert der Internen Variable auf 0 setzen

5) Habe ich mir eine Meldung gemacht die nur sichtbar ist wenn der Wert der Intern Variable =2000000 ist und eine Schaltfläche die nur sichtbar ist wenn der Wert = 0 ist.

6) Das Skript so verknüpft das es beim Start des Panels auf dem ersten Bild ausgeführt wird und auch wenn die Schaltfläche betätigt wird.

Auswirkung:
Das Skript wird gestartet wenn das Panel sein erstes Bild anzeigt wird. Wenn jetzt der Kontakt zur SPS abbricht wird der Wert nicht mehr auf 0 gesetzt und läuft hoch bis 2000000. Dann wir das Skript beendet und die Meldung erscheint, wenn jetzt der Kontakt zurück kommt wird der Wert der intern Variable wieder auf 0 gesetzt und die Meldung verschwindet. Dafür ist dann die Schaltfläche sichtbar mit der man das Skript neu startet und alles begint von vorn.
 

PN/DP

User des Jahres 2011-2013; 2015-2017; 2020-2021
Beiträge
17.595
Punkte Reaktionen
5.172
Zuviel Werbung?
->Hier kostenlos registrieren
bei mir wirkte sich das so aus das ein anderes Skript nicht mehr bearbeitet wurde.
WinCC flex führt nur 1 Script aus. Solange ein Script läuft, wird kein anderes ausgeführt. Sollten dennoch Scriptanforderungen bestehen, so werden diese in einen Auftragspuffer eingestellt, der bei etwa 20 Einträgen überläuft. Dann gibt es eine Systemmeldung und weitere Scriptanforderungen gehen verloren.

4) Lasse ich von dem Taktmerker der CPU meiner SPS, den Wert der Internen Variable auf 0 setzen
Per Systemfunktion bei "Wertänderung"? Welcher Taktmerker genau?

5) Habe ich mir eine Meldung gemacht die nur sichtbar ist wenn der Wert der Intern Variable =2000000 ist und eine Schaltfläche die nur sichtbar ist wenn der Wert = 0 ist.
Wenn durch irgendeinen Umstand die Ausführung dieses fast-endlos-Scriptes mittendrin abgebrochen wird, dann bekommt man es nur durch Neustart der Runtime wieder gestartet.

6) Das Skript so verknüpft das es beim Start des Panels auf dem ersten Bild ausgeführt wird und auch wenn die Schaltfläche betätigt wird.

Auswirkung:
Das Skript wird gestartet wenn das Panel sein erstes Bild anzeigt wird. Wenn jetzt der Kontakt zur SPS abbricht wird der Wert nicht mehr auf 0 gesetzt und läuft hoch bis 2000000. Dann wir das Skript beendet und die Meldung erscheint, wenn jetzt der Kontakt zurück kommt wird der Wert der intern Variable wieder auf 0 gesetzt und die Meldung verschwindet. Dafür ist dann die Schaltfläche sichtbar mit der man das Skript neu startet und alles begint von vorn.
Zum "überwachen" der Verbindung muß der Operator also immer wieder ins Startbild wechseln?
Och, wenn schon ein endlos-Script, dann muß es doch auch bei einem Verbindungsausfall nicht beendet werden, sondern kann in einer endlos-Schleife auf das Wiederkehren der Verbindung warten...
Wie lange dauert es eigentlich vom Verbindungsausfall bis zu Deiner Meldung?

Mich überzeugt diese Lösung nicht. Das Starten eines endlos-Scriptes ist überhaupt keine Lösung. Mir tut schon derjenige leid, der nach Dir an dem Projekt Änderungen vornehmen will/soll.

Harald
 

JesperMP

Well-known member
Beiträge
6.554
Punkte Reaktionen
1.264
Den Vorschlag von RN ist wirklich einfach, ich verwende es selber um ein Verbindungsabbruch zu signalisieren.
Die Nummer von den Systemmeldung ist etwas schwierig zu sehen in RN's Screenshot. Es ist 140001 für Verbindung abgebrochen, und 140000 für Verbindung hergestellt.
 
OP
D

Dennis auf der Arbeit

Active member
Beiträge
32
Punkte Reaktionen
0
Ich habe es mal mit dem Vorschlag von RN probiert, war aber für meine Zwecke zu langsam. Bevor die Meldung kommt dass das Signal nicht mehr vorhanden ist dauert es 40sec und da ich mit mervösen Fingern rechnern muss, sind das ca. 20-Tastendrücke die in der Zeit getätigt werden könnten.
 
Oben