1. 项目概述:全自动N95口罩机的控制系统架构
这套基于汇川AM401/AM403系列PLC的控制系统,是典型的多轴协同运动控制方案。核心由三部分组成:PLC主控制器(AM401/AM403)、伺服驱动系统(汇川总线伺服)和人机交互界面(IT7070触摸屏)。这种架构设计充分考虑了口罩生产的高精度要求——以超声波焊接为例,位置重复精度需要控制在±0.1mm以内,而传统继电器逻辑根本无法满足。
关键设计考量:采用EtherCAT总线而非脉冲控制,总线周期可达到1ms,比传统脉冲控制快10倍以上。这是实现20pcs/min高速生产的核心技术保障。
系统程序规模达到20000步,采用全ST(结构化文本)编写。这种选择不是偶然的:相比梯形图,ST语言更适合处理复杂的数学运算和逻辑判断。比如凸轮曲线生成时需要进行三次样条插值计算,用ST实现比梯形图简洁得多。
2. 核心控制功能深度解析
2.1 凸轮同步控制的工程实现
口罩机的凸轮同步不是简单的电子齿轮比关系,而是需要动态调整的虚拟主轴-从轴关系。我们采用CAM Table方式实现:
st复制// 凸轮表定义
CAM_Table : ARRAY[0..359] OF LREAL := [
0.0, 0.0175, 0.0349, ..., // 0-90度正弦曲线
1.0, 0.9998, 0.9994, ..., // 90-180度保持段
// ...完整360度数据
];
// 凸轮耦合指令
MC_CamIn(
Master := MainAxis,
Slave := FollowAxis,
MasterOffset := 0.0,
SlaveOffset := 0.0,
CamTable := CAM_Table,
StartMode := 1,
BufferMode := 0
);
实际调试中发现三个关键点:
- 凸轮表分辨率必须≥360点,否则高速运行时会出现明显抖动
- 主从轴的惯量比要控制在1:10以内,否则跟随误差会超标
- 必须启用前馈控制(FeedForward),补偿系数建议设0.7-0.9
2.2 超声波焊接的工艺控制
焊接质量直接影响口罩的密封性。我们开发了三段式控制策略:
- 预压阶段(100-200ms):气缸先以0.2MPa压力压紧材料
- 焊接阶段(50-100ms):20kHz超声波发生器工作,功率渐变控制
- 保压阶段(300-500ms):维持压力使材料冷却定型
st复制// 焊接参数结构体
TYPE Welding_Para :
STRUCT
PrePressTime : TIME := T#150ms;
WeldTime : TIME := T#80ms;
HoldTime : TIME := T#400ms;
StartPower : REAL := 300.0; // 起始功率(W)
EndPower : REAL := 800.0; // 结束功率(W)
END_STRUCT
END_TYPE
血泪教训:焊接时间超过120ms会导致熔穿,而低于40ms则焊接不牢。必须通过正交试验找到最佳参数组合。
2.3 张力控制的PID整定技巧
放卷张力控制采用闭环PID算法,但传统整定方法在这里不适用。我们发现:
- 比例系数P:初始值按电机额定扭矩的1/100设置
- 积分时间I:必须大于材料弹性形变时间(无纺布约0.5s)
- 微分时间D:通常设为0,因材料阻尼特性显著
调试口诀:"P从小的加,震动就停手;I慢慢往下减,超调就回头"
3. 运动控制模板详解
3.1 标准运动功能块封装
将常用运动控制封装成功能块,大幅提高开发效率:
st复制FUNCTION_BLOCK Axis_Control
VAR_INPUT
Command : INT; // 1-JOG 2-Home 3-MoveAbs...
Position : LREAL;
Velocity : LREAL;
END_VAR
VAR_OUTPUT
Done : BOOL;
Error : WORD;
END_VAR
CASE Command OF
1: MC_MoveVelocity(...);
2: MC_Home(...);
3: MC_MoveAbsolute(...);
// ...
END_CASE
3.2 回原点策略选择
针对不同机械结构采用不同回零方式:
| 机械类型 | 回零模式 | 特点 |
|---|---|---|
| 带原点传感器 | MC_Home限位回零 | 精度±0.02mm |
| 无传感器 | MC_HomeIndex回零 | 依赖编码器Z脉冲 |
| 长行程机构 | 参考点+偏移量 | 避免长距离回零耗时 |
4. HMI设计经验分享
4.1 触摸屏页面布局原则
-
三级页面结构:
- 一级:生产概览(产量、状态)
- 二级:设备调试(参数设置)
- 三级:维护诊断(I/O监控)
-
关键设计细节:
- 按钮尺寸≥15mm×15mm(符合人机工程学)
- 重要参数变更需二次确认
- 故障报警采用红黄双色闪烁
4.2 产量统计的防错设计
st复制// 产量计数逻辑
IF ProductDetected AND
(WeldingOK OR BypassMode) AND
NOT EmergencyStop THEN
TotalCount := TotalCount + 1;
HourlyCount[CurrentHour] := HourlyCount[CurrentHour] + 1;
END_IF
特别注意要过滤误信号:必须同时检测到产品且焊接完成才算有效计数。
5. 电气设计要点
5.1 安全回路设计
采用双回路设计:
- 安全继电器控制急停回路(EN13849-1 Cat.3)
- PLC监控所有安全输入(光栅、门锁等)
必须注意:安全回路必须独立于PLC,采用硬线连接。这是CE认证的基本要求。
5.2 总线布线规范
-
EtherCAT总线:
- 使用专用紫色电缆(汇川EC-TX系列)
- 终端电阻必须使能
- 最长站间距离≤10m
-
伺服电机编码器线:
- 必须与动力线分开走线
- 建议使用金属屏蔽管
6. 调试中的典型问题
6.1 伺服电机啸叫问题
可能原因及对策:
-
刚性不足:
- 提高位置环增益(Kp)
- 检查联轴器是否松动
-
机械共振:
- 启用陷波滤波器(Notch Filter)
- 调整机械结构固有频率
6.2 凸轮同步抖动
排查步骤:
- 检查主从轴编码器分辨率是否匹配
- 验证凸轮表数据是否平滑
- 检测机械背隙(需<0.05mm)
7. 程序架构设计技巧
7.1 模块化编程实践
将系统划分为独立功能模块:
- 运动控制模块(MC_)
- 工艺控制模块(PC_)
- 报警处理模块(ALM_)
- 数据记录模块(DATA_)
使用面向对象思想封装设备对象:
st复制FUNCTION_BLOCK MaskMachine
VAR
Axis_Feeder : Axis_Control;
Axis_Welder : Axis_Control;
Welding_Para : Welding_Para;
END_VAR
7.2 状态机设计模式
采用状态机管理生产流程:
st复制CASE CurrentState OF
STATE_IDLE:
IF StartButton THEN
CurrentState := STATE_HOMING;
END_IF
STATE_HOMING:
IF AllAxisHomed THEN
CurrentState := STATE_RUNNING;
END_IF
// ...其他状态
END_CASE
这种架构使程序逻辑清晰,便于维护和扩展。