Überblick

Der 'TwinCAT Simulation Manager' ist ein leistungsfähiges Werkzeug zur Simulation von Maschinen bzw. Maschinenanlagen.
In verschiedenen Szenarien besteht die Anforderung eine Maschine oder Produktionsanlage ganz oder teilweise simulieren zu müssen:
- Entwicklung
Hardware und Software werden parallel von i.d.R. unterschiedlichen Leuten entwickelt und oder stehen zu unterschiedlichen Zeitpunkten zur Verfügung. Um die Anlage/Maschine in Teilen testen zu können ist eine Simulationsumgebung unabdingbar. Der 'TwinCAT Simulation Manager' unterstützt die Erzeugung einer "Virtuelle Maschine", die in ihrem Verhalten der realen Maschine entspricht. Aufgrund der Einbindung der Simulation in das Echtzeitsystem, sind hierbei sogar echtzeitkritische Anforderungen realisierbar (Echtzeitsimulation).
--> Die Abhängigkeiten der Software von der Hardware reduzieren sich. Es wird sogar möglich, die Software vor der eigentlichen Inbetriebnahme fertig zu stellen. Die Qualität der Maschinensoftware erhöht sich durch Entwicklertests. - Abnahme der Software/Maschine vor der Inbetriebnahme
Der 'TwinCAT Simulation Manager' ermöglicht die Implementierung von Abnahmeregeln in die Simulation. Dies kann normales Betriebsverhalten der Maschine/Anlage, aber auch Prüfungen auf Einhaltung von Schnittstellenspezifikationen sowie die Simulation von Störfällen sein. Die Qualitätssicherung bekommt ein leistungsfähiges Werkzeug an die Hand.
--> Sicherstellung von Qualitäts-Leveln - Inbetriebnahme der Maschine/Anlage
Die Inbetriebnahme von einzelnen Maschinenteilen wird ermöglicht. Durch vorhergehende Tests (siehe Abnahme der Maschine/Software vor der Inbetriebnahme) kann sich mehr auf die Parametrierung und Optimierung der Maschine konzentriert werden.
--> Die Inbetriebnahmezeit reduziert sich deutlich. - In der Produktion
Maschinen/Anlagenteile fallen aus, Materialengpässe können auftreten. Der 'TwinCAT Simulation Manager' ist in der Lage durch unterschiedliche Profile den Teilbetrieb der Maschine/Anlage aufrecht zu erhalten.
--> Die Maschine/Anlage wird flexibler einsetzbar. - Ausbildung/ Schulung und Demonstration
Die Simulation der (kompletten) Hardware ermöglicht es die Maschinensoftware rein virtuell auf einem Demosystem zu betreiben. Das Betriebs- u. Servicepersonal kann an diesem System geschult werden. Zusätzlich eignet sich eine so aufgesetzte Simulation die Maschine / Anlage in verschiedenen Szenarien zu demonstrieren.
--> Unterstützt die Schulung von Personal
Alle diese Szenarios werden durch den TwinCAT Simulations-Manager unterstützt und geben dem Entwickler / Anlagenbetreiber umfangreiche Hilfsmittel zur Erstellung und Verwaltung von Simulationsumgebungen an die Hand:
- Verwaltung und Konfiguration von Simulationsumgebungen / Profilen
- Simulation von I/O-Geräten und Achsen
- Einfache und sichere Umschaltung in den Simulationsmodus
- Bibliotheken "Virtueller Geräte" und "virtueller Funktionen"
- Automatische Erzeugung eines echtzeitfähigen Simulations-SPS-Projektrahmens mit Übernahme der Symbolik und Kommentare aus dem Originalprojekt
- Nutzung aller Möglichkeiten der PLC-Control Programmierumgebung auch im Simulationscode:
z.B. Graphisches Programmieren, Tracen, Debuggen usw.
Funktionsprinzip
E/A-Geräte und Achsen sind zunächst über Verknüpfungen mit der SPS verbunden. Sollen nun Teile der Maschine simuliert werden, so müssen die betroffenen Geräte inaktiv geschaltet werden. Damit die Maschinen-SPS - im folgenden Original-SPS genannt - weiterhin ihre Funktion ausüben kann, muss das Verhalten der relevanten Ein- und Ausgänge möglichst exakt nachgebildet werden. Dies übernimmt die Simulations-SPS, welche sich statt der inaktiven EA-Geräte in das System einhängt.
Zum Einkoppeln muss die Verknüpfung von der Original-SPS zum inaktiven Gerät gelöst und zur Simulations-SPS umgelenkt werden. Deaktivierte Achsen werden durch eine Simulations-Achse nachgebildet; eventuelle Latch-Funktionalitäten in der Simulations-SPS implementiert. Simulierte Achsen werden durch den 'TwinCAT Simulation Manager' in den 'Freilauf' geschaltet.

Das Nachbilden der I/O-Funktionalität in der Simulations-SPS wird durch einen Satz von Simulationsbausteinen vereinfacht. Komplexes Verhalten lässt sich durch Verbinden dieser Basisbausteine einfach zusammensetzen und in POEs kapseln bzw. wiederverwenden.
Der Datenaustausch zwischen SPS und E/A geschieht unter TwinCAT klassischerweise mit Hilfe von sogenannten E/A-Verknüpfungen. Der TwinCAT System Manager ermöglicht es diese Verknüpfungen anzulegen und bildet diese in adäquate Speicherkopieranweisungen in der TwinCAT Runtime ab (Task-Synchronisiertes Speicher-kopieren zwischen Prozessabbildern). Diese Art der Verknüpfung eignet sich allerdings nur im lokalen Nutzungszenario, d.h. innerhalb eines TwinCAT Systems innerhalb einer Resource (CPU), wo direkter Zugriff auf die beteiligten Prozessabbilder besteht.
In einer verteilten Umgebung - d.h. mehrere Resourcen/CPUs sind beteiligt - ist ein Datenaustausch zwischen den Geräten notwendig. Dieser könnte über eine diskrete Verdrahtung, einen Feldbus oder Netzwerktechnologie realisiert sein.
Um sowohl lokale als auch verteilte Umgebungen zu unterstützen, benutzt der TwinCAT Simulation Manager intern ein Verknüpfungsmodell, welches auf einer abstrakten Ebene angesiedelt und vom konkreten Datenaustausch-Protokoll transparent entkoppelt ist. Damit wählt der TwinCAT Simulation Manager abhängig vom Kommunikations-Anfangs u. Endpunkt immer das geeignetste Protokoll.
Momentan werden die folgenden Protokolle unterstützt:
- TwinCAT EA-Verknüfung für lokale EA-Anbung (Höchster Datendurchsatz, limitiert vom Zyklus des Task-Masters)
- Netzwerk Publisher-Subscriber Variablen für die Remote-Anbindung (EtherCAT Master-Master Protokoll, Datendurchsatz vom EtherCAT Protokoll bzw. seiner Zykluszeit begrenzt)
Diese transparente Behandlung von Remote-Geräten ermöglicht es sowohl die eigentliche Maschinensoftware (OriginalSoftware) als auch die angebundene Simulationssoftware frei auf den verfügbaren Resourcen (CPUs) zu verteilen und zu betreiben. Dabei lässt sich das System frei von einer rein lokalen Anwendung auf ein hochverteiltes Szenario skalieren.