国产麻豆精品国产三级在线专区-亚洲国产午夜福利久久久-午夜啪爽国产片精品99-久久久久久久国产精品电影

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

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

渦輪流量計屬于速度式流量計,也被稱為葉輪式流量計。渦輪流量計是利用置于流體中的葉輪的旋轉(zhuǎn)角速度與流體流速成比例的關(guān)系,通過測量葉輪的轉(zhuǎn)速來反映通過管道的流體體積流量的大小,是目前流量儀表中比較成熟的高準確度儀表之一。隨著工業(yè)的發(fā)展以及計算機網(wǎng)絡(luò)的日趨完善,利用計算機作為上位機與渦輪流量計進行通信已經(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)下,通過射頻技術(shù)與下位機進行無線通信,通過監(jiān)控程序的無線控制能夠?qū)崿F(xiàn)渦輪流量計的開關(guān)、各種流量計參數(shù)的設(shè)定以及將采集到的數(shù)據(jù)傳輸?shù)角度胧街靼暹M行顯示。

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

 

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

 

2 .MODBUS協(xié)議

 

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

 

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

 

2.2 MODBUS協(xié)議格式

 

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

 

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

 

2.3 ASCII模式

 

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

編碼1.jpg

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

 

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

 

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

 編碼2.jpg

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

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

WindowCE6.0實時多任務(wù)操作系統(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è)界居水平,它的顯著特點是所需的外圍元件少,因而設(shè)計非常方便。該模塊在內(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)設(shè)計

 

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

 

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

編碼3.jpg

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

 

4.1 軟件編程思路

 

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

 

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

4.2 軟件仿真

 

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

 

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

編碼4.jpg

(2)仿真軟件

 

為了確保編程的 MODBUS-ASCII協(xié)議標準(稍作改動便可供其他標準渦輪流量計使用)準確可行,選用 MODBUSSlave軟件進行仿真。MODBUSSlave是 MODBUS子設(shè)備模擬工具,幫助 MODBUS通訊設(shè)備開發(fā)人員進行 MODBUS通訊協(xié)議的模擬和測試,用于模擬、測試、調(diào)試 MODBUS通訊設(shè)備??梢栽冢常矀€窗口中模擬多達32個 MODBUS子設(shè)備!與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功能仿真,仿真結(jié)果如下。

 

功能碼03為定時讀取下位機中已經(jīng)存儲數(shù)據(jù)的功能,每隔一定的時間將會從下位機讀取一次數(shù)據(jù),如果沒有讀到將會連續(xù)嘗試5次,如果5次讀取都沒有結(jié)果則認定連接斷開,用戶可以再次點擊開始按鈕再次讀取下位機數(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ù),如圖  ,轉(zhuǎn)換的順序是:當上位機讀?。常埃埃埃春停常埃埃埃档臄?shù)據(jù)時,數(shù)據(jù)存儲為002B0020和20分別為43和32的16進制表示),然后再將002B0020轉(zhuǎn)換成10進制,***后除以10取得精度,***終得到。其它數(shù)據(jù)的計算方式可參照以上兩種。

 

5.結(jié)束語

 

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

 

 

 

 

相關(guān)新聞

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