1. 项目背景与核心需求解析
模切机作为包装印刷行业的核心设备,其运动控制精度直接影响产品裁切质量。传统脉冲控制方式在12轴协同场景下存在布线复杂、同步性差的问题。欧姆龙NJ系列PLC凭借内置EtherCAT总线控制器,可实现≤1μs的时钟同步精度,这正是该项目选择NJ501-1300作为主控的关键原因。
1.1 设备工艺需求分解
- 多轴同步控制:12台伺服需在300ms内完成从静止加速到1000rpm的同步运动,位置偏差需<±0.1mm
- 动态张力控制:放卷/收卷单元需实时调节转矩,保持材料张力在20N±2N范围内
- 高精度定位:刀模重复定位精度要求±0.05mm,需配合17位绝对值编码器
- 自动纠偏:通过CCD检测材料边缘,控制纠偏轴在±5mm范围内动态调整
1.2 EtherCAT技术选型优势
对比传统控制方案,EtherCAT总线呈现显著优势:
| 指标 | 脉冲控制 | EtherCAT总线 |
|---|---|---|
| 布线复杂度 | 12轴需72根信号线 | 仅需1根网线级联 |
| 同步精度 | ±50μs | ≤1μs |
| 参数调整 | 需逐个驱动器设置 | 中央化在线修改 |
| 状态监测 | 仅限报警信号 | 全参数实时反馈 |
2. 硬件架构设计与组态配置
2.1 系统拓扑搭建
采用菊花链拓扑结构:
code复制NJ501-1300 PLC → 首台伺服(ELMO驱动器) → ... → 末台伺服 → 终端电阻
关键硬件选型:
- 主站:NJ501-1300(带2个EtherCAT端口)
- 从站:12台G系列伺服(支持CoE模式)
- IO模块:NX-ECC201(16点输入)+ NX-OC2116(16点输出)
2.2 EtherCAT网络参数优化
在Sysmac Studio中需特别配置:
xml复制<EtherCATConfig>
<CycleTime>500μs</CycleTime>
<DistributedClocks Enabled="true" Offset="100ns"/>
<ProcessData>
<RxPdo Index="0x1600" Servo1="目标位置(32bit)"/>
<TxPdo Index="0x1A00" Servo1="实际位置(32bit)+状态字(16bit)"/>
</ProcessData>
</EtherCATConfig>
注意:DC同步模式需确保所有从站支持IEEE 1588协议,否则需关闭该功能
3. 运动控制程序开发
3.1 轴基本功能块实现
st复制// 回零功能块示例
FUNCTION_BLOCK FB_Home
VAR_INPUT
Execute : BOOL;
Mode : INT; (* 0=限位开关回零,1=Index回零 *)
END_VAR
VAR_OUTPUT
Done : BOOL;
Error : BOOL;
END_VAR
VAR
// 状态机实现
END_VAR
3.2 多轴同步控制策略
采用电子齿轮+凸轮耦合实现:
- 主轴(刀模轴)配置为CSP模式
- 从轴通过MC_GearIn指令建立跟随关系
- 相位偏移补偿算法:
cpp复制void PhaseCompensation() { for(int i=0; i<12; i++){ servo[i].phase_offset = KalmanFilter( encoder[i].position - master_position ); } }
3.3 张力控制PID实现
st复制// 放卷张力控制实例
PID_Compact(
Setpoint := 20.0, // 目标张力(N)
Input := LoadCell_ADC * 0.1, // 张力反馈
Output => TorqueCmd, // 转矩指令输出
Parameters := (Kp=0.8, Ti=200ms, Td=50ms)
);
4. 关键问题解决方案
4.1 EtherCAT通讯抖动处理
通过以下措施将抖动控制在±100ns内:
- 使用CAT6屏蔽双绞线,全长不超过100米
- 交换机启用QoS优先级标签(VLAN优先级6)
- PLC任务周期与EtherCAT周期设置为整数倍关系
4.2 伺服报警快速恢复
设计三级故障处理机制:
- 瞬时故障:自动重试3次(间隔200ms)
- 持续故障:触发Safe Torque Off(STO)
- 系统级故障:启动EtherCAT主站冗余切换
4.3 实际调试经验
- 伺服使能时序:建议按"电源ON→伺服ON→控制使能"顺序,间隔≥500ms
- 电子齿轮比计算:
code复制分子 = 电机每转脉冲数 × 机械减速比 分母 = 编码器分辨率 × 导程(mm) - 热补偿参数:连续运行4小时后需补偿丝杠热伸长量,典型值0.02mm/℃
5. 系统性能验证
5.1 同步精度测试
使用示波器捕获各轴位置指令与反馈信号:
| 轴号 | 最大偏差(μs) | 标准差(μs) |
|---|---|---|
| 1 | 0.8 | 0.3 |
| 2 | 1.1 | 0.4 |
| ... | ... | ... |
5.2 生产节拍优化
通过以下调整将产能提升23%:
- 将加减速曲线改为S型(Jerk=10000rad/s³)
- 优化凸轮表采样点数从100点增至500点
- 启用EtherCAT的"Latch"功能捕捉飞剪信号
6. 扩展功能实现
6.1 OPC UA数据对接
配置NJ系列内置OPC UA服务器:
javascript复制// 节点配置示例
{
"NodeId": "ns=2;s=Machine/Speed",
"DataType": "Float",
"AccessLevel": "CurrentRead | CurrentWrite"
}
6.2 安全功能集成
通过FSoE实现安全等级PLd:
- 配置安全输入模块(NX-SIH400)
- 编写SafeMotion监控程序:
st复制SAFE_MONITOR( Position := ActualPos, Velocity := ActualVel, Limits := (Lower=-10, Upper=110) );
项目实施过程中,最耗时的环节是EtherCAT网络抖动优化。我们发现当使用第三方伺服时,需手动调整ESC(EtherCAT Slave Controller)的SYNC0延迟参数,具体值可通过示波器测量得出。例如某台伺服需要设置0x1C32:02为0x00001500才能与其他节点同步。
