點擊上方藍字談思實驗室
獲取更多汽車網(wǎng)絡(luò)安全資訊

01
多傳感器時間特點

02
統(tǒng)一時鐘源
統(tǒng)一時鐘源為了解決“鐘漂”問題,提供一個所有傳感器都遵循的共同時間基準,我們引入了統(tǒng)一時鐘源的概念,如下圖所示:

統(tǒng)一時鐘源有兩種常見方式:一種是基于 GPS 的 “PPS+NMEA” (秒脈沖+GPRMC),另一種是基于以太網(wǎng)的 PTP(IEEE 1588)、gPTP(IEEE 802.1AS)時鐘同步協(xié)議。 自駕領(lǐng)域主流的方案是結(jié)合上述兩種方案,以 GNSS 時鐘時間為基準時間,采用 PTP/gPTP 時鐘同步協(xié)議統(tǒng)一各 傳感器/域 之間的時鐘源,完成時間基準的統(tǒng)一。
2.1 時鐘源
自動駕駛系統(tǒng)目前絕大多數(shù)標配高精度 GNSS 接收機,而 GNSS 中導(dǎo)航衛(wèi)星內(nèi)置高精度原子鐘,GNSS接收機通過解算導(dǎo)航衛(wèi)星信號(大于等于 4 顆衛(wèi)星的信號),可以獲得接收機系統(tǒng)時間與衛(wèi)星原子鐘之間鐘差,并通過鐘差來校準自己的系統(tǒng)時間,得到超高精度的時鐘信號,這就是GNSS 的授時功能。
原子鐘是人類目前最精確的時間測量儀器,原子在不同能級之間的移動稱為“躍遷”,且由高能級躍遷到低能級時,會釋放電磁波。而對同一種原子來說,這種頻率是固定的,且不受溫度和壓力影響,只與自身能量有關(guān),物理學(xué)上稱之為“共振頻率”。物理學(xué)家通過一些物理手段,獲得共振頻率的準確物理值。并以此值作為產(chǎn)生時間信號的基本節(jié)拍,即丈量時間的基本單位。據(jù)相關(guān)報道,北斗三號衛(wèi)星上的原子鐘300年才會有1s累積誤差。
2.2 PPS+GPRMC
GNSS 接收機獲取時鐘信號后,會輸出兩類同步信號:①同步脈沖信號 PPS。其時間周期為 1s ,脈沖寬度5ms~100ms;②GPRMC 時間同步報文。通過標準串口輸出,符合 GPRMC 格式,用于提供精確的時間同步信息。
GPRMC 是一種包含UTC時間(精確到秒),經(jīng)緯度定位數(shù)據(jù)的標準格式報文。其格式如下:
# 示例數(shù)據(jù)$GPRMC,001155.00,A,2237.496474,N,11356.089515,E,0.0,225.5,230520,2.3,W,A*28# 數(shù)據(jù)說明field 0:$GPRMC, 格式ID,表示該格式為建議的最低特定GPS / TRANSIT數(shù)據(jù)(RMC)推薦最低定位信息field 1: UTC時間, 格式hhmmss.ssss,代表時分秒.毫秒field 2: 狀態(tài) A:代表定位成功 V:代表定位失敗field 3: 緯度 ddmm.mmmmmm 度格式(如果前導(dǎo)位數(shù)不足,則用0填充)field 4: 緯度 N(北緯) S(南緯)field 5: 經(jīng)度 dddmm.mmmmmm 度格式(如果前導(dǎo)位數(shù)不足,則用0填充)field 6: 經(jīng)度 E(東經(jīng)) W(西經(jīng))field 7: 速度(也為1.852 km / h)field 8: 方位角,度(二維方向,等效于二維羅盤)field 9: UTC日期 DDMMYY 天月年field 10: 磁偏角(000-180)度,如果前導(dǎo)位數(shù)不足,則用0填充)field 11: 磁偏角方向E =東W =西field 12: 模式,A =自動,D =差分,E =估計,AND =無效數(shù)據(jù)(3.0協(xié)議內(nèi)容)field 13: 校驗和
其中 PPS 前沿時刻與 GPRMC報文 的發(fā)送在同一時刻,誤差為 ns 級別,可以忽略。PPS 秒脈沖(通常為1PPS,即1次每秒)為物理電平輸出,接收及處理 PPS 信號的時間在 ns 級別,依舊可以忽略。但 GPRMC數(shù)據(jù)一般通過波特率 9600 的串口發(fā)送,其發(fā)送、接收、處理時間 tx 在 ms 級別,是時間同步的關(guān)鍵。以下是使用 PPS+GPRMC 進行時間同步的原理。

(1)設(shè)備收到 PPS 秒脈沖信號后,將內(nèi)部以晶振為時鐘源的系統(tǒng)時間里的毫秒及以下時間清零,并由此開始計算毫秒時間。
(2)當(dāng)收到 GPRMC 數(shù)據(jù)后,提取報文里的年、月、日、時、分、秒的 UTC 時間。
(3)將收到秒脈沖到解析出 GPRMC 中 UTC 時間所用的時間 tx,與 UTC 整秒時間相加,同步給系統(tǒng)時間,至此已完成一次時間同步。下一秒再進行相同的過程,每秒準確校準一次。
基于單純的 PPS 和 GPRMC 實現(xiàn)整個自動駕駛系統(tǒng)的時間同步的局限:
PPS信號驅(qū)動能力不足:PPS 是一種低功率脈沖信號,驅(qū)動電流范圍通常為 0.5mA 至 20mA,難以觸發(fā)多個傳感器的穩(wěn)定工作。
PPS 信號抗干擾能力較弱:PPS 信號為無屏蔽的單線脈沖信號,在車輛復(fù)雜的電磁環(huán)境中容易受到干擾。當(dāng)多條 PPS 線同時布置在車內(nèi)時,可能難以區(qū)分干擾脈沖和有效同步脈沖,導(dǎo)致信號準確性下降。
GPRMC 報文的傳輸限制:GPRMC 通過 RS232 串口傳輸同步報文,RS232 為 1 對 1 的全雙工通信形式,可通過主從方式實現(xiàn)有限的 1 對 N 數(shù)據(jù)傳輸。然而,若需支持十幾臺設(shè)備的同步傳輸,實際應(yīng)用中可能面臨困難,需通過實驗驗證可行性。此外,線束的復(fù)雜性會對工程設(shè)計造成較大挑戰(zhàn)。導(dǎo)遠 INS570D 車載組合導(dǎo)航定位系統(tǒng)的 PPS+GPRMC 信息如下:

若將其接入 Mid-360,則參考:
Mid-360 時間同步說明

時鐘源失效的嚴重后果:當(dāng)時鐘源丟失時,所有依賴同步的設(shè)備將失去統(tǒng)一基準,各設(shè)備時鐘將自主運行,失去全局協(xié)調(diào)。這種情況在對功能安全要求極高的自動駕駛系統(tǒng)中是不可接受的,需要設(shè)計冗余機制以確保在主時鐘故障時由備用時鐘迅速接替,維持全系統(tǒng)的正常運行。
2.3 PTP
PTP(Precision Time Protocol,IEEE 1588 V2)是基于以太網(wǎng)的高精度時鐘同步協(xié)議,是一種主從式的時間同步系統(tǒng),能夠?qū)崿F(xiàn)主節(jié)點(Master Node)和從節(jié)點(Slave Node)之間的亞微秒級時鐘同步,前提是所有節(jié)點之間都通過以太網(wǎng)互聯(lián),交換機支持 PTP 協(xié)議,并且每個節(jié)點都支持 PTP 協(xié)議。
設(shè)備中運行 PTP 協(xié)議的網(wǎng)絡(luò)端口稱為 PTP 端口,PTP主端口用來發(fā)布時間,PTP從端口用來接收時間。同時定義了三種時鐘節(jié)點,邊界時鐘節(jié)點(BC,Boundary Clock)、普通時鐘節(jié)點(OC,Ordinary Clock)和透明時鐘節(jié)點(TC,Transparent clock)。
(1)邊界時鐘節(jié)點擁有多個PTP端口,其中一個用來同步上游設(shè)備時間,其余端口用來向下游設(shè)備發(fā)送時間。當(dāng)邊界時鐘節(jié)點的上游時間同步設(shè)備是GNSS接收機時,此時的邊界時鐘節(jié)點就是一個主時鐘節(jié)點(最優(yōu)時鐘)
(2)普通時鐘節(jié)點只有一個PTP端口,用來同步上游時鐘節(jié)點的時間。
(3)透明時鐘節(jié)點具有多個PTP端口,收到什么時間,轉(zhuǎn)發(fā)什么時間,不進行協(xié)議解析,內(nèi)部不參與時間同步

PTP通過在主從設(shè)備之間交互同步報文,并記錄下報文發(fā)送時間,從而計算網(wǎng)絡(luò)傳輸延遲和主從設(shè)備間時鐘的偏差。PTP定義了四條同步報文:Sync、Follow_Up、Delay_Req、Delay_Resp,精確同步過程如下:

(1)PTP 主端口向從端口發(fā)送 Sync 報文,同步記錄下 Sync 發(fā)送的時間 t1。從端口收到 Sync 報文后,記錄下收到的時間 t2。
(2)緊接著主端口將 t1 時間放到 Follow_Up 報文發(fā)送給從端口,從端口收到此報文后就可以解析出 t1,并由此得到第一個方程式:t1 + T_delay(網(wǎng)絡(luò)延時)+ T_offset(時鐘偏差)= t2。
(3)從端口向主端口發(fā)送 Delay_Req 報文,同步記錄下 Delay_Req 發(fā)送的時間 t3。主端口收到報文后,記錄下收到的時間 t4。
(4)緊接著主端口將 t4 時間放到 Delay_Resp 報文發(fā)送給從端口,從端口收到此報文后就可以解析出 t4,并由此得到第二個方程式:t3 + T_delay(網(wǎng)絡(luò)延時)- T_offset(時鐘偏差)= t4。
這里假設(shè)網(wǎng)絡(luò)延遲是對稱的,即上下行的延遲相等。解方程組得:

2.4 全域架構(gòu)時間同步方案
全域架構(gòu)下,智駕域控制器因為直接連接GNSS接收機(或內(nèi)置),而GNSS又是絕佳的時鐘源,因此智駕域控制器自然而然成為主時鐘節(jié)點,中央網(wǎng)關(guān)域控制器通過車載以太網(wǎng)主干網(wǎng)串聯(lián)起其它域控制器,自然而然成為邊界時鐘的最佳選擇,這樣在時鐘源丟失的時候,邊界時鐘節(jié)點同步主時鐘節(jié)點的系統(tǒng)時間,仍然可以保持整個全域架構(gòu)內(nèi)相對時間一致。
其它域內(nèi)傳感器、執(zhí)行器的時間同步需求,若沒有,此域控制器設(shè)計成普通時鐘節(jié)點即可。如有,可以設(shè)計成邊界時鐘,以保證無時鐘源時的相對時間統(tǒng)一。
基于以太網(wǎng)設(shè)備的時間同步方案已經(jīng)完善,而對于非車載以太網(wǎng)設(shè)備但有非常強烈同步需求的相機,我們還得特殊處理一下。將相機設(shè)置為外觸發(fā)模式,通過主控給相機外觸發(fā)脈沖信號, 即 PPS。相機拍照時,曝光時刻也會產(chǎn)生脈沖信號發(fā)送給主控,主控記錄此時系統(tǒng)時間,并將時間戳數(shù)據(jù)放到相機的圖像數(shù)據(jù)里。

03
時間戳誤差
完成時鐘源的統(tǒng)一后,每個傳感器數(shù)據(jù)都有了全局一致的時間參考。但會面臨一個新問題,不同的傳感器采樣頻率不一樣,比如激光雷達(通常為 10Hz)和相機(通常為 30Hz)。導(dǎo)致在特定時間獲取同步數(shù)據(jù)可能會有延遲,在動態(tài)環(huán)境中可能造成較大的誤差。
如下圖所示,三個傳感器具有不同的采樣頻率。在 T1 時刻,傳感器2 有一個數(shù)據(jù),此時,我們需要對應(yīng)傳感器1 和 3的數(shù)據(jù)是多少,就會進行查找。查找的方式就是找對應(yīng)的傳感器數(shù)據(jù)和傳感器2時間差最近的數(shù)據(jù)包。如果查找的數(shù)據(jù)包時間和 T1 時刻傳感器2 數(shù)據(jù)包的差距較大,在加上車身和障礙物都在移動,這樣誤差會比較大。為了緩解查找時間戳造成的誤差現(xiàn)象,主要采用的方式有硬件同步和軟件同步。

3.1 硬件同步
硬件同步是一種通過物理信號來確保不同傳感器數(shù)據(jù)采集時間一致性的方法。一種常見的硬件同步方法是使用 PPS 信號作為觸發(fā)器。PPS 信號是一個精確的時鐘信號,可以觸發(fā)傳感器在特定的時間點采集數(shù)據(jù),以此來改變傳感器的數(shù)據(jù)采集頻率。GNSS系統(tǒng)除了可以作為統(tǒng)一的時鐘源外,還可以利用其 PPS 脈沖來觸發(fā)傳感器在特定的時間點采集數(shù)據(jù),當(dāng)使用 GNSS 的 PPS 脈沖時,傳感器給出的數(shù)據(jù)包中的時間戳即為對齊到絕對時間的上的全局時間戳(GPS時間戳)而非傳感器時間戳。由于 GNSS 的 PPS 的頻率通常只有 1Hz,所以通常需要一個設(shè)備把 PPS 信號轉(zhuǎn)發(fā)為任意頻率(分頻,1Hz -> 10Hz)、但是跟原始 PPS 信號同相位的方波,這樣就可以控制各傳感器的采集頻率了。
例如,激光雷達和相機可以配置為在 PPS 信號的上升沿采集數(shù)據(jù),從而確保兩者的數(shù)據(jù)采集是同步的。具體來說,激光雷達可以利用其相位鎖定功能來實現(xiàn)與 PPS 信號的同步,如下圖所示。通過設(shè)置激光雷達的相位鎖定角度與相機視野的中心對齊,可以在激光雷達的激光束旋轉(zhuǎn)到相機視野中心線時觸發(fā)相機,實現(xiàn)兩者的同步采集。
當(dāng)然,由于激光雷達是連續(xù)旋轉(zhuǎn)采集數(shù)據(jù),而相機則是瞬間曝光,因此硬件同步只能近似實現(xiàn)。例如,激光雷達的幀率若是 10Hz,那么一幀點云中最早和最晚采集的點之間的時間差可能達到 100ms。相機由于曝光是瞬時的,其所有像素點的采集時刻是一致的。因此,對于相機視野中心的點云,采集時間與圖像采集時間一致,但對于視野邊緣的點云,存在一定的時間偏差,這個偏差可能在 5ms 到 20ms 之間。

3.2 軟件同步
軟件同步是一種在數(shù)據(jù)處理階段對傳感器數(shù)據(jù)進行時間校正的方法。當(dāng)硬件同步無法實現(xiàn)或不足以滿足系統(tǒng)要求時,軟件同步提供了一種解決方案,利用已知的時間標簽和傳感器的運動信息來推算傳感器數(shù)據(jù)的準確時間點。
內(nèi)插外推法是軟件同步中常用的一種算法。通過以下步驟實現(xiàn)同步:
時間差計算:首先,計算兩個傳感器數(shù)據(jù)幀之間的時間差。例如,如果有一個激光雷達(Lidar)數(shù)據(jù)幀和一個相機數(shù)據(jù)幀,它們的時間標簽可能不同,我們需要找出這兩個時間標簽之間的差異。
運動信息獲取:收集傳感器在兩個時間標簽期間的運動信息,這通常包括速度、加速度和旋轉(zhuǎn)等。
位置推算:利用傳感器的運動信息和時間差,通過物理模型或機器學(xué)習(xí)模型推算目標在兩個時間點之間的位置變化。
建立新幀:根據(jù)推算出的目標位置,創(chuàng)建一個新的數(shù)據(jù)幀,這個新幀代表了兩個原始數(shù)據(jù)幀之間的某個時間點的狀態(tài)。
3.2.3 其他方式
① ROS 中的 message_filters 包
ROS 提供了message_filters 包來進行時間軟同步,message_filters 類似一個消息緩存,分別訂閱不同傳感器的 Topic,當(dāng)消息到達消息過濾器時,并不會立即輸出,而是在滿足一定條件下輸出,產(chǎn)生一個同步結(jié)果并給到回調(diào)函數(shù),在回調(diào)函數(shù)里處理時間同步后的數(shù)據(jù)。
message_filters 只是輸出時間軸上相近的不同傳感器的數(shù)據(jù),不能做到主動去同步!詳情參考 ROS時間同步----使用message_filters進行時間軟同步。
② 雙端隊列 std::deque
使用雙端隊列 std::deque 存儲不同傳感器的數(shù)據(jù),根據(jù)不同傳感器數(shù)據(jù)的時間戳進行判斷,對滿足時間同步要求的數(shù)據(jù)進行處理。類似 message_filters 包,只是輸出時間軸上相近的不同傳感器的數(shù)據(jù)。
std::queue buf1;std::queue buf2;std::thread process;//typedef M 傳感器數(shù)據(jù)類型,比如sensor_msg::PointCloud2、sensor_msg::Image等等void callback1(M& msg){//數(shù)據(jù)入隊buf1.push(msg);//其他代碼...}void callback2(M& msg){//數(shù)據(jù)入隊buf2.push(msg);//其他代碼...}void process_comparation(){while(ros::ok()){M data1=buf1.front();M data2=buf2.front();if(data1.header.timestamp.toSec()>data2.header.timestamp.toSec()){buf2.pop();}elsebuf1.pop();//其他操作data1和data2的代碼}}int main(int argc,char** argv){//initialization}
來源:自動駕駛技術(shù)網(wǎng)
end

談思汽車媒體門戶

精品活動推薦



AutoSec系列沙龍

專業(yè)社群
部分入群專家來自:
新勢力車企:
特斯拉、理想、極氪、小米、零跑汽車、阿維塔汽車、智己汽車、小鵬、嵐圖汽車、蔚來汽車、吉祥汽車、賽力斯......
外資傳統(tǒng)主流車企代表:
大眾中國、大眾酷翼、奧迪汽車、寶馬、福特、戴姆勒-奔馳、通用、保時捷、沃爾沃、現(xiàn)代汽車、日產(chǎn)汽車、捷豹路虎、斯堪尼亞......
內(nèi)資傳統(tǒng)主流車企:
吉利汽車、上汽乘用車、長城汽車、上汽大眾、長安汽車、北京汽車、東風(fēng)汽車、廣汽、比亞迪、一汽集團、一汽解放、東風(fēng)商用、上汽商用......
全球領(lǐng)先一級供應(yīng)商:
博世、大陸集團、聯(lián)合汽車電子、安波福、采埃孚、科世達、舍弗勒、霍尼韋爾、大疆、日立、哈曼、華為、百度、聯(lián)想、聯(lián)發(fā)科、普瑞均勝、德賽西威、蜂巢轉(zhuǎn)向、均聯(lián)智行、武漢光庭、星紀魅族、中車集團、濰柴集團、地平線、紫光同芯、字節(jié)跳動、......
二級供應(yīng)商(500+以上):
中科數(shù)測、ETAS、BlackDuck、NXP、上海軟件中心、Deloitte、奇安信、為辰信安、云馳未來、信長城、澤鹿安全、紐創(chuàng)信安、復(fù)旦微電子、天融信、奇虎360、中汽中心、中國汽研、上海汽檢、加特蘭微電子、浙江大學(xué)......
人員占比

公司類型占比

文章
關(guān)于涉嫌仿冒AutoSec會議品牌的律師聲明
一文帶你了解智能汽車車載網(wǎng)絡(luò)通信安全架構(gòu)
網(wǎng)絡(luò)安全:TARA方法、工具與案例
汽車數(shù)據(jù)安全合規(guī)重點分析
淺析汽車芯片信息安全之安全啟動
域集中式架構(gòu)的汽車車載通信安全方案探究
系統(tǒng)安全架構(gòu)之車輛網(wǎng)絡(luò)安全架構(gòu)
車聯(lián)網(wǎng)中的隱私保護問題
智能網(wǎng)聯(lián)汽車網(wǎng)絡(luò)安全技術(shù)研究
AUTOSAR 信息安全框架和關(guān)鍵技術(shù)分析
AUTOSAR 信息安全機制有哪些?
信息安全的底層機制
汽車網(wǎng)絡(luò)安全
Autosar硬件安全模塊HSM的使用
首發(fā)!小米雷軍兩會上就汽車數(shù)據(jù)安全問題建言:關(guān)于構(gòu)建完善汽車數(shù)據(jù)安全管理體系的建議