API Reference
The API reference is generated from the Framework libraries.
Libraries
ZCore
Core primitives used by every Framework application. This is the foundation layer everything else builds on.
| Category | Key types |
|---|---|
| Steps and sequences | Step, IStep, Sequence, ISequence |
| Objects, errors, tracing | IObject, Object, IError, IErrorTrace |
| Managed & unmanaged | IManagedObject, IUnmanagedObject |
| Buffers and parameters | RingBuffer, IParameterChannel, ParametrizeSequence |
| Date/time, runtime | IDateTime, IRealTime |
| EtherCAT (interfaces) | IEthercatMaster, IEthercatSlave, IEthercatSyncUnit |
| I/O, HTTP, logging (interfaces) | IDirectory, IFile, IHttpClient, ILogger |
| Synchronization, singleton | IMutex, Instance |
| Filtering, control, splines | Pt1Filter, CatmullRomSpline, Pid |
| Unit testing | IUnitTest |
ZPlatform
Platform abstraction layer. Provides TwinCAT-specific implementations of Framework interfaces so the upper layers remain portable.
| Category | Key types |
|---|---|
| Date and time | TimestampToString, TON |
| EtherCAT (I/O) | EthercatMasterInput, EthercatMasterOutput, EthercatSlaveInput, EthercatSyncUnitInput |
| File system | DirectoryUM, FileUM |
| Logging (TwinCAT) | LoggerAdsLogStr, LoggerTc3EventLogger |
| Parameter access (unmanaged) | ParameterChannelCanUM, ParameterChannelScpUM |
| PLCopen / NC | PlcOpenAxisRef, PlcOpenDrive |
| Runtime integration | PlatformAdapterObject |
| Synchronization | Mutex |
| Persistence | WritePersistentDataUM |
| Strings | StrFormat |
| Memory / math | MemCpy, Floor |
ZAux
Auxiliary utilities that are independent of the fieldbus or application architecture. Use these anywhere in your PLC.
| Category | Key types |
|---|---|
| Logging | Logger, LoggerFile7FF, LoggerBuffered |
| String handling | StringBuilder |
| Date and time | DateTime |
| Parameter access | ParameterPeriodicAccess |
| Filtering | Pt1Filter, CatmullRomSpline |
| HTTP client | HttpClient |
ZEquipment
Equipment objects for fieldbus-connected hardware. All equipment types support simulation mode so you can develop and test without physical hardware.
| Category | Key types |
|---|---|
| Axes | Axis, AxisPlcOpenMc |
| Actuators | ActuatorDigital, ActuatorDigitalBiLsNo, ActuatorDigitalBiLsPlusMinus |
| Digital I/O | DigitalInput, DigitalOutput, DebouncedInput |
| Analog I/O | AnalogInputReal, AnalogOutputReal |
| EtherCAT | EthercatMaster, EthercatSlave, EthercatSyncUnit |
| Controllers | OnOffController, PidController |
| Other | Light, PwmController, ModbusMasterSerialPort |
ZApplication
Application-level building blocks: the application context, units, and the program scaffold.
| Category | Key types |
|---|---|
| Application | Application, ApplicationState |
| Units | Unit, IUnit |
| Unit state machine | UnitStateMachine, IUnitStateMachine |
| Application sequences | Sequence |
| Alarming | Alarming, IAlarming |
| Messaging | Messaging |
| Fieldbus and I/O (bridges) | FieldbusBridge, IoBridge, ActuatorBridge |
| Axes (bridge) | AxisBridge, IAxisBridgeBuilder |
ZEquipmentBeckhoff
Beckhoff-specific equipment: stepper terminals, power measurement, resistor bridge, serial on EL terminals, and related types. The PLC communicates with the I/O and terminals directly (not via TwinCAT NC or other motion add-ons for these function blocks). In general, none of these require an additional TwinCAT product license beyond the standard TwinCAT runtime you use to run the PLC.
| Category | Key types |
|---|---|
| Steppers (EL70xx, EL7031) | AxisStepperEL7031, AxisStepperEL7031_0030, AxisStepperEL70xx |
| Power measurement (EL34x3) | IPowerMeasurement, PowerMeasurementEL34x3, PowerMeasurementEL3403 |
| Resistor bridge (EL3356) | IResistorBridgeEL3356, ResistorBridgeEL3356 |
| Serial (EL600x) | ISerialPort, SerialPortEL600x, SerialPortCommandRingBuffer |
ZEquipmentCiA402
ZEquipmentCiA402 is the library for drives that are controlled in the CiA 402 style over EtherCAT. The Framework includes several supported axes (different vendors and motor types), not a single one-size-fits-all block. They all follow the same equipment and axis model as the rest of the stack. Motion runs in the drive; the PLC communicates with it directly, so you use the usual TwinCAT runtime on the controller and do not need an additional TwinCAT NC / PTP license for this style of axis.
| Category | Key types |
|---|---|
| Drive (CiA 402) | IAxisCiA402Drive |
| Lenze i550 | AxisLenzei550 |
| Keba Drive D3 | AxisKebaDriveD3 |
| Servotronix Step/IM | AxisServotronixStepIm |
For a quick overview and how each supported axis compares, see the axes and drives part of the Equipment section.