嵌入式水位監(jiān)測系統(tǒng)設計與實現
出處:馬福昌 楊少峰 發(fā)布于:2011-09-03 19:06:46
針對封閉式引水隧道內多點水位信息的實時、準確的采集,提出基于CAN總線的嵌入式水位監(jiān)測系統(tǒng)設計思想,集總線技術、單片機技術于一體,實現了對多點水位信息的采集、計算、儲存、發(fā)送等處理功能。使用iCAN協(xié)議,使水位監(jiān)測點可以對多點水位信息進行集中控制采集,可實時準確地掌握隧道內多點水位信息。
1 系統(tǒng)總體方案設計
1.1 系統(tǒng)基本結構
嵌入式水位監(jiān)測系統(tǒng)由數據監(jiān)測終端、上位機監(jiān)測服務器和CAN總線網絡組成,系統(tǒng)總體結構框圖如圖l所示。

系統(tǒng)采用分布式集中管理的結構,分為2層:1)第1層是數據采集終端層。數據采集終端通過水位傳感器對水位信息進行采樣,通過CAN總線接口與第2層進行通信;2)第2層是監(jiān)測管理層。第1層通過CAN總線延長通信距離,再經過CAN適配卡與第2層的監(jiān)測服務器相連。一臺監(jiān)測服務器可以管理多個數據采集終端。
在網絡中的監(jiān)測終端可以獨立的對傳感器進行數據采集、計算、儲存等,監(jiān)測服務器可以通過CAN總線和各個監(jiān)測點之間進行實時通信,接收監(jiān)測終端的水位信息向監(jiān)測終端發(fā)出查詢指令。通過iCAN協(xié)議實現監(jiān)測節(jié)點的分散監(jiān)測和集中管理。當系統(tǒng)需要增加監(jiān)測節(jié)點時,可以直接將其掛在CAN網絡上,對系統(tǒng)其他節(jié)點不會有任何影響。
1.2 監(jiān)測終端硬件電路設計
監(jiān)測終端的硬件結構框圖如圖2所示,主要包括微處理器、數據存儲電路、鍵盤和顯示電路以及CAN收發(fā)等電路。微處理器采用基于ARM7 TDMI核的32位RISC芯片LPC2368,其內置2路CAN控制器,通過外接CAN收發(fā)器可方便的進行CAN數據收發(fā)。傳感器輸出的信號經過濾波和調理轉換為所需要的電信號。

1.2.1 器件選型
為提高系統(tǒng)的實時性和可靠性,監(jiān)測終端選用可移植嵌入式操作系統(tǒng)的ARM7 TDMI內核的32位RISC芯片LPC2368。LPC2368是一款功能強大的超低功耗ARM7TDMIS內核的32位微控制器,支持72MHz工作頻率,片內有Flash 512KB,ROM 56KB,集成10/100全雙工Ethemet MAC,2個兼容CAN2.0A/2.OB的CAN控制器,帶RMII接口,其性能穩(wěn)定、功能強大,廣泛應用于協(xié)議轉換、通信、工業(yè)控制領域。1根AHB總線是完全不夠的,而LPC2368具有雙總線機制和DMA協(xié)處理機制。任何一根總線都可以通過總線橋與其余總線通信,消除了通信瓶頸。
1.2.2 CAN總線接口硬件設計
CAN是控制器局域網絡(Controller Area Network, CAN)的簡稱,是由研發(fā)和生產汽車電子產品著稱的德國BOSCH公司開發(fā)了的,并終成為國際標準(ISO118?8)。是國際上應用廣泛的現場總線之一。 在北美和西歐,CAN總線協(xié)議已經成為汽車計算機控制系統(tǒng)和嵌入式工業(yè)控制局域網的標準總線,并且擁有以CAN為底層協(xié)議專為大型貨車和重工機械車輛設計的J1939協(xié)議。近年來,其所具有的高可靠性和良好的錯誤檢測能力受到重視,被廣泛應用于汽車計算機控制系統(tǒng)和環(huán)境溫度惡劣、電磁輻射強和振動大的工業(yè)環(huán)境
CAN屬于現場總線的范疇,它是一種有效支持分布式控制或實時控制的串行通信網絡。較之目前許多RS-485基于R線構建的分布式控制系統(tǒng)而言, 基于CAN總線的分布式控制系統(tǒng)在以下方面具有明顯的優(yōu)越性:
通過CAN總線通信接口可使各監(jiān)測終端和監(jiān)控計算機通信,實現監(jiān)測終端的數據共享。CAN總線接口硬件電路如圖3所示。

LPC2368內部集成有2個兼容CAN2.0/2.0B的CAN控制器,只需增加一個CAN總線收發(fā)器就能滿足設計要求。CTM8251T是一款帶隔離的通用CAN收發(fā)器,該器件內部集成了所需的CAN隔離及CAN收、發(fā)器,它可以將CAN控制器的邏輯電平轉換為CAN總線的差分電平,將CAN總線差分電平轉換成邏輯電平,具有DC 2 500 V的隔離功能和CAN總線過壓保護功能,而且在某一節(jié)點掉電時不會影響總線。
1.2.3 嵌入式終端電源電路設計
嵌入式技術是國內普遍認同的嵌入式系統(tǒng)定義為:以應用為中心,以計算機技術為基礎,軟硬件可裁剪,適應應用系統(tǒng)對功能、可靠性、成本、體積、功耗等嚴格要求的專用計算機系統(tǒng)。
可以這樣認為,嵌入式系統(tǒng)是一種專用的計算機系統(tǒng),作為裝置或設備的一部分。通常,嵌入式系統(tǒng)是一個控制程序存儲在ROM中的嵌入式處理器控制板。事實上,所有帶有數字接口的設備,如手表、微波爐、錄像機、汽車等,都使用嵌入式系統(tǒng),有些嵌入式系統(tǒng)還包含操作系統(tǒng),但大多數嵌入式系統(tǒng)都是是由單個程序實現整個控制邏輯。
基于ARM內核的微處理器的嵌入式系統(tǒng)性能在很大程度上取決于電源電路的穩(wěn)定性和可靠性,因此設計穩(wěn)定可靠的電源非常重要。LPC23 68有數字電源輸入和模擬電源輸入2種,分別是+3.3 V和-3.3 V,另外CAN收發(fā)器的供電電壓為+5 V。系統(tǒng)電源采用LM2576系列穩(wěn)壓器,把外部直流電源穩(wěn)壓成+5 V電源,為CAN收發(fā)器提供電源。采用SPXlll7把+5 V電源穩(wěn)壓成2路+3.3 V電源,以提供LPC2368的數字和模擬電源,數字電源和模擬電源之間通過磁珠隔離。
2 系統(tǒng)軟件設計
系統(tǒng)軟件設計部分包括2方面:1)監(jiān)測終端軟件設計,主要是對傳感器的數據采集和處理,完成與上位機之間的數據通信功能;2)上位機軟件設計,主要包括CAN節(jié)點初始化、報文發(fā)送和報文接收。
2.1 監(jiān)測終端軟件設計
監(jiān)測終端軟件主要由啟動代碼、斷處理、實時操作系統(tǒng)、設備驅動和應用程序組成。啟動代碼完成啟動、初始化硬件、引導系統(tǒng)正常運行等工作。實時操作系統(tǒng)μC/OS-Ⅱ是系統(tǒng)運行的指揮中心,完成任務調度和資源分配等工作。設備驅動是操作系統(tǒng)上層應用軟件和下層硬件的聯(lián)系,本設計主要包括CAN控制器驅動、A/D采集驅動等。上層應用程序基于以上各個模塊,完成用戶要實現的各種功能,通常按功能分成多個模塊。

2.1.1 定時數據采集
定時數據采集模塊負責定時采集傳感器的信號。A/D轉換由定時器產生周期中斷標志觸發(fā),當采樣完1個周期后,由中斷服務程序發(fā)給Task_AD發(fā)送信號量,Task_AD收到信號量后,將數據進行相應的處理。
數據采集,又稱數據獲取,是利用一種裝置,從系統(tǒng)外部采集數據并輸入到系統(tǒng)內部的一個接口。數據采 集技術廣泛引用在各個領域。比如攝像頭,麥克風,都是數據采集工具。
被采集數據是已被轉換為電訊號的各種物理量,如溫度、水位、風速、壓力等,可以是模擬量,也可以是數字量。采集一般是采樣方式,即隔一定時間(稱采樣周期)對同一點數據重復采集。采集的數據大多是瞬時值,也可是某段時間內的一個特征值。準確的數據量測是數據采集的基礎。數據量測方法有接觸式和非接觸式,檢測元件多種多樣。不論哪種方法和元件,均以不影響被測對象狀態(tài)和測量環(huán)境為前提,以保證數據的正確性。數據采集含義很廣,包抱對面狀連續(xù)物理量的采集。
2.1.2 CAN收發(fā)子程序
CAN協(xié)議是建立在ISO的開放系統(tǒng)互聯(lián)模型的基礎上的,取其中的3層:物理層、數據鏈路層和應用層。物理層和數據鏈路層的功能可由CAN接口芯片實現,而應用層的功能則要靠應用程序完成。CAN總線接口通信模塊是接收和發(fā)送CAN總線數據。主要操作包括CAN控制器初始化和CAN總線上接收和發(fā)送數據的操作。
CAN控制器有3個獨立的發(fā)送緩沖寄存器,發(fā)送時要判斷緩沖空閑。本設計中,先判斷主發(fā)送緩沖區(qū),然后進行數據格式轉換,啟動發(fā)送數據。接收采用中斷方式。報文發(fā)送、接收數據流程如圖4所示。

2.1.3 iCAN協(xié)議報文處理
iCAN協(xié)議為CAN總線的應用層協(xié)議。該協(xié)議是基于CAN的內部通信協(xié)議,小巧、通信效率高,對硬件資源要求低,適用于小型系統(tǒng)。系統(tǒng)中的設備統(tǒng)稱為iCAN節(jié)點。iCAN協(xié)議定義的通信方式是“面向節(jié)點,基于連接”的通信方式?!懊嫦蚬?jié)點”是指源節(jié)點地址及目的節(jié)點地址均已給定,即對于任何一個報文參與通信的雙方是確定的?!盎谶B接”是指在網絡中任何一個參與通信的從站設備都必須和主站設備之間建立一個獨立的通信連接。這樣也為對任何一個設備的通信進行監(jiān)控提供可能。
iCAN協(xié)議使用了擴展幀格式CAN報文,對CAN報文的29位標識符和報文數據都做了詳細規(guī)定。報文標識符制定了數據通信中的源節(jié)點MACID和目標節(jié)點MACID,并指示了報文的功能以及所要訪問的資源。報文標識符被分為5個部分:SrcMACID(源節(jié)點編號)、De2stMACID(目標節(jié)點編號)、ACK位、FUNC ID(功能碼)、Source ID(資源節(jié)點編號)。
監(jiān)測終端要收發(fā)的數據必須符合iCAN協(xié)議報文的格式,先要把CAN的數據轉換成符合iCAN協(xié)議格式的報文,再通過CAN的首發(fā)子程序接收和發(fā)送。
2.2 上位機管理軟件設計
上位機是指人可以直接發(fā)出操控命令的計算機,一般是PC,屏幕上顯示各種信號變化(液壓,水位,溫度等)。下位機是直接控制設備獲取設備狀況的計算機,一般是PLC/單片機之類的。上位機發(fā)出的命令首先給下位機,下位機再根據此命令解釋成相應時序信號直接控制相應設備。下位機不時讀取設備狀態(tài)數據(一般為模擬量),轉換成數字信號反饋給上位機。簡言之如此,實際情況千差萬別,但萬變不離其宗:上下位機都需要編程,都有專門的開發(fā)系統(tǒng)
完成上述設計后,在計算機端還需要一套水位監(jiān)測系統(tǒng)管理軟件,以實現網絡數據采集、與數據庫的連接和數據實時查詢等功能。上位機軟件流程如圖5所示。

監(jiān)測終端采集傳感器信號,實時獲得水位數據并通過ZOPC_SERVER服務器傳輸到客戶端KingVIEW,同時KingVIEW作為服務器提供數據給SQL數據庫。在KingVIEW的圖形化界面上既可以顯示實時水位數據,又可以查看歷史水位數據。
3 結束語
實驗結果表明:該系統(tǒng)可通過1根雙絞線在通信速率為9 600 b/s的情況下,可在6 km范圍內實時監(jiān)測63個節(jié)點的水位信息。此嵌入式水位監(jiān)測系統(tǒng)可應用在基于ARM7的多點水位監(jiān)測的工廠、城市供水、隧道等場合。本系統(tǒng)可以實現水位信息采集的現場總線通信,使各節(jié)點連接在總線網絡上,實時獲取水位信息,方便數據庫的管理和更新,可進行數據庫的定點定時水位查詢。
版權與免責聲明
凡本網注明“出處:維庫電子市場網”的所有作品,版權均屬于維庫電子市場網,轉載請必須注明維庫電子市場網,http://www.hbjingang.com,違反者本網將追究相關法律責任。
本網轉載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網贊同其觀點或證實其內容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網站或個人從本網轉載時,必須保留本網注明的作品出處,并自負版權等法律責任。
如涉及作品內容、版權等問題,請在作品發(fā)表之日起一周內與本網聯(lián)系,否則視為放棄相關權利。
- ARM技術架構與應用開發(fā)實踐指南2026/1/6 10:40:19
- 嵌入式實時操作系統(tǒng)(RTOS)選型與移植技術指南2025/12/31 10:42:31
- 工業(yè)嵌入式系統(tǒng):通信接口技術選型與抗干擾設計實踐2025/12/15 14:36:53
- 深入解析嵌入式 OPENAMP 框架:開啟異核通信新時代2025/7/22 16:27:29
- 一文快速了解OPENWRT基礎知識2025/7/14 16:59:04









