WinMOD
Inhaltsverzeichnis
- 1 Allgemein
- 2 WinMOD-Konfiguration
- 3 Anpassung der WinMOD-Simulationsdateien
- 4 Ansteuerung durch Expecco
Allgemein[Bearbeiten]
Steuerung von WinMOD über Expecco[Bearbeiten]
Die Steuerung von WinMOD-Projekten aus Expecco erfolgt über Signalelemente, die entweder über die Force Machine gesteuert oder über die Y20-Treiberschnittstelle gesetzt und ausgelesen werden können.
Die Expecco-WinMOD-Library stellt dafür folgende Bausteine zur Verfügung:
- Erstellen von Skripten und Abspielen durch eine Force Machine.
- Schreiben von Byte-, Word-, DWord- und Float-Werten (8/16/32/32 Bit) in den gemeinsamen Speicherbereich des Y200-Treiber.
- Lesen von Bit-, Byte-, Word-, DWord- und Float-Werten aus dem gemeinsamen Speicherbereich des Y200-Treiber.
Bedingungen an das WinMOD-Module[Bearbeiten]
Für die automatisierten Test mittels Expecco ist es notwendig, die zu steuernden Elemente oder abzufragenden Anzeigen auf extra Signalelemente zu legen, so dass diese über den Y200-Treiber beschrieben oder ausgelesen bzw. über die Force Machine gesteuert werden können.
Die Verknüpfung der Signalelemente erfolgt über deren Adresse im Y200-Treiber bzw. deren eindeutigen Namen (IDENT) für die Force Machine.
WinMOD-Konfiguration[Bearbeiten]
Y200-Konfiguration[Bearbeiten]
Ziel: Erstellen eines definierten gemeinsamen Speicherbereichs für WinMOD und Expecco, der über den Y200-Treiber zum Datenaustausch verwendet werden kann.
Y200-Treiber hinzufügen[Bearbeiten]
- WinMOD-Projektfenster (F4)
- Peripherie-Treiber → rechte Maustaste
- Treiber hinzufügen (Kontextmenü oder „Einfg“-Taste)
- „Y200 Speicherkoppler“ auswählen
- [ OK ]
Y200-Treiber konfigurieren[Bearbeiten]
- WinMOD-Projektfenster (F4)
- Y200 Speicherkoppler im Projektbaum auswählen
- Kontextmenü „Konfiguration laden“
- „Expecco_Y200_Konfig.Y20“ auswählen und [ Öffnen ]
Standard-Konfigurationsdatei für Y200-Konfiguration:
Datei:Expecco Y200 Konfig.Y20.txt
Y200-Einstellungen:[Bearbeiten]
Diese Einstellungen werden über das „Expecco_Y200_Konfig.Y20“-File gesetzt.
Y200-Rangname (Name Prozessdatenabbild)[Bearbeiten]
- „EXPECCO_MEM_Y200“
Speicherbereiche[Bearbeiten]
- XA: Start: 0, Länge 200 Byte
- XE: Start: 200, Länge 800 Byte
Operanden (Eingabe und Ausgabe)[Bearbeiten]
- Präfix: „EXP_“
- Leerzeichen entfernen: true
Definieren und Zuordnen von Treibersignalen zur Signalelementen[Bearbeiten]
Ziel: Erstellen der Signalelemente für die Steuerung des WinMOD-Projekts und deren Verknüpfung mit Adressen im Y200-Treiber.
Zuordnungsdatei[Bearbeiten]
Die Zuordnung der Speicherplätze zur Signalen in WinMOD erfolgt über den Import einer CSV-Datei.
Aufbau[Bearbeiten]
Die Datei hat folgenden Aufbau:
- Treibersignal:
- Speicherplatz im Y200-Speicherbereich
- Adresse:
- Speicheradresse in WinMOD, Präfixkonvention „EXP_“
- Symbol:
- Symbol - kann leer sein
- Typ: TD
- T: [B]inär, [D]igital, [A]nalog
- D: [I]n, [O]ut
- Beispiel BI = binäres Ausgangssignal
- Default Wert:
- Kommentar:
Format[Bearbeiten]
Das Format ist beim Einlesen einstellbar. Default ist csv tab-separiert ohne Textbegrenzungszeichen.
Beispiel[Bearbeiten]
Treibersignal Adresse Symbol Typ Default Wert Kommentar XE200.0 EXP_SCR_015_Run BI 0 Flag ForceMachine is Running XE201.0 EXP_HIL_014_S BI 0 Taster Increment XE201.1 EXP_HIL_015_S BI 0 Taster Reset XEDW204 EXP_DCT_014_Qn DI 0 Wert Digitalanzeige XEDW208 EXP_DAC_013_Y AI 0,00 % Wert Analoganzeige XA0.0 EXP_SCR_015_Start BO 0 Start ForceMachine XA0.1 EXP_HIL_014_L BO 0 Taster Increment: Licht
Einlesen der Zuordnungsdatei[Bearbeiten]
- WinMOD-Projektfenster
- Peripherie-Treiber
- Y200 Speicherkoppler
- Kontextmenü „Operandenzuordnung“
- Import aus Datei
Optionen[Bearbeiten]
Expecco-spezifische Einstellungen
Erstellen eines Filter für Operanden in WinMOD[Bearbeiten]
Die Adressen der Expecco-Operanden starten mit dem Präfix „EXP_“. (Einstellung im Y200-Treiber).
Im WinMOD-Projektfenster (F4) lässt sich daraus ein Filter für die globalen Operanden erstellen, in dem nur noch die Expecco-Operanden zu sehen sind.
Filter für durch Expecco generierte Operanden - Definition
Filter für durch Expecco generierte Operanden - Ansicht
Anpassung der WinMOD-Simulationsdateien[Bearbeiten]
Steuerung über Force Machine:[Bearbeiten]
Elemente für die Steuerung durch die Force Machine müssen in demselben Simulationsfenster wie die von Expecco verwendete Force Machine platziert sein. Sie müssen eindeutige Namen (Ident-Bezeichnung) im Simulationsfenster haben. Sie werden über diesen Namen von der Force Machine angesprochen.
Um die Elemente durch die von Expecco generierten Skripte per Force Machine steuern zu können, muss das Flag „Objekteigenschaften“ – „Verhalten“ – „Forcen möglich“ gesetzt sein.
- „Objekteigenschaften“ – „Verhalten“ – „Forcen möglich“ = true
Damit diese Bezeichnungen mit den Operandenbezeichnungen übereinstimmen, sollte „Ident vom Operanden“ für die Elemente eingestellt werden.
- Kontextmenü des Elements – „Ident vom Operandenbezeichnung“ = true
Die Force Machine kann allerdings nur Werte setzen, das Auslesen von Ergebnissen ist nicht möglich (s. Y200). Eingangselemente können nur über die Force Machine manipuliert werden.
Definition „Force Machine“[Bearbeiten]
Für das Abspielen von durch Expecco erzeugten Skripten ist eine Force Machine notwendig, die manuell angelegt werden muss.
Gestartet wird die Force Machine über ein Signal im Y200-Treiber.
Dieses wird per Konvention auf das erste Bit des ersten Bytes im Ausgangsspeicherbereich gelegt. Der Status der Force Machine (Ausgang Run) wird im ersten Bit des ersten Bytes des Eingangsbereichs erwartet.
Einfügen in Simulation[Bearbeiten]
- Fenster „Elementbibliothek“ (Menü „Ansicht“ bzw. „F5“)
- Selektion „Controller“ – „SCR_01 – (Force Machine)
„Eigenschaften“ - „Ein-/Ausgänge/Verhalten“[Bearbeiten]
- Eingang Start: OP_XA0.0
- Ausgang Run: OP_XE200.0
- Auswählen Skriptdatei für Steuerung über Expecco:
- C:\tmp\Expecco\ExpeccoScript.wms
Steuerung über Y200[Bearbeiten]
Ausgangselemente können über den Y200 unter Angabe des Offsets (elementspezifisch in Byte, Word, DWord) ausgelesen werden.
Eingangselemente können über den Y200 unter Angabe des Offsets (elementspezifisch in Byte, Word, DWord) geschrieben werden.
Begrifflichkeit: Ein-/Ausgang ist definiert aus Sicht der zu steuernden Anlage. Expecco übernimmt beim Test die Rolle der Anlage.
Die zu steuernden Eingänge der Steuerungselemente müssen mit den definierten Operanden aus dem Y200-Treiber (XA-Bereich) verbunden werden, Ausgänge der Steuerungselemente mit Operanden aus dem XE-Bereich. Dadurch können die Eingangswerte von Expecco über den Y200-Treiber gesetzt werden, die Ausgangswerte ausgelesen werden.
Beispiel:[Bearbeiten]
Ausgangslage[Bearbeiten]
Simulation[Bearbeiten]
Für Test gewünschte Ansteuerung von:[Bearbeiten]
Schalter HIL_014:
- Eingang L
- Ausgang S
Schalter HIL_015:
- Ausgang S
Wert DCT_014 (binär)
- Ausgang Qn
Wert DAC_013 (analog)
- Ausgang Y
Anlegen der Signalelemente für Expecco[Bearbeiten]
Einlesen der Verknüpfungsdatei Signal – Operanden[Bearbeiten]
Treibersignal Adresse Symbol Typ Default Wert Kommentar XE200.0 EXP_SCR_015_Run BI 0 Flag ForceMachine is Running XE201.0 EXP_HIL_014_S BI 0 Taster Increment XE201.1 EXP_HIL_015_S BI 0 Taster Reset XEDW204 EXP_DCT_014_Qn DI 0 Wert Digitalanzeige XEDW208 EXP_DAC_013_Y AI 0,00 % Wert Analoganzeige XA0.0 EXP_SCR_015_Start BO 0 Start ForceMachine XA0.1 EXP_HIL_014_L BO 0 Taster Increment: Licht
Filter für durch Expecco generierte Operanden - Ansicht
Signale mit Steuerelemente verknüpfen[Bearbeiten]
Drag and Drop der Symbole der Operanden aus den WinMOD-Projektfenster auf Anschlüsse der Bausteine im Simulationsfenster.
Auslagern der Expecco-spezifischen Elemente in eigenes Simulationsfenster[Bearbeiten]
Drag und Drop der Operanden auf eine eigenes Simulationsfenster
Ansteuerung durch Expecco[Bearbeiten]
Einstellungen[Bearbeiten]
Skriptdatei für Force Machine[Bearbeiten]
Der Pfad der Force Machine