文章目录
1. 测试环境
- 内核版本:Preempt-RT 4.19.72-rt25
- EtherCAT 主站:IgH
- 测试对象:具备EtherCAT通信功能的从站
2. 测试命令
2.1 ethercat -help
显示当前支持的命令行指令,当前总共提供了 28 个命令行指令。
2.2 ethercat master
显示当前主站和从站设备的连接状态和信息。
2.3 ethercat slave
显示当前从站设备的连接状态和信息
2.4 ethercat states
用来请求从站转换状态,可选参数有INIT、PREOP、BOOT、SAFEOP、OP
例如,将从站0切换为OP状态:
ethercat states -p 0 OP
2.5 ethercat graph
以文本信息输出总线上连接的所有从站设备连接拓扑图
2.6 ethercat version
显示当前ighH主站的版本信息。
2.7 ethercat sdos
该命令行用来输出当前从站支持的所有的SDO信息,默认输出信息形式为:
- SDO 的索引和名字信息
SDO 0x1000, “Device type”
- 0x1000:SDO 索引值;
- “Device type”:SDO的名字;
- 显示 SDO 的内容,包括各个子索引的参数含义、访问权限等
0x1000:00, r-r-r, uint32, 32 bit, “Device type”"
- 0x1000:00:代表子索引的地址为 0x0000;
- r-r-r:代表着这个 SDO 的访问权限; 这个访问权限分别是针对应用层在预运行状态(PREOP)、安全运行状态(SAFEOP)和运行状态(OP)。'r’表示该条目可读,‘w’表示该条目可写。假如对访问权限不太确切,则使用’-'代替;
- uint32:代表这个子索引保存的数据类型,无符号整数数据, 32 bit;
- 32 bit:代表这个子索引数据的大小是 32 bit;
“Device type”:用来描述这个子索引的含义;
2.8 ethercat pdos
显示同步管理器的参数、PDO分配和映射信息,默认输出信息形式为:
- 同步管理器信息
SM2: PhysAddr 0x1100, DefaultSize 2, ControlRegister 0x64, Enable 1
- SM2:同步管理器2;
- PhysAddr:物理地址开始地址 0x1100;
- DefaultSize:默认数据大小 2;
- ControlRegister:控制寄存器 0x60;
- Enable:使能字 1;
- 显示PDO方向(TX 或者 RX),索引值,PDO名字
RxPDO 0x1601 “DO RxPDO-Map”
- RxPDO:代表从站接收数据的方向(从站接收数据);
- 0x1601:PDO的索引值;
- “DO RxPDO-Map”:PDO的名字;
- 显示PDO条目的索引和子索引(都是以16进制的形式现实的),显示位宽和描述
PDO entry 0x7010:01, 1 bit, “OrderDir 1”
- 0x7010:01 : 表示PDO的索引和子索引,当前表示为状态字的索引和子索引地址;
- 1bit:表示该条目的位宽,是一个 1 bit 的数据;
- “OrderDir 1”:表示该位的描述,表示这个PDO 描述的是状态字;
2.9 ethercat domains
用来显示域的信息。
2.10 ethercat cstruct
该命令显示主站和从站的信息,且其生成的PDO信息可以直接被应用层的ecrt_slave_config_pdos()函数调用。