亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于CANoe的J1939協(xié)議在ECU通信中的應(yīng)用

        2016-11-03 22:53:48張一嬌
        科技視界 2016年18期
        關(guān)鍵詞:CAN總線(xiàn)

        張一嬌

        【摘 要】作為現(xiàn)場(chǎng)總線(xiàn)一員的CAN總線(xiàn)的架構(gòu)使用了OSI七層參考模型,其主要使用了七層參考模型中的物理層、數(shù)據(jù)鏈路層和應(yīng)用層,本文對(duì)這三層進(jìn)行了介紹。本文使用TC1728芯片的CAN模塊來(lái)實(shí)現(xiàn)一個(gè)傳送J1939協(xié)議報(bào)文的CAN節(jié)點(diǎn)。該ECU的CAN節(jié)點(diǎn)與CANoe仿真工具模擬的一個(gè)CAN節(jié)點(diǎn)之間使用J1939協(xié)議相互通信。用戶(hù)即可在CAN卡的圖形化界面中觀察ECU的CAN節(jié)點(diǎn)的報(bào)文幀是否正確。

        【關(guān)鍵詞】CAN總線(xiàn);OSI七層參考模型;CANoe

        J1939 Protocol in ECU communication based on CANoe

        ZHANG Yi-jiao

        (Chengdu College of University of Electronic Science & Technology, Chengdu Sichuan 611731, China)

        【Abstract】CAN bus architecture as a field bus uses the OSI reference model, which is mainly used seven layer reference model physical layer, data link layer and application layer, these three are described herein. As used herein, TC1728 chip CAN module to implement a packet transmission protocol J1939 CAN node. The communication between the CAN node of the ECU and CANoe simulation tool simulation is using J1939 protocol. The user can observe the ECU CAN node in the graphical interface of CAN card and they can judge whether the message frame is correct.

        【Key words】CAN bus; OSI seven layer reference model; CANoe

        0 引言

        在當(dāng)今社會(huì),汽車(chē)技術(shù)快速發(fā)展,汽車(chē)性能不斷提高,各類(lèi)電子設(shè)備在汽車(chē)上應(yīng)用得越來(lái)越廣泛。傳統(tǒng)的布線(xiàn)技術(shù)難以滿(mǎn)足現(xiàn)代汽車(chē)技術(shù)的需求,因此汽車(chē)總線(xiàn)技術(shù)得到越來(lái)越多汽車(chē)廠(chǎng)商的青睞。在汽車(chē)總線(xiàn)發(fā)展歷程中,K線(xiàn)等總線(xiàn)正在被淘汰,CAN線(xiàn)等總線(xiàn)已經(jīng)發(fā)展成熟,MOST等總線(xiàn)則正處于研究階段。

        1 CAN總線(xiàn)通信原理

        CAN總線(xiàn)是現(xiàn)場(chǎng)總線(xiàn)家族中極其重要的一員,而現(xiàn)場(chǎng)總線(xiàn)的定義為:應(yīng)用于工業(yè)現(xiàn)場(chǎng),采用總線(xiàn)方式連接多個(gè)設(shè)備,用于傳輸工業(yè)現(xiàn)場(chǎng)各種數(shù)據(jù)的一類(lèi)通信系統(tǒng)[1]。

        在國(guó)際標(biāo)準(zhǔn)化組織(ISO)提出的“開(kāi)放系統(tǒng)互聯(lián)(OSI)”的參考模式中,網(wǎng)絡(luò)系統(tǒng)結(jié)構(gòu)劃分為7層。從上到下依次是應(yīng)用層,表示層,會(huì)話(huà)層,傳輸層,網(wǎng)絡(luò)層,數(shù)據(jù)鏈路層,物理層。

        下表為各層的定義。

        CAN協(xié)議也是建立在國(guó)際標(biāo)準(zhǔn)化組織的開(kāi)放系統(tǒng)互聯(lián)模型基礎(chǔ)上的。不過(guò),其模型結(jié)構(gòu)只有3層,即只取OSI底層的物理層,數(shù)據(jù)鏈路層和上層的應(yīng)用層。由于CAN的數(shù)據(jù)結(jié)構(gòu)簡(jiǎn)單,又是范圍較小的局域網(wǎng),因此不需要其他中間層,應(yīng)用層數(shù)據(jù)直接取自數(shù)據(jù)鏈路層或直接向鏈路層寫(xiě)數(shù)據(jù),而物理層主要完成設(shè)備間的信號(hào)傳送,把各種信息轉(zhuǎn)換為可以傳輸?shù)奈锢硇盘?hào)(通常為電信號(hào)或光信號(hào)),并將這些信號(hào)傳輸?shù)狡渌繕?biāo)設(shè)備。結(jié)構(gòu)層次少,有利于系統(tǒng)中實(shí)時(shí)控制信號(hào)的傳送。

        2 CAN總線(xiàn)與J1939協(xié)議

        CAN總線(xiàn)其本質(zhì)是一種串行數(shù)據(jù)通信協(xié)議,其通信接口中集成了CAN協(xié)議的物理層和數(shù)據(jù)鏈路層功能,可完成對(duì)通信數(shù)據(jù)的成幀處理,包括位填充、數(shù)據(jù)塊編碼、循環(huán)冗余檢驗(yàn)、優(yōu)先級(jí)判別等工作[2]。CAN總線(xiàn)通信是通過(guò)5種類(lèi)型的幀進(jìn)行的,它們分別是數(shù)據(jù)幀、遠(yuǎn)程幀、錯(cuò)誤幀、過(guò)載幀和幀間隔。為了使數(shù)據(jù)能夠在總線(xiàn)上可靠傳輸,CAN總線(xiàn)對(duì)各類(lèi)幀的格式、用途及發(fā)送時(shí)機(jī)都進(jìn)行了詳細(xì)的規(guī)定。數(shù)據(jù)幀用于發(fā)送節(jié)點(diǎn)向接收節(jié)點(diǎn)傳送數(shù)據(jù),是使用最多的幀類(lèi)型,遠(yuǎn)程幀用于接收節(jié)點(diǎn)向某個(gè)發(fā)送節(jié)點(diǎn)請(qǐng)求數(shù)據(jù),錯(cuò)誤幀用于在檢測(cè)出通信錯(cuò)誤(如校驗(yàn)錯(cuò)誤)時(shí)向其他節(jié)點(diǎn)發(fā)出通知,過(guò)載幀用于接收節(jié)點(diǎn)通知,用于將數(shù)據(jù)幀和遠(yuǎn)程幀與前面的幀分離開(kāi)來(lái)。

        根據(jù)應(yīng)用場(chǎng)合的不同,國(guó)際上出現(xiàn)了多種CAN應(yīng)用層協(xié)議,如CANopen、DeviceNet、J1939等。J1939協(xié)議基于CAN2.0B協(xié)議,即數(shù)據(jù)幀為擴(kuò)展數(shù)據(jù)幀,數(shù)據(jù)標(biāo)識(shí)符(ID)由29位構(gòu)成,包括優(yōu)先級(jí)P、保留位R、數(shù)據(jù)頁(yè)DP、PDU格式PF、特定PDU(目標(biāo)地址PS)、源地址(SA)。J1939報(bào)文標(biāo)識(shí)符的具體結(jié)構(gòu)如圖1所示。

        3 總線(xiàn)測(cè)試系統(tǒng)的實(shí)現(xiàn)

        CANoe是德國(guó)VECTOR公司開(kāi)發(fā)的功能強(qiáng)大的仿真及測(cè)試軟件,使用時(shí)需要借助其他硬件測(cè)試工具配合使用,常使用的硬件包括CANcaseXL,CANScope,CANStress等[3]。本系統(tǒng)使用的硬件是CANcaseXL。

        3.1 需要用到的硬件

        在本文所搭建的測(cè)試系統(tǒng)中,我們選擇了以英飛凌Tricore架構(gòu)的32位微控制器TC1728為核心芯片的ECU作為一個(gè)節(jié)點(diǎn)。TC1728芯片實(shí)現(xiàn)的CAN模塊屬于全CAN設(shè)備,即,用硬件實(shí)現(xiàn)全部的總線(xiàn)協(xié)議,包括接收濾波和報(bào)文管理。CAN模塊的報(bào)文對(duì)象被組織為雙鏈列表,在該列表結(jié)構(gòu)中,每個(gè)報(bào)文對(duì)象都有兩個(gè)指針,一個(gè)指向列表中的前一個(gè)報(bào)文對(duì)象,另一個(gè)指向列表中的后一個(gè)報(bào)文對(duì)象。CAN模塊提供8個(gè)列表,每個(gè)報(bào)文對(duì)象分配給其中之一。

        圖2是TC1728芯片與PC機(jī)的一個(gè)通信示例。PC機(jī)通過(guò)CAN卡發(fā)送報(bào)文,然后TC1728芯片中的CAN節(jié)點(diǎn)0的報(bào)文對(duì)象10接收到報(bào)文后,在中斷函數(shù)中處理報(bào)文,最后使用報(bào)文對(duì)象12,通過(guò)CAN卡發(fā)送報(bào)文到PC機(jī)上。我們根據(jù)下圖編寫(xiě)代碼,實(shí)現(xiàn)TC1728芯片發(fā)送CAN報(bào)文,然后根據(jù)CAN總線(xiàn)應(yīng)用層的J1939協(xié)議,可以發(fā)送滿(mǎn)足J1939協(xié)議的報(bào)文。

        3.2 具體測(cè)試方法

        運(yùn)行在CAN總線(xiàn)應(yīng)用層上的是SAEJ1939協(xié)議,在CAN網(wǎng)絡(luò)中有2個(gè)節(jié)點(diǎn),一個(gè)是真實(shí)節(jié)點(diǎn)ECU,另一個(gè)節(jié)點(diǎn)是CANoe仿真工具。該CAN網(wǎng)絡(luò)是用來(lái)測(cè)試ECU的CAN模塊實(shí)現(xiàn)的SAEJ1939協(xié)議功能是否正確。

        在本測(cè)試系統(tǒng)中,我們用到了CANoe在ECU開(kāi)發(fā)過(guò)程中的半物理仿真。即將CANcaseXL硬件工具當(dāng)作一個(gè)節(jié)點(diǎn),與ECU共同處于一個(gè)CAN網(wǎng)絡(luò)中。CANoe軟件工具運(yùn)行在CANcaseXL硬件工具之上,使用了CANoe仿真功能中的總線(xiàn)數(shù)據(jù)庫(kù)以及建模(包含CAPL編程以及面板)兩項(xiàng)功能。

        CANoe仿真功能中的總線(xiàn)數(shù)據(jù)庫(kù)工具是CANdb++,它包含整個(gè)系統(tǒng)的各個(gè)節(jié)點(diǎn)、環(huán)境變量、消息的設(shè)定以及信號(hào)在消息中的相對(duì)位置,即數(shù)據(jù)幀中數(shù)據(jù)場(chǎng)的位置關(guān)系[4]。本測(cè)試系統(tǒng)使用CANdb++工具定義了報(bào)文DM4、DM5等的ID類(lèi)型及ID號(hào)等信息。

        CAPL是CAN總線(xiàn)訪(fǎng)問(wèn)編程語(yǔ)言,是一種類(lèi)C語(yǔ)言。CAPL程序能夠檢測(cè)事件,并執(zhí)行和事件相關(guān)的程序。檢測(cè)的事件類(lèi)型包括:程序開(kāi)始執(zhí)行事件、程序停止執(zhí)行事件、鍵盤(pán)輸入事件、CAN消息的接收事件、定時(shí)器超時(shí)事件、圖形面板輸入事件。CAPL程序是基于事件程序的組合。

        面板是CAN網(wǎng)絡(luò)節(jié)點(diǎn)的外部設(shè)備,用戶(hù)可以通過(guò)面板上面的信號(hào)觀察節(jié)點(diǎn)當(dāng)前狀態(tài),也可以通過(guò)點(diǎn)擊按鈕發(fā)送CAN報(bào)文。

        根據(jù)圖3所示,用戶(hù)可以通過(guò)點(diǎn)擊面板上面的按鈕輸出報(bào)文給ECU節(jié)點(diǎn)。CANoe軟件可發(fā)送的報(bào)文有DM4、DM5、DM6、DM12、DM21、DM23、DM26、DM28、DM29.

        在實(shí)現(xiàn)了ECU的CAN模塊編程以及CANoe仿真工具的報(bào)文輸出功能后,就可以通過(guò)PC機(jī)上的CAN卡來(lái)觀察CAN網(wǎng)絡(luò)中的報(bào)文傳輸情況。

        在CAN網(wǎng)絡(luò)中,ECU節(jié)點(diǎn)的地址是0x00,CANcaseXL節(jié)點(diǎn)的地址是0x2B,CANcaseXL節(jié)點(diǎn)利用面板點(diǎn)擊按鈕發(fā)送報(bào)文,ECU接收?qǐng)?bào)文。發(fā)送和接收的報(bào)文格式符合SAEJ1939協(xié)議的應(yīng)用層規(guī)范,如圖4所示。

        在圖4中,我們還可以看到,ECU節(jié)點(diǎn)的CAN模塊會(huì)發(fā)送DM1報(bào)文,DM1報(bào)文是不需要接收請(qǐng)求報(bào)文的,它會(huì)按照1s的周期定時(shí)發(fā)送。

        4 結(jié)束語(yǔ)

        本文使用CANoe仿真工具配合ECU進(jìn)行CAN通信,來(lái)測(cè)試ECU中CAN通信模塊功能是否正常。CANoe仿真工具使用面板實(shí)現(xiàn)了人機(jī)交互功能,使界面更加友好。在未來(lái)的研究中,可以嘗試加入更多的報(bào)文,并更精確報(bào)文發(fā)送的間隔時(shí)間。

        【參考文獻(xiàn)】

        [1]周立功.項(xiàng)目驅(qū)動(dòng)-CAN-bus現(xiàn)場(chǎng)總線(xiàn)基礎(chǔ)教程[M].北京:航空航天大學(xué)出版社,2012.

        [2]胡艷峰.基于CANoe的汽車(chē)CAN總線(xiàn)通信及診斷設(shè)計(jì)[J].汽車(chē)電器,2015(6):10-13,20.

        [3]張軍.基于CANoe軟件的電動(dòng)汽車(chē)CAN總線(xiàn)測(cè)試系統(tǒng)的研究[J].傳動(dòng)技術(shù),2012,26(3):10-13,42.

        [4]李志濤.基于CANoe的汽車(chē)網(wǎng)絡(luò)功能配置系統(tǒng)的開(kāi)發(fā)[J].汽車(chē)電器,2015(4):51-53.

        [責(zé)任編輯:楊玉潔]

        猜你喜歡
        CAN總線(xiàn)
        基于CAN總線(xiàn)的生物質(zhì)燃料鍋爐溫度集中控制研究
        論網(wǎng)絡(luò)通信技術(shù)
        基于嵌入式的汽車(chē)輔助制動(dòng)系統(tǒng)研究
        CAN總線(xiàn)通信技術(shù)在電梯監(jiān)控系統(tǒng)中的應(yīng)用
        商用車(chē)基于CAN總線(xiàn)的組合儀表開(kāi)發(fā)與應(yīng)用
        CAN總線(xiàn)在鐵路設(shè)備通信中的應(yīng)用
        利用MC9S12(X)單片機(jī)構(gòu)建CAN總線(xiàn)網(wǎng)絡(luò)的研究
        基于CAN總線(xiàn)的智能微噴灌監(jiān)控系統(tǒng)中下位機(jī)的硬件電路組成與設(shè)計(jì)
        基于CAN總線(xiàn)的變電站通訊網(wǎng)絡(luò)設(shè)計(jì)
        CAN總線(xiàn)技術(shù)、系統(tǒng)實(shí)現(xiàn)及發(fā)展趨勢(shì)
        精品国产亚洲av成人一区| 米奇影音777第四色| 中文无码精品一区二区三区| a欧美一级爱看视频| 国产91九色免费视频| 免费成人电影在线观看 | 国产av一级黄一区二区三区| 亚洲精品无码久久久久av老牛| 亚洲肥老太bbw中国熟女| 亚洲中文字幕不卡无码| 日韩免费精品在线观看| 人妻无码中文字幕| 欧美三级不卡视频| 国产在线观看不卡网址| 青青草国产手机观看视频| 特级毛片爽www免费版| 免费成人毛片| 在线精品亚洲一区二区三区| 末成年人av一区二区| 白天躁晚上躁麻豆视频| 久久精品国产亚洲婷婷| 中文字幕中文字幕三区| 中文精品久久久久人妻不卡| 真人二十三式性视频(动)| 亚洲AV无码一区二区三区精神| 日韩有码在线一区二区三区合集| 51看片免费视频在观看| 亚洲综合性色一区| 一区二区中文字幕蜜桃| 97se色综合一区二区二区| 日日碰狠狠添天天爽超碰97| 色哟哟av网站在线观看| 色综合悠悠88久久久亚洲| 色爱无码av综合区| 99久久人妻无码精品系列蜜桃| 一区二区在线观看视频亚洲| 国产私人尤物无码不卡| 无码国产精品一区二区免费16| 另类人妖在线观看一区二区| 情爱偷拍视频一区二区| 欧美性狂猛xxxxx深喉|