基于DSPACE的CAN總線通訊程序開發(fā)_第1頁
基于DSPACE的CAN總線通訊程序開發(fā)_第2頁
基于DSPACE的CAN總線通訊程序開發(fā)_第3頁
基于DSPACE的CAN總線通訊程序開發(fā)_第4頁
基于DSPACE的CAN總線通訊程序開發(fā)_第5頁
已閱讀5頁,還剩70頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

本科學生畢業(yè)設計基于dSPACE的CAN總線通訊程序開發(fā)系部名稱:汽車與交通工程學院專業(yè)班級:車輛工程學生姓名:指導教師:職稱:二○年月TheGraduationDesignforBachelor'sDegreeCANCommunicationProgramDevelopmentBasedondSPACECandidate:Specialty:Class:Supervisor:緒論1.1前言隨著電子技術、控制技術、計算機技術等的進步,人們對汽車的動力性、排放性、經(jīng)濟性和安全性等方面的性能提出越來越高的要求,汽車電子化成為了一個必然的趨勢。汽車電子化在提高汽車各方面性能的同時,也帶來了一系列的問題,最主要的就是線路復雜化?,F(xiàn)代汽車中所使用的電子控制系統(tǒng)和通訊系統(tǒng)越來越多,如發(fā)動機電控系統(tǒng)、自動變速器控制系統(tǒng)、防抱死制動系統(tǒng)(ABS)、自動巡航系統(tǒng)(ACC)和車載多媒體系統(tǒng)等。這些系統(tǒng)之間、系統(tǒng)和汽車的顯示儀表之間、系統(tǒng)和汽車故障診斷系統(tǒng)之間均需要進行數(shù)據(jù)交換。如此巨大的數(shù)據(jù)交換量如仍然采用傳統(tǒng)數(shù)據(jù)交換的方法:即用導線進行點對點的連接的傳輸方式將是難以想象的。據(jù)統(tǒng)計如采用普通線纜,一個中級轎車就需要線索插頭300個左右,插針總數(shù)將達到2000個左右,線索總長超過116km。不但裝配復雜而且故障率會很高。因此用串行數(shù)據(jù)傳輸系統(tǒng)取而代之就成為必然的選擇。作為最早的應用領域,CAN總線在現(xiàn)代汽車上獲得了廣泛的應用。目前全球各大汽車制造商在上世紀90年代后期研發(fā)的汽車(乘用車和商用車)都采用了CAN總線或者車中的部分零部件具有CAN總線通信功能。而采用dSPACE仿真平臺進行系統(tǒng)仿真的研究,也代表著國際上這方面的先進水平。作為一個全方位的計算機輔助設計平臺,dSPACE擁有簡單易用的代碼生成及下載軟件、試驗工具軟件,還擁有靈活性極強的硬件組合系統(tǒng),具有其它仿真機所無可比擬的優(yōu)越性。利用dSPACE,可以把精力全神貫注于控制方案的構思,可以大大縮短開發(fā)周期。本文將利用dSPACE系統(tǒng)針對CAN總線系統(tǒng)進行通信開發(fā),在計算機上實現(xiàn)CAN總線系統(tǒng)的通訊仿真。1.2課題研究背景隨著全數(shù)字式現(xiàn)場總線為代表的現(xiàn)場控制儀表、設備大量應用,使得繁瑣的汽車現(xiàn)場連線被單一簡潔的現(xiàn)場總線網(wǎng)絡所代替。CAN(ControllerAreaNetwork)數(shù)據(jù)總線就是一種極適于汽車環(huán)境的汽車局域網(wǎng)。它是德國Bosch公司在80年代初為解決數(shù)據(jù)可靠交換而開發(fā)的一種串行數(shù)據(jù)通信總線。在現(xiàn)代汽車設計中,CAN己經(jīng)成為了必須采用的裝置。奔馳、寶馬、大眾、沃爾沃及雷諾汽車都將CAN總線作為控制聯(lián)網(wǎng)的手段。我國在汽車電子方面的研究起步較晚,對應用于汽車領域CAN協(xié)議的研究尚處于起步階段。鑒于CAN在現(xiàn)代汽車電子化進程中的重要作用,自主研制支持CAN規(guī)范的汽車電子產品,并使之盡快產業(yè)化,勢在必行。傳統(tǒng)的汽車電子門鎖采用點對點的方式與汽車車身的其它電子設備互聯(lián),伴隨著汽車電子網(wǎng)絡化的趨勢,汽車電子門鎖開始逐漸采用網(wǎng)絡化的結構。隨著CAN總線技術在汽車上的大量使用,給汽車維修帶來了極大的難度,國內汽車維修與教學行業(yè)急需掌握CAN總線維修技術。1.3國內外研究現(xiàn)狀及發(fā)展動態(tài)1.CAN在國外的發(fā)展控制器局域網(wǎng)CAN是80年代初博世公司為解決現(xiàn)代汽車中眾多控制單元、測試儀器之間的實時數(shù)據(jù)交換而開發(fā)的一種串行通信協(xié)議,經(jīng)多次修訂,于1991年9月形成技術規(guī)范2.0版本。該版本包括2.0A和2.0B兩部分兩種格式。其中2.0A給出了報文標準格式,2.0B給出了報文的標準和擴展2.CAN在國內的發(fā)展雖然CAN總線標準已推出很多年,但我國的汽車CAN總線技術起步較晚,在國內的應用開發(fā)還剛剛開始,本土汽車電子廠商在跟進之余己顯示出“新勢力”。如浙江中科正方電子技術有限公司目前形成了以RS4、RS3、RS2為產品體系的汽車網(wǎng)絡產品生產企業(yè),涵蓋了轎車、客車和卡車各領域,可以提供基于CAN技術的汽車網(wǎng)絡產品。但理想與現(xiàn)實之間總有差距,中國汽車電子廠商在基礎的ECU開發(fā)方面還存在諸多缺失,開發(fā)車載網(wǎng)絡ECU遭遇的是更深層次的考驗,目前還沒有這個實力幫助汽車制造商部署一個CAN網(wǎng)絡。據(jù)業(yè)內人士介紹,目前更多的還主要是開發(fā)支持CAN的車載設備,配合某種車型的CAN網(wǎng)絡使自己的產品支持這種總線通信協(xié)議。國內車載網(wǎng)絡的現(xiàn)狀是,在ECU中嵌入車載網(wǎng)絡己做得不錯,但與車載網(wǎng)絡相關的工作還十分欠缺。3.CAN技術的檢測與維修傳統(tǒng)的電氣系統(tǒng)大多采用點對點的單一通信方式,相互之間少有聯(lián)系,這樣必然造成龐大的布線系統(tǒng)。據(jù)統(tǒng)計,一輛采用傳統(tǒng)布線方法的高檔汽車中,其導線長度可達2000米,電氣節(jié)點達1500個,而且該數(shù)字大約每十年增長1倍,從而加劇了粗大的線束與汽車有限的可用空間之間的矛盾。一般情況下線束都安裝在縱梁下等看不到的地方,一旦線束中出了問題,不僅查找相當麻煩,而且維修也很困難。另外,在汽車中增加新的用電設備對線束的改動很大,一般只能從外面加線,從而使線路更凌亂。所以,無論從材料成本還是工作效率看,傳統(tǒng)布線方法都將不能適應汽車的發(fā)展。由于CAN技術在汽車上的應用,而掌握此項技術的汽車維修人員很少,所以,對CAN技術的維修技術要加大研究。1.4本文主要研究內容1.本研究的目的本論文利用現(xiàn)場總線技術的目的是為了實現(xiàn)汽車控制部件的智能化和汽車控制系統(tǒng)的網(wǎng)絡化提供了一個有效的途徑和方法。智能化是采用了微處理器嵌入技術,對汽車電控系統(tǒng)中的各個測控部件進行數(shù)字化改造,使之在成為一個智能化的儀表或執(zhí)行器的同時具備網(wǎng)絡通信能力,從而為汽車網(wǎng)絡化控制做好準備。網(wǎng)絡化就是在智能化和節(jié)點化的基礎上,采用屬于網(wǎng)絡技術的現(xiàn)場總線將所有汽車測控部件連接起來,在網(wǎng)絡測控軟件的支持下形成一個有機的網(wǎng)絡控制系統(tǒng)。本研究的經(jīng)濟意義在于廢除主電纜線束系統(tǒng),從而有利于降低系統(tǒng)的綜合成本,并以提高技術檔次保障售價;其技術意義是為汽車性能的高檔次提供技術平臺,形成新產品和技術儲備。2.本論文主要工作本論文的主要任務之一就是通過查閱大量的資料,學習中控門鎖的結構與工作原理,了解汽車網(wǎng)絡技術的發(fā)展和趨勢,包括在汽車中常用的各種網(wǎng)絡協(xié)議,并深入理解CAN協(xié)議,為具體應用奠定良好的理論基礎。另一個主要任務是采用dSPACE標準組件系統(tǒng)作為仿真機,建立數(shù)字控制系統(tǒng),開發(fā)針對CAN總線的通訊系統(tǒng)的汽車中控門鎖系統(tǒng),并通過ControlDesk綜合試驗與測試軟件,進行實時仿真測試,實現(xiàn)CAN模塊之間的信息通訊,完成基于dSPACE的CAN總線通信的汽車中央控制門鎖系統(tǒng)。為下一步實現(xiàn)多個模塊基于CAN總線的通訊,及在實驗室實現(xiàn)混和動力汽車發(fā)動機、ABS、電機、電池系統(tǒng)等控制模塊之間的通訊提供思路。CAN總線的原理和dSPACE介紹2.1CAN的性能特點CAN屬于總線式串行通信網(wǎng)絡,由于其采用了許多新技術及獨特的設計,與一般的通信總線相比,CAN總線的數(shù)據(jù)通信具有突出的可靠性、實時性和靈活性。其特點可概括為:(l)CAN是到目前為止唯一具有國際標準且成本較低的現(xiàn)場總線;(2)CAN為多主方式工作,網(wǎng)絡上任一節(jié)點均可在任意時刻主動地向網(wǎng)絡上其他節(jié)點發(fā)送信息,而不分主從,通信方式靈活,且無需站地址等節(jié)點信息。利用這一特點可方便地構成多機備份系統(tǒng);(3)在報文標識符上,CAN上的節(jié)點分成不同的優(yōu)先級,可滿足不同的實時要求,優(yōu)先級高的數(shù)據(jù)最多可在134μs內得到傳輸;(4)CAN采用非破壞性總線仲裁技術,當多個節(jié)點同時向總線發(fā)送信息時,優(yōu)先級較抵的節(jié)點會主動地退出發(fā)送,而最高優(yōu)先級的節(jié)點可不受影響地繼續(xù)傳輸數(shù)據(jù),從而大大節(jié)省了總線沖突仲裁時間。尤其是在網(wǎng)絡負載很重的情況下也不會出現(xiàn)網(wǎng)絡癱瘓情況;(5)CAN只需通過報文濾波即可實現(xiàn)點對點、一點對多點及全局廣播等幾種方式傳送接收數(shù)據(jù),無需專門的”調度”;(6)CAN的直接通信距離最遠可達10km(速率5KbPs以下);通信速率最高可達1MbPs(此時通信距離最長為40m);(7)CAN上的節(jié)點數(shù)主要取決于總線驅動電路,目前可達110個。在CAN2.0A標準幀報文中標識符有11位,而在CAN2.0B擴展幀報文中標識符有29位,使節(jié)點的個數(shù)幾乎不受限制;(8)報文采用短幀結構,傳輸時間短,受干擾概率低,使數(shù)據(jù)的出錯率降低;(9)CAN的每幀信息都有CRC校驗及其他檢錯措施,具有極好的檢錯效果;(10)CAN的通信介質可選擇雙絞線、同軸電纜或光纖,選擇十分靈活;(11)CAN節(jié)點在錯誤嚴重的情況下,具有自動關閉輸出的功能,以使總線上其他節(jié)點的操作不受影響,而且發(fā)送的信息遭到破壞后,可以自動重發(fā)。2.2CAN協(xié)議CAN技術規(guī)范2.0A和2.0B以及國際標準15011898是設計CAN應用系統(tǒng)的基本依據(jù),也是應用設計的基本規(guī)范。2.3CAN協(xié)議網(wǎng)絡分層模型在150提出的051模型中,網(wǎng)絡被分成七個不同的層次,這些層次描述了在不同的傳輸階段,數(shù)據(jù)信息被如何處理。051七層結構及各層功能,如圖2.1所示。OSI層次OSI層次層次功能應用層應用層提供到底層的用戶接口表示層表示層提供數(shù)據(jù)格式化和代碼轉換會話層會話層處理進程之間的協(xié)調傳輸層傳輸層負責數(shù)據(jù)傳輸控制網(wǎng)絡層網(wǎng)絡層在相鄰節(jié)點間轉發(fā)分組直到目的站數(shù)據(jù)鏈路層數(shù)據(jù)鏈路層提供計算機與網(wǎng)絡之間可靠的數(shù)據(jù)傳輸物理層物理層在計算機和網(wǎng)絡之間傳送位流物理傳輸介質圖2.1OSI參考模型層次結構值得注意的是051參考模型只是網(wǎng)絡結構設計的向導,但不是任何使用網(wǎng)絡的最佳選擇。由于CAN協(xié)議用于特定的工業(yè)控制現(xiàn)場,要求網(wǎng)絡結構簡潔、價格低廉,通常還要求數(shù)據(jù)傳輸速度快,滿足實時控制需要。OSI模型顯得于龐大,數(shù)據(jù)處理耗時太大,不適合于工業(yè)現(xiàn)場實時控制,所以CAN協(xié)議只采用了三層網(wǎng)絡結構。CAN技術規(guī)范2.0A中,網(wǎng)絡被劃分為對象層、傳輸層和物理層三層。CAN節(jié)點的分層結構和功能如圖1.2所示。對象層和傳輸層包括了由150/051模型定義的數(shù)據(jù)鏈路層的所有服務和功能,按150/051參考模型層次定義,這兩層應被劃分為數(shù)據(jù)鏈路層范圍。對象層功能包括:查找被發(fā)送的報文;確定實際要使用的傳輸層接收哪一個報文;為應用層相關硬件提供接口。在定義對象處理時,存在許多靈活性。傳輸層是CAN協(xié)議的核心,其功能包括:控制幀結構、執(zhí)行仲裁、錯誤檢測、出錯標定和故障界定??偩€上何時開始發(fā)送新報文及何時開始接受報文,都在傳輸層確定。位定時的一些普通功能也被作為傳輸層的一部分。傳輸層特性不存在修改的靈活性。物理層的作用是在不同節(jié)點之間根據(jù)所有的電氣屬性進行位信息的實際傳輸。當然,在一個網(wǎng)絡內,物理層對于所有節(jié)點必須是相同的。盡管如此,在選擇物理層時還是存在很大的靈活性。2.0A技術規(guī)范中沒有定義物理層,以便在具體應用中對傳輸介質和信號電平進行優(yōu)化。CAN協(xié)議技術規(guī)范2.0B,嚴格遵循150/051參考模型。將CAN分為數(shù)據(jù)鏈路層和物理層,其中數(shù)據(jù)鏈路層又被分為邏輯鏈路控制(LLC:LogicalLinkControl)子層和媒體訪問控制(MAC:MediumAccessControl)子層,這兩層的功能分別與2.0A中的目標層以及傳輸層功能相對應。應用層對象層—消息濾波—消息和狀態(tài)處理傳輸層—故障界定—錯誤檢測和標定—報文效驗—應答—仲裁—報文分幀—傳輸速率和定時物理層—信號電平和位表示—傳輸媒體圖2.2CAN節(jié)點的分層結構LLC子層完成下列功能:為遠程數(shù)據(jù)請求以及數(shù)據(jù)傳輸提供服務,確認由LLC子層接收的報文實際已經(jīng)被接收,以及為恢復管理和超載處理提供手段。MAC子層是CAN協(xié)議的核心,主要定義傳輸協(xié)議,包括報文幀格式、仲裁方式、應答報文、錯誤檢測、出錯標定和故障限制等,它把接收到的報文提供給LLC子層,并接收來自LLC子層的報文。MAC子層可響應報文幀、仲裁、應答、錯誤檢測和標定。MAC子層由稱之為故障界定的一個管理實體監(jiān)控,它具有識別永久性故障和短暫擾動的自檢機制。物理層實現(xiàn)不同節(jié)點之間的物理信號傳輸,主要定義網(wǎng)絡的電氣特性,因此涉及到位時間、位編碼、同步的描述。CAN2.0B沒有定義物理層的驅動器和接收器特性,以便根據(jù)它們的應用,對發(fā)送媒體和信號電平進行優(yōu)化。2.4CAN協(xié)議的報文傳送及其幀結構2.4.1邏輯電平定義CAN的傳輸介質由兩根傳輸線組成,其中一根被稱為高電平傳輸線CANH,另一根被稱為低電平傳輸線CANL,對地電壓分別被表示為VCAN_H和VCAN_L,它們之間的差值被稱為差分電壓Vdiff,即Vdiff=VCAN_H--VCAN_L。滿足條件0.9V<Vdiff<5.0V時,代表邏輯數(shù)字“0”,當前傳送的數(shù)據(jù)位被稱之為“顯性(dominate)”位,當-1.0V<Vdiff<0.5V時,代表邏輯數(shù)字“1”,當前傳送的數(shù)據(jù)位被稱之為“隱性(recessive)”位。當總線電壓波形、差分電壓波形以及邏輯電平之間的關系如圖2.3所示,在總線發(fā)送“顯性”位期間,VCAN_H,VCAN_L及Vdiff的標稱值分別為3.5V、l.5V和2.0V,發(fā)送“隱性”位期間,它們的標稱值分別為2.5V、2.5V和0V。圖2.3電壓波形與邏輯電平定義2.4.2CAN報文的幀類型CAN以報文為單位進行消息傳送,每一個發(fā)送數(shù)據(jù)或請求數(shù)據(jù)發(fā)送的報文均包含有標識符ID,它標示該報文的優(yōu)先權。報文標識符ID并不指出報文的目的地址,而是表述數(shù)據(jù)的類型和含義,通常這些數(shù)據(jù)的類型根據(jù)它們在控制中的重要性和實時性要求被劃分。CAN中一個報文被稱一幀,CAN協(xié)議支持四種不同的幀類型:數(shù)據(jù)幀、遠程幀、出錯幀、超載幀。1.數(shù)據(jù)幀數(shù)據(jù)幀由7個不同的位場組成,即:幀起始標志位、仲裁場、控制場、數(shù)據(jù)場、CRC檢查場、ACK應答場、幀結束標志位。數(shù)據(jù)場的長度可為零。在CAN2.0B中存在兩種不同的幀格式,其主要區(qū)別在于標識符的長度,具有11位標識符的幀稱為標準幀,而包括29位標識符的幀稱為擴展幀,其格式如圖2.5所示。圖2.5標準格式和擴展格式數(shù)據(jù)幀2.遠程幀的組成如圖2.6所示。圖2.6遠程幀組成遠程幀被用來請求總線上某個遠程節(jié)點發(fā)送自己想要接收的某種數(shù)據(jù),具有發(fā)出這種遠地消息能力的節(jié)點收到遠程幀后,就應盡力響應這個遠地傳送要求。所以對遠程幀本身來說,是沒有數(shù)據(jù)域的。在遠程幀中,除了RTR位是被設置成l(隱性),表示被動狀態(tài)外,其余部分與數(shù)據(jù)幀完全相同??梢哉f,RTR位的極性表示了所發(fā)送的幀是數(shù)據(jù)幀,還是遠程幀。數(shù)據(jù)長度代碼的數(shù)值是獨立的(可以標注為允許范圍0,1,……8中的任何數(shù)據(jù))。此數(shù)值對應于數(shù)據(jù)幀的數(shù)據(jù)長度代碼。3.錯誤幀錯誤幀由兩個場組成,如圖2.7所示,第一個場由來自各站的錯誤標志疊加得到,隨后第二個場是出錯界定符。報文傳輸過程中,檢測到任何一個節(jié)點出錯,即于下一位發(fā)送錯誤幀,通知發(fā)送端停止發(fā)送。圖2.7錯誤幀組成4.超載幀超載幀也包括兩個位場:超載標志和超載界定符,如圖2.8所示。當某接收因內部原因要求緩發(fā)下一個數(shù)據(jù)幀或遠程幀時,它向總線發(fā)出超載幀。超載幀還可以引發(fā)另一次超載幀,但以兩次為限。圖2.8超載幀組成5.幀間空間數(shù)據(jù)幀(或遠程幀)與其前面幀的隔離是通過幀間空間實現(xiàn)的,無論其前面的幀為何類型(數(shù)據(jù)幀、遠程幀、出錯幀、超載幀)。所不同的是,超載幀與出錯幀之前沒有幀間空間,并且多個超載幀前面也不被幀間空間分隔。幀間空間包括間歇場和總線空閑場,如果“錯誤被動”站己作為前一報文的發(fā)送器時,則其幀間空間除了間歇、總線空閑外,還包括稱作暫停發(fā)送的位場。對于非“錯誤被動”站或已完成前面報文的接收器,對于已完成前面報文發(fā)送器的“錯誤被動”站。間歇場由3個隱性位組成。間歇期間,所有站均不允許發(fā)送數(shù)據(jù)幀或遠程幀,僅起標注超載條件的作用。總線空閑的長度是任意的。只要總線是空閑的,任何等待發(fā)送信息的站都可以訪問總線。在其它報文發(fā)送期間,暫被掛起的待發(fā)送報文,緊隨間歇場從第一位開始??偩€上檢測到的顯性位可被理解為幀起始。暫停發(fā)送場:“錯誤被動”站發(fā)完一個報文后,在開始下一次報文發(fā)送或認可總線空閑之前,它緊隨間歇場后送出8個隱性位。如果期間另一站開始發(fā)送報文(由其它站引起),則此站就作為這個報文的接收器。2.4.3CAN報文的幀格式以CAN2.OB協(xié)議為代表,簡單的介紹一下在常用的CAN控制器寄存器中,CAN數(shù)據(jù)幀的格式。如本論文所采用的CAN控制器SJA1000及帶CAN控制器芯片P87C591均是這種格式。1.CAN2.0B標準幀格式CAN標準幀信息為11個字節(jié),包括兩部分:信息和數(shù)據(jù)部分。前3個字節(jié)為信息部分,如表2.1所示。其中:①字節(jié)1為幀信息。第7位(FF)表示幀格式,在標準幀中,F(xiàn)F=0;第6位(RTR)表示幀的類型,RTR=0表示為數(shù)據(jù)幀,RTR=l表示為遠程幀;DLC表示在數(shù)據(jù)幀時實際的數(shù)據(jù)長度。②字節(jié)2、字節(jié)3為報文識別碼,11位有效。③字節(jié)4~字節(jié)11為數(shù)據(jù)幀的實際數(shù)據(jù),遠程幀無效。表2.1CAN2.0A標準幀76543210字節(jié)1FFRARXXDLC(數(shù)據(jù)長度)字節(jié)2(報文識別碼)ID.10~ID.3字節(jié)3ID.2~ID.0X字節(jié)4~11數(shù)據(jù)1~數(shù)據(jù)82.CAN2.0B擴展幀格式CAN擴展幀信息為13字節(jié),包括兩部分:信息和數(shù)據(jù)部分,前5個字節(jié)為信息部分,如表2.2所示。其中:①字節(jié)1為幀信息。第7位(FF)表示幀格式,在擴展幀中,F(xiàn)F=1;第6位(RTR)表示幀的類型,RTR=0表示為數(shù)據(jù)幀,RTR位表示為遠程幀;DLC表示在數(shù)據(jù)幀時實際的數(shù)據(jù)長度。②字節(jié)2~字節(jié)5為報文識別碼,29位有效。③字節(jié)6~字節(jié)13為數(shù)據(jù)幀的實際數(shù)據(jù),遠程幀時無效。表2.2CAN2.0B擴展幀76543210字節(jié)1FFRTRXXDLC字節(jié)2(報文識別碼)ID.28~ID.21字節(jié)3(報文識別碼)ID.20~ID.13字節(jié)4(報文識別碼)ID.12~ID.5字節(jié)5ID.4~ID.0X字節(jié)6~13數(shù)據(jù)1~數(shù)據(jù)82.5位定時與位同步CAN總線的數(shù)據(jù)傳輸速率最高可達1Mb/s,通常用石英晶振作為時鐘發(fā)生器,可以獨立進行位定時的參數(shù)設置,這樣即使網(wǎng)絡中節(jié)點之間的時鐘周期不一樣仍可獲得相同的位速率。但網(wǎng)絡中晶振的頻率不是絕對穩(wěn)定的,溫度、電壓以及器件的異常都會導致微小的差別,但只要將其穩(wěn)定在振蕩器容差范圍之內,總線上的節(jié)點會通過重同步進行彌補。CAN總線的位定時和位同步包括以下一些重要概念。l)正常位速率:為一理想的發(fā)送器,即在沒有重新同步的情況下每秒發(fā)送的位數(shù)。2)正常位時間:定義為一位的持續(xù)時間。在位定時框架內執(zhí)行的總線管理功能,如ECU同步狀態(tài)、網(wǎng)絡發(fā)送延遲補償和采樣點定位,均由CAN協(xié)議集成電路的可編程位定時邏輯確定。正常位時間實際上是正常位速率的倒數(shù),即:正常位時間=l/正常位速率正常位時間可以劃分為幾個不重疊的時間段。即:同步段(SYNC_SEG)、傳播時間段(PROP_SEG)、相位緩沖段1(PHASE_SEG1)、相位緩沖段2(PHASE_SEG2)。3)同步段:用于同步總線上的各個節(jié)點,此段內要有一個跳變沿。4)傳播段:用于補償網(wǎng)絡內的物理延遲時間,它是總線上信號傳播時間、輸入比較器延遲和輸出比較器延遲之和的兩倍。5)相位緩沖段1和相位緩沖段2:用于補償沿的相位誤差,通過重同步,這兩個時間段可被延長或縮短。6)采樣點:它是讀總線電平并轉換為相應位值的一個時間點,并位于相位緩沖段1的終點。信息處理時間始于采樣點,保留用于計算子序列位電平的時間段。7)時間份額:由振蕩器周期推出的一個固定時間單元。存在有一個可編程的預分刻度值,其整體數(shù)值范圍為1~32,以最小時間份額為起點,時間份額的長度為:時間份額=m*最小時間份額(其中:m為預分刻度值)。8)時間段長度說明:同步段為1個時間份額:傳播段的長度可設置為1,2,……8個時間份額;相位段1的長度可設置為1,2,……8個時間份額;相位段2的長度為相位段1和信息處理時間之間的最大值;信息處理時間小于或等于2個時間份額。一個位時間的時間份額總數(shù)可以設置在8~25的范圍。9)硬同步:發(fā)生在報文開始,網(wǎng)絡中節(jié)點同步于報文幀起始位的隱性至顯性跳變沿。硬同步后,內部位時間從同步段重新開始,因此,硬同步強迫由于硬同步引起的沿處于重新開始的位時間同步段之內。10)重同步和重同步跳轉寬度:重同步發(fā)生在報文位流發(fā)送期間,以補償個別振蕩器頻率的變化以及由于從一個發(fā)送器轉至另一個發(fā)送器引入的變化。重同步的結果,使相位段1延長或相位段2縮短。這兩個相位緩沖段的延長或縮短的總和上限由重同步跳轉寬度給定。重同步跳轉寬度應設置為1和最小值4之間。時鐘信息可由一位數(shù)值到另一位數(shù)值的跳變取得。這種只有連續(xù)位的固定最大值具有相同數(shù)值的特性提供了在幀期間重新將總線單元同步于位流的可能性,可被用于重同步的兩次跳變之間的最大長度是29個位時間。11)沿相位誤差:一個沿的相位誤差由相對于同步段的位置給定,以時間份額量度。相對誤差的符號定義如下:若沿處于同步段內,則e=0;若沿處于采樣點之前,則e>0;若沿處于前一位的采樣點之后則,e<0。12)同步規(guī)則:硬同步和重同步是同步的兩種形式,遵循下列規(guī)則:在一個位時間內僅允許一種同步;只要在采樣點之前檢測到的數(shù)值與緊跟沿之后的總線數(shù)值不同,沿過后立即有一個沿被用于同步;在總線空閑期間,當存在一個“隱性”至“顯性”的跳變沿,則執(zhí)行一次硬同步;所有履行以上規(guī)則1和2的其它“隱性”至“顯性”的跳變沿都將被用于重同步。例外情況是,對于具有正相位誤差的隱性至顯性的跳變沿,只要隱性至顯性的跳變沿被用于重同步,發(fā)送顯性位的節(jié)點將不執(zhí)行重同步。2.6總線訪問及仲裁技術CAN總線使用的是一種叫做“載波監(jiān)測,多主掌控/沖突避免”(CSMA/CA)的通信模式。載波監(jiān)測的意思是指在總線上的每個節(jié)點在發(fā)送信息報文前都必須監(jiān)測到總線上有一段時間的空閑狀態(tài)。一旦此空閑狀態(tài)被監(jiān)測到,那么每個節(jié)點都有均等機會來發(fā)送報文,這被稱作多主掌握。沖突避免是指在兩個以上節(jié)點同時發(fā)送信息時,節(jié)點本身首先會檢測到出現(xiàn)沖突,然后采取相應的措施來解決這一沖突情況。此時優(yōu)先級高的報文先發(fā)送,低優(yōu)先級的報文發(fā)送會暫停。在CAN總線協(xié)議中是通過一種非破壞性的仲裁方式來實現(xiàn)沖突檢測的。這也就意味著當總線出現(xiàn)發(fā)送沖突時,通過仲裁后原發(fā)送信息不會受到任何影響。所有的仲裁判別都不會破壞優(yōu)先級高的報文信息內容,也不會對其發(fā)送產生任何的時延。當總線空閑時呈隱性電平,此時任何一個節(jié)點都可以向總線發(fā)送一個顯性電平作為一個幀的開始。如果有兩個或兩個以上的節(jié)點同時發(fā)送,就會產生競爭。CAN總線解決總線競爭的方法和以太網(wǎng)的CSMA/CD方法比較類似,并且CAN做了改進,是按位對標識符進行仲裁。各發(fā)送節(jié)點在向總線發(fā)送電平的同時,也對總線上的電平進行讀取,并與自身發(fā)送的電平進行比較,如果電平相同則繼續(xù)發(fā)送下一位,不同則停止發(fā)送,退出總線競爭。剩余的節(jié)點則繼續(xù)上述過程,直到總線上只剩下一個節(jié)點發(fā)送的電平,總線競爭結束,優(yōu)先級最高的節(jié)點獲得了總線的使用權。2.7CAN總線的通信錯誤及其處理2.7.1錯誤類型在CAN總線中存在5種錯誤類型,它們并不相互排斥;①位錯誤:站單元在發(fā)送位的同時也對總線進行監(jiān)視。當監(jiān)視到的總線位數(shù)值與送出的位數(shù)值不同時,則在該位時刻檢測出一個位錯誤。但是,在仲裁場的填充位流期間或應答間隙期間送出隱性位,而檢測到一個顯性位時,不視為位錯誤。當發(fā)送器發(fā)送一個被動錯誤標志,而檢測到顯性位時,也不視為位錯誤。②填充錯誤:如果在使用位填充方法進行編碼的信息中,出現(xiàn)了第6個連續(xù)相同的位電平時,將檢測到一個填充錯誤。③CRC錯誤:CRC序列是由發(fā)送器CRC計算結果組成的。接收器計算CRC的方法與發(fā)送器相同。如果計算結果與接收到的CRC序列不相同,則檢測到一個CRC錯誤。④格式錯誤:當一個固定形式的位場中出現(xiàn)一個或多個非法位時,則檢測到一個格式錯誤。⑤應答錯誤:在應答間隙期間,發(fā)送器未檢測到顯性位,則檢測到一個應答錯誤。2.7.2錯誤狀態(tài)界定為了進行錯誤界定,每個CAN控制器均設有兩個錯誤計數(shù)器:發(fā)送錯誤計數(shù)器(TEC)和接收錯誤計數(shù)器(REC)。CAN總線上所有節(jié)點按其錯誤計數(shù)器數(shù)值情況可分為三個狀態(tài):“錯誤主動”、“錯誤被動”、“總線關閉”。節(jié)點狀態(tài)轉換(根據(jù)錯誤界定規(guī)則)如圖2.9所示。錯誤錯誤主動錯誤被動總線關閉接受錯誤大于127或發(fā)送錯誤大于127或發(fā)送錯誤小于128或發(fā)送錯誤計數(shù)小于128正常模式請求和11個連續(xù)的隱性位128次接受錯誤計數(shù)大于255圖2.9節(jié)點錯誤狀態(tài)轉換圖上電復位后,兩個錯誤計數(shù)器的數(shù)值都為0,節(jié)點處于錯誤主動狀態(tài),可正常參與總線通信,檢測到錯誤時,發(fā)送主動錯誤標志。當錯誤計數(shù)器任一計數(shù)器數(shù)值超過127時,節(jié)點進入錯誤被動狀態(tài)。處于錯誤狀態(tài)的節(jié)點可參與總線通信,但出錯后,發(fā)送被動錯誤標志,并在開始進一步發(fā)送數(shù)據(jù)之前將等待一段附加時間(暫停發(fā)送場)。當發(fā)送錯誤計數(shù)器和接收錯誤計數(shù)器均小于或等于127時,節(jié)點從錯誤被動狀態(tài)再次變?yōu)殄e誤主動狀態(tài)。若發(fā)送錯誤計數(shù)器數(shù)值超過255后,節(jié)點進入總線關閉狀態(tài),既不能向總線發(fā)送數(shù)據(jù),也不能從總線接收數(shù)據(jù)。當軟件執(zhí)行操作模式請求命令,并等待128次總線釋放序列(11位連續(xù)隱性位)后,節(jié)點從總線脫離狀態(tài)重新回到錯誤主動狀態(tài)。2.8MATLAB/Simulink介紹表3.1仿真參數(shù)設置MATLAB/Simulink應用于數(shù)學分析、算法丌發(fā)及應用程序開發(fā),是一款功能強大的建模軟件,且集計算、可視化及編程于一身。該軟件只能對離線模型進行仿真和算法的初步驗證,但可通過RTW對MATLAB進行擴展,即可從Simulink方框圖中自動生成C代碼。此時,要對仿真參數(shù)進行設置,如表3.1所示:2.9dSPACE實時系統(tǒng)軟件作為一個全方位的計算機輔助設計與測試的平臺,dSPACE擁有簡單易用的代碼生成及下載的軟件和實驗工具軟件,還擁有極強靈活性的硬件組合系統(tǒng)。在軟件方面,它將代碼生成及下載的軟件集成于MATLAB中,且允許用戶在MATLAB中直接調用dSPACE的各種函數(shù)庫。2.9.1RTW(Real-TimeWorkshop)RTW與dSPACE的RTI(Real—TimeInterface)配合,可從Simulink方框圖中自動生成可移植的代碼,并根據(jù)配置目標能自動生成多種環(huán)境下的程序。2.9.2代碼生成和下載軟件RTIRTI(Real—TimeInterface)用于連接MATLAB/Simulinl(與dSPACE實時系統(tǒng),可同時對Simulink庫和RTW進行擴展,實現(xiàn)無需編寫程序就能完成從Simulink模型到dSPACE實時硬件代碼的無縫自動下載。具體實現(xiàn)過程如下:l、建立Simulink模型,進行離線仿真;2、添加dSPACEI/O;3、生成實時代碼并下載到實時硬件中;4、用dSPACE實驗工具進行實驗過程中的交互操作;RTI可處理連續(xù)系統(tǒng)、離散系統(tǒng)、混合系統(tǒng)和多采樣頻率系統(tǒng),且若系統(tǒng)較為復雜,則可采用RTI—MP來完成多處理器系統(tǒng)的系統(tǒng)設計、建立多處理器的網(wǎng)絡結構??膳浜鲜褂枚嗵幚砥鞯膶嶒灩ぞ哕浖﨏ontrolDeskMultiprocessorExtension。2.9.3ControlDesk綜合實驗和測試環(huán)境軟件ControlDesk為實驗過程提供綜合管理,具體可以實現(xiàn):1)實時硬件的圖形化管理ControlDesk可以注冊管理新硬件;對內存大小和處理器時鐘頻進行檢查;采用Windows拖放方式來完成目標程序的下載;用START和STOP來控制實時程序的啟動和停止;通過ERRORMESSAGELOGGING窗口實現(xiàn)出錯監(jiān)視功能;觀看配置數(shù)據(jù)。2)用戶虛擬儀表的建立在ControlDesk中,用戶可以從儀表庫中采用拖放的方式建立所需的虛擬儀表,并通過所建立的虛擬儀表與實時程序進行動態(tài)數(shù)據(jù)交換、實時曲線跟蹤、完成參數(shù)在線修改,并能記錄實時數(shù)據(jù),實現(xiàn)實時數(shù)據(jù)回放等。3)變量的可視化管理ControlDesk以圖形方式訪問RTI生成的變量文件(*.par),通過拖放操作在變量和虛擬儀表之間建立聯(lián)系,除了能訪問一般變量外,還可以訪問比如采樣時間、中斷優(yōu)先級、程序執(zhí)行時問等其他與實時操作相關的變量。4)參數(shù)的可視化管理ControlDesk能根據(jù)實時變量樹生成參數(shù)文件,通過參數(shù)文件對實時實驗進行批參數(shù)修改,通過多個參數(shù)文件的順序調入研究不同參數(shù)組對實時實驗的影響。2.10本章小結本章只要講述了CAN總線的原理和dSPACE的硬件及軟件,包括CAN的性能、協(xié)議、報文的格式,和dSPACE的實時系統(tǒng),以及ControlDesk綜合實驗和測試環(huán)境。dSPACE中CAN模塊通訊實現(xiàn)采用dSPACE仿真平臺進行系統(tǒng)仿真的研究,代表著國際上這方面的先進水平。作為一個全方位的計算機輔助設計平臺,dSPACE擁有簡單易用的代碼生成及下載軟件、試驗工具軟件,還擁有靈活性極強的硬件組合系統(tǒng),具有其它仿真機所無可比擬的優(yōu)越性。利用dSPACE,可以把精力全神貫注于控制方案的構思,可以大大縮短開發(fā)周期。本章將利用dSPACE系統(tǒng)針對CAN總線系統(tǒng)進行通信開發(fā),在計算機上實現(xiàn)CAN總線系統(tǒng)的通訊仿真。3.1dSPACE的CAN模塊3.1.1CAN網(wǎng)控制器局域網(wǎng)絡(CAN)是20世紀80年代初為汽車業(yè)開發(fā)的一種串行數(shù)據(jù)通信總線。CAN是一種很高保密性,有效支持分布式控制或實時控制的串行通信網(wǎng)絡。CAN總線在工業(yè)控制領域廣泛應用得益于其自身的技術特點:①CAN總線采用多主結構,網(wǎng)絡上的任一節(jié)點可在任意時刻向其他節(jié)點發(fā)送信息,通信方式靈活;②網(wǎng)絡上的節(jié)點根據(jù)對總線訪問優(yōu)先級的不同(取決于報文標識符),最快可在134μs內得到響應;③采用非破壞性總線仲裁技術,可以大大節(jié)省總線沖突總裁時間,網(wǎng)絡在擁擠的情況下也不會癱瘓;④CAN協(xié)議廢除了站地址編碼,而是對通信數(shù)據(jù)進行編碼,這可使不同的節(jié)點同時接受到相同的數(shù)據(jù),可以方便實現(xiàn)點對點、一點對多點及全局廣播等方式的傳送接受數(shù)據(jù),容易構成冗余結構,提高系統(tǒng)的可靠性和靈活性;⑤CAN采用NRZ編碼,直接通信距離最遠可達10km(速率5Kbps),通信速率最高可達1Mbps(此時通信距離最長為40m);⑥采用短幀結構,傳輸時間短,受干擾的概率低。CAN的每幀信息都有CRC效驗及其他檢錯措施,保證出錯率極低;⑦通信介質可為雙絞線、同軸電纜和光纖,選擇靈活;⑧CAN節(jié)點在錯誤嚴重的情況下具有自動關閉輸出功能,以使總線上的其它操作不受影響。此外,CAN總線還帶來如下好處:減少各功能模塊所需的線束數(shù)量和體積;減少整車質量并降低汽車成本,具有較高的數(shù)據(jù)傳輸可靠性和安裝便捷性,擴展了汽車功能;一些數(shù)據(jù)如車速、電機轉速和SOC等能夠在總線上共享,因此去除了冗余的傳感器,使傳感器信號線減至最少,控制單元可做到高速數(shù)據(jù)傳輸;可以通過增加節(jié)點來擴展功能,如果數(shù)據(jù)擴展增加新的信息,只需升級軟件即可;實時監(jiān)測并糾正由電磁干擾引起的傳輸錯誤,并在檢測到故障后存儲故障碼。3.1.2dSPACE系統(tǒng)dSPACE是一套基于Matlab/Simulink的控制系統(tǒng)開發(fā)及半實物仿真的軟硬件工作平臺,實現(xiàn)了與Matlab/Simulink/RTW的完全無縫連接。dSPACE系統(tǒng)擁有實時性強,可靠性高,擴充性好等優(yōu)點。dSPACE硬件系統(tǒng)中的處理器具有高速的計算能力,并配備了豐富的I/O支持,可以根據(jù)需要進行組合;軟件環(huán)境的功能強大且使用方便,包括實現(xiàn)代碼自動生成/下載和試驗/調試的整套工具。dSPACE硬件系統(tǒng):microAutobox是dSPACE的硬件部分,是專門為內置實驗設計的工作平臺,本系統(tǒng)選用的組件包括處理板DS1005和I/O接口板DS2210,DS1005板與DS2210板之間通過32位高速PHS總線進行數(shù)據(jù)傳輸。其內部結構如圖3.1所示,DS1005處理板采用了MotorolaPowerPC750芯片為核心處理器,主頻為480MHz,通過以太網(wǎng)與PC主機通訊。PCPC主機ControldeskdSPACEMicroAutobox處理器DS1005I/O板DS2210以太網(wǎng)圖3.1dSPACE硬件件系統(tǒng)dSPACE軟件系統(tǒng):Controldesk是dSPACE的軟件部分,作為調試工具,Controldesk可實現(xiàn)數(shù)據(jù)采集、參數(shù)實時調節(jié)、監(jiān)控或中斷程序執(zhí)行等功能。3.2CAN總線通訊程序開發(fā)3.2.1系統(tǒng)開發(fā)流程系統(tǒng)開發(fā)流程如圖3.2所示:包括信號輸入電路的搭建、dSPACE硬件(MicroAutobox)接口的連接、在MATLAB/Simulink中建立系統(tǒng)模型、實時C代碼的生成、編譯和下載、用ControlDesk試驗工具軟件包,對系統(tǒng)進行在線調試等幾個部分。信號輸入電路的搭建信號輸入電路的搭建dSPACE硬件(MicroAutobox)接口的連接在MATLAB/Simulink中建立系統(tǒng)模型實時C代碼的生成、編譯和下載用ControlDesk試驗工具軟件包,對系統(tǒng)進行在線調試結束圖3.2系統(tǒng)開發(fā)流程圖3.2.2基于dSPACE的信號生成電路圖3.3輸入信號的電位計電路本系統(tǒng)采用的信號裝置為一十轉繞線電位計。電路由R1與R2+R3組成的分壓電路,再由U1緩沖器得到一穩(wěn)定的參考電壓Vf1,將此穩(wěn)定的參考電壓送至電位計。參考電壓為3.6V,因此經(jīng)過十轉的電位計,每一轉360°,十轉計有3600°,因此可以達到每一度的電壓為1mV的精度。R6,R7,U4,R5,R4組成OFFSET電路,使V0輸出電壓在0°時,電壓為零伏特。電路圖如圖3.3所示:3.2.3MicroAutobox硬件接口的連接本CAN總線通訊系統(tǒng)利用MicroAutobox自帶的兩個CAN模塊,在外部搭建CAN通訊總線。為了增強CAN通訊的可靠性,CAN總線網(wǎng)絡的兩個端點通常要加入有抑制信號反射的終端匹配電阻RT,當通信介質為雙絞線時,一般取RT=100~120Ω。本研究選擇RT為120Ω。并將V0信號接線端通過dSPACE接線端子與V1引腳(A/D轉換模塊信號輸入通道)相連接。具體引腳連接如圖3.4所示:VV0接線端ADCType1inCon2Ch4V1V6X6V5X5CAN1highCAN1lowCAN1CAN2highCAN2lowCAN2RT圖3.4MicroAutobox硬件接口3.2.4MATLAB/Simulink建模在MATLAB/Simulink中建立系統(tǒng)模型,其中包括信號AD處理模塊、CAN設置模塊、CAN信息收發(fā)模塊。具體模型圖如圖3.5所示:第一組第一組第二組圖3.5MATLAB/Simulink模型圖3.6模塊功能設置窗口開始開始初始化CAN模塊查詢A/D完成標志位是否置位讀取A/D結果寄存器數(shù)據(jù)將數(shù)據(jù)寫入發(fā)送緩沖器啟動發(fā)送命令結束NYNN處理收到的報文中斷服務程序接受中斷?從緩沖器中讀出報文并保存Y釋放接收緩沖器圖3.7發(fā)送程序流程圖圖3.8接收報文流程圖(中斷控制)當模型建立完成后先對模型運行環(huán)境進行設置,選擇1401板組,將A/D模塊的通道設置為ADCType1Con2Ch4。然后對相應CAN模塊進行設置。針對CANCONTROLLERSETUP定義CAN的硬件的全局設置,如模塊類型、模塊編號、控制器和波特率。我們將第一組模塊設置為模塊類型1、模塊編號1、控制器中選擇報文類型為標準幀發(fā)送,將第二組模塊設置為模塊類型1、模塊編號2、控制器中選擇報文類型為標準幀接收。模塊屬性如圖3.6所示:對發(fā)送信息的報文格式進行編碼和傳送的信息與某一特定標識符的設置。其中數(shù)據(jù)幀由七種不同的位域(BitField)組成:幀起始(Startof)、仲裁域(ArbitrationField)、控制域(ControlField)、數(shù)據(jù)域(DataField)、CRC域(CRCField)、應答域(ACKField)和幀結尾(Endof)。數(shù)據(jù)域的長度可以為0~8個字節(jié)。發(fā)送節(jié)點CAN模塊在初始化結束后,以查詢的方式檢測A/D完成標志位是否置位,當檢測到標志位置位后,讀取A/D轉換結果,并將數(shù)據(jù)寫入發(fā)送緩沖器,隨后啟動發(fā)送命令使報文向總線上發(fā)送,完成發(fā)送程序。節(jié)點發(fā)送程序流程如圖3.7所示:接收節(jié)點接受報文采用中斷方式,如果條信息已通過驗收濾波器且已放在接收緩沖器中,那么會產生一個接收中斷。因此,微控制器能立刻起作用,將接收到的信息送到信息存儲器,然后通過對命令寄存器的相應標志RRB置位,釋放接收緩沖器,完成信息接收程序。節(jié)點接收程序流程圖如圖3.8所示:3.2.5C代碼的生成、編譯、連接和下載選擇RTW(Real-Time-Workshop)Build,自動完成目標系統(tǒng)從線框圖到實時C代碼的生成、編譯、連接和下載。即使是復雜的大型控制系統(tǒng),該過程也只需幾分鐘左右。3.2.6基于ControlDesk通訊程序測試圖3.9Controldesk通訊界面用ControlDesk試驗工具軟件包將運行完的模型另存為experiment,將模型樹中變量拖拽到ControlDesk的layout模塊中,使其建立連接,并與實時控制器進行交互操作,如調整控制參數(shù),顯示控制系統(tǒng)的狀態(tài)。實時CAN通訊界面如圖3.9所示。實驗結果表明,針對信號電路的發(fā)送數(shù)據(jù),接收模塊能準確接受相應發(fā)送數(shù)據(jù),且跟隨性良好,達到了預先期望的基于CAN總線進行通訊的目的。3.3本章小結本章采用dSPACE標準組件系統(tǒng)作為仿真機,建立了數(shù)字控制系統(tǒng),開發(fā)了針對CAN總線的通訊系統(tǒng),并通過ControlDesk綜合試驗與測試軟件,進行了實時仿真測試,實現(xiàn)了CAN模塊之間的信息通訊,為下一步實現(xiàn)多個模塊基于CAN總線的通訊,及在實驗室實現(xiàn)混和動力汽車發(fā)動機、ABS、電機、電池系統(tǒng)等控制模塊之間的通訊提供思路。CAN總線系統(tǒng)的節(jié)點設計4.1CAN協(xié)議支持器件迄今為止,支持CAN協(xié)議的有Inter、Motorola、Philips、Siemens等百余家國際著名公司,目前市場上最常見的CAN總線產品按照控制器芯片的功能來分有兩種:一種是獨立的CAN控制器芯片,如Philips的PCA82C200和SJA1000;一種是集成到微控制器中的控制器芯片,其中有8位微控制器芯片,如Philips的PSXC59X系列芯片,有16位控制器芯片,如Motorola的68HC912系列以及32位微控制器芯片,如Motorola的MC6837系列芯片和帶有CAN的DSP芯片,如TI的TMS32OLF24系列芯片。本論文的核心任務是用STC89C52RC單片機以及CAN控制器SJA1000和CAN驅動收發(fā)器PCA82C250作為CAN網(wǎng)子節(jié)點,構建汽車中央門鎖系統(tǒng),實現(xiàn)汽車中控門鎖的CAN網(wǎng)控制,所以下面主要介紹這種器件,在介紹中將主要突出在設計中用到的功能,而對那些未用功能僅作簡單介紹。P87C591是一個8位高性能單片機。它具有片內CAN控制器,是80C51單片機家族中非常優(yōu)秀的一員。它采用了強大的80C51指令集,并成功地包含了PhiliPs公司CAN控制器SJA100O的強大的功能。P87C591單片機以其先進的CMOS工藝制造和設計,廣泛應用于汽車和通用的工業(yè)中。除了80C51的標準特性之外,器件還為這些應用提供許多專用的硬件功能,主要是便于和CAN總線進行連接。1.特性P87C591的主要特性可以歸納為以下幾點:16KB的內部程序存儲器;512KB片內數(shù)據(jù)RAM;3個16位定時/計數(shù)器T0、T1(標準80C51)和T2(捕獲和比較);1個片內看門狗定時器T3;帶6路模擬輸入的10位模數(shù)轉換器(ADC),可選擇的快速8位ADC;2個8位分辨率的脈寬調制輸出(PWM);具有32個可編程的I2C總線1/0接口;保密位,32KB加密陣列;4個中斷優(yōu)先級,巧個中斷源;有兩個16位的DPTR寄存器可以提供對外數(shù)據(jù)存儲器的尋址方法;可禁止ALE實現(xiàn)降低EMI;低電平復位信號;增強型PeliCAN內核;溫度范圍-40℃~85℃;提供44引腳的LCC封裝;2.引腳的簡單描述P87C591的引腳如圖4.l所示。圖4.1P87C591的引腳圖Vdd:接電源。可以提供正常、空閑和掉電工作電壓;VSS:接地端。0V參考點;P0、Pl、P2和P3為4個8位可編程的輸入/輸出(I/O)口。這里一些I/O口還提供了其他的功能,這里不再詳細講述;XTALI:晶振引腳1。作為反相振蕩放大器輸入和內部時鐘發(fā)生電路的輸入。使用外部振蕩器時鐘信號的輸入端;XTALZ:晶振引腳2。作為反相振蕩放大器輸出。當使用外部振蕩器時開路;RST:復位端輸入。當定時器T3溢出時,提供復位脈沖輸入;EA/VPP:外部訪問輸入端。如果復位時它入保持TTL高電平,CPU執(zhí)行內部程序存儲器的程序;如果為TTL低電平,CPU通過P0和P2口執(zhí)行外部程序存儲器的程序(VPP:給P87C591提供編程電壓);PSEN:程序存儲使能端。外部程序存儲器的讀選通;ALE/PROG:地址鎖存使能端。正常操作中,在訪問外部程序存儲器時鎖存存儲器的低字節(jié)(p滅石石可作為編程時的脈沖輸入);AVref:AD轉換參考電阻端;AVSS:模擬信號接地端;PWM0:脈寬調制,輸出0;PWM1:脈寬調制,輸出1。3.P87C591的CAN控制器PeliCAN模塊PeliCAN模式是P87C591的CAN控制器的唯一模式。CPU通過5個特殊功能寄存器CANADR(地址)、CANDAT(數(shù)據(jù))、CANMOD(模式)、CANSTA(狀態(tài))和CANCON(控制)對PeliCAN模塊進行訪問。需要注意的是,根據(jù)訪問方向的不同,CANCON和CANSTA具有不同的寄存器結構。PeliCAN寄存器可以通過兩種不同的方式訪問。支持軟件輪詢或控制主要CAN功能的最重要的寄存器可以象單獨的SFRs一樣直接訪問。CAN模塊的其它部分通過一個間接的指針機制進行訪問。為了達到最高的數(shù)據(jù)吞吐量,在使用間接尋址時,也包含了地址自動增加的特性。①CANADR該讀/寫寄存器定義通過CANDAT訪問的PeliCAN內部寄存器的地址??蓪⑵浣忉尀閷eliCAN操作的一個指針。對PeliCAN塊寄存器的讀/寫訪問通過CANDAT寄存器執(zhí)行。通過地址自動增加模式,為CAN控制器內部寄存器提供了快速的類棧讀和寫。如果CANADR內當前定義的地址大于或等于32(十進制),CANADR的內容在任意對CANDAT讀或寫操作后自動增加。例如,將一個信息裝入發(fā)送緩沖區(qū),可通過將發(fā)送緩沖區(qū)的首地址70H(112)寫入CANADR,然后將信息字節(jié)一個接一個寫入CANDAT。CANADR超過FFH后復位為00H。如果CANADR小于32,不會執(zhí)行自動地址增加。即使CANDAT執(zhí)行讀或寫,CANADR的值仍保持不變。只允許在PeliCAN控制器的低地址空間進行寄存器輪詢。②CANDATCANDAT作為一個讀/寫寄存器。特殊功能寄存器CANDAT看上去是對CANADR所選的CAN控制器內部寄存器的一個端口。對CANDAT寄存器的讀寫等效于對該內部寄存器的訪問。需要注意的是,如果CANADR中當前的地址大于等于32,那么任何對CANDAT的訪問將使CANADR自動增加。③CANMOD對PeliCAN模式寄存器CANMOD是直接進行讀寫訪問的。模式寄存器位于PeliCAN模塊中的地址00H單元。④CANSTA根據(jù)訪問方向的不同,CANSTA提供對PeliCAN的狀態(tài)寄存器和中斷使能寄存器的直接訪問控制。對CANSTA的讀操作是對PeliCAN的狀態(tài)寄存器(地址2)進行訪問。對CANSTA的寫操作是對中斷使能寄存器(地址4)進行訪問。⑤CANCON根據(jù)訪問方向的不同,CANCON提供對PeliCAN的中斷寄存器和命令寄存器的直接訪問控制。對CANCON的讀操作是對PeliCAN的中斷寄存器(地址3)進行訪問。對CANCON的寫操作是對命令寄存器(地址l)進行訪問。4.2CAN總線節(jié)點的硬件設計本文所設計的是門鎖控制系統(tǒng)CAN總線節(jié)點,采用P87C591作為節(jié)點的微處理器,采用PHILIPS公司的82C250作為CAN總線通信接口的收發(fā)器。如圖4.2所示為門鎖控制系統(tǒng)CAN總線節(jié)點通訊相關的硬件電路原理圖。由于P8xC591本身含有CAN模塊,因此不需要外加CAN控制器,所需要的外部元件僅僅是一個晶振加兩個電容,一個連接到復位腳的電容(使用片內復位電路)以及一個收發(fā)器用于將P8xC591連接到CAN總線。為了加強CAN節(jié)點的抗干擾性,在硬件設計上采取了以下措施:1.印刷線路板要合理布局。元件在板上排列的位置要充分考慮抗電磁干擾問題,原則之一是各部件之間的引線要盡量短。在布局上,印制電路板要合理分區(qū),要把模擬信號部分、數(shù)字信號部分、噪聲源部分(繼電器、大功率開關等)合理分開,使相互之間的信號藕合減小到最小。把相互有關的器件就近放置,如時鐘發(fā)生器、晶振和CPU的時鐘輸入端都易產生噪聲,互相靠近放置。在布線時,使地線盡量的加粗。如果地線很細,則地線電阻將會較大,造成接地電位隨電流的變化而變化,,致使信號電平不穩(wěn),導致電路的抗干擾能力下降。在布線空間允許的情況下,要保證主要地線的寬度至少在2~3mm以上,元件引腳上的接地線應該在1.5mm左右。數(shù)據(jù)線的寬度應盡可能的寬,以減小阻抗。一般數(shù)據(jù)線的寬度至少不小于0.3mm,如果采用0.46~0.5mm則更好。2.82C250與CAN總線的接口部分也采用了一定的安全和抗干擾措施82C250的CANH和CANL引腳各自通過一個5Ω的電阻與CAN總線相連,電阻可起到一定的限流作用,保護82C250免受過流的沖擊。CANH和CANL與地之間并聯(lián)了兩個30p的小電容,可以起到濾除總線上的高頻干擾和一定的防電磁輻射的能力。另外在兩根CAN總線接入端與地之間分別反接了一個保護二極管,當CAN總線有較高的負電壓時,通過二極管的短路可起到一定的過壓保護作用。82C250的Rs腳上接有一個斜率電阻,電阻大小可根據(jù)總線通訊速度適當調整,一般在16K~40K之間。圖4.2門鎖控制系統(tǒng)CAN節(jié)點電路圖4.3CAN總線節(jié)點的軟件設計CAN總線節(jié)點的軟件設計主要包括三大部分:CAN節(jié)點初始化、報文發(fā)送和報文接收。熟悉這三部分程序的設計,就能編寫出利用CAN總線進行通信的一般應用程序。當然要將CAN總線應用于通信任務比較復雜的系統(tǒng)中,還需詳細了解有關CAN總線錯誤處理、總線脫離處理、接收濾波處理、波特率參數(shù)設置和自動檢測以及CAN總線通信距離和節(jié)點數(shù)的計算等方面的內容。下面僅就前面提到的三部分程序的設計作一個描述。4.3.1初始化1.復位模式和操作模式在上電或硬件復位后,CAN控制器將處于復位模式。在該模式中,模式寄存器的RM位總是為1。如果CAN控制器不處于復位模式,RM位的置位(通過硬件或軟件)將強制其進入復位模式,內部狀態(tài)機被凍結。典型地,在上電或硬件復位后,一旦引導和初始化程序結束,CPU將通過軟件(清零RM位)使CAN控制器進入操作模式。在操作模式中,下面任何一個動作將使RM位置位從而強制CAN控制器進入復位模式?!び布臀弧ねㄟ^軟件將RMMOD.0置位·總線脫離狀態(tài)此外,CAN控制器的”特殊模式”只能從復位模式中進入。這些特殊模式為測試模式、接收器極性模式、自檢測模式和只聽模式。退出復位模式后,CAN控制器返回到由模式寄存器所定義的模式。2.CAN控制器的設定CAN控制器在上電或硬件復位后必須進行設定以實現(xiàn)CAN通信,初始化的處理應當包括下面幾項:·操作模式·驗收濾波器·總線定時·TXDC輸出管腳配置·中斷圖4.3所示為初始化處理編程示例的流程圖。對于CAN控制器的初始化,只與表4.1中所列寄存器相關。大多數(shù)CAN寄存器具有一個方便的恢復特性,在硬件復位或使CAN控制器進入復位模式后用戶配置可保持不變(表4.1中標注“不變”)。表4.1CAN控制器寄存器設定3.流程圖下圖為CAN控制器初始化程序的簡短示例。圖4.3初始化的流程圖4.3.2發(fā)送信息的發(fā)送由CAN控制器根據(jù)CAN協(xié)議規(guī)范自動完成。首先,CPU必須將發(fā)送信息傳送到發(fā)送緩沖區(qū)中并置位命令寄存器中的”發(fā)送請求”標志。發(fā)送處理可通過中斷請求或查詢狀態(tài)標志進行控制。1.查詢控制的發(fā)送如圖4.5所示,CAN控制器的發(fā)送中斷被禁止用于該類型發(fā)送的控制。當P87C591發(fā)送數(shù)據(jù)時,發(fā)送緩沖區(qū)對寫操作鎖定。這樣CPU必須檢查狀態(tài)寄存器的”發(fā)送緩沖區(qū)狀態(tài)”標志(TBS),以確定是否可以將一個新信息放入發(fā)送緩沖區(qū)。發(fā)送緩沖區(qū)被鎖定:周期性查詢狀態(tài)寄存器,CPU一直等待發(fā)送緩沖區(qū)被釋放。發(fā)送緩沖區(qū)被釋放:CPU將新信息寫入發(fā)送緩沖區(qū)并置位命令寄存器的”發(fā)送請求”標志(TR),該標志導致發(fā)送的啟動。當發(fā)送完成狀態(tài)位置位時,標志CAN信息己經(jīng)成功發(fā)送。主流程:發(fā)送一個信息圖4.4“發(fā)送一個消息”(查詢控制)的流程圖2.中斷控制的發(fā)送根據(jù)控制器的主流程,CAN控制器的發(fā)送中斷和PsxC591的全局中斷必須在中斷控制的發(fā)送起始之前使能。中斷使能標志位于CAN控制器的中斷使能寄存器中。只要PsxC591在發(fā)送信息,發(fā)送緩沖區(qū)就禁止寫操作。這樣CPU必須檢查狀態(tài)寄存器的“發(fā)送緩沖區(qū)狀態(tài)”,標志(TBS),以確定是否可將一個新信息放入發(fā)送緩沖區(qū).將CAN信息寫入發(fā)送緩沖區(qū)和置位發(fā)送請求與前面所述相似。圖4.4所示為中斷控制信息發(fā)送的標準流程。還包括了對由于發(fā)送緩沖區(qū)未釋放而無法發(fā)送的信息的調度。該情況下使用CAN控制器的“放棄發(fā)送”功能。發(fā)送緩沖區(qū)被鎖定:發(fā)送緩沖區(qū)被鎖定時,CPU必須將信息臨時保存到數(shù)據(jù)存儲器中。并置位軟件標志“更多信息”,用于指示有新的信息等待發(fā)送。該情況下,下一個發(fā)送信息的起始將在中斷服務程序中處理。中斷服務程序在結束當前運行的發(fā)送時啟動。CPU在接收來自CAN控制器的中斷時,對中斷類型進行檢查。當發(fā)送中斷和”更多信息”標志置位時,等待發(fā)送的信息必須從數(shù)據(jù)存儲器復制到發(fā)送緩沖區(qū)并將”更多信息”標志清零。命令寄存器的”發(fā)送請求”標志置位,這將使CAN控制器啟動信息的發(fā)送。發(fā)送緩沖區(qū)被釋放:CPU將新信息寫入發(fā)送緩沖區(qū)并置位標志“發(fā)送請求”。在發(fā)送結束時,CAN控制器產生一個發(fā)送中斷。圖4.4“發(fā)送一個消息”(中斷控制)的流程圖4.3.3接收1.查詢控制的接收查詢控制接收的典型流程如圖4.5。所示CAN控制器的接收中斷禁止用于此接收控制的類型。CPU以一定周期讀取CAN控制器的狀態(tài)寄存器,以檢查是否接收緩沖區(qū)狀態(tài)標志(RBS)指示至少接收到一個信息。圖4.5“信息的接收”(查詢控制)的流程圖接收緩沖區(qū)狀態(tài)標志指示空,即沒有接收到信息:CPU繼續(xù)當前的任務直到產生一個新的檢查接收緩沖區(qū)狀態(tài)的請求。接收緩沖區(qū)狀態(tài)標志指示滿,即已接收一個或多個信息:CPU從CAN控制器取出第一個信息并置位命令寄存器中的釋放接收緩沖區(qū)標志。CPU可在下一次檢查之前處理每一個接收到的信息。也可以通過再次查詢接收緩沖區(qū)狀態(tài)位將所有數(shù)據(jù)下載到數(shù)據(jù)存儲器,并在之后將所有數(shù)據(jù)一起處理。該情況下,數(shù)據(jù)存儲器必須足夠大以保存尚未處理的多個信息。在傳送和處理一個或所有信息之后,CPU可繼續(xù)進行其它的任務。4.4本章小結本章主要介紹了CAN節(jié)點的硬件和軟件的設計,利用CAN總線的通訊原理,設計了CAN節(jié)點,作為汽車中央門鎖的控制器。軟件部分的設計涉及到:芯片的初始化、報文的發(fā)送和接收?;赿SPACE的控制系統(tǒng)設計5.1系統(tǒng)總體結構HHL開關信號電機驅動器門鎖執(zhí)行電機節(jié)點二右前門控制器鑰匙位置信號遙控器信號車速信號dSPACEMicroAutobox開關信號電機驅動器門鎖執(zhí)行電機節(jié)點一左前門控制器圖5.1控制系統(tǒng)結構圖本文中的汽車中央門鎖半實物仿真系統(tǒng)是利用dSPACEMicroAutoBox作為系統(tǒng)的信號處理模塊,用來接收鑰匙位置信號、遙控器信號和車速信號(本仿真系統(tǒng)中這些信號量是利用開關電路進行模擬),并對這些信號進行相應處理,控制系統(tǒng)結構圖如圖5.1所示,控制方式如以下3點說明:1、當接收到遙控器開鎖或者落鎖的信號時,dSPACEMicroAutoBox向節(jié)點一(駕駛側控制器)發(fā)送開鎖或落鎖的信號;2、當接收到鑰匙從鎖孔拔出的信號時,dSPACEMicroAutoBox向節(jié)點一發(fā)送開鎖信號;3、當接收到的車速信號所標定的車速大于20Km/h時,dSPACEMicroAutoBox向節(jié)點一發(fā)送落鎖信號。這樣當一節(jié)點接收到相應線號的時候,除向本節(jié)點的電機驅動器發(fā)送控制信號的同時,也向CAN總線上發(fā)送包含開鎖或落鎖數(shù)據(jù)的報文,當節(jié)點二從總線上接收到控制信號的時候,向電機驅動器發(fā)送信號,控制門鎖執(zhí)行電機完成相應的開鎖和落鎖的動作。即完成汽車門鎖的中央控制。另外其他節(jié)點如節(jié)點二(右前門控制器),接收到右前門開關信號的時候完成開鎖或落鎖,但是并不向總線上發(fā)送報文。這樣除駕駛側的車門可單獨控制其側門鎖的功能也就實現(xiàn)了。5.2dSPACE硬件部分及外圍電路5.2.1dSPACE硬件接口電路我們利用如圖5.2所示的三個開關電路,其中兩個用的是復位開關,一個用的是自鎖開關:兩個復位開關用來模擬遙控器遠程操控的開鎖和落鎖按鍵;自鎖開關用來模擬鑰匙是否在鑰匙孔的信號。本系統(tǒng)利用dSPACE普通I/O口作為信號采集和信號輸出端口。其中遙控器開鎖按鍵與Z3Group4ch4in端口相連;遙控器落鎖按鍵與a3Group4ch7in端口相連;鑰匙信號按鍵與Y3Group4ch1in端口相連。這三個端口作為信號的輸入端。A3Group1ch1out、A4Group1ch2out、A5Group1ch3out分別與節(jié)點一的單片機P1.2、P1.3、INT0相連,對節(jié)點一傳輸控制信號。具體連接如圖5.3所示:P1.2IN2(遙控器開鎖鍵)P1.2IN2(遙控器開鎖鍵)IN3(遙控器落鎖鍵)P1.3INT0IN1(鑰匙位置信號)Y3Group4ch1inA3Group1ch1outZ3Group4ch4inA4Group1ch2outa3Group4ch7inA5Group1ch3outADCType1inCon2Ch4dSPACEMicroAutoboxIN4(模擬的車速信號)圖5.2開關電路圖圖5.3dSPACE接口5.2.2基于dSPACE的模擬車速信號電路本系統(tǒng)采用的信號裝置為一十轉繞線電位計。以此作為車速的模擬信號,電路由R1與R2+R3組成的分壓電路,再由U1緩沖器得到一穩(wěn)定的參考電壓Vf1,將此穩(wěn)定的參考電壓送至電位計。參考電壓為3.6V,因此經(jīng)過十轉的電位計,每一轉360°,十轉計有3600°,因此可以達到每一度的電壓為1mV的精度。R6,R7,U4,R5,R4組成OFFSET電路,使V0輸出電壓在0°時,電壓為零伏特。電路圖如圖3.3所示:5.3實時仿真系統(tǒng)Matlab/Simulink模型建立本系統(tǒng)利用Matlab/Simulink建立控制模型,對四路輸入信號進行處理,從而得到三路輸出。通過對輸入信號進行轉化,得到相應的控制信號。如:鑰匙位置信號—當檢測到鑰匙從鎖孔內拔出時,向A3、B3口輸出一個低電平脈沖,而A5默認輸出高電平。所以當節(jié)點一接收到A3、A5、B3的低、高、低的信號時向CAN總線上發(fā)送帶有開鎖數(shù)據(jù)的報文,控制其他節(jié)點一同完成相應動作。圖5.4單脈沖子系統(tǒng)圖5.5布爾變量延時子系統(tǒng)具體信號關系見表5.1。其中信號為低電平單脈沖信號,如圖5.4所示,此封裝的子系統(tǒng),只有在上升沿的跳變激勵下才會產生一個低電平脈沖。由于我們這個系統(tǒng)的信號大多為布爾型,而Matlab/Simulink沒有封裝好的布爾變量的延時子系統(tǒng),所以我們封裝了如圖5.5所示的布爾型變量延時子系統(tǒng),這個子系統(tǒng)在主程序和低電平脈沖的系統(tǒng)中被調用。主程序如圖5.6所示。圖5.6門鎖系統(tǒng)控制主程序表5.1信號列表信號輸入端口信號輸入狀態(tài)輸出信號完成結果A3Group1ch1outA5Group1ch3outB3Group1ch5outY3Group4ch1in(鑰匙位置)0到1跳變0的單脈沖10的單脈沖開鎖Z3Group4ch4in(遙控器開鎖鍵)1111無動作0100開鎖a3Group4ch7in(遙控器落鎖鍵)1111無動作0010落鎖ADCType1inCon2Ch4(模擬車速)>20Km/h10的單脈沖0的單脈沖落鎖5.4汽車中央門鎖半實物仿真系統(tǒng)實驗利用dSPACE提供的綜合試驗軟件ControlDesk可以實現(xiàn)對實時硬件的圖形化管理,建立用戶虛擬儀表,實現(xiàn)變量和參數(shù)的可視化、試驗過程自動化管理。圖5.7為系統(tǒng)實物圖,圖5.8為采用ControlDesk綜合測試軟件開發(fā)的汽車中央門鎖半實物仿真系統(tǒng)測試界面。該界面不僅可以方便地對各種參數(shù)進行監(jiān)控、調節(jié),而且可以實時地顯示和保存試驗數(shù)據(jù)。我們利用ControlDesk對四路輸入信號和三路輸出信號進行監(jiān)測。當我們按動開關的時候,在狀態(tài)指示中能夠顯示我們的按鍵信息,這里指的是車鑰匙位置情況和遙控器狀態(tài),在右端能夠顯示發(fā)送的相應動作信號,在中間我們用一個車速表顯示模擬車速,模擬車速超過20Km/h時,車自動落鎖,我們也會看到發(fā)送落鎖信號的燈也會閃亮一次。這樣就實現(xiàn)了表5.1中介紹的各項功能。圖5.7系統(tǒng)實物圖圖5.8ControlDesk實驗界面5.5本章小結試驗表明,基于MATLAB/Simulink和dSPACE開發(fā)的汽車中央門鎖實時仿真系統(tǒng),通過半實物仿真獲得了滿意的效果。利用MATLAB/Simulink開發(fā)中央節(jié)點過程中所需編寫的代碼少,模型參數(shù)的修改、代碼的生成及下載非常方便。開發(fā)的汽車中央門鎖控制系統(tǒng)能夠滿足車輛的實際要求,為開發(fā)更先進的門鎖控制系統(tǒng)提供了思路。結論本研究基于MATLAB/Simulink和dSPACE開發(fā)了汽車中央門鎖半實物仿真試驗系統(tǒng)。系統(tǒng)以dSPACE標準組件的MicroAutoBox作為汽車中央門鎖的中央控制節(jié)點,用來接收車速信號、鑰匙位置信號和遙控器信號,并對這些數(shù)據(jù)進行處理。向采用STC89C52RC單片機的CAN控制器SJA1000和CAN驅動收發(fā)器PCA82C250發(fā)送相應信號,各節(jié)點按信號要求執(zhí)行相應動作對汽車門鎖進行控制。本文借鑒和吸收了很多先進的研究成果,完成了基于dSPACE的CAN總線通信的汽車中央控制門鎖系統(tǒng)。在此次設計中對dSPACE、Matlab/Simulink、CAN通信以及汽車中央門鎖等原理進行了研究,主要概括為以下幾個方面:研究了CAN通信系統(tǒng)結構和原理,按其結構和原理完成了CAN節(jié)點的設計和搭建。研究了Matlab/Simulink的工作機制和應用原理,并且完成了對中央門鎖的控制程序(線框模型圖)。研究了dSPACE系統(tǒng)的組成及工作原理,利用dSPACE體統(tǒng)完成了對CAN網(wǎng)中央門鎖的控制,并且進行了試驗,取得了最終滿意的成果。本論文所存在的不足以及進一步的展望:經(jīng)過前面章節(jié)的詳細敘述,論文表述了CAN網(wǎng)中央門鎖系統(tǒng)的硬件與軟件設計,雖然做出了一些成果,但由于個人能力和時間限制,系統(tǒng)僅僅是在CAN網(wǎng)中央門鎖方面的一個驗證性實驗,離最后的實用化、產品化還有一定的距離。總結以上的工作,有以下幾點展望:CAN網(wǎng)中央門鎖系統(tǒng)的試驗驗證工作仍需進一步加強。選用更先進合理的器件及電路解決方案,提高系統(tǒng)硬件設計水平,促進整機性能的提高。實現(xiàn)全車網(wǎng)絡化。利用CAN總線網(wǎng)絡的優(yōu)勢,將網(wǎng)絡節(jié)點遍布車身。實現(xiàn)最大限度的數(shù)據(jù)采集,存儲,并實現(xiàn)與汽車其它電控單元的車況信息共享,實現(xiàn)汽車集中控制。參考文獻薛定宇,陳陽泉,基于MATLAB/Simulink系統(tǒng)仿真技術與應用[M],北京:清華大學出版社.2002.鄔寬明,CAN總線原理和應用系統(tǒng)設計,北京:北京航空航天出版社,1996.楊滌,李立濤,楊旭,朱承元.系統(tǒng)實時仿真開發(fā)環(huán)境與應用[M.清華大學出版社,2002.陽憲惠.現(xiàn)場總線技術及其應用.北京:清華大學出版社,1999.程軍等.車輛控制系統(tǒng)CAN總線通信的實施方法.汽車工程,2001(5).韋作高.基于dSPACE的混合動力汽車試驗臺系統(tǒng)的研究與開發(fā)[D],重慶大學,2007年.朱正禮,殷承良,張建武.混合動力車中CAN總線系統(tǒng)的應用,交通運輸工程學報,2004.3.曹珊,于秀敏,高瑩,孫平,李穎.CAN總線在混合動力電動公共汽車中的應用,汽車技術,2005年第6期.孫智娟,徐杜,鐘舜聰.Matlab在計算機輔助數(shù)值分析與計算中的應用[J].計算機工程與科學,2002.侯鋼領,歐進萍.結構可靠指標計算的優(yōu)化模型及其在Matlab環(huán)境下的實現(xiàn)[J].哈爾濱建筑大學學報.張月明,李闖.一種流行的現(xiàn)場總線——CAN總線[J].現(xiàn)代電子技術,2003,26(24):61-62.韓黨群.CAN控制器SJA1000及其應用[J].電子技術應用,2003(1):66-67.武忠祥,裴仁清,王黎儷,等.基于CAN總線的分布式控制器設計和實現(xiàn)[J].電子技術應用,2008(5):1082111.范偉成,王文良,沈孟良.基于ATmega128單片機的CAN總線接口設計及應用[J].測控技術,2008,27(10):48250.周立功.帶CAN控制器的單片8位微控制器一8xC591.廣州周立功單片機發(fā)展有限公司,2004.潘旭峰等.代汽車電子技術.北京理工大學出版社.2004孔德勝.黑龍江科技信息.CAN總線技術在汽車上的應用及檢測維修.中國期刊網(wǎng)2008年10月(法)胡思德(DanielROUCHB).汽車車載網(wǎng)絡(VAN/CAN/LIN)技術詳解.北京:機械工業(yè)出版社.2006.6王篇.車身系統(tǒng)的CAN總線控制.汽車電器,2003,3(3)李紅波.獵豹新型SUV汽車的智能線束系統(tǒng).汽車電器,2003,3(13)陸文昌.基于CAN總線的汽車發(fā)動機智能測控節(jié)點的設計.汽車工程.2003,5(463)高松,應啟夏,魏民祥.CAN總線及其在汽車計算機控制系統(tǒng)中的應用,上海理工大學學報,2002,No.3王文.國產奧迪轎車CANBus簡介.汽車技術,2004,No.6遲瑞娟,曹正清.基于CAN總線的整車管理系統(tǒng)硬件設計.中國農業(yè)大學學報,2002,No.7(4)91-94葛林,周文華,徐航.CAN通信網(wǎng)絡在汽車中的應用研究.汽車技術,2000,No.11張平楊,孫隸華.汽車電氣系統(tǒng)網(wǎng)絡化技術及車身系統(tǒng)總線結構研究.汽車電器.2003,NO.1SAEStandard.RecommendedPracticeforaSericalControlandCommunicationVehicleNetworkJ1939Issued.200SAESpecification.ImplementationofCANforHeavyDutyTruckandBusMarket-SpecificationJ1939.1995SAEStandard.VehicleApplicationLayerSAEJ1939/73Issued.1994SAEStandard.VehicleApplicationLayerDiagnosticsSAEJ1939/73Issued.1996MC9S12DP256AdvanceInformation.Revision1.1.December1,2000SystemBasisChipwithHighSpeedCAN.July10,2002致謝經(jīng)過近半年的忙碌和工作,本次畢業(yè)設計已經(jīng)接近尾聲,在這次設計中我不僅鞏固了專業(yè)知識,而且提高了動手的能力,更重要的是這次畢業(yè)設計培養(yǎng)了我塌實的作風,端正了我學習的態(tài)度,也教給了我做人的道理。我相信這次畢業(yè)設計所積累下的寶貴經(jīng)驗會給我今后的學習和工作帶來很大的幫助和深遠的影響。作為一個本科生的畢業(yè)設計,由于經(jīng)驗的匱乏,有許多考慮不周全的地方,如果沒有導師的督促指導,以及同學的支持和幫助,想要完成這個設計是難以想象的。在這里要感謝我的導師,老師嚴謹?shù)闹螌W作風和孜孜不倦的工作態(tài)度深深地激勵著我,使我盡最大努力克服遇到的困難,不斷進步。循循善誘的教導和不拘一格的思路給予我無盡的啟迪。雖然老師平日里工作繁多,但在我做畢業(yè)設計的每個階段,從查閱資料,設計草案的確定

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論