産品搜索:

技術交(jiāo)流

構建專屬于你的CAN-bus應用(yòng)層(céng)協議
來(lái)源:緻遠電子   發布時間:2017-05-02   浏覽量:60

随着CAN-bus相關芯片價格的(de)下降,内置CAN控制器MCU的(de)增多,CAN-bus當前已經進(jìn)入了衆多早期由于(yú)成本問題無法使用的領域,成爲極(jí)具生命力的現場總線,今天我(wǒ)們就來探讨如何構建專屬自己的CAN-bus應用層協議。

CAN-bus網絡上,CAN報文以廣播的形式(shì)發送,CAN報文不(bú)包含(hán)地址信息,是(shì)否處理接收到的(de)CAN報文由(yóu)接(jiē)收點的軟件确定。CAN-bus隻提(tí)供(gòng)可靠的報文傳(chuán)輸服務,CAN報文的使用(yòng)由應用者定義, 所以CAN網絡(luò)中的(de)節點要相互(hù)通信就必須制定(dìng)一個統一的規(guī)則。CAN應用層協議就是這樣一個規則。

這個規則(zé),定義了CAN報文中幀ID及幀數(shù)據(jù)的使用方式,如将(jiāng)幀ID定義爲(wèi)需要處理(lǐ)該(gāi)幀數據(jù)的CAN節點地址等(děng)。根據應用場合的不同,國際上出現了(le)多種CAN應用層協議,常見的CAN-bus應用層協議如(rú)下:

接下(xià)來(lái),我們看一下如何(hé)構建CAN-bus應用層協議

構建一個現(xiàn)場總線網絡,需要解決的關鍵技術問題有:

  • 總線傳輸信息的速度、容量、優先(xiān)等級、節點容量等;
  • 高(gāo)電磁幹擾環境下的可靠數據(jù)傳(chuán)輸;
  • 最大(dà)傳輸距離時延時大小的确定(dìng);
  • 網絡的容錯技術;
  • 網(wǎng)絡的監控和故障診斷功能。

要解決(jué)以(yǐ)上問題,需要充分考慮現場總線網絡(luò)所采用的總線類型,因爲以上問(wèn)題和總線的性能(néng)特點是密切相關的,那麽我們就看一下CAN-bus總線的上述特性:

  •  CAN-bus網絡傳(chuán)輸速度最高可達1Mbps,并(bìng)采用無損仲裁(cái),通過報文标識符指示(shì)報文優先級。
  •  CAN-bus采用差分信(xìn)号傳輸,并采用可(kě)靠的數據校驗和錯誤檢測機制。
  • CAN-bus采用幀傳輸,每個報文允許傳輸最多8個字節,幀結構有嚴格規定,能夠确定最大傳輸延時(shí)。
  •  CAN-bus具有可靠的(de)錯誤機制和檢測機制,發送的信息遭到破壞(huài)後可以重新發(fā)送;節點在錯誤嚴重的(de)情況下,具有(yǒu)自動退出總線的(de)功能。
  •  可(kě)以通過制定嚴(yán)禁的(de)CAN-bus應(yīng)用層協議解決網(wǎng)絡監(jiān)控和診斷。

CAN報文(wén)的分配

包含(hán)報文标識符的分配和報文數據的分(fèn)配,報文格式的定義,實(shí)質是将CAN報文的分(fèn)配規則進行詳(xiáng)細的描述。

報文(wén)ID的定義:

CAN2.0A幀(zhēn):11ID

CAN2.0B幀:29ID

報文數(shù)據的定義:

每幀報文最多(duō)包(bāo)含8字節數據

CAN網絡數據通信的實現

CAN網絡中,通過報(bào)文的标識符進(jìn)行信息的區分,因此通過報文(wén)的各種标識符分配來(lái)達到建立信息鏈接的目的。

                                       命令/響應(yīng)模式通信

CAN應用(yòng)層協議:面向節點和面向報文的協議

數據通信協議基本上可以(yǐ)劃分爲“面向節點的協議(yì)”和“面向報文的協議”兩種類型,如下圖:

                                                        面向節點和面向(xiàng)報文的數據通信(xìn)

制定一個CAN應用層協議

爲了給讀者演示CAN應用層協議的開發和(hé)使用方法,下面定義一個(gè)簡單的CAN應用協議棧,該協議棧中隻用到(dào)CAN标準幀(zhēn)中的數據幀,幀ID中的11個位的分配和使(shǐ)用方法如下表所列(liè),協議(yì)中另外還定義(yì)了功能參數長度變量FunDataLen的(de)功能參數數(shù)組FunData,該數(shù)組在需要時可以爲某些特定功能函數提供足夠的控制參數。

今天的交流先到這裏,如想了解(jiě)更多,可關注緻遠電(diàn)子官網微信,或參(cān)考緻遠電(diàn)子CANOpen國際現場總線教學科(kē)研平台(tái),幫您了解更多CAN-bus應用(yòng)層協議(yì)構建知識。

聯系我們站點地圖友情鏈接(jiē) 丨(shù) 工作(zuò)機會
聯系地址:福州市八一七中路茶亭國際(jì) 郵編:350004 電話:0591- 83275886
Copyright © 2011-2012 All Right Reserved 京ICP證000000号