CAN-BUS控制器局域網(wǎng)是總線(xiàn)控制系統(tǒng),意思是說(shuō)所有的電路控制都是由電腦集中控制,比如當(dāng)車(chē)輛行駛自動(dòng)鎖車(chē)門(mén),停車(chē)后自動(dòng)打開(kāi)車(chē)門(mén).比如車(chē)輛的燈光控制,當(dāng)你超車(chē)時(shí)按一下轉(zhuǎn)向燈控制手柄它會(huì)自動(dòng)打三下左轉(zhuǎn)彎信號(hào)燈,當(dāng)你變線(xiàn)時(shí)又會(huì)自動(dòng)達(dá)三下右轉(zhuǎn)向燈.當(dāng)車(chē)速增加是車(chē)載音響會(huì)自動(dòng)增大音量,用以擬補(bǔ)車(chē)輛噪音的增加.駕駛員下車(chē)熄火忘關(guān)燈時(shí)CAN總線(xiàn)系統(tǒng)會(huì)自動(dòng)在5分鐘后關(guān)閉大燈,防止電瓶電量放光.等等功能都是由電腦集中控制。
為了了解凱美瑞CAN總線(xiàn)上的車(chē)輛數(shù)據(jù)信息,首先必須尋找出凱美瑞的CAN總線(xiàn)數(shù)據(jù)線(xiàn)。根據(jù)CAN使用的物理介質(zhì)主要為雙絞線(xiàn),信號(hào)使用差分電壓傳送。我們根據(jù)CAN的邏輯電平電壓值為:CAN_H=3.5V和CAN_L=1.5V。判斷出了凱美瑞的總線(xiàn)是以下兩線(xiàn)束(黑白線(xiàn)束):

圖1
以下是從凱美瑞車(chē)輛CAN總線(xiàn)上獲取的數(shù)據(jù)信息。

圖2

圖3
其中ID號(hào)為1568(16進(jìn)制為620)的D5位是車(chē)門(mén)開(kāi)關(guān)控制位,其中左前門(mén)開(kāi)門(mén)控制數(shù)據(jù)為32,右前門(mén)開(kāi)門(mén)控制數(shù)據(jù)為16,左后門(mén)開(kāi)門(mén)控制數(shù)據(jù)為4,右后門(mén)開(kāi)門(mén)控制數(shù)據(jù)為8。各車(chē)門(mén)信號(hào)控制數(shù)據(jù)可以相互累加。
圖2顯示為車(chē)門(mén)全封閉狀態(tài),圖3顯示為右后門(mén)車(chē)門(mén)開(kāi)啟狀態(tài)。
二,記錄CAN數(shù)據(jù)
為了模擬CAN總線(xiàn)數(shù)據(jù),我們記錄了該車(chē)的CAN總線(xiàn)數(shù)據(jù),具體操作如下:
在一開(kāi)始進(jìn)入CanKing的時(shí)候選擇Log To File模式,該模式具有保存數(shù)據(jù)的功能。見(jiàn)圖4:

圖4 選擇Log To File模式保存數(shù)據(jù)
進(jìn)入Log To File模式之后,在Log To Text File窗口點(diǎn)擊Start按鍵,表示開(kāi)始記錄消息窗口的數(shù)據(jù),點(diǎn)擊之后軟件會(huì)要求輸入保存消息數(shù)據(jù)的文件名并選擇保存路徑,消息數(shù)據(jù)即存儲(chǔ)在該文件上,見(jiàn)圖5。

圖5 Log To Text File窗口
按照前面的步驟進(jìn)行CAN總線(xiàn)數(shù)據(jù)發(fā)送或者接收,在這個(gè)過(guò)程中軟件會(huì)自動(dòng)將數(shù)據(jù)保存到文件中,有關(guān)操作工作完成之后點(diǎn)擊Stop按鍵,打開(kāi)所保存的文件即可看到所保存的數(shù)據(jù),見(jiàn)圖6。

圖6 保存到的數(shù)據(jù)
三,調(diào)用凱美瑞上車(chē)輛總線(xiàn)的數(shù)據(jù)
為了測(cè)試和開(kāi)發(fā)的方便。我們希望能從記錄的數(shù)據(jù)中更改必要的數(shù)值,修改某一控制部件ID數(shù)據(jù)位的值,重新回傳到車(chē)輛總線(xiàn)上,以達(dá)到控制某一部件的目的。
具體操作如下:

圖7 導(dǎo)入已記錄的數(shù)據(jù)值
點(diǎn)擊View à history list

圖8 數(shù)據(jù)導(dǎo)入界面

圖9 數(shù)據(jù)導(dǎo)入文件界面
.hst是默認(rèn)的數(shù)據(jù)文件后綴,但是文本文檔的數(shù)據(jù)也可以導(dǎo)入。

圖10 數(shù)據(jù)導(dǎo)入
完成數(shù)據(jù)導(dǎo)入后,點(diǎn)擊Send All,可以往此軟件的模擬虛擬網(wǎng)絡(luò)通道上傳輸信息。
在實(shí)際操作中,原來(lái)希望可以通過(guò)數(shù)據(jù)回傳導(dǎo)入車(chē)載網(wǎng)絡(luò)來(lái)實(shí)現(xiàn)汽車(chē)某部件功能,但是,由于我們是從OBD口引出的CAN線(xiàn),實(shí)際汽車(chē)會(huì)有一些保密設(shè)置,加上網(wǎng)關(guān)對(duì)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的影響,實(shí)際回傳數(shù)據(jù)時(shí)會(huì)出現(xiàn)一些奇怪的錯(cuò)誤。這一點(diǎn),我們已經(jīng)詢(xún)問(wèn)Kvaser公司具體技術(shù)詳情。以下是使用虛擬通道時(shí)候的情況,可供參考:

圖11 虛擬仿真通道回傳記錄數(shù)據(jù)
四、CAN與LIN的控制范圍。
為了配合中控瑣的設(shè)計(jì),必須將各種控制單元所對(duì)應(yīng)的ID號(hào)給一一查清。但是作為中控鎖位置相關(guān)的的車(chē)門(mén)窗控制模塊,其變化卻無(wú)法引起CAN數(shù)據(jù)的改變。這引起我們的疑問(wèn)。是LIN還是什么其他原因?
帶著疑問(wèn),我們對(duì)車(chē)門(mén)進(jìn)行了大刀闊斧的拆卸。以下是拆卸車(chē)門(mén)的實(shí)景。

圖12 車(chē)門(mén)內(nèi)架

圖13 車(chē)門(mén)電路總圖
實(shí)驗(yàn)中,我們發(fā)現(xiàn)日系車(chē)型代表的凱美瑞:無(wú)論是后視鏡閉合系統(tǒng),還是車(chē)窗控制系統(tǒng)都沒(méi)有用到CAN總線(xiàn)信息。同樣的也并沒(méi)有用到LIN總線(xiàn),而只是用局部線(xiàn)束獨(dú)立地控制車(chē)窗或者后視鏡模塊。這樣分塊集成的好處是降低了整車(chē)的維修難度和穩(wěn)定性。很符合日系車(chē)型性?xún)r(jià)比高的特點(diǎn)。不過(guò)這樣的控制方式卻不利于后續(xù)車(chē)型的系統(tǒng)集成。凱美瑞的后視鏡閉合系統(tǒng)是通過(guò)控制鏡內(nèi)步進(jìn)電機(jī)來(lái)控制閉合角度的。而車(chē)窗升降控制則由射頻和手動(dòng)控制模塊組成。兩者均沒(méi)有接入CAN總線(xiàn)系統(tǒng)。
五、相關(guān)軟硬件介紹
1.總線(xiàn)分析硬件
先進(jìn)的CAN總線(xiàn)解決方案-工程師的第一選擇
Advanced CAN Solutions
The Engineer’s No. 1 Choice
瑞典Kvaser公司專(zhuān)注于汽車(chē)、卡車(chē)、工業(yè)自動(dòng)化和醫(yī)學(xué)設(shè)備等現(xiàn)場(chǎng)測(cè)控領(lǐng)域。公司創(chuàng)始人Lars-Berrno Fredriks-son是世界上頂尖的CAN總線(xiàn)協(xié)議人物,不但作為CAN總線(xiàn)的起草人和執(zhí)行者,并制定出世界上首個(gè)高層協(xié)議CANKingdom,另外還有多項(xiàng)世界專(zhuān)利,如Magi Sync和Silent mode技術(shù)。
Kvaser在多個(gè)平臺(tái) (USB、PCMCIA、PCI、ISA、Bluetooth等)上擁有全方位的產(chǎn)品,可為相同的APICANlib開(kāi)發(fā)并且相互兼容。MagiSync------Kvaser的核心技術(shù)之一,使用創(chuàng)新的方法,不需要外部線(xiàn)纜就可以實(shí)現(xiàn)多個(gè)不同Kvaser 接口的同步。
局域控制網(wǎng)CAN,是一種有效支持分布實(shí)時(shí)控制的串行通訊總線(xiàn)。它是國(guó)際上應(yīng)用最廣泛的現(xiàn)場(chǎng)總線(xiàn)之一,在汽車(chē)工業(yè)、自動(dòng)控制、航空航天、機(jī)械工業(yè)、醫(yī)療器械等領(lǐng)域中得到了極大的發(fā)展。CAN已形成國(guó)際標(biāo)準(zhǔn),被公認(rèn)為幾種最有前途的現(xiàn)場(chǎng)總線(xiàn)之一。其典型的應(yīng)用協(xié)議有:CANKingdom、SAEJ1939、CANOpen、DeviceNet、CANaerospace、NMEA-2000等。
2. 測(cè)試分析軟件
圖為CANking分析軟件界面:


Kvaser CanKing是一個(gè)免費(fèi)的CAN總線(xiàn)監(jiān)測(cè)器和通用診斷工具。它特別適合于交互式開(kāi)發(fā)工作。您可以容易地發(fā)送CAN消息并研究它們?cè)谀繕?biāo)模塊上的影響。你只需要一個(gè)KvaserCAN接口。Kvaser CanKing完全免費(fèi)。
特點(diǎn):
基礎(chǔ)版本使你能夠在CAN總線(xiàn)上顯示消息,并能夠隨意以幾種不同方法格式化這些消息。你也可以通過(guò)填寫(xiě)對(duì)話(huà)框和壓下OK來(lái)發(fā)送CAN消息。有很多消息排列選項(xiàng)。(CanKingdom的用戶(hù)將看到支持這里的幾乎所有King頁(yè))
其它特點(diǎn)包括:
●為你已經(jīng)發(fā)送的消息列出歷史表格
●CAN總線(xiàn)統(tǒng)計(jì)(消息的編號(hào)、總線(xiàn)負(fù)載等等)
●一個(gè)通訊量發(fā)生器用于研究總線(xiàn)處于重載下的系統(tǒng)
●消息進(jìn)和出的時(shí)間標(biāo)記(時(shí)間標(biāo)記可以按絕對(duì)和相對(duì)格式顯示)