External Mode (Tc External Mode)

In Simulink gibt es verschiedene Ausführungsmodi. Neben dem "Normal Mode", bei dem das Simulink-Modell direkt in der Simulink-Umgebung berechnet wird, gibt es z. B. den "External Mode". In diesem Modus arbeitet Simulink nur als grafische Oberfläche ohne Berechnungen im Hintergrund. Wenn das Modell mit den entsprechenden Einstellungen in ein TcCOM-Modul umgesetzt wurde, kann sich Simulink mit dem instanziierten TcCOM-Objekt verbinden, das gerade in der TwinCAT-Echtzeitumgebung läuft. In diesem Fall werden die internen Signale des Moduls über ADS an Simulink übermittelt, wo sie mit den entsprechenden Simulink-Blöcken aufgezeichnet oder dargestellt werden können. In Simulink veränderte Parameter können online in das TcCOM-Objekt geschrieben werden. Eine solche Online-Parameterveränderung ist allerdings nur bei Parametern möglich, die als "tunable" definiert sind.

Konfiguration des Modulgenerators

Eine „External Mode”- Verbindung ist nur möglich, wenn das generierte Modul sie unterstützt. Dafür muss der External Mode vor der Modulgenerierung in den Einstellungen des Simulink Coders unter TC External Mode aktiviert werden:

External Mode (Tc External Mode) 1:

Zusätzlich gibt es hier eine Schaltfläche zur Vorkonfiguration der „External Mode“-Verbindung. Informationen zur Konfiguration der „External Mode“-Verbindung siehe Abschnitt "Verbindung herstellen". Weitere Parameter unter diesem Karteireiter sind:

Parameter

Beschreibung

Defaultwert

Allow real-time execution commands via External Mode

Definiert den Standardwert des Modulparameters „AllowExecutionCommands“, der festlegt, ob das Modul Start- und Stopp-Befehle aus Simulink verarbeiten soll.

Besonderes Verhalten dieses Parameters: Der Modulparameter "AllowExecutionCommands" ist ReadOnly, wenn der Wert FALSE ist. Der Code wird in diesem Fall hinsichtlich der Ausführungszeit optimiert und enthält daher nicht die Codeabschnitte zur Verarbeitung von Start- und Stopp-Befehlen.

FALSE

By default wait on External Mode start command

Defaultwert des Modulparameters“ WaitForStartCommand“

FALSE

Modulparameter

Zur Konfiguration des Verhaltens im External Mode (auf der Seite des XAE) ist in generierten Modulen der Parameter ExternalMode als Struktur definiert, der die folgenden Elemente enthält:

Parameter

Beschreibung

Defaultwert

Activated

ReadOnly. Legt fest, ob der externe Modus im generierten Modul unterstützt werden soll.

Einstellung des Modulgenerators

AllowExecutionCommands

Nur relevant, wenn "Activated"=TRUE.
ReadOnly, wenn der Defaultwert FALSE ist, da die Codeabschnitte in diesem Fall im generierten Code nicht enthalten sind. Das heißt, dieser Parameter kann die Verarbeitung von Start- und Stopp-Befehlen deaktivieren, sie jedoch nicht aktivieren, wenn sie bei der Codegenerierung nicht angelegt wurde.

Einstellung des Modulgenerators

TRUE

Erlaubt Simulink, die Modulabarbeitung über die „External Mode“-Verbindung zu starten und zu stoppen.

FALSE

Start- und Stopp-Befehle werden vom Modul ignoriert.

WaitForStartCommand

Nur relevant, wenn "Activated"=TRUE und "AllowExecutionCommands"=TRUE

Einstellung des Modulgenerators

TRUE

Das Modul wird nach dem Start von TwinCAT nicht automatisch ausgeführt sondern wartet auf den Startbefehl von Simulink.

FALSE

Das Modul wird sofort mit der zugewiesenen TwinCAT-Task gestartet. (Default)


Für weitere Informationen zur Anpassung der Modulparameter in XAE siehe Abschnitt "Parametrierung des generierten Moduls".

Verbindung aus Simulink® herstellen

Die „External Mode“-Verbindung kann aus Simulink über das Icon Connect to Target gestartet werden, welches nach Anwahl des Modus External in der Simulink-Toolbar zu sehen ist:

External Mode (Tc External Mode) 2:


Bei fehlenden oder falschen Verbindungsdaten werden nacheinander die folgenden Dialoge angezeigt, damit der Benutzer die Verbindung neu konfigurieren kann:

External Mode (Tc External Mode) 3: External Mode (Tc External Mode) 4:


Das erste Dialogfenster zeigt eine Liste von Zielsystemen, das zweite eine Liste der verfügbaren Modul-Instanzen auf dem gewählten Zielsystem. Im folgenden Dialog kann der Benutzer festlegen, ob die neuen Verbindungsdaten gespeichert werden sollen. Nach dem Speichern der Verbindungsdaten wird die Verbindung automatisch hergestellt, wenn die Verbindungsdaten auf ein gültiges und passendes Modul verweisen.
Die gespeicherten Verbindungsdaten können in den Coder-Einstellungen über der Schaltfläche Setup ADS Connection unter TC External Mode jederzeit geändert werden.

Übermittlung der Berechnungsergebnisse von „minor time steps“

Über ADS übermittelte Signalwerte können unter bestimmten Umständen von den Werten abweichen, die via „Output mapping“ auf andere Prozessabbilder kopiert wurden. Siehe Übermittlung der Berechnungsergebnisse von „minor time steps“.

Parametrierung in TwinCAT

Bei großen Modellen müssen viele Daten zwischen TwinCAT und Simulink kommuniziert werden. Dies geschieht über ADS, wobei TwinCAT-seitig Puffer angelegt werden. Sie haben die Möglichkeit die Puffer für eingehende und ausgehende Daten zu adaptieren (Defaultwerte 10000 Byte) sowie die Timeout-Schwelle (Default 3.0 Sekunden) anzupassen.

External Mode (Tc External Mode) 5: