徐曉林,秦宗光,趙毅棟
(1.鄭州科技學(xué)院大數(shù)據(jù)與人工智能學(xué)院,河南 鄭州 450064;2.宇通客車股份有限公司,河南 鄭州 450000)
以太網(wǎng)音視頻橋接(audio video bridger,AVB)技術(shù)是對(duì)現(xiàn)有以太網(wǎng)功能的擴(kuò)展,可解決現(xiàn)有車載控制器局域網(wǎng)(controller area network,CAN)的網(wǎng)絡(luò)帶寬消耗及傳輸帶寬不足的問(wèn)題。車載以太網(wǎng)基于傳輸控制協(xié)議/網(wǎng)際協(xié)議(transmission control protocol/internet protocol,TCP/IP)網(wǎng)絡(luò)模型:上層應(yīng)用數(shù)據(jù)傳輸需經(jīng)過(guò)傳輸層、網(wǎng)絡(luò)層、數(shù)據(jù)鏈路層,由物理層PHY芯片轉(zhuǎn)換成原始數(shù)據(jù)流向各域控制器進(jìn)行數(shù)據(jù)收發(fā)傳遞。由于AVB在傳輸中涉及大量以太網(wǎng)數(shù)據(jù)包,如將整包數(shù)據(jù)傳遞給決策使用,勢(shì)必降低其數(shù)據(jù)處理效率。同時(shí),關(guān)聯(lián)多節(jié)點(diǎn)中轉(zhuǎn)傳輸?shù)臄?shù)據(jù)轉(zhuǎn)發(fā)周期又各不相同,由此產(chǎn)生的時(shí)延勢(shì)必導(dǎo)致決策控制的實(shí)時(shí)性、穩(wěn)定性降低。對(duì)于無(wú)人車控制而言,車載電子控制單元 (electronic control unit,ECU)的控制響應(yīng)均要求通信延遲在μs級(jí)別[1]。尤其對(duì)于車輛的運(yùn)動(dòng)控制執(zhí)行機(jī)構(gòu)而言,嚴(yán)重的時(shí)延將導(dǎo)致響應(yīng)時(shí)間達(dá)不到無(wú)人車超低時(shí)延的控制需求,無(wú)法保證無(wú)人駕駛技術(shù)操控的安全性、穩(wěn)定性。
為解決以上實(shí)際問(wèn)題,本文提出1種針對(duì)某種無(wú)人車電子電氣架構(gòu)(electrical electronic architecture,EEA)特點(diǎn)的、降低AVB通信時(shí)延的方法:采用1種基于改進(jìn)的滑動(dòng)窗口更新算法獲取原始AVB數(shù)據(jù)包中的有效荷載數(shù)據(jù),降低上層決策對(duì)于無(wú)效數(shù)據(jù)的處理量;提高決策層有效數(shù)據(jù)處理能力及效率;基于篩取后的有效載荷數(shù)據(jù),計(jì)算各通信節(jié)點(diǎn)的通信時(shí)延[2]。本文通過(guò)控制相應(yīng)節(jié)點(diǎn)的響應(yīng)周期,合理計(jì)算驅(qū)動(dòng)控制的瞬態(tài)響應(yīng)性能指標(biāo),使通信延遲縮短在μs級(jí)范圍內(nèi),確保無(wú)人車的控制時(shí)效性及魯棒性。
本文將低AVB通信時(shí)延的技術(shù)應(yīng)用在某種無(wú)人車上。無(wú)人車的AVB域間EEA如圖1所示。
圖1 無(wú)人車的AVB域間EEA示意圖
無(wú)人車AVB通信EEA包括智能駕駛域、底盤動(dòng)力域、網(wǎng)聯(lián)域、車身域4個(gè)子域。每個(gè)域均為子網(wǎng)系統(tǒng)。各域控制器通過(guò)AVB通信實(shí)現(xiàn)域間系統(tǒng)的數(shù)據(jù)交互,即:以AVB為主干網(wǎng),基于以太網(wǎng)網(wǎng)關(guān)路由實(shí)現(xiàn)跨域通信。以太網(wǎng)網(wǎng)關(guān)是整車以太網(wǎng)網(wǎng)絡(luò)交互的樞紐[3-4],用于實(shí)現(xiàn)各個(gè)域間系統(tǒng)之間的以太網(wǎng)數(shù)據(jù)存儲(chǔ)和轉(zhuǎn)發(fā)。
有效數(shù)據(jù)流提取的最終目的是給上層決策提供精簡(jiǎn)、有效的實(shí)時(shí)更新數(shù)據(jù)。以智能駕駛域的智能計(jì)算平臺(tái)為核心節(jié)點(diǎn),智能駕駛域內(nèi)各模塊節(jié)點(diǎn)的通信數(shù)據(jù)流向模型如圖2所示。智能駕駛域內(nèi),數(shù)據(jù)流向模型自頂向下依次為決策層、服務(wù)層和數(shù)據(jù)源層[2]。
圖2 智能駕駛域內(nèi)各模塊節(jié)點(diǎn)的通信數(shù)據(jù)流向模型
數(shù)據(jù)源層為各域間系統(tǒng)的AVB原始通信數(shù)據(jù),采集之前需按照虛擬局域網(wǎng)標(biāo)識(shí)(virtual local area network identity document,VLANID)進(jìn)行不同域劃分。處于模型中間的服務(wù)層要將獲取的AVB原始數(shù)據(jù)進(jìn)行解包及媒體訪問(wèn)控制(media access control,MAC)地址過(guò)濾處理,即將以太網(wǎng)幀的目標(biāo)MAC地址、源MAC地址、校驗(yàn)位等逐一進(jìn)行過(guò)濾。其目的是減少?zèng)Q策層對(duì)無(wú)效數(shù)據(jù)的處理負(fù)荷[5]。決策層采用1種滑動(dòng)窗口算法來(lái)實(shí)時(shí)獲取更新數(shù)據(jù),確保接收到的有效數(shù)據(jù)均為實(shí)時(shí)動(dòng)態(tài)數(shù)據(jù),而非靜態(tài)未更新數(shù)據(jù)。
經(jīng)MAC層過(guò)濾、提取后的封裝數(shù)據(jù)在每幀AVB數(shù)據(jù)包里可封裝30~50幀有效CAN數(shù)據(jù)。由于有效CAN數(shù)據(jù)的原始周期并不相同,還需要針對(duì)不同周期的 CAN數(shù)據(jù)進(jìn)行自動(dòng)更新檢測(cè),以獲取實(shí)時(shí)、有效數(shù)據(jù)并傳遞給上層決策。
2.2.1 改進(jìn)滑動(dòng)窗口算法原理
滑動(dòng)窗口算法可作為網(wǎng)絡(luò)數(shù)據(jù)傳輸時(shí)的流量控制。當(dāng)連續(xù)區(qū)間數(shù)據(jù)變化時(shí),根據(jù)具體的條件來(lái)移動(dòng)窗口前后指針,經(jīng)遍歷搜索后刪除未更新數(shù)據(jù),再把新數(shù)據(jù)加入窗口內(nèi),以此降低時(shí)間復(fù)雜度。本文設(shè)計(jì)了1種改進(jìn)的滑動(dòng)窗口算法,以控制AVB數(shù)據(jù)傳送時(shí)的流量及數(shù)據(jù)更新變化。針對(duì)有效數(shù)據(jù)傳輸速率的不同,把滑動(dòng)窗口大小設(shè)置為不同變化周期,以實(shí)現(xiàn)對(duì)不同周期性數(shù)據(jù)的更新檢測(cè)[6]。
改進(jìn)滑動(dòng)窗口算法根據(jù)時(shí)間周期辨別更新數(shù)據(jù),通過(guò)更新標(biāo)志判斷數(shù)據(jù)是否更新以傳遞給上層決策。滑動(dòng)窗口分為兩類:一類為單幀有效CAN Data靜態(tài)窗口A,數(shù)據(jù)長(zhǎng)度為8 B;一類為單幀過(guò)濾后含有CAN加密、計(jì)數(shù)、更新標(biāo)志的數(shù)據(jù)靜態(tài)窗口B,窗口大小為30,即1幀該靜態(tài)窗口B包含30幀不同周期的靜態(tài)窗口A。原本的每幀序號(hào)和確認(rèn)號(hào)保留,標(biāo)志Flag為每幀更新標(biāo)志。由于有效載荷數(shù)據(jù)的CAN報(bào)文原始周期不同,滑動(dòng)窗口需要設(shè)置跟隨報(bào)文周期變化的動(dòng)態(tài)滑動(dòng)周期t,即滑動(dòng)窗口動(dòng)態(tài)可變。實(shí)際動(dòng)態(tài)滑動(dòng)窗口時(shí)間周期模型t按照?qǐng)?bào)文周期設(shè)置。改進(jìn)滑動(dòng)窗口算法如圖3所示。
圖3 改進(jìn)滑動(dòng)窗口算法
圖3中:標(biāo)號(hào)1是周期為t1的報(bào)文,圖中共有1~4幀;標(biāo)號(hào)5是周期為t2的報(bào)文,圖中共有5~8幀;標(biāo)號(hào)9是周期為t3的報(bào)文,圖中共有9~10幀,以此類推。當(dāng)某幀有更新變化時(shí),則變?yōu)楹谏驑?biāo)識(shí)。當(dāng)以不同周期發(fā)送數(shù)據(jù)時(shí),可以檢測(cè)單幀的靜態(tài)窗口A數(shù)據(jù)是否在該時(shí)間段內(nèi)有變化:有變化則移入該時(shí)間窗口模型;無(wú)變化則移除窗口。其他周期模型采用同樣機(jī)制。周期T越短,則單幀檢測(cè)的速度越快,實(shí)時(shí)更新的數(shù)據(jù)量就越多。周期T越長(zhǎng),則單幀檢測(cè)的速度越慢,實(shí)時(shí)更新的數(shù)據(jù)量就越少。
2.2.2 算法實(shí)現(xiàn)
AVB數(shù)據(jù)幀更新處理過(guò)程如圖4所示。
圖4 AVB數(shù)據(jù)幀更新處理過(guò)程
依據(jù)數(shù)據(jù)流向模型,改進(jìn)的滑動(dòng)窗口算法實(shí)際應(yīng)用在決策層和服務(wù)層,基于鏈表實(shí)現(xiàn)。該算法的目的是實(shí)現(xiàn)AVB數(shù)據(jù)流的更新。
數(shù)據(jù)更新處理過(guò)程如下。
①?zèng)Q策層作為發(fā)送端,按照設(shè)定周期T將發(fā)送數(shù)據(jù)根據(jù)ID、長(zhǎng)度、CAN Data進(jìn)行封裝后,以CAN數(shù)據(jù)幀形式發(fā)送給服務(wù)層。服務(wù)層接收到該CAN封包數(shù)據(jù)后,以該周期相應(yīng)的滑動(dòng)窗口時(shí)間與其發(fā)送緩沖列表中的CAN ID進(jìn)行對(duì)比[7]。在某一固定的滑動(dòng)窗口時(shí)間T內(nèi),若接收到的封包數(shù)據(jù)與緩存中的一致,即為實(shí)時(shí)更新數(shù)據(jù);如接收到的封包數(shù)據(jù)未包含緩存中的CAN ID,則認(rèn)定為某一CAN ID數(shù)據(jù)未更新。服務(wù)層會(huì)將該有效更新CAN數(shù)據(jù)進(jìn)行CAN的加密、校驗(yàn)并封裝成1幀32 B的CAN數(shù)據(jù)發(fā)送給底層數(shù)據(jù)源層。底層數(shù)據(jù)源層再加上以太網(wǎng)加密、校驗(yàn)格式、源/目的地址等封裝成原始AVB協(xié)議,最終由物理層以太網(wǎng)芯片傳輸給其他各域控制器使用。
②服務(wù)層接收經(jīng)過(guò)MAC地址過(guò)濾的數(shù)據(jù)后,會(huì)依據(jù)滑動(dòng)窗口的不同周期大小逐幀判斷更新標(biāo)志。每幀有效CAN的更新標(biāo)志Flag采用遍歷方式進(jìn)行周期性判斷。當(dāng)Flag由0變?yōu)?時(shí),判斷該幀CAN數(shù)據(jù)相對(duì)上一周期有更新變化。在判定周期范圍內(nèi),F(xiàn)lag狀態(tài)保持不變,則說(shuō)明數(shù)據(jù)未更新。
2.2.3 虛擬局域網(wǎng)數(shù)據(jù)測(cè)試
通過(guò)滑動(dòng)窗口算法更新的實(shí)時(shí)有效AVB載荷數(shù)據(jù)通過(guò)Wireshark軟件進(jìn)行實(shí)時(shí)抓包分析。實(shí)際整車域間,各系統(tǒng)進(jìn)行AVB通信時(shí),需要對(duì)虛擬局域網(wǎng)(virtual local area network,VLAN)內(nèi)的設(shè)備邏輯地址進(jìn)行劃分。本文基于端口進(jìn)行劃分,且各個(gè)域的VLAN標(biāo)志均不同。經(jīng)Wireshark抓取的VLAN標(biāo)志為0x3a的AVB數(shù)據(jù)包如圖5所示(一包數(shù)據(jù)量太大,圖5為部分截圖)。
圖5 VLAN標(biāo)志為0x3a的AVB數(shù)據(jù)包
VLAN標(biāo)志為0x3a是底盤動(dòng)力域的AVB數(shù)據(jù)。在一包上千字節(jié)的AVB整包數(shù)據(jù)包中,共包含有30幀有效載荷數(shù)據(jù),即CAN數(shù)據(jù)。有效載荷數(shù)據(jù)中又包含更新數(shù)據(jù)及未更新的CAN數(shù)據(jù):更新標(biāo)志位為0x88;未更新標(biāo)志位為0x84。圖5的AVB數(shù)據(jù)包具體字段說(shuō)明如表1所示。
表1 AVB數(shù)據(jù)包具體字段說(shuō)明
標(biāo)志3的8 B數(shù)據(jù)(00 00 00 00 00 00 a1 3a)為1幀AVB里的單幀有效載荷18ff1424的CAN報(bào)文數(shù)據(jù),包含具體節(jié)點(diǎn)CAN報(bào)文標(biāo)識(shí)、數(shù)據(jù)長(zhǎng)度8 B及實(shí)際有效數(shù)據(jù)。由于18ff1424報(bào)文的更新標(biāo)志位為0x84,代表未更新,所以這幀數(shù)據(jù)并不會(huì)傳遞給決策使用。而0xcff5182報(bào)文的更新標(biāo)志位為0x88,有效載荷8 B數(shù)據(jù)為圖5的標(biāo)志7(37 00 00 00 00 34 4d 00)。該幀為更新數(shù)據(jù),會(huì)傳遞給決策使用,以此類推。因此,最終傳遞給上層決策的僅是經(jīng)過(guò)濾波后8 B的各實(shí)時(shí)更新CAN數(shù)據(jù)。
AVB技術(shù)在傳統(tǒng)以太網(wǎng)基礎(chǔ)上使用了精準(zhǔn)時(shí)間同步,通過(guò)保障帶寬來(lái)限制傳輸延遲。但在實(shí)際無(wú)人車控制響應(yīng)方面,由于域間各系統(tǒng)及域內(nèi)各模塊通信節(jié)點(diǎn)眾多,經(jīng)過(guò)以上過(guò)濾更新的有效載荷數(shù)據(jù)實(shí)際歷經(jīng)了多處節(jié)點(diǎn)傳輸,從底層通信層過(guò)濾提取后更新到上層決策應(yīng)用[4]。通信方式雖為透明式傳輸,但仍存在通信時(shí)延。延時(shí)時(shí)間導(dǎo)致AVB整體通信傳輸效率低。對(duì)于無(wú)人駕駛車輛的執(zhí)行機(jī)構(gòu)(如轉(zhuǎn)向、驅(qū)動(dòng)、制動(dòng)系統(tǒng)等),均需超低延時(shí)及快速的響應(yīng)反饋才能滿足實(shí)時(shí)控制需求。而時(shí)延會(huì)導(dǎo)致無(wú)人駕駛橫縱向控制的時(shí)效性及響應(yīng)能力均下降、魯棒性能變差,嚴(yán)重影響無(wú)人駕駛技術(shù)的安全性和可靠性[7]。
本文以實(shí)車進(jìn)行驗(yàn)證,依據(jù)某一無(wú)人車的EEA特點(diǎn)(以圖1為主),針對(duì)智能駕駛域與整車控制域之間的通信延時(shí)進(jìn)行測(cè)量分析。智能駕駛域包含主控制域和協(xié)控制域2種。整車控制域包含橫縱向執(zhí)行機(jī)構(gòu),如驅(qū)動(dòng)系統(tǒng)、制動(dòng)系統(tǒng)、轉(zhuǎn)向系統(tǒng)等。在整體傳輸過(guò)程中所歷經(jīng)通信鏈路的網(wǎng)絡(luò)通信節(jié)點(diǎn)模型如圖6所示。
圖6 網(wǎng)絡(luò)通信節(jié)點(diǎn)模型
依據(jù)網(wǎng)絡(luò)通信節(jié)點(diǎn)模型,可見(jiàn)涉及節(jié)點(diǎn)眾多,整體通信過(guò)程中各節(jié)點(diǎn)均有存在延時(shí)的可能性。根據(jù)實(shí)車測(cè)試經(jīng)驗(yàn),該車載AVB通信導(dǎo)致時(shí)延的主要因素如下[8]:①源頭發(fā)送時(shí)延,發(fā)送端控制周期達(dá)不到實(shí)際響應(yīng)需求;②節(jié)點(diǎn)中轉(zhuǎn)轉(zhuǎn)發(fā)時(shí)延,由實(shí)際EEA功能設(shè)計(jì)決定;③物理傳輸媒介時(shí)延(本文并未考慮該時(shí)延)。時(shí)延以從主控制域發(fā)出控制指令開(kāi)始到整車控制域響應(yīng)其控制指令結(jié)束,期間包括協(xié)控制域以CAN通信方式接收主控制域控制指令,經(jīng)協(xié)議中轉(zhuǎn)后以AVB通信發(fā)送給整車控制域的執(zhí)行機(jī)構(gòu)響應(yīng)時(shí)間。
通信時(shí)延測(cè)試采用總線開(kāi)發(fā)設(shè)備(CAN open enviroment,CANOE)進(jìn)行采集,借助wireshark軟件分析報(bào)文數(shù)據(jù)結(jié)構(gòu)。本文以無(wú)人車執(zhí)行機(jī)構(gòu)中的驅(qū)動(dòng)系統(tǒng)為例,對(duì)通信時(shí)延進(jìn)行測(cè)試[9],計(jì)算驅(qū)動(dòng)系統(tǒng)從上層決策控制下發(fā)指令到電機(jī)響應(yīng)反饋的通信延時(shí)時(shí)間[2]。該時(shí)間所經(jīng)歷的具體通信鏈路如下:首先,主控制域ECU開(kāi)始周期性發(fā)送驅(qū)動(dòng)電機(jī)控制報(bào)文;然后,由協(xié)控制域ECU以CAN通信方式接收?qǐng)?bào)文,再通過(guò)以太網(wǎng)AVB方式將報(bào)文發(fā)送給整車域ECU;接著,整車域ECU以AVB形式接收該控制報(bào)文后,經(jīng)過(guò)程序內(nèi)部的AVB格式數(shù)據(jù)轉(zhuǎn)化為CAN格式數(shù)據(jù)[10-11];最后,以CAN通信方式向驅(qū)動(dòng)電機(jī)執(zhí)行機(jī)構(gòu)下發(fā)控制指令。該鏈路中所歷經(jīng)的整體傳輸時(shí)間即為t。
利用CANOE采集從智能駕駛域決策層到底層驅(qū)動(dòng)電機(jī)的各節(jié)點(diǎn)通信報(bào)文。針對(duì)擋位控制,降低時(shí)延前驅(qū)動(dòng)電機(jī)擋位控制時(shí)間如圖7所示。
圖7 降低時(shí)延前驅(qū)動(dòng)電機(jī)擋位控制時(shí)間
圖7(a)中:縱向軸的信號(hào)Vehicle_Shift為CANOE中的總成數(shù)據(jù)庫(kù)(data base can,DBC)文件設(shè)置的信號(hào)變量名稱,是主控制域ECU下發(fā)的擋位控制報(bào)文指令;對(duì)應(yīng)的縱坐標(biāo)0~1表示主控制域ECU的下發(fā)擋位的具體數(shù)值(擋位為整數(shù)值)。其中:數(shù)值0表示空擋;數(shù)值1表示前進(jìn)擋;數(shù)值2表示倒車擋。信號(hào)幀主控制域ECU下發(fā)的擋位控制報(bào)文為標(biāo)準(zhǔn)幀,發(fā)送周期設(shè)定為20 ms。
圖7(b)中:縱向軸的信號(hào)Gear_mode是整車域ECU下發(fā)的控制指令報(bào)文,為擴(kuò)展幀;對(duì)應(yīng)的縱坐標(biāo)設(shè)為0~100,表示整車域控制器發(fā)出的擋位控制指令。其中:0表示空擋、32表示前進(jìn)擋、64表示倒擋。圖7(b)只截取了一部分,為0~32。
由所測(cè)時(shí)間可計(jì)算出:Vehicle_Shift從源頭主控制域ECU下發(fā)指令報(bào)文,經(jīng)AVB通信傳輸,到AVB協(xié)議轉(zhuǎn)換為CAN協(xié)議數(shù)據(jù)Gear_mode,再到被執(zhí)行機(jī)構(gòu)電機(jī)所接收,整體通信延時(shí)時(shí)間約為129 ms。其中:t=t1-t0。t0為主控制域ECU開(kāi)始周期性發(fā)送驅(qū)動(dòng)電機(jī)控制報(bào)文的時(shí)刻(90.173 8 s);t1為整車域ECU以CAN通信方式下發(fā)控制指令給執(zhí)行機(jī)構(gòu)驅(qū)動(dòng)電機(jī)的時(shí)刻(90.303 2 s)。以驅(qū)動(dòng)性能為參考指標(biāo),驅(qū)動(dòng)電機(jī)瞬態(tài)響應(yīng)指標(biāo)如圖8所示。
圖8 驅(qū)動(dòng)電機(jī)瞬態(tài)響應(yīng)指標(biāo)
圖8中:tr為上升時(shí)間,ms;tp為峰值時(shí)間,ms;ts為調(diào)節(jié)時(shí)間,ms。
基于以上指標(biāo)的計(jì)算參考,通信時(shí)延下計(jì)算出的驅(qū)動(dòng)性能指標(biāo)如表2所示。
表2 通信時(shí)延下計(jì)算出的驅(qū)動(dòng)性能指標(biāo)
表2中:v為目標(biāo)車速,km/h;tx為響應(yīng)時(shí)間,ms。由表2可知,由于存在通信時(shí)延,導(dǎo)致驅(qū)動(dòng)的時(shí)域性能指標(biāo)tr、tp、ts均無(wú)法達(dá)到無(wú)人駕駛驅(qū)動(dòng)控制性能要求。該時(shí)延不僅影響縱向驅(qū)動(dòng)控制(指對(duì)發(fā)動(dòng)機(jī)油門控制,包括擋位、車速等)的實(shí)效性,而且對(duì)制動(dòng)以及橫向控制都會(huì)產(chǎn)生影響。通信時(shí)延導(dǎo)致整體橫縱向的實(shí)際控制響應(yīng)均較慢,無(wú)法滿足無(wú)人駕駛控制需求。
針對(duì)以上的時(shí)延,需找出存在時(shí)延的節(jié)點(diǎn)才可以從根本上解決延時(shí)問(wèn)題。依據(jù)圖6的網(wǎng)絡(luò)通信節(jié)點(diǎn)模型,在服務(wù)層和決策層代碼中加入相應(yīng)時(shí)間戳。依據(jù)時(shí)間戳進(jìn)行各節(jié)點(diǎn)的通信時(shí)間監(jiān)控,確定時(shí)延節(jié)點(diǎn)。經(jīng)分析,主要有以下幾處時(shí)延節(jié)點(diǎn)。
①協(xié)控制域ECU內(nèi)部決策層調(diào)用虛擬接口函數(shù),周期性發(fā)送單個(gè)CAN報(bào)文的周期為30 ms。
②協(xié)控制域ECU與主控制域ECU的CAN報(bào)文發(fā)送周期為50 ms。
③車域ECU的CAN報(bào)文更新周期為50 ms。
④主控制域ECU發(fā)送給智能駕駛域ECU的周期為100 ms。
為減小存在通信延時(shí)各通信節(jié)點(diǎn)的處理周期,本文在不影響整體通信傳輸效率及可靠性、有效性的前提下,對(duì)存在通信延時(shí)時(shí)間的通信節(jié)點(diǎn)進(jìn)行處理,以減小整體延時(shí)時(shí)間、提高控制響應(yīng)時(shí)效性。通過(guò)CANOE對(duì)整體通信延時(shí)的測(cè)量及分析,對(duì)相關(guān)存在通信延時(shí)的通信節(jié)點(diǎn)進(jìn)行了合理修正。修正后,整體通信延時(shí)可控制在30 ms內(nèi)。其中,相關(guān)通信節(jié)點(diǎn)的時(shí)間修正如下[2]。
①協(xié)控制域ECU內(nèi)部決策層調(diào)用虛擬接口函數(shù)周期性發(fā)送單個(gè)CAN報(bào)文的周期由30 ms改成10 ms。
②協(xié)控制域ECU與主控制域ECU的CAN報(bào)文發(fā)送周期由50 ms改為10 ms。
③整車域ECU的CAN報(bào)文更新周期由50 ms改為10 ms。
④主控制域ECU發(fā)送給協(xié)控制域ECU的周期由100 ms改為20 ms。
經(jīng)過(guò)時(shí)間修正后,降低時(shí)延后驅(qū)動(dòng)電機(jī)擋位控制時(shí)間如圖9所示。
圖9 降低時(shí)延后驅(qū)動(dòng)電機(jī)擋位控制時(shí)間
圖9(a)和圖9(b)的橫坐標(biāo)、縱坐標(biāo)與圖7相同。由圖9可知,通信延時(shí)時(shí)間dt=t1-t0(321.781 4 s-321.761 1 s),結(jié)果約為20 ms。同樣以驅(qū)動(dòng)性能作為參考,分析瞬態(tài)響應(yīng)性能。修正通信延時(shí)后的驅(qū)動(dòng)性能指標(biāo)如表3所示。
表3 修正通信延時(shí)后的驅(qū)動(dòng)性能指標(biāo)
由表3可知:驅(qū)動(dòng)性能中所測(cè)得的tx、tr、tp、ts等驅(qū)動(dòng)性能指標(biāo)均已減小。修正后由于通信延時(shí)時(shí)間減小,使得驅(qū)動(dòng)性能優(yōu)于原本通信延時(shí)的情況;而整車域間各系統(tǒng)依然能保持穩(wěn)定和正常通信,提高了智能駕駛決策控制的有效性及實(shí)時(shí)性。
針對(duì)無(wú)人車,本文設(shè)計(jì)了1種降低AVB通信時(shí)延的方法,以提高無(wú)人駕駛決策控制的瞬態(tài)響應(yīng)特性?;跓o(wú)人車靈活的EEA以及域間各系統(tǒng)通信特點(diǎn),本文采用改進(jìn)的滑動(dòng)窗口算法獲取底層過(guò)濾后的實(shí)時(shí)更新AVB數(shù)據(jù),并基于有效載荷數(shù)據(jù)分析在整個(gè)通信網(wǎng)絡(luò)傳輸過(guò)程中存在通信延時(shí)的網(wǎng)絡(luò)節(jié)點(diǎn)。通過(guò)計(jì)算瞬態(tài)響應(yīng)性能指標(biāo),對(duì)存在通信時(shí)延的各節(jié)點(diǎn)進(jìn)行修正以減小時(shí)延。該方法有效降低了域間各系統(tǒng)以太網(wǎng)AVB通信時(shí)延,保證了以太網(wǎng)通信的穩(wěn)定性及可靠性,提高了域間通信效率,同時(shí)也改善了決策層對(duì)運(yùn)動(dòng)執(zhí)行機(jī)構(gòu)控制的時(shí)效性和響應(yīng)能力。