Übersicht

Das TwinCAT Software System ist eine vollständige Automatisierungslösung für PC - kompatible Rechner, benannt "The Windows Control and Automation Technology":

TwinCAT verwandelt jeden kompatiblen PC in eine Echtzeitsteuerung mit Multi-SPS, NC-Achsregelung, Programmierumgebung und Bedienstation. TwinCAT substituiert SPS- und NC- Steuerungen sowie Bediengeräte durch PC mit den Eigenschaften:

  • harte Echtzeit ohne Hardwarezusätze auf jedem kompatiblen PC für SPS- und NC Anwendungen,
  • bis zu vier IEC61131-3 SPS pro PC,
  • Antriebslösung für NC PTP und NC Interpolation,
  • für bis zu 256 Servo-, Frequenzumrichter- oder geschaltete Antriebe,
  • Anbindung an alle gängigen Feldbusse und PC - Schnittstellen für E/A Signale,
  • Einbettung von SPS- und NC- Systemen in Windows NT,
  • Datenanbindung an NT-Programme mittels offener Microsoft Standards (OLE, OCX, ActiveX, DCOM+, etc.).

TwinCAT verbindet die Fähigkeit zur Echzeitsteuerung mit der offenen und weltweit größten Softwareplattform von Microsofts Windows Betriebssystemen.

Komponenten von TwinCAT

TwinCAT umfasst eine Vielzahl von Systemteilen, die gemeinsam eine vollständige Lösung für Automatisierungsaufgaben bilden:

Programmierung von SPS - Programmen für sequentielle Logik nach IEC61131-3,

Programmierung von NC - Positionierung Punkt zu Punkt (PTP) und Interpolation (I) nach DIN66025,

Echtzeitsystem zum Ablauf der SPS- und NC- Programme in zeitgenauer (deterministischer) Weise, ungeachtet der PC - Nutzung für weitere Aufgaben,

E/A- Anbindung für alle verbreiteten Feldbusse und die PC Schnittstellen sowie für Interfacekarten Dritter,

Programmier- und Datenverbindung mit Windows Programmen von der Visualisierung bis zur Tabellenkalkulation per OCX oder DLL.

TwinCAT Realtime System: Echtzeiterweiterung für Windows NT

TwinCAT besitzt eine Echtzeiterweiterung für Windows NT zur Ausführung von Automatisierungsprogrammen in Zyklen ab 1 ms, deterministisch zeitgenau mit sehr kleiner zeitlicher Schwankung (Jitter) von wenigen Mikrosekunden. Die TwinCAT Echtzeiterweiterung ist eine Multitasking - Umgebung zur zeitgenauen Steuerung von "Servern", welche die unterschiedlichsten Aufgaben, wie z.B. SPS, NC, PID- Regelung, Nockenschaltwerk, etc. bearbeiten. TwinCAT ist in Windows NT integriert und erweitert es zur Laufzeit um Echtzeitfunktionen, die NT ursprünglich nicht besitzt. NT wird vom Nutzer für den Betrieb von TwinCAT nicht verändert, es kann wie gewohnt beschafft, installiert, genutzt und gewartet werden. Alle Eigenschaften von Windows NT stehen während des Betriebes von TwinCAT in unveränderter Form zur Verfügung. Die Rechenkapazität, die TwinCAT dem Rechner für Echtzeitaufgaben entzieht, kann limitiert werden. Diese Einstellung bleibt unter allen Umständen fest bestehen. Eine Lastanzeige erleichtert die Einstellung für den Anwender.

TwinCAT IEC61131-3 Programmierung mit herstellerunabhängigem Standard

Das "TwinCAT PLC Control" ist die Programmierumgebung für die SPS (PLC Server) im System: eine leistungsfähige 32 Bit - Programmierumgebung für Programme, deren Codegröße und Datenbereiche weit über die Möglichkeiten herkömmlicher SPS Systeme hinausgehen. TwinCAT PLC bietet alle definierten Sprachen der IEC61131-3 Norm. Die Programmierumgebung erleichtert Programmierern von herkömmlichen SPS-Systemen den Einstieg in IEC61131-3 durch Unterstützungstools. Die "objektorientierte" Struktur unterbindet Seiteneffekte während der Analyse (Online - Statusanzeige). Bei laufender SPS werden Programm- und Datenänderungen in beliebiger Größe "online" ausgeführt, das Auffinden und Beheben von Fehlern (Debuggen) wird mit einer sehr leistungsfähigen Verbindung zu den Laufzeitsystemen (Servern) unterstützt, die übrigens auch netzwerkfähig ist. Programme werden für PC und zusätzlich für Mini-SPS Hardware (Beckhoff Bus Controller) übersetzt. Alle üblichen Eigenschaften einer SPS sind verfügbar.

TwinCAT PLC Server: bis zu 4 SPS auf einem PC

Der PLC Server bearbeitet Programme in fest eingestellten Zykluszeiten. TwinCAT startet deterministisch die Tasks der Laufzeitsysteme: auf einem PC können bis zu vier SPS-Laufzeitsysteme gleichzeitig genutzt werden. Die Laufzeitsysteme besitzen wiederum Multitasking - Eigenschaften mit je 4 Tasks: Der PLC Server bietet also 16 Tasks in 4 Laufzeitsystemen, jede Task mit eigener Priorität und Zykluszeit. Insgesamt können bis 32 Mbyte Programm und 4 Mbyte Daten genutzt werden. Die Ausführungszeit auf PC Prozessoren ist extrem schnell. Die E/A Daten werden vom System Manager organisiert. Das Start- und Stopverhalten gleicht genau dem einer "Hardware"-SPS (die ja auch mit Software betrieben wird). Programmstart der SPS (Boot) bei PC-Start und remanente Daten werden unterstützt; während Windows NT einen Benutzerwechsel ausführt, arbeitet die SPS weiter.

TwinCAT NC PTP und NC I Achsregelung PTP auf dem PC

Der NC Server bearbeitet die Motion Control Aufgaben für die Positionierung geschalteter Motoren, Schrittmotoren, frequenzgesteuerter (FU-) Motoren und servogeregelter (Servo-) Motoren. Alle verbreiteten Arten von Antriebsverstärkern (Servo, FU, Schrittmotorregler) und Schütze können über die bekannten Schnittstellen eingebunden werden. Die Positionserfassung erfolgt absolut, inkremental, mittels Encoder oder über den Antrieb. Die Reglercharakteristik wird mittels Beschleunigung, Verzögerung und Ruck genau definiert: das Trapezprofil der PTP - Positionierung kann fein eingestellt werden. Die Inbetriebnahme wird durch Online - Menüs unterstützt, Messwerkzeuge helfen, z.B. den Schleppfehler zu ermitteln.

Bahnsteuerung nach DIN 66025

Bahnsteuerungsaufgaben werden in Gruppen von 3 Antrieben im Raum durchgeführt. Sie werden nach DIN66025 definiert und abgearbeitet. Die Einbindung in die SPS erfolgt "klartextähnlich" in Form von Funktionsbausteinen: die Antriebsregelung ist integriert in IEC61131-3. Bis zu 256 Achsen (nur abhängig vom benutzten PC-Prozessor) können gleichzeitig bewegt werden. Die PC Technologie lässt das Leistungsvermögen von TwinCAT ständig wachsen.

TwinCAT System Manager verbindet die Welt mit TwinCAT

Der System Manager ist die Konfigurationszentrale des Systems: Die Anzahl und Programme der SPS-Systeme, die Konfiguration der Achsregelung und die angeschlossenen E/A- Kanäle werden miteinander in Beziehungen gebracht. Der System Manager verbindet alle Systemteile und deren Datenbeziehungen miteinander, in synchroner oder asynchroner Weise werden konsistente Datenbereiche und Prozessabbilder ausgetauscht. TwinCAT unterstützt alle verbreiteten Feldbusse - auch gleichzeitig, wenn es notwendig ist. So werden z.Zt. Beckhoff Lightbus, Profibus DP, Interbus, CANopen, DeviceNet, ControlNet, Modbus, Sercos, RS485/232, Ethernet TCP/IP und USB mit einer Reihe von Master- und Slaveanschaltungen unterstützt. Die PC - Peripherie (parallele und serielle Schnittstellen), und Interfacekarten für PC von Dritten können per Memory Interface eingebunden werden. Der System Manager erlaubt die Verbindung zwischen Server - Prozessabbildern und E/A Kanälen bitweise und hält Werkzeuge bereit, die z.B. 100 Kanäle fortlaufend mit nur einem Befehl verbinden. Auf Feldbusebene und Prozessabbildebene der Server wird die Inbetriebnahme und Wartung durch Onlinedarstellung sowie "Write und Force" erleichtert. Watchfenster zeigen eine individuelle Auswahl von Variablen. Für alle E/A - Geräte werden Diagnosedaten in einer einheitlichen Darstellung angeboten.

TwinCAT AdsOCX integriert TwinCAT in Windows NT

Die Verbindung zu Anwendungen von Windows NT (von der Visualisierung über SCADA bis zu Office - Anwendungen, wie z.B. Excel) schafft eine OCX - Software oder eine DLL - Bibliothek. Die Methoden für den Datenaustausch werden vom Marktführer bei den Betriebssystemen definiert (z.B. DCOM+, ActiveX, OCX, OLE), so dass die Einbindung von TwinCAT in Windows NT auf einem sehr großen Standard basiert. Mittels des AdsOCX werden Datentransport und Methodenaustausch organisiert: Windows - Anwender können direkt - ohne weitere Treiberimplementierung - auf Daten und Funktionen der Automatisierungssoftware zugreifen. Damit ist TwinCAT optimal in Windows NT integriert.


Software - SPS und - NC auf PC - Systemen

Automatisierungssysteme mit PC werden derzeit eingesetzt in der Form von

  • SPS, Prozessrechner oder NC-Steuerung kombiniert mit PC,
  • Industrie PC mit Koprozessorkarte für SPS/NC Aufgaben.

Typischerweise sind PC dabei nicht direkt mit Steuerungsaufgaben betraut, diese werden durch Zusatzprozessoren ausgeführt: Diese Struktur ist nachteilig.

Ein neuer Ansatz ist eine reine Softwarelösung: Ein Prozessor bearbeitet alle Automatisierungsaufgaben im Einprozessorbetrieb.

Im Gegensatz zu den traditionellen Ansätzen wird mit TwinCAT ein eigenes Prozessorsystem samt Speicher und Betriebssystem durch die echtzeitfähige, deterministische Bearbeitung der Funktionen für SPS und NC mit dem PC Prozessor und in dessen Speicher ersetzt. Die Vorteile dieser Lösung liegen auf der Hand: was nicht mehr da ist, kann auch keine Fehler produzieren.

Vergleich: Struktur traditioneller SPS /NC und PC Steuerungstechnik

Automatisierung mit vier Standardkomponenten

Damit besteht ein Automatisierungssystem nur noch aus 4 Komponenten:

  • Industrie PC,
  • offenes Feldbus - System für E/A - Anbindungen
  • Standardbetriebssystem Windows NT für die Bedienoberfläche (HMI),
  • TwinCAT Systemsoftware "IEC61131-SPS und NC auf dem PC"

Die Vorteile dieser Lösung sind:

  • nahezu unbeschränkter Speicherplatz für Programme und Daten,
  • stetige Leistungsentwicklung für die Automatisierungsaufgabe,
  • volle Integration in das Betriebssystem: Zugriff auf PC Ressourcen erfolgt mit Methoden des Betriebssystems statt mit Treibersoftware,
  • niedrige Anzahl von Komponenten ergibt hohe Systemzuverlässigkeit.

Software - SPS und - NC auf dem PC: Der PC führt die Steuerung aus.

Damit der PC die Steuerungsaufgabe ausführen kann, muss neben den Programmen zur Bedienung die Automatisierungssoftware wie gewohnt ausgeführt werden. Eine "klassische" SPS bearbeitet Programme zyklisch. Die Ein- und Ausgabe wechselt mit der Programmbearbeitung ab:

Skizze 1: Echtzeitbetrieb von SPS - Software in der klassischen SPS

Die Ausführung der Programme in einer Software - SPS auf dem PC erfolgt genau wie in einer herkömmlichen SPS / NC in zeitgenauen (deterministischen) Zyklen, die unabhängig von der Programmlänge mit gleicher Länge ausgeführt werden. Die Bearbeitung der Bedienoberfläche wird in der Zykluspause ausgeführt, wofür Rechenkapazität reserviert werden kann:

Skizze 2: Echtzeitbetrieb von SPS - Software auf einem PC mit Windows NT

Die Bearbeitung von SPS, NC und Bedienoberfläche gleichzeitig erfolgt durch die "Überlagerung" von Tasks für SPS-, NC- und Betriebssystemaufgaben mit einem Multitasking System. Jede Task ("Server") für eine bestimmte Aufgabe arbeitet mit eigener Zykluszeit und Priorität. Die Skizze 3 zeigt die Überlagerung von SPS, NC und Betriebssystem. TwinCAT gewährleistet den Betrieb von Windows NT gemeinsam mit TwinCAT Programmen durch eine spezielle Implementierung in das Betriebssystem:

Skizze 3: Echtzeitbetrieb von Software für SPS und NC (Motion Control) als Server in Windows NT


Echtzeit ohne Hardwarezusatz als Systembasis

TwinCAT Realtime Extension sorgt für Echtzeitfähigkeit

Das PC Betriebssystem Windows NT ist nicht echtzeitfähig: Es wurde für optimierte Performance entworfen und nicht für Steuerungszwecke. Tasks werden durch verschiedene Ereignisse unterbrochen oder ihr Aufruf verzögert. Das Diagramm zeigt diese Unterbrechungen einer hochprioren, zyklischen Windows NT Task:

Windows NT ist nicht echtzeitfähig

Diagramm: Windows NT Task wird nicht deterministisch ausgeführt

Windows NT und Beckhoff Realtime Kernel Extension

Da Windows NT nicht echtzeitfähig ist, wird das Betriebssystem für Automatisierungsaufgaben erweitert: eine solche Echtzeiterweiterung ist Basis für TwinCAT. Mit dem Hintergrund von mehr als zehn Jahren Erfahrung mit PC-Softwarelösungen für SPS/NC und mehr als zehntausend Installationen unter DOS hat Beckhoff eine erprobte und unabhängige Echtzeiterweiterung für Windows NT als Basis von TwinCAT entwickelt und als Systempartner mit Microsoft abgestimmt: Im zyklischen Betrieb werden 64 Tasks prioritätsgesteuert, preemptiv und deterministisch mit max. +/- 15 µs Jitter bearbeitet.

TwinCAT ist echtzeitfähig

Mit dieser Kernel Extension besitzt TwinCAT eine genaue Zeitbasis, die mit höchster Priorität Programme ausführt, unabhängig von anderen Prozessoraufgaben. Um dies zu zeigen, wurde der Start einer TwinCAT Task über einen Zeitraum aufgezeichnet, um Zeitabweichungen des Systems gemessen. Während dieser Zeit, in der 1 Mio. SPS - Zyklen ablaufen, wird der PC mit unterschiedlichen Aufgaben, wie z.B. Netzwerkbetrieb, Festplattenzugriff, Videodarstellung und Mausbewegungen belastet. Das Diagramm zeigt eine steigende Signalflanke, ausgelöst von einer Task, in einer integrierenden Darstellung, welche die Zeitabweichungen (Jitter) darstellt. Der Aufruf der TwinCAT Tasks erfolgt deterministisch (zeitgenau in 100 % der Fälle) mit kleinen Schwankungen (Jitter) von wenigen Mikrosekunden, die für allgemeine Anwendungen vernachlässigbar sind:

Diagramm: 1 Million Zyklen - Starts von TwinCAT schwanken um ca. +/- 15 µs

TwinCAT bietet eine kompatible Echtzeitbasis

Die Implementierung von Beckhoff arbeitet ohne zweites Betriebssystem durch die vollständige Integration der Echtzeittasks in Windows NT:

  • sie erfordert keine zusätzliche Hardware zu der eines Standard - PC (derzeit: Intel - Einprozessor - Architekturen) oder ein zweites Betriebssystem,
  • Windows NT kann weltweit unverändert eingekauft, installiert und genutzt werden, muss also nicht verändert ("gepatcht") oder in Teilen ausgetauscht werden,
  • der Anwender muss keine Kenntnisse vom Betriebssystem oder dessen Programmierung besitzen, um Automatisierungsaufgaben zu bearbeiten,
  • die Implementierung ist auch kompatibel zu künftigen Releases von NT (z. B. NT 5.0),
  • sie erlaubt die Reservierung einer CPU - Restkapazität für Windows NT, die unter allen Umständen eingehalten wird,
  • sie garantiert auch bei hoher Echtzeitlast, dass wichtige Aufgaben von NT bearbeitet werden, daher werden keine Eigenschaften von NT eingeschränkt oder beeinflusst,
  • sie bietet eine Lastanzeige für die Nutzung der CPU durch die Automatisierungstasks,
  • sie zeigt den aktuellen und den maximalen Jitter der Echtzeit online an und generiert Meldungen bei Überschreitung.

Automatisierungslösungen für praktische Anwendungen

Dabei steht für TwinCAT nicht die Echtzeitimplementierung im Vordergrund, sondern eine vollständige Anwendungslösung zur Bearbeitung, Analyse und Ausführung von Steuerungsprogrammen in Echtzeit:

niemand muss Betriebssystemexperte werden, nur um Echtzeit auf einem PC zu nutzen. Die praktische Anwendung in der Automatisierung steht im Vordergrund.

Offene Programmierung Offene E/A Anbindung Offene Windows Schnittstellen

Eine komfortable Umgebung erlaubt:

  • Erstellen von Echtzeitprogrammen nach IEC61131, C Code einbindbar,
  • Ausführung auf dem gleichen PC oder entfernt ("remote"),
  • Analyse mit modernen Methoden,
  • integrierte Anbindung an Programme, z.B. Visualisierungen,
  • integrierte, offene, herstellerübergreifende E/A - Anbindung für Feldbusse und PC - Hardware.


Einprozessorbetrieb: System wächst mit

SPS auf dem PC: Programmierung, Laufzeit und Feldbus als E/A System

Eine PC - basierende Software - SPS besitzt ein Programmiersystem, eine oder mehrere Laufzeitumgebungen und eine E/A - Anbindung, die per Feldbus aufgebaut wird. Eine Bedienoberfläche wird mit Visualisierungsprogrammen, SCADA, etc. oder mit einem Visual Basic / Visual C Programm durchgeführt.

SPS als Software auf dem PC

Einprozessorlösungen - wachsende Systemleistung

Die Leistung von Softwarelösungen für SPS schlägt schon lange diejenige von Hardware - SPS deutlich, wobei mit jedem neuen PC-Prozessor der Messwert für die Geschwindigkeit wieder sinkt: z.B. sind nur noch 15 µs für die Bearbeitung von 1.000 SPS-Befehlen auf einem Pentium III 600 notwendig, so dass eine schnelle Hardware-SPS - CPU mehr als viermal "unterboten" wird.

Vergleich: Ausführungszeiten von Hardware - SPS und TwinCAT PLC

Systemgrenzen sind sehr weit

Aber nicht nur die Geschwindigkeit, auch die Systemgrenzen sind auf PC keine Einschränkung mehr: Programmgröße, Merker - Speicher, Prozessabbild - Größe, diese Werte lassen in der Praxis keine Wünsche offen. Die praktischen Grenzen der PC - Technik sind viel weiter als diejenigen von bisherigen SPS - Geräten:

In der 32 Bit Welt der PC Technik sind SPS Programme von 32 MByte Länge und 4 MByte Merkerspeicher, kombiniert mit 64.000 Eingängen und Ausgängen leicht möglich.

NC auf dem PC: Positionierung auf dem PC und Feldbus als E/A System

Eine PC - basierende Software - NC besitzt eine Positionierung (Sollwertgenerierung, Lageregler), eine integrierte SPS mit NC- Schnittstelle, Bedienprogramme zur Inbetriebnahme und eine E/A - Anbindung für Achsen, die per Feldbus aufgebaut wird.

Daten für die Lageregler werden im Zyklus über den Feldbus zu den Antrieben und von den Messsystemen ausgetauscht; der Lageregler wird auf dem PC Prozessor gerechnet.

Eine Bedienoberfläche wird wie bei einem PC - SPS System mit Visualisierungsprogrammen, SCADA, etc. oder mit einem Visual Basic / Visual C Programm durchgeführt.

NC als Software auf dem PC

Zentrale NC - Positionierung auf dem PC - Prozessor

Die PC - Leistung erlaubt es, gleichzeitig mit der SPS Antriebe mit einem PC zu bewegen, wobei der Lageregler auf dem PC - Prozessor gerechnet wird: bei Rechenzeiten von weniger als 25 µs pro Achse (auf Pentium 200) können leicht einige dutzend Achsen gleichzeitig positioniert werden.

TwinCAT ist - je nach Achsanzahl und gewählter Zykluszeit - in der Lage, die Bedienungsprogramme, die SPS und die NC gleichzeitig zu bearbeiten. Die Auslegung der Systemlast wird von TwinCAT mit Werkzeugen zur Lastanzeige unterstützt.

Die Systemgrenzen wachsen ständig

Die wichtigste Nachricht ist jedoch, dass diese Grenzen stetig wachsen: "Die Steuerung wächst mit", indem sie einfach auf Standard-PC in Software abgewickelt wird und automatisch dessen Leistungsentwicklung erfährt.


SPS und NC als Softwaregeräte

SPS und NC als Geräte in Softwareform

Die Systemarchitektur von TwinCAT erlaubt es, die einzelnen Teile der Software als eigenständige Geräte zu betrachten: Für jede Aufgabe gibt es ein Softwaremodul ("Server" oder "Client").

Die Server im System sind die ausführenden Arbeits - "Geräte" in Form von Software, welche in ihrem Betriebsverhalten genau einem Hardwaregerät entsprechen. Man kann daher von "virtuellen" Geräten in Softwareform sprechen.

Die "Clients" sind Programme, die Dienste der "Server" anfordern, z.B. eine Visualisierung oder auch ein "Programmiergerät" in Form eines Programms. Auf diese Weise kann TwinCAT wachsen, indem immer neue Server und Clients entstehen, für Aufgaben, wie z.B. Nockenschaltwerk, Oszilloskop, PID - Regler, etc.

TwinCAT Architektur

Das TwinCAT System besteht aus Servern (Laufzeitsystemen) zur Echtzeitausführung von Programmen und den Programmteilen zur Programmierung, Analyse und Konfiguration des Systems. Alle Windows - Programme, beispielsweise Visualisierungen oder Office - Produkte, können über Microsoft - Schnittstellen auf TwinCAT - Daten zugreifen oder Server steuern.

Diagramm: TwinCAT Software Struktur


Betriebsverhalten für die Praxis

TwinCAT ist "praxistauglich"

Mit dem Hintergrund von mehr als zehn Jahren Erfahrung mit PC-Softwarelösungen für SPS und NC und mehr als zehntausend Installationen unter DOS hat Beckhoff Wert auf erprobtes und praxistaugliches Verhalten von TwinCAT gelegt. So ist eine Reihe von Eigenschaften verfügbar, die in der Summe dafür sorgen, dass diese Softwarelösung als vollständiger Ersatz einer Hardware - Lösung eingesetzt werden kann.

Viele der Eigenschaften sind für Anwender selbstverständlich und unverzichtbar: gerade daher muss der Anwender sicher sein, dass diese Merkmale auch bei Softwarelösungen verfügbar sind.

Start / Stop - Verhalten

TwinCAT startet und stoppt je nach Einstellung per Hand - Bedienung oder automatisch. Da TwinCAT wie ein Service in NT integriert ist, wird zum Start kein Bediener benötigt: Strom einschalten genügt.

Das Stoppen der SPS kann wiederum

  • per Hand,
  • automatisch beim Stoppen von Windows NT oder
  • durch Anwenderprogramme erfolgen.

Zur Datensicherung und zum korrekten Beenden von Windows NT empfiehlt sich eine USV (Unterbrechungsfreie Stromversorgung) mit kurzer Backup - Zeit von einigen Minuten zum "Herunterfahren" der PC Steuerung.

Neustart mit Programm

Wie ein herkömmliches Automatisierungsgerät kann TwinCAT nach Neustart Programme laden und starten. Diese Programme ("Bootprogramme") werden vor Anwenderprogrammen gestartet, so dass diese stets eine initialisierte und funktionsfähige SPS- und NC- Steuerung vorfinden. Das Programmladen kann selbstverständlich auch über Netzwerk erfolgen.

Remanente Daten

Mit den Bootprogrammen können remanente (persistente) Daten bei Neustart automatisch geladen werden. Diese Daten werden bei Stop des Systems automatisch auf die Festplatte gesichert. Die Programmierumgebung unterstützt die Nutzung von remanenten Daten auf einfache Weise per Mausklick oder Schlüsselwort für eine Variable.

Systemzustand per Flag oder Merker

Die Server von TwinCAT für SPS und NC besitzen Systemflags (-merker) zur Darstellung und Abfrage ihres Zustandes (Neustart, SPS-Zyklusanzahl, etc.), die zur Systemsteuerung und Programmierung des Anlaufverhaltens genutzt werden.

Systemzustände werden im Eventlogger dokumentiert

Der Systemzustand und alle Zustands -und Fehlermeldungen werden in der Windows NT - Ereignisanzeige dokumentiert. Durch die Integration von TwinCAT in Windows NT ist der Zugriff darauf mit Verwaltungswerkzeugen von NT leicht möglich.

Zykluszeit und Systemlast

Die Ausführungszeiten der Programme auf einem PC wird mit dem Programmiersystem eingestellt: Auf diese Weise wird ein definiertes Betriebs-verhalten erreicht. Das TwinCAT System zeigt die Systemlast für ausgeführte Programme an. Eine Lastgrenze kann eingestellt werden, so dass für die Bedienprogramme und Windows NT eine definierte Rechenkapazität zur Verfügung steht. Bei Überschreiten dieser Grenze wird eine Systemmeldung generiert.

TwinCAT arbeitet auch bei Wechsel von Anwenderprofilen (Userwechsel)

Während die TwinCAT Server arbeiten, kann ein Userwechsel auf Windows NT durchgeführt werden: Auf diese Weise können Bediener und das Servicepersonal unterschiedliche Zugriffe auf Programmiersysteme und Wartungsprogramme bekommen. Die Integration von TwinCAT erlaubt die Verwaltung von Usern mit den Mechanismen und dem Sicherheitsstandard von Windows NT.

TwinCAT unterstützt die Systemanalyse

Grundsätzlich bietet die PC Architektur durch die hohe Integration von Komponenten und mehr als ausreichende Leistung der Prozessoren eine Plattform, die für allgemeine Automatisierungsaufgaben geeignet ist: auf geeigneter Hardware kann Echtzeitbetrieb und Windows NT stabil gewährleistet werden. Jedoch ist der Preis für die Offenheit der PC Welt, dass dieses Kriterium bei Verwendung von Hardware (Beispiel: Grafikkarten) oder Treibern dafür geprüft werden muss. Diese Einschränkung betrifft nicht Windows oder TwinCAT, sondern alle Betriebssysteme: ungeeignete Hardware und Software kann durch unerlaubte Methoden das Betriebssystem außer Tritt bringen. Daher schränken alle Betriebssysteme die Installation kritischer (kernel mode) Treiber ein. Beckhoff integriert eine praktische Anzeige des Jitters der Echtzeit in sein Produkt, um einem Administrator ein einfaches Mittel zur Evaluierung von Hardware und Software an die Hand zu geben. Im Betrieb kann eine Systemmeldung auf Fehlerzustände aufmerksam machen.


Verbindung per Message Routing

"Remote" - Verbindung ist systemimmanent

Die Software - Geräte von TwinCAT können je nach Anforderung auf Betriebsmittel verteilt werden: TwinCAT SPS-Programme können auf PC und auf Beckhoff BusControllern (Mini-SPS) ablaufen. Ein "Message-Router" verwaltet und verteilt alle Nachrichten im System und über TCP/IP - Verbindungen. Das interne Protokoll ist TCP - basierend und arbeitet nach "Automation Message Specification" AMS. PC Systeme können auf diese Weise miteinander verbunden werden - BusController werden über serielle Schnittstellen und über Feldbusse (Beckhoff Lightbus, Profibus DP) angebunden. Damit können alle TwinCAT - Server und Client-Programme Befehle und Daten austauschen, Nachrichten versenden, Statusinformationen übermitteln etc..

Weltweiter Zugriff

Da die TCP/IP Dienste von NT genutzt werden, kann dieser Datenaustausch weltweit erfolgen: Dadurch ist eine zentrale und dezentrale Architektur für alle Automatisierungsaufgaben realisierbar (Skizze).

Hierarchische Steuerungsarchitektur: zentral oder dezentral

Skizze: Verteilte Steuerungsarchitektur mit TwinCAT auf PC und Bus Controllern

Ein PC wird mittels seiner TCP/IP Adresse und dem "AMS Net Identifier" des Message Routers ermittelt:

Message Routing über- TCP/IP- COM Port- Feldbus

Das Message Routing System erlaubt es, zentrale oder dezentrale Systeme zu adressieren, und zwar für PC Systeme und Buscontroller. Die Übertragungswege sind TCP/IP - Verbindungen, serielle Kanäle oder Feldbussysteme. Das System bietet skalierbare Kommunikationsleistung und Timeout - Zeiten zur Überwachung von Kommunikationen.


Interface zu Windows - Programmen

Datenverbindung mit Microsoft Standards

Die Integration von TwinCAT in Microsoft Betriebssysteme erlaubt die Nutzung der PC Ressourcen (Festplatte, Netzwerk, Graphik, Schnittstellen, etc..) mit den Methoden und über die Schnittstellen des Betriebssystems.

Der Datenaustausch zwischen Echtzeitsoftware für Automatisierungszwecke muss dabei mehrere Aufgaben erfüllen:

  • Synchronisierung mit dem Betriebssystem,
  • Anpassung der Datendarstellung (Data alignment),
  • Gewährleistung von Datenkonsistenz bei Zugriffen.

Eine Datenschnittstelle muss vor allem

  • den Anforderungen der Automatisierung genügen,
  • volle Integration in das Betriebssystem gewähren.

Volle Integration erlaubt Nutzung der Standards

Mit dem Ansatz der vollen Integration in Betriebssystemmethoden ist die Kompatibilität zur Nutzung der Automatisierungssoftware von allen Windows Programmen gewährleistet: Eine typische Windows - Applikation kann direkt mit Automatisierungsprogrammen verbunden werden.

OLE, DCOM+, OCX: Microsoft Standards

Die modernen Methoden zur Nutzung von Softwaretechnologie sind COM, DCOM, OLE, OCX und ActiveX: sie vollständig zu beschreiben, füllt Bücher. Ausgehend von OLE (Object linking and embedding) Technologie wurde mit COM (Component Object Model) ein Mittel eingeführt, um auf einheitliche Weise Datenobjekte zwischen Programmen auszutauschen: OLE erlaubt es einer Word - Anwendung, eine Excel - Tabelle darzustellen. Die Verbesserungen von OLE führten zu einer Lösung der allgemeinen Aufgabe, Daten eines fremden Programms und deren Darstellungsmethoden (hier z.B. Tabellen) von einem anderen Programm zu nutzen (COM). Der COM - basierende Datenaustausch erlaubt den Zugriff auf Objekte und deren Daten über definierte Software- Schnittstellen und -methoden. Mit DCOM (Distributed COM) funktioniert dies auch zwischen Computern in einem Netzwerk.

Zur Nutzung dieser Techniken in Controls (Anwendungen) wurden mit OCX (OLE Controls) und ActiveX (OCX mit Web- Erweiterungen) die bestehenden Konzepte der COM Technologie erweitert und neu benannt. OCX oder ActiveX sind Komponenten, die auf einfachste Weise installiert werden und danach für Programme Daten und Methoden anbieten. Das Schreiben von Treibern entfällt damit.

OCX automatisiert die Verbindung von Programmen

OCX - Software -Schnittstellen ermöglichen eine weitgehende Automatisierung der Verbindung von Software. Es existiert ein großer Software - Markt für OCX- und ActiveX Komponenten, die in eigene Softwareanwendungen eingebunden werden können.

TwinCAT Schnittstelle auch als DLL verfügbar

Für andere Anwendungen sind die TwinCAT Schnittstellen auch in Form einer DLL (Dynamic Link Library) verfügbar und können eingebunden werden.

TwinCAT OCX Interface arbeitet über Message Router

Die Datenverbindung zu TwinCAT Servern erfolgt stets über das Message - System: auf diese Weise können Windows Programme nicht nur mit lokalen Servern arbeiten, sondern Daten mit allen angemeldeten TwinCAT Servern weltweit austauschen. Der Message Router sorgt für Datenaustausch auch zu entfernt angeordneten Servern auf anderen PC oder Feldgeräten.

Windows Programme greifen über den Message Router auf TwinCAT zu.

Schnittstelle für Programmapplikationen

Zur Nutzung der Beckhoff TwinCAT Technologie reicht eine einfache Datenverbindung zu Visualisierungen nicht aus: Ein vollständiges Interface für Programmiersprachen (Visual Basic, Visual C, Delphi, Java...) bietet nicht nur "einfache" Tags zu I/O Daten, sondern zusätzlich den vollen Zugriff auf Methoden der SPS / NC - Laufzeitserver (Start Stop, Programmladen, etc.)

Das Beckhoff ADS OCX bietet Zugriff auf Daten und Methoden der Server.

TwinCAT OCX organisiert den Datenaustausch

Das Beckhoff OCX organisiert den Datenaustausch zwischen TwinCAT und Windows Programmen. Es beinhaltet:

· Zugriff per Variablenname,

· Timing - Synchronisierung mit dem Betriebssystem,

· Anpassung der unterschiedlichen Datentypen,

· Blocken von Daten zu Steigerung der Systemeffektivität (Blocking),

· Anpassung der Datendarstellung (Data alignment),

· Gewährleistung von Datenkonsistenz bei Zugriffen.

Zugriffsmethoden:

- synchron- asynchron- zyklisch

Die Zugriffsmethoden erlauben einen synchronen Zugriff von Windows Programmen auf TwinCAT Server: Windows Programme "warten" das Ergebnis einer Anfrage ab. Alternativ kann asynchron oder zyklisch zugegriffen werden.

Zugriffsmethoden:

notify on change ist optimal

Die allgemein vorteilhafteste Methode des Datenaustausches ist die "notify on change" - Methode: sie bildet eine Obermenge der asynchronen und zyklischen Verbindungen und generiert Aktivitäten nur, wenn ein Datum sich wirklich ändert. Zur Begrenzung der Systemlast für Datenaustausch kann eine minimale Zykluszeit für Datenübertragung, die nicht unterschritten wird, eingestellt werden.

Integration in NT: Neue Anwendungen werden möglich

Die Softwareplattform Windows wird durch die Integration und vollständige Nutzung der Microsoft - Datenschnittstellen für die Automatisierungstechnik verfügbar.

Neue Anwendungen werden aus der Verschmelzung der Informationstechnologie mit der Automatisierungstechnik entstehen. Lösungen für Anwender können einfach zusammengestellt werden.

TwinCAT unterstützt diese neuen Anwendungen durch die vollständige Integration der Schnittstellen in das COM Modell und dessen Weiterentwicklungen.


Allgemeine Fragen zu PC Control

Sind PC so zuverlässig wie SPS?

PC werden im Vergleich zu SPS mittlerweile mit einer sehr viel geringeren Anzahl von Bauelementen und Verbindern gefertigt: PC Systeme sind viel höher integriert als SPS. Die Anzahl der Bauelemente beeinträchtigt linear die Zuverlässigkeit, die per MTBF (Mean time between failure, durchschnittliche Zeit bis zum Ausfall) gemessen wird. PC können also grundsätzlich genauso oder sogar zuverlässiger sein als SPS.

PC Systeme müssen so gefertigt sein, dass sie in den Einsatzbereichen und deren Umgebungsbedingungen spezifiziert sind. Mittlerweile gibt es für sehr viele Umgebungen spezifizierte Industrie - PC.

Hard Disk als rotierendes Medium - Randbedingungen?

Rotierende Massenspeicher sind heute sehr zuverlässig: die Ausfallrate von robusten Modellen im praktischen Einsatz ist sehr gering. In besonderen Anwendungen, etwa bei vibrierender Umgebung, können Flash - RAM Disks eingesetzt werden. Auch Windows NT ist in Versionen für RAM - Disk Einsatz verfügbar. Beckhoff bietet entsprechende Versionen an.

Ist Windows tauglich für die Automatisierung?

Windows NT ist nicht deterministisch, und in diesem Sinne nicht für die Automatisierung geeignet. NT, seine Architektur und Fähigkeiten sind eine gute Basis für Applikationen im Bereich der Bediensysteme für die Automatisierung. Das GUI (Graphical User Interface), die Informationsverarbeitung und Kommunikation in der Automatisierung können sehr gut mit Windows NT bearbeitet werden.

Auf der Windows Basis hat der Anwender die Wahl aus der größten verfügbaren Softwareplattform weltweit: Applikationen können sehr schnell daraus maßgeschneidert werden. Excel, Visual Basic, C++ oder Windows - Programme werden über OLE Verbindungen an TwinCAT Echtzeitanwendungen angebunden.

Kann PC Technologie 10 Jahre Austausch gewährleisten?

Der "PC Standard" lebt bereits sehr lang - alte Programme können immer noch genutzt werden. In der herkömmlichen Technik musste ein einzelner Hersteller eine zehnjährige Lieferbereitschaft garantieren, damit Investitionssicherheit gewährleistet war.

In der PC Technik kann der Anwender nun aus einer Reihe von Quellen einkaufen. Da der PC - Standard von einer großen Anzahl von Firmen genutzt wird, gibt es neben Liefersicherheit ebenso eine rasche Weiterentwicklung der Technik in Form von kompatiblen Geräten: Funktionskompatibilität kann gewährleistet werden. Softwareinvestitionen sind langfristig geschützt.

Allerdings kann der Anwender nur sicher sein, solange nicht doch eine Abhängigkeit, z.B. von einer speziellen Zusatzkarte, existiert: Nur die reine Einprozessorlösung realisiert alle Funktionen in Software, so dass grundsätzlich jede kompatible Hardware eingesetzt werden kann.

Was passiert, wenn die SPS stehen bleibt?

Wie bei jeder üblichen Hardware - SPS auch, bestimmt das eingesetzte E/A System wie sich die Ausgänge verhalten: Beckhoff E/A besitzt Watchdogs zur Steuerung der Busknoten in einem fehlersicheren Zustand.

Jedoch gilt für jedes Automatisierungsgerät mit Softwareeingriff (also für SPS genau wie für PC), dass sicherheitsrelevante Funktionen mit unabhängigen und den üblichen technischen Vorschriften entsprechenden Vorrichtungen (Notaus, Zugangssicherung) gesichert sein müssen.

Ist NT echtzeitfähig?

Im Sinne von "harter" Echtzeit (deterministisch im µs Bereich): Nein. NT wurde für optimale Performance und nicht für deterministische Bearbeitung entworfen. Die typischen Latenzzeiten des NT Schedulers sind für langsame Prozesse echtzeitfähig, jedoch nicht für typische Automatisierungs- und Antriebslösungen (vgl.: Dr. Ing. Wollert, J., Doping für den Betriebssystemkern, Elektronik 1997, H. 20, Franzis Verlag; Realtime Systems with Windows NT, Technology Brief, Microsoft Developers Network, 1995).

Mittels eines zweiten Schedulers wird eine "harte" Echtzeitfähigkeit im µs - Bereich erreicht, die für die genannten Anwendungen ausreichend ist. Dieser Scheduler ist eine Erweiterung des Kernels, so dass TwinCAT Programme voll in NT und dessen Schnittstellen integriert sind.

Wird NT verändert, wenn TwinCAT installiert wird?

Nein: die Architektur von TwinCAT erlaubt eine Integration in Form eines Kernel mode Drivers (.sys) ohne Veränderungen von NT. Das ist besonders vorteilhaft, da auf diese Weise NT nicht verändert (gepatcht) werden muss: das jeweils aktuelle NT kann aus einem Vertriebskanal von Microsoft weltweit beschafft und genutzt werden.

Warum ist eine SPS deterministisch, und kann das ein PC auch?

Eine SPS ist nichts anderes als ein Mikroprozessorsystem mit einem proprietären, deterministisch arbeitenden Betriebssystem.

Die Leistung von PC ist in jedem Falle groß genug, um einen deterministischen "Kernel" gemeinsam mit dem Betriebssystem zu verarbeiten. Die Technologie liegt in der sauberen Implementierung.

Arbeitet ein TwinCAT PC so zuverlässig und deterministisch wie eine SPS?

Ja, der SPS - Taskaufruf durch die NT Kernel Extension von TwinCAT ist in gleicher Weise deterministisch wie bei einer SPS. Die Zuverlässigkeit des Systems wird durch eine stabile industriefeste Hardware gewährleistet.

Was passiert, wenn NT durch Belastung "aushungert?"

Die Rechenkapazität des Prozessors wird zwischen TwinCAT und NT geteilt: diese Grenze ist einstellbar. TwinCAT belegt jedoch nur die unumgänglich notwendige Kapazität und gibt freie Kapazität an NT zurück:

Auf diese Weise kann weder NT noch TwinCAT den Prozessor zu 100 % belegen und damit das jeweils andere System zum "Stillstand" bringen.

Wie kann man die Echtzeiteinstellung vornehmen und wie bemerkt man Last - Überschreitungen?

In den Systemeinstellungen (über das TwinCAT Symbol in der Taskbar erreichbar) kann die Echtzeitlast - Grenze eingestellt werden, dort ist auch die aktuelle Lastanzeige vorhanden.

Überschreitungen der eingestellten Lastgrenze führt dazu, dass die SPS - Programme nicht rechtzeitig zum nächsten Aufruf abgeschlossen sind. TwinCAT bietet eine Anzeige der genutzten und Einstellung der verfügbaren Rechenkapazität zur Systemeinstellung.

Zusätzlich kann ein SPS Programm so lange benötigen, dass es innerhalb der eingestellten Zykluszeit (Taskeigenschaften) nicht fertig wird: Es wird ein Zyklusaufruf "verspätet" ausgeführt, die Zykluszeitüberschreitung wird mittels Systemmerker angezeigt: eine Reaktion kann programmiert werden. Für Windows Programme kann eine Meldung generiert werden.

Kann die Echtzeitanzeige und -einstellung abgeschaltet werden?

Ja: in der Registry gibt es einen Eintrag der das System Popup Menü beeinflusst. [HKEY_LOCAL_MACHINE\SOFTWARE\Beckhoff\TwinCAT\System] "SysPopupMenuType"=dword:00000002

Mit SysPopupMenuType = dword: 0000 0000 hat der Benutzer ein eingeschränktes Menü.

Kann NT ohne Anmeldung hochgefahren werden ?

In der Registry gibt es einen Eintrag der das automatische Einloggen in NT erlaubt, wenn man als Administrator mit Passwort angemeldet ist.

Kann man in TwinCAT die PC Schnittstellen benutzen?

Ja, jedoch nicht gleichzeitig mit dem Betriebssystem.

Kann vorhandenes Feldbus I/O angebunden werden? Wie?

Bestehende Feldbussysteme können einfach eingebunden werden: Mittels einer Masterkarte für den Feldbus im PC wird TwinCAT an das Feldbussystem angebunden. TwinCAT unterstützt derzeit eine Reihe von Feldbussen und Masterkarten.

Kann man Lageregelung und SPS und Bedienprogramm auf einer CPU betreiben?

Ja, TwinCAT organisiert sowohl die Taskbearbeitung für Lageregelung als auch für SPS und die Windows NT Bearbeitung gleichzeitig. Die Leistung von PC Prozessoren erlaubt die Bearbeitung aller Aufgaben auf einer CPU, die Systemlastanzeige gibt ein Maß für die CPU - Belastung durch SPS und Achsregelung.

Muss man sich um Tasksynchronisierung und -kommunikation kümmern?

TwinCAT organisiert den Datenaustausch zwischen Tasks konsistent und sowohl in synchroner als auch in asynchroner Weise. Der Systemmanager ist das Werkzeug zur Einstellung der Datenaustausche zwischen Tasks.

Wie kann man Echtzeitprogramme debuggen?

Der TwinCAT IEC61131-3 Compiler erlaubt eine leistungsfähige Analyse von Programmen in 5 verschiedenen Programmiersprachen mit Ablaufkontrolle, Breakpoints und Variablenanalyse, zusätzlich ist ein Datentrace verfügbar.

Es gibt die Möglichkeit, C- Funktionen einzubinden, deren E/A - Daten mittels Variablenanalyse und Datentrace untersucht werden können.

Gibt es Inkompatibilitäten zu Hardware oder Software?

Nein, derzeit sind keine Hardware - Inkompatibilitäten von TwinCAT für PC kompatible PC mit Einprozessor - Motherboards bekannt. Allerdings können unsaubere Kernelmode - Treiber, die Windows NT beeinträchtigen, auch TwinCAT beeinträchtigen, typisches Beispiel: Grafikkartentreiber.

Vorteil von NT ist, dass diese Kernelmode Treiber nur mit Administratorrechten installiert werden können. Darüber hinaus bietet TwinCAT eine Jitteranzeige zur Identifikation solcher Treiber.

Wann führt die SPS einen Kaltstart, wann einen Warmstart aus?

Wie bei einer herkömmlichen SPS kann TwinCAT einen Kaltstart mit Variableninitialisierung oder einen Warmstart (Stop -> Start) ohne die Initialisierung von Variablen durchführen. Bei Einschalten des Rechners wird das Startprogramm geladen und automatisch gestartet, wenn die Option "Boot" gewählt ist. Sollen Variablen gesichert werden, können sie als remanente Daten angelegt werden.

Sind dynamische Variablen verfügbar?

Zunächst kann man lokale Variablen anlegen, die nur in einer Instanz zur Verfügung stehen. PLCopen erwägt die Einführung dynamischer Variablen. Es gibt (noch) keine Pointer.

Was sind VAR_IN_OUT Variablen?

VAR_IN_OUT Variablen werden als Pointer übergeben, dadurch entfällt das Umkopieren von Daten in und aus einer Instanz. Lokierte boolsche Variablen können nicht als VAR_IN_OUT übergeben werden.

Ein 5000 x 10 Array wurde erstellt. Bei der Statusanzeige wurden nur ca. 16.000 Werte angezeigt?

Das Debuggersystem besitzt Grenzen für die Datenanalyse: die Puffergröße für das Monitoring ist überschritten worden.

Gibt es Grenzen für die Größe von Variablen, z.B. Arrays?

Es gibt eine Beschränkung auf 64.000 Bytes pro Variable, die zukünftig entfallen wird.

IEC61131 kennt keine Pointer. Gibt es doch Pointer?

Es gibt momentan noch keine Zeiger. Mit Release 3.0 von TwinCAT werden Pointer zur Verfügung stehen. Bei der Nutzung von Pointern kann keine Gewährleistung für korrektes Arbeiten von Programmen übernommen werden - der Nutzer trägt die Verantwortung selbst.

Gibt es Strukturierungsmöglichkeit für den Gültigkeitsbereich von Variablen?

Es können lokale und globale Variablen angelegt werden.

Welche Sprache kann wofür eingesetzt werden?

Es gibt keine klare Vorgehensweise, aber eine empfehlenswerte:·

  • ST bei algorithmischen Berechnungen,
  • FUP bei Programmaufrufen,
  • KOP z.B. für Verriegelungen,
  • AS bei schrittweisen Abläufen,
  • AWL bei Bitverarbeitung.

Die typischen Anwendungen für Sprachelemente richten sich nach den gängigen Mustern, Sprachelemente einzusetzen.

Welche Programmiersprache ist die schnellste bei der Ausführung?

Testergebnisse waren:

100.000 mal Und-Verknüpfung in AWL = 76ms

100.000 mal Und-Verknüpfung in ST = 74ms

1.000 mal FOR-Schleife 0 to 99 in AWL = 38ms

1.000 mal FOR-Schleife 0 to 99 in ST = 40ms

ST ist etwas (aber unwesentlich) schneller als AWL, weil hier kein zusätzlicher Code für die Ablaufkontrolle erzeugt werden muss. Die Codegenerierung ist sehr gut, mit C dürfte kein schnellerer Code zu erzeugen sein. Außerdem ist in C geschriebener Code nicht im PLC Control analysierbar. FUP und KOP sind nicht sehr viel langsamer als ST.

Kann man auf Variablen der SPS über OCX zugreifen? Wie schaut ein solcher Zugriff aus ?

Es kann mit verschiedensten Mechanismen auf die Variablen zugegriffen werden (synchron, asynchron, on change usw.). Es kann eine Sammlung von Beispielen mit TwinCAT installiert werden. Hier werden alle Funktionen im Beispiel gezeigt (nur Visual Basic).

Hat man Zugriff auf jeden Teil des Programmiersystems über OCX ?

Das OCX stellt Zugriffe auf Variablen und Methoden der Server zur Verfügung. Der Zugriff erfolgt auf alle Variablen (lokal und global), sowie auf alle Typen (elementar und strukturiert) und das ganze noch symbolisch oder per Adresse.

Besteht die Möglichkeit der indizierten Bearbeitung von direkten Adressen (MW) ?

Auf Bits eines Wortes oder Bytes kann - überlappend - zugegriffen werden. Beispielsweise besitzt %MW1 die Bits %MX1.0 bis %MX1.15.

Der Datentrace funktioniert als Ringpuffer mit Pre- und Posttrigger. Was kann eingestellt werden?

Derzeit sind mehr als 500 Einträge je Variable möglich (abhängig von den aufzuzeichnenden Variablen). Der Ringpuffer wird nicht mehr beschrieben, wenn ein Triggerereignis eingetreten ist. Der Puffer kann dann aus-gelesen und als ASCII - File abgespeichert werden. Während der Aufzeichnung können keine neuen Variablen aufgezeichnet werden, eine Umschaltung der Anzeige ist jederzeit möglich (max. 20 Variablen, davon 8 in der Anzeige). Die kleinste Abtastzeit ist die Zykluszeit der Task, also zyklussynchrone Aufzeichnung. Es kann bestimmt werden, wie viel Prozent der maximal möglichen Daten vor und nach dem Triggerereignis im Ringpuffer stehen sollen.

FB-Statusanzeige: Wie kann ein FB (mehrfach verwendet) im Status für einen speziellen Aufruf angezeigt werden?

Unter ‚Projekt' 'Instanz öffnen' kann eine Instanz eines FBs analysiert werden. Im Objektverzeichnis (linkes Fenster) muss dazu der Cursor auf dem FB stehen. Bei der Auswahl der Instanz wird die Aufrufhierarchie mit angezeigt.

Nach welcher Programmänderung ist Kaltstart / Warmstart erforderlich? Beim Kaltstart werden VAR_RETAIN initialisiert. Wie können Sollwerte in der SPS dennoch gespeichert werden?

Kaltstart mit neuer Codegenerierung ist nötig nach Modifikationen in der Taskkonfiguration oder nach Modifikation im Bibliotheksverwalter (Hinzufügen oder Löschen von Bibliotheken). Retaindaten werden erst nach Stop des TwinCAT System gespeichert und erst mit dem Start von TwinCAT wieder geladen (wenn ein Bootprojekt vorliegt). Beim Kaltstart ohne Restart des TwinCAT System wird mit Initialdaten gestartet. Sollwerte können mittels einer Watchliste (besser Rezeptliste) aus der SPS abgezogen und auf Knopfdruck wieder in die SPS zurückgespielt werden.

Gibt es Teilcompilierungen oder muss immer das ganze Programm compiliert werden?

Bei einem "Rebuild all" wird das gesamte Projekt neu compiliert. Wird ein Online - Tauschen durchgeführt, wird nur der geänderte Code erzeugt und geladen. Nach einem Rebuild all ist kein Online Tauschen mehr möglich: Es muss komplett geladen und kaltgestartet werden.

Wenn das SPS-Programm in der eingestellten Taskzeit nicht fertig wird, was passiert dann?

Es gibt einen Systemmerker Bereich, in dem der Zustand des Systems dargestellt wird. Überschreitungen der eingestellten Lastgrenze oder der Zykluszeit eines Programms führt dazu, dass die SPS - Programme nicht rechtzeitig zum nächsten Aufruf abgeschlossen sind: Es wird ein Zyklusaufruf "verspätet" ausgeführt, die Zykluszeitüberschreitung wird mittels Systemmerker angezeigt: eine Reaktion kann programmiert werden. Für Windows Programme kann eine Meldung generiert werden.

Unter der Echtzeit-Konfiguration befindet sich der Zweig zusätzliche Tasks.

Diese Tasks sind für Anwender, die ohne Programmierung ein einfaches Scannen (zyklisches Abtasten) vom Feldbus durchführen wollen.

Wie sieht ein zeitoptimierter, berechenbarer Datenaustausch zwischen zwei TwinCAT Systemen auf zwei PC`s aus?

Zwischen zwei TwinCAT Systemen auf zwei PC können mit TCP/IP Daten ausgetauscht werden. Der Austausch erfolgt asynchron zum Zyklus und ist abhängig von der Netzbelastung - ein lokales Netzwerk ist vorteilhaft. Zu den TCP/IP Verbindungen gibt es Funktionsbausteine ADSWrite und ADSRead zum Datenaustausch. Ein Austausch über einen Feldbus ist ebenso möglich, dabei ist ein PC der Master, ein anderer der Slave.

Kann NT mit TwinCAT auf einem Multiprozessorsystem auf bis zu 4 Prozessoren aufgeteilt werden?

Das ist prinzipiell möglich, wird jedoch derzeit nicht unterstützt.

Was passiert genau bei Online-Änderungen?

Dieses Verfahren erlaubt Änderungen bei laufender SPS. Bei Online - Änderungen wird der Deltacode - also die letzten Änderungen - gebildet, dieser Code wird direkt nach dem Login auf die Steuerung (ins Laufzeitsystem) gespielt und dort gespeichert. Wenn die Änderungen aktiviert werden, so wird am Ende des gerade laufenden Zyklus der Code "umgehängt". Da nun der Code zweimal vorhanden ist, erfolgt in den nächsten Zyklen eine Reorganisation des Speichers (garbage collection).