PLCからのSDOデータアクセス#
サブデバイスが持つさまざまなCoEパラメータへアクセスするSDOは、PLCのファンクションブロックを用いて発行することが可能です。EtherCATのMailbox通信では次の二つの方式でODを指定してデータを読み書きすることができます。
- 標準アクセス
任意の
Index,Subindexまで指定して、単一のオブジェクトをSDOとして構成する。CANOpenに準拠したアクセス方法です。- コンプリートアクセス
任意の
Indexのみを指定し、ここにぶらさがる全てのSubindexのオブジェクトを連続したバイトデータとしてSDOを構成します。EtherCAT向けに拡張されたアクセス方法です。
どのサブデバイスも標準アクセスは可能です。コンプリートアクセスが可能かどうかはサブデバイスの仕様によります。SDOをやりとりするMaibox通信が可能なタイミングはPREOP,SAFEOP,OPいずれの状態でも実施することが可能です。
本節では、TwinCAT PLCのファンクションブロックを使ってSDOデータを取得し、コンプリートアクセスで一度に得たバイト配列を、TwinCAT上の構造体データにパースするまでの手順を説明します。