博途V16中通过SinaPara功能块读写驱动参数
1
概述
在博途V16中可以通过Sina Para(FB302)功能块对驱动参数进行读写操作,借助这个功能块,可向SINAMICS S/G/V驱动器读取或写入多达16个参数。与以前的SINA_PARA FB286功能块的主要区别是增加了Parameter参数,使用起来更加方便。本文以SINAMICS S120驱动器为例进行操作说明。
2
编程步骤和参数解释
(1)创建博途项目,打开OB1,随后打开指令,选择“选件包”,再选SINAMICS中的“SinaPara”,将其拖拽到网络中,并填写相关参数。
(2)“SinaPara”功能块输入/输出参数的说明如下表所示。
(3)hardwareId 参数查询方法
在驱动器的组态中,选择需要读取的驱动对象的报文,在属性中找到Hardware identifer。
(4)AxisNo 参数查询方法
打开驱动软件(如S120的调试软件Starter),在Overview 中获取对应驱动对象的编号,对于V90驱动固定为2,对于S210驱动固定为1;
(5)Parameter参数的定义方法
创建一个数据块,添加长度为16个Sina Parameter类型的数组(Array[1..16]of Sina Parameter),这样可以通过数据块定义参数的方式访问任务;
“Parameter”的数据结构:
Parameter[x].siParaNo:参数号(数值范围:1..65535)
Parameter[x].siIndex:参数索引(数值范围:0..65535),如果读写的参数是数组,此处定义数组下标。
Parameter[x].srValue:参数值(数值范围:1.175495e-38 .. 3.402823e + 38)
Parameter[x].sdValue:参数值(数值范围:-214748364810(-2^31)至 +214748364710(2^31))
需要注意,所有的DWORD或DINT类型的驱动参数都必须写入到Parameter[x].sdValue 中。对于其他所有类型参数,则使用 Parameter[x].srValue 。操作驱动参数前,必须清楚待读/写参数的格式是DWORD/DINT,还是其他格式(byte、word、real、INT等)。
3
功能块使用示例
(1)读驱动器参数
读取SERVO_02(AxisNo=2)的r0945和r0947 下标从0到7共16个参数,在Watch table中进行赋值,读取的结果如下图所示。
(2)写入驱动参数
对SERVO_02(AxisNo = 2)进行参数写操作,写入P2587 = 10000和P2588 = 20000,在Watch table_2中进行赋值,如下图所示。
写入结果可以从STARTER 软件中看到: