1. 项目背景与系统概述
这个邮件自动分拣系统是我去年为本地物流中心做的技改项目,核心目标是把人工分拣升级为自动化流水线。整套系统由三菱FX3U PLC、MCGS TPC7062K触摸屏、光电传感器阵列和四轴机械臂组成,日均处理量设计在3000件左右。
系统工作原理其实很直观:传送带上的邮件经过光电传感器区域时,PLC根据传感器信号判断邮件尺寸(小件/中件/大件),然后触发对应分拣机械臂将邮件推入指定分拣筐。听起来简单是吧?但实际调试时发现,从信号采集到机械臂动作,每个环节都藏着魔鬼细节。
2. 硬件配置与电路设计
2.1 核心器件选型
-
PLC:三菱FX3U-32MT/ES-A,32点基本单元,继电器输出型。选它主要考虑:
- 内置4轴200kHz脉冲输出(后续可扩展机械臂)
- 带RS-422编程口,与MCGS通讯稳定
- 性价比高(约2500元),维护成本低
-
HMI:MCGS TPC7062K,7寸电阻屏。优势在于:
- 原生支持三菱FX系列通讯协议
- 内置脚本系统可实现复杂逻辑
- 支持历史数据存储(记录分拣量)
-
传感器:欧姆龙EE-SX670光电开关×4,检测距离10cm。特别选用漫反射型,避免需要安装反光板。
2.2 电气接线要点
I/O分配如下表所示:
| 端口 | 设备 | 功能说明 |
|---|---|---|
| X0 | 光电传感器1 | 检测邮件高度 |
| X1 | 光电传感器2 | 检测邮件宽度 |
| X2 | 光电传感器3 | 触发分拣信号 |
| X3 | 光电传感器4 | 急停信号 |
| Y0-Y3 | 传送带变频器 | 控制传送带启停/调速 |
| Y10 | 机械臂气缸 | 升降控制 |
| Y11 | 真空发生器 | 吸盘吸附控制 |
| Y12 | 平移电机 | 水平移动控制 |
血泪教训:PLC的COM端一定要单独用开关电源供电!初期调试时图省事直接和传感器共地,结果机械臂一动就导致X0-X3信号乱跳。后来改用明纬S-100-24独立给COM端供电,干扰问题立刻消失。
3. PLC程序设计详解
3.1 分拣主逻辑实现
核心分拣逻辑采用状态机设计,梯形图程序如下:
assembly复制LD M8000 // 运行标志
OUT T0 K50 // 启动5秒定时器
LD T0
ALT C0 // 交替计数
LD C0
CMP K3 D0 // 比较计数与设定值
MOVP K1 Y10 // 脉冲输出机械臂动作
MOVP K2 Y11
这段程序实现了三个关键功能:
- 定时触发:每5秒检测一次传感器状态(T0定时器)
- 智能计数:ALT指令实现二进制交替计数,比普通INC指令节省50%扫描周期
- 安全输出:MOVP脉冲输出确保机械臂动作信号只维持一个PLC扫描周期(约0.1ms)
3.2 信号抗干扰处理
现场调试发现光电传感器偶尔误触发,通过以下措施解决:
-
硬件滤波:
- 所有传感器信号线改用双绞屏蔽线
- 在PLC输入端并联0.1μF电容
-
软件滤波:
assembly复制LD X0 // 原始信号
OUT T1 K10 // 10ms延时
LD T1
OUT Y0 // 滤波后输出
通过T1定时器实现10ms延迟判断,有效滤除瞬时干扰脉冲。实测可将误触发率从15%降到0.3%以下。
4. MCGS触摸屏开发技巧
4.1 通讯参数配置
在MCGS设备窗口中按以下参数设置:
- 设备类型:三菱_FX系列编程口
- 通讯端口:COM1(RS422)
- 波特率:9600(现场实测19200以上易丢包)
- 站号:0(FX3U默认站号)
关键细节:务必在PLC参数中设置「通讯协议=MC协议」,并将D8120寄存器值设为0080H(9600bps,7,E,1)
4.2 高级脚本应用
这段分拣量报警脚本很有参考价值:
vb复制If 分拣数量.Text > 100 Then
!SetDevice(PLC1, 6, "D100", 1) // 写入PLC寄存器
Alarm("今日分拣量已满") // 弹出报警窗口
EndIf
特别注意:
- !SetDevice的第三个参数必须加引号
- 写寄存器时第4个参数1表示16位整型
- 建议在脚本开头加
Device.PLC1.SetTimeout(3000)防止通讯超时
5. 机械臂动作优化
5.1 标准动作流程
通过状态流程图将机械臂动作分解为6个步骤:
-
下降阶段(Y10=ON)
- 气缸伸出,耗时约0.5秒
- 到位后触发X4限位信号
-
吸附阶段(Y11=ON)
- 真空发生器工作
- 保持200ms确保吸附牢固
-
提升阶段(Y10=OFF)
- 气缸缩回
- 触发X5上限位信号
-
平移阶段(Y12=ON)
- 步进电机带动滑台移动
- 根据邮件尺寸选择不同脉冲数
-
释放阶段(Y11=OFF)
- 关闭真空,邮件落入分拣筐
- 延时100ms确保完全脱离
-
归位阶段(Y12反向脉冲)
- 机械臂返回待机位置
5.2 时序优化技巧
多物件连续分拣时容易出现堆叠问题,通过三项改进解决:
-
动态间隔控制:
assembly复制LD X2 // 检测到新邮件 OUT T2 K150 // 根据前件位置动态设置间隔 LD T2 OUT Y0 // 延迟启动传送带 -
速度分级控制:
- 小件:变频器30Hz运行
- 大件:降速至20Hz防止飞件
-
缓冲设计:
- 在分拣位前增加500mm缓冲段
- 通过光电开关X6实现提前减速
6. 系统调试经验
6.1 常见故障排查
| 故障现象 | 可能原因 | 解决方案 |
|---|---|---|
| 机械臂动作卡顿 | 气压不足(<0.4MPa) | 检查气源压力,调节减压阀 |
| 吸盘吸附不稳 | 真空度不够(<-60kPa) | 更换大流量真空发生器 |
| PLC输入信号不稳定 | 电源共地干扰 | COM端独立供电 |
| MCGS数据显示延迟 | 通讯波特率过高 | 降至9600bps并加终端电阻 |
| 传送带启停冲击大 | 直接控制主回路 | 改用变频器多段速控制 |
6.2 性能提升记录
通过三阶段优化,关键指标变化如下:
-
初版系统:
- 分拣速度:800件/小时
- 误拣率:5%
- 故障间隔:4小时
-
硬件优化后:
- 增加光电传感器屏蔽
- 机械臂加装缓冲器
- 速度:1200件/小时
- 误拣率:1.2%
-
软件优化后:
- 改进控制算法
- 增加动态补偿
- 速度:1800件/小时
- 误拣率:0.3%
这套系统最终实现分拣效率提升3倍,人工成本降低60%。最大的收获是深刻认识到:自动化项目成功的关键不在于用了多高级的设备,而在于每个细节的精心打磨。比如那个10ms的软件滤波,代码就两行,但解决了困扰我们两周的干扰问题。
