西门子V90PN伺服工作在EPOS模式下,SIMATIC PLC可以通过111报文对V90PN进行控制,大家耳熟能详的FB284就是此应用环境下官方提供的基本功能库。
实际上西门子还提供一个FB284的简易版本,就是FB38002(Easy_SINA_Pos库),这个库就是把FB284里面的一些功能拿掉,保留了几个常用功能,下面是FB38002和FB284的对比。
1.两个FB库输入参数(管脚)对比,如表1所示。
输入参数 | FB284 | FB38002 |
---|---|---|
ModePos | 8种模式都有 | 1和2(MDI)、4(回原)、7(点动) |
EnableAxis | 使能轴 | 使能轴 |
CancelTraversing | 是否取消当前运行任务 | 无,FB内部预置1(不取消)。 |
IntermediateStop | 是否暂停任务执行 | 无,FB内部预置1(不暂停)。 |
Positive | 正方向 | 无 |
Negative | 负方向 | 无 |
JOG1 | 点动信号1 | 点动信号1 |
JOG2 | 点动信号2 | 点动信号2 |
FlyRef | 是否选择运行中回零 | 无 |
AckError | 故障复位 | 故障复位 |
ExecuteMode | 激活请求的模式 | 激活请求的模式 |
Position | ModePos=1 或2 时的位置设定值[LU]ModePos=6 时的程序段号 | ModePos=1、2时的位置设定值[LU] |
Velocity | ModePos=1、2、3 时的速度设定值[LU][1000LU/min] | ModePos=1、2时的速度设定值[LU][1000LU/min] |
OverV | 速度百分比0~199% | 无 |
OverACC | ModePos=1、2、3 时的加速度百分比0~100% | 无 |
OverDec | ModePos=1、2、3 时的减速度百分比0~100% | 无 |
ConfigEPos | 通过此参数控制基本定位的相关功能 | HWLimitEnable(激活硬件限位)SWLimitEnable(激活软件限位)其他已在FB内部预置 |
HWIDSTW | V90 设备视图中报文 111 的硬件标识符 | V90 设备视图中报文 111 的硬件标识符 |
HWIDZSW | 同上 | 同上 |
表1:输入参数对比
2.两个FB库输出参数(管脚)对比,如表2所示。
输出参数 | FB284 | FB38002 |
---|---|---|
AxisEnabled | 驱动已使能 | 驱动已使能 |
AxisPosOk | 目标位置到达 | 目标位置到达 |
AxisRef | 已设置参考点 | 已设置参考点 |
AxisWarn | 驱动报警 | 驱动报警 |
AxisError | 驱动故障 | 驱动故障 |
Lockout | 驱动处于禁止接通状态 | 无 |
ActVelocity | 实际速度[十六进制的40000000h 对应 P2000参数设置的转速] | |
ActPosition | 当前位置LU | 当前位置LU |
ActMode | 当前激活的运行模式 | 当前激活的运行模式 |
EPosZSW1 | POS ZSW1 的状态 | 无 |
EPosZSW2 | POS ZSW2 的状态 | 无 |
ActWarn | 驱动器当前报警代码 | 驱动器当前报警代码 |
ActFault | 驱动器当前故障代码 | 驱动器当前故障代码 |
Error | 1=存在错误 | 无 |
Status | 状态字 | 无 |
DiagID | 通信错误,在执行SFB 调用时发生错误 | 通信错误,在执行SFB 调用时发生错误 |
ModeError | 无 | ModePos 不在1-7 范围内 |
CommunicationError | 无 | 使用SFC14/15 与驱动器进行通讯发生故障 |
表2:输出参数对比
3.FB38002的实现过程(与FB284相同,不再截图赘述)
(1)V90PN控制模式设为“基本位置控制(EPOS)”,通信报文选择“111报文”,设置 V90的IP地址和设备名称(可通过V-Assistant调试软件设置)。
(2)博途S7-1200/S7-1500项目中添加V90PN的GSD文件。
(3)网络视图中添加V90PN设备并创建网络连接。
(4)设置V90PN的IP地址和设备名称,并在V90PN设备视图中插入111报文。
(5)将FB38002库添加到OB1中,库可以通过以下链接获取:
http://support.automation.siemens.com/WW/view/en/109747655
(6)添加相关变量即可进行控制,如图1所示。
图1:FB38002运行
大家可以发现FB38002的应用与FB284一样,都是基于DPRD_DAT和DPWR_DAT两个一致性读写指令操控111报文实现的,接下来:
我们会推出不使用官方库自己编写类似FB284的功能块控制V90伺服的文章,敬请期待!