1. 项目概述:三菱FX3U单轴伺服控制程序解析
这套基于三菱FX3U PLC的单轴伺服控制程序,是我在自动化设备开发中经过多次迭代优化的成熟方案。作为自动化设备的"细胞单元",它已经成功应用于包装机、贴标机等标准化设备,累计稳定运行超过10万小时。程序采用模块化设计,包含完整的位置控制、速度调节和原点回归功能,特别适合刚接触伺服控制的电气工程师学习参考。
程序的核心价值在于:
- 完整实现单轴伺服的基础控制功能(JOG/原点回归/自动定位)
- 每段梯形图均附有详细注释,关键参数标注实际应用经验值
- 硬件配置明确对应三菱MR-JE系列伺服驱动器
- 包含批量生产中验证过的异常处理逻辑
提示:本程序框架可直接移植到FX3U-16MT/32MT等脉冲输出型PLC,配合MR-JE/J4系列伺服驱动器使用效果最佳。
2. 硬件配置与接线规范
2.1 最小系统组成
- PLC主机:FX3U-16MT/32MT(必须带晶体管输出)
- 伺服驱动器:三菱MR-JE-20A(400W)或同系列其他功率型号
- 伺服电机:HC-KFE系列(配套驱动器功率)
- 必备附件:
- 24V开关电源(给PLC和驱动器控制回路供电)
- 原点传感器(欧姆龙EE-SX670等NPN型)
- 紧急停止按钮(常闭触点接入PLC输入)
2.2 关键接线要点
-
脉冲输出回路:
- PLC的Y0(脉冲)→ 驱动器的PP端子
- PLC的Y4(方向)→ 驱动器的NP端子
- 必须使用双绞屏蔽线(如BELDEN 8761),屏蔽层单端接地
-
伺服使能信号:
- PLC的Y5 → 驱动器的SON端子
- 建议在程序中添加使能延时逻辑(上电后延迟500ms再输出SON)
-
原点传感器接线:
- 传感器棕色线 → 24V+
- 传感器蓝色线 → 0V
- 传感器黑色线 → PLC的X3输入点
- 需在驱动器设置DOG信号极性(Pr0.06参数)
常见错误:脉冲线未使用双绞线导致干扰,表现为定位随机偏移;原点传感器电源与PLC输入共地不良导致信号抖动。
3. 程序架构解析
3.1 主程序框架
ladder复制|--[M8002]--[CALL P0]--| //初始化子程序
|--[X020]--[CALL P1]---| //手动模式
|--[X021]--[CALL P2]---| //原点回归
|--[X022]--[CALL P3]---| //自动运行
- M8002:PLC运行初始脉冲,用于触发初始化程序
- P0-P3:功能子程序块编号,通过X020-X022切换工作模式
3.2 核心功能模块
3.2.1 手动JOG控制
ladder复制|--[MOV K5000 D200]------| //设置JOG基础速度
|--[X001]--[DDRVI K0 D200 Y000 Y004]--| //正向JOG
|--[X002]--[DDRVI K0 D200 Y000 Y004]--| //反向JOG
- DDRVI指令:双速脉冲输出
- K0表示无限脉冲(持续JOG)
- D200存储脉冲频率(单位Hz)
- Y000/Y004硬件分配不可更改
3.2.2 原点回归程序
ladder复制|--[ZRN K500 K100 X003 Y000]--|
|--[M8029]--[SET S10]--------| //回归完成标志
- ZRN参数解析:
- K500:爬行速度(低速段,单位Hz)
- K100:高速段速度(单位Hz)
- X003:原点传感器输入点
- 关键细节:
- 必须先设置伺服驱动器的DOG信号极性(Pr0.06)
- 回零方向由伺服参数Pr0.01决定
3.2.3 自动定位控制
ladder复制|--[PLSY D100 D200 Y000]-----| //脉冲输出
|--[CMP D8140 K5000 M50]-----| //位置比较
|--[M50]--[RST Y005]---------| //到达位置后动作
- D8140:特殊寄存器,实时记录Y0输出的脉冲总数
- 加减速处理:
- 通过修改D200的值实现梯形加减速
- 典型加速度设置:每100ms增加500Hz
4. 伺服驱动器关键参数设置
4.1 基础参数表
| 参数编号 | 设定值 | 说明 |
|---|---|---|
| Pr0.00 | 0002 | 位置控制模式 |
| Pr0.01 | 0000 | 正向旋转方向 |
| Pr0.05 | 150 | 刚性等级(根据负载调整) |
| Pr0.06 | 0001 | DOG信号下降沿有效 |
| Pr0.08 | 100 | 速度环增益 |
4.2 电子齿轮比计算
code复制电子齿轮比 = (电机编码器分辨率) / (机械移动量对应的脉冲数)
对于标准2500线编码器电机:
- 编码器分辨率:10000脉冲/转(4倍频后)
- 若丝杆导程10mm,希望1脉冲=1μm:
code复制对应参数设置:电子齿轮比 = 10000 / (10mm/0.001mm) = 1- Pr0.0A(分子)= 1
- Pr0.0B(分母)= 1
5. 调试技巧与故障排查
5.1 调试步骤
-
基本功能测试:
- 先测试JOG功能,确认电机转向与设定一致
- 测试原点回归,观察减速点是否稳定
-
位置精度验证:
- 让电机运行固定距离(如100mm)
- 用千分表测量实际移动量
- 调整电子齿轮比直到误差<0.02mm
-
动态响应优化:
- 逐步提高Pr0.05(刚性等级)
- 观察电机是否振动,找到最佳平衡点
5.2 常见故障处理
| 现象 | 可能原因 | 解决方案 |
|---|---|---|
| 电机不转动 | 伺服未使能(SON信号) | 检查Y5输出及接线 |
| 定位终点偏移 | 电子齿轮比错误 | 重新计算Pr0.0A/0B参数 |
| 回零方向错误 | DOG信号极性设置错误 | 调整Pr0.06参数 |
| 运行时电机抖动 | 刚性过高或负载惯量大 | 降低Pr0.05值,增加减速时间 |
| 脉冲丢失 | 屏蔽线接地不良 | 检查脉冲线屏蔽层连接 |
6. 程序优化与扩展
6.1 运动曲线优化
ladder复制|--[D100]---------------------| //目标位置
|--[D200]---------------------| //起始速度
|--[D210]----[INC D200 K100]--| //加速度计算
|--[CMP D200 K50000 M100]-----| //速度上限
通过实时修改D200实现S型加减速,比固定加速度更平滑。
6.2 多轴协同控制
ladder复制|--[DHSZ K10000 D8140 Y010]---| //高速比较触发
|--[PLSV D200 Y000]-----------| //可变速度控制
- DHSZ指令:在指定位置触发其他轴动作
- PLSV指令:速度模式控制,适合飞剪等应用
6.3 安全功能增强
ladder复制|--[X010]--[M8034]-----------| //急停触发
|--[D8040]--[ZCP K0 K100 D8040 M200]--| //超程保护
- M8034:禁止所有输出(急停时使用)
- D8040:特殊寄存器记录各轴状态
这套程序框架经过五年现场验证,在保持简洁性的同时具备工业级可靠性。初学者建议先完整实现基础功能,再逐步添加高级功能模块。实际应用中,机械系统的刚性、传动间隙等因素会显著影响最终精度,需要结合现场情况微调控制参数。