WinMOD

Aus expecco Wiki (Version 2.x)
Zur Navigation springen Zur Suche springen

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]

  1. WinMOD-Projektfenster (F4)
  2. Peripherie-Treiber → rechte Maustaste
  3. Treiber hinzufügen (Kontextmenü oder „Einfg“-Taste)
  4. „Y200 Speicherkoppler“ auswählen
  5. [ OK ]

Y200-Treiber konfigurieren[Bearbeiten]

  1. WinMOD-Projektfenster (F4)
  2. Y200 Speicherkoppler im Projektbaum auswählen
  3. Kontextmenü „Konfiguration laden“
  4. „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:

  1. Treibersignal:
    Speicherplatz im Y200-Speicherbereich
  2. Adresse:
    Speicheradresse in WinMOD, Präfixkonvention „EXP_“
  3. Symbol:
    Symbol - kann leer sein
  4. Typ: TD
    T: [B]inär, [D]igital, [A]nalog
    D: [I]n, [O]ut
    Beispiel BI = binäres Ausgangssignal
  5. Default Wert:
  6. 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
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.

100%
Filter für durch Expecco generierte Operanden - Definition

100%
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]
  1. Fenster „Elementbibliothek“ (Menü „Ansicht“ bzw. „F5“)
  2. 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]
WinMOD-example original.png
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

WinMOD-example projectwindow-operands.png
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.

WinMOD-example expecco-adapted.png

Auslagern der Expecco-spezifischen Elemente in eigenes Simulationsfenster[Bearbeiten]

Drag und Drop der Operanden auf eine eigenes Simulationsfenster

WinMOD-example controlwindow-commented.png

Ansteuerung durch Expecco[Bearbeiten]

Einstellungen[Bearbeiten]

Skriptdatei für Force Machine[Bearbeiten]

Der Pfad der Force Machine

Y200-Name und Bereiche[Bearbeiten]



Copyright © 2014-2024 eXept Software AG