1 引 言
隨著電子導航技術的不斷進步,如何準確而快速地獲取運動物體的行駛信息就成為導航產品設計和開發所關注的焦點問題。目前實現導航定位技術的主要途徑有全球定位系統[1](Global Positioning System,GPS)、航位推算技術[2](Dead Reckoning,DR)以及地圖匹配[3](Map Matching,MM)三大技術。
航位推算技術是一種傳統的跟蹤導航算法,它采用里程傳感器和航向傳感器來推算運動目標軌跡,誤差較大。地圖匹配算法復雜,耗費軟硬件資源且實時性難以保證。而GPS技術在智能交通運輸領域的應用日趨廣泛,且十分成熟。
筆者在工作中做了如下嘗試:以低成本、低功耗、高可靠性和較好的交互性為基本原則,用C8051F020作為核心處理器,設計了運動平臺控制器;開發符合Windows規范的監控軟件,提供友好的人機界面;利用微功率無線數傳模塊完成上位機軟件與單片機之間的通信。自定義了通信協議,提高數據通信的準確性和穩定性。
2 系統硬件結構
本系統硬件總體結構如圖1所示。系統采用兩級微機控制結構,即上位機是PC機,下位機是C8051F020單片機。單片機負責數據采集、轉換、處理和電機控制,同時把采集到的信息打包發送給PC機變換、處理和顯示。上位機與單片機之間的通信通過微功率數傳電臺模塊實現。
C8051F020的兩個串口分別用來連接GPS和數傳電臺。定時器/計數器T2配合UART0產生9600bps波特率與數傳模塊連接,完成與PC機的通信;定時器/計數器T4配合UART1產生4800bps波特率接收GPS信號。用兩路可編程定時/計數器(PCA)產生16位的PWM分別驅動電機和舵機。
運動平臺的初始坐標和方位角由GPS獲得。iTrax 02[5]型接收機是一款超小體積、低功耗的GPS OEM板,其尺寸僅為26mm×26mm×4.7mm,休眠功耗僅為80uW,連續導航時也不超過110uW,并且從休眠到導航定位僅為8s,具有極快的信號獲取引擎。iTrax 02帶有2個UART接口,可接收NMEA0183格式的數據和二進制的iTack格式數據。其端口2用來輸入差分修正信息和輸出衛星的原始測量信息而端口1用來輸入設定語句和輸出定位語句。C8051F020單片機具有全雙工串行通信能力。兩者采用最簡單的零調制的三線制進行串行通信,這是進行全雙工所需要的最少數目的線路。因而只需將C8051F020的串行口經TTL電平與EIA電平轉換后,再與iTrax 02板串行口1對應連接。系統采用11.059 MHz晶振。
無線通信模塊選擇ZT-TR43C型微功率無線電臺,該模塊適用于低成本、小型化場合的無線數據收發。
3 系統軟件設計
3.1自定義通信協議
對于監控軟件與單片機之間的通信,能夠實現收發真實再現的關鍵在于PC機與單片機之間的通信協議是否滿足要求。經過需求分析,制定了如圖2所示的單片機向PC機發送的通信協議。
3.2軟件實現
本系統軟件分為兩個部分,一部分是單片機控制軟件,在Keil C51環境下開發,采用模塊式結構設計,包括控制模塊、采集模塊等,主要模塊流程圖如圖4所示。
另一部分是PC機操作軟件,使用Microsoft Visual C++環境開發,采用面向對象技術設計,基于對話框結構,其軟件結構框圖如圖5所示。微軟提供的MScomm控件封裝了Windows提供的與串口操作相關的大多數API函數,便于實現串口數據的收發,且符合面向對象的編程規范。MScomm控件支持兩種訪問串口的方式:查詢方式和事件驅動方式。事件驅動通訊是處理串行端口交互作用的一種非常有效的方法。在許多情況下,在事件發生時需要得到通知,如在串口接收緩沖區中有字符,或者Carrier Detect(CD)或Request To Send(RTS)線上一個字符到達或一個變化發生時。在這些情況下。可以利用MScomm控件的OnComm事件捕獲并處理這些通訊事件。OnComm事件還可以檢查和處理通訊錯誤。查詢方式實質上還是事件驅動,但在有些情況下,這種方式顯得更為便捷。在程序的每個關鍵功能之后,可以通過檢查CommEvent屬性的值來查詢事件和錯誤。如果應用程序較小,并且是自保持的,這種方法非常有效。本文選擇兩者結合的方式完成串行通信程序設計。
4 結束語
采用C8051F020單片機作為核心處理器,具有體積小、功耗低、便于維護的特點。開發符合Windows風格的監控軟件具有人機界面友好,便于操作的優點。由于選用無線數傳電臺作為通信手段,因此使用的場合較為廣泛。
該系統還可用于其它串行通信或遠程監控場合。
5 參考文獻
[1] 魏 宏. 城市軌道車輛組合定位導航系統的研究與開發[D]. 吉林:吉林大學, 2003
[2] 李本亮. GPS車載導航系統中的航位推算技術[Z]. 北京:菱科電子技術(中國)有限公司研發中心, 2005
[3] 王仁禮, 陳天澤, 王冬紅. 智能型地圖匹配綜合算法的研究[J]. 計算機輔助設計與圖形學學報. 2003.
[4] 張迎新, 雷文, 姚靜波等. C8051F系SOC單片機原理及應用[M]. 北京:國防工業出版, 2005.
[5] 聞新, 劉寶忠, 林聞曉. MCS-51與GPS-OEM板串行通信技術及實現[J]. 無線電電子學與電信技術.
2006.04.