4. IndraWorks工程环境搭建
IndraWorks 是博世力士乐(Bosch Rexroth)为其运动控制产品提供的统一工程平台,IndraMotion MLC、IndraDrive 以及配套的 EtherCAT 从站设备都在同一工程树中管理。本章围绕一个可复现的最小工程闭环展开:从新建工程、扫描设备、组态 EtherCAT 网络,到配置从站参数并在线诊断。理解这条链路的关键,是明白 IndraWorks 中“工程(Project)—控制器(Controller)—EtherCAT 主站—从站(Slave)”的层级关系,以及离线组态与在线实际拓扑之间必须一致这一硬性约束。
一、工程创建与设备扫描
启动 IndraWorks 后,通过 File → New Project 新建工程,指定工程名与存储路径。工程本身只是一个容器,真正的设备对象需要手动添加或通过扫描获得。对于已知硬件配置的场合,可在设备目录中选择控制器型号(例如 IndraMotion MLC 系列)并添加到工程;对于现场已有设备的情况,更推荐使用 Online → Scan Devices 进行在线扫描。
扫描前需确认 PC 与控制器处于同一网段,例如 PC 设为 192.168.1.100/255.255.255.0,控制器默认地址常见为 192.168.1.10。扫描时 IndraWorks 通过以太网广播/单播探测在线设备,返回结果包含设备类型、IP 地址、固件版本与设备名称。若扫描不到设备,应依次检查网线连接、PC 防火墙、IP 网段是否一致,以及控制器是否已上电并完成启动。
扫描到控制器后,将其“加入工程”,此时工程树中会出现该控制器节点。需要注意:扫描得到的是在线实际拓扑,而工程中保存的是离线组态,两者在后续必须保持一致,否则下载时会报拓扑不匹配错误。
二、EtherCAT网络组态
EtherCAT 网络组态的核心是建立主站与从站之间的逻辑连接,并确定从站在总线上的物理顺序。在 IndraWorks 中,展开控制器节点下的 EtherCAT Master,右键选择扫描从站或手动添加从站。扫描方式会读取从站的实际位置与型号,手动方式则需按实际接线顺序逐个添加。
从站顺序至关重要:EtherCAT 采用逻辑寻址,从站在总线上的排列顺序决定了过程数据在帧中的偏移位置。若组态顺序与实际接线顺序不一致,即使型号正确,也会导致过程数据错位。组态完成后,工程树中会形成“主站 → 从站1 → 从站2 → …”的链式结构,每个从站下再挂载其过程数据对象(PDO)与参数对象(SDO)。
组态阶段还应设置分布式时钟(DC)模式。对于需要多轴同步的运动控制应用,通常启用 DC 并将参考时钟设在主站或首个支持 DC 的从站上,同步周期与控制器任务周期保持一致,例如 1 ms 或 2 ms。
三、从站参数配置
从站参数分为两类:一类是通信相关参数,如 PDO 映射、DC 使能、看门狗时间;另一类是设备功能参数,如驱动器的额定电流、编码器分辨率、限位值。在 IndraWorks 中,双击从站节点即可打开其参数编辑器。
以 IndraDrive 从站为例,常见需要设置的参数包括:
- PDO 映射:确定控制字、状态字、目标位置、实际位置等对象在过程数据帧中的位置与长度。例如将
0x6040(控制字)与0x607A(目标位置)映射到 RxPDO,将0x6041(状态字)与0x6064(实际位置)映射到 TxPDO。 - DC 同步:若启用分布式时钟,需设置同步周期与偏移,通常与控制器任务周期一致。
- 驱动功能参数:如
P-0-0090类参数用于设定电机额定数据,S-0-0001类参数用于设定编码器分辨率。这些参数必须与电机铭牌和机械传动比匹配。
配置完成后,建议先执行“离线一致性检查”,确认工程组态与从站实际能力(如 PDO 长度、DC 支持)不冲突,再下载到控制器。下载时 IndraWorks 会比对在线拓扑与离线组态,若从站数量、顺序或型号不一致,会给出明确错误提示。
四、在线诊断方法
在线诊断是验证组态是否正确的关键手段。IndraWorks 提供多种诊断视图:
- EtherCAT 状态机:查看主站与每个从站的
Init → Pre-Op → Safe-Op → Op状态迁移。若某个从站停留在 Safe-Op,通常意味着 PDO 映射或 DC 配置不匹配。 - 过程数据监视:实时观察控制字、状态字、位置、速度等 PDO 变量的数值变化,判断通信是否正常、数据是否合理。
- 从站诊断日志:读取从站错误码,例如
0x0001表示一般错误,0x0010表示同步错误。结合驱动器手册可定位到具体原因。 - 总线负载与帧统计:查看工作计数器(WKC)是否与预期一致。WKC 小于预期值说明有从站未正确响应。
五、一个可复现的配置示例
假设现场有一台 MLC 控制器、两台 IndraDrive 驱动器(轴 A、轴 B)和一个数字量 I/O 模块。目标是以 1 ms 周期同步控制两个轴,并读取 I/O 状态。配置流程如下:
- 新建工程,扫描到控制器
192.168.1.10,加入工程。 - 展开 EtherCAT Master,扫描从站,得到顺序:IndraDrive(轴 A)→ IndraDrive(轴 B)→ I/O 模块。
- 为两个驱动器启用 DC,参考时钟设为主站,同步周期
1 ms。 - 配置轴 A 的 RxPDO:控制字
0x6040、目标位置0x607A;TxPDO:状态字0x6041、实际位置0x6064。轴 B 同理。 - I/O 模块映射 8 位输入与 8 位输出。
- 下载工程,观察 EtherCAT 状态机是否全部进入 Op。
- 在过程数据监视中确认轴 A、轴 B 的实际位置随指令变化,I/O 输入状态与现场按钮一致。
若第 6 步中某个从站未进入 Op,可回到从站诊断日志查看错误码,并核对 PDO 映射长度是否与从站实际支持的一致。整个闭环完成后,工程即可作为后续运动控制程序开发的基础。