Kithara RealTime Suite

Windows Real-time Extension for PC-based Automation

Kithara RealTime Suite is a modular real-time extension for Windows operating systems. It allows for the efficient development and im­ple­men­tation of industrial applications for automation, machine control solutions as well as image processing in real-time.

Almost every function can be used both from the real-time context as well as the application context. This allows developers to decide on a case-by-case basis whether to access hard­ware directly out of the application level or if “hard real time” is required.

In order to gain “hard” real-time capabilities, it is necessary to run the application code in the kernel mode of the system. This step is provided by the software. The required programming languages need to be be able to generate native x86 or x64 machine code, e. g. C/C++ or Delphi. The hardware-dependent and time-critical code is transferred to a DLL, which is then loaded directly into the real-time context. This way, the .NET environment is supported as well, so that even C# can be used as programming language for the main parts of the application.

32-bit as well as 64-bit applications can be generated from a single uniform code base. Both versions are completely source code compatible—with a special module (KiK64) even binary compatible.

The software provides immediate accessibility with program frameworks for programming languages as well as compilers listed below.

Download the free trial version now!

Core features

  • High-precision real-time timers with frequencies of over 100 kHz
  • “Dedicated” real-time mode on exclusively used CPU cores with extreme real-time capabilities due to the avoided Windows influence
  • Priority-based preemptive real-time multitasking
  • Real-time automation with a specially developed EtherCAT® Master or CANopen® Master
  • Industrial machine vision with GigE Vision® and USB3 Vision® in real time
  • Event-triggered raw Ethernet-, UDP- and TCP-communication in real time with up to 10 Gigabit Ethernet (10 GBit/s)
  • Real-time CAN/CAN FD with vendor-independent API for boards from esd, EMS, IXXAT, Kvaser and Peak (others on request)
  • Real-time FlexRay and LIN
  • Hardware-dependent programming: I/O ports, physical memory, interrupts
  • Supports PCI, PCIe and PCMCIA boards, USB devices, serial COM ports (UART)
  • Code execution at kernel level; supports C/C++ and Delphi (native code generation required)
  • Supports Windows 7, 8 and 10 with 32 or 64 bit. Request your non-binding upgrade offer now!
  • Licence management with online activation or USB dongle

Kithara RealTime Suite currently consists of more than 20 different modules. Modules can be freely combined depending on individual requirements. Few dependencies exist.


Basic Functions

Base/Kernel Module

  • Supports the following operating systems: Windows 7, 8 and 10 (32 and 64 bit), Server 2008 R2 as well as Embedded versions
  • Supports PIC and APIC hardware, NUMA multi-processor PCs, Hyper-threading, multi-core etc.
  • Functions for: opening the driver, execution of real-time code at kernel level, real-time memory management, device handling, version information, debugging support, system information
  • Application threads, events, callbacks, shared memory, data and message pipes, fast mutex objects

Further information …

System Module

  • Interception of system events, e. g. faults and system crashes at the kernel level (e. g. FailSafe-Handler/"BlueScreen-Handler")

Further information …

Real-Time System

Clock Module

  • Monitoring the system time in different time and user-specific formats, resolution up to 0.10 μs
  • Highly accurate short time delays
  • Long-term synchronization of system clocks, synchronization with EtherCAT Distributed Clocks (DC) and IEEE 1588

Further information …

RealTime Module

  • Programming of highly accurate real-time timers by the highest system priority
  • Max programmable frequency higher than 1 kHz, Jitter in the microsecond range

Further information …

MultiTasking Module

  • Priority-based preemptive real-time multitasking
  • Max. 255 priority levels, avoidance of priority inversion by priority inheritance, dynamic priority adjustment
  • Events, semaphore, timer, support of multiple CPU cores, tasks can be assigned
  • Operation on one or multiple exclusively used CPU cores in real-time to avoid Windows influence
  • Max. task frequency up to 100 kHz and more, Jitter less than 1 μs in dedicated mode
  • Speedloop mode for highly accurate cyclic execution of real-time code up to 1 MHz on specific hardware

Further information …

Storage Module

  • Real-time data storage via NVMe SSD with the most recent capacities
  • Highspeed reading and writing with over 2 Gbyte/s
  • UDF data system

Further information …

Communication

Network Module

  • Ethernet communication up to one gigabit per second with any protocols, e. g. IP
  • Raw Ethernet as well as UDP/TCP (server and client protocols)
  • Event and request driven control, automatic determination of memory adrdresses through ARP-support
  • IP- and MAC-Multicast, Broadcast, Jumbo-Frames according to the used controller
  • Support of Intel- or RealTek-Network-Controller (hardware-support on request)
  • Support of BroadR-Reach

Further information …

Serial/UART Module

  • Serial communication in real-time by special hardware drivers on UART16550 compatible hardware
  • Signal and handshake lines can be controlled directly
  • Handler for all interface events in real-time
  • Alternative API for all Windows-based COM ports provided without real-time

Further information …

Device Module

  • Includes a Windows programming interface for communication devices (ReadFile, WriteFile, DeviceIoControl)
  • Any device names possible, for example virtual “COM ports”

Further information …

USB Driver Module

  • Communication with USB devices up to USB 3.1
  • low, full, high-speed
  • control, bulk, interrupt and isochronous transfers
  • Response to all plug and play and power management events

Further information …

USB RealTime Module

  • Communication with USB devices up to USB 3.1 via direct and exclusive access to XHCI (Extensible Host Controller Interface)
  • Fast reaction times and maximum data throughput
  • Control, bulk, interrupt and isochron transfer
  • Reaction to plug and play as well as power management events

Further information …

Hardware Access

IoPort Module

  • Access to all I/O registers of the PC application or DLL
  • Determination of the PCI configuration data and resource data

Further information …

Memory Module

  • Access to external physical memory (Dual-Port-RAM)
  • Provision of PC memory for external hardware (DMA memory)

Further information …

Interrupt Module

  • Processing of hardware interrupts at the application or kernel level
  • Use of the operating system mechanisms for interrupt processing
  • By using the RealTime Modules interrupts of PCI or PCIe Hardware can be processed

Further information …

MultiFunction Module

  • Access to multi-function-extension cards in real-time
  • Functions for A/D-, D/A- and digital I/O for controlling and data acquisition, analog single value and sequenz
  • Uniform API for cards of a variety of manufacturers

Further information …

Automation

EtherCAT Module

  • EtherCAT Master in real-time
  • Automatic determination of EtherCAT topology; Synchronization via XML file or SII protocol
  • Process and service data communication (PDO+SDO) as well as mailbox communication
  • CoE, EoE, FoE, SoE, DC, Safety-over-EtherCAT (TwinSAFE)

Further information …

CANopen Module

  • CANopen® Master in real-time, automatic identification of CANopen topology
  • Process data and service data communication (PDO + SDO) as well as mailbox communication

PLC Module

  • SoftPLC implementation in accordance with IEC 61131-3
  • Support of instruction list (AWL/IL) and Structured Text (ST)

Further information …

Image Processing

Camera Module

  • Image acquisition from GigE Vision® and USB3 Vision®cameras in real-time
  • Multiple cameras simultaneously usable, Hot-plugging, error handling, configured according to GenlCam® 2.0

Further information …

Vision Module

  • Image processing in real-time
  • Supports Halcon Version 10, 11 und 12
  • Supports OpenCV 3

Further information …

Automotive

FlexRay Module

  • FlexRay communication in real-time
  • Windows PC utilized as FlexRay node
  • Assignment as leading or following node

Further information …

CAN Module

  • Real-time communication over CAN (Controller Area Network)
  • Supports cards from Peak, Star Cooperation (Eberspächer), EMS Dr. Wünsche, ESD, Ixxat and Kvaser (hardware support on request)
  • Support for CAN FD (Flexible Data Rate)

Further information …

LIN Module

  • Real-time communication over LIN (Local Interconnect Network)
  • Communication via UART (hardware support on request)

Further information …

Libary

Runtime Library

  • Mathematical/trigonometric and String-Memory functions in real-time
  • Supports application and kernel level

Further information …

SigProc Module

  • Digital signal processing in real-time
  • 20 predefined filters or user-defined
  • Real-time feedback control with PID algorithm

Further information …


Customizable Software Combination

Freely combine your individal set of functions or contact us so we can help you choose the right modules. This custom driver gives you highest possible flexibility and has the following features:

  • Freely customizable software package, few dependencies between modules
  • Set individual names for development and runtime files
  • Simplified installation (no registry entry)
  • Regarding new versions, no modifications are necessary
  • With the purchase of the module you will automatically receive a developer's license
  • Favourable price scale conditions for runtime licenses
  • Always state of the art software due to quarterly updates via download
  • Extension of update service by an additional 12 months
  • 3 different support packages (3, 6 or 12 months) for developer support (consulting, concept development, analysis)
  • Expandable at any time with additional modules

Our qualified Support-Team provides you with the best possible solution for integrating the software into your project and our development support also assists you with questions beyond the software.


Platforms

Real-time capability can only be achieved on the kernel level. For this purpose a programming language is required that is able to generate native x86 or x64 machine code, e. g. C/C++ or Delphi. Nevertheless Kithara RealTime Suite supports various platforms, for example a .NET environment. The solution is, to transfer the time-critical code into a DLL, which will be loaded directly into the real-time context at the kernel level. Kithara RealTime Suite provides all this functions. Instantly usable program frameworks for the platforms mentioned above are part of every software delivery.


System Requirements

Kithara RealTime Suite supports a wide range of hardware and software combinations. If you have further questions regarding the system support, please contact us!

Operating system

The software supports the following operating systems:

  • Windows 7, 8 and 10, each 32 and 64 bit, dedicated mode
  • Windows Server 2012, 2015, 2017, dedicated mode
  • Windows Server 2008 R2, 64 bit, dedicated mode

Hardware

The software runs on the following hardware:

  • CPU: AMD (Athlon) or Intel (Pentium 2), 32- or 64-bit
  • Dual- or multi-core; optional hyper-threading with multi-core, currently up to 48 logical CPUs, higher on request
  • ACPI recommended (Advanced Control and Power Interface), APIC recommended (Advanced Programmable Interrupt Controller). Some features require ACPI-APIC
  • the PC must be able to support PAE (Page Address Extension)
  • Using Gigabit-Ethernet up to 40 Gbit/s, controller of Intel and RealTek are generally supported

Compiler

Immediately usable program frameworks for the following programming languages / compilers are included in the supplied software (other programming languages can be supported on request):

  • Visual Studio 20xx C++ with MFC user interface (supplied project files: VS 2010/12/13/15/17)
  • C++ Builder (Embarcadero, formerly Borland) VCL user interface
  • Delphi (Embarcadero, formerly Borland) VCL user interface
  • Visual Studio 20xx C# with WPF user interface (incl. C++ DLL for real-time execution, supplied project files: VS 2010/12/13/15/17)

In order to execute code in a real-time context, generally any compiler that can generate a DLL with native machine code, is usable. Furthermore, the Windows application can also be generated with other programming languages, such as C#.


EtherCAT® is a registered trademark of the EtherCAT Technology Group.
CANopen® is a registered trademark of the CAN in Automation e. V.
GigE Vision® is a registered trademark of the Automated Imaging Association.