本文内容是根据参考视频做的笔记:
- EtherCAT Master 控制:https://www.bilibili.com/video/BV1L14y1t7ks/
- EtherCAT Master Motion 控制:https://www.bilibili.com/video/BV16P411j71E/
EtherCAT 总线简单介绍
- 从站站号:如果使用扫描,则根据接线顺序决定(如第一个连接的从站,站号=1)
- EtherCAT Master:使用伺服进行控制,PLC 只发送控制指令
- EtherCAT Manager:PLC 进行轨迹控制
EtherCAT Master 配置
安装对应伺服的描述文件(XML 格式)
添加主站
项目,右键 --> 添加设备
EtherCAT --> 主站,选择对应的模式
注意:这里的 Master 和 Master SoftMotion 与 Master 和 Motion 模式完全不是同一概念
- Master = 通用的 EtherCAT 主站
- Master SoftMotion = 经过优化的专用于运动控制的 EtherCAT 主站
Master 和 Motion 模式
- EtherCAT Master:伺服内部控制运动轨迹,PLC 只下发控制指令
PLC 的 MC 运动控制功能块不能用,只能使用伺服自带的功能 - EtherCAT Motion:PLC 进行轨迹控制,伺服相当于一个变频器,不做路径控制
可在 PLC 中使用 MC 运动控制功能块,实现独立于伺服厂家的运动控制
主站配置
主站(PLC)EtherCAT 通信扫描周期
轴的控制周期(EtherCAT 通讯 TASK 的循环周期)
轴的控制周期 = EtherCAT 通讯 TASK 的循环周期
接到主站(PLC)
将上面的 CodeSYS 项目配置好路由,使其能正常连接到 PLC。略
配置主站(PLC)通讯使用的网口
双击添加的设备,进入配置界面,点击【通用】tab 下的【浏览】
弹窗显示 PLC 拥有的网口。选择设备对应的接口,完成配置。
具体选哪个接口要根据 PLC 设备说明书、实际使用的接口来定
项目中的设备配置
在主站下添加伺服设备
在刚才添加的主站,右键 --> 添加设备
在弹窗中,找到对应的设备,点击【添加设备】
添加一个设备后,窗口不会关闭,如果要添加多个设备,则多次点【添加设备】即可
通用配置
- 启用专家配置
- 使能分布式时钟、使能 Sync0
- 其他配置保持默认
配置 PDO(配置要传输的模版)
PDO = 此设备单次传输的最小数据单位
- 单个 PDO 有最大长度限制
- PDO 分为:输入、输出、邮箱输入、邮箱输出
- 输入、输出 PDO = 周期性传输的数据。通常是当前的实时状态值、控制指令
- 邮箱 PDO = 非周期性传输的数据,用于特殊的指令控制等场合
- 一个设备同一时间只能传输一个输入 PDO、一个输出 PDO。但在这里可配置多个 PDO 以供切换
窗口各部分的含义
- 同步管理器:当前配置的所有 PDO 包含的各种类型的数据数量
- PDO List:所有 PDO 的列表
- PDO 内容:每个 PDO 实际包含的数据,以寄存器来显示。寄存器由伺服的 XML 文件定义
- 默认有一些 XML 预先定义的 PDO
- 也可以添加自己需要的内容、PDO
在【PDO 内容】点击【添加】,在弹窗中可选择要添加的内容
- 注意1:PDO 是区分输入、输出的。需要监控的数据则输入输出都要配置。
- 注意2:一个设备同一时间只能传输一个输入 PDO、一个输出 PDO。运行时可通过软件切换控制每次获取的 PDO 是哪些
启用 PDO(选择真正传输的使用哪个模版)
实际传输只能配置一个输入 PDO 和一个输出 PDO。勾选哪个,哪个就启用,其余的就没法启用了
(可选)添加启动参数
配置PLC变量与 PDO 数据的映射
PLC 使用 PDO 数据的方法
- 直接操作绝对变量:绝对变量地址以 % 开头,地址系统自动分配的
- 这里新建变量名,到时引用这里的变量
- (推荐)点击【变量】格上的【…】,关联到项目内其他程序、变量表中的变量
循环刷新数据
【EtherCAT IO映射】页面,右下角下拉框,选择【使能2】
- 使能1:优先使用自定义的任务,如果自定义任务没有配置刷新这些 IO 映射的点的任务,再用 EtherCAT 通信任务来做变量同步
- 使能2:直接使用 EtherCAT 通信任务来做变量同步
EtherCAT Master Motion 配置
配置为 Motion 类型后,相当于使用 PLC 而不是伺服来实现运动控制,PLC 此时兼有运动控制器的功能
- 可使用 CodeSys 提供的运动控制指令库,实现更强大的运动控制,如虚轴控制、多轴联动等
- 这种运动控制的程序,不绑定伺服的功能,运动控制与伺服厂家、型号无关,提高了灵活度
添加主站
同 Master 添加主站,但要选 SoftMotion
主站配置、设备添加、设备配置同 Master 配置,这里省略
注意:这里的 Master 和 Master SoftMotion 与 Master 和 Motion 模式完全不是同一概念
- Master = 通用的 EtherCAT 主站
- Master SoftMotion = 经过优化的专用于运动控制的 EtherCAT 主站
Master 和 Motion 模式
- EtherCAT Master:伺服内部控制运动轨迹,PLC 只下发控制指令
PLC 的 MC 运动控制功能块不能用,只能使用伺服自带的功能 - EtherCAT Motion:PLC 进行轨迹控制,伺服相当于一个变频器,不做路径控制
可在 PLC 中使用 MC 运动控制功能块,实现独立于伺服厂家的运动控制
设备添加 Motion 轴
在原设备下,右键 --> 添加 CiA402 轴。此轴的控制就使用 Motion 模式进行控制了,由 PLC 进行轨迹规划和运动控制。PLC 兼做运动控制器
轴配置
通用配置
设置轴类型
设置轴的缩放
设置轴对象名称(轴号)
对应 MC 指令中指定的轴号
伺服配置
注意:根据不同厂商的要求,这里的配置不同
- 步科 Kinco
- 开启 KEBA 模式
- 开启 EtherCAT 同步式时钟功能、配置同步时钟周期
- 禾川 HCFA
http://class.hcfa.cn/pluginfile.php/4849/mod_resource/content/0/Beckhoff%E5%92%8CX3T%E8%B0%83%E8%AF%95%E6%89%8B%E5%86%8C.pdf- 配置伺服模式 = 7 (CANopen / EtherCAT 模式),从站地址 = 1
- PLC 通过 EtherCAT 下发启动参数
PLC 运控程序编写
添加编程库 MC3 Lib
编写相关指令
注意:Axis = 轴号 = 在伺服配置中设置的轴对象名称
将相关程序段加入 EtherCAT 任务中
将使用 MC 运控指令的程序段加入到 EtherCAT 主站自动生成的 TASK 中
这里将 ECAction 程序段添加到 EtherCAT_Task 任务中