[Ethercat Device]
説明
このEtherCATスレーブデバイス・クラスのオブジェクトを初期化し、ネットワーク上のスレーブデバイスのIDに基づいて EthercatMaster クラスのオブジェクトに接続します。
構文
int attach(uint16_t slave_id, EthercatMaster *master, EthercatAttachMode mode = ECAT_SLAVE_NO);
int attach(uint16_t slave_id, EthercatMaster &master, EthercatAttachMode mode = ECAT_SLAVE_NO);
媒介変数
[in] uint16_t slave_id
EtherCATバス上のスレーブデバイスのID。このIDの定義は、モード変数に基づいて決定されます。[in] EthercatMaster *master
接続する EthercatMaster クラスのオブジェクト。[in] EthercatAttachMode mode
slave_idの定義:ECAT_SLAVE_NO
ネットワーク上のEtherCATスレーブデバイスのシーケンス番号で、0は最初のスレーブデバイス、1は2番目のスレーブデバイス、というように続きます。ECAT_ALIAS_ADDRESS
ネットワーク上のスレーブデバイスのエイリアスアドレスで、スレーブデバイスのSII EEPROMのバイト・ オフセット8で定義されます。
戻り値
error codeを返します。返された値が 0の場合、この関数が正常に完了したことを示します。
備考
この関数は、 EthercatMaster::begin()
が正常に実行された後で呼び出す必要があります。この関数はブロッキングされているため、循環コールバック関数内で呼び出すことができません。
例
#include "Ethercat.h" EthercatMaster master; EthercatDevice_Generic slave; void setup() { master.begin(); slave.attach(0, master); master.start(); } void loop() { //... }
詳細は EtherCAT Library User Manual QEC EtherCAT命令とAPI使用法参照