Thread Content
Dieser Beitrag wurde zuletzt von jerry512158 am 26.1.2016 um 11:22 geändert.
Sub onclick{byval item} V_Dis „main.画面窗口2:main01“,„1#阴床 反洗进水阀“,5, 1, „Anion_FJ2.“,1 end sub
***************************************************************************
Sub V_Dis(Byval Pic,Byval Name,Byval Num, Byval V_Num, Byval Prefix,Byval Mode)
Dim a,b,c
HMIRuntime.Tags(„Dev_Num“).Write Num
HMIRuntime.Tags(„Dev_V_Num“).Write V_Num
Set a = HMIRuntime.Screens(Pic).ScreenItems(„阀窗口“)
a.CaptionText = Name
a.TagPrefix = Prefix
a.Visible = False
a.Visible = True
a.PictureName = „操作窗口-阀“
c = Pic & „.阀窗口:操作窗口-阀“
Set b = HMIRuntime.Screens(c).ScreenItems(„Mode“)
If Mode = 1 Then b.Visible = True Else b.Visible = False End If
End Sub
Ich wäre sehr dankbar, wenn jemand jede Zeile ausführlich erklären könnte
Ich versuche, das zu erklären: „sub onclick(byval item)“ ist ein Ereignis beim Klicken auf ein Kontrollelement; dadurch wird eine benutzerdefinierte Aktion namens V_Dis ausgeführt. Die V_Dis-Aktion hat sechs Parameter: 1. Im ersten Schritt wird die WinCC-Variable Dev_Num auf 5 gesetzt. 2. Im zweiten Schritt wird die WinCC-Variable Dev_V_Num auf 1 gesetzt. 3. Im dritten Schritt wird die interne Variable a auf das Objekt „Ventilfenster“ in der Ansicht Pic gesetzt. 4. Im vierten Schritt wird im Titelbereich des Objekts „Ventilfenster“ in der Ansicht Pic der Text „1#Anionbett – Reinigungsanschlussventil“ angezeigt. 5. Im fünften Schritt wird dem Objekt „Ventilfenster“ in der Ansicht Pic das Präfix „Anion_FJ2.“ zugewiesen. 6. Im sechsten Schritt wird das Objekt „Ventilfenster“ in der Ansicht Pic unsichtbar gemacht. 7. Im siebten Schritt wird das Objekt „Ventilfenster“ wieder sichtbar gemacht. 8. Im achten Schritt wird als Inhalt des Objekts „Ventilfenster“ in der Ansicht Pic das Bild „Bedienungsfenster – Ventil“ verwendet. 9. Im neunten Schritt wird die interne Zeichenkettenvariable c auf den Wert „main.Ansichtsfenster2:main01.Ventilfenster:Bedienungsfenster-Ventil“ gesetzt. 10. Im zehnten Schritt wird die interne Variable b auf den Wert „mode“ des Ansichtsfensters main01 innerhalb des Ansichtsfensters main gesetzt. 11. Damit kann gesteuert werden, ob das Steuerelement „Mode“ sichtbar ist oder nicht. WinCC verfügt über ein Hauptbildschirmobjekt namens „Main“. Auf diesem Hauptbildschirm befindet sich ein weiteres Bildschirmobjekt mit dem Namen „Bildschirmfensterobjekt 2“. In diesem Fensterobjekt wiederum befindet sich der Bildschirm „main02“. Auf „main02“ gibt es erneut ein Bildschirmfensterobjekt – dessen Name „Ventilfenster“ ist. Dieses „Ventilfenster“ dient dazu, die Ventile über eine Mensch-Maschine-Schnittstelle zu steuern. In diesem Fenster befindet sich außerdem ein weiterer Bildschirm mit dem Namen „Steuerungsfenster – Ventil“. V_DIs übermittelt einen Variablennamen namens „Anion_FJ2“. Über den Parameter „Name“ wird festgelegt, welches Ventil gesteuert werden soll. In diesem Beispiel handelt es sich um das Ventil „1# Anion-Filter – Reinigungs-Einlassventil“. Auf dem Bildschirm „Steuerungsfenster – Ventil“ gibt es ein Kontrollfeld mit dem Namen „Mode“. Ob dieses Kontrollfeld sichtbar ist, hängt davon ab, ob die letzte Funktion von V_Dis sichtbar ist. Die Präfixe der Variablen basieren auf den Steuerungsverfahren ähnlicher Gerätetypen; die Namen der Variablen sind entsprechend ähnlich. Beispielsweise werden Ventile einheitlich als ***_remote, ***_Ready, ***_Running, ***_Start usw. bezeichnet, wobei das *** vorangestellt wird. In diesem Beispiel kann die Seite „Steuerungsfenster für Ventile“ als Vorlage verwendet werden – bei jeder Verwendung muss lediglich ein anderes Präfix an das Objekt „Ventilfenster“ übergeben werden. Ich hoffe, ich kann dir helfen.
Vielen Dank. Es gibt zwei Punkte, die ich nicht verstehe:
1. Was ist der Zweck der beiden Zuweisungen in „V_Dis“ mit den Werten „main.画面窗口2:main01“, „1#阴床 反洗进水阀“, 5, 1, „Anion_FJ2.“? (1. Zuerst wird die WinCC-Variable Dev_Num auf 5 gesetzt, 2. anschließend wird die WinCC-Variable Dev_V_Num auf 1 gesetzt.)
2. Und was bedeutet das letzte „1“?
Dieser Beitrag wurde zuletzt am 26.1.2016 um 15:48 von „Sichuan Yikong Anfänger“ bearbeitet. Da ich das gesamte Projekt nicht sehen kann, vermute ich, dass dev_num die Gerätenummer ist und mit 5 belegt wird. Dev_v_num ist meiner Ansicht nach die Nummer der Ventile im Gerät – diese beträgt 1. Diese beiden Nummern werden beim Bedienen des Panels sicherlich verwendet. Die letzte 1 steuert, ob der Mode-Controller sichtbar ist. Ich vermute, dass es sich dabei um eine Anzeige für Modi wie manuell/automatisch oder normal/Fehler handelt – bei 1 wird er angezeigt, bei 0 versteckt.