【導讀】:將Modbus通訊協(xié)議移植到金屬管浮子流量計,使得檢測儀表更具智能化和網(wǎng)絡化,同時為實現(xiàn)數(shù)字化組網(wǎng)提供了可行接口。經(jīng)過調(diào)試表明移植后的Modbus通訊協(xié)議可以實現(xiàn)基本功能,取得了預期的效果。
摘要:隨著通信技術、集成電路技術的發(fā)展,傳統(tǒng)的現(xiàn)場檢測儀器的智能化和數(shù)字化程度在逐漸提升。現(xiàn)場總線作為開放化、數(shù)字化、多點通訊的底層控制網(wǎng)絡,成為了近代工業(yè)控制系統(tǒng)的熱門研究項目。將Modbus通訊協(xié)議移植到金屬管浮子流量計,使得檢測儀表更具智能化和網(wǎng)絡化,同時為實現(xiàn)數(shù)字化組網(wǎng)提供了可行接口。經(jīng)過調(diào)試表明移植后的Modbus通訊協(xié)議可以實現(xiàn)基本功能,取得了預期的效果。
浮子流量計是一種經(jīng)典的變面積式流量計,具有結(jié)構(gòu)簡單、直觀、壓損小、測量范圍大、運行可靠、可測中小流量及低雷諾數(shù)流量、維護方便、壽命長,對儀表前后直管段長度要求不高等優(yōu)點。金屬管浮子流量計可以適應高溫、高壓、強腐蝕、劇毒等多種苛刻環(huán)境,較少的可動部件、便于維護,解決了生產(chǎn)中的許多難題;贛odbus協(xié)議的金屬管浮子流量計,通過選擇低功耗的微處理器和通訊芯片,將具有開放協(xié)議的Modbus協(xié)議移植到傳統(tǒng)的金屬管浮子流量計中,使得儀表具有現(xiàn)場總線組網(wǎng)功能。
1.金屬管浮子流量計整體結(jié)構(gòu)設計
圖1是金屬管浮子流量計整體結(jié)構(gòu)圖。流量測量過程可概括為:磁阻傳感器將浮子位移信號轉(zhuǎn)化為電信號送給信號處理電路,經(jīng)過信號處理電路進行放大濾波后再經(jīng)由AD采樣模塊采樣,非常后送給微處理器處理,微處理器經(jīng)過一系列處理后得到當前流量信息,送給液晶模塊顯示或者通過Modbus模塊將信號遠傳給其他設備使用。
2.Modbus模塊硬件電路設計
Modbus通信協(xié)議有兩種串行傳輸模式:ASCII模式和RTU(遠程終端單元)模式,與這兩種模式對應的幀格式是ASCII幀格式和RTU幀格式。本文采用RTU幀格式,其數(shù)據(jù)幀格式為如表1所示。
一次發(fā)送的數(shù)據(jù)幀必須是作為一個連續(xù)的數(shù)據(jù)流進行傳輸。Modbus的RTU模式規(guī)定不同數(shù)據(jù)幀之間的間隔是3.5個字節(jié)通信時間以上(即起始位和結(jié)束符T1-T2-T3-T4)。
CRC校驗是為了防止傳送過程中傳輸錯誤,將自己計算的校驗碼與接收的校驗碼進行對比,相同則確認接收正確繼續(xù)解析報文,否則接收到的是誤碼并停止解析報文。
Modbus通訊模塊硬件電路比較簡單,采用MAXIM(美信)公司的Max3072芯片將數(shù)字信號轉(zhuǎn)換為差壓信號傳輸,圖2為Modbus通訊模塊硬件設計圖,通過USART與CPU進行數(shù)據(jù)交互。
Modbus模塊通過兩根串口線RX_485和TX_485與CPU相連,經(jīng)過MAX3072后轉(zhuǎn)化為差壓信號在485總線上傳輸,差壓信號幅值在200mV左右。
3.Modbus模塊軟件設計
Modbus通訊模塊功能是實現(xiàn)流量儀表與主機或其他設備的數(shù)據(jù)交互,儀表Modbus模塊的信號是通過RS485總線進行傳輸,其狀態(tài)轉(zhuǎn)換圖如圖3所示。程序初始化結(jié)束后,首先進入初始狀態(tài)。由于Modbus協(xié)議規(guī)定兩次幀數(shù)據(jù)傳輸?shù)臅r間間隔不能小于30μs,因此在進入初始狀態(tài)后會開啟定時器,30μs以后進入就緒狀態(tài)。有數(shù)據(jù)傳輸時,進入接收狀態(tài),幀數(shù)據(jù)接收完成后進入幀解析封裝狀態(tài),若接收數(shù)據(jù)出錯則進入錯誤狀態(tài),封裝后再進入發(fā)送狀態(tài),若數(shù)據(jù)正確則直接完成封裝進入發(fā)送狀態(tài),數(shù)據(jù)發(fā)送完成后則再次進入初始狀態(tài)。Modbus模塊軟件設計流程圖如圖4所示。
4.系統(tǒng)調(diào)試
Modbus通訊模塊驗證實驗的目的是驗證流量儀表能否通過485總線實現(xiàn)流量信息與控制臺的信息交互。本文應用Modbus調(diào)試助手軟件模擬控制臺與Modbus模塊進行通信,驗證儀表Modbus模塊能否實現(xiàn)正常通訊。圖5是Modbus模塊與控制臺通信的電路連接圖。
為驗證Modbus模塊通訊的正確性,本文通過Modbus調(diào)試助手往Modbus模塊下發(fā)數(shù)據(jù),若能返回正確數(shù)據(jù),則證明通訊成功。圖6為通過Modbus調(diào)試助手與Modbus模塊通訊圖。以03(0x03)命令為例進行調(diào)試的測試結(jié)果圖,03命令的功能是讀取特定寄存器的值。串口調(diào)試助手下發(fā)的數(shù)據(jù)為“010300000001840A”,其中01為設備地址,03為命令碼,0000為起始地址,0001為寄存器數(shù)量,840A為CRC校驗碼。Modbus回發(fā)數(shù)據(jù)為“0103020810BE48”,其中01為設備地址,03為命令碼,02為字節(jié)數(shù),0810為寄存的值,BE48為CRC校驗碼。測試結(jié)果表明,Modbus模塊能正常工作。
5結(jié)束語
選擇低功耗的微處理器和通訊芯片,將具有開放協(xié)議的Modbus協(xié)議移植到傳統(tǒng)的金屬管浮子流量計中,實現(xiàn)了硬件平臺設計和軟件平臺設計,調(diào)試結(jié)果表明,移植后的Modbus協(xié)議能夠與控制臺實現(xiàn)實時通信,使得儀表具有現(xiàn)場總線組網(wǎng)功能。
以上內(nèi)容源于網(wǎng)絡,如有侵權(quán)聯(lián)系即刪除!