汇川IS620F/810F非周期数据读写与端子点动功能应用示例
2.1 FB287 Sina-Para-S 非周期读写 此功能块实现 PLC 与 620F/810F 驱动器的非周期数据交互功能,主要是伺服参数读 取与写入功能,目前只支持单个参数的读写。 引脚功能介绍: .1.2 FB287 非周期读写注意事项 ① 对于 IS620F,SINA_PARA_S 中的 AxisNO 默认从 1 开始,不管后面带了多少个 620F, AxisNO 全部设为 1,轴区分通过 hardWare 端口区分。 ② 功能块输入参数 Parameter_No 设置如下: 上位机 Parameter_NO(10 进制表示)设置地址为 10000-20000,功能码计算出十 进制数加 10000. 其中,bit2—bit3 表示:功能码组号(16 进制)换成 10 进制。 bit0-bit1 表示功能码组内偏置(10 进制) 如:10000 表示 H00-00。11002 表示 H0A02。15010 表示 H3210。11900 表示 H1300 ③ valueWriter1为16位数据写入区,valueWriter2为32位数据写入区,ValueRead1为16位数据读取区,ValueRead2为32位数据读取区。当伺服参数的数据范围在16位数据范围内,则应当在valueWriter1 中赋值。当伺服参数的数据范围在16位数据范围外,则应当在valueWriter2中赋值。 图 1 FB287 功能块介绍
2.1.3 FB287 非周期读写案例 以 H17-63 (VDO16 端子功能选择)(数据范围为 16 位)为例介绍 :因为十六进制 (17)= 十进制(23),所以功能块输入参数 Parameter_No=12363。表示伺服参数H17-63。 1、读取H17-63 的数值:如下图所示,当Start 引脚的 I0.0 触发后,MD48 自动显 示为 2,读取 H17-63 的数值。 图 3 读取 H17-63 的数值 2、给 H17-63 赋值:首先在 valueWriter1 中赋值为 10,然后切换为写入模式, ReadWrite 为 1,再接着触发 Start,观察伺服后台参数变更为 10。 图 4 写入 H17-63 的数值 2.2 WRREC 与 RDREC 非周期读写 下面介绍 S7-1500 PLC 与 IS620F 通过 WRREC/ RDREC(SFC59/SFC58)指令读写伺 服参数。 首先新建一个数据块 1,同时在其中定义两个结构体(请求与响应),如图 1 所示。 图 1 数据交互缓冲区 接着在程序中调用 WRREC 与 RDREC 的功能块,其中 ID 为硬件标识符,Index 为固 定值 47,LEN=0。 图 2 WRREC 与 RDREC 程序 ① 以读取 H05-07 为例进行介绍: 首先,H05-07=8388608,如图 3 所示。 图 3 H05-07 当前值 接着在 DB3 中对相应的数据进行赋值,Request Reference=16#1, Request ID=16#1 (读功能 码参数),Axis ID=16#1, Parameters number=16#1(参数个数),Attribute=16#10(参数属性) , Parameter=10507(功能码参数 H05-07,且数据类型定义为 int),在响应区定义 Value 的数据类型为 Dint(数据长度为 32 位的定义为 Dint)。 在程序中触发 Req,完成参数的读取,读取的数据在响应的Value 中显示,如图 4 所示。 图 4 读取 H05-07=8388608 ② 以读取 H0B-00 为例进行介绍: 首先,H0B-00= -200,如图 5 所示。 图 5 H0B-00 当前值 接着在 DB3 中对相应的数据进行赋值,Request Reference=16#1, Request ID=16#1 (读功能 码参数),Axis ID=16#1, Parameters number=16#1(参数个数),Attribute=16#10(参数属性) , Parameter=11100(功能码参数 HOB-00,且数据类型定义为 int),在响应区定义 Value 的数据类型为 int(数据长度为 16 位的定义为 int)。 在程序中触发 Req,完成参数的读取,读取的数据在响应的Value 中显示,如图 6 所示。 图 6 读取 H0B-00= -200 ③ 以写 H05-36=-998877 为例进行介绍: 在 DB3 中对相应的数据进行赋值,Request Reference=16#1, Request ID=16#2 (写功能码参数),AxisID=16#1,Parametersnumber=16#1(参数个数),Attribute=16#10(参数属性),Parameter=10536(功能码参数HO5-36,且数据类型定义为int),WriteFormat=16#43(双字),Write Value的数据类型定义为Dint(数据长度为32位的定义为Dint),且赋值要写入的数据-998877。 在程序中触发 Req,完成参数的写入,如图 7、8 所示。 图 7 写 H05-36= -99887 图 8 写完后 H05-36 的数据 ④ 以写 H06-04=22334 为例进行介绍: 在 DB3 中对相应的数据进行赋值,Request Reference=16#1, Request ID=16#2 (写功能码参数),AxisID=16#1,Parametersnumber=16#1(参数个数),Attribute=16#10(参数属性), Parameter=10604(功能码参数HO6-04,且数据类型定义为int),WriteFormat=16#42(字),WriteValue的数据类型定义为int(数据长度为16位的定义为int),且赋值要写入的数据2334。 在程序中触发 Req,完成参数的写入,如图 9、10 所示。 图 9 写 H06-04= 22334 图 10 写完后 H06-04 的数据 2.3 本地 DI 端子速度点动功能 IS620F 支持 DI 速度点动功能,通过设置 DI端子功能为 40(点动速度模式),拨动 DI1 端子切 到点动速度模式,点动速度与斜坡在参数 H0604 与 H0605 中设置。 【注】: 当使用 PLC 通过Profinet总线控制时,需要将 DI1 置为 OFF,关闭点动速度模式。 图 1 点动速度模式配置 图 2 点动速度模式测试波形
2.4 本地 DI 端子位置增量点动功能 IS620F/IS810F 除了支持 DI 速度点动功能外,还支持 DI 端子位置增量点动功能。 首先需要将 DI端子功能分别设置成42(远程/本地定位切换)、43(本地定位使能),44(本地位置JOG1使能)与45(本地位置JOG2使能),然后点动的加减速时间、位置增量与点动速度在伺服参数H0562~H0569 中设置,其中H0564(位置 JOG1 指令)与H0566(位置JOG2 指令)单位均为 LU,H0568(位置JOG1速度)与H0569(位置JOG2速度)单位均为rpm。其中H0563(位置JOG加减速时间)线性对应1000rpm。 将 DI1 与 DI2 端子置为 TRUE 后,触发 DI3 端子则反向点动一段距离,触发 DI4 端子则正向点动 一段距离,需要注意,点动 JOG 信号为电平有效。 【注】: 若需要切换为 PLC进行使能控制,则需要将DI1与DI2置为FALSE,若上位机给使能同时本地DI使能有效,则伺服报警ER121(伺服使能ON无效故障)。若本地点动运行模式下将JOG1 与JOG2端子同时触发,则伺服报警ERB05(位置JOG参数设置无效)。 图 3 本地 DI 端子点动增量参数 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |