超聲波流量計(jì)通訊故障問題解析
新版具有強(qiáng)大的通訊功能,能夠同時支持多種不同的協(xié)議,包括MODBUS協(xié)議、MBUS、海峰FUJI擴(kuò)展協(xié)議、匯中流量計(jì)水表兼容協(xié)議。
海峰FUJI擴(kuò)展協(xié)議是在日本FIJI超聲波流量計(jì)協(xié)議的基礎(chǔ)上擴(kuò)展實(shí)現(xiàn)的,能夠兼容FUJI超聲波流量計(jì)協(xié)議,以及海峰第7版超聲波流量計(jì)協(xié)議。
兼容協(xié)議還可以兼容海峰水表協(xié)議以及匯中水表協(xié)議。
位于M63窗口處的設(shè)置選項(xiàng)設(shè)置為“MODBUS-RTU ONLY”時,用來支持MODBUS-RTU協(xié)議。當(dāng)此選項(xiàng)設(shè)置為“MODBUS ASCII+原協(xié)議”時,用來支持MODBUS ASCII、Meter-BUS、海峰FUJI擴(kuò)展協(xié)議以及匯中流量計(jì)水表兼容協(xié)議。
不同的匯中流量計(jì)水表兼容協(xié)議的選擇則也使用M63進(jìn)行選擇。在選擇了“MODBUS-RTU”,“MODBUS-ASCII”之后進(jìn)行選擇。
M62菜單用于設(shè)置串行口參數(shù)。能夠支持的波特率有19200,14400, 9600, 4800, 2400, 1200, 600, 300共8種,停止位1比特或2比特。校驗(yàn)位也可以選擇。
使用各種組態(tài)軟件自帶的標(biāo)準(zhǔn)的MODBUS驅(qū)動程序可以方便地把流量計(jì)連接到數(shù)據(jù)采集中。
通過使用MODBUS-PROFIBUS轉(zhuǎn)換器,也可以方便地把超聲波流量計(jì)連接到PROFIBUS總線中。
目前還已經(jīng)有了多家第三方廠商的專門支持流量計(jì)的數(shù)據(jù)采集軟件供用戶選用,其中有些小的軟件是免費(fèi)的,特別方便小用戶的組網(wǎng)使用。
為了通訊調(diào)試的方便,新版流量計(jì)設(shè)有一個模擬運(yùn)行狀態(tài)。在此狀態(tài)下,流量計(jì)不需要接入管道,即可模擬工作,用于調(diào)試,參看下一節(jié)的問答7。
關(guān)于通訊方面問題的問答
問:為什么連接不上流量計(jì)?,接上后它不做任何反應(yīng)?
答: A. 檢查串口參數(shù)是否匹配;位于M63窗口的協(xié)議選擇是否正確
B.檢查物理連線是否接好
D.位于M46窗口的地址是否設(shè)置正確
C.把流量計(jì)重新上電,應(yīng)該能接收到字符“AT”,否則A和B步存在問題
D.檢查命令是否正確。在使用擴(kuò)展協(xié)議時命令后面要緊跟者一個回車符號
問:為什么MODBUS讀出的量值亂七八糟的,和顯示值完全不一致?
答:一般來說如果MODBUS協(xié)議能夠讀出數(shù)據(jù)就表明協(xié)議本身沒有問題了。亂七八糟的數(shù)據(jù)是因?yàn)榇嬖谌缦洛e誤:
A.?dāng)?shù)據(jù)格式錯誤; B.寄存器地址有誤,導(dǎo)致數(shù)據(jù)發(fā)生了位移而產(chǎn)生錯誤。
比如REAL4這種實(shí)型變量(IEEE754格式的單精度浮點(diǎn)數(shù)),按照字和字節(jié)共有4種不同的排列方式,流量計(jì) 使用的是最常規(guī)的一種,即低word和高byte在前格式。您可以修改您的軟件的數(shù)據(jù)存放格式解決這個問題。如果使用通用的組態(tài)軟件,則組態(tài)軟件一般具有一個選擇格式的方法。
問:我的系統(tǒng)要求每次1小時只發(fā)出一次命令然后要求同時收到多個變量,應(yīng)該使用 那個協(xié)議?
答:一條MODBUS命令可以一次讀出很多變量。如果MODBUS-RTU不能解決問題,可以使用使用“&”連接符號連接起來的海峰擴(kuò)展協(xié)議。還可以使用簡易兼容協(xié)議,或者Meter-BUS協(xié)議。
問:為什么通過協(xié)議讀出的量值和流量計(jì)顯示的不一致?
答:A. 確認(rèn)變量地址是否就是您要求的那個變量?因?yàn)榱髁坑?jì)內(nèi)部的變量太多,是否混淆了? 注意在讀取數(shù)據(jù)時,REG 0001在命令字符串中表示為0000,而不是0001。0001在命令字符串中表示讀出REG 0002的內(nèi)容。
B.對于累積量只能顯示7位10進(jìn)制數(shù)字,而通過MODBUS協(xié)議可以讀出8位10進(jìn)制數(shù)字。這種情況下,讀出來的數(shù)值的后7位是一樣的。
問:我的系統(tǒng)不能支持長整數(shù)以及實(shí)型變量格式,應(yīng)該怎么辦?
答:需要采用數(shù)值轉(zhuǎn)換方式,或查找新驅(qū)動程序解決。
問:MODBUS有測試程序嗎?
答:有!推薦使用MODSCAN這個軟件,可以在網(wǎng)上搜到。這個程序很是方便,有助于方便檢查讀出的數(shù)據(jù),理解各種類型數(shù)據(jù)的含義。
問:流量計(jì)是否具有模擬運(yùn)行狀態(tài)以方便測試,怎樣設(shè)置?
答:有!在M11窗口中輸入0值即啟動模擬運(yùn)行狀態(tài)。模擬運(yùn)行狀態(tài)下總是設(shè)置流速為1.2345678m/s,瞬時流量等于0,并且顯示“R”狀態(tài)。如果要求瞬時流量為設(shè)定值,則可以通過在M44窗口中輸入一個負(fù)的設(shè)定值實(shí)現(xiàn)。例如在M44窗口中輸入-3600立方米/秒。瞬時流量就會顯示為3600立方米/秒。這時所有累積器也會做相應(yīng)的累積。因此就得到了變化的累積量輸出。使用這個功能,能在不接傳感器的條件下,特別方便與聯(lián)網(wǎng)軟件的調(diào)試以及流量計(jì)功能的測試。
問:使用C時,浮點(diǎn)數(shù)存放順序是怎樣的?
答:例如3F 9E 06 51四個字節(jié)為1.2345678的IEEE754格式單精度浮點(diǎn)形式。在MODBUS數(shù)據(jù)流中的順序是06 51 3F 9E,1號地址數(shù)據(jù)流應(yīng)該是01 03 04 06 51 3F 9E 3B 32(十六進(jìn)制數(shù)字)。在X86計(jì)算機(jī)中使用C語言時,按照內(nèi)存從低到高存放順序51 06 9E 3F。
再例如讀取凈累積寄存器REG25,REG26兩個寄存器命令如下:
01 03 00 18 00 02 44 0C(十六進(jìn)制數(shù)字)
返回數(shù)據(jù)應(yīng)該為(設(shè)凈累積器=802609,其4字節(jié)16進(jìn)制表示為 00 0C 3F 31)
01 03 04 3F 31 00 0C A7 ED(十六進(jìn)制數(shù)字,A7 ED為效驗(yàn)和)
- 上一篇:超聲波流量計(jì)MODBUS協(xié)議調(diào)試辦法(1) 2020/4/14
- 下一篇:如何判斷超聲波流量計(jì)工作狀態(tài) 2020/4/10