1. 项目概述:FX2N PLC自动分拣系统实战
车间里那台服役十年的老式分拣线终于迎来了智能化改造。这次我们选用三菱FX2N-32MR PLC作为控制核心,搭配组态王上位机软件,打造了一套金属/塑料件自动分拣系统。传送带速度控制在0.3m/s,每小时可分拣1200-1500个零件,准确率实测达到99.8%以上。
这个系统的精妙之处在于将传统继电控制逻辑与现代HMI监控完美结合。当光电传感器检测到传送带上的零件时,金属检测传感器会在50ms内完成材质判别,相应气缸在0.5秒内完成推料动作。整个控制流程如同行云流水,比老师傅手动分拣效率提升3倍不止。
2. 硬件架构与IO分配
2.1 传感器选型与接线规范
系统采用欧姆龙E3Z-T61光电传感器作为触发装置,其检测距离可调范围30-300mm,我们设置为100mm以确保稳定触发。金属检测选用图尔克BI5-M18-AN6X电感式接近开关,其5mm的检测距离经过反复测试最为可靠。
关键提示:电感式传感器安装时需确保金属件通过时与感应面平行,倾斜角度超过15°会导致检测信号不稳定。
IO分配采用"功能分区"原则:
- X0-X3:操作按钮区
- X4-X7:传感器输入区
- Y0-Y3:执行机构输出区
具体分配表如下:
| 信号类型 | PLC地址 | 设备名称 | 技术参数 |
|---|---|---|---|
| DI | X0 | 启动按钮 | 常开触点,24V DC |
| DI | X2 | 光电传感器 | NPN型,100mA max |
| DI | X3 | 金属检测传感器 | 三线制,10-30V DC |
| DO | Y0 | 金属推料气缸 | 双线圈电磁阀,24V/0.5A |
| DO | Y2 | 传送带电机 | 继电器输出,2A max |
2.2 电源配置与抗干扰措施
系统采用明纬DR-120-24开关电源,为PLC和传感器提供稳定24V直流电。特别要注意的是:
- 传感器电源与电磁阀电源需分开走线
- PLC的COM端与电源负极必须单点接地
- 所有数字量输入信号线采用屏蔽双绞线
我们在调试初期曾遇到传感器误触发问题,后来发现是电磁阀动作时产生的反向电动势干扰所致。解决方案是在每个电磁阀线圈两端并联1N4007续流二极管,并在PLC输入模块加装信号隔离器。
3. 梯形图程序设计精要
3.1 主控逻辑设计
系统采用"启动-保持-停止"经典控制结构,核心程序段如下:
ladder复制|--[M8000]--[SET S0]--| // 上电初始化
|--[X000]--[SET M0]--| // 启动信号
|--[X001]--[RST M0]--| // 停止信号
|--[M0]--[OUT Y002]--| // 传送带运行
这里使用M8000特殊辅助继电器实现上电自初始化,确保系统启动时处于安全状态。M0作为运行状态标志位,同时控制传送带电机和后续分拣逻辑。
3.2 材质判别与分拣控制
当光电传感器(X2)触发时,系统通过以下逻辑完成材质判别:
ladder复制|--[X002]--[MOV K0 D0]--| // 清零检测结果
|--[X003]--[MOV K1 D0]--| // 金属件标志
|--[X002][NOT X003][MOV K2 D0]--| // 塑料件标志
|--[D0=K1]--[PLS M10]--| // 金属件分拣脉冲
|--[D0=K2]--[PLS M11]--| // 塑料件分拣脉冲
这里采用MOV指令结合比较判断,比传统的触点串联方式更简洁。PLS脉冲指令配合T0定时器,确保气缸动作时间精确控制在500ms±10ms。
3.3 安全保护机制
系统包含三重安全防护:
- 光电传感器持续触发超过3秒自动停机(防堵料)
- 气缸动作超时报警(T1定时器监控)
- PLC电池低压检测(M8005特殊继电器)
对应的梯形图实现:
ladder复制|--[X002]--[TIM T2 K300]--[RST M0]--| // 堵料保护
|--[Y000]--[TIM T3 K100]--[SET M100]--| // 气缸超时
|--[M8005]--[SET M101]--| // 电池低压报警
4. 组态王HMI设计技巧
4.1 动态画面实现
传送带动画采用位图序列切换技术:
- 准备8帧传送带运行位图
- 使用"画面循环"脚本控制帧切换速度
- 绑定PLC的Y2输出状态控制动画启停
金属/塑料件计数显示采用数据记录控件:
vb复制If {PLC.D0} = 1 Then
MetalCount = MetalCount + 1
ElseIf {PLC.D0} = 2 Then
PlasticCount = PlasticCount + 1
End If
4.2 隐藏调试功能实现
通过组态王的"按钮长按"事件脚本实现调试菜单调出:
vb复制Dim PressTime As Long
Sub Button1_MouseDown()
PressTime = GetTickCount()
End Sub
Sub Button1_MouseUp()
If GetTickCount() - PressTime > 5000 Then
ShowPicture("DebugMenu")
End If
End Sub
调试菜单包含以下关键参数修改功能:
- 气缸动作时间(T0设定值)
- 传送带运行速度(变频器频率)
- 传感器灵敏度阈值
5. 现场调试与故障排查
5.1 典型故障处理表
| 故障现象 | 可能原因 | 解决方案 |
|---|---|---|
| 气缸不动作 | 电磁阀线圈断路 | 万用表测量线圈电阻(正常20Ω) |
| 金属检测不稳定 | 传感器安装位置偏移 | 调整至与传送带平面垂直 |
| PLC输入点无响应 | COM端未接电源负极 | 检查24V电源回路完整性 |
| 组态画面数据不更新 | 通信端口配置错误 | 确认FX2N编程口设置为RS485模式 |
5.2 系统优化经验
- 在气缸推杆末端加装聚氨酯缓冲垫,降低撞击噪音
- 将光电传感器触发信号增加50ms滤波延时,避免抖动误判
- 在组态画面添加"生产批次"设置功能,便于质量追溯
- PLC程序增加"手动测试"模式,方便设备维护
经过三个月连续运行测试,这套系统表现出色。最令人惊喜的是通过调整气缸动作时序,将分拣节拍从3秒/件提升到2.4秒/件,产能提高了20%。现在车间主任正计划在其他产线推广这套方案。