精品国产人成亚洲区,久久久久亚洲av无码专,亚洲av首页在线,人人妻一区二区三区

嵌入MODBUS協(xié)議的渦輪流量計通信系統(tǒng)設計

渦輪流量計是采用先進的超低功耗單片微機技術研制的渦輪流量傳感器與顯示計算一體化的新型智能儀表 。文章針對流量計控制的實際要求,設計了基于 MODBUS協(xié)議的計量數(shù)據(jù)的通信系統(tǒng)。渦輪流量計(下位機)由德州儀器的 MSP430單片機實現(xiàn)數(shù)據(jù)的采集及存儲。上位機程序是通過 VisualStudio2012利用C#語言編寫的基于 MODBUS協(xié)議的 Windows應用程序。把上位機程序移植到嵌入式系統(tǒng)中,上下位機通過無線射頻技術實現(xiàn)通信,完成了對流量計的遠程控制以及計量數(shù)據(jù)的遠程采集與顯示。

渦輪流量計屬于速度式流量計,也被稱為葉輪式流量計。渦輪流量計是利用置于流體中的葉輪的旋轉角速度與流體流速成比例的關系,通過測量葉輪的轉速來反映通過管道的流體體積流量的大小,是目前流量儀表中比較成熟的高準確度儀表之一。隨著工業(yè)的發(fā)展以及計算機網(wǎng)絡的日趨完善,利用計算機作為上位機與渦輪流量計進行通信已經(jīng)是企事業(yè)單位計量數(shù)據(jù)管理的大趨勢。渦輪流量計的通信系統(tǒng)是渦輪流量計的重要組成部分。雖然渦輪流量計已經(jīng)提供了瞬時流量、累積流量、溫度、壓力等信息的采集,但是目前這些數(shù)據(jù)的讀取需要靠人工進行現(xiàn)場抄表。原始的人工抄表方式既耗費大量的人力物力,又無法避免手工抄寫和計算帶來的誤差,且對數(shù)據(jù)的分析處理也嚴重滯后,不利于及時發(fā)現(xiàn)問題、解決問題。因此,這種數(shù)據(jù)讀取方式具有易出錯、工作量大、準確率低等缺點。而且渦輪流量計大多安裝在一些危險的且無人看守的工作現(xiàn)場的密封管中,人工抄表難度大。

 

為了解決這些問題,本課題在 Windows平臺下利用VisualStudio2012編寫監(jiān)控程序并移植到嵌入式系統(tǒng)下,通過射頻技術與下位機進行無線通信,通過監(jiān)控程序的無線控制能夠實現(xiàn)渦輪流量計的開關、各種流量計參數(shù)的設定以及將采集到的數(shù)據(jù)傳輸?shù)角度胧街靼暹M行顯示。

1.系統(tǒng)總體方案

 

基于 MODBUS協(xié)議的渦輪流量計通信系統(tǒng)主要由上位機和渦輪流量計(下位機)通信部分組成。本設計主要完成上位機部分。基于 MODBUS協(xié)議編寫上位機程序并移植到嵌入式系統(tǒng)中,主要完成的任務有:上位機通過無線射頻技術完成了對渦輪流量計(下位機)的參數(shù)配置并控制下位機完成對現(xiàn)場流量、溫度、壓力等數(shù)據(jù)的自動采集與顯示。

 

2 .MODBUS協(xié)議

 

2.1 MODBUS協(xié)議簡介MODBUS規(guī)約是 MODICOM 公司開發(fā)的一個為很多廠商支持的開放規(guī)約,MODBUS協(xié)議是應用于電子控制器上的一種通用語言。通過此協(xié)議,控制器相互之間、控制器經(jīng)由網(wǎng)絡(例如以太網(wǎng))和其它設備之間可以通信。MODBUS協(xié)議已經(jīng)成為一個通用工業(yè)標準,有了它不同廠商生產(chǎn)的控制設備可以連成工業(yè)網(wǎng)絡進行集中監(jiān)控。此協(xié)議定義了一個控制器能認識使用的消息結構,而不管它們是經(jīng)過何種網(wǎng)絡進行通信的。它描述了控制器請求訪問其它設備的過程,如何回應來自其它設備的請求,以及怎樣偵測錯誤并記錄。它制定了消息域格局和內(nèi)容的公共格式。

 

MODBUS協(xié)議包括RTU 和ASCII等,并沒有規(guī)定物理層。此協(xié)議的數(shù)據(jù)通信采用了主/從方式,即主設備端發(fā)出信息請求,從設備端接收到正確的信息后就會返回數(shù)據(jù)到主設備端完成響應;同時主設備端也可以發(fā)消息直接修改從設備端的數(shù)據(jù),實現(xiàn)了雙向的讀寫。

 

2.2 MODBUS協(xié)議格式

 

MODBUS協(xié)議主要分為兩種傳輸模式:RTU 模式和 ASCII模式。根據(jù)需求可以自行選擇使用何種模式,包括串口通信的參數(shù)(端口號、波特率、校驗方式等)。在配置控制器的時候,同一個 MODBUS網(wǎng)絡上的所有設備都必須選擇相同的協(xié)議格式和串口參數(shù)。

 

當控制器設在 MODBUS網(wǎng)絡上并以 ASCII模式通信時,字符發(fā)送時間間隔可達1s而不產(chǎn)生錯誤,而且由于 ASCII格式擁有開始和結束標志,因此 ASCII協(xié)議的程序對數(shù)據(jù)包的處理能更加方便直觀,更加容易調(diào)試。這是流量計的通信系統(tǒng)選擇 ASCII協(xié)議作為通信格式的原因。

 

2.3 ASCII模式

 

當控制器設為在 MODBUS網(wǎng)絡上以 ASCII(美國標準信息交換代碼)模式通信,消息中每8Bit的字節(jié)都作為兩個 ASCII字符發(fā)送。這種方式的主要優(yōu)點是字符發(fā)送的時間間隔可達到1s而不產(chǎn)生錯誤。ASCII模式的消息幀的構成如表1。

編碼1.jpg

消息幀的地址域包含兩個字符(ASCII)或8Bit(RTU)??赡艿膹脑O備地址0...247(十進制)。單個設備的地址范圍是1...247。主設備通過將要聯(lián)絡的從設備的地址放入消息中的地址域來選通從設備。當從設備發(fā)送回應消息時,它把自己的地址放入回應的地址域中,以便主設備知道是哪一個設備作出回應。地址0用作廣播地址,以使所有的從設備都能認識。當 MODBUS協(xié)議用于更高水準的網(wǎng)絡,廣播可能不允許或以其它方式代替。

 

3 .通信系統(tǒng)硬件設計

 

3.1 通信系統(tǒng)硬件設計方案

 編碼2.jpg

通信系統(tǒng)的硬件設計方案如圖1所示。

上位機選用嵌入式開發(fā)板EM9280,它是一款面向工業(yè)自動化領域的高性價比嵌入式主板產(chǎn)品,其內(nèi)核 CPU 為工業(yè)級品質的i.MX283,系統(tǒng)已預裝正版

WindowCE6.0實時多任務操作系統(tǒng)。此外,EM9280

體積小,易攜帶,可以方便地帶到工業(yè)控制現(xiàn)場,方便工作人員的操作。

 

EM9280的標準配置中有RS-485通信接口,而標準的 MODBUS物理層就采用了 RS-485串行通信標準,通過485總線可以將通信數(shù)據(jù)發(fā)送給無線射頻模塊,并通過射頻信號將數(shù)據(jù)發(fā)送給下位機端射頻模塊,***后再通過485總線傳送給渦輪流量計,完成數(shù)據(jù)的傳輸。

 

無線射頻模塊采用PTR2000,無線收發(fā)一體數(shù)傳

 

MODEM 模塊 PTR2000芯片性能優(yōu)異,在業(yè)界居水平,它的顯著特點是所需的外圍元件少,因而設計非常方便。該模塊在內(nèi)部集成了高頻發(fā)射、高頻接收、PLL合成、FSK調(diào)制/解調(diào)、參量放大、功率放大、頻道切換等功能,因此是目前集成度較高的無線數(shù)傳產(chǎn)品。該器件采用了抗干擾能力較強的 FSK 調(diào)制/解調(diào)方式,其工作頻率穩(wěn)定可靠。它是目前低功率無線傳輸?shù)睦硐脒x擇。

 

3.2 渦輪流量計系統(tǒng)設計

 

系統(tǒng)主要由數(shù)據(jù)采集模塊、電源模塊、鍵盤顯示模塊、頻率輸出模塊、通訊模塊等組成。如圖2 所示,系統(tǒng)采集數(shù)據(jù)并經(jīng)過 A/D轉換成數(shù)字量進行存儲、顯示和傳輸。

 

考慮到實際應用,在硬件選擇方面盡可能保證性能的情況下多選擇低功耗芯片。微控單元選用德州儀器公司生產(chǎn)的 MSP430F149單片機,它具有良好的通用性和可擴展性,并且屬于超低功耗微處理器 。

編碼3.jpg

4. 通信系統(tǒng)軟件設計

 

4.1 軟件編程思路

 

上位機軟件在計算機上進行編寫,計算機的標準配置中通常只有 RS-232通信接口,可以通過很多標準控件完成 RS-232的數(shù)據(jù)通信。本次設計選用C#語言中的serialport控件在 VS2012編程環(huán)境下完成基于 MODBUS-ASCII協(xié)議的上位機通信軟件的設計。

 

serialport控件按照接收數(shù)據(jù)方式分為事件驅動方式和同步接收方式。由于該上位機軟件需要處理的接收上來的數(shù)據(jù)非常多,考慮到事件驅動方式需要大量的代碼去分析接收上來的數(shù)據(jù)屬于上位機監(jiān)測的哪部分數(shù)據(jù),因此,本設計采用同步接收方式去處理接收的數(shù)據(jù)。數(shù)據(jù)處理流程圖如圖3。

4.2 軟件仿真

 

(1)仿真環(huán)境搭建

 

仿真在一臺電腦上面完成,需要兩條 USB轉串口線,并把1號串口上的2針接2號串口上的3針,1號串口上的3針接2號串口上的2針,然后兩個串口的5針(接地端)互相連接即可。

編碼4.jpg

(2)仿真軟件

 

為了確保編程的 MODBUS-ASCII協(xié)議標準(稍作改動便可供其他標準渦輪流量計使用)準確可行,選用 MODBUSSlave軟件進行仿真。MODBUSSlave是 MODBUS子設備模擬工具,幫助 MODBUS通訊設備開發(fā)人員進行 MODBUS通訊協(xié)議的模擬和測試,用于模擬、測試、調(diào)試 MODBUS通訊設備。可以在32個窗口中模擬多達32個 MODBUS子設備!與MODBUSPol的用戶界面相同,支持功能碼:01,02,03,04,05,06,15,16,22和23,監(jiān)視串口數(shù)據(jù)。

 

(3)上位機功能

 

根據(jù) MODBUS———ASCII協(xié)議,本上位機完成的功能有:

 

“01”———讀取連續(xù)的布爾參數(shù)值(0/1);“03”———讀取保存的儀表各項參數(shù)值(Hex;)“04”———讀取儀表瞬時測量輸出值(Hex);“0F”———寫多個連續(xù)的布爾參數(shù)值(0/1);“10”———寫多個連續(xù)的寄存器參數(shù)值(Hex)。通過利用 MODBUSSlave軟件進行仿真測試上位機軟件。由于定時讀取下位保持機寄存器的數(shù)據(jù)是MODBUS協(xié)議中代表性的功能,因此在這里只演示03功能仿真,仿真結果如下。

 

功能碼03為定時讀取下位機中已經(jīng)存儲數(shù)據(jù)的功能,每隔一定的時間將會從下位機讀取一次數(shù)據(jù),如果沒有讀到將會連續(xù)嘗試5次,如果5次讀取都沒有結果則認定連接斷開,用戶可以再次點擊開始按鈕再次讀取下位機數(shù)據(jù)。

 編碼5.jpg

圖4為 Wince系統(tǒng)的觸摸屏和電腦上 MODBUSSlave軟件仿真合照。圖5是在 Wince系統(tǒng)上運行上位機軟件。單個寄存器只能存儲2個字節(jié)的數(shù)據(jù),因此對于大的數(shù)據(jù)來說需要多個寄存器來存儲。對于由單個寄存器存儲的數(shù)據(jù),如30002寄存器存儲的為瞬時流量的值,由于精度問題,當上位機接收到瞬時流量的數(shù)據(jù)時將會除以10則會得到。而對于大的數(shù)據(jù),如30004和30005存儲的是總累積流量的數(shù)據(jù),如圖  ,轉換的順序是:當上位機讀取30004和30005的數(shù)據(jù)時,數(shù)據(jù)存儲為002B0020和20分別為43和32的16進制表示),然后再將002B0020轉換成10進制,***后除以10取得精度,***終得到。其它數(shù)據(jù)的計算方式可參照以上兩種。

 

5.結束語

 

本系統(tǒng)主要由上位機、渦輪流量計、無線收發(fā)模塊等幾個部分組成。下位機采用C語言在 MSP430F149上編程,上位機采用C#語言在 VS2012環(huán)境下編程,上位機與下位機之間采用 RS-485進行通信,設計并編寫基于 MODBUS-ASCII協(xié)議的通信應用軟件。通過仿真實驗表明上位機完全按照 MODBUS-ASCII協(xié)議編寫并能夠通信成功,下位機采集到的數(shù)據(jù)可以通過自身的顯示模塊以及上位機窗口同時顯示,并且可以保存到下位機外擴ROM 中。本系統(tǒng)具有良好的可擴展性,通過簡單改寫***多可以拓展到32個子設備的流量等數(shù)據(jù)的監(jiān)測,對降低生產(chǎn)運營成本有重大意義。

 

 

 

 

相關新聞

返回頂部
0517-8699 6066 歡迎來電咨詢
Hello. Add your message here.