采集車除了用戶自己的系統外還有大量的采集及支持設備。對于一個復雜的系統來說,保持穩定運行是一項異常復雜的任務。由于采集車數量眾多,部署大量的技術人員進行維護成本非常高,通常都是一人多車的結構,因此為車上系統提供自動化及網絡化的集成方案是一個必選項。在設備擴展方面,Vector提供時間同步服務和數據記錄擴展接口,可以將用戶的In-house方案以及第三方設備集成到CANape的環境中,形成一個“簡潔”的應用。
實車數據應用背景
01
目標
采集實車數據的最終目的是服務于研發或者測試,數據消費的核心是利用算法支持和推動算法的快速迭代,而數據消費系統可以為算法運行和調試提供便捷的環境,但是大多數情況下我們會在消費系統的構建上花費大量的時間。例如:構建文件接口、對齊數據的時間、測定數據質量、數據匿名化等。缺乏“標準”的數據消費系統,會導致工程師不停地開發和維護多個數據消費系統,這種情況在多個項目并行開發時尤為明顯,不僅消耗大量的時間,且產出(迭代效率)很低。因此要想達到數據閉環的效果就需要大量的標準化工作,而減少非核心環節上的消耗,將核心資源放在迭代和改進算法上,平衡與整合自研與商業工具鏈,這往往需要從時間、資金、人力等多個維度綜合考量。
Vector工具鏈在具備標準性的同時,保持對用戶的各種場景提供開放性支持,例如數據采集系統框架、數據可視化、自動化、文件IO等,用戶可以基于自己的流程和認知進行靈活擴展和整合,快速構建起穩定、高效的實車數據消費鏈。
圖1:CANape實車擴展應用
02
一般用戶訴求
用戶在構建數據消費鏈時的訴求,可能包括:私有化數據的落盤方案、多系統多時域的整合、采集車網絡化自動化、數據物流與實時數據傳輸、數據質量控制、數據管理、配置工程管理、數據消費業務構建及部署、數據生命周期及復用技術等。
本質上可以將數據生命周期簡單劃分為:
>
車端數據收集
>
數據流轉(物流及實時傳輸)
>
數據中心構建及數據消費業務整合
>
復用價值開發
其中每個過程中涉及的流程、技術及工具跨越比較大,從技術角度將不同領域人員的開發能力連接起來是比較困難的,創建必要的橋接流程及工具是構建數據鏈的核心任務,畢竟鏈路構成的穩定性和效率在連接,而不在節點本身。
03
數據格式選擇
測量信號值是許多應用的一項基本任務。大多數試驗需要對獲取的信號同時進行處理、顯示和存儲,測量過程同時也需要與工程師進行前端交互,以達到敏捷閉環,針對后端的數據消費及閉環做好充足的準備。汽車應用中,典型信號包括傳感器數據、ECU內部變量/狀態、車輛網絡中的總線報文或內部計算值等。
一般在選擇記錄數據格式時,需要考慮以下幾個方面:
>
數據的屬性關聯;
>
數據的讀寫要求;
>
數據的體積
這些特征間接決定了數據記錄及消費的總體成本(時間成本和資金成本)。
MDF本質是一個數據容器,支持數據的版本族信息寫入,支持信號的定義甚至信號定義的文件寫入,甚至支持坐標系信息、安裝數據等一些額外信息寫入。如果沒有上述特征的支持,那么需要保存為多份文件,而文件關系本質上是離散的且難以管理的,這些會給后面的數據管理和消費帶來額外的開發負擔。
在當前的業務場景中經常看到,高速大帶寬的數據寫入需求,同時又看到數據消費環節要求的快速數據索引和數據提取,本質上這些要求都是相互矛盾的。通常的文件格式的性能特點要么是支持高速并發(亂序)寫入,要么是支持高性能索引(有序)讀取,而MDF為了滿足這兩方面要求,采用了數據塊鏈表結構,在寫入時支持亂序寫入,在讀取時支持快速重排序來保證高性能的索引及讀取,如圖2所示。
圖2:摘自ASAM–MDF特征描述文獻
MDF(Measurement Data Format)是一種二進制文件格式,用于存儲記錄測量或計算的數據,便于測量后處理、離線評估或長期存儲。作為ASAM收錄的數據文件格式標準,被廣泛應用于測量和標定領域。MDF同時也支持無損數據壓縮,第三方的數據序列化結果也可以直接存儲在MDF的數據塊中,例如:Protobuf、CDR、BSON等,甚至聲音、視頻這類數據也可以有損或者無損的存放在MDF中。這些特性可以很好的平衡存儲與計算的資金成本。
圖3:MDF數據的特征與優勢
除此之外,在汽車領域常用的還有很多數據格式,例如:總線數據格式BLF、以太網數據格式PCAP,以及各種數據庫格式(DBC、A2L、ARXML等),仍具有各自的應用場景。
構建消費鏈
01
采集車網絡化及自動化
通常站在駕駛員的視角,希望啟動系統只需要一個按鈕,然后等待系統回復是否可以開始駕駛。站在車上系統開發和維護人員的角度,希望系統所有的功能都可以按照設置條件自動執行,反饋并記錄所有的細節,用于異常時的技術排查。站在更高的層面上,還有車隊管理系統、數據看板系統等,因此希望車輛將必要的信息反饋回來獲取車輛狀態及任務進度,為決策提供更多的統計支撐。
CANape作為車載的核心軟件之一為這類需求提供了必要的橋接能力。CANapeAPI是一個自動化接口,可以使用該接口實現一鍵自檢和啟動,同時也可以使用該接口將必要的狀態信息實時傳遞到用戶前端及監測系統端。圖4是一個網絡調用的實例,展示了如何驅動CANape載入工程運行腳本,控制測量的能力。實際上CANapeAPI提供非常豐富的功能。
圖4:CANape網絡調用實例
02
物流及實時傳輸
應用場景一:在日均TB級的數據生產環境中,網絡傳輸的時效性和成本無法被行業用戶接受,因此數據物流成為用戶的必然選擇。Vector的工控機提供磁盤陣列及Copy系統,減少用戶對數據記錄、存儲和轉移的焦慮。
應用場景二:在數據驅動的模式下,如何快速定位“價值”數據,讓實時數據傳輸也成為必然的選項。由于傳輸能力的限制,存在兩種不同的價值挖掘方法:
>
先篩后傳:將篩選后的有限數據實時傳輸到數
據中心,數據中心的應用實時完成信息的定位
和提取;
>
先傳后篩:車載工控機將“大數據”全部運輸至
“云端/數據中心”,云端部署數據挖掘相關應用;
CANape和vSignalyzer分別提供在線和離線的數據挖掘功能,傳輸接口(SL-API)和云服務(Team Service)等提供多種組件和接口,可以幫助用戶搭建其上述兩種應用場景。
03
數據中心構建及數據消費業務整合
Vector提供SaaS服務,有多種應用可以選擇,能夠在公有云和混合云上為用戶提供快速落地的解決方案,從軟件角度快速連接車端和臺架端,幫助數據中心快速建立。
對于數據消費業務,最大的壁壘在于打通本地的數據消費應用如何部署在服務器端,主要原因是人員知識背景和工程經驗之間的差異。因此,提供一個“標準”樣式,既適合本地端又適合服務端的框架,會讓這個工作變得更容易推動。它不應挑戰用戶的技術背景和知識體系,且應該足夠簡單,不需要讓用戶學習太多與專業無關的知識與技能,這是一項技術能夠快速被目標用戶接受的前提。
Vector提供多種行業主流的記錄格式讀寫庫,例如:MDFlib、BLF等。但是直接使用這些庫,需要用戶了解格式的技術內容才能有效使用。Vector項目團隊以眾多項目經驗為基石,對工具鏈進行封裝,實現了接口代碼的自動化,方便用戶直接獲取所需信息。同時根據數據消費業務的形式,按照DataFlow的風格抽象了數據處理的接口(如圖5所示),方便用戶開發風格統一的消費組件,便于業務層復用、本地開發和服務端部署。
圖5:DataFlow模塊化設計
如圖6所示,這是一個模塊化圖像處理的實際案例,用戶在后端提供了所有模塊的Python代碼,實現了“MDF讀取數據→檢查圖像質量→輸出JPG圖片”的業務功能,還可以在前端重新組裝業務。
圖6:模塊化設計應用實例
04
Vector提供的支持
如圖7所示,針對整個數據消費鏈,Vector提供多種標準化工具幫助用戶快速搭建數據采集、管理、應用等模塊,使用戶能夠集中精力聚焦核心業務。
圖7:數據消費鏈示意圖
本篇文章技術內容所依賴的Vector標準工具,包括:
>
CANape - 用于測量與標定的標準上位
機軟件
>
vMDM - 用于數據管理的服務器/客戶
端軟件
>
vAnonymize - 用于數據脫敏的匿名化
工具軟件
>
Team Service - 用于云端管理數據/工
程的云服務
>
MDF4 Lib - 用于讀寫MDF數據操作
數據流的商用庫接口,包括單機/服務器
和Windows/Linux版本
如有相關技術需求和興趣,
歡迎聯系我們,我們將竭誠為您答疑。
-
CAN
+關注
關注
57文章
2763瀏覽量
464034 -
自動化
+關注
關注
29文章
5609瀏覽量
79483 -
汽車
+關注
關注
13文章
3569瀏覽量
37493
發布評論請先 登錄
相關推薦
評論