SIMATIC WinAC ODK (Open Development Kit)

Integration of special tasks


PC-based solutions typically include technological tasks such as image processing, measured value acquisition and numerical controls. The new WinAC option Open Development Kit (ODK) allows flexible use of all PC resources from the control program via three different interfaces in orderto provide highperformance expansion of the PLC functionality. All the operating system functions and system resourcesof Windows are available to the programmer for this purpose, also providing access to external hardware and software components.

An ODK application is developed with a standard development environment for C-/C++ programming, such as Microsoft Visual Developer’s Studio. This provides the application developer with the familiar environment tailored to Windows applications. C++ programming knowledge is not required for integrating such applications into the WinAC control program. The ODK applications can be used like normal system functions in the STEP 7 program.To the top of the page

Area of application

WinAC ODK offers three interfaces for the following applications: 

  • Custom Code Extension Interface (CCX) for calling your own high level language programs from the WinAC control program
  • Shared Memory Extension Interface (SMX) for high-speed WinAC data exchange with Windows applications
  • Controller Management Interface (CMI) for integrating the WinAC Panel functionality into a Windows application

Custom Code Extension Interface (CCX)

ODK includes an application wizard and a class library for simple programming in Microsoft Visual Studio. The program running outside WinAC is developed with Visual C# – or with Visual Basic or Visual C# for Windows applications – and generated as DLL or Real-Time DLL. The DLL is called with the help of three systemfunctions (SFC 65001, 65002, 65003).
The C program can be executed in three different ways:

  • Synchronously, that is, processed as part of the PLC cycle 
  • Asynchronously, that is, started by the PLC program and terminated in the background
  • Continuously, that is, processed parallel to the PLC program

CCX and SMX applications can be executed both under Windowsas well as in the real-time core used by WinAC RTX. An additional tool from the manufacturer of the real-time core is required for developing real-time CCX applications. This allows diverse applications to be implemented.

Some examples include:

  • Connection of fieldbus cards to WinAC 
  • Integration of robot control software into WinAC 
  • Direct access to Windows file system 
  • Implementation of special communications protocols 
  • Complex calculations for control of the quality of packaging film
Operator interface of the application wizard with class libraries andC++ program
The Custom Code Extension Interface (CCX) offers the facility of callinghigh level language programs from the control program of the WinAC softwarecontrollers

Shared Memory Extension Interface (SMX)

Via SMX, ODK supports the development of applications requiring data exchange between Windows applications such asVisual C++ and WinAC, as is the case, for example, in closed-loop control or image processing tasks.This data exchange is especially fast via the a dual-port RAM (DPR) or shared memory, accessed by both the external C++ programand the PLC program. ODK includes libraries for reading and writing to this DPR according to the polling method. From theviewpoint of the WinAC, the DPR represents a 4KB I/O area that can be accessed with load/transfer commands.

Typical applications of the SMX:

  • Connection of motion control systems 
  • Connection of systems for measured data acquisition and analysis
  • Transfer and backup of large volumes of production and quality data
  • Direct and high-performance integration of an order database
The Shared Memory Extension Interface (SMX) enables data exchange betweensoftware controllers and Microsoft applications

Controller Management Interface (CMI)

With ODK, the function of the WinAC Panels can be integrated into a Windows application
(see figure). For this purpose, the CMI provides the application with the following functions of the WinAC Panel:

  • LED status 
  • Start and stop of the WinAC 
  • Subsequent loading of programs
  • Integration of the WinAC Panel into an HMI application 
  • Remote operation of the WinAC
  • Implementation of specific user rights
The Controller Management Interface (CMI) integrates the WinAC Panelfunctionality into a Windows application

To the top of the page

WinAC Target

WinAC Target is a tool to simplify integration of MATLAB/Simulink algorithms into WinAC RTX.

MATLAB/Simulink, a software from The MathWorks, is frequently used in automation systems in the development and simulation of complex open-loop and closed-loop control algorithms.

Integration of MATLAB/Simulink algorithms with WinAC Target

MATLAB/Simulink is used to model and simulate processes and PID closed-loop control structures graphically. Simulink sub systems can be coded into C/C++. This code is then integrated into a WinAC ODK project and can be accessed and executed via DLL/RTDLL from the S7 program.

Integration of a Simulink algorithms into WinAC RTX
Integration of a Simulink algorithms into WinAC RTX


  • Simple integration of Simulink algorithms into WinAC RTX
  • External mode of Simulink to monitor Simulink algorithms and to manipulate integrated model parameters on the fly:
External mode with Simulink
External mode with Simulink
  1. Graphical online view of the running process
  2. Change of internal model parameters with Simulink
  • Manipulate internal model parameters in the STEP 7 user program.

WinAC Target offers the following benefits:

  • Download free of charge
  • Automatic coding into SCL source and into DLL / RTDLL file
  • No C / C++ knowledge necessary
  • Optimised work flow for the integration of Simulink models in WinAC RTX
  • Effective start-up and diagnostics with Simulink and external mode
  • Flexible change possibilities of internal model parameters in the running process by means of the STEP 7 program

On the Industry Online Support home page a detailed example project and a step-by-step manual is available. The Integration of MATLAB/Simulink sub systems with STEP 7 V5.x or STEP 7 Professional V1x (TIA Portal) is presented on a powerful SIMATIC IPC with WinAC RTX. Download is for free.

To the top of the page

Technical data

ODK-Programming languages
Real-Time application 
Windows application
C/C++Visual BasicC#
TopicWinAC ODK V4.2
Operating systemWindows XP
Professional SP2 and SP3
Required softwareMS Visual Developer Studio V6.0
.net 2003, 2005, 2008;
IntervalZero SDK
(suitable for the real-time core version
of WinAC RTX for real-time CCX and SMX applications)