プログラミング言語

概要

 

C /C++でのマスターコアライブラリのプログラミング

EtherCATマスターコアライブラリとRASサーバーモジュールはC++で実装されています。APIインターフェイスはC言語インターフェイスであるため、マスターはANSI-CおよびC++環境で使用できます。

  • EcMasterDemoは、EC-Masterの基本的なサンプルアプリケーションです。この例は、マスターを初期化する方法と、ネットワークを動作状態にする方法を示しています。提供されたENIファイルに基づいて、この例はすべての種類のEtherCATスレーブを処理できます。
  • EcMasterDemoSyncSmは、マスターが使用するイーサネットコントローラーからの割り込みを必要とする異なるネットワークタイミングを示しています。この循環フレームはサイクルの開始時に送信され、プロセスデータはフレームが戻った直後に更新されます。
  • EcMasterDemoDcは、分散クロック(DC)テクノロジに基づくスレーブの正確な同期を必要とするアプリケーションの開始点として適しています。マスターコントローラーをスレーブと同期させるために、いくつかのモードを選択できます。
  • EcMasterDemoMotionには、プロファイルCiA402およびETG実装指令ETG.6010に従って実装されたドライブを制御するためのシンプルなモーションコントロールライブラリが付属しています。この例では、動作モードCyclic Synchronous Position(CSP)およびCyclic Synchronous Velocity(CSV)をサポートしています。

C /C++でのRASクライアントライブラリのプログラミング

RASクライアントライブラリは、Feature Packの「リモートアクセスAPI」の一部であり、RASサーバーと連携してリモートシステムのマスタープログラミングインターフェイスを提供します。RASプロトコルは、デフォルトでTCP / IPおよびイーサネットで転送されますが、共有メモリなどの別のインフラストラクチャも使用できます。

  • EcMasterDemoRasClientサンプルアプリケーションは、RASサーバーに接続し、emScanBusやemGetMasterStateなどのEC-Master APIを呼び出したり、emGetProcessDataBitsを使用してプロセスデータにアクセスしたり、EC-Masterアプリケーションに通知を送信したりする方法を示します。

オペレーティングシステムとツール

  • サポートされているオペレーティングシステム:すべて
  • サポートされているコンパイラ:Microsoft、GNU、LLVM
  • サポートされているIDE:Microsoft Visual Studio、Eclipse、WindRiver Workbench、QNX Momentics、IAR、Keil MDK

C#でのプログラミング

サンプルのEcMasterDemoDotNetと.NETラッパーはC#で記述されています。ターゲットプラットフォームはAnyCPUです。他のライブラリはC++で記述されており、プラットフォーム固有です。ラッパーライブラリは、.NET用のAPIを準備するヘルパーです。デモは、MS.NETFrameworkおよびMonoで実行されます。

  • EcMasterDemoDotNetは、EC-Master用の基本的なWindowsフォーム(C#)GUIアプリケーションです。この例は、マスターを初期化する方法と、ネットワークを動作状態にする方法を示しています。提供されたENIファイルに基づいて、この例はすべての種類のEtherCATスレーブを処理できます。また、変数の読み取りと書き込みの方法も示されています。CoEオブジェクトディクショナリからレジスタを読み取る方法の例もあります。

オペレーティングシステムとツール

  • サポートされているオペレーティングシステム:Windows(MS .NET 2.0、MS .NET Standard 2.0)、Linux(MS .NET Standard 2.0、Mono)
  • サポートされているIDE:Microsoft Visual Studio(コード)
  • サポートされているコンパイラ:Microsoft

Pythonでのプログラミング

例とPythonラッパーはPythonで書かれています。これらはプラットフォーム固有ではありません。他のライブラリはC++で記述されており、プラットフォーム固有です。EcWrapperは、Python用のAPIを準備するヘルパーです。

  • 他のデモと同様に、EcMasterDemoPythonはEtherCATマスターAPIを呼び出す方法を示しています。EC-Simulator用のPythonデモもあります。Pythonデモは、インタラクティブモードで実行することもできます。たとえば、EtherCATネットワークなどの出力を設定します。これは、EC-Simulatorなどを使用してEtherCATネットワークのさまざまな動作をすばやくテストするのに非常に役立ちます。

オペレーティングシステムとツール

  • サポートされているオペレーティングシステム:Windows(Python 3.7)、Linux(Python 3.7)
  • サポートされているIDE:Python IDLEシェル、Microsoft Visual Studio Code