一级黄色大片福州江閩儀器技術有限公司
 
·
·
 
·
·
·
産品(pin)搜索(suo):

技(ji)術交(jiao)流

構(gou)建專(zhuan)屬于(yu)你的(de)CAN-bus應用(yong)層協(xie)議
來(lai)源:緻(zhi)遠電(dian)子   發(fa)布時(shi)間:2025-11-21   浏(liu)覽量(liang):60

随着(zhe)CAN-bus相關(guan)芯片(pian)價格(ge)的下(xia)降,内(nei)置CAN控(kong)制器(qi)MCU的增(zeng)多,CAN-bus當(dang)前已(yi)經進(jin)入了(le)衆多(duo)早期(qi)由于(yu)成本(ben)問題(ti)無法(fa)使用(yong)的領(ling)域,成(cheng)爲極(ji)具生(sheng)命力(li)的現(xian)場總(zong)線,今(jin)天我(wo)們就(jiu)來探(tan)讨如(ru)何構(gou)建專(zhuan)屬自(zi)己的(de)CAN-bus應用(yong)層協(xie)議。

在(zai)CAN-bus網絡(luo)上,CAN報(bao)文以(yi)廣播(bo)的形(xing)式發(fa)送,CAN報(bao)文不(bu)包含(han)地址(zhi)信息(xi),是否(fou)處理(li)接收(shou)到的(de)CAN報文(wen)由接(jie)收點(dian)的軟(ruan)件确(que)定。CAN-bus隻(zhi)提供(gong)可靠(kao)的報(bao)文傳(chuan)輸服(fu)務,CAN報(bao)文的(de)使用(yong)由應(ying)用者(zhe)定義(yi), 所以(yi)CAN網絡(luo)中的(de)節點(dian)要相(xiang)互通(tong)信就(jiu)必須(xu)制定(ding)一個(ge)統一(yi)的規(gui)則。CAN應(ying)用層(ceng)協議(yi)就是(shi)這樣(yang)一個(ge)規則(ze)。

這個(ge)規則(ze),定義(yi)了CAN報(bao)文中(zhong)幀ID及(ji)幀數(shu)據的(de)使用(yong)方式(shi),如将(jiang)幀ID定(ding)義爲(wei)需要(yao)處理(li)該幀(zhen)數據(ju)的CAN節(jie)點地(di)址等(deng)。根據(ju)應用(yong)場合(he)的不(bu)同,國(guo)際上(shang)出現(xian)了多(duo)種CAN應(ying)用層(ceng)協議(yi),常見(jian)的CAN-bus應(ying)用層(ceng)協議(yi)如下(xia):

接下(xia)來,我(wo)們看(kan)一下(xia)如何(he)構建(jian)CAN-bus應用(yong)層協(xie)議

構(gou)建一(yi)個現(xian)場總(zong)線網(wang)絡,需(xu)要解(jie)決的(de)關鍵(jian)技術(shu)問題(ti)有:

  • 總(zong)線傳(chuan)輸信(xin)息的(de)速度(du)、容量(liang)、優先(xian)等級(ji)、節點(dian)容量(liang)等;
  • 高(gao)電磁(ci)幹擾(rao)環境(jing)下的(de)可靠(kao)數據(ju)傳輸(shu);
  • 最大(da)傳輸(shu)距離(li)時延(yan)時大(da)小的(de)确定(ding);
  • 網絡(luo)的容(rong)錯技(ji)術;
  • 網(wang)絡的(de)監控(kong)和故(gu)障診(zhen)斷功(gong)能。

要(yao)解決(jue)以上(shang)問題(ti),需要(yao)充分(fen)考慮(lü)現場(chang)總線(xian)網絡(luo)所采(cai)用的(de)總線(xian)類型(xing),因爲(wei)以上(shang)問題(ti)和總(zong)線的(de)性能(neng)特點(dian)是密(mi)切相(xiang)關的(de),那麽(me)我們(men)就看(kan)一下(xia)CAN-bus總線(xian)的上(shang)述特(te)性:

  •  CAN-bus網(wang)絡傳(chuan)輸速(su)度最(zui)高可(ke)達1Mbps,并(bing)采用(yong)無損(sun)仲裁(cai),通過(guo)報文(wen)标識(shi)符指(zhi)示報(bao)文優(you)先級(ji)。
  •  CAN-bus采用(yong)差分(fen)信号(hao)傳輸(shu),并采(cai)用可(ke)靠的(de)數據(ju)校驗(yan)和錯(cuo)誤檢(jian)測機(ji)制。
  • CAN-bus采(cai)用幀(zhen)傳輸(shu),每個(ge)報文(wen)允許(xu)傳輸(shu)最多(duo)8個字(zi)節,幀(zhen)結構(gou)有嚴(yan)格規(gui)定,能(neng)夠确(que)定最(zui)大傳(chuan)輸延(yan)時。
  •  CAN-bus具(ju)有可(ke)靠的(de)錯誤(wu)機制(zhi)和檢(jian)測機(ji)制,發(fa)送的(de)信息(xi)遭到(dao)破壞(huai)後可(ke)以重(zhong)新發(fa)送;節(jie)點在(zai)錯誤(wu)嚴重(zhong)的情(qing)況下(xia),具有(you)自動(dong)退出(chu)總線(xian)的功(gong)能。
  •  可(ke)以通(tong)過制(zhi)定嚴(yan)禁的(de)CAN-bus應用(yong)層協(xie)議解(jie)決網(wang)絡監(jian)控和(he)診斷(duan)。

CAN報文(wen)的分(fen)配

包(bao)含報(bao)文标(biao)識符(fu)的分(fen)配和(he)報文(wen)數據(ju)的分(fen)配,報(bao)文格(ge)式的(de)定義(yi),實質(zhi)是将(jiang)CAN報文(wen)的分(fen)配規(gui)則進(jin)行詳(xiang)細的(de)描述(shu)。

報文(wen)ID的定(ding)義:

CAN2.0A幀(zhen):11ID

CAN2.0B幀(zhen):29ID

報(bao)文數(shu)據的(de)定義(yi):

每幀(zhen)報文(wen)最多(duo)包含(han)8字節(jie)數據(ju)

CAN網絡(luo)數據(ju)通信(xin)的實(shi)現

在(zai)CAN網絡(luo)中,通(tong)過報(bao)文的(de)标識(shi)符進(jin)行信(xin)息的(de)區分(fen),因此(ci)通過(guo)報文(wen)的各(ge)種标(biao)識符(fu)分配(pei)來達(da)到建(jian)立信(xin)息鏈(lian)接的(de)目的(de)。

                                       命令(ling)/響應(ying)模式(shi)通信(xin)

CAN應用(yong)層協(xie)議:面(mian)向節(jie)點和(he)面向(xiang)報文(wen)的協(xie)議

數(shu)據通(tong)信協(xie)議基(ji)本上(shang)可以(yi)劃分(fen)爲“面(mian)向節(jie)點的(de)協議(yi)”和“面(mian)向報(bao)文的(de)協議(yi)”兩種(zhong)類型(xing),如下(xia)圖:

                                                        面(mian)向節(jie)點和(he)面向(xiang)報文(wen)的數(shu)據通(tong)信

制(zhi)定一(yi)個CAN應(ying)用層(ceng)協議(yi)

爲了(le)給讀(du)者演(yan)示CAN應(ying)用層(ceng)協議(yi)的開(kai)發和(he)使用(yong)方法(fa),下面(mian)定義(yi)一個(ge)簡單(dan)的CAN應(ying)用協(xie)議棧(zhan),該協(xie)議棧(zhan)中隻(zhi)用到(dao)CAN标準(zhun)幀中(zhong)的數(shu)據幀(zhen),幀ID中(zhong)的11個(ge)位的(de)分配(pei)和使(shi)用方(fang)法如(ru)下表(biao)所列(lie),協議(yi)中另(ling)外還(hai)定義(yi)了功(gong)能參(can)數長(zhang)度變(bian)量FunDataLen的(de)功能(neng)參數(shu)數組(zu)FunData,該數(shu)組在(zai)需要(yao)時可(ke)以爲(wei)某些(xie)特定(ding)功能(neng)函數(shu)提供(gong)足夠(gou)的控(kong)制參(can)數。

今(jin)天的(de)交流(liu)先到(dao)這裏(li),如想(xiang)了解(jie)更多(duo),可關(guan)注緻(zhi)遠電(dian)子官(guan)網微(wei)信,或(huo)參考(kao)緻遠(yuan)電子(zi)CANOpen國際(ji)現場(chang)總線(xian)教學(xue)科研(yan)平台(tai),幫您(nin)了解(jie)更多(duo)CAN-bus應用(yong)層協(xie)議構(gou)建知(zhi)識。

聯(lian)系我(wo)們 丨(shu) 站點(dian)地圖(tu)友(you)情鏈(lian)接 丨(shu) 工作(zuo)機會(hui)
聯系(xi)地址(zhi):福州(zhou)市八(ba)一七(qi)中路(lu)茶亭(ting)國際(ji) 郵編(bian):350004 電話(hua):0591-
Copyright © 2011-2012 All Right Reserved 京ICP證(zheng)000000号

 
·
·
· 
·