国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

CAN報文填充位長度仿真研究

2017-09-28 07:56孫博張麗波
電子測試 2017年8期
關鍵詞:數據流校驗報文

孫博,張麗波

(1.吉林大學計算機科學與技術學院,吉林長春,130012;2.中國第一汽車股份有限公司技術中心汽車電子部,吉林長春,130011)

CAN報文填充位長度仿真研究

孫博1,張麗波2

(1.吉林大學計算機科學與技術學院,吉林長春,130012;2.中國第一汽車股份有限公司技術中心汽車電子部,吉林長春,130011)

本文建立了CAN網絡標準報文和擴展報文的報文填充位長度仿真模型,并通過該模型獲得了CAN網絡標準報文和擴展報文的填充位長度的分布律和數學期望。經對比分析得知:當報文長度相同時,CAN擴展報文的填充位長度大于CAN標準報文的填充位長度。該研究成果已成功應用于多款車型的CAN網絡設計,用于預測各CAN網段的總線負載率,應用結果表明該仿真模型偏差<+/-0.5,仿真準確度較高,有效地提高了CAN網絡開發(fā)的工作效率。

CAN標準報文;CAN擴展報文;填充位長度

0 引言

整車CAN網絡拓撲設計是整車網絡設計的第一項工作。在完成整車網段劃分后,將分別估算各網段的總線負載率,當總線負載率大于某閾值時,需要重新對網段進行劃分以提高網絡的可擴展性。如果總線負載率預測不準確,將增大在項目開發(fā)后期變更整車網絡拓撲的可能性。一旦整車網絡拓撲發(fā)生變化,以此為基礎完成的所有后續(xù)工作,如CAN網絡通信矩陣、CAN通信協(xié)議、各控制器的通信軟件、整車網絡線束、CAN網絡測試策略等,都將發(fā)生巨大變化[1]。

CAN網絡總線負載率通常是由以下公式計算得到的:CAN網絡總線負載率= (每幀CAN報文的位數× 所有網絡節(jié)點在單位時間內發(fā)送的CAN報文數量之和)/(單位時間×總線通信速率)[2]。該計算公式中<每幀CAN報文的位數>為網絡設計時的理論值,沒有考慮到CAN報文數據流傳輸時填充位傳輸所占用的總線負載,使得計算結果與實測結果之間存在較大的偏差。為此,我們進行了CAN報文填充位長度仿真研究,以提高總線負載率預測的準確性。

1 建立CAN報文填充位長度仿真模型

1.1 建立CAN標準報文填充位長度仿真模型

根據SAE J1939-21[3],CAN標準報文由7個位場組成,分別為幀起始(SOF)、仲裁場(arbitration field)、控制場 (control field)、數據場 (data field)、循環(huán)冗余校驗場(CRC)、應答場(ACK field)和幀結束(EOF)。CAN標準報文的位場組成如圖1所示,其中幀起始(SOF)、仲裁場、控制場、數據場和循環(huán)冗余校驗序列需要按照位填充規(guī)則進行傳送。

圖1 CAN標準報文的位場組成

建立CAN標準報文填充位長度仿真模型按如下6步進行。

(1)根據CAN標準報文的位場定義,建立幀起始、仲裁場、控制場和數據場的數據流,并存儲于字符數組變量M1[j]中,其程序主要內容描述如下:

M1[0]=’0’; //SOF=0

M1[1]~M1[11]= random(2); //11位ID為隨機數

M1[12]=’0’; //CAN標準報文的RTR=0

M1[13]=’0’; //CAN標準報文的IDE=0M1[14]=’0’; //CAN標準報文的r0=0 M1[15]~M1[18]= DLC; //將報文長度轉化為數據流M1[19]~M1[18+len*8]= random(2); //數據場為隨機數其中報文長度與數據流的轉化關系見表1。

表1 報文長度與數據流的轉化關系

(2)計算循環(huán)冗余校驗序列。

根據ISO 11898-1定義[4], 幀起始、仲裁場、控制場和數據場的數據流右補15個0作為被除數,生成多項式X15+ X14+ X10+ X8+ X7+ X4+ X3+ 1作為除數,二進制多項式除法的余數即為循環(huán)冗余校驗序列。計算循環(huán)冗余校驗序列的程序流程圖如圖2所示。其中M3為二進制多項式除法的被除數和余數所共用 ,P為除數,D為商。

圖2 計算循環(huán)冗余校驗序列的程序流程圖

(3)將循環(huán)冗余校驗序列合并于字符數組變量M1,形成CAN標準報文的需要按照位填充規(guī)則進行傳送的原始二進制數據流M1。

(4)將M1中的CAN報文數據流按CAN協(xié)議規(guī)定的填充規(guī)則進行填充形成CAN報文填充位流并存儲于二維數據M2。

根據ISO 11898定義[4],在按照位填充規(guī)則進行傳送的原始二進制數據流中,CAN發(fā)送器只要檢測到發(fā)送位流中連續(xù)存在5個相同取值的位,就自動在位流里插入一個補碼位。當程序檢測到M2中存在字符串“00000”或“11111”時,將M2從當前位開始均后移一位,并當前位設置為填充位“1”或“0”。

例如:當報文長度為1字節(jié)時,擬傳送的CAN報文數據流為0001010000010001000001101001010001000000111101100(共49位),則在采用位填充后的位流為00010100000110001000001110 10010100010000010111101100(共52位),如圖3所示,圖中矩形框內的位為填充位。

圖3 CAN報文位填充示例

(5)用M2的CAN報文填充位流長度減去M1的CAN報文數據流長度求得CAN報文填充位長度LS。

(6)為提高仿真準確性,針對每條報文進行了500次仿真,并根據公式(1)計算500個仿真數據 的數學期望,并以此作為報文填充位長度的仿真結果。

式中:Ei——CAN報文填充位長度的數學期望。

Li——CAN報文填充位長度。

Pi——CAN報文填充位長度=i的報文的分布律。

1.2 建立CAN擴展報文填充位長度仿真模型

根據SAE J1939-21[3],CAN擴展報文的位場組成如圖4所示,其中幀起始(SOF)、仲裁場、控制場、數據場和循環(huán)冗余校驗序列需要按照位填充規(guī)則進行傳送。

圖4 CAN擴展報文的位場組成

建立CAN擴展報文填充位長度仿真模型的方法與建立CAN標準報文填充位長度仿真模型的方法類似。

2 CAN報文填充位長度仿真結果分析

2.1 CAN標準報文填充位長度仿真結果分析

運行CAN標準報文填充位長度仿真模型,得到針對各報文長度的CAN標準報文填充位長度分布律,詳見表2,如圖5所示。

表2 針對各報文長度的CAN標準報文填充位長度分布律

1 38 29.6 25.4 18 10.6 7.6 3.2 2.6 0.6 2 30.8 31.6 29.6 25.4 19 13.2 8.2 8.2 5.6 3 10.4 16.2 21.8 22.8 23.6 22.2 19 12.2 11.2 4 1.8 5.4 11.8 15.6 22.4 20.2 22.4 21.8 17.6 5 0.8 2.8 8.8 13.2 16.6 20.4 17.6 17.6 6 1.2 3.8 6.2 11.412.416.2 19 7 0.4 0.2 1.6 5.2 8.6 10.6 12.4 8 0.4 0.6 2.4 3.4 6.2 7.4 9 0.4 0.4 1.6 2 5 10 0 0.2 0 2 2.2 11 0.2 0 0.4 0.4 1 12 0 0.2 0.2 13 0.2 0.2 14 0

圖5 針對各報文長度的CAN標準報文填充位長度分布律

其中,報文長度=8的CAN標準報文填充位長度分布情況如圖6所示。從圖6可知:針對報文長度=8的標準報文,填充位長度等于6的概率最大為19,即在500次仿真時有95次的填充位長度等于6。

圖6 報文長度=8的CAN標準報文填度位長度統(tǒng)計結果

運行CAN標準報文填充位長度仿真模型,得到針對各報文長度的CAN標準報文填充位的數學期望,詳見表3。

表3 CAN標準報文填充位的數學期望

由表3知:CAN標準報文與數據場長度成正比。當數據場長度=0時,CAN標準報文的數學期望為1.38;當數據場長度=8時,CAN標準報文的數學期望為5.47。

2.2 CAN擴展報文填充位長度仿真結果分析

運行CAN擴展報文填充位長度仿真模型,得到針對各報文長度的CAN擴展報文填充位長度分布律,詳見表4,如圖7所示。

表4 針對各報文長度的CAN擴展報文填充位長度分布律

圖7 針對各報文長度的CAN擴展報文填充位長度分布律

其中,報文長度=8的CAN擴展報文填充位長度分布情況如圖8所示。從圖8可知:針對報文長度=8的擴展報文,填充位長度等于5的概率最大為18.4,即在500次仿真時有92次的填充位長度等于5。

圖8 報文長度=8的CAN擴展報文填度位長度統(tǒng)計結果

運行CAN擴展報文填充位長度仿真模型,得到針對各報文長度的CAN擴展報文填充位的數學期望,詳見表5。

表5 CAN擴展報文填充位的數學期望

由表5知:CAN擴展報文填充位長度LS與數據場長度成正比。當數據場長度=0時,CAN擴展報文填充位長度LS的數學期望為2.08;當數據場長度=8時,CAN擴展報文填充位長度LS的數學期望為6.21。

CAN標準報文和擴展報文的填充位長度的數學期望對比情況如圖9所示。從圖9可知:當報文長度相同時,CAN擴展報文的填充位長度大于CAN標準報文的填充位長度。

3 結束語

在CAN網絡設計階段,計算CAN總線負載率時通常沒有考慮填充位傳輸所占用的總線負載,使得計算結果與實測結果之間存在較大的偏差。為降低因CAN網絡總線負載率預測不準確導致的網絡設計變更風險,以提高開發(fā)效率,我們開展了CAN報文填充位長度仿真研究。

本文建立了CAN網絡標準報文和擴展報文的報文填充位長度仿真模型,并通過該模型獲得了CAN網絡標準報文和擴展報文的填充位長度的分布律和數學期望,以預測各CAN報文占用的總線負載率,用作網絡設計的依據。該研究成果已成功應用于多款車輛的CAN網絡設計,CAN報文填充位長度仿真模型的應用結果見表6,表中實測值為一段時間內測試結果的平均值。從表6可知CAN報文填充位長度仿真模型偏差<+/-0.5(最大為0.34),仿真準確度較高。

圖9 CAN標準報文和擴展報文的填充位長度的數學期望對比

表6 CAN報文填充位長度仿真模型的應用結果

[1]論文<基于數理統(tǒng)計的商用車CAN網絡總線負載率預測研究>(來自<2016中國汽車工程學會年會論文集>).

[2]專利文獻<在控制局域網網絡結構中監(jiān)控整個網絡的運行狀態(tài)的方法>(公開號:CN102111286A;公開日:2011-06-29).

[3]SAE J1939-21 Recommended Practice for a Serial Control and Communications Vehicle Network:Data Link Layer.

[4]ISO 11898-1 Road vehicles— Controller area network(CAN):Data link layer and physical signaling.

Simulation Research on the stuff bit length of CAN message

Sun Bo1,Zhang Libo2
(1.School of computer science and technology Jilin University,ChangChun Jilin,130012; 2.Automotive Electronics Department, China FAW Co.Ltd R&D Center,ChangChun Jilin,130011)

A simulation model of the stuff bit length of the CAN standard message and the extended message has been established in the paper, and the distribution law and mathematical expectation of the CAN message stuff bit length is obtainedbased on the model. The comparative analysis shows that the stuff bit length of the CAN extended message is greater than that of the CAN standard message when the message length is the same. The research results have been successfully applied to a variety of vehicle CAN network design to predict the bus load of each CAN message, and application results show that the simulation model deviation is less than +/-0.5, the simulation accuracy is high, and the work efficiency of CAN network is improved effectively.

CAN standard message; CAN extended message; the stuff bit length.

猜你喜歡
數據流校驗報文
基于J1939 協(xié)議多包報文的時序研究及應用
CTCS-2級報文數據管理需求分析和實現
汽車維修數據流基礎(下)
淺析反駁類報文要點
一種提高TCP與UDP數據流公平性的擁塞控制機制
爐溫均勻性校驗在鑄鍛企業(yè)的應用
ATS與列車通信報文分析
基于數據流聚類的多目標跟蹤算法
大型電動機高阻抗差動保護穩(wěn)定校驗研究
基于加窗插值FFT的PMU校驗方法
长沙市| 石楼县| 会理县| 衡水市| 新巴尔虎左旗| 涿鹿县| 浑源县| 中卫市| 安陆市| 托克托县| 名山县| 综艺| 南通市| 舞阳县| 枣阳市| 芒康县| 景洪市| 金昌市| 泸西县| 金川县| 贵定县| 阳东县| 乐至县| 麻城市| 晋中市| 边坝县| 响水县| 黄大仙区| 鹤峰县| 抚宁县| 治县。| 巴楚县| 滦平县| 威海市| 噶尔县| 邯郸市| 永安市| 石门县| 太康县| 仙桃市| 利津县|