嵌入式ARM處理器在M2M終端總體設計中的應用
引言
目前,對輸油管道、電力裝置、油井等進行遠程監控主要采用人工巡邏的方式,這種方式存在實時性差、成本高、浪費人力資源、無法對環境惡劣的地區進行監控、可能出現誤報等缺點。隨著工業領域現代化水平的提高和通信技術的發展,這種生產方式亟待得到改善。
M2M是指應用無線移動通信技術,實現機器與機器、機器與人之間數據通信和交流的一系列技術及其組合的總稱。GPRS具有覆蓋地域廣、通信距離遠、網絡可靠性高等優點。隨著GPRS的推廣和應用,以及基于GPRS的M2M產品的推出,采用GPRS技術來解決上述問題成為一種較好的方案。
嵌入式系統是當前國內外研究的熱點之一。采用嵌入式系統技術設計一種可以解決遠程監控領域數據傳輸問題的通用終端是必要的。本文重點闡述了基于嵌入式ARM處理器,結合GPRS模塊MC35i設計M2M終端的總體設計方案。
系統硬件組成
M2M終端的硬件核心為GPRS通信模塊MC35i和ARM處理器AT91SAM7S64,它們的接口設計如圖1所示。M2M終端對外留有2個RS232串口,通過發送預先定義好的數字指令,可以實現M2M終端的啟動、關閉等。當M2M終端與Internet建立連接后,只需把封裝好的數據通過串口發送到M2M終端,由其完成向監控中心發送數據的功能。
GPRS模塊
GPRS模塊是實現M2M終端平臺的核心部分,設計中采用西門子公司的GPRS通信模塊MC35i。本模塊包括CPU接口電路、SIM卡接口電路和MC35i外圍電路,MC35i支持GPRS的四種編碼協議CS-1、CS-2、CS-3和CS-4,理論上最高傳輸速率可達172kbps。它具備完整的GSM和GPRS功能,可以廣泛應用在相關的M2M數據傳輸平臺上。MC35i提供了標準AT命令界面和一個RS232接口,用于與外部應用系統連接。
本數據傳輸平臺處理器采用ATMEL公司生產的32位ARM7TDMI體系結構處理器AT91SAM7S64,該芯片采用3.3V電壓進行供電,支持低功耗模式,它具有64kB的FLASH和16kB的SRAM,具備豐富的外圍設備資源,其中包括3個UART通信串口和1個USB2.0全速設備,利用本芯片完成系統功能的同時可以實現系統的高性價比。CPU模塊硬件電路包括:時鐘電路、JTAG接口電路,RS232接口電路等。
電源設計
系統采用9V電源進行供電,經過TI公司LDO降壓芯片UA7805進行一次降壓,使電壓降至5V。GPRS模塊MC35i要求的電源電壓為3.3V~4.8V,而且要求電源必須能夠提供2A的尖峰電流,因此需要將5V電源通過一個0.7V壓降的肖特基二極管1N5819后輸入MC35i,同時需要接入耐壓25V、1000μF的電解電容,以為MC35i提供足夠的尖峰電流,將5V電源經過TI公司電源模塊REG1117-3.3將電壓降至3.3V,為微處理器及其他芯片提供電源。
嵌入式軟件設計
采用嵌入式實時操作系統可以更合適、有效地利用CPU的資源,簡化應用軟件的設計,縮短系統開發時間,更好地保證系統的實時陛和可靠性。FreeRTOS是在Sourceforge網站上發布的微內核嵌入式實時操作系統,它是完全免費的操作系統,具有源碼公開、可移植、可裁減、調度策略靈活的特點。作為一個輕量級的操作系統,FreeRTOS提供的功能包括:任務管理、時間管理、信號量、消息隊列、內存管理等
FreeRTOS支持優先級和輪換時間片兩種調度算法,可根據用戶需要設置為可剝奪型內核或不可剝奪型內核。本文基于FreeRTOS給出了M2M終端實現PPP協商以及數據封裝傳輸的軟件設計方案。
基于狀態機設計GPRS連接任務
由于網絡和信號較弱等原因,可能導致節點與GPRS網絡連接的失敗,采用基于狀態機的結構設計方法對各個階段產生的錯誤進行處理,能保障模塊與GPRS網絡建立可靠連接。程序狀態機如圖2所示。
閑待命態:此時MC35i處在離線關閉狀態,節點處在低功耗模式下,系統復位后處于此狀態。
GPRS參數設置態:處理器控制啟動MC35i模塊后進入此狀態,通過發送AT命令對模塊及必要的網絡參數進行設置,為使各個參數均設置成功,軟件設計中增加了容錯重試機制。
評論