西门子V90伺服驱动器的EPOS(Electric Positioning System)定位功能,是一套内置于驱动器中的单轴定位控制系统。它让工程师无需额外配置PLC定位模块,仅通过简单的参数设置和通讯指令,就能实现精确的位置控制。以下从硬件接线、参数配置、程序调试三个层面,完整讲解如何快速启用这一功能。
一、硬件准备与接线确认
1.1 确认驱动器型号支持
V90系列分为脉冲版(PTI)和PROFINET版(PN)。EPOS功能仅支持PROFINET版本,订货号格式为 6SL3210-5FE...-...0,固件版本需V1.05及以上。
查看 驱动器侧面铭牌,确认型号后缀含字母 F(代表功能版本)。若使用脉冲版本,需改用外部控制器实现定位,本文方法不适用。
1.2 控制单元接线
EPOS定位需要以下关键信号接入:
| 信号类型 | 端子位置 | 功能说明 | 接线要点 |
|---|---|---|---|
| DI0 | X12端子-3 | 使能信号 | 24V高电平有效,建议接急停回路常闭触点 |
| DI1 | X12端子-4 | 复位/应答 | 故障清除后给出上升沿 |
| DI2 | X12端子-5 | 启动定位 | 上升沿触发已选择的定位任务 |
| DI3 | X12端子-6 | 回零启动 | 上升沿触发主动回零程序 |
| DI4 | X12端子-7 | 外部零脉冲 | 接接近开关或编码器Z相信号 |
注意:EPOS模式下,驱动器内部接管位置环,因此不需要将编码器信号反馈给PLC。电机编码器电缆直接接驱动器X8端子即可。
1.3 限位开关接入
安全限位必须硬件接入,不可仅依赖软件限位:
- 正向限位:接DI7(X12端子-10)
- 负向限位:接DI8(X12端子-11)
设置为 常闭触点串联接入,断线时驱动器自动报警F7490(正限位)或F7491(负限位),防止飞车事故。
二、EPOS功能参数配置
V90的参数配置通过V-ASSISTANT软件或博途完成。以下以V-ASSISTANT离线配置为例,步骤可直接复现。
2.1 基础参数设置
连接 电脑与驱动器调试口(X6,Mini USB),打开 V-ASSISTANT,选择 "离线配置" → "EPOS控制模式"。
关键参数组位于 p2541 至 p2690 区间,按功能分类如下:
运动限制参数
| 参数号 | 名称 | 推荐设置 | 说明 |
|---|---|---|---|
p2571 |
最大速度 | 按电机额定转速的80% | 例如额定3000rpm,设2400 |
p2572 |
最大加速度 | 1000 LU/s² | 根据负载惯量逐步加大 |
p2573 |
最大减速度 | 1000 LU/s² | 通常与加速度相同 |
p2574 |
急停减速度 | 5000 LU/s² | 故障或限位触发时的制动斜率 |
LU(Length Unit)为长度单位,与
p2596设置的编码器分辨率相关。若电机转一圈对应10000 LU,则2400rpm = 400r/s = 4,000,000 LU/min。
机械参数换算
输入 负载实际行程与电机转数的关系:
p2596:每转对应LU数(默认10000)p2597:负载转一圈的LU数
例如:丝杠导程10mm,编码器分辨率131072脉冲/转,计算:
$$p2596 = 131072$$
$$p2597 = 10mm对应的LU = \frac{10}{1} \times 10000 = 100000$$
(假设1mm=10000 LU的映射关系)
2.2 回零参数配置
回零模式决定机械原点建立方式,EPOS支持8种模式(p2598):
| 模式 | 适用场景 | 动作描述 |
|---|---|---|
| 1 | 有外部零开关 | 反向找开关→换向找Z脉冲 |
| 2 | 有外部零开关 | 正向找开关→换向找Z脉冲 |
| 7 | 直接设零 | 当前位置直接作为零点 |
| 8 | 绝对编码器 | 使用编码器绝对位置,无需回零 |
推荐 模式1或2用于增量编码器,模式8用于绝对值编码器。
回零速度分层设置:
p2605:搜索开关速度(较快,如500 LU/s)p2606:搜索Z脉冲速度(较慢,如50 LU/s)
2.3 定位任务组配置
EPOS内置64个定位任务(Job),通过参数组 p2616[n] 至 p2645[n] 配置,n=0~63。
每个定位任务包含以下要素:
# 任务结构示意(非实际代码,仅说明逻辑)
p2616[n] = 任务模式 # 1=绝对定位, 2=相对定位, 3=连续正转...
p2617[n] = 目标位置(LU) # 例如500000表示50mm
p2618[n] = 目标速度(LU/s) # 例如100000表示100mm/s
p2619[n] = 加速度(LU/s²) # 0=使用全局p2572
p2620[n] = 减速度(LU/s²) # 0=使用全局p2573
p2621[n] = 任务过渡方式 # 0=停止过渡, 1=无缝切换
p2622[n] = 后续任务编号 # 实现多段连续运动
示例:配置任务1为"绝对定位到100mm,速度200mm/s,完成后自动执行任务2"
- 设置
p2616[1] = 1(绝对定位) - 设置
p2617[1] = 1000000(100mm × 10000 LU/mm) - 设置
p2618[1] = 200000(200mm/s × 1000) - 设置
p2621[1] = 1(无缝过渡) - 设置
p2622[1] = 2(后续接任务2)
三、PROFINET通讯与程序调用
3.1 报文配置
EPOS模式使用标准报文111(SIEMENS报文,36字节输入/36字节输出),在 博途硬件组态中选择:
报文类型:SIEMENS message 111 (PZD-36/36)
该报文包含:
- 控制字
STW1,STW2(启动、停止、复位等) - 状态字
ZSW1,ZSW2(就绪、故障、到位等) - 位置设定值
NSOLL_B(64位有符号整数,单位LU) - 实际位置
NIST_B(64位有符号整数)
3.2 PLC程序结构
// 数据块定义:V90_EPOS_Control
TYPE "V90_EPOS"
STRUCT
AxisEnabled : Bool; // 轴使能状态
JobNumber : Int; // 当前执行任务号(0-63)
TargetPosition : LInt; // 目标位置(LU)
TargetVelocity : DInt; // 目标速度(LU/s)
Execute : Bool; // 上升沿触发
Done : Bool; // 任务完成
Error : Word; // 故障代码
END_STRUCT;
END_TYPE
启动定位任务的标准流程:
// 步骤1:使能轴
IF NOT #V90.AxisEnabled THEN
#ControlWord1 := 16#047E; // 先关使能
#ControlWord1 := 16#047F; // 再开使能
END_IF;
// 步骤2:写入任务参数(仅在Execute为FALSE时修改)
IF NOT #V90.Execute THEN
#PositionSetpoint := #V90.TargetPosition;
#VelocityOverride := #V90.TargetVelocity;
#JobSelect := INT_TO_BYTE(#V90.JobNumber);
END_IF;
// 步骤3:上升沿触发
#ExecuteOld := #V90.Execute;
IF #V90.Execute AND NOT #ExecuteOld THEN
#ControlWord2 := 16#4000; // 位14置1:通过任务号启动
#ControlWord2 := 16#0000; // 复位触发位
END_IF;
3.3 关键控制字位解析
| 位 | 名称 | 功能 |
|---|---|---|
| STW1.0 | ON/OFF1 | 使能前提,必须与0.1配合使用 |
| STW1.1 | OFF2 | 自由停车,0有效 |
| STW1.2 | OFF3 | 快速停车,0有效 |
| STW1.3 | Enable operation | 最终使能,1有效 |
| STW2.14 | Start positioning | 上升沿触发定位任务 |
| STW2.15 | Start homing | 上升沿触发回零 |
状态字反馈:
ZSW1.2= 运行中ZSW1.3= 故障存在ZSW2.14= 定位完成(目标位置到达)
四、调试技巧与故障处理
4.1 在线监控关键参数
使用 V-ASSISTANT的Trace功能,添加 以下信号:
| 信号 | 参数号 | 监控意义 |
|---|---|---|
| 实际位置 | r2521 |
确认位置反馈方向正确 |
| 实际速度 | r2522 |
检查速度曲线平滑性 |
| 跟随误差 | r2563 |
定位过程中应<100 LU |
| 当前任务号 | r2687 |
确认任务切换逻辑 |
4.2 常见故障代码
| 代码 | 含义 | 处理措施 |
|---|---|---|
| F7452 | 跟随误差过大 | 增大 p2546(转矩前馈)或检查机械卡阻 |
| F7453 | 正限位触发 | 确认 DI7接线,反向离开限位后复位 |
| F7454 | 负限位触发 | 同上,检查DI8 |
| F7455 | 零脉冲未找到 | 调整 p2606 搜索速度,或检查编码器Z相 |
| F7490/91 | 硬件限位 | 检查限位开关物理状态 |
4.3 精度优化建议
定位精度取决于机械刚性和参数配合:
- 消除 间隙:丝杠螺母预紧,联轴器选用梅花型或膜片型
- 降低 到位抖动:启用
p2544(位置环增益自适应),或手动微调p2538(比例增益) - 减小 过冲:增加
p2573减速度,或启用p2575(S曲线加减速,设100%为完全平滑)
五、高级功能:直接位置设定模式
除预定义任务外,EPOS支持通过PROFINET直接写入目标位置,实现PLC实时轨迹规划。
激活 直接设定模式:
- 设置
p2655= 1(接受外部位置设定值) - 报文111中的
NSOLL_B直接作为目标位置
此时PLC侧可采用更灵活的控制策略:
// 电子齿轮同步示例:跟随外部主轴编码器
#TargetPosition := #MasterPosition * #GearRatio;
#VelocityOverride := #MasterVelocity * #GearRatio * 120 / 100; // 20%裕量
注意直接模式下,仍需 通过任务号0(或特殊使能位)触发执行,具体行为取决于 p2656 的设定。
六、项目归档与批量部署
完成单台调试后,导出 参数文件(.xml格式),通过 SD卡批量复制到其他驱动器:
- 将 参数文件存入SD卡根目录,重命名 为
UserPar.xml - 插入 目标驱动器,上电 后自动导入
- 观察 七段数码管显示
8 8 8 8 8表示导入完成,重启 生效
对于绝对值编码器应用,执行 p971 = 1 复制编码器偏移量,确保批量设备机械原点一致。
EPOS定位功能将复杂的伺服运动控制封装为标准化的参数接口,使电气工程师能在半小时内完成从接线到运行的全流程。掌握其参数逻辑和通讯机制后,可快速扩展至多轴系统,配合博途的SinaPos功能块,更能实现图形化的运动顺序编程。

暂无评论,快来抢沙发吧!