Echtzeit-Bilderfassung und -verarbeitung unter Windows
Kithara RealTime Vision ist eine Echtzeiterweiterung für Windows-Betriebssysteme, speziell fokussiert auf Bilderfassung mit GigE Vision und USB3 Vision sowie Bildverarbeitung in Echtzeit.
Sowohl 32-Bit- als auch 64-Bit-Anwendungen lassen sich aus einer einzigen, einheitlichen Code-Basis erstellen. 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!
Unterstützte Programmiersprachen
Kithara RealTime Suite unterstützt unter anderem C, C++, Delphi und C#. Voraussetzung zum Erreichen von „harten“ Echtzeiteigenschaften ist die Ausführung des hardwarenahen, zeitkritischen Programmcodes auf der Kernel-Ebene des Systems. Dazu wird dieser Code in eine DLL verlagert, welche direkt in den Echtzeit-Kontext geladen wird. Grundsätzlich werden dafür Programmiersprachen benötigt, die nativen Code erzeugen können, zum Beispiel C, C++ oder Delphi. Im Anwendungsfall von C# kann die DLL dafür zum Beispiel in C++ programmiert werden.
Einige Eckdaten
Hochgenaue
Echtzeit-Timer für Frequenzen bis über 20 kHz
Code-Ausführung auf der Kernel-Ebene unterstützt C, C++ und Delphi (native Code-Erzeugung erforderlich)
C#-Unterstützung durch Verlagern des Codes in eine C++-DLL
Unterstützt Windows sowie Windows Server (nur 64-Bit-Betriebssystem), jeweils mit Dedicated Mode
Module
Kithara RealTime Vision ist eine spezielle Zusammenstellung aus verschiedenen Modulen von
Kithara RealTime Suite. Eine kundenspezifische Zusammenstellung ist ebenfalls möglich.
Basisfunktionen
Base/Kernel Module
Unterstützt Windows sowie Windows Server (nur 64-Bit-Betriebssystem), jeweils mit Dedicated Mode
Unterstützung von Mehrkernprozessoren, Hyper-Threading und NUMA-Multiprozessor-PCs
Funktionen für: Öffnen des Treibers, Ausführung von Echtzeit-Code auf der Kernel-Ebene, Echtzeit-Speicherverwaltung, Device-Handling, Versionskontrolle, Debug-Hilfen, Systeminformationen
Echtzeit-Tasks, Events, Callbacks, Shared Memory, Daten- und Message-Pipes, schnelle Mutex-Objekte
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
Kithara RealTime Vision hat folgende Eigenschaften:
Kithara RealTime Suite ist modular aufgebaut und ermöglicht ein individuell maßgeschneidertes Echtzeitbetriebssystem
Sie können für die Entwickler- und Runtime-Dateien einen eigenen Namen festlegen.
Stabiles API – 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.
Mehrere Updates über einen Zeitraum von 12 Monaten nach Ersterwerb
Update-Service jeweils um weitere 12 Monate verlängerbar.
Jederzeit um zusätzliche Module erweiterbar.
10 Stunden Entwickler-Support inklusive, darüber hinaus verschiedene Support-Pakete erhältlich (20, 50, 100 Stunden)
Support wird im übersichtlichen Kithara-Ticketsystem bearbeitet, ermöglicht schnellen und direkten Kontakt mit Entwicklern
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 Vision 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 10 (nur 64-Bit-Version) und Windows 11
Windows Server 2016, 2019, 2022 und 2025
Hardware
Die Software läuft auf folgender Hardware:
CPU: x64-CPU (Intel, AMD)
Multi-Core; optional Hyper-Threading verwendbar, derzeit bis 48 logische CPUs, darüber auf Anfrage
ACPI erforderlich (Advanced Control and Power Interface)
zur Kompatibilität von Kommunikationsschnittstellen siehe z.B.
hier.
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/19/22)
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/19/22)
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#.
Die deterministischen Reaktionszeiten eines Echtzeitbetriebssystems können dafür sorgen, dass der Ausfall von Bilddatenpaketen zuverlässig verhindert wird. Kithara RealTime Suite erreicht dies mit ausreichend groß dimensionierten Pufferspeichern und auf Basis speziell entwickelter Echtzeit-Treiber für Ethernet oder USB. Die Reaktion auf eingetroffene Bilder erfolgt im Kontext der Echtzeitumgebung innerhalb weniger Mikrosekunden.
Ja, verarbeitete Bilddaten können ebenfalls im Echtzeitkontext behandelt werden. Dies ermöglicht eine sofortige Steuerungsreaktion auf verarbeitete Bilder sowie deren Einbindung in Automatisierungssysteme mit EtherCAT oder CANopen. Kithara RealTime Suite bietet somit eine Lösung, die Bilderfassung, Bildverarbeitung und Automatisierung nahtlos in einem Echtzeitbetriebssystem vereint.
Innerhalb von Kithara RealTime Suite lassen sich die Kameraschnittstellen GigE Vision und USB3 Vision verwenden. Als Bildverarbeitungsbibliotheken können Halcon von MVTec oder das quelloffene OpenCV genutzt werden.
EtherCAT® und Safety over EtherCAT® sind eingetragene Marken und patentierte Technologien, lizenziert durch die Beckhoff Automation GmbH, Deutschland. 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.