汽車駕駛模擬器是利用計算機實時控制和計算機圖形處理技術模擬汽車的實際行駛過程,用來培訓駕駛員,縮短上車試車的周期,降低駕駛培訓的成本。汽車駕駛模擬器包括硬件和軟件兩部分組成。硬件由計算機、顯示設備、方向盤、儀表盤等部件構成,軟件包括道路環境的計算機仿真視景系統、聲響模擬、操作平臺等子系統構成。本文將對硬件控制系統的設計進行研究。
一、控制系統的原理和功能
汽車駕駛模擬器系統包括機械部分、控制系統和模擬軟件三大部分。機械部分的點火裝置、方向盤、離合裝置、腳剎裝置、手剎裝置、油門裝置、檔位裝置、儀表裝置均采用實物仿真;控制系統定時檢測點火情況、方向盤轉過的角度、旋轉方向、離合器、腳剎、手剎、油門、檔位的狀態,并將檢測的結果傳送給計算機,通過模擬軟件來變換駕駛的場景,同時,將當前的水溫、時速、發動機轉速和油量傳送給控制系統,以改變儀表盤的指示。控制系統原理圖如圖1 所示。
圖1 控制系統原理圖
計算機采樣數據的程序是用VC++語言編寫。為了數據的準確性,采集數據每20ms 刷新一次。這樣每20ms 檢測一次點火裝置、離合裝置、腳剎裝置、手剎裝置、油門裝置、檔位裝置的狀態,并將檢測結果傳送給計算機。在駕駛的過程中,由于方向盤在不停的轉動,這就要求程序能夠實時的檢測出方向盤的方向和角度。
二、方向盤的位置檢測
在實際設計過程中,要判斷方向盤的轉向以及轉動角度,也就是說首先要判斷左轉還是右轉,然后判斷轉的角度。方向盤的轉動方向和轉動角度示意圖如圖2 所示,選用兩個光電感應開關JK122,安裝在轉盤旁邊,x1 和x2 處為兩個光電感應開關所放位置,當轉盤轉動時,有齒擋住光電感應開關,則輸出為1,反之輸出為0。
圖2 方向盤的轉動方向和轉動角度示意圖
假設任意兩齒之間距離為d,只要x1 和x2 之間距離不等于n/2.d(n 為任意整數),則轉盤轉動時,x1、x2 兩處的輸出波形就將如圖3 所示。
圖3 x1 和x2 處的輸出波形
由此可見,假設x1、x2 的初始狀態都為0,則正轉時其狀態變化為00—01—11—10—00, 而反轉時狀態變化為00—10—11—01—00。只要知道x1、x2 的當前狀態和下一狀態,即可知道此時方向盤的轉向了。我們在設計時要判斷好初始狀態為00 這種情況。將x1、x2 信號分別接到兩個T 觸發器的輸入端上,并將反向后的信號作為觸發器的清零信號。當初始狀態為00 時,兩個觸發器輸出都為0,如果后一狀態為01,則觸發器T1 輸出為1,表示正轉;如果后一狀態為10,則觸發器T2 輸出為1,表示反轉。由于緊接著的狀態肯定是11,所以觸發器清零后,等到狀態為00 又可以重新開始判斷。判斷轉向后,還要判斷轉動的角度。在這里我們又加入兩個T 觸發器T3 和T4,當輸入x1、x2 的狀態從11 變化到10,觸發器T3 輸出為1,反之,如果從11 變化到01,觸發器T4 輸出為1。最后,將四個觸發器的輸出信號相或后作為時鐘信號送到計數器中,并將T1、T3 的輸出信號相或后作為計數器的輸入信號,于是當方向盤正轉時計數器向上累加,而反轉時則向下遞減,最后通過讀出計數器的輸出數據即可得知方向盤的轉動角度。本文采用CPLD 技術設計控制電路,原理圖如圖4 所示。
圖4 CPLD 設計原理圖
由圖可知,CPLD 技術設計一般是一種“自頂而下”的設計,其設計過程如下:
(1)行為設計;確定所設計的系統或CPLD芯片的功能、性能及允許的芯片面積或成本。
(2)結構設計;根據該系統或CPLD 的特點,將其分解為接口清晰、相互關系明細、盡可能簡單的子系統,得到1 個總體結構。這個結構可能包括算術運算單元、控制單元、數據通道、各種算術狀態機等。
(3)邏輯設計;盡可能采用規則的邏輯結構或采用自己經過考驗的邏輯單元或模塊。
(4)電路設計;將邏輯圖將轉換成電路圖,在很多情況下,這時需要進行硬件仿真以最終確定邏輯設計的正確性。
最后,將設計好的電路經過編譯,形成熔絲文件,將該文件下載到選定的CPLD 就成為了可以完成固定功能的ASIC 了。在整個開發程序中,采用軟件MAX+plusII 編程可實現,選用Altera 公司生產的芯片EPM7128SLC84-15 。
三、控制系統的軟件設計
本系統軟件部分由檢測主程序、驅動儀表程序和方向盤等開關量輸入程序組成。檢測主程序包括數據采集模塊、CPLD 模塊,并且分配給儀表和開關量輸入不同的端口。在端口的初始化中將所有初始狀態設置為0,通過軟件的定時器掃描,各端口的狀態實時的傳給主程序,其主程序流程圖如圖5 所示。
圖5 主程序流程圖
采用VC++語言將硬件中的狀態、角 度等數據交互信息做成一個硬件連接庫,它作為橋梁,把硬件所有的操作與軟件部分的視景系統緊密的結合在一起,成為一個完整的汽車駕駛模擬訓練系統。
4、結束語
該系統運用CPLD技術,充分地考慮了方向盤、離合器、腳剎、手剎、油門、換檔的相應時間,通過協議,與軟件部分的視景系統緊密的結合在一起。并且通過本文設計的實例可以看出,合理地應用CPLD技術,大大提高了系統設計的靈活性,提高了系統的可靠性和集成度,縮短了產品研制的周期,同時還可以降低設計成本,節省PCB板的面積和布線難度。因此,在目前的電子設計中,充分利用CPLD的設計體系結構將起到事半功倍的效果。目前,控制系統已經制作出了推廣應用,取得了良好的經濟和社會效益,受到了學員的一致好評。本文作者創新點:整個硬件控制系統很多的研究人員主要采用單片機結合串口、并口進行通訊。由于單片機分配地址、布線較繁瑣,可靠性不強,單片機與單片機之間的數據交換也存在一定的局限性。我們采用了CPLD 技術、數據采集模塊能夠很方便的對硬件部分的點火情況、方向盤轉過的角度、旋轉方向、離合器、腳剎、手剎、油門、檔位的狀態進行編譯操作,及時進行數據交換,大大提高了控制系統的可控性和可靠性,降低了生產周期和成本。
責任編輯:gft
-
cpld
+關注
關注
32文章
1257瀏覽量
169659 -
計算機
+關注
關注
19文章
7549瀏覽量
88718 -
模擬器
+關注
關注
2文章
883瀏覽量
43440
發布評論請先 登錄
相關推薦
評論