Kithara RealTime Suite

Windows-Echt­zeit­erweiterung für PC-gestützte Auto­mati­sierung

Kithara RealTime Suite ist eine modulare Echt­zeit­erweiterung für Windows-Betriebssysteme. Damit realisieren Sie auf einfache Weise industrielle Anwendungen für Auto­mati­sierungs-, Steuerungs- und Regelungsaufgaben sowie Bildverarbeitung in Echtzeit.

Fast sämtliche Mechanismen können sowohl von der Kernel- als auch von der Anwendungsebene aus benutzt werden. Dies ermöglicht Entwicklern, individuell zu entscheiden, ob direkt aus dem Anwendungsprogramm heraus auf Hardware zugegriffen werden soll oder ob „harte“ Echtzeit gefordert ist.

Voraussetzung zur Erreichung von „harten“ Echtzeiteigenschaften ist die Ausführung des Anwendungscodes auf der Kernel-Ebene des Systems. Die erforderlichen Mechanismen werden von der Software bereitgestellt. Dazu werden Programmiersprachen benötigt, die nativen Code erzeugen können, zum Beispiel C/C++ oder Delphi. Der hardwarenahe und zeitkritische Code wird in eine DLL verlagert, welche direkt in den Echtzeit-Kontext geladen wird. Auf diese Weise wird auch die .NET-Umgebung unterstützt, so dass selbst C# als Sprache verwendet werden kann.

Erstellen Sie sowohl 32-Bit- als auch 64-Bit-Anwendungen aus einer einzigen, einheitlichen Code-Basis! Beide Welten sind absolut Sourcecode-kompatibel und mit einer speziellen integrierten Funktion (KiK64) sogar binärkompatibel.

Sofort verwendbare Programmgerüste für die unten genannten Programmiersprachen und Compiler befinden sich in jeder Software-Lieferung. Jetzt Testversion anfordern!

Einige Eckdaten

Kithara RealTime Suite besteht derzeit aus mehr als 20 verschiedenen Modulen. Die Software kann kundenspezifisch aus diesen Modulen zusammengestellt werden. Es bestehen nur wenige Abhängigkeiten. Die Lizenzverwaltung erfolgt wahlweise per USB-Dongle oder Online-Freischaltung.


Basisfunktionen

Base/Kernel Module

  • Unterstützt die folgenden Betriebssysteme: Windows 7, 8 und 10 (32- und 64-Bit), Server 2008 R2 sowie Embedded-Varianten
  • Unterstützung von PIC- und APIC-Hardware, NUMA-Multiprozessor-PCs, Hyperthreading, Dual-/Quad-Core etc.
  • Funktionen für: Öffnen des Treibers, Ausführung von Echtzeit-Code auf der Kernel-Ebene, Echtzeit-Speicherverwaltung, Device-Handling, Versionskontrolle, Debug-Hilfen, Systeminformationen
  • Anwendungs-Threads, Events, Callbacks, Shared Memory, Daten- und Message-Pipes, schnelle Mutex-Objekte

Weitere Informationen …

System Module

  • Abfangen von Systemereignissen wie Schutzverletzungen und Systemabstürzen auf der Kernel-Ebene (zum Beispiel FailSafe-Handler/„BlueScreen-Handler“)

Weitere Informationen …

Echtzeit-System

Clock Module

  • Ermittlung der Systemzeit in verschiedenen, auch anwenderspezifischen Zeitformaten, Auflösung bis ca. 0,1 μs
  • Hochgenaue Kurzzeitverzögerungen
  • Langzeitsynchronisation bei Systemuhren, Synchronisation mit EtherCAT Distributed Clocks (DC) und IEEE 1588

Weitere Informationen …

RealTime Module

  • Programmierung von hochgenauen Echtzeit-Timern durch höchste Systempriorität
  • Maximal programmierbare Frequenz über 20 kHz, Jitter im Mikrosekundenbereich

Weitere Informationen …

MultiTasking Module

  • Prioritätsgesteuertes preemptives Echtzeit-Multitasking
  • Maximal 255 Prioritätsstufen, Verhinderung der Prioritätsinversion durch Prioritätenvererbung, dynamische Prioritätsanpassung
  • Events, Semaphore, Timer, Unterstützung mehrerer CPU-Cores, Tasks lassen sich CPU-Cores zuordnen
  • Betrieb eines oder mehrerer CPU-Kerne ausschließlich im Echtzeitmodus zur Vermeidung von Windows-Beeinflussung
  • Maximal programmierbare Task-Frequenz bis zu 100 kHz und mehr, Jitter geringer als 1 Mikrosekunde im Dedicated-Modus möglich
  • Speedloop-Modus für hochgenaue zyklische Ausführung von Echtzeit-Code bis ca. 1 MHz auf ausgewählter Hardware

Weitere Informationen …

Storage Module

  • Echtzeit-Datenspeicherung über NVMe-SSD mit den jeweils aktuell angebotenen Kapazitäten
  • Highspeed-Lesen und -Schreiben mit über 2 Gbyte/s
  • UDF-Dateisystem

Weitere Informationen …

Kommunikation

Network Module

  • Ethernet-Kommunikation bis 10 Gigabit/s in Echtzeit, beliebige Ethernet-Protokolle inklusive IP
  • Raw-Ethernet sowie UDP/TCP
  • Abfrage- oder ereignisgesteuert, automatische Adressermittlung durch ARP-Unterstützung
  • IP- und MAC-Multicast, Broadcast, Jumbo-Frames je nach verwendetem Controller
  • Unterstützung von Intel- oder RealTek-Netzwerk-Controllern (Hardware-Unterstützung auf Anfrage)
  • Unterstützung von BroadR-Reach

Weitere Informationen …

USB RealTime Module

  • Ansprechen von USB-Geräten bis einschließlich USB 3.1 in Echtzeit über direkten und exklusiven Zugriff auf XHCI-Controller (Extensible Host Controller Interface)
  • Schnelle Reaktionszeiten und größtmöglicher Datendurchsatz
  • Control-, Bulk-, Interrupt- und Isochron-Transfer
  • Reaktion auf alle Plug-and-Play- und Power-Management-Ereignisse

Weitere Informationen …

USB Driver Module

  • Ansprechen von USB-Geräten bis einschließlich USB 3.1 über Windows-Treiberstack
  • Low-, Full-, High-Speed
  • Control-, Bulk-, Interrupt- und Isochron-Transfer
  • Reaktion auf alle Plug-and-Play- und Power-Management-Ereignisse

Weitere Informationen …

Serial/UART Module

  • Serielle Kommunikation in Echtzeit durch spezielle Hardware-Treiber auf UART-16550-kompatibler Hardware
  • Signal- und Handshake-Leitungen direkt ansteuerbar
  • Handler für alle Schnittstellen-Ereignisse in Echtzeit
  • Alternatives API für alle Windows-gestützten COM-Ports ohne Echtzeit mitgeliefert

Weitere Informationen …

Device Module

  • Bereitstellung eines Windows-Programmier-Interfaces für Gerätekommunikation (ReadFile, WriteFile, DeviceIoControl)
  • Beliebige Gerätenamen, zum Beispiel für virtuelle „COM-Ports“

Weitere Informationen …

Hardware-Zugriff

IoPort Module

  • Zugriff auf alle I/O-Register des PCs aus Anwendung oder DLL
  • Ermittlung der PCI-Konfigurationsdaten und Ressourcen-Daten

Weitere Informationen …

Memory Module

  • Zugriff auf externen physischen Speicher (Dual-Port-RAM)
  • Bereitstellung von PC-Speicher für externe Hardware (DMA-Speicher)

Weitere Informationen …

Interrupt Module

  • Behandlung von Hardware-Interrupts auf der Anwendungs- oder Kernel-Ebene
  • Nutzung der Betriebssystem-Mechanismen zur Interrupt-Behandlung
  • Bei Vorliegen des RealTime Modules auch Echtzeit-Interrupts an PCI- oder PCIe-Hardware

Weitere Informationen …

MultiFunction Module

  • Zugriff auf Multifunktions-Erweiterungskarten in Echtzeit
  • Funktionen für A/D-, D/A- und Digital-I/O für Steuerung und Datenerfassung, Analog-Einzelwert, -Sequenz, -Block und -Endlos-Stream
  • Einheitliches API für Karten verschiedener Hersteller

Weitere Informationen …

Automatisierung

EtherCAT Module

  • EtherCAT in Echtzeit
  • Automatische Ermittlung der EtherCAT-Topologie; Synchronisation über XML-Datei oder SII-Protokoll
  • Prozessdaten- und Servicedaten-Kommunikation (PDO+SDO) sowie Mailbox-Kommunikation
  • CoE, EoE, FoE, SoE, DC, Safety-over-EtherCAT (TwinSAFE)

Weitere Informationen …

EtherCAT Automation Protocol

  • EtherCAT® Automation Protocol
  • Neuer Standard an Konnektivität bei Automatisierungsanlagen
  • Übertragungsrate von beispielsweise 1000 Mbit/s und bis 40 Gbit/s

Weitere Informationen …

CANopen Module

  • CANopen Master in Echtzeit, automatische Ermittlung der CANopen-Topologie
  • Prozessdaten- und Servicedaten-Kommunikation (PDO+SDO) sowie Mailbox-Kommunikation

PLC Module

  • Soft-SPS-Implementierung entsprechend IEC 61131-3
  • Unterstützt Anweisungsliste (AWL/IL) und Strukturierten Text (ST)

Weitere Informationen …

Bildverarbeitung

Camera Module

  • Bilderfassung von GigE Vision® und USB3 Vision® Kameras in Echtzeit, abfrage- oder ereignisgesteuert
  • Mehrere Kameras gleichzeitig, Hot-Plug-fähig, Fehlerbehandlung, Konfiguration nach GenICam 2.0

Weitere Informationen …

Vision Module

  • Bildverarbeitung von Bilddaten in Echtzeit über verschiedene Bildverarbeitungsbibliotheken
  • Unterstützung von Halcon Version 10, 11 und 12
  • Unterstützung von OpenCV 3

Weitere Informationen …

Automotive

FlexRay Module

  • FlexRay-Kommunikation in Echtzeit
  • Windows-PC als vollwertiger FlexRay-Knoten
  • Verwendung als Leading- oder Following-Start-Node

Weitere Informationen …

CAN Module

  • Echtzeit-Kommunikation über CAN (Controller Area Network)
  • Unterstützt Karten von Peak, Star Cooperation (Eberspächer), EMS Dr. Wünsche, ESD, Ixxat und Kvaser (Hardware-Unterstützung auf Anfrage)
  • Unterstützung von CAN FD (Flexible Data Rate)

Weitere Informationen …

LIN Module

  • Echtzeitkommunikation über LIN (Local Interconnect Network)
  • Kommunikation via UART (Hardware-Unterstützung auf Anfrage)

Weitere Informationen …

Bibliotheken

Runtime Library

  • Mathematische/trigonometrische sowie String-/Memory-Funktionen in Echtzeit
  • Unterstützung von Anwendungs- und Kernel-Ebene

Weitere Informationen …

SigProc Module

  • Digitale Signalverarbeitung in Echtzeit
  • 20 vordefinierte oder benutzerdefinierte Filter
  • Echtzeitregelung mit PID-Algorithmus

Weitere Informationen …


Kundenspezifische Software-Zusammenstellung

Stellen Sie sich Ihren eigenen, maßgeschneiderten Custom Driver entsprechend den benötigten Funktionen einfach selbst zusammen oder lassen Sie sich kostenlos von uns beraten. Dieser Custom Driver bietet Ihnen so die höchste Flexibilität und hat folgende Eigenschaften:

  • Funktionsmodule sind beliebig kombinierbar (nur geringe Abhängigkeiten bestehen)
  • Eigene Namen für Entwickler- und Runtime-Dateien festlegen
  • Vereinfachte Installation (keine Registry-Eintragung)
  • Keine Anpassung bei neuen Versionen erforderlich
  • Mit dem Erwerb der Module erhalten Sie automatisch eine Entwicklerlizenz
  • Günstige Staffelkonditionen für Runtime-Lizenzen je nach Bedarf
  • Immer auf dem neuesten Stand der Software durch vierteljährliche Updates per Download
  • Update-Wartungsvertrag jeweils um weitere 12 Monate verlängerbar
  • 3 verschiedene Support-Pakete (3, 6 oder 12 Monate) für Entwicklerunterstützung (Beratung, Konzeption, Analyse)
  • Jederzeit um zusätzliche Module erweiterbar

Unser qualifiziertes Support-Team garantiert Ihnen den bestmöglichen Service bei der Einbindung der Software in Ihr Projekt und unterstützt Sie durch unseren Entwickler-Support (auch über Kithara-Software hinaus).


Plattformen

Echtzeitfähigkeit wird nur auf der Kernel-Ebene erzielt. Dazu wird eine Programmiersprache und -umgebung benötigt, die nativen Maschinencode erzeugt, wie etwa C/C++, Delphi und andere. Dennoch unterstützt Kithara RealTime Suite verschiedene Plattformen, beispielsweise auch die .NET-Umgebung. Die Lösung besteht darin, den zeitkritischen Code in eine DLL zu verlagern, die mit den Funktionen von Kithara RealTime Suite direkt auf die Kernel-Ebene geladen wird und dadurch in den Echtzeit-Kontext gelangt. Sofort verwendbare Programmgerüste für die genannten Plattformen befinden sich in jeder Software-Lieferung.


Systemvoraussetzungen

Kithara RealTime Suite unterstützt eine breite Palette von Hardware- und Software-Kombinationen. Bei Fragen hierzu kontaktieren Sie uns bitte!

Betriebssystem

Die Software unterstützt folgende Betriebssysteme:

  • Windows 7, 8 und 10, jeweils 32- und 64-Bit, Dedicated Mode
  • Windows Server 2012, 2015, 2017, Dedicated Mode
  • Windows 2008 R2, 64 Bit, Dedicated Mode

Hardware

Die Software läuft auf folgender Hardware:

  • CPU: AMD (ab Athlon) oder Intel (ab Pentium 2), 32- oder 64-Bit
  • Dual- oder Multi-Core; mit Multi-Core optional Hyperthreading verwendbar, derzeit bis 48 logische CPUs, darüber auf Anfrage
  • ACPI erforderlich (Advanced Control and Power Interface), APIC erforderlich (Advanced Programmable Interrupt Controller)
  • der PC muss PAE (Page Address Extension) unterstützen
  • Bei Gigabit-Ethernet bis 40 GBit/s: Controller von Intel und RealTek fast durchgängig unterstützt

Compiler

Sofort verwendbare Programmgerüste für folgende Programmiersprachen/Compiler sind Teil der Software-Lieferung (auch weitere Programmiersprachen können auf Anfrage unterstützt werden):

  • Visual Studio 20xx C++ mit MFC-Oberfläche (mitgelieferte Projektdateien: VS 2010/12/13/15/17)
  • C++Builder (Embarcadero, ehem. Borland) mit VCL-Oberfläche
  • Delphi (Embarcadero, ehem. Borland) mit VCL-Oberfläche
  • Visual Studio 20xx C# mit WPF-Oberfläche (inkl. C++-DLL für Echtzeit-Ausführung, mitgelieferte Projektdateien: VS 2010/12/13/15/17)

Für die Code-Ausführung im Echtzeitkontext ist im Prinzip jeder Compiler verwendbar, der eine DLL mit nativem Maschinencode erzeugen kann. Die Windows-Anwendung kann jedoch auch mit anderen Programmiersprachen erzeugt werden, zum Beispiel mit C#.


EtherCAT® ist ein registriertes Warenzeichen der EtherCAT Technology Group.
CANopen® ist ein registriertes Warenzeichen des CAN in Automation e. V.
GigE Vision® ist ein registriertes Warenzeichen der Automated Imaging Association.
USB3 Vision® ist ein registriertes Warenzeichen der Automated Imaging Association.