Programmieren der EC-Master Core Library in C/C++
Die EC-Master Core Bibliothek und das Remote Access Service (RAS) Server Module sind in C++ implementiert. Die API-Schnittstellen sind in C, daher kann der EC-Master sowohl in ANSI-C- als auch in C++ Umgebungen verwendet werden.
- EcMasterDemo ist die grundlegende Beispielanwendung für den EC-Master. Das Beispiel zeigt, wie der EC-Master initialisiert und das Netzwerk in den OP Zustand versetzt wird. Basierend auf der bereitgestellten ENI-Datei kann dieses Beispiel alle Arten von EtherCAT SubDevices verarbeiten.
- EcMasterDemoSyncSm demonstriert ein anderes Netzwerk-Timing, das den Interrupt des vom EC-Master verwendeten Ethernet-Controllers erfordert. Dieser zyklische Frame wird zu Beginn des Zyklus übertragen und die Prozessdaten werden unmittelbar nach der Rückkehr des Frames aktualisiert.
- EcMasterDemoDc ist ein guter Ausgangspunkt für Anwendungen, die eine genaue Synchronisation von SubDevices basierend auf der Distributed Clocks (DC) -Technologie erfordern. Um das MainDevice mit den SubDevices zu synchronisieren, können verschiedene Modi ausgewählt werden.
- EcMasterDemoMotion wird mit einer einfachen Motion Library zur Steuerung von Antrieben geliefert, die gemäß dem Profil CiA402 und der ETG-Implementierungsrichtlinie ETG.6010 implementiert sind. Das Beispiel unterstützt die Betriebsmodi Cyclic Synchronous Position (CSP) und Cyclic Synchronous Velocity (CSV).
Programmieren der RAS-Client Library in C/C++
Die RAS Client Library ist Teil des Feature Packs Remote Access Service SDK und stellt in Verbindung mit dem RAS-Server die EC-Master Programmierschnittstelle auf einem Remote-System bereit. Das RAS-Protokoll wird standardmäßig mit TCP / IP und Ethernet transportiert, aber auch eine andere Infrastruktur, z.B. Shared Memory, kann verwendet werden.
- Die EcMasterDemoRasClient-Beispielanwendung zeigt, wie Sie eine Verbindung zum RAS-Server herstellen und EC-Master-APIs wie emScanBus oder emGetMasterState aufrufen. Außerdem wie Sie mit emGetProcessDataBits auf Prozessdaten zugreifen oder Benachrichtigungen an die EC-Master-Anwendung senden.
Betriebssysteme und Tools
- Unterstützte Betriebssysteme: Alle
- Unterstützte Compiler: Microsoft, GNU, LLVM
- Unterstützte IDE: Microsoft Visual Studio, Eclipse, WindRiver Workbench, QNX Momentics, IAR, Keil MDK
Programmierung in C#
Das Beispiel EcMasterDemoDotNet und der .NET-Wrapper sind in C# geschrieben. Die Zielplattform ist hier AnyCPU. Die anderen Libraries sind in C++ geschrieben und plattformspezifisch. Die Wrapper Library bereitet die API für .NET vor. Die Demo läuft sowohl mit MS .NET Framework als auch mit Mono.
- EcMasterDemoDotNet ist eine grundlegende Windows Forms (C#) -GUI-Anwendung für den EC-Master. Das Beispiel zeigt, wie der EC-Master initialisiert und das Netzwerk in den OP Zustand versetzt wird. Basierend auf der bereitgestellten ENI-Datei kann dieses Beispiel auch alle Arten von EtherCAT SubDevices verarbeiten. Es wird auch gezeigt, wie eine Variable gelesen und geschrieben wird. Es gibt sogar ein Beispiel für das Lesen eines Registers aus dem CoE-Objektwörterbuch
Betriebssysteme und Tools
- Unterstützte Betriebssysteme: Windows (MS .NET 2.0, MS .NET Standard 2.0), Linux (MS .NET Standard 2.0, Mono)
- Unterstützte IDE: Microsoft Visual Studio (Code)
- Unterstützte Compiler: Microsoft
Programmierung in Python
Die Beispiele und der Python-Wrapper sind in Python geschrieben. Sie sind nicht plattformspezifisch. Die anderen Bibliotheken sind in C++ geschrieben und plattformspezifisch. Der EcWrapper bereitet die EC-Master API für Python vor.
- Ähnlich wie bei den anderen Demos zeigt die EcMasterDemoPython, wie die EtherCAT-Master-API aufgerufen wird. Es gibt auch eine Python-Demo für den EC-Simulator. Die Python-Demos können auch im interaktiven Modus ausgeführt werden, z.B. um einen Ausgang des EtherCAT-Netzwerks oder etwas anderes einzustellen. Dies ist sehr nützlich, um schnell verschiedene Verhaltensweisen des EtherCAT-Netzwerks zu testen, z.B. mit Hilfe des EC-Simulator.
Betriebssysteme und Tools
- Unterstützte Betriebssysteme: Windows (Python 3.7), Linux (Python 3.7)
- Unterstützte IDE: Python IDLE Shell, Microsoft Visual Studio Code
Hinweis: Python Wrapper und SDK sind nicht im EC-Master SDK enthalten (verfügbar als Add-on)