Echtzeit-Ethernet

Kithara Echtzeit Ethernet

Ethernet-basierte Kommunikation beherrscht mehr und mehr auch industrielle Anwendungen – die Standard-Funktionen der Betriebssysteme können jedoch nicht mehr mithalten, echtzeitfähige Mechanismen sind gefordert.

Mit der Echtzeit-Ethernet-Umgebung können industrielle Kommunikationsaufgaben über alle Ethernet-basierten Protokolle in Echtzeit realisiert werden (einschließlich IP, also die weit verbreiteten Protokolle TCP und UDP).

 Intel-Pro/1000 PT Quad Adapter

Mit dem zur Produktreihe »RealTime Suite« gehörenden Packet Module stehen die erforderlichen Mechanismen zur Verfügung, um über Ethernet-Controller in Echtzeit kommunizieren zu können und mit dem Socket Module sind TCP und UDP auch in Echtzeit realisierbar. Die Echtzeit-Datenkommunikation erfolgt über Fast-Ethernet-Karten sowie Netzwerkkarten mit Gigabit-Ethernet-Controllern von Intel und Realtek, so dass auch schnelle Messwerterfassung oder industrielle Bildverarbeitung realisierbar sind.

Intel-Pro/1000 PT Quad Adapter

Zur Erreichung der Echtzeitfähigkeit werden die Netzwerk-Controller direkt angesteuert. Dadurch steht die gesamte Bandbreite der Verbindung zur Verfügung und die sofortige Reaktion auf eintreffende Datenpakete erfolgt in Echtzeit.

Anders als sonst oftmals in Betriebssystemen üblich werden bei dieser Implementierung in der Regel jegliche Kopieroperationen vermieden. Sowohl beim Senden als auch beim Empfang benutzen Sie den gleichen Speicher wie der Netzwerk-Controller. Sie erreichen dadurch höchstmögliche Übertragungsraten und kürzeste Reaktionszeiten.

Funktionen für CRC-Berechnung und Byteorder-Wandlung werden bereitgestellt.

Die Socket-Applikation erstellt der Entwickler wie von Kithara gewohnt komfortabel im Rahmen der Anwendung, die in C/C++ oder Delphi programmiert werden kann. Als DLL kann die Echtzeit-Applikation auch in eine C#.NET-Anwendung eingebettet werden.

Die Software geht damit weit über die Möglichkeiten der Windows-Betriebssysteme hinaus, die aufgrund der mangelnden Echtzeitfähigkeit zur Lösung industrieller Anforderungen oftmals nicht geeignet sind.

Merkmale der Ethernet-Echtzeitumgebung

  • Ethernet-Frames in Echtzeit übertragen bis 1000Mbit/s
  • Verzögerungsfreies Senden & sofortige Reaktion beim Empfang
  • Senden und Empfangen auf der Kernel-Ebene möglich
  • Unterstützte Hardware: Intel, RealTek (bis zu Gigabit) - siehe Hardware-Kompatibilitätsliste
  • Jumbo-Frames bis 16128 Byte je nach NIC
  • IP- und MAC-Multicast, Broadcast, Promiscuous-Mode für Empfang aller Pakete
  • Empfang von Datenpaketen entweder durch Callback-Funktion direkt im Interrupt-Kontext oder im Polling-Betrieb
  • Sende- und Empfangsroutinen direkt aus dem Echtzeitkontext aufrufbar
  • Priorisierung von zu sendenden Paketen in 4 Stufen möglich
  • Automatische Adressermittlung durch ARP-Unterstützung
  • Funktionen für CRC-Berechnung und Byteorder-Wandlung enthalten
  • Socket Kommunikation (UDP- und TCP-Kommunikation in Echtzeit)
  • Echtzeit Timer mit Jitter im Mikrosekundenbereich
  • Prioritätsgesteuertes preemptives Echtzeit-Multitasking mit max. 255 Prioritätsstufen
  • Nutzung der Kernel-Ebene unterstützt C/C++ oder Delphi (Win32 native)
  • Ethernet Treiber für die Betriebssysteme: Windows 7, Vista, Server 2003, XP, 2000 und NT

Unterstützte Controller

Um Echtzeitfähigkeit zu erreichen, muss der langsame Windows-Treiber der Netzwerkkarte ersetzt werden. Aus diesem Grund werden nur Netzwerkadapter mit speziellen Controllern unterstützt. Dazu gehören:

 

Intel-Pro/100
Fast Ethernet controller (100 MBit/s)
  • 8255x
  • 82562
Intel-Pro/1000
Gigabit Ethernet controller (1000 MBit/s)
  • 82540, 82541, 82544, 82545, 82546, 82547
  • 82571, 82572, 82573, 82574, 82575, 82576
  • 82580, 82583

Otherwise there are no special hardware requirements, any recent PC running Microsoft Windows XP to Windows 7 can be used.

Intel

RealTek

RealTek 8139
Fast Ethernet controller (100 MBit/s)
  • 8139B, 8139C, 8139D
RealTek
Gigabit Ethernet controller (1000 MBit/s)
  • 8100E, 8101E, 8102E, 8110S
  • 8168B/8111B, 8168C/8111C, 8168CP/8111CP, 8168D/8111D+DL
  • 8169, 8169S, 8169SB/8110SB, 8169SC/8110SC