Gibt es Limitierungen hinsichtlich der Ausführung von Modulen in Echtzeit?
Nicht alle Zugriffe, die in Simulink® unter nicht-Echtzeit-Bedingungen möglich sind, können in der TwinCAT-Echtzeit-Umgebung durchgeführt werden. Im Folgenden werden bekannte Limitierungen beschrieben.
- Direkter Dateizugriff: Aus der TwinCAT-Runtime ist kein direkter Zugriff auf das Dateisystem des IPC realisierbar. Eine Ausnahme bildet hier die Verwendung des Simulink® Sink-Bausteins „To File“. Wie unter Verwendung des ToFile Blocks beschrieben, kann in TwinCAT das TcExtendedFileWriter Module instanziiert werden, welches den Dateizugriff realisiert.
- Direkter Hardware-Zugriff: Ein direkter Zugriff auf Geräte/Schnittstellen setzt einen entsprechenden Treiber voraus, z.B. RS232, USB, Netzwerkkarte, … Aus dem Echtzeitkontext kann nicht auf die Gerätetreiber des Betriebssystems zurückgegriffen werden. Z. B. ist es daher nicht einfach möglich, mit der Instrument Control ToolboxTM eine RS232 Kommunikation für den nicht-Echtzeit-Betrieb herzustellen, und diese dann direkt in der TwinCAT-Runtime zu nutzen. Zur Anbindung von externen Geräten kann aber seitens TwinCAT auf eine Vielzahl von Kommunikationsmöglichkeiten zurückgegriffen werden, siehe TwinCAT 3 Connectivity TF6xxx.
- Zugriff auf die Betriebssystem API: Es ist nicht möglich aus der TwinCAT-Runtime die API des Betriebssystems direkt zu nutzen, ein Beispiel ist die Einbindung der windows.h in C/C++ Code. Diese wird bspw. durch den Simulink Coder® bei Verwendung der FFTW-Implementierung (aber nicht bei der Radix-2-Implementierung) des FFT-Blocks aus der DSP Systems ToolboxTM eingebunden.