topic_bildverarbeitung_b

Kithara »RealTime Vision«

Echtzeit-Bilderfassung und -verarbeitung unter Windows

Das Produkt »RealTime Vision« ist eine Echtzeiterweiterung für die Windows®-Betriebssysteme, mit speziellem Fokus auf Bilderfassung mit GigE Vision® und USB3 Vision sowie Bildverarbeitung in Echtzeit.

Voraussetzung zur Erreichung von "harten" Echtzeiteigenschaften ist die Ausführung Ihres Anwendungcodes auf der Kernel-Ebene des Systems. Die dazu erforderlichen Mechanismen werden von der Software bereitgestellt.

Dazu werden Programmiersprachen benötigt, die nativen Code erzeugen können, z.B. C/C++ oder Delphi. Der hardwarenahe und zeitkritische Code wird in eine DLL verlagert, die direkt in den Echtzeit-Kontext geladen wird. Auf diese Weise wird auch die .NET-Umgebung unterstützt, so dass auch 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 – 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!

Einige Eckdaten:

  • Hochgenaue Echtzeit-Timer für Frequenzen > 20 kHz und mehr
  • 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 von Windows 7/8/10 mit 32/64 Bit! - gleich unverbindliches Upgrade-Angebot anfordern!
  • Sicherung mit Online-Freischaltung oder USB-Dongle

»RealTime Vision« ist eine spezielle Zusammenstellung aus über 20 verschiedenen Modulen der Produktreihe »RealTime Suite«. Eine kundenspezifische Zusammenstellung ist ebenfalls möglich.

Basisfunktionen

Base Module

  • Unterstützt die folgenden Betriebssysteme: Windows 7/8/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, Device-Handling, Versionskontrolle, Debug-Hilfen, Systeminformationen
  • Anwendungs-Threads, Events, Callbacks, Shared Memory, Daten- und Message-Pipes, schnelle Mutex-Objekte
  • Weitere Informationen...

Kernel Module

  • Ausführung von Echtzeit-Code auf der Kernel-Ebene
  • Echtzeit-Speicherverwaltung, Memory-Kopierfunktionen
  • Nur in Verbindung mit C/C++ oder Delphi
  • Generischer WDM-Treiber für Plug&Play-Installation enthalten
  • Weitere Informationen...

RunTime Library

  • Mathematisch/trigonometrische sowie String-/Memory-Funktionen in Echtzeit
  • Unterstützung von Anwendungs- und Kernel-Ebene
  • Weitere Informationen...

System Module

  • Abfangen von Systemereignissen, z.B. Schutzverletzungen und Systemabstürzen auf der Kernel-Ebene (z.B. FailSafe-Handler / "BlueScreen-Handler")
  • Weitere Informationen...

Timer & MultiTasking

Clock Module

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

RealTime Module

  • Programmierung von hochgenauen Echtzeit-Timern durch höchste Systempriorität
  • Max. programmierbare Frequenz > 20 kHz, Jitter im Mikrosekundenbereich
  • Weitere Informationen...

MultiTasking Module

  • Prioritätsgesteuertes preemptives Echtzeit-Multitasking
  • Max. 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
  • Max. 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...

Echtzeit-Schnittstellen zur Bilderfassung

USB 3 / XHCI Module

  • Ansprechen von USB-Geräten bis einschließlich USB 3.0 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&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...

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...

Software-Zusammenstellung

Das Produkt Kithara »RealTime Vision« hat folgende Eigenschaften:

  • Sie können für die Entwickler- und Runtime-Dateien einen eigenen Namen festlegen
  • Vereinfachte Installation (keine Registry-Eintragung)
  • Keine Anpassung bei neuen Versionen erforderlich
  • Mit dem Erwerb der Module erhalten Sie automatisch eine Entwickler-Lizenz
  • Günstige Staffel-Konditionen für die Runtime-Lizenzen je nach Bedarf
  • Immer auf dem neuesten Stand der Software durch vierteljährliche Updates per Download oder auf CD (12 Monate)
  • Jederzeit um zusätzliche Module erweiterbar

Sie können die Module der »RealTime Suite« auch beliebig selbst zusammenstellen. Verwenden Sie dazu den RealTime-Konfigurator oder lassen Sie sich von uns kostenlos beraten.

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 unsere Software hinaus)!

Plattformen

Echtzeitfähigkeit wird nur auf der Kernel-Ebene erzielt. Dazu wird eine Programmiersprache und -umgebung benötigt, die nativen Maschinencode erzeugt, z.B. C/C++ oder Delphi und andere.

Dennoch unterstützt die »RealTime Suite« verschiedene Plattformen, wie z.B. auch die .NET-Umgebung:

Die Lösung besteht darin, den zeitkritischen Code in eine DLL zu verlagern, die mit den Funktionen der »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

Das Produkt »RealTime Vision« unterstützt eine breite Palette von Hardware- und Software-Kombinationen:

Bei Fragen zur Systemunterstützung kontaktieren Sie uns bitte!

Betriebssystem

Die Software unterstützt folgende Betriebssysteme:

  • Windows 10 (32- und 64-Bit, bei 64-Bit nur im Dedicated Mode)
  • Windows 8 und 8.1 (32- und 64-Bit, bei 64-Bit nur im Dedicated Mode)
  • Windows Server 2012 (64 Bit, nur im Dedicated Mode)
  • Windows 7 (32- und 64-Bit) + Windows Embedded Standard 7
  • Windows 2008 R2 (64 Bit)

Hardware

Die Software läuft auf folgender Hardware:

  • CPU: AMD (ab Athlon) oder Intel (ab Pentium 2), 32- oder 64-Bit
  • Single- oder Multi-Core, Hyperthreading, Normalversion bis 8 logische CPU-Kerne (erweiterte Version derzeit bis 32 logische CPU-Kerne, 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 10 GBit/s: Controller von Intel und RealTek fast durchgängig unterstützt, auf Anfrage

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
  • 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)
  • Microsoft Visual C++ 6 mit MFC-Oberfläche
  • Für den Echtzeitkontext muss nativer Maschinencode vorliegen (C++/Delphi), die Anwendung kann jedoch auch z.B. in C# programmiert sein

 


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.