国产PLC—Haiwell(海为)组态王上如何显示海为PLC浮点数

2014-11-26 14:36:37 厦门海为科技有限公司 阅读

作者: 厦门海为技术支持部

本文将介绍如何在组态王里显示海为PLC里的浮点数,因为组态王里没有海为的驱动,但由于Haiwell(海为)PLC采用标准Modbus协议(支持RTU和ASCII格式),能与所有支持Modbus协议的HMI和组态软件连接通讯,所以我们在组态王里选择的是莫迪康的ModbusRTU协议和海为PLC通讯。举一反三,当你下次遇到其他的ModbusRTU设备也要在组态王上显示浮点数时,也可以按照本文的方法来做。

本例海为PLC的地址为1 波特率19200 资料格式为N 8 2,组态王版本6.55

海为科技

海为PLC的联机画面可以直接体现本台PLC对应的地址、波特率以及资料格式。

言归正传,以下:

第一步:在组态王里添加ModbusRTU驱动如下:

海为科技

    点击“下一步”

海为科技

    点击“下一步”

海为科技

    点击“下一步”

海为科技

    点击“下一步”

海为科技

    点击“下一步”

海为科技

    以上添加驱动完毕!

 

    第二步:设置组态王串口的通讯参数:

    接着我们来设置组态王端的通讯参数,其通讯参数与PLC保持一致才能通讯上,即也应设置为19200 N 8 2如下:

海为科技

    第三步:明确海为PLC内部元件与组态王上的地址对应关系:

    由Haiwell(海为)PLC元件对应的Modbus表如下:

海为科技

    说明:Haiwell(海为)PLC的Modbus地址号从0开始,有些HMI或组态软件则从1开始,如果HMI或组态软件的Modbus地址从0开始则直接使用通讯地址,如M0为0x3072,V0为4x0512;如果HMI或组态软件的Modbus地址从1开始则需将元件地址号加1,如M0为0x3073[3072+1],V0为4x0513[512+1]。地址的首位是Modbus协议的元件类型(0/1为位元件,3/4为寄存器元件,类型0/4表示可读写,类型1/3表示只读)后面的其余数位才是元件地址号。

    第四步:本例中要读取的海为PLC里的浮点数值为V0、V10

    我们在海为PLC里的V0、V10寄存器的设定值为:

海为科技

组态王里需要加1,所以V0为513,V10为523。

第五步:在组态王上建立V0、V10变量如下

海为科技

 

海为科技

第六步:重点说明!!!建立调整浮点数值顺序的变量

由于浮点数占用连续的两个寄存器,组态王在读取ModbusRTU设备里的浮点数的时候数值的放置顺序发生了变化,控制数据位置的由寄存器SwapF0这个字节控制,当这个字节的值等于3的时候,浮点数的可以按照正常的顺序显示,所以我们建立这个变量如下:

海为科技

接下来我们要做的就是让这个变量的值等于3,方法有两种,一种是建立数值读写控件,对该寄存器赋值为3,第二种就是利用脚本对改寄存器进行赋值3,比较之下用脚本来赋值比较实用,画面脚本里的脚本为:

海为科技

第七步:在画面上显示浮点数

海为科技

以上就可以成功的显示出海为PLC里的浮点数。

海为官网:www.haiwell.com   www.haiwell.cn

编程软件下载地址:HaiwellHappy

海为技术支持  何工QQ:1584969349    袁工QQ:2621288962