EtherCATプロトコル
Typhoon HIL ツールチェーンにおける EtherCAT プロトコルの実装について説明します。
EtherCATプロトコルの紹介
EtherCAT(Ethernet for Control Automation Technology)は、ベッコフ・オートメーション社が開発したイーサネットベースの産業用フィールドバスプロトコルです。このプロトコルは、短いデータ更新(サイクル)時間、低い通信ジッタ、そしてハードウェアコストの削減が求められるオートメーションアプリケーションに、イーサネット構造を適用できるように特別に設計されています。
EtherCAT はマスター/スレーブ プロトコルです。つまり、ネットワークには 1 つのマスター デバイス (完全にソフトウェアで実装) と複数のスレーブ デバイス (ハードウェアで実装) が接続されます。マスター デバイスはサイクルごとに、複数の EtherCAT データグラムをカプセル化した 1 つの標準 Ethernet フレームを送信します。EtherCAT データグラムは、EtherCAT プロセス イメージ (最大 4 GB) の特定の部分をアドレス指定し、すべてのスレーブ デバイスには 1 つ以上のアドレスが割り当てられます。つまり、マスター デバイスから送信される 1 つの Ethernet フレームには、ネットワーク内のすべてのスレーブ デバイスのプロセス データが含まれます。各スレーブ デバイスは、フレームがデバイスを通過する間にフレームからデータを読み書きします。これは、リアルタイム通信に非常に役立ちます。また、EtherCAT データグラムは ISO/OSI 参照モデルの第 2 層 (データ リンク) までしか到達しないため、TCP/IP や UDP/IP などの上位レベルのプロトコル スタックは不要になります。
この周期的なプロセスデータ通信に加えて、CanOPEN over EtherCAT (CoE)、Ethernet over EtherCAT (EoE)、File Access over EtherCAT (FoE) といった非周期的な通信プロファイルも確立されています。なお、Typhoon HIL EtherCATスレーブデバイスとマスターデバイスは、現在、非周期的な通信プロファイルをサポートしていません。
EtherCATスレーブデバイスは、マスターデバイスからESI設定ファイルを使用して設定できます。ESI設定ファイルは、スレーブデバイスを通信用に適切に設定するために必要なすべての情報を含むXMLドキュメントです。EtherCATスレーブ設定では、Typhoon HIL EtherCATスレーブデバイスで使用するために設計されたESIファイルテンプレートについて説明します。
EtherCATスレーブデバイスのハードウェア
EtherCAT対応のTyphoon HILデバイスはすべて、 Microchip社製EtherCATスレーブハードウェア「LAN9252」を搭載しています。Microchip社製LAN9252は、3つのフィールドバスメモリ管理ユニット(FMMU)と4つのSyncManagerを搭載しています。プロセスデータの保存に使用される4KBのデータプロセスRAM(DPRAM)を内蔵しています。2つのEthernetポートは、マスターデバイスと別のスレーブデバイス(またはさらに2つのスレーブデバイス)とのインターフェースに使用できます。
EtherCAT スレーブ デバイスは、Typhoon HIL デバイスHIL506 および HIL606と互換性があります。
EtherCATスレーブデバイスコンポーネント
EtherCATスレーブデバイスコンポーネントは、EtherCATスレーブ機能を実装します。コンポーネントプロパティでESIファイルをインポートすることで設定できます。コンポーネントはインポートされた設定ファイルを解析し、プロセスデータの詳細を表示します。
成分 | コンポーネントダイアログウィンドウ |
---|---|
![]() EtherCATスレーブ |
![]() |
基本的なスレーブ情報(ベンダーID 、ベンダー名、製品コード、製品名)は、 「ファイルを選択」ウィジェットのすぐ下に表示されます。TxPDO情報テーブルとRxPDO情報テーブルには、ESIファイルで定義されている送信プロセスデータオブジェクト(PDO)と受信PDOがそれぞれリストされます。TxPDO情報テーブルまたはRxPDO情報テーブルでPDO項目をクリックすると、ESIファイルで定義されているPDOのエントリがPDOエントリ情報テーブルに入力されます。ダイアログウィンドウは表示のみを目的としており、PDOを変更することはできません。このような変更はすべてESI構成ファイルで行う必要があります。
「OK」ボタンをクリックすると、定義されたRxPdoおよびTxPdoエントリがEtherCATスレーブコンポーネントの対応する出力端子および入力端子に変換され、エントリ名が端子名として使用されます。EtherCATスレーブコンポーネントの端子を区別するため、PDOエントリには一意の名前を付けることを強くお勧めします。
EtherCATスレーブ構成
<EtherCATInfo> - mandatory
<InfoReference> - forbidden
<Vendor> - mandatory
<Id> - mandatory
<Name> - mandatory
<Descriptions>
<Groups> - mandatory
<Group> - mandatory
<Devices> - mandatory
<Device> - mandatory
@Invisible - forbidden
@Physics - fixed - "YY"
<Type> - mandatory
<Name> - mandatory
<GroupType> - mandatory
<Profile> - ignored
<Fmmu> - fixed - Outputs
<Fmmu> - fixed - Inputs
<Sm> - fixed - MBoxOut
@ControlByte - mandatory
@DefaultSize - mandatory
@Enable - fixed - "1"
@StartAddress - mandatory
<Sm> - fixed - MBoxIn
@ControlByte - mandatory
@DefaultSize - mandatory
@Enable - fixed - "1"
@StartAddress - mandatory
<Sm> - fixed - Outputs
@ControlByte - mandatory
@Enable - fixed - "1"
@StartAddress - fixed - in range - 0x1000 - 0x1FFF
<Sm> - fixed - Inputs
@ControlByte - mandatory
@Enable - fixed - "1"
@StartAddress - fixed - in range - 0x1000 - 0x1FFF
<RxPdo> - mandatory (at least one)
@Fixed - fixed - "true"
@Mandatory - fixed - "true"
@Virtual - forbidden
@OverwrittenByModule - forbidden
@SRA_Parameter - forbidden
<Index> - fixed - in range - 0x1600 - 0x17FF
<Name> - mandatory
<Entry>
<Index> - fixed - in range - 0x6000 - 0x9FFF
<SubIndex> - fixed - in range - 0x01 - 0xFF
<Name> - mandatory
<BitLen> - mandatory
<DataType> - mandatory
<DependOnSlot> - forbidden
<DependOnSlotGroup> - forbidden
<TxPdo> - mandatory (at least one)
@Fixed - fixed - "true"
@Mandatory - fixed - "true"
@Virtual - forbidden
@OverwrittenByModule - forbidden
@SRA_Parameter - forbidden
<Index> - fixed - in range - 0x1A00 - 0x1BFF
<Name> - mandatory
<Entry>
<Index> - fixed - in range - 0x6000 - 0x9FFF
<SubIndex> - fixed - in range - 0x01 - 0xFF
<Name> - mandatory
<BitLen> - mandatory
<DataType> - mandatory
<DependOnSlot> - forbidden
<DependOnSlotGroup> - forbidden
<Mailbox> - forbidden
<Slots> - forbidden
<Eeprom> - mandatory
<ByteSize> - fixed - 2048
<ConfigData> - fixed - first two bytes - 80
<Modules> - forbidden
同期マネージャー
Typhoon HIL EtherCATスレーブデバイスが正常に動作するには、4つのSyncManagerすべてを前述のとおりに設定する必要があります。MBoxOutおよびMBoxIn SyncManagerのデフォルトサイズは0以外である必要があります。SyncManagerのメモリ領域は重複してはなりません。出力および入力SyncManagerのメモリ領域は、割り当てられたPDOの3倍のサイズであることに注意してください。これは、メモリ領域の同期を維持するために必要です。最後に、SyncManagerのメモリ領域の合計サイズは、DPRAMの合計サイズ(4KB)を超えてはなりません。
プロセスデータオブジェクト
ESIファイルのRxPdo要素とTxPdo要素は、マスターデバイスとスレーブデバイス間のデータ交換に関与する単一のプロセスデータオブジェクトを表します。スレーブデバイスからマスターデバイスに送信されるデータはTxPdo要素によって記述され、 RxPdo要素はマスターデバイスからスレーブデバイスに送信されるデータを記述します。各PDOは、一意のインデックスと(必ずしも一意である必要はない)名前で定義する必要があります。RxPdoインデックスは0x1600~0x17FFの範囲に属する必要があり、 TxPdoインデックスは0x1A00~0x1BFFの範囲に属する必要があります。Typhoon HIL EtherCATスレーブデバイスは動的なPDO構成をサポートしていないため、PDO要素のFixed属性とMandatory属性を「true」に設定する必要があります。PDO要素のSm属性は、対応するSyncManagerのインデックスに設定する必要があります( Outputs SyncManagerはRxPdo要素に対応し、 Inputs SyncManagerはTxPdo要素に対応します)。
各PDO要素は、プロセスデータ通信に参加する単一の変数を表す0個以上のエントリ要素で構成されます。エントリはインデックスとサブインデックスによって一意に定義されます。エントリが伝送するデータは、ビット長とデータ型によって記述されます。EtherCATプロトコルで記述されるデータ型は表2に示されています。Typhoon HILデバイスは32ビットを超えるデータ型をサポートしていないため、32ビットを超えるEtherCATベースデータ型はすべて切り捨てられることに注意してください。
名前 | 説明 | ビットサイズ | 範囲 |
---|---|---|---|
ブール | ブール値 | 1 | |
BIT1 | 1ビット文字列 | 1 | |
BIT2 | 2ビット文字列 | 2 | |
BIT3 | 3ビット文字列 | 3 | |
BIT4 | 4ビット文字列 | 4 | |
BIT5 | 5ビット文字列 | 5 | |
BIT6 | 6ビット文字列 | 6 | |
BIT7 | 7ビット文字列 | 7 | |
BIT8 | 8ビット文字列 | 8 | |
ビタ8 | 8つの個別ビット | 8 | |
ビタ16 | 16個の個別ビット | 16 | |
ビタRR32 | 32個の個別ビット | 32 | |
シント | 短整数 | 8 | -128から127 |
INT | 整数 | 16 | -32.768から32.767 |
INT24 | 24ビット整数 | 24 | -2 23から2 23 - 1 |
ディント | 倍精度整数 | 32 | -2 31から2 31 - 1 |
INT40 | 40ビット整数 | 40 | -2 39から2 39 - 1 |
INT48 | 48ビット整数 | 48 | -2 47から2 47 - 1 |
INT56 | 56ビット整数 | 56 | -2 55から2 55 - 1 |
糸くず | 長整数 | 64 | -2 63から 2 63 - 1 |
USINT | 符号なし短整数 | 8 | 0から255 |
単位 | 符号なし整数 | 16 | 0から65.535 |
UINT24 | 符号なし24ビット整数 | 24 | 0対2 24 - 1 |
UDINT | 符号なし倍精度整数 | 32 | 0対2 32 - 1 |
UINT40 | 符号なし40ビット整数 | 40 | 0対2 40 - 1 |
UINT48 | 符号なし48ビット整数 | 48 | 0対2 48 - 1 |
UINT56 | 符号なし56ビット整数 | 56 | 0対2 56 - 1 |
ULINT | 符号なし長整数 | 64 | 0対2 64 - 1 |
本物 | 浮動小数点 | 32 | |
LREAL | ロングフロート | 64 |
ソフトウェアの制限により、Typhoon HIL EtherCAT スレーブ デバイスが適切に動作するには (定義された PDO が使用されていない場合でも)、ESI ファイル内に非ゼロ ビット長のRxPdo要素とTxPdo要素がそれぞれ少なくとも 1 つずつ存在する必要があります。
EEPROM
<ConfigData> subelement of the <Eeprom> element of the ESI file allows for specifying the EEPROM configuration data. Since the Typhoon HIL EtherCAT slave device uses SPI microcontroller interface, the first two bytes of the EEPROM configuration data should be set to 80.
ESI構成ファイルの例
以下の例は、DINTデータ型の32ビットエントリをスレーブデバイスからマスターデバイスに送信し、同じ型のエントリを反対方向に送信する場合のプロセスデータ構成を示しています。PDOとそのエントリの追加または削除は、PDOの合計サイズがDPRAMの制限(SyncManagersの段落で説明)を超えない限り、自由に行うことができます。
<?xml version="1.0"?>
<EtherCATInfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="EtherCATInfo.xsd" Version="1.6">
<Vendor>
<Id>#xC7B</Id>
<Name>Typhoon HIL Inc</Name>
</Vendor>
<Descriptions>
<Groups>
<Group>
<Type>HIL606 Slaves</Type>
<Name LcId="1033">HIL606 Slaves</Name>
</Group>
</Groups>
<Devices>
<Device Physics="YY">
<Type ProductCode="#x00000100" RevisionNo="#x1">HIL606 EtherCAT Slave</Type>
<Name LcId="1033">HIL606 EtherCAT Slave</Name>
<GroupType>HIL100 Slaves</GroupType>
<Fmmu>Outputs</Fmmu>
<Fmmu>Inputs</Fmmu>
<Sm ControlByte="#x26" DefaultSize="128" Enable="1" StartAddress="#x1000">MBoxOut</Sm>
<Sm ControlByte="#x22" DefaultSize="128" Enable="1" StartAddress="#x1080">MBoxIn</Sm>
<Sm ControlByte="#x24" Enable="1" StartAddress="#x1100">Outputs</Sm>
<Sm ControlByte="#x20" Enable="1" StartAddress="#x1300">Inputs</Sm>
<RxPdo Fixed="true" Mandatory="true" Sm="2">
<Index>#x1600</Index>
<Name>TestRxVars</Name>
<Entry>
<Index>#x7000</Index>
<SubIndex>#x1</SubIndex>
<BitLen>32</BitLen>
<Name>TestRxVar</Name>
<DataType>DINT</DataType>
</Entry>
</RxPdo>
<TxPdo Fixed="true" Mandatory="true" Sm="3">
<Index>#x1A00</Index>
<Name>TestTxVars</Name>
<Entry>
<Index>#x6000</Index>
<SubIndex>#x1</SubIndex>
<BitLen>32</BitLen>
<Name>TestTxVar</Name>
<DataType>DINT</DataType>
</Entry>
</TxPdo>
<Eeprom>
<ByteSize>2048</ByteSize>
<ConfigData>8002000000000000</ConfigData>
<BootStrap>0010800080108000</BootStrap>
</Eeprom>
</Device>
</Devices>
</Descriptions>
</EtherCATInfo>
EtherCAT マスターコンポーネント
EtherCATマスターデバイスコンポーネントは、EtherCATマスター機能を実装します。このコンポーネントを使用すると、HILデバイス上のEthernetポートを選択し、スレーブデバイスとのデータ交換に使用できます。また、サイクルタイムを0.2ミリ秒から3600秒の範囲で調整できます。サイクルタイムパラメータは、マスターが複数のEtherCATデータグラムを含む単一の標準Ethernetフレームの送信を開始する頻度(秒単位)を決定します。
プラス記号をクリックすると、任意の数のスレーブデバイスを追加できます。ただし、スレーブデバイスの数は、現在ネットワーク上にあるスレーブデバイスの数と一致する必要があります。各スレーブデバイスの情報は、それぞれのタブに表示されます。タブの順序は、ネットワーク上のスレーブデバイスの物理的な順序に対応しています(最初のタブは、このスレーブデバイスがネットワーク上の最初のデバイスであることを示します)。マイナス記号をクリックすると、現在選択されているタブ(スレーブデバイス)が削除されます。
各スレーブデバイスごとに、ESIファイルをインポートする必要があります。EtherCATマスターコンポーネントがサポートするESIファイルの必須、禁止、固定、および無視フィールドは、上記のEtherCATスレーブ設定で提供されるESIテンプレートで指定されます。マスターコンポーネントはインポートされたESIファイルを解析し、ベンダーID 、ベンダー名、製品コード、 RxPdo 、 TxPdoエントリなどのスレーブデバイスの情報フィールドを表示します。
EtherCATマスターコンポーネントは、スレーブデバイスを再プログラムする機能を備えています。その場合、バイナリファイルをインポートし、 「再プログラム」コンボボックスから「モデルロード時」オプションを選択する必要があります。通常、スレーブデバイスの再プログラムが必要な場合を除き、マスターコンポーネントの動作にスレーブデバイスのバイナリファイルのインポートは必要ありません。
タブ名をダブルクリックすることで、スレーブデバイスの名前を変更できます。スレーブデバイスには一意の名前を設定する必要があります。デフォルトの名前は「スレーブ1」、「スレーブ2」などです。
「OK」ボタンをクリックすると、各スレーブの解析されたRxPdoおよびTxPdoエントリが、EtherCATマスターコンポーネントの対応する入力端子および出力端子に変換されます。各スレーブに対応するEtherCATマスターコンポーネントの端子を区別するため、各スレーブのPDOエントリに一意の名前を付けることを強くお勧めします。
成分 | コンポーネントダイアログウィンドウ |
---|---|
![]() |
![]() |
パディングビットを含む ESI 構成ファイルの例
In order to avoid unexpected errors during configuration and usage of the Typhoon HIL EtherCAT master component, it is necessary to add padding bits for each PDO entry that has a bit count different from 8, 16, 32, or 64 bits. This requirement applies to the ESI file of every slave device. An example of an ESI file with padding bits is given below. Padding bits are defined within the <Entry> tag, with <Index> and<SubIndex> values set to 0, while the <BitLen> is set to a value such that the total size of the corresponding PDO entry is 8, 16, 32, or 64 bits.
<?xml version="1.0"?>
<EtherCATInfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="EtherCATInfo.xsd" Version="1.6">
<Vendor>
<Id>#xC7B</Id>
<Name>Typhoon HIL Inc</Name>
<ImageData16x14>424DF8010000000000003600000028000000100000000E0000000100100000000000C2010000120B0000120B00000000000000000000FF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7F397B8C75C6748474A5744A75947AFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7F8B7521746374847420706374837441746374FF7FFF7FFF7FFF7FFF7FFF7FFF7F00708374A47400709C7FA47463744274E674FF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7F00702074CD79FF7FFF7F00740070FF7FFF7FFF7FFF7FFF7FFF7F5A7FFF7FFF7F947A0070FF7FFF7FFF7F0070D67AFF7FFF7FD67AFF7FFF7FFF7F0070FF7FFF7F00709C7FFF7FFF7FCD796274FF7FFF7FFF7F00705A7FFF7FFF7F6274E774AD754975FF7FFF7FFF7F0070FF7FFF7FFF7FA5740875FF7FFF7FFF7F497541740070FF7FFF7FFF7F0070187FFF7FFF7FF77A2174FF7FFF7FFF7FFF7F937A217400709C7FFF7F317A0070C674FF7FFF7F00705A7FFF7FFF7FFF7FFF7FFF7F087541740070397B0070A4742170EF790775297DFF7FFF7FFF7FFF7FFF7FFF7FFF7FAC79007000708474A47484742170A57CFF7F7B6FFF7FFF7FFF7FFF7FFF7FFF7FFF7F397F8B75C6748474C574AC75FF7FD6561863FF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7F0000</ImageData16x14>
</Vendor>
<Descriptions>
<Groups>
<Group>
<Type>HIL100 Slaves</Type>
<Name LcId="1033">HIL100 Slaves</Name>
<ImageData16x14>424DF8010000000000003600000028000000100000000E0000000100100000000000C2010000120B0000120B00000000000000000000FF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7F397B8C75C6748474A5744A75947AFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7F8B7521746374847420706374837441746374FF7FFF7FFF7FFF7FFF7FFF7FFF7F00708374A47400709C7FA47463744274E674FF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7F00702074CD79FF7FFF7F00740070FF7FFF7FFF7FFF7FFF7FFF7F5A7FFF7FFF7F947A0070FF7FFF7FFF7F0070D67AFF7FFF7FD67AFF7FFF7FFF7F0070FF7FFF7F00709C7FFF7FFF7FCD796274FF7FFF7FFF7F00705A7FFF7FFF7F6274E774AD754975FF7FFF7FFF7F0070FF7FFF7FFF7FA5740875FF7FFF7FFF7F497541740070FF7FFF7FFF7F0070187FFF7FFF7FF77A2174FF7FFF7FFF7FFF7F937A217400709C7FFF7F317A0070C674FF7FFF7F00705A7FFF7FFF7FFF7FFF7FFF7F087541740070397B0070A4742170EF790775297DFF7FFF7FFF7FFF7FFF7FFF7FFF7FAC79007000708474A47484742170A57CFF7F7B6FFF7FFF7FFF7FFF7FFF7FFF7FFF7F397F8B75C6748474C574AC75FF7FD6561863FF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7F0000</ImageData16x14>
</Group>
</Groups>
<Devices>
<Device Physics="YY">
<Type ProductCode="#x00000100" RevisionNo="#x1">HIL100 EtherCAT Slave</Type>
<Name LcId="1033">HIL100 EtherCAT Slave</Name>
<GroupType>HIL100 Slaves</GroupType>
<Fmmu>Outputs</Fmmu>
<Fmmu>Inputs</Fmmu>
<Sm ControlByte="#x26" DefaultSize="128" Enable="1" StartAddress="#x1000">MBoxOut</Sm>
<Sm ControlByte="#x22" DefaultSize="128" Enable="1" StartAddress="#x1080">MBoxIn</Sm>
<Sm ControlByte="#x24" Enable="1" StartAddress="#x1100">Outputs</Sm>
<Sm ControlByte="#x20" Enable="1" StartAddress="#x1300">Inputs</Sm>
<RxPdo Fixed="true" Mandatory="true" Sm="2">
<Index>#x1600</Index>
<Name>Signed_int_tx</Name>
<Entry>
<Index>#x7000</Index>
<SubIndex>#x1</SubIndex>
<BitLen>8</BitLen>
<Name>Signed_int_tx_1</Name>
<DataType>SINT</DataType>
</Entry>
<Entry>
<Index>#x7000</Index>
<SubIndex>#x2</SubIndex>
<BitLen>24</BitLen>
<Name>Signed_int_tx_2</Name>
<DataType>INT24</DataType>
</Entry>
<Entry>
<Index>#x0</Index>
<SubIndex>#x0</SubIndex>
<BitLen>8</BitLen>
</Entry>
<Entry>
<Index>#x7000</Index>
<SubIndex>#x3</SubIndex>
<BitLen>40</BitLen>
<Name>Signed_int_tx_3</Name>
<DataType>INT40</DataType>
</Entry>
<Entry>
<Index>#x0</Index>
<SubIndex>#x0</SubIndex>
<BitLen>24</BitLen>
</Entry>
</RxPdo>
<TxPdo Fixed="true" Mandatory="true" Sm="3">
<Index>#x1A00</Index>
<Name>Signed_int_rx</Name>
<Entry>
<Index>#x6000</Index>
<SubIndex>#x1</SubIndex>
<BitLen>56</BitLen>
<Name>Signed_int_rx_1</Name>
<DataType>INT56</DataType>
</Entry>
<Entry>
<Index>#x0</Index>
<SubIndex>#x0</SubIndex>
<BitLen>8</BitLen>
</Entry>
</TxPdo>
<Eeprom>
<ByteSize>2048</ByteSize>
<ConfigData>8002000000000000</ConfigData>
<BootStrap>0010800080108000</BootStrap>
</Eeprom>
<ImageData16x14>424DF8010000000000003600000028000000100000000E0000000100100000000000C2010000120B0000120B00000000000000000000FF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7F397B8C75C6748474A5744A75947AFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7F8B7521746374847420706374837441746374FF7FFF7FFF7FFF7FFF7FFF7FFF7F00708374A47400709C7FA47463744274E674FF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7F00702074CD79FF7FFF7F00740070FF7FFF7FFF7FFF7FFF7FFF7F5A7FFF7FFF7F947A0070FF7FFF7FFF7F0070D67AFF7FFF7FD67AFF7FFF7FFF7F0070FF7FFF7F00709C7FFF7FFF7FCD796274FF7FFF7FFF7F00705A7FFF7FFF7F6274E774AD754975FF7FFF7FFF7F0070FF7FFF7FFF7FA5740875FF7FFF7FFF7F497541740070FF7FFF7FFF7F0070187FFF7FFF7FF77A2174FF7FFF7FFF7FFF7F937A217400709C7FFF7F317A0070C674FF7FFF7F00705A7FFF7FFF7FFF7FFF7FFF7F087541740070397B0070A4742170EF790775297DFF7FFF7FFF7FFF7FFF7FFF7FFF7FAC79007000708474A47484742170A57CFF7F7B6FFF7FFF7FFF7FFF7FFF7FFF7FFF7F397F8B75C6748474C574AC75FF7FD6561863FF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7F0000</ImageData16x14>
</Device>
</Devices>
</Descriptions>
</EtherCATInfo>
この ESI ファイルの例では、 SINTデータ型の 8 ビットエントリが 1 つと、 INT24データ型の 24 ビットエントリが 1 つ定義されています。これらのエントリには、ビット長を 8 に設定したパディング PDO エントリを定義する必要があります。さらに、 INT40データ型の 40 ビットエントリが 1 つ定義されており、24 ビットのパディングビットを定義する必要があります。パディング PDO エントリを除くこれらの 3 つのエントリは、 RxPDOオブジェクト内で定義され、マスターデバイスからスレーブデバイスへのデータ送信に使用されます。反対方向では、 INT56データ型の 56 ビットエントリが 1 つ定義されており、これらのエントリには、ビット長を 8 に設定したパディング PDO エントリを定義する必要があります。
EtherCAT マスター コンポーネントは、Typhoon HIL デバイス ( HIL101、HIL404、HIL506、HIL606)と互換性があります。
仮想HILサポート
Virtual HILは現在このプロトコルをサポートしていません。非リアルタイム環境(例:ローカルコンピュータでモデルを実行する場合)を使用する場合、このコンポーネントへの入力は破棄され、このコンポーネントからの出力はゼロになります。