安徽理工大學電氣與信息工程學院 吳柳 蘇文芳
引言
監控系統是為了滿足正常工廠生產或日常生活中對人、設備或相關區域進行監督、控制的系統,是各種重要的場所如銀行、工廠生產區等為了正常運營所必需的系統。工廠生產中,生產或其他廠區有很多分布廣泛的現場數據信息需要采集并傳送到監測站中進行統一監控及管理。現在對于如何建立實時性強、覆蓋面廣、靈活性好的遠程數據采集監控系統,用來滿足相關場所的正常運行,變為一個重要的問題。無線監控系統在操作員不在時能夠知道現場情況,檢測數據是否異常并報警。
系統整體構架
本系統利用3G網絡進行數據通信。總體上是各個溫度采集模塊(溫度傳感器)將數據通過RS485傳到ARM9中,ARM9通過3G通信模塊(MC8630)能發送溫度數據或者報警等信息到管理員的手機上。系統的總體架構如圖1所示。
圖1 系統總體架構圖
系統硬件開發平臺
本文的硬件系統包括嵌入式微處理器、鍵盤、LCD顯示模塊、RS485串口、A/D轉換模塊、溫濕度傳感器,3G模塊等。
整個遠程終端主要有溫濕度傳感器模塊(HG04-LTM8690)、以ARM926EJ-S為處理器的開發板、320×240點陣LCD顯示屏、3G通信模塊(MC8630)、電源等幾部分組成。圖2即為本系統的硬件平臺框架圖。
圖2 系統的硬件平臺框架圖
硬件模塊
ARM9處理器
ARM926EJ-S處理器具有一個采用Jazelle技術的增強型32位RISC CPU、靈活的指令和高速數據緩存、緊密耦合內存(TCM)接口和內存管理單元(MMU)。它還提供單獨指令和數據AMBA AHB接口,適合基于多層AHB的系統。ARM926EJ-S處理器可執行ARMv5TEJ指令集,其中包括功能得到增強的16×32位乘法器,可進行單周期MAC運算、16位定點DSP指令、可增強多個信號處理應用程序的性能并支持Thumb技術??赏ㄟ^ARM處理器代工廠計劃和DesignStar計劃獲得實現硬件的ARM926EJ處理器。
溫濕度測量模塊
HG04-LTM8690是一種無線溫濕度測量模塊,可測量最多16個溫度點和一個溫濕度點。它采用電池供電,定時采集,利用無線通訊技術將數據傳回監控中心。它采用密封盒設計,防護等級達到IP68級別,可有效防塵、防水及防止腐蝕性氣體侵入,現場安裝方便。
液晶顯示模塊
本系統選用JRD320240B液晶顯示模塊來顯示相關的數據或其他信息。JRD32O24OB的工作電壓為3.3V,液晶的對比度可以通過編程來調節。液晶顯示控制器的主要工作是將ARM9存儲器的緩沖區中的數據傳送到外部液晶顯示驅動器,并產生液晶顯示控制信號。JRD320240B的內部控制器RA8835可以很方便地完成對液晶顯示器的控制。
按鍵模塊
按鍵輸入是最常用的嵌入式輸入設備,按鍵的結構通常有兩種形式:線性式和矩陣式。線性鍵盤是由一些單獨的按鍵組成,每個按鍵單獨與微處理器的一個I/O口相連接,是一對一的關系。這樣,線性鍵盤就只適用于按鍵少的場合。而矩陣按鍵是按照i行j列排列的,每個按鍵占據行列的一個交點,需要的I/O口數目是i+j。由于本系統需要用到的按鍵不多,所以采用了線性式按鍵。
3G通訊模塊
MC8630是一款基于CDMA2000 1X/EVDO Rev.A版本的3G通信模塊,適合于中國電信的3G移動服務,下行通信速度為3.1Mbps,上行通信速度為1.8Mbps。由于其具有語音、短信和高速數據業務等功能,可以廣泛應用于高速實時數據傳輸。
下位機設計
下位機的設計主要完成的是數據的采集、發送,整個溫度采集系統的人機界面設計以及和上位機的通信等功能。主要分為幾個部分:人機界面設計部分(液晶顯示的設計和鍵盤控制的設計),數據的采集,與上位機的通信、接收與發送。
圖3 下位機軟件流程圖
數據采集的設計與串口傳輸
對無線溫度監控系統數據采集的設計和實現可分為人機界面的設計、數據采集的通信協議的制定、數據采集和數據采集的串口實現等幾個部分。
系統采集的現場數據通過串口發送到ARM9。數據的顯示及對系統的操作,需要用到人機交互界面。人機交互界面主要包括圖形圖像界面和鍵盤操作界面兩部分。鍵盤輸入部分主要用于實現對圖形圖像界面及系統終端的輸入控制。
本系統有2個符合16C550工業標準的異步串行口UART0和UART1,即有兩個異步串行I/O端口。UARTO和UART1的發送器和接收器包含16個字節的FIFO數據緩沖區和移位寄存器,內置波特率發生器。對將要被發送的數據,首先得把它寫入FIFO數據緩沖區,并復制到發送移位寄存器,然后將它從數據輸出端口進行移位輸出即可。將要被接收的數據是從數據接收端口移位輸入到移位寄存器,然后復制到FIFO中。
圖4 串口通信相關程序流程圖(a)
圖4 串口通信相關程序流程圖(b)
從現場采集的數據,如何根據串口通信協議處理收到的上位機的數據、如何給上位機發送數據,這些在很多嵌入式系統中都包含的UART(Universal Asynchronous Receiver Transmitter通用異步收發器)通信,UART單元提供了兩個獨立的異步串行I/O端口,支持的最高波特率為115.2kbps。UART模塊包含波特率發生器、發送器、接收器和控制單元。波特率發生器以MCLK(主時鐘)作為時鐘源。
本系統每隔500毫秒就查詢一次有沒有需要傳送的數據到上位機或從上位機發送的命令。如果檢測到現場溫度低于18℃或者高于35℃,系統就會向用戶發送相應的報警信息,用戶也可以在任何時候發送命令詢問現場的溫度和濕度。
結束語
本文以ARM926EJ-S為微處理器,介紹了無線溫濕度監控系統相關硬件,下位機人機界面軟件的設計思想,及數據的采集、發送以及和上位機的通信,系統的功能等。無線遠程監控系統如果要代替有線監控系統還需一段時間,它們會向智能化、小型化、簡便化方向發展,能對遠程終端進行各種各樣的控制,能夠實現真正意義上的遠程無線監控。同時論文還存在很大的發展空間,隨著嵌入式ARM微處理器的發展,以后會有更高性能的嵌入式微處理器,可以同時采集更多的數據,處理并發送到上位機;或采用觸摸顯示屏代替液晶顯示屏進行數據的輸入與顯示,可以更加直觀與方便地進行操作等,因此課題可以繼續做深入研究。