新聞中心

EEPW首頁(yè) > 網(wǎng)絡(luò)與存儲(chǔ) > 設(shè)計(jì)應(yīng)用 > 如何識(shí)別陌生CAN網(wǎng)絡(luò)的協(xié)議?

如何識(shí)別陌生CAN網(wǎng)絡(luò)的協(xié)議?

作者:ZLG致遠(yuǎn)電子 時(shí)間:2018-03-07 來(lái)源:電子產(chǎn)品世界 收藏

  在網(wǎng)絡(luò)中,所有節(jié)點(diǎn)的數(shù)據(jù)收發(fā)共享一條總線。當(dāng)面對(duì)未知的多節(jié)點(diǎn)總線網(wǎng)絡(luò)時(shí),如何準(zhǔn)確分析各節(jié)點(diǎn)間的通信協(xié)議呢?

本文引用地址:http://butianyuan.cn/article/201803/376585.htm

  一、總線通信方式

  與485類(lèi)似,CAN-Bus也是以總線的方式進(jìn)行通信的,所有的CAN節(jié)點(diǎn)都掛在一對(duì)差分線上。但CAN總線中的節(jié)點(diǎn)不存在主從的概念,當(dāng)節(jié)點(diǎn)有數(shù)據(jù)需要上傳時(shí)可自主、即時(shí)發(fā)送,先進(jìn)的仲裁機(jī)制保證數(shù)據(jù)不會(huì)沖突。

    

  圖1 CAN總線通信方式

  二、CAN總線協(xié)議分析

  對(duì)比標(biāo)準(zhǔn)的通信七層模型,CAN總線大體可分為物理層、鏈路層、應(yīng)用層。對(duì)鏈路層的解析就能得到節(jié)點(diǎn)ID號(hào)。若對(duì)一個(gè)“未加密”CAN總線做鏈路層的解析,使用CAN總線接口卡(也稱(chēng)CAN盒)即可。這類(lèi)工具能將CAN通訊轉(zhuǎn)換為USB、PCI等通信方式,一般配合電腦使用。若要對(duì)CAN總線做全面的分析,則需要專(zhuān)業(yè)的總線分析儀。CANScope是集CAN節(jié)點(diǎn)測(cè)試與標(biāo)定、CAN總線故障診斷與解決的綜合儀器。

    

  圖2 CAN總線抓包工具及方法

  三、多路CAN卡的應(yīng)用

  以上提到的總線協(xié)議分析是在總線節(jié)點(diǎn)少、節(jié)點(diǎn)ID已知的前提下進(jìn)行的。當(dāng)面對(duì)一個(gè)協(xié)議未知且節(jié)點(diǎn)數(shù)多、節(jié)點(diǎn)ID未知網(wǎng)絡(luò)時(shí),首先要做的是分別摘取各路CAN中報(bào)文、辨識(shí)各節(jié)點(diǎn)ID。

    

  圖3 數(shù)據(jù)分離、摘取

  若將每個(gè)節(jié)點(diǎn)單獨(dú)取出做測(cè)試,則必然破壞原有通信規(guī)則。如何在不破壞原有通信的基礎(chǔ)上搞清楚一個(gè)陌生的收發(fā)協(xié)議呢?所謂工欲善其事,必先利其器。您需要一個(gè)能同時(shí)收發(fā)、轉(zhuǎn)送多路CAN數(shù)據(jù)的CAN卡,USBCAN-8E-U正是這種測(cè)試工具。

    

  圖4 USBCAN-8E-U

  USBCAN-8E-U集成8路CAN-bus接口,各通道間可做路由(轉(zhuǎn)發(fā))功能。在識(shí)別節(jié)點(diǎn)ID時(shí),可以將節(jié)點(diǎn)同時(shí)接到8個(gè)CAN接口上,然后設(shè)置8路CAN間通信自由轉(zhuǎn)發(fā),保證原有網(wǎng)絡(luò)通信規(guī)則不受破壞。強(qiáng)大的上位機(jī)軟件將每個(gè)通道發(fā)送、接收的CAN報(bào)文按通道分開(kāi)顯示,數(shù)據(jù)分析一目了然。

    

  圖5 多節(jié)點(diǎn)CAN網(wǎng)絡(luò)分析



關(guān)鍵詞: CAN

評(píng)論


技術(shù)專(zhuān)區(qū)

關(guān)閉