1. 首頁
  2. 汽車及零配件

基於CAN匯流排的汽車檢測系統的設計論文

基於CAN匯流排的汽車檢測系統的設計論文

摘要:

為解決當前汽車檢測系統功能較單一,偏重區域性檢測等不足,設計基於CAN匯流排的汽車檢測系統。系統由資料採集器、CAN閘道器、控制終端和PC機組成。資料採集器可設定多達256個檢測點,可同時檢測汽車的發動機的有關資訊,尾氣排放濃度、油缸壓力、輪胎氣壓等汽車資料。可更加全面的檢測汽車的效能,為維護保養和故障診斷提供可靠的資訊。

1引言

隨著我國汽車保有量的增加,汽車的維護保養和故障診斷也面臨嚴峻的挑戰。現行的檢測系統偏向於區域性檢測,功能比較單一,檢測成本較高,檢測時間較長。為了克服現行檢測系統的不足,利用CAN匯流排,將汽車上的每個資料檢測點設計成一個CAN節點,並結合軟PLC的設計思想,設計出功能更加全面的汽車檢測系統。

2系統的'硬體設計

檢測系統的硬體主要包括感測器探頭節點,導線,連結器,控制及程式設計終端等。系統結構如圖1所示,感測器探頭節點就是系統的感官部件,透過它檢測汽車的水溫、油溫、壓力、速度、尾氣濃度等汽車資料。其上的CAN匯流排控制器將這些資料透過CAN網路傳送給控制終端。導線和連結器,構成了一個完整的CAN網路。控制終端為每個探頭節點分配一個節點號,程式設計時透過節點號就可得到各節點引數。終端上的控制介面分為數字電壓訊號介面,開關訊號介面兩種控制介面,方便控制電磁閥、繼電器等控制元件,拓寬了系統的控制方法。

2.1感測器探頭節點

探頭節點負責汽車有關資料的收集並將這些資料透過CAN匯流排傳送到網路上。它的主要部件是STC89LE516AD微控制器、感測器、CAN控制器SJA1000和LCD顯示器。微控制器透過AD採集探頭上各感測器資料,將資料打包傳送到CAN網路上,在CAN網路中,每個節點對應著唯一的節點號。微控制器在打包資料的時候將節點號標誌在資料包中。

其功能結構如圖2所示。

感測器前端電路

10bit A/DSTC89LE516ADLCD顯示及鍵盤電路序列通訊CANNET資料電壓訊號SJA1000控制器圖2探頭節點結構簡圖2.2 CAN網路架構CAN全稱為Controller Area Network,即控制器區域網,是國際上應用最廣泛的現場匯流排之一。控制系統的CAN網路是由SJA1000 CAN控制器組建,SJA1000在完全相容PCA82C200的基礎上,增加了一種新的工作模式PeliCAN,速率能達到1Mbit/s。

網路的物理層連線圖如圖3所示。

CAN控制器

光電隔離CAN收發器CAN控制器光電隔離CAN收發器CAN控制器光電隔離CAN收發器圖3網路物理層連線圖2.3控制及程式設計終端系統的控制及程式設計終端由控制終端,PC機和系統程式設計軟體組成。控制終端有CAN網路終端,各種控制介面和與PC機的程式設計除錯介面。控制終端的主控晶片為PHILIPS的LPC2142微控制器,電路結構如圖4所示。外圍連線8通道10位D/A,轉換器提供8路數字電壓控制埠。另外透過可控矽提供16路開關電路介面。數字電壓控制需要根據控制裝置設計相應的控制電路才能達到控制裝置的目的。

16路可控矽開關電路

LPC2142PC機SJA1000控制器8路D/A轉換數字器數字CANNET數字JTAG程式設計介面序列通訊圖4控制終端電路結構

3系統的軟體設計

3.1感測器探頭節點軟體設計

感測器探頭節點軟體設計主要是設計基於STC89LE516AD微控制器的嵌入式程式,程式框圖如圖5所示。微控制器開機初始化後判斷是否需要進入設定程式,設定程式可以設定節點在網路中的節點號、檢測引數的種類等。設定完成後進入迴圈檢測階段,微控制器透過AD不斷採集感測器訊號,換算成相應的溫度,壓力、尾氣濃度等引數,實時顯示在LCD顯示器上,並定時透過CAN網路傳送到控制終端上。

3.2控制終端軟體設計

根據軟PLC的設計思想,控制終端的程式是由PC機上的編譯軟體編譯出來的,再透過JTAG下載到LPC2142中,主要負責CAN網路資料包的接收、汽車資料的取得、控制引數的運算、控制行為的發出。因此其軟體設計採用模組化的設計思想,將程式分為初始化模組、通訊模組、運算模組、執行模組。各個模組都有各自的程式介面和共享的資料區,實現程式的獨立和融合。

初始化模組負責控制器當前程式用到的各資源的初始化,分配各控制引數的快取和對映,為程式的執行做準備。通訊模組負責CAN網路的資料接收和控制終端與PC機之間的通訊,實現資料儲存併為上位機監控提供通訊。運算模組是控制程式的關鍵,它負責引數的運算和控制訊號的產生並存儲到資料區,是系統控制的核心。執行模組是將資料區的執行引數實時對映到相應的I/O口和裝置上,實現控制裝置的目的。

3.3系統程式設計及監控軟體

系統的程式設計參考PLC程式設計軟體風格,和PLC程式設計方法一樣採用梯形圖語言程式設計。監控軟體透過序列通訊實時接收到控制終端傳送的狀態資料,並透過軟體直觀的顯示出系統的執行狀態。程式設計和監控軟體都採用Visual C++程式設計,實現梯形圖向C語言的轉換,在利用KEIL C for ARM工具,將C語言編譯成目的碼,下載到控制終端。

4結論

基於CAN匯流排的汽車檢測系統解決了傳統檢測系統功能單一等不足,綜合檢測汽車各種引數,較全面的檢測汽車效能和隱患。同時採用軟PLC技術,使控制程式的編寫更加容易,具有穩定可靠,實施快捷,易於擴充套件的優點,具有較大的潛力。

參考文獻

1吳中俊,黃永紅.可編程式控制器原理及應用[M].機械工業出版社,2005.(4).

2饒運濤,謅繼軍,鄭勇芸.現場匯流排CAN原理與應用技術[M].北京航空航天大學出版社,2003.

3鄔寬明.CAN 2.0B新控制器─SJA1000(J).工業控制計算機,2008,(1):58~59.

4 LPC2141/42 User Manual(preliminary release)[EB]Philips Semiconductors,2004.

5李道霖.電氣控制與PLC原理及應用[M].電氣工業出版社,2004.(3).