- 自动化系统
- 驱动技术
- 低压电气
- 工业服务
- 其他

更新至第12集
FB38051_SINA_POS_TEL112功能块说明





- 软件编程
- 使用操作
- 报文
- 伺服控制器S200
- 112报文
- 0
- 75
FB38051_SINA_POS_TEL112功能说明
一、FB38051_SINA_POS_TEL112功能块简介
SINAMICS S200 PN与PLC使用西门子112号报文通讯,可以使用FB38051 SINA_POS_TEL112 功能块进行控制。
该功能块可在下述组织块(OB)中进行调用:
- 循环组织块:OB1
- 循环中断组织块:如OB30
参考资料:EPos Control Block "SINA_POS_TEL112" 使用说明和库文件下载链接:
https://support.industry.siemens.com/cs/ww/en/view/109747655
二、FB38051功能块管脚解析
输入管脚:
输入信号 | 数据类型 | 含义 |
ModePos | INT | 运行模式: 1 = 相对定位 2 = 绝对定位 3 = 连续运行模式(按指定速度运行) 4 = 主动回零 5 = 直接设置回零位置 6 = 运行程序段 0~15 7 = 按指定速度点动 8 = 按指定距离点动 9= 绝对值编码器校准 |
EnableAxis | BOOL | 伺服运行命令:0 = 停止(OFF1),1 = 使能轴 |
CancelTraversing | BOOL | 0 = 取消当前的运行任务 1 = 不取消当前的运行任务 |
IntermediateStop | BOOL | 0 = 暂停当前运行任务 1 = 不暂停当前运行任务 |
Positive | BOOL | 正方向 |
Negative | BOOL | 负方向 |
Jog1 | BOOL | 点动信号1 |
Jog2 | BOOL | 点动信号2 |
FlyRef | BOOL | 0 = 取消被动回参考点,1 = 选择被动回参考点 |
AckError | REAL | 故障复位 |
ExecuteMode | BOOL | 激活请求的模式 |
Position | Real | ModePos=1或2时的位置设定值 ModePos=6时的程序段号 |
Velocity | Real | ModePos=1、2、3时的速度设定值 |
OverV | INT | 所有模式下的设定速度百分比0~199% |
Acceleration | Real | ModePos=1、2、3时设定加速度 |
Deceleration | Real | ModePos=1、2、3时设定减速度 |
FixStopTorque | Real | 预留 |
RefCoordinate | Real | EPOS 原点位置值 |
ConfigEPOS | DWORD | 可以通过此参数控制基本定位的相关功能,位的对应关系见下表 |
HWIDSTW | HW_IO | 报文112的硬件标识符 |
HWIDZSW | HW_IO | 报文112的硬件标识符 |
ConfigEPOS管脚位的对应关系:
ConfigEpos 的Bit位 | 功能说明 | 互联 | 初始值 |
ConfigEPos.%X0 | OFF2停止(1=无脉冲封锁) | r2090.1 | 1 |
ConfigEPos.%X1 | OFF3 停止(1=无急停) | r2090.2 | 1 |
ConfigEPos.%X2 | 激活软件限位功能 | r2092.14 | 0 |
ConfigEPos.%X3 | 激活硬件限位功能 | r2092.15 | 0 |
ConfigEPos.%X4 | 测量输入的沿评估 | r2092.11 | 0 |
ConfigEPos.%X5 | 测量输入的信号选择 | r2092.10 | 0 |
ConfigEPos.%X6 | 零点开关信号 | r2092.2 | 0 |
ConfigEPos.%X7 | 外部程序块切换 | r2090.13 | 0 |
ConfigEPos.%X8 | ModPos=2、3时设定值连续改变(不需要重新触发) | r2091.12 | 0 |
ConfigEPos.%X9 ~ 31 | 预留 |
输出管脚:
输出信号 | 类型 | 含义 |
AxisEnabled | BOOL | 驱动已使能 |
AxisPosOk | BOOL | 目标位置到达 |
AxisSpFixed | BOOL | 设定位置到达 |
AxisRef | BOOL | 已设置参考点 |
AxisWarn | BOOL | 驱动报警 |
AxisError | BOOL | 驱动故障 |
Lockout | BOOL | 禁止接通 |
ActVelocity | DINT | 实际速度 |
ActPosition | DINT | 当前位置 |
ActMode | INT | 当前激活的运行模式 |
EPosZSW1 | WORD | POS ZSW1的状态 |
EPosZSW2 | WORD | POS ZSW2的状态 |
ActWarn | WORD | 驱动器当前的报警代码 |
ActFault | WORD | 驱动器当前的故障代码 |
ZSW1 | WORD | ZSW1的状态 |
ZSW2 | WORD | ZSW2的状态 |
MELDW | WORD | MELDW的状态 |
Error | BOOL | 1=存在错误 |
Status | WORD | 16#7002:无故障,正常运行 16#8401:驱动错误 16#8402:驱动禁止启动 16#8403:被动回零不被开启 16#8600:DPRD_DAT错误 16#8601:DPWR_DAT错误 16#8202:不正确的运行模式选择 16#8203:不正确的设定值参数 16#8204:选择了不正确的程序段号 |
DiagID | WORD | 扩展的通信错误 |
三、FB38051功能块使用具体方法
1、实现绝对定位控制
绝对定位前提:轴必须已存在零点或编码器已被校准
• 运行模式选择 ModePos=2
• CancelTraversing=1,IntermediateStop=1, Jog1 及Jog2 设置为 "0"。
• ConfigEpos管脚的bit0、bit1位必须为1,使用初始值16#00000003即可。
• 设置目标位置Position和速度Velocity
• 通过输入参数 OverV指定速度百分比,通常采取默认设置即可(100%)。
• 通过输入参数Acceleration、Deceleration指定加速度、减速度。
• 使用上升沿,使能驱动 EnableAxis= 0→1
• ExecuteMode上升沿触发定位运动
2、实现相对定位控制
• 运行模式选择 ModePos=1
• 轴可以不设置零点或不校准绝对值编码器
• CancelTraversing=1,IntermediateStop=1, Jog1 及Jog2 设置为 "0"。
• ConfigEpos管脚的bit0、bit1位必须为1,使用初始值16#00000003即可。
• 设置目标位置Position和速度Velocity,运动方向由Postion的正负决定。
• 通过输入参数 OverV指定速度百分比,通常采取默认设置即可(100%)。
• 通过输入参数Acceleration、Deceleration指定加速度、减速度。
• 使用上升沿,使能驱动 EnableAxis= 0→1
• ExecuteMode上升沿触发定位运动
3、连续运行模式控制(按照指定速度运行)
"连续运行"模式允许轴的位置控制器在正向或反向以一个恒定的速度运行
• 运行模式选择 ModePos=3
• 轴可以不设置零点或不校准绝对值编码器
• CancelTraversing=1,IntermediateStop=1, Jog1 及Jog2 设置为 "0"。
• ConfigEpos管脚的bit0、bit1位必须为1,使用初始值16#00000003即可。
• 设置目标速度Velocity,运行方向由Positive 及 Negative 决定。
• 通过输入参数 OverV指定速度百分比,通常采取默认设置即可(100%)。
• 通过输入参数Acceleration、Deceleration指定加速度、减速度。
• 使用上升沿,使能驱动 EnableAxis= 0→1
• ExecuteMode上升沿触发运行
4、实现程序块运行控制
此程序块运行模式通过驱动功能"Traversing blocks"来实现,它允许用户自行创建程序块、运行至挡块、设置及复位输出。
要求:
• 运行模式选择ModePos=6
• ConfigEpos管脚的bit0、bit1位必须为1,使用初始值16#00000003即可。
• 轴静止
步骤:
• 工作模式、目标位置等已在S200 PN驱动的运行块参数中进行设置,输入参数 OverV指定速度倍率,通常采取默认设置即可(100%)。
• 运行条件"CancelTraversing" 及 "IntermediateStop"必须设置为 "1",Jog1 及 Jog2 必须设置为 "0"。
• 程序块号在输入参数 "Position" 中设置,取值应为 0~ 31。
• 运动的方向由与工作模式及程序块中的设置决定,与Positive 及Negative参数无关,必须将它们设置为"0"。
• 驱动的运行命令EnableAxis=1。
选择程序块号后通过ExecuteMode的上升沿来触发运行。
5、点动"Jog"控制
• 运行模式选择ModePos=7
• ConfigEpos管脚的bit0、bit1位必须为1,使用初始值16#00000003即可。
• 轴静止
• 轴不必回零或绝对值编码器校正
步骤:
• 点动速度在驱动器参数P2585、P2586中设置,速度的OverV参数对点动速度设定值进行倍率缩放,默认值100%
• 运行条件"CancelTraversing" 及 "IntermediateStop"与点动运行模式无关,默认设置为 "1"
• 驱动的运行命令 EnableAxis=1
• jog1或jog2 置位为1。
注意:
• Jog1 及Jog2 用于控制EPOS的点动运行,运动方向由驱动中设置的点动速度值的正负(参数P2585、P2586)来决定,默认设置为Jog1 = 负向点动速度,Jog2 = 正向点动速度 ,与Positive 及Negative参数无关,默认设置为"0"。
四、常见问题
1、如何激活硬限位、软限位功能?
如果使用了硬限位开关,需要将FB38051功能块的输入管脚ConfigEPos.%X3(POS_STW2.15 )置1,激活S200 PN的硬限位功能。
如果使用了软限位开关,需要将FB38051功能块的输入管脚ConfigEPos.%X2(POS_STW2.14 )置1,激活S200 PN的软限位功能。
2、Excutemode触发定位动作时S200 PN无响应
将ModePos模式切换与ExecuteMode动作触发不要在同一个PLC扫描周期内进行,ModePos切换到新模式后建议延迟10ms以上再触发ExecuteMode命令。
并且动作触发ExecuteMode的高电平保持时间不能太短,建议保持10ms以上。
3、S7-1500 可以控制几台S200 PN进行EPOS基本定位器位置控制?
在不挂其他PROFINET设备下,EPOS控制模式下,最大的带轴数量取决于S7-1500的PN设备连接数量。
4、S7-1200 可以控制几台S200 PN进行EPOS基本定位器位置控制?
在不挂其他PROFINET设备下,EPOS控制模式下,最多可以控制16台S200 PN 伺服。
- 评论
扫码分享