1. 项目背景与需求解析
在工业自动化产线中,物料摆盘是包装环节的关键工序。传统单PLC控制方案在面对多轴协同作业时,往往面临I/O点数不足、程序臃肿、响应延迟等问题。这次要分享的松下FP-XH双PLC联控方案,正是为解决某食品包装线10轴伺服同步摆盘的痛点而生。
项目核心需求可拆解为三个维度:
- 机械层面:需协调4台SCARA机械手(各2轴)+2台直线模组(各1轴)共10个伺服轴,完成饼干从传送带到托盘的矩阵排列
- 节拍要求:单次摆盘周期≤3秒,各轴运动轨迹需无缝衔接
- 控制精度:重复定位误差±0.1mm,且需适应不同规格托盘(200×300mm至400×600mm)
2. 硬件架构设计要点
2.1 双PLC分工方案
采用两台FP-XH C60T构成主从控制系统:
- 主站PLC(带FPX-COM5通信模块):
- 处理视觉定位数据
- 计算摆盘路径规划
- 通过Modbus TCP向从站发送轴控制指令
- 从站PLC(扩展FPX-H14Y14T模块):
- 直接控制10台松下MINAS A6B伺服驱动器
- 实时反馈各轴状态至主站
- 急停信号硬线直连
关键设计:将运动控制与逻辑处理分离,避免单PLC过载。实测显示,双PLC方案比单PLC+扩展模块的CPU负载降低42%
2.2 伺服系统配置
| 轴类型 | 驱动器型号 | 电机型号 | 反馈分辨率 |
|---|---|---|---|
| SCARA关节轴 | MADDT1207 | MSMA082P1G | 20bit/rev |
| 直线模组轴 | MADDT1205 | MSMA052P1G | 17bit/300mm |
伺服参数调试要点:
- 速度环增益统一设为35Hz
- 位置前馈补偿开启(系数0.85)
- 各轴机械刚性等级设为P3
3. 程序架构与核心逻辑
3.1 主站PLC程序结构
structured复制// 主程序流程
IF 启动信号 THEN
// 1. 接收视觉数据
GET_CAMERA_DATA(ProductPosArray);
// 2. 路径规划计算
CALC_TRAJECTORY(
IN ProductPosArray,
IN TrayType,
OUT AxisCmdArray);
// 3. 指令下发从站
MODBUS_WRITE(
SlaveID := 2,
RegAddr := 16#4000,
Data := AxisCmdArray);
END_IF;
3.2 从站运动控制实现
采用电子齿轮同步策略确保多轴相位对齐:
- 指定轴3(主SCARA的Z轴)为虚拟主轴
- 其余各轴通过以下公式同步:
code复制从轴目标位置 = (主轴当前位置 × 传动比) + 偏移量 - 同步误差补偿算法:
structured复制// 在从站PLC中执行的补偿逻辑 IF ABS(ActualPos - TargetPos) > 0.05 THEN Compensation := (ActualPos - TargetPos) × 0.6; OUTPUT_PULSE(AxisNo, NewTarget + Compensation); END_IF;
4. 关键问题解决实录
4.1 多轴抖动问题
现象:当6轴以上同时启动时,末端执行器出现约0.3mm振幅抖动
排查过程:
- 检查接地电阻(<4Ω合格)
- 用示波器抓取伺服使能信号,发现3#轴EN信号有0.2ms延迟
- 最终确认为从站PLC的24V电源功率余量不足
解决方案:
- 更换为200W开关电源(原150W)
- 在伺服使能回路增加RC滤波(100Ω+0.1μF)
4.2 托盘规格切换异常
故障表现:切换至400×600mm托盘时,边缘位置出现10%的摆盘错位
根本原因:
- 视觉坐标变换未考虑大托盘时的镜头畸变
- 从站PLC的插补缓冲区溢出
优化措施:
- 在视觉处理环节增加畸变校正:
python复制# 相机标定得到的校正系数 k1, k2 = -0.12, 0.03 corrected_x = x * (1 + k1*r² + k2*r⁴) - 修改从站PLC的MC_Move指令为分段执行:
structured复制// 原单条指令 MC_MoveAbsolute(Axis3, 300, 500); // 改为分段 MC_MoveAbsolute(Axis3, 150, 500); WAIT UNTIL Axis3.InPosition; MC_MoveAbsolute(Axis3, 300, 500);
5. 实操技巧与参数优化
5.1 伺服增益快速整定
通过FP-XH的自动调谐功能配合手动微调:
- 执行JOG运行至50%额定速度
- 在FPWIN Pro软件中启动"一键整定"
- 手动调整:
- 速度环积分时间增加20%
- 负载惯量比设为实际值的1.2倍
5.2 通信延迟优化
双PLC间Modbus TCP通信采用以下配置:
- 帧间隔改为5ms(默认10ms)
- 禁用TCP Nagle算法
- 设置Socket超时为100ms
实测通信周期从12ms降至7ms,满足<10ms的控制要求。
6. 程序备份与维护建议
-
定期备份以下关键数据:
- 伺服参数(通过A6B的EEPROM备份功能)
- PLC的保持寄存器区(地址D1000-D1999)
- 视觉标定参数文件(.cal格式)
-
日常检查清单:
- 每周检查PLC电池电压(应>3V)
- 每月清洁通信模块光纤接口
- 每季度紧固所有端子排螺丝
这套系统已连续运行9个月,平均故障间隔时间(MTBF)达到1800小时。对于更复杂的多PLC协同场景,可考虑升级到FP7系列支持的运动控制总线,但FP-XH的性价比在20轴以下应用中依然具有优势。