TIA VBSkript für Buttons zur Anzeige von Sensoren

Rexrayne

Level-1
Beiträge
12
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

Ich habe folgendes Problem ich habe eine SPS CPU1516 F-3 mit einem Siemens Panel TP2200 Comfort. Die HMI soll wie auf dem beigefügten Bild ausschauen. Dabei soll wenn man auf den Anzeige Button drückt der gewählte Sensor rechts auf dem Bild angezeigt werden, sowie der Text des Buttons sich zu Deaktivieren ändern. Beim erneuten Drücken des Button soll der Kreis, der anzeigt wo der Sensor bzw Aktor ist, wieder verschwinden und sich der Text wieder zu "Anzeigen" verändern. Mein Problem ist jetzt, dass ich nicht weiß wie ich das elegant lösen kann ohne für jeden einzelnen Button ein neues Script anlegen zu müssen.
Mit VBS habe ich noch nicht viel Erfahrung und deshalb wäre ich für eure Hilfe dankbar. Ich arbeite mit Siemens TIA Portal V13.

Grüße
Rayne
 

Anhänge

  • HMI.png
    HMI.png
    32,5 KB · Aufrufe: 35
Man kann sich auch zu Tode skripten, vor allem bei Panels die gar nicht für die massenhafte Verwendung von Skripten ausgelegt sind... ;)

Du könntest Deinem Skript einen Übergabeparameter geben, wo Du dem Skript die Nummer des anzuzeigenden/auszublendenden Sensors mitgibst, dann brauchst Du nur 1 Skript. :cool:


Wenn immer nur höchstens 1 Sensor sichtbar sein soll, dann würde ich gar kein Skript benutzen sondern so projektieren:

* lege eine Panel-interne HMI-Variable "Sensor_sichtbar" als UInt an, wo Du nachher Werte 1, 2, 3, ... reinschreibst. (Beim Wert 0 sollen alle Sensoren unsichtbar sein.)
* An Deine Sensor-Kreise projektierst Du bei Animation/Sichtbarkeit, daß der Kreis nur sichtbar ist, wenn die Variable "Sensor_sichtbar" den Wert 1 oder 2 oder 3 oder ... hat
* Für Deine Anzeige-Buttons nimm "Schalter"
- Modus: "Schalter mit Text"
- Prozesswert: die Variable "Sensor_sichtbar"
- Text AUS: "Anzeigen"
- Text EIN: "Ausblenden"
- Wert Zustand EIN: 1 (oder 2 oder 3 ...)

Für jeden Sensor projektierst Du
- einen Sensor-Kreis und passt bei Animation/Sichtbarkeit die Nummer an: 1, 2, 3, ...
- einen "Anzeigen/Ausblenden"-Schalter und passt den Wert bei "Wert Zustand EIN" an: 1, 2, 3, ...

Du könntest auch noch eine Textliste mit einer Klartext-Bezeichnung der Sensoren ins Bild einbauen (die Variable "Sensor_sichtbar" wäre dann der Index):
0: (kein Text)
1: Halteleiste links Zylinder 1 HE
2: Halteleiste links Zylinder 1 VE
3: Halteleiste links Zylinder 2 HE
...

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Achje Schalter, dass ich darauf nicht selbst gekommen bin. :roll: Vielen Dank Harald. Damit ist das Problem ja auch schon gelöst. Es wäre ja dann auch denkbar mit boolschen Variablen mehr als nur ein Kreis anzeigen zu lassen. Ist halt nur die Frage ob sich das auch lohnt. zumindest komme ich so erstmal um ein Skript drumherum. :D

Grüße Rayne
 
Zurück
Oben