EtherCAT® Netzwerk Simulation und Slave Simulation

Betrieb einer Steuerung oder eines Reglers mit einem simulierten EtherCAT Netzwerk

Der EC-Simulator virtualisiert ein komplettes EtherCAT Netzwerk mit Hilfe von simulierten EtherCAT Geräten (Slaves). Damit kann eine EtherCAT Master Applikation ohne physikalische Slaves betrieben werden.
Die Software stellt die Simulation entweder in Verbindung mit einer physikalischen Netzwerkkarte der Steuerung bereit, oder kann auch direkt – ohne zusätzliches Kabel – in den Master integriert werden.
Die Konfiguration des Simulators erfolgt über die im EtherCAT Standard definierte EtherCAT Network Information (ENI) Datei. Diese Datei wird auch vom Master verwendet und ist somit bereits in der Regel vorhanden. Die EC-Simulator Bibliothek bietet Funktionen für den Zugriff auf die zyklischen Prozessdaten, das Objektverzeichnis und den Zustand der Slaves an. Daneben gibt es Funktionen zur Generierung von Fehlern, z. B., um den Ausfall eines Slaves, oder den Verlust von Frames zu simulieren.

Anwendungsgebiete

  • Virtuelle Inbetriebnahme mit digitalem Zwilling
    • Test und Optimierung der Anwendung in einer frühen Phase ohne physikalische Peripherie
    • Test von möglichen Fehlersituationen, welche mit der realen Anlage nicht durchführbar sind bzw. zu Schäden führen könnten
  • Testautomatisierung und Freigabetests für Steuerungen und Regler mit EtherCAT
    • Erweiterte Testszenarien, z. B., Änderungen an der Topologie
    • Verhalten der Applikation in Folge von Slave-Fehlern oder Netzwerkstörungen
    • Belastungstest beim Betrieb mit vielen Slaves
  • Software-Entwicklung
  • Schulung/Training
    • Risikofreie Operatorschulung
    • Training für Problemhandling und Alarmsituationen

Hardware-in-Loop (HiL) Simulation

All slaves are simulated

Das System-Under-Test (SUT) kommuniziert über ein Netzwerkkabel mit einer externen Hardware welche die Simulationssoftware ausführt. Diese Architektur ermöglicht den Betrieb der unveränderten Steuerung und Anwendung über die Standard Ethernet-Schnittstelle.

Mix of real slaves and simulated slaves

  • Ein HiL-System mit einem Ethernet-Port muss das letzte Gerät im Netzwerk sein
  • Ein HiL-System mit mehreren Ports kann auch zwischen echten Slaves angeschlossen werden
  • Definieren Sie die zu simulierenden Slaves im EtherCAT-Tool EC-Engineer. Die resultierende Netzwerkkonfiguration enthält alle Slaves. Simulierte Slaves sind gekennzeichnet
  • Erstellen Sie Schritt für Schritt einen digitalen Zwilling. Teilweise Simulation kombiniert mit echten Slaves
  • Simulieren Sie Fehlerszenarien an jedem Ort. Vor oder nach den echten Slaves

Software Architektur

Der EC-Simulator kann sofort ohne Anpassungen auf zahlreichen Betriebssysteme, z. B., Linux, Windows und QNX eingesetzt werden. Mit dem Einsatz der acontis Echtzeit Ethernet-Treiber (Link Layer) kann die Performance gesteigert und der Rechenzeitverbrauch gesenkt werden. Somit sind auch Zykluszeiten unter einer Millisekunde möglich. Über das vorhandene „C“-API kann die Bibliothek entweder in eigene Anwendungen, in vorhandene Simulationsumgebungen, z. B., ISG Virtuos, oder auch in SPS Laufzeitsysteme (LogicLab, logi.cals) integriert werden.

Software-in-the-Loop (SiL) Simulation in Verbindung mit EC-Master

Das EtherCAT Netzwerk wird direkt auf dem zu testenden System (SUT) simuliert. Die EtherCAT Frames werden vom Master über eine Software-Schnittstelle in den Simulator übertragen, hier verarbeitet und die passenden Antwort-Frames generiert. Der EC-Simulator ersetzt in dieser Architektur den Link Layer.

Software Architektur

Programming Interface

Prozessdaten Provider

Für die Verarbeitung der Prozessdaten in der Anwendung stehen verschiedene Optionen zur Verfügung. Die entsprechende Option kann für jeden Slave einzeln ausgewählt werden.

  • Standardimplementierung (Slave 1):
    • Prozessdatenlogik, die von der Kundenanwendung aus dem Prozessdatenbild implementiert wird
  • Verwenden Sie eine integrierte Beispielanwendung (Slave 2):
    • Prozessdaten, die durch eine Beispielanwendung bereitgestellt werden, z. B. CiA402, anstelle eines Prozessdatenbildes
    • Das Verhalten der Probenanwendung kann nicht geändert werden
    • Wählen Sie in EC-Engineer „Sample Application“
  • Implementieren Sie eine eigene Slave-Firmware (Slave 3):
    • Schnittstelle zum Entwickeln und Testen der eigenen Slave-Firmware: Verbinden Sie vorhandene eigene APPL_XXX () Slave-Funktionen mit dem eigenen Code
    • Steuern Sie die EtherCAT-Zustandsmaschine, verarbeiten Sie Prozesse und CoE-Objekte

Netzwerk Operationen

  • Ändern der Netzwerk Topologie
  • Slave trennen / verbinden / bewegen
  • Slave an- und ausschalten
  • Slave Status ändern, z.B., in PreOp wechseln
  • API um verlorene Frames an einem Slave / Port zu simulieren
  • API um eine verlorene Verbindung an einem Slave / Port zu simulieren

Diagnose Funktionen

  • API zum Lesen und Schreiben von Slave-Registern, z.B. Slave-Zustände lesen
  • API zum Lesen und Schreiben von Slave-EEPROM-Inhalten
  • API zum Lesen des Simulatorobjektwörterbuchs
  • API zur Auswertung der Netzwerktopologie
  • RAS-Server zum Verbinden von EC-Lyser / EC-Engineer

Eigenschaften

  • Slaves mit und ohne Mailbox
  • Mailbox protocol CANopen over EtherCAT (CoE)
  • PDO Konfiguration und Assignment Kommandos via CoE
  • Unterstützung für alle Mailboxinitialisierungskommandos
  • Basic Objectwörterbuch
  • Support für verteilte Uhren
  • Unerstützte Master: EC-Master

Mehr Informationen

Datenblätter und Evaluierungssoftware finden Sie im Downloadbereich