Echtzeit 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. Auf die Daten kann auch mit  C/C++ oder .NET zugegriffen werden und so verschieden professionellen Software Tools zur Verfügung gestellt werden, z.B. um eine echtes System zu imitieren.

Anwendungsgebiete


Master Software Entwicklung

  • Führen Sie die Master-Anwendung ohne echte Slaves aus
  • Komfortable Integration der Master-Stack-Software in die Anwendung, z. B. Funktionen für nicht verfügbare Slaves implementieren und testen
  • Implementieren und Testen erweiterter EtherCAT-Funktionen, z. B. Hot Connect, Firmware-Download usw.
  • Masteranwendung mit unterschiedlichen Netzwerkkonfigurationen und Topologien validieren → Laden Sie einfach eine andere ENI-Datei in den EC-Simulator
  • Komfortables Debugging komplexer Topologie- und Slave-Szenarien

Feldbus Master Device Test

  • Ersetzen Sie manuelle Testverfahren durch automatische Verfahren
  • Slave-Fehler simulieren, z. B. Slave fällt von OP auf SAFEOP herunter
  • Simulieren Sie Kabelbruch, Frame Loss, schlechte Anschlüsse
  • Simulieren Sie große Netzwerke mit vielen Slaves
  • Simulieren Sie Fehlerszenarien an beliebigen Stellen. Vor oder nach den echten Slaves
  • Implementieren Sie erweiterte Testszenarien, z. B. simulieren Sie Topologieänderungen

Virtuelle Inbetriebnahme

  • Entwickeln und testen Sie Anwendungen auf Basis einer Software-Emulation (Digital-Twin) der Maschinenlogik.
  • Testen und optimieren Sie die Anwendung bereits in einem frühen Stadium des Engineerings, auch ohne real existierende Zielhardware
  • Testen Sie Fehlerszenarien, die gefährlich sind und/oder zu Schäden führen

Slave-Firmware-Entwicklung

  • Entwickeln Sie Slave-Firmware, bevor echte Hardware verfügbar ist
  • EC-Simulator basiert auf dem Beckhoff EtherCAT Slave Stack ET9300. Alle Standardfunktionen von APPL_XXX() sind auf Anwendungsebene verfügbar
  • Entwicklung von Firmware auf Windows oder Linux mit komfortabler IDE
  • Verwenden Sie aufgezeichnete oder generierte Testdaten als Prozessdateneingang für die Slave-Firmware
  • Rückverfolgung von Prozessdatenausgaben und -zuständen in Dateien etc.
  • Testen Sie Parameter Up- und Downloads (CoE, VoE)
  • Firmware-Downloads testen (FoE)

Hardware-in-Loop (HiL) Simulation

Alle Slaves sind simuliert

Das System-Under-Test (SUT) kommuniziert über ein Netzwerkkabel mit einer externen Hardware welche die Simulationssoftware ausführt. Das HiL System, z.B. ein Standard PC, braucht keine spezielle Hardware. 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 die vorhandene „C“-Programmierschnittstelle (API) kann die Bibliothek entweder in eigene Anwendungen 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

EC-Simulator ersetzt den Ethernet-Treiber, der normalerweise für die physikalische Schnittstelle verwendet wird. Keine physische Netzwerkschnittstelle erforderlich!

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
  • Mailbox Protokoll Vendor over EtherCAT (VoE)
  • Mailbox Protokoll File access over EtherCAT (FoE)
  • Unterstützung für alle Mailboxinitialisierungskommandos
  • Basic Objectwörterbuch
  • Support für verteilte Uhren
  • Unerstützte Master: EC-Master, Beckhoff TwinCAT, CoDeSys

Mehr Informationen

Datenblätter und Evaluierungssoftware finden Sie im Downloadbereich