topic_realtimesuite

Kithara »RealTime Suite«

Windows®-Echtzeiterweiterung für PC-gestützte Automatisierung

Die »RealTime Suite« ist eine modulare Echtzeiterweiterung für Windows®-Betriebssysteme. Damit realisieren Sie auf einfache Weise industrielle Anwendungen für Automatisierungs-, Steuerungs- und Regelungsaufgaben sowie Bildverarbeitung in Echtzeit.

Fast sämtliche Mechanismen können sowohl von der Kernel- als auch der Anwendungsebene aus benutzt werden. Entwickler können damit von Fall zu Fall 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 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
  • “Dedicated” Echtzeitmodus auf exklusiv benutzten CPU-Kernen mit extremen Echtzeiteigenschaften ohne Windows-Beeinflussung
  • Prioritätsbasiertes preemptives Echtzeit-Multitasking
  • Echtzeit-Automatisierung mit eigenem EtherCAT® Master oder CANopen® Master
  • schnelle Bilderfassung mit GigE Vision® und USB3 Vision in Echtzeit
  • industrielle Bildverarbeitung mit HALCON oder OpenCV in Echtzeit
  • Ereignisgesteuerte Raw-Ethernet-, UDP- und TCP-Kommunikation in Echtzeit bis 10 GBit/s
  • Echtzeit-CAN mit herstellerunabhängigem API für Karten von esd, EMS, IXXAT, Kvaser und Peak (andere auf Anfrage)
  • Hardwarenahe Programmierung: I/O-Ports, phys. Memory, Interrupts
  • Unterstützung von PCI-, PCIe- und PCMCIA-Karten, USB-Geräten, seriellen COM-Schnittstellen (UART)
  • 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!
  • Sicherung auf Wunsch per Online-Freischaltung oder USB-Dongle

Die Produktreihe »RealTime Suite« besteht derzeit aus mehr als 20 verschiedenen Modulen. Die Software kann kundenspezifisch aus diesen Modulen zusammengestellt werden. Wenige Abhängigkeiten bestehen.

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

System Module

  • Abfangen von Systemereignissen, z.B. Schutzverletzungen und Systemabstürzen auf der Kernel-Ebene (z.B. 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 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...

Storage Module

  • Echtzeit-Datenspeicherung über NVMe-SSD (bis 2 TByte)
  • Highspeed Lesen und Schreiben mit über 1 GByte/s
  • UDF-Dateisystem
  • Weitere Informationen...

Kommunikation

Network Module

  • Ethernet-Kommunikation bis 10 Gigabit/s in Echtzeit, beliebige Ethernet-Protokolle inkl. 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)
  • Weitere Informationen...

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

USB 2 Module

  • Ansprechen von USB-Geräten bis einschließlich USB 3.0 über Windows-Treiberstack
  • Control-, Bulk-, Interrupt- und Isochron-Transfer
  • Reaktion auf alle Plug&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, z.B. 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 z.B. 1000 MBit/s oder 10 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, IXXAT, esd, EMS, 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

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

SigProc Module

  • Digitale Signalverarbeitung in Echtzeit
  • 20 vordefinierte Filter oder benutzerdefiniert
  • Echtzeitregelung mit PID-Algorithmus
  • Weitere Informationen...

Kundenspezifische Software-Zusammenstellung

Stellen Sie mit Hilfe des RealTime-Konfigurator den Funktionsumfang selbst zusammen oder lassen Sie sich von uns kostenlos beraten. Der Custom Driver bietet Ihnen die höchste Flexibilität und hat folgende Eigenschaften:

  • Funktionsmodule sind beliebig wählbar (geringe Abhängigkeiten bestehen)
  • 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 auf CD (12 Monate)
  • 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 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

Die Produkte der »RealTime Suite« unterstützen 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.