Kithara RealTime Vision
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
-
Prioritätsbasiertes preemptives
Echtzeit-Multitasking
-
Industrielle Bildverarbeitung mit
GigE Vision® und
USB3 Vision® in Echtzeit
-
Echtzeit-Bildverarbeitung mit Halcon oder OpenCV
-
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ützung von Windows 10 und 11 (32 und 64 Bit) sowie Windows Server 2016, 2019 und 2022.
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 die folgenden Betriebssysteme: Windows 10 und 11 (32 und 64 Bit) sowie Windows Server 2016, 2019 und 2022, jeweils mit Dedicated Mode
-
Unterstützung von Mehrkernprozessoren, Hyperthreading 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
Weitere Informationen …
Library Module
-
C-Standard-Bibliothek in Echtzeit
-
Mathematische/trigonometrische sowie String-/Memory-Funktionen
-
Unterstützung von Anwendungs- und Kernel-Ebene
-
Unterstützung externer Bibliotheken für Bildverarbeitung und Machine Learning
Weitere Informationen …
System Module
-
Abfangen von Systemereignissen wie Schutzverletzungen und Systemabstürzen auf der Kernel-Ebene (zum Beispiel FailSafe-Handler/„BlueScreen-Handler“)
Weitere Informationen …
Timer und Multitasking
Timer 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
-
Erstellung einfacher Windows-Timer
Weitere Informationen …
RealTime Tasking Module
-
Entwicklung hochfrequenter Echtzeit-Timer-Routinen
-
Timer-Frequenz bis zu 20 kHz und mehr
-
Jitter im einstelligen Mikrosekundenbereich
-
Präemptives Echtzeitsystem mit bis zu 255 Prioritätsstufen
-
Betrieb von CPU-Kernen ausschließlich im Echtzeitmodus zur Vermeidung von Windows-Beeinflussung
Weitere Informationen …
Echtzeit-Schnittstellen zur Bilderfassung
Network Module
-
Ethernet-Kommunikation bis 200 Gbit/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 (100BASE-T1)
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 …
Echtzeit-Bilderfassung und -verarbeitung
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 …
Halcon Extension
-
Echtzeit-Bildverarbeitung mit Halcon
-
Automatische Parallelisierung
-
Integrierte Entwicklungsumgebung HDevelop
-
Unmittelbare Kontrollreaktion auf verarbeitete Bilddaten zum Beispiel über EtherCAT oder CANopen
Weitere Informationen …
OpenCV Extension
-
Echtzeit-Bildverarbeitung mit OpenCV
-
Automatische Parallelisierung
-
Unmittelbare Kontrollreaktion auf verarbeitete Bilddaten zum Beispiel über EtherCAT oder CANopen
Weitere Informationen …
Software-Zusammenstellung
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 und 11 (32 und 64 Bit), Dedicated Mode
-
Windows Server 2016, 2019 und 2022, 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)
-
der PC muss PAE (Page Address Extension) unterstützen
-
Gigabit-Ethernet bis 200 GBit/s: Fast alle Controller von Intel und RealTek werden 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/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#.
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.