作者: 廈門海為技術支持部
本文將介紹如何在組態王里顯示海為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.www.dgjyzy.cn www.haiwell.cn
編程軟件下載地址:HaiwellHappy
海為技術支持 何工QQ:1584969349 袁工QQ:2621288962
海為公眾號
海為云APP
廈門海為科技有限公司
0592-3278716 (技術) | 4000-360-362 (商務)
海為總部:廈門市集美區軟件園三期C03棟13-14層 | 制造中心:廈門市翔安區火炬高新區(翔安)產業區垵邊南路336-2號4樓