Vollständige Dokumentation

API-Referenzen, Tutorials und Leitfäden: alles, was Sie für den Einstieg und vertiefende Arbeit benötigen.

Was es ist

Das Zeugwerk Framework ist ein kompiliertes OOP-Framework für TwinCAT 3.1. Es bietet eine klare, konsistente Architektur - Application, Units, Equipment, State Machines, Sequences - die jedes Projekt in Ihrer Organisation nutzen kann. Sie implementieren Ihre Maschinenlogik; das Framework kümmert sich um Infrastruktur und Boilerplate.

Läuft auf: TwinCAT 3.1 · CODESYS auf Anfrage · CtrlX auf Anfrage

Was es Ihnen bringt

  • Applikationsstruktur - Eine definierte Hierarchie: eine Application, mehrere Units, jede Unit besitzt ihr Equipment. Klare Einstiegspunkte, klare Datenzuständigkeit.
  • State Machine - Ein standardisierter Lebenszyklus (Boot, GoHome, Automatic, Stop, FaultReaction), den jede Unit durchläuft. Für spezifische Anforderungen erweiterbar.
  • Sequences - Strukturierte, schrittbasierte Sequenzen mit Await-, Await2-, Await3-Hilfsfunktionen. Keine manuellen Polling-Loops.
  • Equipment-Bibliothek - Einsatzbereite Bausteine: Digital-I/O, Aktuatoren (mono/bistabil, verschiedene Endschalter-Konfigurationen), Achsen (PlcOpen MC, CiA402, Herstellerantriebe), serielle Ports, RFID-Leser und mehr.
  • Logging - Strukturiertes, pro-Zyklus-Logging ohne Performance-Einbuße. In Datei, ADS oder eigene Sinks schreiben.
  • Simulation - Equipment hat eingebaute Simulationsmodi. Logik entwickeln und testen ohne physische Hardware.
  • Testing - Unit-Test-Infrastruktur über ZCore.IUnittest. Integriert mit zkbuild für CI.

Wie es funktioniert

Application → Units → Equipment

Jede Zeugwerk-Applikation hat dieselbe Grundstruktur:

  • Application - der Container. Verwaltet die Bootsequenz, führt alle Units zyklisch aus, stellt Logging, Alarmierung und Feldbusanbindung bereit. Kommunikation und Daten liegen in einer ZGlobal-Variablenliste, sauber getrennt vom Logikcode.
  • Units - handhabbare Teile der Maschine. Eine Unit ist eine Kombination von Equipment, die eine wiederholbare Teilaufgabe erfüllt: eine Transporteinheit, eine Handlingeinheit, eine Kamerastation. Kleine Maschinen haben eine Unit, große viele.
  • Equipment - die Hardware-Objekte. Digital-I/O, Aktuatoren, Achsen, serielle Ports, EtherCAT-Master. Jeder Equipment-Typ ist ein getesteter, wiederverwendbarer Baustein - instanziiert, nicht neu implementiert.

Diese Hierarchie wird durch das Typsystem des Frameworks erzwungen, nicht durch Konvention. Ein Entwickler, der ein Projekt noch nie gesehen hat, kann es von oben navigieren.

State Machines

Jede Unit folgt einem definierten Lebenszyklus: Boot → Init → GoHome → Idle → Automatic → Stop → FaultReaction → Fault. Die Übergänge sind definiert. Operatoren und andere Units interagieren mit einer Unit, indem sie Zustandsübergänge anfordern - nicht indem sie in ihre Interna greifen.

Stop ist immer Stop. GoHome ist immer GoHome. Die Sequenz, die Automatic für eine Fördereinheit implementiert, sieht strukturell genauso aus wie die Sequenz für eine Achspositioniereinheit. Die Business-Logik unterscheidet sich; die Form nicht.

Sequences

Sequenzen verwenden ein REPEAT ... UNTIL-Schrittmuster mit Await-, Await2- und Await3-Hilfsfunktionen. Mehrere Equipment-Objekte können parallel kommandiert werden, und die Sequenz wartet auf alle - ohne Polling-Loops oder Zustandsvariablen, die über den Funktionsbaustein verstreut sind. Die Sequenz liest sich wie eine geordnete Liste von Schritten.

Fehlerbehandlung gehört in die Supervisor-Sequenz, nicht in die untergeordnete. Fehler propagieren nach oben. Eine Teilsequenz bricht mit einer Fehler-ID ab; der Aufrufer entscheidet, was zu tun ist - wiederholen, überspringen, eskalieren.

Equipment-Bibliothek

Das Framework liefert eine getestete Bibliothek für die häufigste Hardware in der Maschinenautomatisierung:

  • Aktuatoren - alle Permutationen von mono-/bistabilen Zylindern mit einem, zwei oder keinen Endschaltern. Mit konfigurierbaren Timeouts, Simulationsmodi und integriertem Logging.
  • Digital- und Analog-I/O - einfache Wrapper mit Simulationsunterstützung und Hilfsmethoden.
  • Achsen - eine einheitliche OOP-API für Beckhoff NC Motion, EL70xx-Schrittmotorsteuerungen und eine wachsende Liste von CiA402-Antrieben (Lenze, Keba, Servotronix u.a.) sowie Herstellerprotokolle (Bosch IndraDrive, Lenze i950, Technosoft).
  • EtherCAT - Master-, Slave- und Sync-Unit-Objekte zur Überwachung und Steuerung des Feldbusses.

Jedes Equipment-Objekt unterstützt Simulation. Logik entwickeln und testen ohne physische Hardware.

Logging

Wenn eine Maschine in der Produktion stehenbleibt, sagt das Log, was passiert ist. Zeugwerks Logger schreibt strukturierte, zeitgestempelte Einträge mit Millisekundenauflösung, asynchron, ohne Performance-Einbuße. In einem 1-ms-Zyklus mit 25 % Taskauslastung verarbeitet er 20 Logeinträge pro Zyklus - ohne externe Tools oder C#-Hilfsprogramme.

Log-Level folgen der Apache-Log4j-Konvention: Trace, Debug, Info, Warning, Error, Fatal. Framework-Interna nutzen Trace und Debug. Info und höher sind für Ihren Applikationscode. Logdatei filtern - und genau die Ereignisse finden, die wichtig sind.

Einführung

Der häufigste Einwand: „Wir haben laufenden Code. Wir können nicht alles neu schreiben."

Das müssen Sie nicht. Der ZApp-Ordner ist in sich geschlossen. Er lässt sich in eine bestehende TwinCAT-Solution integrieren, ohne den umgebenden Code zu verändern. Das Framework wird Unit für Unit eingeführt, neue Funktionalität in der Zeugwerk-Struktur, Legacy-Code unberührt. Zeugwerk Creators Prepare Zeugwerk-Option macht das explizit.

Viele Teams steigen schrittweise ein: Das erste Projekt ist eine neue Unit in einer bestehenden Maschine. Sobald sie läuft, ist das Muster verstanden, und das nächste Projekt geht schneller.

Support

Zeugwerk spricht eine fokussierte Nutzergruppe an. Auf Stack Overflow finden Sie keine vorgefertigten Standardantworten von Fremden. Wenn Sie uns eine Frage stellen, antworten die Menschen, die das Framework gebaut haben, direkt und technisch auf den Punkt.

Für Teams mit hohem Nutzungsvolumen gibt es direkten Roadmap-Zugang, Schulungen und Entwicklungsunterstützung. In der Enterprise-Stufe erhalten Sie den vollständigen Framework-Quellcode in Ihre eigene Git-Infrastruktur mit jedem Release, sodass Ihre Investition nie von einer einzelnen Anbieterbeziehung abhängt.

Für wen es geeignet ist

  • Teams, die mehrere Maschinen mit ähnlicher Struktur bauen und wiederverwendbare, getestete Bausteine brauchen.
  • Organisationen, die über Entwickler und Projekte hinweg standardisieren möchten.
  • Teams, die von unstrukturiertem Code migrieren und sich keinen vollständigen Neuaufbau leisten können (siehe Einführung oben).

Plattformen & Runtimes

Platform-Schicht

Das Framework trennt Applikationslogik (Units, Equipment-Verhalten, Sequences, State Machines) von der laufzeitspezifischen Integration. Der größte Teil des Codes ist über kompatible SPS-Umgebungen hinweg wiederverwendbar. Pro Ziel ändert sich die Platform-Schicht, also die Anbindung an Compiler, I/O, Feldbus und herstellerspezifische Dienste. Die Architektur bleibt; die technische Anbindung wird angepasst.

TwinCAT 3.1

Zeugwerk Framework liefern wir heute für TwinCAT 3.1. Das ist unser Hauptziel: Creator, DevTools, CI/CD-Beispiele und Dokumentation setzen TwinCAT voraus, sofern nicht anders angegeben.

CODESYS und ctrlX AUTOMATION

Portierungen auf CODESYS-kompatible Toolchains und auf ctrlX AUTOMATION sind auf Anfrage möglich. Umfang, Aufwand und Zeitplan hängen von Ziel-Runtime, Hardwareprofil, Lizenzmodell und vertraglicher Ausgestaltung ab. Kontaktieren Sie uns, wenn Sie eine Portierung für eine Produktlinie oder eine strategische Migration prüfen möchten.

Preise

Framework wird pro Runtime lizenziert. Volumenrabatte werden automatisch angewendet.

VolumenPreis / Runtime
UnlizenziertKostenlosLässt sich ohne Lizenzschlüssel installieren und ausführen, zeigt jedoch dauerhaft eine Warnung an. Für den Produktiveinsatz ist eine Lizenz erforderlich.
1-25 Runtimes€ 434
26-50 Runtimes€ 326
51-99 Runtimes€ 244
100+ Runtimes · Enterprise€ 183Vollständiger Quellcode bei jedem Release in Ihrem Git, Roadmap-Zugang, dedizierter Support

Die Enterprise-Stufe, aktiv ab 100 Runtimes, bedeutet: Ihre Investition hängt nie von einem einzelnen Anbieter ab. Sie erhalten den vollständigen Quellcode mit jedem Release und können das Framework lesen, prüfen und unabhängig erweitern.

Der Einstieg ist kostenlos. Installieren Sie das Framework direkt über Twinpack, das Open-Source-Paketregister für TwinCAT. Suchen Sie nach Zeugwerk und fügen Sie es direkt aus der IDE zum Projekt hinzu. Keine E-Mail, kein separater Download, kein Account erforderlich. Ohne Lizenzschlüssel läuft das Framework vollständig, zeigt aber eine Lizenzwarnung. So können Sie alles ausprobieren, bevor Sie kaufen.

Lizenz aktivieren, keine Neuinstallation nötig. Kontaktieren Sie uns für einen Lizenzschlüssel. Es bleiben dieselben Binärdateien und dasselbe Twinpack-Paket, eine Neuinstallation ist nicht erforderlich.

See full pricing →

Angebot anfragen →