專(zhuān)利名稱(chēng):基于多路can總線(xiàn)捆綁進(jìn)行數(shù)據(jù)傳輸?shù)姆椒?br>
技術(shù)領(lǐng)域:
本發(fā)明涉及一種基于多路CAN總線(xiàn)捆綁進(jìn)行數(shù)據(jù)傳輸?shù)姆椒ā?br>
背景技術(shù):
CAN 總線(xiàn)CAN 是 Controller Area Network 的縮寫(xiě)(以下稱(chēng)為 CAN),是 ISO 國(guó)際標(biāo)準(zhǔn)化的串行通信協(xié)議。在當(dāng)前的汽車(chē)產(chǎn)業(yè)中,出于對(duì)安全性、舒適性、方便性、低公害、低成本的要求,各種各樣的電子控制系統(tǒng)被開(kāi)發(fā)了出來(lái)。由于這些系統(tǒng)之間通信所用的數(shù)據(jù)類(lèi)型及對(duì)可靠性的要求不盡相同,由多條總線(xiàn)構(gòu)成的情況很多,線(xiàn)束的數(shù)量也隨之增加。為適應(yīng)“減少線(xiàn)束的數(shù)量”、“通過(guò)多個(gè)LAN進(jìn)行大量數(shù)據(jù)的高速通信”的需要,1986年德國(guó)電氣商博世公司開(kāi)發(fā)出面向汽車(chē)的CAN通信協(xié)議。此后,CAN通過(guò)IS011898及IS011519進(jìn)行了標(biāo)準(zhǔn)化,已是汽車(chē)網(wǎng)絡(luò)的標(biāo)準(zhǔn)協(xié)議。
MultiCAN即一個(gè)微控制器上支持多個(gè)CAN總線(xiàn)。自二十世紀(jì)八十年代中期問(wèn)世以來(lái),控制器區(qū)域網(wǎng)絡(luò)(CAN)便成為了面向汽車(chē)應(yīng)用的標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議。如今的汽車(chē)制造商紛紛采用CAN實(shí)現(xiàn)動(dòng)力總成系統(tǒng)網(wǎng)絡(luò),電子穩(wěn)定控制系統(tǒng)、診斷以實(shí)現(xiàn)各種不同的舒適、便捷特性。MultiCAN在以往的CAN實(shí)現(xiàn)(包括英飛凌的TwinCAN,支持兩個(gè)CAN節(jié)點(diǎn))的基礎(chǔ)上有所改進(jìn),添加了諸如額外的CAN節(jié)點(diǎn),并且支持TTCAN節(jié)點(diǎn)以及CAN節(jié)點(diǎn)和TTCAN節(jié)點(diǎn)之間的橋接。MultiCAN可以支持更多消息對(duì)象、消息對(duì)象的鏈表管理以及支持TTCAN等特性。為實(shí)現(xiàn)后向兼容,也可將MultiCAN配置為提供類(lèi)似于TwinCAN的特性和功能。
ISO對(duì)低速和高速CAN總線(xiàn)進(jìn)行了定義。高速CAN總線(xiàn)標(biāo)準(zhǔn)為ISOl 1898,通信速度最高1Mbps,總線(xiàn)最大長(zhǎng)度40米,連接單元數(shù)最大30個(gè)。低速CAN總線(xiàn)標(biāo)準(zhǔn)ISOl 1519-2 中定義,通信速度最高125kbps,總線(xiàn)最大長(zhǎng)度lKm,連接單元數(shù),最大20個(gè)。圖1是SAE組織區(qū)分的低速CAN和高速CAN的分類(lèi),其中Class A和B可以使用低速CAN,用于車(chē)身、電子儀表等領(lǐng)域。ClassC可以使用高速CAN,用于發(fā)動(dòng)機(jī)控制、變速器控制和剎車(chē)控制等領(lǐng)域。 在Class C領(lǐng)域,高可靠強(qiáng)實(shí)時(shí)的數(shù)據(jù)對(duì)于車(chē)輛安全顯得非常 重要。圖2是傳輸距離和通信速率之間的關(guān)系曲線(xiàn)。隨著通信速率的增加,傳輸距離越來(lái)越短。因此,車(chē)輛總線(xiàn)的傳輸距離限制了 CAN的速率,這將會(huì)影響車(chē)輛的安全控制。
此外,CAN總線(xiàn)由于在物理層和鏈路層開(kāi)銷(xiāo)比較大,理論上帶寬利用率只有30%左右。隨著汽車(chē)電子化程度的日益提高,ECU總數(shù)在不斷增長(zhǎng),通過(guò)總線(xiàn)交換的數(shù)據(jù)流量也在日£fL提聞,CAN總線(xiàn)吞吐量逐步飽和。
FlexRay總線(xiàn)是FlexRay聯(lián)盟(FlexRay Consortium)推進(jìn)的車(chē)載網(wǎng)絡(luò)標(biāo)準(zhǔn),將在未來(lái)很多年內(nèi),引導(dǎo)整個(gè)汽車(chē)電子產(chǎn)品控制結(jié)構(gòu)的發(fā)展方向。FlexRay是繼CAN和LIN之后的最新研發(fā)成果,可以有效管理多重安全和舒適功能譬如,F(xiàn)lexRay適用于線(xiàn)控操作 (X-by-ffire)。FlexRay關(guān)注的是當(dāng)今汽車(chē)行業(yè)的一些核心需求,包括更快的數(shù)據(jù)速率,更靈活的數(shù)據(jù)通信,更全面的拓?fù)溥x擇和容錯(cuò)運(yùn)算。因此,F(xiàn)lexRay可以為下一代的車(chē)內(nèi)控制系統(tǒng)提供所需的速度和可靠性。CAN網(wǎng)絡(luò)最高性能極限為1Mbps,而FlexRay兩個(gè)信道上的每個(gè)數(shù)據(jù)速率最大可達(dá)到10Mbps,總數(shù)據(jù)速率可達(dá)到20Mbps秒,因此,應(yīng)用在車(chē)輛網(wǎng)絡(luò),F(xiàn)lexRay的網(wǎng)絡(luò)帶寬可以達(dá)到CAN的20倍之多。
但是FlexRay總線(xiàn)的標(biāo)準(zhǔn)協(xié)議比較復(fù)雜,價(jià)格也比較昂貴,還沒(méi)有在車(chē)輛上大規(guī)模使用,是未來(lái)的發(fā)展方向。并且FlexRay總線(xiàn)與CAN總線(xiàn)帶寬有一個(gè)量級(jí)的差距,應(yīng)用范圍更適用于高可靠強(qiáng)實(shí)時(shí)數(shù)據(jù)的領(lǐng)域,其和CAN總線(xiàn)之間還存在帶寬空白區(qū)域,不能滿(mǎn)足車(chē)輛總線(xiàn)的某些設(shè)計(jì)需求。
有鑒于此,特提出本發(fā)明。發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問(wèn)題在于針對(duì)現(xiàn)有技術(shù)的一些不足,提供一種能提高CAN總線(xiàn)使用帶寬,能滿(mǎn)足車(chē)輛更多控制需求,成本低,并能加強(qiáng)可靠性和提高實(shí)時(shí)性的基于多路 CAN總線(xiàn)捆綁進(jìn)行數(shù)據(jù)傳輸?shù)姆椒ā?br>
為解決上述技術(shù)問(wèn)題,本發(fā)明采用技術(shù)方案的基本構(gòu)思是
一種基于多路CAN總線(xiàn)捆綁進(jìn)行數(shù)據(jù)傳輸?shù)姆椒?,依次包括以下步驟
S1、靜態(tài)配置CAN GROUP CAN GROUP兩端加入相等數(shù)目的CAN節(jié)點(diǎn),CAN節(jié)點(diǎn)兩兩物理連接形成CAN總線(xiàn),并配置相互連接的兩個(gè)CAN節(jié)點(diǎn)一個(gè)為接收節(jié)點(diǎn),另一個(gè)為發(fā)送節(jié)占.
S2、配置鏈路請(qǐng)求CAN GROUP中加入CAN鏈路,并驗(yàn)證加入鏈路的的CAN節(jié)點(diǎn)參數(shù)是否匹配,若匹配,進(jìn)入S3 ;若不匹配,則報(bào)警;
S3、收發(fā)報(bào)文CAN GROUP在鏈路上輪流收發(fā)報(bào)文,發(fā)送時(shí),鏈路上順序發(fā)送,并以同樣的順序接收?qǐng)?bào)文。
進(jìn)一步地,步驟S2中在CAN GROUP中加入CAN鏈路的具體步驟是
從保留的16個(gè)CAN ID中取一個(gè)作為控制幀的ID,控制幀數(shù)據(jù)域的第一個(gè)字節(jié)作為控制幀的類(lèi)型;首先,向?qū)Χ薈AN節(jié)點(diǎn)發(fā)送加入CAN GROUP請(qǐng)求控制幀,控制幀類(lèi)型設(shè)置為加入CAN GROUP請(qǐng)求;然后,在數(shù)據(jù)域的后續(xù)字節(jié)上設(shè)置協(xié)商類(lèi)型,此后,對(duì)端節(jié)點(diǎn)返回響應(yīng)控制幀,控制幀類(lèi)型設(shè)置為請(qǐng)求加入CAN GROUP響應(yīng),在數(shù)據(jù)域的后續(xù)字節(jié)上表示協(xié)商成功或者失敗。
CAN GROUP中加入的CAN鏈路總數(shù)為N,,N為大于I的整數(shù),包括K條正向鏈路和 L條反向鏈路,N=K+L;
進(jìn)一步地,步驟S3中收發(fā)報(bào)文的順序規(guī)則為對(duì)于正向CAN報(bào)文,在CAN控制幀數(shù)據(jù)域中取前M個(gè)bit,當(dāng)Iog2K為整數(shù)時(shí),M=Iog2K, M取值在0-K-1之間循環(huán);當(dāng)Iog2K不是整數(shù)時(shí),M=Iog2K取整+1,M取值在O-K-1之間循環(huán);對(duì)于反向CAN報(bào)文,在CAN控制幀數(shù)據(jù)域中取前W個(gè)bit,當(dāng)Iog2L為整數(shù)時(shí),W=Iog2L, W取值在O-L-1之間循環(huán);當(dāng)Iog2L不是整數(shù)時(shí),M=Iog2L取整+1,W取值在O-L-1之間循環(huán);對(duì)于CAN報(bào)文靜荷不滿(mǎn)足8字節(jié)的,需要填充為8字節(jié),組內(nèi)的CAN幀在標(biāo)準(zhǔn)幀和擴(kuò)展幀中二選一,在同一方向的CAN幀是擴(kuò)展幀或者基本幀。
在步驟S3中CAN GROUP收發(fā)報(bào)文過(guò)程中,如果CAN GROUP的某節(jié)點(diǎn)發(fā)現(xiàn)鏈路損壞, 則將該鏈路從CAN GROUP自動(dòng)刪除,所有報(bào)文都在該方向 的剩余鏈路上輪流發(fā)送,如果受損的CAN鏈路恢復(fù)后自動(dòng)加入所在的CANGR0UP,報(bào)文在該方向上所有工作狀態(tài)正常的CAN鏈路上輪流發(fā)送。
進(jìn)一步地,將鏈路從CAN GROUP中刪除的具體步驟是由一端CAN節(jié)點(diǎn)發(fā)送刪除鏈路控制幀,控制幀類(lèi)型設(shè)置為從CAN GROUP中刪除一個(gè)鏈路請(qǐng)求,數(shù)據(jù)域的后續(xù)字節(jié)表示刪除的鏈路號(hào)等信息,此后,對(duì)端CAN節(jié)點(diǎn)返回響應(yīng)控制幀,控制幀類(lèi)型設(shè)置為從CAN GROUP 中刪除一個(gè)鏈路響應(yīng),在數(shù)據(jù)域的后續(xù)字節(jié)上表示刪除鏈路成果或者失敗。
刪除全部鏈路后才能刪除CAN GROUP, CAN GROUP刪除后,恢復(fù)為CAN總線(xiàn)默認(rèn)的收發(fā)方式。
優(yōu)選的,N=4,K=2,L=2。
采用上述技術(shù)方案后,本發(fā)明與現(xiàn)有技術(shù)相比具有以下有益效果本發(fā)明采用多路CAN總線(xiàn)捆綁,使得兩個(gè)控制器間CAN總線(xiàn)流量可以達(dá)到N*單個(gè)CAN總線(xiàn)帶寬(N為CAN 鏈路數(shù)),提高了 CAN總線(xiàn)的使用帶寬,填補(bǔ)了 CAN總線(xiàn)傳輸和FlexRay總線(xiàn)傳輸?shù)膸捒瞻讌^(qū)域,從而能滿(mǎn)足車(chē)輛總線(xiàn)設(shè)計(jì)的更多需求。由于把CAN總線(xiàn)型連接改為點(diǎn)到點(diǎn)連接,一個(gè)方向的故障不會(huì)影響到另外一個(gè)方向的故障,提高了可靠性,同時(shí),取消了 CAN報(bào)文傳輸過(guò)程中由于CAN優(yōu)先級(jí)仲裁產(chǎn)生的延時(shí),實(shí)時(shí)性也得到了提高。此外,當(dāng)一個(gè)方向的CAN總線(xiàn)故障后,同一方向的剩余CAN總線(xiàn)可以繼續(xù)完成報(bào)文傳輸作用,進(jìn)一步提高了可靠性。對(duì)于N=4,K=2, L=2的情況,本發(fā)明最多只增加Ibit的序列號(hào),占整個(gè)CAN幀長(zhǎng)的不到1%,所以基本幀和擴(kuò)展帶寬利用率下降的非常少,幾乎沒(méi)有影響,因此具有較高的使用價(jià)值。目前 CAN總線(xiàn)價(jià)格已經(jīng)較低,所以采用CAN總線(xiàn)的方式較FlexRay總線(xiàn)成本低。
下面結(jié)合附圖對(duì)于本發(fā)明的具體實(shí)施方式
作進(jìn)一步詳細(xì)的描述。
圖1是SAE組織區(qū)分的低速CAN和高速CAN的分類(lèi)表;
圖2是車(chē)輛總線(xiàn)的傳輸距離和現(xiàn)有CAN總線(xiàn)速率的關(guān)系圖3是本發(fā)明由4條CAN BUS組成的CAN GROUP的示意圖4是本發(fā)明CAN總線(xiàn)捆綁的幀格式圖。
具體實(shí)施方式
本發(fā)明是一種基于多路CAN總線(xiàn)捆綁進(jìn)行數(shù)據(jù)傳輸?shù)姆椒?,下面以圖3中N=4, K=2, L=2為例對(duì)本發(fā)明進(jìn)行詳細(xì)說(shuō)明,其中N為CAN GROUP中的CAN鏈路總數(shù),K為正向鏈路條數(shù),L為反向鏈路條數(shù),本發(fā)明依次包括以下步驟
S1、靜態(tài)配置 CAN GROUP CAN GROUP —端加入 CAN No del, CANNode 2, CAN Node3 和 CAN Node4,CAN GROUP 對(duì)端加入 CAN NodeA、CANNodeB、CAN NodeC和 CAN NodeD ;CAN Nodel 和CAN NodeA物理連接形成CAN BUS I, CAN Node2和CAN NodeB物理連接形成CAN BUS2, CANNode3 和 CAN NodeC 物理連接形成 CAN BUS3,CAN Node4 和 CAN NodeD 物理連接形成 CAN BUS4,并配置相互連接的兩個(gè)CAN節(jié)點(diǎn)為一個(gè)接收節(jié)點(diǎn)和一個(gè)發(fā)送節(jié)點(diǎn);
S2、配置鏈路請(qǐng)求CAN GROUP 中加入 CAN 鏈路使 CAN Nodel 和 CAN NodeA, CAN Node2 和 CAN NodeB, CAN Node3 和 CAN No`deC, CANNode4 和 CAN NodeD 邏輯連接形成 4 條鏈路,并驗(yàn)證加入鏈路的的CAN節(jié)點(diǎn)參數(shù)是否匹配,若匹配,進(jìn)入S3 ;若不匹配,則報(bào)警;
S3、收發(fā)報(bào)文CAN GROUP在鏈路上輪流收發(fā)報(bào)文,發(fā)送時(shí),鏈路上順序發(fā)送,并以同樣的順序接收?qǐng)?bào)文。
本發(fā)明使得兩個(gè)控制器間CAN總線(xiàn)流量可以達(dá)到4*單個(gè)CAN總線(xiàn)帶寬,提高了 CAN總線(xiàn)的使用帶寬,而只增加Ibit的序列號(hào)(見(jiàn)圖4),占整個(gè)CAN幀長(zhǎng)的不到1%,所以基本幀和擴(kuò)展帶寬利用率下降的非常少,幾乎沒(méi)有影響,因此具有更高的使用價(jià)值。目前CAN 總線(xiàn)價(jià)格已經(jīng)較低,所以采用CAN總線(xiàn)的方式較FlexRay總線(xiàn)成本低。
優(yōu)選的,步驟S2中在CAN GROUP中加入CAN鏈路的具體步驟是
從保留的16個(gè)CAN ID中取一個(gè)作為控制幀的ID,控制幀數(shù)據(jù)域的第一個(gè)字節(jié)作為控制幀的類(lèi)型;首先,向?qū)Χ薈AN節(jié)點(diǎn)發(fā)送加入CAN GROUP請(qǐng)求控制幀,控制幀類(lèi)型設(shè)置為加入CAN GROUP請(qǐng)求;然后,在數(shù)據(jù)域的后續(xù)字節(jié)上設(shè)置協(xié)商類(lèi)型,此后,對(duì)端節(jié)點(diǎn)返回響應(yīng)控制幀,控制幀類(lèi)型設(shè)置為請(qǐng)求加入CAN GROUP響應(yīng),在數(shù)據(jù)域的后續(xù)字節(jié)上表示協(xié)商成功或者失敗。本方案參數(shù)相互協(xié)商,保證CAN鏈路能夠收發(fā)正常。
上述步驟S3中收發(fā)報(bào)文的順序規(guī)則可為對(duì)于正向CAN報(bào)文,在CAN控制幀數(shù)據(jù)域中取前I個(gè)bit,M取值在O和I之間循環(huán);對(duì)于反向CAN報(bào)文,在CAN控制幀數(shù)據(jù)域中取前I個(gè)bit,W取值為O和I之間循環(huán);對(duì)于CAN報(bào)文靜荷不滿(mǎn)足8字節(jié)的,需要填充為 8字節(jié),組內(nèi)的CAN幀在標(biāo)準(zhǔn)幀和擴(kuò)展幀中二選一,在同一方向的CAN幀是擴(kuò)展幀或者基本中貞。事實(shí)上,報(bào)文收發(fā)順序規(guī)則是當(dāng)Iog2K為整數(shù)時(shí),M=Iog2K, M取值在0-1K-1之間循環(huán); 當(dāng)Iog2K不是整數(shù)時(shí),M=Iog2K取整+1,M取值在O-K-1之間循環(huán);對(duì)于反向CAN報(bào)文,在CAN 控制幀數(shù)據(jù)域中取前W個(gè)bit,當(dāng)Iog2L為整數(shù)時(shí),W=Iog2L, W取值在O-L-1之間循環(huán);當(dāng) Iog2L不是整數(shù)時(shí),M=Iog2L取整+1,W取值在O-L-1之間循環(huán);對(duì)于CAN報(bào)文靜荷不滿(mǎn)足8 字節(jié)的,需要填充為8字節(jié),組內(nèi)的CAN幀在標(biāo)準(zhǔn)幀和擴(kuò)展幀中二選一,在同一方向的CAN 幀是擴(kuò)展幀或者基本幀。如此取值,是防止順序號(hào)(M或W)占用太多的bit,影響數(shù)據(jù)傳輸效率。
在步驟S3中CAN GROUP收發(fā)報(bào)文過(guò)程中,如果CAN GROUP的某節(jié)點(diǎn)發(fā)現(xiàn)鏈路損壞, 則將該鏈路從CAN GROUP自動(dòng)刪除,所有報(bào)文都在該方向的剩余鏈路上輪流發(fā)送,有冗余的作用,保證數(shù)據(jù)順利傳輸,如果受損的CAN鏈路恢復(fù)后自動(dòng)加入所在的CAN GROUP,報(bào)文在該方向上所有工作狀態(tài)正常的CAN鏈路上輪流發(fā)送。
優(yōu)選的,將鏈路從CAN GROUP中刪除的具體步驟是由一端CAN節(jié)點(diǎn)發(fā)送刪除鏈路控制幀,控制幀類(lèi)型設(shè)置為從CAN GROUP中刪除一個(gè)鏈路請(qǐng)求,數(shù)據(jù)域的后續(xù)字節(jié)表示刪除的鏈路號(hào)等信息,此后,對(duì)端CAN節(jié)點(diǎn)返回響應(yīng)控制幀,控制幀類(lèi)型設(shè)置為從CAN GROUP中刪除一個(gè)鏈路響應(yīng),在數(shù)據(jù)域的后續(xù)字節(jié)上表示刪除鏈路成果或者失敗。本方案參數(shù)相互協(xié)商,保證收發(fā)CAN節(jié)點(diǎn)都刪除鏈路。
刪除全部鏈路后才能刪除CAN GROUP, CAN GROUP刪除后,恢復(fù)為CAN總線(xiàn)默認(rèn)的收發(fā)方式。
本發(fā)明中N只要為>1的整數(shù),且滿(mǎn)足N=K+L即可,不限于上述具體實(shí)施例中的取值。
以上所述僅是本發(fā)明的典型實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾, 這些改進(jìn)和潤(rùn)飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種基于多路CAN總線(xiàn)捆綁進(jìn)行數(shù)據(jù)傳輸?shù)姆椒?,其特征在于依次包括以下步驟51、靜態(tài)配置CANGROUP CAN GROUP兩端加入相等數(shù)目的CAN節(jié)點(diǎn),CAN節(jié)點(diǎn)兩兩物理連接形成CAN總線(xiàn),并配置相互連接的兩個(gè)CAN節(jié)點(diǎn)一個(gè)為接收節(jié)點(diǎn),另一個(gè)為發(fā)送節(jié)點(diǎn);52、配置鏈路請(qǐng)求CANGROUP中加入CAN鏈路,并驗(yàn)證加入鏈路的的CAN節(jié)點(diǎn)參數(shù)是否匹配,若匹配,進(jìn)入S3 ;若不匹配,則報(bào)警;53、收發(fā)報(bào)文CANGROUP在鏈路上輪流收發(fā)報(bào)文,發(fā)送時(shí),鏈路上順序發(fā)送,并以同樣的順序接收?qǐng)?bào)文。
2.根據(jù)權(quán)利要求1所述的基于多路CAN總線(xiàn)捆綁進(jìn)行數(shù)據(jù)傳輸?shù)姆椒?,其特征在?步驟S2中在CAN GROUP中加入CAN鏈路的具體步驟是從保留的16個(gè)CAN ID中取一個(gè)作為控制幀的ID,控制幀數(shù)據(jù)域的第一個(gè)字節(jié)作為控制幀的類(lèi)型;首先,向?qū)Χ薈AN節(jié)點(diǎn)發(fā)送加入CAN GROUP請(qǐng)求控制幀,控制幀類(lèi)型設(shè)置為加 ACAN GROUP請(qǐng)求;然后,在數(shù)據(jù)域的后續(xù)字節(jié)上設(shè)置協(xié)商類(lèi)型,此后,對(duì)端節(jié)點(diǎn)返回響應(yīng)控制幀,控制幀類(lèi)型設(shè)置為請(qǐng)求加入CAN GROUP響應(yīng),在數(shù)據(jù)域的后續(xù)字節(jié)上表示協(xié)商成功或者失敗。
3.根據(jù)權(quán)利要求2所述的基于多路CAN總線(xiàn)捆綁進(jìn)行數(shù)據(jù)傳輸?shù)姆椒?,其特征在于?CAN GROUP中加入的CAN鏈路總數(shù)為N,,N為大于I的整數(shù),包括K條正向鏈路和L條反向鏈路,N=K+L ;步驟S3中收發(fā)報(bào)文的順序規(guī)則為對(duì)于正向CAN報(bào)文,在CAN控制幀數(shù)據(jù)域中取前M個(gè) bit,當(dāng)Iog2K為整數(shù)時(shí),M=Iog2K,M取值在0-K-1之間循環(huán)Slog2K不是整數(shù)時(shí),M=Iog2K取整+1,M取值在O-K-1之間循環(huán);對(duì)于反向CAN報(bào)文,在CAN控制幀數(shù)據(jù)域中取前W個(gè)bit, 當(dāng)Iog2L為整數(shù)時(shí),W=Iog2L, W取值在O-L-1之間循環(huán);當(dāng)Iog2L不是整數(shù)時(shí),M=Iog2L取整 +1,W取值在O-L-1之間循環(huán);對(duì)于CAN報(bào)文靜荷不滿(mǎn)足8字節(jié)的,需要填充為8字節(jié),組內(nèi)的CAN幀在標(biāo)準(zhǔn)幀和擴(kuò)展幀中二選一,在同一方向的CAN幀是擴(kuò)展幀或者基本幀。
4.根據(jù)權(quán)利要求1-3中任一項(xiàng)所述的基于多路CAN總線(xiàn)捆綁進(jìn)行數(shù)據(jù)傳輸?shù)姆椒?,其特征在于在步驟S3中CAN GROUP收發(fā)報(bào)文過(guò)程中,如果CANGR0UP的某節(jié)點(diǎn)發(fā)現(xiàn)鏈路損壞,則將該鏈路從CAN GROUP自動(dòng)刪除,所有報(bào)文都在該方向的剩余鏈路上輪流發(fā)送,如果受損的CAN鏈路恢復(fù)后自動(dòng)加入所在的CAN GROUP,報(bào)文在該方向上所有工作狀態(tài)正常的 CAN鏈路上輪流發(fā)送。
5.根據(jù)權(quán)利要求4所述的基于多路CAN總線(xiàn)捆綁進(jìn)行數(shù)據(jù)傳輸?shù)姆椒?,其特征在?將鏈路從CAN GROUP中刪除的具體步驟是由一端CAN節(jié)點(diǎn)發(fā)送刪除鏈路控制幀,控制幀類(lèi)型設(shè)置為從CAN GROUP中刪除一個(gè)鏈路請(qǐng)求,數(shù)據(jù)域的后續(xù)字節(jié)表示刪除的鏈路號(hào)等信息,此后,對(duì)端CAN節(jié)點(diǎn)返回響應(yīng)控制幀,控制幀類(lèi)型設(shè)置為從CAN GROUP中刪除一個(gè)鏈路響應(yīng),在數(shù)據(jù)域的后續(xù)字節(jié)上表示刪除鏈路成果或者失敗。
6.根據(jù)權(quán)利要求4所述的基于多路CAN總線(xiàn)捆綁進(jìn)行數(shù)據(jù)傳輸?shù)姆椒ǎ涮卣髟谟?刪除全部鏈路后才能刪除CAN GROUP,CAN GROUP刪除后,恢復(fù)為CAN總線(xiàn)默認(rèn)的收發(fā)方式。
7.根據(jù)權(quán)利要求3所述的基于多路CAN總線(xiàn)捆綁進(jìn)行數(shù)據(jù)傳輸?shù)姆椒?,其特征在?N=4, K=2, L=2。
全文摘要
一種基于多路CAN總線(xiàn)捆綁進(jìn)行數(shù)據(jù)傳輸?shù)姆椒?,依次包括以下步驟S1、靜態(tài)配置CAN GROUPCAN GROUP兩端加入相等數(shù)目的CAN節(jié)點(diǎn),CAN節(jié)點(diǎn)兩兩物理連接形成CAN總線(xiàn),并配置相互連接的兩個(gè)CAN節(jié)點(diǎn)一個(gè)為接收節(jié)點(diǎn),另一個(gè)為發(fā)送節(jié)點(diǎn);S2、配置鏈路請(qǐng)求CAN GROUP中加入CAN鏈路,并驗(yàn)證加入鏈路的CAN節(jié)點(diǎn)參數(shù)是否匹配,若匹配,進(jìn)入S3;若不匹配,則報(bào)警;S3、收發(fā)報(bào)文CAN GROUP在鏈路上輪流收發(fā)報(bào)文,發(fā)送時(shí),鏈路上順序發(fā)送,并以同樣的順序接收?qǐng)?bào)文。本發(fā)明多路CAN總線(xiàn)捆綁,CAN總線(xiàn)流量達(dá)到N*單個(gè)CAN總線(xiàn)帶寬(N為CAN鏈路數(shù)),提高了CAN總線(xiàn)使用帶寬,填補(bǔ)了CAN總線(xiàn)和FlexRay總線(xiàn)傳輸?shù)膸捒瞻讌^(qū)域。CAN總線(xiàn)點(diǎn)到點(diǎn)連接,一個(gè)CAN總線(xiàn)故障不會(huì)影響報(bào)文傳輸,可靠性高,實(shí)時(shí)性好。
文檔編號(hào)H04L12/40GK103051507SQ201310027298
公開(kāi)日2013年4月17日 申請(qǐng)日期2013年1月21日 優(yōu)先權(quán)日2013年1月21日
發(fā)明者張道杰, 華明 申請(qǐng)人:普華基礎(chǔ)軟件股份有限公司