1. 项目背景与需求分析
在液晶背光板生产线上,压力控制一直是个让人头疼的工艺环节。传统方案要么采用纯位置控制导致过冲损伤产品,要么用纯压力控制响应速度跟不上产线节拍。这次遇到的压合工艺要求:在30mm行程内先快速定位到距工件2mm处,再以恒定5N±0.3N的压力保持3秒。
经过现场测试发现:
- 纯位置模式:定位精度±0.1mm,但压合瞬间冲击力高达15N,导致背光板破损率12%
- 纯转矩模式:压力控制稳定,但全程运行时间长达8秒,无法满足产线5秒节拍要求
最终确定采用位置+转矩双模式切换方案:
- 前段行程(0-25mm):速度500mm/s的位置模式快速逼近
- 后段行程(25-30mm):切换为转矩模式,通过PID动态调节保持目标压力
2. 硬件系统架构设计
2.1 主要设备选型
| 设备类型 | 型号规格 | 关键参数 |
|---|---|---|
| PLC主机 | 三菱Q03UDVCPU | 支持结构化文本编程 |
| 运动控制模块 | QD77MS16 | 16轴控制,支持模式动态切换 |
| 伺服系统 | MR-J4-B-1KB | 22bit编码器,响应频率1.5kHz |
| 压力传感器 | 欧姆龙E8F2 | 量程20N,精度±0.1N |
| HMI | 威伦通MT8102iE | 支持双Y轴曲线显示 |
2.2 电气设计要点
- 安全回路设计:
- 伺服抱闸回路与急停按钮硬线连锁
- 压力传感器信号采用4-20mA隔离传输
- 总线配置:
- SSCNETⅢ光纤网络拓扑
- 运动控制周期设置为2ms
- 接地处理:
- 模拟信号单独接地
- 伺服驱动器PE端子直接接接地排
3. 核心控制逻辑实现
3.1 运动模式切换机制
st复制FUNCTION_BLOCK FB_ModeSwitch
VAR_INPUT
CurrentPos : REAL; // 当前实际位置
TargetPos : REAL; // 目标位置
PressureSet : REAL; // 压力设定值
PressureAct : REAL; // 压力实际值
END_VAR
VAR_OUTPUT
CtrlMode : INT; // 1=位置模式 2=转矩模式
TorqueCmd : REAL; // 转矩指令输出
END_VAR
// 切换条件判断
IF (TargetPos - CurrentPos) <= TransitionDistance THEN
CtrlMode := 2; // 切换转矩模式
// 压力PID计算
TorqueCmd := PID_Pressure(PressureSet, PressureAct);
ELSE
CtrlMode := 1; // 保持位置模式
TorqueCmd := 0; // 清零转矩输出
END_IF;
关键参数说明:
- TransitionDistance(切换距离):通常设为5mm,需根据机械惯量调整
- 转矩指令范围:-3000~3000(对应额定转矩的-300%~300%)
3.2 PID压力控制算法
采用带死区和积分分离的改进PID:
st复制FUNCTION PID_Pressure : REAL
VAR_INPUT
SetPoint : REAL; // 压力设定值
ProcessValue : REAL; // 压力反馈值
END_VAR
VAR
Err : REAL;
P_Term : REAL;
I_Term : REAL;
D_Term : REAL;
END_VAR
Err := SetPoint - ProcessValue;
// 死区处理
IF ABS(Err) < DeadBand THEN
Err := 0;
END_IF;
// 比例项
P_Term := Kp * Err;
// 积分项(积分分离)
IF ABS(Err) > IntegralThreshold THEN
I_Term := I_Term + (Ki * Err * Ts);
// 积分限幅
I_Term := LIMIT(I_Term, -I_Max, I_Max);
END_IF;
// 微分项(带滤波)
D_Term := Kd * (ProcessValue - LastPV) / Ts;
LastPV := ProcessValue;
// 输出合成
PID_Pressure := P_Term + I_Term + D_Term;
参数整定经验:
- 死区DeadBand:设为压力允许偏差的50%(本例0.15N)
- 积分阈值IntegralThreshold:通常为死区的2倍
- 采样周期Ts:与运动控制周期同步(2ms)
4. 伺服参数配置详解
4.1 QD77MS关键参数
| 参数编号 | 参数名称 | 设定值 | 说明 |
|---|---|---|---|
| PA01 | 控制模式 | 0x2100 | 位置+转矩混合模式 |
| PA04 | 位置环增益 | 35 | 单位Hz,影响响应速度 |
| PA07 | 速度环增益 | 120 | 影响抗扰动性能 |
| PA10 | 转矩指令滤波 | 50ms | 防止压力突变 |
| PD01 | 转矩限制 | 300 | 单位0.1%,即30%额定转矩 |
4.2 J4-B伺服优化技巧
-
刚性调整:
- 先通过三菱MR Configurator2进行自动调谐
- 手动微调时,观察压力曲线:
- 出现震荡→降低刚性(每次减5%)
- 响应迟缓→提高刚性(每次加3%)
-
振动抑制:
- 启用Notch Filter(陷波滤波器)
- 设置频率为机械共振频率的1.2倍
-
零漂补偿:
- 在无负载状态下执行转矩校准
- 补偿值保存在PD24参数中
5. HMI界面设计要点
5.1 监控画面布局
-
双曲线显示区:
- 左侧Y轴:位置(0-30mm)
- 右侧Y轴:压力(0-10N)
- X轴:统一时间轴
-
参数设置区:
- 模式切换距离(可调范围3-10mm)
- 目标压力设定(带上下限保护)
- PID参数分组显示
-
状态指示区:
- 当前控制模式图标化显示
- 压力超差报警提示
5.2 数据记录功能
st复制// 威伦通脚本示例
macro_command main()
// 每100ms记录一次数据
SetData("Pressure_Actual", "LW", 100)
SetData("Position_Actual", "LW", 102)
SetData("Torque_Output", "LW", 104)
// 触发记录条件
if GetData("Recording_Flag", "LB", 10) == 1 then
WriteDataToCSV("Log.csv")
end if
end macro_command
6. 调试问题排查实录
6.1 典型故障案例
| 故障现象 | 可能原因 | 解决方案 |
|---|---|---|
| 切换瞬间压力冲击 | 转矩指令突变 | 增加转矩指令滤波时间 |
| 保持阶段压力波动大 | 积分时间设置过短 | 适当增大Ti参数(200→300) |
| 位置模式末端过冲 | 减速距离不足 | 增大切换距离(5mm→7mm) |
| 通讯中断 | SSCNETⅢ光纤接头污染 | 用无水酒精清洁光纤连接器 |
6.2 机械系统匹配要点
- 传动机构反向间隙需小于0.05mm
- 压力传感器安装位置尽量靠近执行端
- 导向机构需保证直线度误差<0.02mm/m
7. 项目优化方向
-
自适应参数调整:
- 根据不同产品厚度自动计算最优切换距离
- 基于机器学习动态优化PID参数
-
故障预测功能:
- 通过振动频谱分析预判机械磨损
- 记录电机温升趋势预警过载
-
能源管理:
- 在保持阶段启用伺服节能模式
- 统计单件能耗指标
这套方案经过三个月连续生产验证,压力控制合格率从88%提升到99.7%,单次压合时间控制在4.5秒以内。最关键的收获是形成了标准化调试流程,新机型导入时间从原来的2周缩短到3天。