☰
汇川H5U与步科EtherCAT伺服配置全攻略:从接线到多轴同步
2026/10/6 7:15:14 网站建设 项目流程

1. 为什么这套组合值得单独写一篇配置实录

汇川H5U这台PLC在小型运动控制圈子里热度一直不低,原因很直接:本体自带EtherCAT主站口,不用额外加通讯模块就能挂总线伺服,性价比摆在那里。步科伺服在国产低压伺服里出货量大、资料相对全、价格友好,很多做包装机、贴标机、小型桁架机械手的朋友,第一套运动控制方案就是"H5U + 步科EtherCAT伺服"。

但真正上手你会发现,网上能搜到的资料要么是汇川自家IS620的配置,要么是步科配别的PLC,两边拼起来总差那么一口气。EtherCAT这东西又不像Modbus那样"接上线、对个地址"就能跑,它涉及ESI文件导入、PDO映射、DC同步模式、单位换算这一整套东西,任何一环没对上,伺服就是不动,或者一动就飞车。

这篇内容就是把我自己从零搭这套系统、以及后来帮别人远程排障攒下来的经验,完整梳理一遍。从硬件接线、软件版本选择,到AutoShop里的EtherCAT组态、步科伺服的站号与PDO设置、再到回零和点动测试,每一步都给出可复现的操作和背后的原因。适合刚接触EtherCAT总线伺服的新手,也适合从脉冲控制转总线控制、被PDO和DC搞晕的老工程师。看完你应该能独立把一套H5U带步科伺服跑起来,并且知道出问题时该往哪个方向查。

2. 动手前的整体思路与方案选型

2.1 为什么选EtherCAT而不是脉冲或Modbus

先说清楚这个方案的本质。PLC控制伺服,常见三条路:脉冲方向、Modbus RTU、EtherCAT总线。脉冲方式最传统,接线简单,但一根轴就要占用高速输出点,H5U本体高速输出有限,做三四轴就捉襟见肘,而且脉冲线长了容易丢步、受干扰。Modbus方式能省线,但实时性差,做位置控制基本只能发个速度或简单定位,多轴同步想都别想。

EtherCAT是实时工业以太网,主站一个网口串下去,理论上可以挂几十个从站,刷新周期能做到1ms甚至更低,多轴之间的同步精度是微秒级。对于要做插补、电子凸轮、多轴联动的场合,这是唯一现实的选择。H5U本体就带EtherCAT主站,等于省了一笔通讯模块的钱,这也是它在这类小设备上受欢迎的核心原因。

提示:EtherCAT是"主站发、从站转发"的菊花链结构,物理上是一进一出。接线时一定要认清IN和OUT口,接反了整条链都不通,这是新手最常见的翻车点。

2.2 硬件清单与版本匹配的坑

这套系统需要的硬件不多,但版本匹配是重灾区,我先把清单列出来:

部件型号示例关键说明
PLC汇川H5U-1614MTD带EtherCAT主站口,注意后缀
伺服驱动器步科FD1X4系列EtherCAT型必须是EtherCAT总线款,不是脉冲款
伺服电机步科配套低压伺服编码器线、动力线原厂配
网线工业级屏蔽网线用普通网线也能通,但抗干扰差
电源24V/48V按电机规格驱动器供电电压要对

这里最大的坑是伺服型号。步科同一个系列往往有脉冲型、模拟量型、EtherCAT型,外观长得几乎一样,型号后缀差一两个字母。买错成脉冲款,你怎么配EtherCAT都挂不上。下单前一定对着步科选型手册确认是EtherCAT总线版本。

第二个坑是软件版本。汇川AutoShop版本太老可能不带某些EtherCAT从站的ESI解析能力,步科的ESI文件(XML格式的设备描述文件)版本也要和固件匹配。我的建议是AutoShop用官网当前稳定版,步科ESI文件从官方渠道下载对应固件版本的那一份,不要随便拿一个旧文件凑合。

2.3 整体配置流程鸟瞰

在动手之前,脑子里要有一张流程图,知道每一步在干什么:

  1. 硬件接线:24V供电、EtherCAT网线菊花链、电机动力线和编码器线
  2. 安装步科ESI文件到AutoShop的从站库
  3. AutoShop里新建工程,扫描或手动添加EtherCAT从站
  4. 配置从站PDO映射(决定PLC能读写伺服哪些对象)
  5. 设置DC分布式时钟同步模式
  6. 编写PLC程序:使能、回零、点动、定位
  7. 在线下载,用示波器或状态字监控调试

每一步我都会在下面展开。你会发现真正花时间的不是写程序,而是前面这几步组态配置,配置对了,程序其实很简单。

3. 核心细节解析与实操要点

3.1 ESI文件:EtherCAT的"身份证"

EtherCAT主站怎么知道挂上来的是什么设备、有哪些对象字典、支持哪些PDO?靠的就是ESI文件,全称EtherCAT Slave Information,是一个XML格式的描述文件。你可以把它理解成从站的"身份证+说明书",主站读了这个文件,才知道该怎么和这个从站对话。

步科的ESI文件一般在官网的下载中心,或者随驱动器附带的资料光盘里。拿到之后,在AutoShop的EtherCAT配置界面里有个"导入ESI"或"设备库管理"的入口,把XML导进去,从站列表里就会出现步科对应的设备型号。

注意:ESI文件版本和驱动器固件版本不匹配时,可能出现"能扫描到但从站报错"或者"PDO选项对不上"的情况。如果遇到诡异问题,第一件事就是核对这两个版本。

导入之后,从站会出现在设备树里,你可以拖拽或双击添加到网络拓扑中。H5U作为主站,步科伺服作为第一个从站,站号(Node Address)一般默认按物理顺序自动分配,也可以手动设。物理顺序就是网线从PLC出来先接哪台,哪台就是第一个。

3.2 PDO映射:决定你能控制什么

PDO是Process Data Object,过程数据对象,是EtherCAT周期性通讯时实际传输的数据。它分两种:TxPDO是从站发给主站的数据(比如当前位置、状态字),RxPDO是主站发给从站的数据(比如目标位置、控制字)。

这一步是整套配置的灵魂。默认的PDO映射往往只包含最基本的状态字和控制字,你想读当前位置、设目标速度,就得自己往映射里加对象。步科伺服常用的对象字典(基于CiA402协议)大致是这些:

对象索引名称方向用途
0x6040ControlwordRx控制字,使能/启动
0x6041StatuswordTx状态字,读伺服状态
0x6060Modes of operationRx运行模式选择
0x6061Modes of operation displayTx当前模式回读
0x607ATarget positionRx目标位置
0x6064Position actual valueTx实际位置
0x60FFTarget velocityRx目标速度
0x606CVelocity actual valueTx实际速度

配置PDO时,把需要的对象从可用列表移到映射列表里。这里有个经验:不要贪多。PDO映射越长,每个通讯周期传输的数据越多,对刷新周期有影响。做定位控制,控制字、状态字、模式、目标位置、实际位置这五个基本够用;要做速度模式再加目标速度和实际速度。

提示:PDO映射改完之后,一定要确认从站侧和主站侧的映射一致。有些驱动器需要在驱动器参数里也确认PDO配置,两边对不上会直接通讯报错。

3.3 DC同步模式:多轴同步的关键

DC是Distributed Clocks,分布式时钟。EtherCAT的从站各自有时钟,DC机制让所有从站的时钟同步到主站参考时钟,同步精度可以到纳秒级。做单轴定位,DC开不开可能感觉不出差别;但做多轴联动,DC不开,轴与轴之间就会有随机的时间偏差,插补出来的轨迹就是歪的。

在AutoShop的从站配置里,DC模式一般有几个选项:不启用、启用(从站作为参考时钟)、启用(主站作为参考时钟)。常规做法是让第一个从站或主站作为参考时钟,其余从站同步过来。步科伺服一般支持DC,配置时勾选启用即可。

这里有个容易忽略的点:DC启用后,通讯周期和同步周期要匹配。如果PLC的EtherCAT任务周期设成2ms,而DC同步周期设成1ms,可能出问题。一般让它们保持一致,或者同步周期是任务周期的整数倍。

3.4 单位换算:别让"转"和"脉冲"打架

这是从脉冲控制转过来的工程师最容易栽的地方。脉冲控制时,你脑子里想的是"发多少脉冲走多少距离",有电子齿轮比这个概念。到了EtherCAT总线控制,位置单位变成了"用户单位",需要设置一个换算关系。

步科伺服里通常有个"位置单位"或"电子齿轮"参数,定义"一个用户单位对应编码器多少个脉冲"。比如编码器是17位(131072脉冲/转),你想让一个用户单位等于1/10000转,那就设齿轮比让10000个用户单位对应一转。

这个换算必须和机械结构对上。假设丝杆导程10mm,你想让位置单位是0.001mm,那么一转(10mm)对应10000个用户单位,编码器一转131072脉冲,齿轮比就是131072/10000。算清楚这个,后面写程序时目标位置直接填"毫米数×1000"就行,非常直观。

注意:单位换算错了,轻则走不到位,重则飞车撞机。第一次调试一定把电机脱开负载,空转验证换算关系,确认"发10000个单位正好转一圈"再带负载。

4. 完整实操流程与关键环节实现

4.1 硬件接线与上电检查

先接线。24V(或48V,看电机规格)电源接驱动器主电源,注意正负。EtherCAT网线从H5U的主站口出来,接到第一台步科驱动器的EtherCAT IN口,如果有多台,从第一台的OUT口接到第二台的IN口,依次串下去。电机动力线和编码器线按驱动器手册接,编码器线是弱信号,尽量远离动力线走线。

上电前用万用表确认电源电压和极性,这一步别省。上电后观察驱动器数码管或指示灯,正常应该显示就绪状态,没有报警。如果驱动器报编码器故障,先查编码器线;报通讯故障,先查EtherCAT线序和IN/OUT。

4.2 AutoShop工程建立与从站扫描

打开AutoShop,新建工程,选择H5U对应型号。在工程树里找到EtherCAT配置或运动控制配置入口,进入总线组态界面。

先导入步科ESI文件(前面3.1讲过)。导入成功后,点"扫描设备"或手动添加从站。扫描时PLC要在线,且EtherCAT链路要通。扫描到从站后,它会出现在拓扑里,站号自动分配。

如果扫描不到,按这个顺序查:网线是否插对IN口、PLC是否处于运行或可扫描状态、ESI文件是否导入、驱动器是否上电。这四步能解决90%的扫描失败。

4.3 从站参数与PDO详细配置

扫描到从站后,双击从站进入配置界面。这里要设几样东西:

站号:确认和物理顺序一致,多轴时尤其重要,站号错了程序里控制的就是另一台。

PDO映射:按3.2的表格,把控制字、状态字、模式、目标位置、实际位置加进映射。加的时候注意顺序,主站和从站要一致。

DC模式:勾选启用,选参考时钟来源。

通讯周期:和PLC任务周期匹配,一般1ms或2ms起步。

配置完保存,编译工程。编译不报错说明组态层面没问题。

4.4 PLC程序:使能、回零、点动、定位

程序部分其实不复杂,核心是状态机。CiA402协议下,伺服使能有一套固定的控制字序列:

上电初始:Controlword = 0x0006 (Shutdown) 等待状态字 bit0=0, bit1=1, bit2=1, bit3=1 发使能:Controlword = 0x000F (Switch on + Enable operation) 等待状态字 bit3=1 表示已使能

用梯形图或ST语言实现这个状态机都行。H5U支持IEC61131-3,ST写状态机更清晰。下面是一个简化的使能逻辑思路:

IF 使能请求 THEN CASE 状态 OF 0: 控制字 := 16#0006; // Shutdown IF (状态字 AND 16#006F) = 16#0021 THEN 状态 := 1; 1: 控制字 := 16#0007; // Switch on IF (状态字 AND 16#006F) = 16#0023 THEN 状态 := 2; 2: 控制字 := 16#000F; // Enable operation IF (状态字 AND 16#006F) = 16#0027 THEN 状态 := 3; // 已使能 END_CASE; END_IF

使能之后,设模式(0x6060)为位置模式(值1或8,看驱动器定义),然后往目标位置(0x607A)写值,伺服就会运动。

回零一般用驱动器内部回零功能,通过控制字触发,或者用PLC自己写回零逻辑。步科伺服支持多种回零方式(找原点开关、找Z相信号等),在驱动器参数里选好方式,PLC发个触发位就行。

点动测试时,先给一个很小的目标位置增量,观察电机是否按预期方向转、转多少。这一步验证单位换算和方向。

4.5 在线调试与状态监控

下载程序后,用AutoShop的在线监控功能,实时看控制字、状态字、实际位置这些变量。第一次使能时,盯着状态字的变化,确认它按0x0021→0x0023→0x0027的顺序跳变,说明使能流程对了。

如果状态字卡在某个值不动,对照CiA402状态机查是哪一步没满足。比如卡在0x0021,说明Shutdown没被接受,可能是模式没设对或者驱动器有报警。

位置控制时,给目标位置后看实际位置是否跟随。如果实际位置不动,查目标位置有没有写进去、模式对不对、伺服是否真的使能了。

5. 常见问题与排查技巧实录

5.1 通讯类问题速查

现象可能原因排查方向
扫描不到从站网线接反/ESI未导入/驱动器未上电查IN/OUT口、导入ESI、确认供电
扫描到但报错ESI版本不匹配/PDO不一致核对ESI与固件版本、检查PDO映射
通讯时断时续网线质量差/干扰/DC配置错换屏蔽网线、检查DC周期
从站掉线供电不稳/网线松动查电源、紧固接头

5.2 伺服不动或飞车的排查

伺服不动,先看状态字。状态字没到0x0027,就是没使能,回去查使能序列。状态字到了但不动,查模式、目标位置、是否有使能以外的禁止位。

飞车是最危险的,通常是单位换算错、方向反了、或者目标位置给了一个极大值。第一次调试一定脱负载,且程序里加软限位,目标位置超出范围直接拒绝。我见过有人把目标位置单位当成脉冲填,结果填了个几十万,电机直接冲出去撞限位。

5.3 多轴同步精度不够

如果做多轴联动发现轨迹不对,先确认DC是否启用、所有从站是否都同步到同一参考时钟。再确认PLC的EtherCAT任务周期是否稳定,周期抖动大会直接影响同步精度。必要时降低刷新周期(比如从2ms降到1ms),但要注意CPU负载。

5.4 独家避坑经验

第一条,先单轴跑通再上多轴。别一上来就挂四台轴一起调,出问题你根本不知道是哪台。一台一台加,每加一台验证一次。

第二条,ESI文件和固件版本记在本子上。这套系统调通后,把用到的AutoShop版本、ESI版本、驱动器固件版本、伺服参数都记录下来。以后换电脑或重装,直接照抄,能省大量时间。

第三条,PDO映射改动后重新编译下载。有时候改了映射但没重新下载,主站还用旧映射,就会出现"配置看着对但就是不通"的诡异现象。

第四条,DC不开也能跑单轴,但别养成习惯。单轴调试时为了省事关掉DC,跑通了就忘了开,等做多轴时才发现同步有问题,回头再查很费劲。建议从一开始就按最终配置来。

6. 从跑通到用好:几个进阶方向

单轴定位跑通只是起点。这套H5U加步科EtherCAT的组合,往上还能做不少事。

一是多轴插补。H5U支持基本的直线插补和圆弧插补,把多台步科伺服挂上总线,配置好DC,就能做XY平台的轨迹运动。这时候前面强调的DC同步和单位换算就体现出价值了。

二是电子齿轮和电子凸轮。包装、印刷类设备常用,主从轴之间按一定比例或曲线联动。EtherCAT的实时性让这类应用成为可能,配置上需要在从站里启用相应的同步模式。

三是和上位机或触摸屏配合。H5U支持Modbus TCP或串口通讯,可以把伺服状态、报警信息传给触摸屏显示,操作工就能直观看到每台轴的状态。这部分和EtherCAT配置是独立的,但实际项目里几乎都会用到。

四是程序结构化。轴多了之后,把每台轴的控制封装成功能块(FB),输入输出参数化,主程序里调用就行。这样加轴、改轴都很方便,也便于后期维护。我自己的习惯是每台轴一个FB实例,包含使能、回零、定位、报警处理,主程序只负责调度。

这套配置流程我前后搭过不下十次,每次都会遇到点新情况,但核心逻辑始终是那几样:ESI导入、PDO映射、DC同步、单位换算、状态机使能。把这五样吃透,换任何品牌的EtherCAT伺服,配置思路都是通的,无非是对象字典的索引号和参数名不一样。真正值钱的不是记住步科某个参数在哪,而是理解EtherCAT这套机制为什么这么设计。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询