日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

FlexRay测试开发实践之诊断刷写

發布時間:2023/12/8 编程问答 72 豆豆
生活随笔 收集整理的這篇文章主要介紹了 FlexRay测试开发实践之诊断刷写 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.



前言

FlexRay總線目前主要應用在高端品牌車型(如寶馬、奔馳、奧迪、沃爾沃、捷豹路虎、凱迪拉克等),在以太網技術沒有成熟之前,也有部分OEM將其作為主干網應用。

相對于傳統的CAN測試,FlexRay測試有哪些特點呢?本期我們將主要介紹FlexRay相關協議,并分享FlexRay診斷刷寫測試實踐經驗。

FlexRay簡介

FlexRay的出現始于二十世紀九十年代末,BMW和Daimler Chrysler開始著手進行FlexRay的研究,其初始目標是為了實現線控等應用。2000年成立了FlexRay聯盟,2005年發布FlexRay V2.1規范。2006年,FlexRay首次應用于量產車——用在BMW X5的懸架系統中。FlexRay總線具有以下技術特點:


? 時間確定性
FlexRay靜態段采用基于時間觸發的媒體訪問策略,保證了消息傳輸的時間確定性。

? 容錯性
FlexRay支持單通道和雙通道的容錯通信,使得當一個通道出現故障無法進行通信時,另一個通道上的數據可以保證系統的正常運行。

? 靈活性
FlexRay通信周期分為靜態段和動態段,將基于時間觸發和基于事件觸發兩種媒體訪問方式相結合。

? 高帶寬(相對于CAN/CAN FD)
FlexRay支持兩個通道同時進行數據傳輸,每個通道的帶寬最高可達10Mbit/s。

另外,大家可以留意下近期新的以太網通信技術10Base-T1,其相關的通信技術與FlexRay有異曲同工之處。



FlexRay通信協議

FlexRay拓撲結構

FlexRay有兩個通道,即通道A和通道B,支持多種網絡拓撲結構,可配置成:

? 單通道或雙通道總線網絡
? 單通道或雙通道星型網絡
? 總線型和星型的混合型網絡

圖1 雙通道總線型拓撲結構

FlexRay幀格式

FlexRay數據幀由幀頭、有效負載數據段和幀尾三部分構成。

圖2 FlexRay幀格式

FlexRay媒體訪問控制(MAC)

FlexRay媒體訪問控制(MAC)是基于循環的通信周期來實現的,在一個通信周期中,FlexRay協議提供兩種MAC:

? 靜態段基于時分多址TDMA(time division multiple access)的訪問機制

? 動態段基于最小時隙的訪問機制,也稱靈活的時分多址FTDMA(flexible time division multiple access)

通信周期是 FlexRay 媒體訪問控制的基本要素,協議是通過時間分層的方法來定義通信周期的。

圖3 通信周期的時間分層

1.通信周期層

一個通信周期包括靜態段、動態段、符號窗口和網絡空閑時間四個部分。

? 靜態段采用TDMA機制進行數據傳輸
? 動態段采用FTDMA機制進行數據傳輸
? 符號窗口主要用來發送特征符號
? 網絡空閑時間在一個通信周期的末尾,主要用來進行時鐘同步

2.仲裁網格層

在仲裁網格層中,靜態段是由若干個等長的靜態時隙(static slot)組成的,動態段是由若干個等長的最小時隙(minislot)組成的。

3.最大時間節拍層


不同數目的最大時間節拍(macrotick)分別構成了靜態時隙、最小時隙、符號窗口及網絡空閑時間部分,所以整個通信周期是由若干最大時間節拍組成的。

4.最小時間節拍層

一個最大時間節拍是由若干個最小時間節拍(microtick)組成的。


FlexRay傳輸層協議

ISO 10681-2規定了FlexRay網絡層和傳輸層協議(本文不做區分,統稱傳輸層協議),相對于CAN傳輸層協議,FlexRay傳輸層協議具有如下不同點:

協議功能

? 支持無ACK應答和有ACK應答(帶消息重傳機制)的數據傳輸

? 支持已知消息長度和未知消息長度的數據傳輸

圖4-1無ACK應答報文傳輸

圖4-2 有ACK應答報文傳輸


傳輸層C_PDU類型與PCI字節

圖5 C_PDU類型與PCI字節
  • 起始幀
    分為無ACK的STFU和有ACK的STFA兩種,通過PCI第一個字節的低4位來區分兩者,FPL表示該幀傳輸的有效凈荷長度,ML表示數據傳輸的總長度。

  • 連續幀
    一般情況下使用CF1,如果有消息重傳時,需要CF1和CF2之間進行切換。當發送buffer和接收buffer受限時,每個block的傳輸會以CF_EOB(End Of Block)結束,用于請求接收端給出下一個流控應答。

圖6 Num Bytes of Block與BufferSize(BfS)

? 流控幀

PCI第一個字節的低四位用于區分流控狀態:

o 3表示CTS(ContinueToSend)
o 4表示ACK_RET(Acknowledge/Retry)
o 5表示WT(Wait)
o 6表示ABT(Abort)
o 7表示OVFLW(Overflow)

? 尾幀
與CAN 傳輸層協議不同,FlexRay在分段傳輸時必須以LF結束。

接收節點的接收性能參數

? CAN: 傳輸層協議通過BlockSize (BS)和SeparationTime (STmin)來體現,FlexRay是通過BufferSize (BfS)和Bandwidth Control (BC)來體現的
? BfS:表示接收節點當前可接收的最大buffer
? BC:包含兩個參數,separation cycle exponent (SCexp)和maximum number of PDUs per cycle (MNPC)

傳輸層C_PDU與鏈路層L_PDU的映射


圖7 C_PDU格式

圖8 L_PDU格式

FlexRay診斷刷寫測試實踐

FFlexRay診斷相關的測試相對CAN/CAN FD而言,其測試規范的制定及測試腳本的開發相對更為復雜,如下為北匯信息基于Vector公司的CANoe及部分自定義函數在項目中實現了FlexRay診斷刷寫測試的示例。

FlexRay診斷報文示例

圖9 FlexRay診斷報文示例

FlexRay診斷測試開發

采用CANoe的CAPL腳本及部分自定義函數實現了診斷通信、診斷服務和診斷刷寫的自動化測試。

圖10 FlexRay診斷通信部分測試項示例

圖11 FlexRay診斷服務部分測試項示例

圖12 FlexRay診斷刷寫部分測試項示例

圖13 FlexRay診斷測試報告示例

總結

北匯信息多年來一直專注于汽車電子測試,在網絡測試、診斷測試以及功能測試等領域積累了豐富的實踐經驗。目前,我們已實現了CAN、CAN FD、LIN、FlexRay和Ethernet的診斷及刷寫測試,歡迎感興趣的客戶朋友與我們探討交流~

部分圖片來源于Vector



參考文獻

[1] ISO 10681-2
[2] FlexRay Communications System Protocol Specification v3.0.1




喜歡此篇文章的話歡迎一鍵三聯支持小編吧~!

更多相關資訊及業務介紹,歡迎訪問上海北匯信息官方網站:上海北匯信息科技有限公司

更多技術干貨,行業前沿動態,請關注上海北匯信息官方公眾號:

聯系方式:

電話:021-34716271

郵箱:info@polelink.com

北匯信息成立于2010年,是一家技術驅動的創新型服務企業。北匯信息始終專注于汽車電子領域的新技術和新產品,為整車廠和零部件企業提供完整的研發、測試解決方案。從測試工具、專用測試設備、完整測試方案到實車測試服務,我們與我們的客戶一起努力,讓中國的汽車變得越來越安全、越來越舒適、越來越智能。

總結

以上是生活随笔為你收集整理的FlexRay测试开发实践之诊断刷写的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。