無線數據采集系統的應用范圍非常廣泛,涉及電力、水利、交通和安防等行業。通用分組無線業務GPRS(General Packet Radio Service),由Nokia、Ericsson等公司開發。該技術建立在GSM網絡的基礎上,被稱為2.5代移動通信技術,它將無線通信與Internet緊密結合,是一種先進的、全新的無線網絡承載手段,具有獨特優勢。隨著GPRS技術在移動通信領域的發展,為數據采集傳輸及監控提供了一種新的高性價比的數據通信方案。 同時,嵌入式系統以其高效的開發、低廉的成本、方便的使用和維護等優點受到信息業界的廣泛推崇。嵌入式系統在工農業控制領域主要用于對現場的監視和控制。而傳統監控產品的設計目標往往為保護大型企事業單bit的安全,不同程度地使用了凌亂的布線和較大型的硬件,其造價高昂、安裝繁瑣、操作復雜,必須有人長時間專門值守,且不具備遠程控制功能。這些缺點使它們很難走進中小型工農企業和家庭中。因此開發一種小型的、模塊化的、無須專人隨時維護、能夠方便地使用無線網絡進行操作的采集監控系統,已成為必然的趨勢,并擁有巨大的需求。隨著系統復雜度的提高,應用嵌入式操作系統是一個流行的趨勢。本文方案是采用ARM核的微控制器LPC2292、嵌入式實時操作系統μC/OS-II、明基的GPRS芯片M23和模擬式溫濕度傳感器CHTM-02A相結合的一種數采方案。 1 LPC2292、M23和CHT M-02A簡介 LPC2292是PHILIPS公司生產的一個支持實時仿真和跟蹤的32 bit ARM7內核的微控制器,片內帶有16 kB的靜態RAM和256 kB的高速Flash存儲器,128 bit寬度的存儲器接口和獨特的加速結構使32bit代碼能夠在最大時鐘速率下運行。滿足了系統對存儲空間的要求, 不需要擴展存儲空間,減少了系統的能耗以及成本。LPC2292運算速度快、精度高、功耗低,且片內外設豐富(如UART、10bitADC、PWM、CAN控制器等),由于內置了寬范圍的具有16B接收FIFO和16 B發送FIFO,結構及寄存器符合16C550工業標準串口通信接口,也非常適用于通信網關、協議轉換器、嵌入式modem以及其他各種類型的應用。 明基M23是內置TCP/IP議協的900/1800/1900 三頻GPRS模塊。其設計及開發符合ETSI GSM Phase2+標準。發送頻率為1 850 MHz~1 910 MHz;接收頻率1 930 MHz~1 990 MHz;工作狀態溫度范圍為-20℃~+55℃。它具有話音/數據/傳真/短信息功能。其中GPRS數據特性:GPRS Class4(Class10)代碼為CS1~CS4;短信息服務功能特性:文字及PDU,點對點(MT/MO),小區廣播。 CHTM-02A是西博臣科技有限公司生產的模擬式溫濕度傳感器,其測溫元件是LM35,輸出電壓為0~1 V。其濕度敏感元件是高分子濕敏電阻“CHR-01”, 供電電壓為5 V(±5%),工作溫度范圍為0~60℃,濕度變送范圍為0~100%RH,精度±5%,輸出信號為0~3 V。該溫濕度傳感器性價比較高,且使用方便,可廣泛適用于工業機械、電氣自動化、氣象和農業等行業。 2 硬件設計 總體硬件框圖如圖1所示。 2.1 GPRS接口電路設計 M23與LPC2292之間的接口設計較易實現。使用UART1控制GPRS模塊,GPRS所需的+5 V、+12 V電源和地,直接由MCU開發板提供。M23模塊正常工作需要正確連接GPRS天線。 2.2 CHTM-02A溫濕度傳感器接口電路設計 LPC2292和 CHTM-02A的接口部分只需要4根線,其中第1根接5V電源;第2根接地;第3根接LPC2292的一路A/D輸入,本設計中使用AIN1,即P0.28引腳,測量環境濕度;第4根接LPC2292的另一路A/D輸入P0.27,測量環境溫度。 3 軟件設計 本系統軟件設計可分為數采終端(測量節點)和控制中心兩大部分,它們構成一個最基本的點對點網絡。當然,需要這個系統可以方便地擴容,包括數采終端的數量和可采集信息的種類。且每個數采終端由其唯一的SIM卡號區別身份,組網便利。 本設計中控制中心可以是任意一個GPRS終端,例如手機或者連接有GPRS終端的電腦。而數采終端要完成實現GPRS編程控制、環境參數的采集、預處理等工作。采用常規的前/后臺系統(foreground/background)編程極其復雜,選擇嵌入式實時操作系統μC/OS-II作為軟件系統平臺,將各個處理模塊分成單獨的任務,能夠較好地完成系統需求。詳細的移植可參考文獻。在數采終端軟件系統設計中,涉及到的主要任務有:LPC2292初始化、GPRS模塊初始化、通信、采集傳感器信息、看門狗等12個任務。 3.1 數采終端主任務設計 數采終端有兩種工作模式:一是由控制中心控制,數采終端判斷控制中心GPRS地址(本設計由唯一的手機號碼確定)和讀取溫濕度值,在數采終端與控制中心建立鏈接之后,數采終端將適時地通過無線網絡把溫濕度數據信息傳輸給控制中心。數采終端在整個系統中起到一個采集、預處理數據和發送的作用。實際測試發現,當SIM卡上存有過多短信息時,會干擾系統正常通信。故程序中在判斷完每個新收到的短信后將其刪除。二是定時發送節點信息,此模式相對簡單一些。下面主要分析第一種工作模式。 第一種工作模式下主程序流程圖如圖2所示。 3.2 GPRS初始化任務設計 在對GPRS模塊操作前,要運行GPRS模塊進行初始化。它包括復bitGPRS模塊、讀緩沖區大小和設定信息中心號碼等。上面介紹的每一步操作都有相應的AT指令,程序中執行指令的步驟是一樣的。LPC2292通過串口1使用AT指令操作GPRS模塊,例如AT+CMGF=1:設置為文本模式,不支持中文。 常用的與短信息操作相關的AT指令有: AT+CNMA:新信息確認應答。 AT+CNMI:新信息指示。這個命令選擇如何從網絡上接收短信息。 AT+CMGR:讀短信。信息從+CPMS命令設定的存儲器讀取。 AT+CMGS:發送信息。 AT+CMGD:刪除短信息。刪除一個或多個短信息。 AT+CSCA:短信服務中心地址。 GPRS初始化至關重要,如果初始化不成功,將直接影響下面程序的執行。為提高系統的穩定性,在設計中把相關部分都封裝成帶返回參數的函數形式。 設定信息中心號碼是初始化的關鍵,不同地區的信息中心號碼是不同的,這一點要引起注意。并且信息中心號碼只需要設置一次就可以了。中國移動短信中心服務號碼的編碼規則是:+861380 + 開戶地四bit長途區號 + 500,長途區號不足四bit的在后面加"0"補齊(如北京為+8613800100500,四川綿陽的信息中心號碼是+8613800816500)。 3.3 數據采集任務設計 前面已經介紹過,數據采集包括溫度和濕度的采集,選用的溫濕度傳感器是CHTM-02A,該器件的轉換速度快,線性度非常理想。圖3為采集濕度的流程圖。 在濕度采集程序流程圖中,提到了初始化,它包括對LPC2292的 A/D轉換器和I/O的初始化。MCU從傳感器接收的是與溫濕度的值相應的電壓值,根據傳感器使用手冊將接收到的電壓轉換成所需要的數字量。為了得到更加接近于現實的真實值,使用增強型均值濾波,即將采集的8次外部電壓值去除最大和最小值后取平均值,這個平均值即為濾波后的電壓。溫度采用相似的方式進行處理。 該傳感器可測量溫度范圍為0~100℃,濕度測量的范圍為0%RH~100%RH,當出現異常情況時,程序中做出相應的處理。 3.4 控制中心程序設計 控制中心可以是任一GPRS終端,本設計為手機。在系統中有發送控制命令和接收測量節點采集的環境信息的作用。 本系統綜合運用了無線通信技術、MCU控制技術、溫濕度傳感器技術和嵌入式實時操作系統μC/OS-II,以模塊化完成,實現了溫濕度采集模塊化、無線通信模塊化。通過對該數采系統的應用,發現GPRS模塊工作正常,溫濕度值傳輸準確、穩定。以溫濕度計作為標準,與測試所得的溫濕度值作對比,誤差小:常溫下濕度±5RH%,溫度±0.5℃。且系統硬件接口電路簡單,軟硬件系統穩定,模塊化程度高,具有很好的可操作性和維護性。 |