基于AT89C52的汽車駕駛模擬器單片機系統設計
汽車駕駛模擬器是一種能正確模擬汽車的駕駛操縱動作,獲得實車駕駛感覺的仿真系統。目前的汽車駕駛模擬器集合了傳感器、計算機三維實時動畫、計算機接口、人工智能、數據通信、網絡、多媒體等多種先進技術,主要用于駕駛員的培訓,也可以對微觀交通進行仿真,對汽車的控制特性進行研究[1]。汽車駕駛模擬器具有安全性高、再現性好的特點。利用駕駛模擬器來進行研究和訓練,可方便地模擬各種道路環境、天氣狀況,分析汽車的技術性能指標,從而可以節省大量的自然資源,具有很高的經濟價值[2]。
在汽車駕駛模擬器中,傳感控制系統的性能直接影響到整個汽車駕駛模擬系統的交互性和實時性,是衡量汽車駕駛模擬器實用性能的重要指標。傳感控制系統主要由各種傳感器、數據采集和處理系統、以及接口電路等組成。其中,數據采集和處理系統是整個傳感控制系統的核心。目前,很多汽車駕駛模擬器采用數據采集卡實現操縱數據的采集,這種基于數據采集卡的數據采集和處理系統成本相對較高,采集模擬量時不是很穩定,必須在仿真程序中采用專門的算法對模擬量進行處理,同時接口的數量也很有限,這為后續的開發帶來了一些困難。而基于單片機的數據采集系統雖然開發周期較長,但成本相對較低,接口的可擴展性好,同時,模擬量和開關量的預處理工作也可以由單片機來完成,完全可以滿足模擬器系統的交互性和實時性要求。下面介紹汽車駕駛模擬器單片機系統的設計思路。
1系統的工作原理
在模擬汽車運動時,傳感器采集駕駛員的操縱數據,通過接口電路對這些信號進行放大和濾波,并對其中的模擬信號進行A/D轉換,最后單片機系統將控制信號通過RS-232接口傳送給主控計算機。在仿真程序中,計算機根據控制信號、汽車的運動狀態、駕駛操作規則等來控制視景系統、音響系統、儀表系統、評價系統。利用單片機系統驅動程序中相應的功能函數,可以將單片機系統采集的信號轉換為控制汽車運動狀態和位置的參數。當駕駛員進行模擬駕駛時,單片機系統采集的數據會根據駕駛員的駕駛操作實時地發生變化,從而實現對駕駛模擬器視景系統中汽車運動狀態和位置的控制,控制系統的精度由仿真程序內部的算法保證。
圖1 系統的工作流程
汽車駕駛過程的基本操縱部件是方向盤、油門、離合器、剎車和檔位,另外還有點火開關、轉向指示燈等輔助性操縱部件。與實車駕駛相同,這些操縱部件的協同工作可以對虛擬視景中的汽車模型進行控制,駕駛訓練者與視景的變化是實時的、交互的。駕駛訓練者對操縱部件的操作通過傳感器被系統感知后,系統經過處理和運算得到汽車模型的控制參數,最后根據這些參數控制視景系統的渲染輸出,駕駛訓練者就在虛擬視景中實時地觀察到所駕駛車輛的運行情況。系統的工作流程如圖1所示。
2 單片機系統的設計
2.1 傳感器的選擇
汽車駕駛模擬器主要的控制信號如表1所示。
汽車駕駛模擬器主要有方向盤、離合器、制動器、油門、6個擋位、手剎等信號需要采集,使用的傳感器包括開關傳感器、位移傳感器、角位移傳感器三類[3]。方向盤采用角位移傳感器;離合器、剎車、油門采用位移傳感器;點火、手剎、換檔等采用開關傳感器。
經過綜合考察與比較后,選用TWZ型直流位移傳感器、QXJ-BZ-V型角位移傳感器、ITR8102型對射式光電開關分別作為線位移量、角位移量以及開關量傳感器。其中,TWZ型直流位移傳感器的分辨率為10μm,QXJ-BZ-V型角位移傳感器的分辨率為0.01o,ITR8102型對射式光電開關的響應時間為20μs。實踐證明,所選的傳感器完全滿足了汽車駕駛模擬器的控制要求,取得了較好的效果。
2.2硬件電路的設計
汽車駕駛模擬器傳感控制系統需要完成開關量和模擬量的采集與處理,指示燈與儀表的顯示控制,以及與主控計算機之間進行數據傳輸等功能。根據以上要求,主控芯片選用Atmel公司生產的AT89C52, AT89C52是一種低電壓,高性能的CMOS 8位單片機,與標準MCS-51產品的引腳和指令系統完全兼容[4]。
AT89C52片內含8K的閃爍可編程可擦除只讀存儲器(FPEROM),256 B的內部隨機數據存儲器(RAM),已經可以滿足本系統程序設計的需要,因此不需要進行外部程序存儲器和數據存儲器的擴展。
模擬信號相關文章:什么是模擬信號
光電開關相關文章:光電開關原理
評論