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