999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于CAN總線協議車載網關雙緩沖區的設計研究

2021-09-26 19:53:17張曉光,陶英軒,黃金山
汽車科技 2021年4期

張曉光,陶英軒,黃金山

摘? 要:提出了一種基于車載CAN總線協議網關的發送與接收緩沖區設計方法。以接收與發送雙軟件緩沖區去配合CAN控制器的硬件緩沖區,設計中斷式報文存儲進程將硬緩沖區數據實時讀取到接收軟件緩沖區中,設計中斷式數據發送進程將發送軟件緩沖區數據及時發送到發送硬緩沖區,通過與硬件緩沖區的這種聯動方式能夠實時地接收報文,保證報文不丟失;也能夠在目標總線負載率較大時,避免漏發報文以及保證發送報文周期。

關鍵詞:CAN;網關;雙緩沖

中圖分類號:TP368.1? ? ? 文獻標識碼:A? ?文章編號:1005-2550(2021)04-0102-03

Design and Research of Vehicle-mounted Gateway Double Buffer Based on CAN Bus Protocol

ZHANG Xiao-guang, TAO Ying-xuan, HUANG Jin-shan

( Product Development Department, Faw Car Ji Lin, Chang Chun 130012, China )

Abstract: Abstract: A design method of sending and receiving buffer of vehicle-mounted CAN bus gateway is presented. To receive and send double software buffer to match the CAN controller's hardware buffer, the interrupted message store process is designed to read the hard buffer data into the receiving software buffer in real-time, by this way of linkage with hardware buffer can receive a message in real-time, ensure the message is not lost; It is also able to avoid missing message and ensure the massage sending cycle when the target bus load rate is high.

1? ? 引言

隨著汽車CAN總線技術的快速發展,汽車CAN總線技術已經非常成熟,汽車CAN控制器(ECU)逐漸增多,車載CAN總線路數由前幾年的1-2路CAN快速發展為當前的6-7路CAN,各路CAN之間需要網關傳遞的路由信息也爆發式增長。出于節約成本和集成化的要求,網關均采用MCU集成CAN控制器的技術方案實現CAN總線通信。由于MCU內部CAN控制器的硬件接收緩沖區和硬件發送緩沖區很小,當CAN網絡上短時間內出現大量報文時,接收硬buffer就會存滿,如不能及時處理,接收報文將丟失;同樣當目標總線負載率過高,硬件發送緩沖區就將形成積壓報文,使緩存區溢出,這樣就會導致漏發報文。為此,本文基于CAN總線協議車載網關,提出雙緩存接收與發送策略,保證路由信息被及時接收與發送。

2? ? CAN總線通信原理

CAN總線,是一種基于ISO國際標準化的串行通信總線。在汽車產業中,出于對安全性、舒適性、方便性、低功耗、低成本的考慮,應用于汽車內各種電子控制系統中,實現準確的數據采集及執行器功能控制。

1986年德國博世公司開發出面向汽車的CAN 通信協議。CAN總線通信協議逐漸標準化,逐漸形成并完善了CAN協議ISO11898及ISO11519,使得不同開發商的ECU可實現無障礙通信。CAN總線的高性能和高可靠性已被汽車行業所認同,并成為汽車電氣系統的主要通信手段。對汽車電氣功能的快速發展提供了信息通道保障。

3? ? CAN ECU網絡拓撲

現階段汽車行業內CAN網絡拓撲基本采用單網關(GW)多子網網絡拓撲結構。如圖1所示:

4? ? 網關工作主流程設計

基于CAN總線協議對網關提出的實時性、報文完整性、報文重新封裝組合等性能的基本要求,設計出網關主流程,如圖2所示。

當某子網節點發送報文后,CAN收發器將進行濾波,如是需網關路由信息,將向上存儲到CAN控制器接收硬buffer中,并產生接收中斷。接收中斷將打破網關主流程,并開啟中斷流程-報文存儲進程,報文存儲進程將報文按順序寫入接收軟buffer中。網關主流程按照每1ms周期進行軟buff數據處理,將處理好的數據存儲到發送硬buffer中,等待CAN發送器發送。當發送器完成發送后,觸發報文發送中斷,發送中斷將打破網關主流程,并開啟數據發送進程,將發送軟buffer數據存儲到硬發送buffer中,再次等待CAN發送器發送。

5? ? 網關雙緩沖區設計

按照主流程設計思路,每路CAN均將設計3個緩沖區,分別為應用報文緩沖區,網管報文緩沖區,診斷報文緩沖區。為了保證網關的實時性和可靠性,以及節省 RAM 空間,需要對緩沖區大小上進行考量。

5.1? ?緩沖區最小單元設計

針對CAN總線報文格式,計算出存入一條報文需要的最大內存空間(字節數)為: (11(ID) +4(DLC)+64(DATA) )/? ?8,因為嵌入式處理器的存儲器是以1 Byte即8 bit為單位設計的,所以上面計算公式中的bit數要向上取整成8 的整數倍,11取整成16,4取整成8,得到結果為:2+1+8= 11。由此可知,最小的緩沖區大小為11 Byte,即存下一條最大報文的大小。

5.2? ?接收緩沖區大小設計

對于應用報文緩沖區的計算,根據奔騰某車型路由表計算,網關最大路由負載出現在EV子網,分別為10ms報文12條,100ms報文17條,200ms報文5條,1000ms報文49條。如未設置報文發送段間隔,那么極限情況下,報文將出現排隊無間隙情況。也就是當控制器上電初始化完成后,第一時間將有12+17+5+49=83條報文等待傳輸,按照總線波特率為500kb/s時,每幀報文傳輸時間為0.25ms,計算得出這些報文將連續傳輸21ms,同時10ms 周期報文將發送2輪,即總計將有83+24 =107條報文排隊發送,預計發送時間26ms。因此在此26ms內,網關將出現最大負載量即接收107條報文。考慮網關主程序為每1ms對緩存內數據進行處理,假設目標總線負載率為40%,那么網關將每1ms可處理報文數量為2條,26ms內將處理52條報文,也就是有107-52=55條報文將被緩存起來。因此計算出EV-CAN接收緩沖區的大小為:55×11= 605Byte。

對于診斷報文緩沖區的計算,也按照總線波特率為500kb/s時,每幀報文傳輸時間為0.25ms。當目標控制器反饋流控STmin為0ms時,而又不開啟28禁用通信診斷指令的前提下,如需最大傳輸數據量為2KB。那么網關將在500ms內將收取診斷儀傳輸的2Kb數據,考慮網關主程序為每1ms 對緩存內數據進行處理,假設目標總線負載率為40%,那么網關將每1ms可處理報文數量為2條,而能夠在500ms內轉發1KB數據,即還有1Kbyte數據需要緩存。因此,在奔騰某品牌診斷特殊要求下(目標總線負載40%,需要在不打開28服務前提下發送2KB),計算出診斷報文接收緩沖區的大小為1KB。

對于網絡管理報文的計算,按照AUTOSAR簡單網絡管理規范,根據奔騰某車型網絡架構,最大節點出現在舒適CAN,子節點數量為8個,即100ms內將有8條報文錄入網關。計算出舒適-CAN接收緩沖區的大小為:8×11=88Byte。

按照上述計算,將在網關MCU內設計7路接收緩沖區,又將緩沖區進行分類,分別為7個605B大小的應用報文接收緩沖區,1個1K B大小的診斷報文接收緩沖區,7個88 B大小的網絡報文接收緩沖區。

5.3? ?發送緩沖區大小設計

發送緩沖區根據高優先級先發、同優先級先入先出的原則,重新調整發送順序,等待CAN 控制器將報文發出去。考慮到最不利的情況,可能網絡存在很大的延時,發送不暢,需要將所有接收緩沖區的報文都存入發送報文緩沖區,所以發送緩沖區大小應該和接收緩沖區一樣。

6? ? 結束語

通過對網關單位時間內路由數據最大化研究,提出了雙緩沖區網關設計方法,利用該方法解決了低成本網關丟幀、及時性差等問題。本設計已經應用于奔騰車型上,車輛情況完全正常,沒有出現數據丟失和嚴重延時等情況,進一步證明了該網關設計方法的可行性和可靠性,同時降低了汽車零部件的成本,提高了社會效益。

參考文獻:

[1]ISO 15765-1 道路車輛—對控制器局域網(CAN )的診斷—第一部分:總體信息(Road vehicles — Diagnostics on Controller Area Networks(CAN)— Part1:General information).

[2]ISO 15765-2 道路車輛—對控制器局域網(CAN )的診斷—第二部分:網絡層(Road vehicles — Diagnostics on Controller Area Networks(CAN)— Part2:Network layer services).

[3]程安宇,何川,馮輝宗,等.基于SAE J1939協議的雙緩沖區網關設計[J].計算機應用,2010.

[4]孔令偉.? 車載CAN網絡的網關設計方法研究[D]. 2008.

[5]李爽,孫克怡.? 汽車網絡的分類及發展趨向[J]. 單片機與嵌入式系統應用. 2006 (02).

[6]王杰.? 車載網關設計方法及其網絡管理技術研究[D]. 2009.

[7]魏偉,姚維,章瑋. CAN/LIN網關在車身網絡中的設計與應用[J]. 電氣自動化. 2008 (02).

[8]付少興,陳曉波,李靖一. 單片機技術的應用與發展[J]. 通訊世界. 2016 (15).

張曉光

畢業于東北大學自動化專業,本科學歷,現就職于一汽奔騰轎車有限公司,主要從事汽車網絡診斷開發、網關開發等工作。

主站蜘蛛池模板: 亚洲中文无码h在线观看| 1级黄色毛片| 日韩国产 在线| 久久久久亚洲AV成人网站软件| 刘亦菲一区二区在线观看| 亚洲视频免费播放| 国产一区亚洲一区| 在线99视频| 毛片免费观看视频| 一边摸一边做爽的视频17国产| 亚洲美女一区| 国产高清国内精品福利| 999在线免费视频| 欧美全免费aaaaaa特黄在线| 91综合色区亚洲熟妇p| 99无码熟妇丰满人妻啪啪| 粗大猛烈进出高潮视频无码| 丝袜亚洲综合| 亚洲AⅤ永久无码精品毛片| 无码国内精品人妻少妇蜜桃视频 | 91精品国产一区| 天天躁夜夜躁狠狠躁图片| 欧美成人免费午夜全| 亚洲黄色成人| 国产欧美成人不卡视频| 亚洲日本www| 99久久精品免费看国产电影| 国内黄色精品| 欧美精品成人| 久久国产精品麻豆系列| 国产女人爽到高潮的免费视频| 国产SUV精品一区二区| 午夜色综合| 国产打屁股免费区网站| 色播五月婷婷| 国产精品丝袜在线| 亚洲国产中文精品va在线播放| 在线观看免费AV网| 99久久精彩视频| h视频在线播放| 91色老久久精品偷偷蜜臀| 伊人久久大香线蕉影院| 91成人在线观看视频| 久久精品丝袜| 粉嫩国产白浆在线观看| 中文字幕调教一区二区视频| 国产真实乱了在线播放| 国产成人成人一区二区| 91av成人日本不卡三区| 国产网友愉拍精品| 亚洲欧美一级一级a| 欧亚日韩Av| 中文国产成人精品久久一| 亚洲人成网站日本片| 色婷婷色丁香| 国产96在线 | 亚洲丝袜第一页| 国产日韩欧美一区二区三区在线| 精品久久久无码专区中文字幕| 88av在线| 亚洲一区免费看| 日本免费一级视频| 欧美有码在线| 国产日韩欧美在线播放| 久久亚洲国产最新网站| 国产青榴视频在线观看网站| 国产午夜精品一区二区三区软件| 国产精品一区在线麻豆| 国产哺乳奶水91在线播放| 亚洲国产日韩视频观看| 91久久偷偷做嫩草影院| 最新国产网站| 欧美一级99在线观看国产| 一本久道久综合久久鬼色| 99热国产在线精品99| 欧美国产日本高清不卡| 欧美www在线观看| 免费观看成人久久网免费观看| 啪啪啪亚洲无码| 午夜福利免费视频| 5555国产在线观看| 亚洲无码熟妇人妻AV在线|