Modbus電磁流量計在污水計量中應(yīng)用 發(fā)布時間:2019-07-22
【摘要】本文分析了基于Modbus協(xié)議的電磁流量計通訊在污水計量中的應(yīng)用,通過RS-485串口連接,進行相關(guān)的流量信息的讀取,從而切實可靠的保證了數(shù)據(jù)穩(wěn)定性、可靠性和正確率。 0引言 隨著中國城市經(jīng)濟的發(fā)展,無論是生活污水量還是工業(yè)污水量都出現(xiàn)了較快增長的態(tài)勢,使得水環(huán)境污染和水環(huán)境質(zhì)量下降的趨勢也在不斷加劇。因此,國家加強了對污水處理的投資,興建和投運了大量的污水處理廠,從而改善我們所處的生態(tài)環(huán)境。如何保證污水處理的水質(zhì)、水量達到國家排放標(biāo)準(zhǔn),這就對計量檢測儀表的配置和管理提出了新的要求。 目前,污水處理廠對電磁流量計這種計量比較準(zhǔn)確的儀表逐漸推廣和普及。在傳統(tǒng)的污水處理廠的自動化監(jiān)控及信息集成系統(tǒng)中,電磁流量計采用4-20mA(傳送模擬量信息)或24VDC(傳送開關(guān)量信息)信號進行通訊傳輸,很多現(xiàn)場層流量計與控制器之間的連接是一對一(一個I/O點對設(shè)備的一個測控點)所謂I/O接線方式。但是這樣的系統(tǒng)存在一些明顯的缺點,那就是信息集成能力不強;系統(tǒng)不開放、可集成性差、專業(yè)性不強;可靠性不易保證;可維護性不高等。 如果現(xiàn)場層設(shè)備配有串行數(shù)據(jù)接口(如RS-232/485),控制器就可以按接口規(guī)定協(xié)議,通過串行通信方式(而不是I/O方式)完成對現(xiàn)場設(shè)備的監(jiān)控。[1]如果設(shè)想全部或大部分現(xiàn)場設(shè)備都具有串行通信接口并具有統(tǒng)一的通信協(xié)議,控制器只需一根通信電纜就可將分散的現(xiàn)場設(shè)備連接,完成對所有現(xiàn)場設(shè)備的監(jiān)控,這就是所說的采用現(xiàn)場總線技術(shù)。 1Modbus協(xié)議在電磁流量計通訊中實現(xiàn)的簡介 目前,污水處理廠所用的電磁流量計大部分都配有串行數(shù)據(jù)接口(如RS-232/485),并且接口支持MODBUS總線協(xié)議。一般電磁流量轉(zhuǎn)換器MODBUS通訊采用標(biāo)準(zhǔn)MODBUS通訊協(xié)議,MODBUS模塊和上位機進行通訊的波特率為600–19200,波特率設(shè)備地址可以通過鍵盤進行設(shè)置。通訊由主機發(fā)起,主機首先發(fā)送消息幀,消息幀的發(fā)送間隔必須大于3.5個以上字符的發(fā)送時間。[2]消息幀發(fā)送的第一個字節(jié)是設(shè)備地址,從設(shè)備不斷的偵測網(wǎng)絡(luò)總線當(dāng)接收到第一個字節(jié),每一個設(shè)備都進行解碼以判斷是否是發(fā)往自己的消息幀;接收到一個字符之后,如果停頓時間超過3.5個以上字符的發(fā)送時間,標(biāo)志著前一個消息幀發(fā)送結(jié)束,一個新的消息幀在此停頓后開始。字符間隔不能大于一個字符,否則認(rèn)為是一條新的消息幀開始,老的消息幀結(jié)束。 消息幀定義如下: Modbus通訊協(xié)議規(guī)定了2種通訊方式。RTU(REMOTETERMINALUNIT)方式通訊采用8位字節(jié)的二進制數(shù)據(jù)通訊,數(shù)據(jù)校驗采用CRC循環(huán)冗余校驗,通訊速度較快;ASCII方式采用7位ASCII碼進行通訊,數(shù)據(jù)校驗采用LRC邏輯冗余校驗,通訊速率較慢。針對MODBUS在電磁流量轉(zhuǎn)換器上的應(yīng)用,在MODBUS的功能碼中,不同公司采用不同的方式實現(xiàn),有的公司只用了3個功能碼:03、04、06。03號功能碼主要用來讀取流量信息,包括瞬時流量、流速、流量百分比、電極電阻、正向累計、反向累計、儀表口徑、報警狀態(tài)等;04號功能碼用來讀取鍵盤參數(shù),06號功能碼用來設(shè)置鍵盤參數(shù)。 2基于Modbus協(xié)議的電磁流量計信息讀取 在污水處理廠和運行泵站中作為污水計量的儀表,電磁流量計信息的讀取就顯得異常重要,F(xiàn)場儀表的流量信息,由瞬時流量、流速、百分比、報警狀態(tài)等參數(shù)進行反映,參數(shù)存放地址如下表: 定義如下:讀取流量信息時,主機發(fā)出功能編碼03:讀取輸入寄存器值。參數(shù)存放首址對應(yīng)輸入寄存器首址的低字節(jié)。主機發(fā)送命令格式如下: 從機地址(1Byte)+功能編碼(1Byte)+輸入寄存器首址(2Byte)+輸入寄存器個數(shù)(2Byte)+CRC校驗值(2Byte),從機地址值范圍在1-99; 輸入寄存器高字節(jié)全部是0,低字節(jié)范圍在01~09,對應(yīng)上面表格中參數(shù)存放首址。輸入寄存器個數(shù)高字節(jié)是0,低字節(jié)是3,從機回應(yīng)格式如下: 從機地址(1Byte)+功能編碼(1Byte)+讀出的字節(jié)個數(shù)(1Byte)+字節(jié)內(nèi)容(6Byte)+CRC校驗值(2Byte),返回的參數(shù)占6個字節(jié),故字節(jié)個數(shù)是6。 注:讀取流量信息時,對瞬時流量、流速、百分比、報警狀態(tài)等參數(shù),用戶可以分別讀取,即一次只讀取一個參數(shù)。用戶也可以一次性讀取所有的8個參數(shù)或一次讀取其中的幾個參數(shù)。讀出的流量信息有兩種表示方法:整形數(shù)表示法和浮點數(shù)表示法。如沒有特殊聲明,儀表一般采用整形數(shù)據(jù)進行傳輸。 詳細(xì)信息結(jié)構(gòu)定義如下: 1)瞬時流量信息定義 主機發(fā)送: 01H03H00H01H00H03H54H0BH 從機響應(yīng): 01H03H06HD0D1D2D3D4D5CRC16低CRC16高 如果數(shù)據(jù)以整形數(shù)格式進行傳輸,則D0、D1代表瞬時流量整數(shù)部分的高4位(16進制),D2、D3代表瞬時流量整數(shù)部分的低4位(16進制),D4、D5代表瞬時流量小數(shù)部分值(16進制)。 2)流速信息定義 主機發(fā)送: 01H03H00H04H00H03H44H0AH 從機響應(yīng): 01H03H06HD0D1D2D3D4D5CRC16低CRC16高 如果數(shù)據(jù)以整形數(shù)格式進行傳輸,則D0、D1代表流速整數(shù)部分的高4位(16進制),D2、D3代表流速整數(shù)部分的低4位(16進制),D4、D5代表流速小數(shù)部分值(16進制)。 3)正向總量信息定義 主機發(fā)送: 01H03H00H0DH00H03H94H08H 從機響應(yīng) 01H03H06HD0D1D2D3D4D5CRC16低CRC16高 如果數(shù)據(jù)以整形數(shù)格式進行傳輸,則將D0、D1由16進制轉(zhuǎn)換成10進制X0X1X2X3,將D2、D3由16進制轉(zhuǎn)換成10進制X4X5X6X7,將D4、D5由16進制轉(zhuǎn)換成10進制X8X9X10X11,數(shù)據(jù)由X0X1X2X3X4X5X6X7X8X9組成,小數(shù)點位置和累計單位由X10X11決定。 舉例說明如下: 如接收到的數(shù)據(jù)是 01H04H06H00H22H16430C84686B 則0022(16進制)=34(十進制) 則1643(16進制)=5699(十進制) 則0C84(16進制)=3204(十進制) 則數(shù)據(jù)可表示為34569932,04是小數(shù)點位數(shù),查表為0.001m3,故實際數(shù)據(jù)為34569.932m3。 4)反向總量信息定義 主機發(fā)送: 01H03H00H10H00H03H04H0EH 從機響應(yīng): 01H03H06HD0D1D2D3D4D5CRC16低CRC16高 數(shù)據(jù)表示方法和正向總量一樣。 5)報警狀態(tài)信息定義 主機發(fā)送: 01H03H00H16H00H03HE4H0FH 從機響應(yīng): 01H03H06HD0D1D2D3D4D5CRC16低CRC16高 如果數(shù)據(jù)以整形數(shù)格式進行傳輸,則D2、D3代表報警狀態(tài)整數(shù)值(十六進制),D0、D1、D4、D5保留。 報警狀態(tài)的值范圍不會超過1024,用二進制位表示為:Bit9Bit8Bit7Bit6Bit5Bit4BIT3bit2Bit1Bit0,分別定義如下: 位定義:Bitx=0無警狀態(tài);Bitx=1報警狀態(tài); 3基于Modbus協(xié)議的電磁流量計參數(shù)讀取 基于Modbus協(xié)議的電磁流量計在進行參數(shù)讀取時,可以先定義 現(xiàn)場儀表的各個參數(shù),參數(shù)編號定義如下: 3.1語言選擇 參數(shù)值=0:中文 參數(shù)值=1:英文 3.2流量量程設(shè)置:0~65535。 4電磁流量計Modbus通訊的安裝與布線 電磁流量計按照RS-485串口方式進行布線和連接,按照下圖方式進行連接: 工控機或PC機通過串口連接到RS232/RS485轉(zhuǎn)換器,轉(zhuǎn)換器的+A、+B分別連接到各個電磁流量計。 如果是分體式電磁流量計,將RS232/RS485轉(zhuǎn)換器的+A、+B分別和電磁流量計的A2、B2相連接,如果接線較長,連接的儀表較多,有必要在遠端加一個100Ω-200Ω的匹配電阻。 如果是一體式電磁流量計,將RS232/RS485轉(zhuǎn)換器的+A、+B分別和電磁流量計的TRX+、TRX-相連接,如果接線較長,連接的儀表較多,有必要在遠端加一個100Ω-200Ω的匹配電阻。 5電磁流量計的Modbus通訊測試 如果用戶需要和現(xiàn)場儀表進行MODBUS通訊,可以安裝測試程序進行測試,利用測試應(yīng)用程序MODBUSV1.0及通訊范例源程序(VB)進行通訊測試。 用戶在應(yīng)用MODNUS之前應(yīng)該仔細(xì)閱讀電磁流量計MODBUS通訊協(xié)議,這樣上位機才能正確的讀、寫電磁流量計的相關(guān)參數(shù)。測試時,打開測試應(yīng)用程序MODBUSV1.0,如下圖: 如果RS232/RS485轉(zhuǎn)換器輸出是與多臺電磁流量計相連接,首先應(yīng)該注意的是: 1)必須將每一臺電磁流量計設(shè)置為不同的地址,地址范圍是01-32。地址如果重復(fù),通訊很容易出錯。 2)記住每一臺電磁流量計的通訊速度。通訊速度的波特率包括600、1200、2400、4800、9600、14400、19200。每一臺電磁流量計的通訊速度應(yīng)該盡量一致,這樣操作方便,也減少了出錯的幾率。 連接完畢后,操作如下: 如果連接的儀表中有一臺儀表地址是02,通訊速度是19200,則首先在測試畫面的左面,在通訊速度的列表框中選擇19200,在設(shè)備地址的列表框中選擇02;此時在右邊的空白框中就會有數(shù)據(jù)顯示。點擊顯示刷新按扭,會對右邊的數(shù)據(jù)進行瞬間清屏。 如果要對02號儀表的鍵盤參數(shù)進行讀、寫,可點擊左邊的讀/寫參數(shù)按扭,彈出下圖: 寫參數(shù)時,可在下拉列表框中選擇,或在文本框中輸入?yún)?shù)。參數(shù)下面有提示,輸入不能超過范圍。 6結(jié)束語 目前中國對于環(huán)境治理的重視程度日益增強,其中污水處理是重中之重。[3]在污水計量中起到關(guān)鍵作用的流量計就顯得非常重要,為了保證計量數(shù)據(jù)的穩(wěn)定性、可靠性和精確性,采用串口方式基于Modbus協(xié)議進行數(shù)據(jù)通訊的優(yōu)勢就尤為突出。這種串口通訊方式,必將在今后污水處理廠的自動化系統(tǒng)和信息集成系統(tǒng)中,應(yīng)用的更加廣泛。
以上內(nèi)容源于網(wǎng)絡(luò),如有侵權(quán)聯(lián)系即刪除!