Kithara RealTime Vision

Echtzeit-Software: Kithara RealTime Vision

Echt­zeit-Bild­erfassung und -verarbeitung unter Windows

Kithara RealTime Vision ist eine Echtzeiterweiterung für Windows-Betriebs­systeme, speziell fokussiert auf Bilderfassung mit GigE Vision® und USB3 Vision® sowie Bildverarbeitung in Echtzeit.

Voraussetzung zur Erreichung von „harten“ Echtzeiteigenschaften ist die Ausführung Ihres 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, wie etwa 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 einem speziellen Modul (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!

Bildverarbeitung in Echtzeit: 32/64 BitEchtzeit Bildverarbeitung: Schneller EinstiegEchtzeit-Bildverarbeitung: 90 Tage testen

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)
  • Unterstützung aller aktuellen Windows-Versionen mit 32 oder 64 Bit. Gleich unverbindliches Upgrade-Angebot anfordern!
Bildverarbeitung in Echtzeit

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 7, 8 und 10 (32- und 64-Bit) sowie Windows Server 2008, 2012, 2015 und 2017, jeweils mit Dedicated Modus
  • 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
  • Anwendungs-Threads, 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

Clock Module

  • Ermittlung der Systemzeit in verschiedenen, auch anwender­spezifischen 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 präemptives 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 20 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 …

Echtzeit-Schnittstellen zur Bilderfassung

Network Module

  • Ethernet-Kommunikation bis 40 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

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:

  • Funktionsmodule sind beliebig kombinierbar (nur geringe Abhängigkeiten bestehen).
  • 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.
  • Immer auf dem neuesten Stand der Software durch vierteljährliche Updates, 12 Monate lang.
  • 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).

Bildverarbeitung in Echtzeit: kombinierbare ModuleEchtzeit-Bildverarbeitung: Jederzeit erweiterbarBildverarbeitung: Echtzeit zu Sonderkonditionen

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 7, 8 und 10, jeweils 32 und 64 Bit, Dedicated Modus
  • Windows Server 2008, 2012, 2015, 2017, Dedicated Modus

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
  • Bei Gigabit-Ethernet bis 40 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)
  • 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)

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.