本發(fā)明涉及汽車電子測試領(lǐng)域,特別涉及一種整車環(huán)境下電控模塊的智能化集成測試系統(tǒng)、控制方法和計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。
背景技術(shù):
1、中國汽車制造業(yè)也正在快速地向電動(dòng)化、網(wǎng)聯(lián)化和智能化方向發(fā)展,不可避免的帶來了車載電控模塊的功能集成復(fù)雜化,以及軟件迭代發(fā)布的頻繁化,這就對(duì)集成測試帶來了更加巨大的挑戰(zhàn)。
2、車載電控軟件作為車載電控模塊的核心,在開發(fā)階段,由于需求的變化及車型的不同,會(huì)一直持續(xù)的迭代更新。對(duì)于主機(jī)廠而言,所有的電控軟件需要在正式上線前,在實(shí)車或者整車臺(tái)架環(huán)境下完成刷新的穩(wěn)定性和可靠性驗(yàn)證,以確保在工廠或售后進(jìn)行大批量軟件更新時(shí)的安全性。雖然現(xiàn)有的刷新測試裝置和方法雖然在一定程度上減少了人力成本,但是僅僅覆蓋到了單體模塊的封閉場景下的測試,沒有很好地模擬整車環(huán)境工況下的刷新功能穩(wěn)定性,并且也缺少對(duì)刷新文件本身的安全性等多維度的檢測,例如一種用于汽車ecu程序自動(dòng)刷新測試的方法和裝置(cn106874055a)和一種車載控制器的刷寫測試方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)(cn115061450a)。
3、由于智能化和網(wǎng)聯(lián)化的進(jìn)一步迫切需求,汽車要求各車載電控模塊之間需要進(jìn)行更加頻繁的數(shù)據(jù)交互,因此檢測通訊數(shù)據(jù)是否符合規(guī)范正逐漸成為電控模塊軟件集成測試的重點(diǎn)之一。雖然目前的通訊類測試技術(shù)中有部分對(duì)總線通用物理層、鏈路層等的測試,也有少量的抗干擾性的測試,但是測試方法僅是對(duì)單體模塊的在封閉場景下的測試,并且也缺少對(duì)總線數(shù)據(jù)的周期、長度、偏差等標(biāo)準(zhǔn)的檢驗(yàn)測試,尤其缺少整車環(huán)境下的車載電控模塊總線數(shù)據(jù)自動(dòng)化集成檢測,例如一種用于車載電子產(chǎn)品調(diào)試測試的原車總線模擬軟件及其系統(tǒng)(cn107368063)、一種車載總線便攜式自動(dòng)化測試系統(tǒng)(cn109375613a)和一種汽車can通訊故障測試系統(tǒng)、方法、裝置及存儲(chǔ)介質(zhì)(cn113259209a)。
4、隨著車型平臺(tái)和項(xiàng)目的增加,以及軟件迭代發(fā)布的頻繁化,軟件集成測試人員對(duì)測試過程的自動(dòng)化需求日益提高,但由于每個(gè)測試人員的風(fēng)格不同,導(dǎo)致獨(dú)自制作的工程腳本都是不統(tǒng)一的、可移植性很差、集成度也很低。雖然現(xiàn)有的診斷測試技術(shù)能夠部分實(shí)現(xiàn)診斷的自動(dòng)化,一定程度上代替了手工測試,但是其僅僅專注于故障注入后觀察模塊故障碼的置出是否符合預(yù)期,即只涵蓋了診斷服務(wù)全集中的一小部分,并且在不同架構(gòu)間的可移植性較差,例如一種自動(dòng)化診斷測試用例生成系統(tǒng)及方法(cn111983998a)。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明提出一種整車環(huán)境下電控模塊的智能化集成測試系統(tǒng),其能夠使得集成測試結(jié)果更加可靠安全。
2、根據(jù)本發(fā)明一個(gè)方面提出的整車環(huán)境下電控模塊的智能化集成測試系統(tǒng),所述整車環(huán)境下電控模塊的智能化集成測試系統(tǒng)包括上位機(jī)、測試設(shè)備和整車測試臺(tái)架,
3、所述上位機(jī)包括用戶定制化模塊、多維度智能刷新模塊、數(shù)據(jù)智能檢測模塊以及診斷智能檢測模塊,
4、所述用戶定制化模塊用于完成用戶需求定制化設(shè)置,所述多維度智能刷新模塊用于完成整車環(huán)境下的多維度智能刷新,所述數(shù)據(jù)智能檢測模塊用于完成總線通信數(shù)據(jù)智能檢測,所述診斷智能檢測模塊用于完成診斷數(shù)據(jù)智能分析。
5、根據(jù)本發(fā)明一個(gè)方面提出的整車環(huán)境下電控模塊的智能化集成測試系統(tǒng),所述上位機(jī)包括信號(hào)處理模塊、進(jìn)程控制模塊、進(jìn)程監(jiān)控模塊和數(shù)據(jù)處理模塊,
6、所述信號(hào)處理模塊用于完成上位機(jī)與整車測試臺(tái)架的交互等信號(hào)處理,所述進(jìn)程控制模塊用于根據(jù)進(jìn)程監(jiān)控模塊反饋的相關(guān)數(shù)據(jù)及狀態(tài)進(jìn)行進(jìn)程控制,所述進(jìn)程監(jiān)控模塊用于監(jiān)控上位機(jī)測試軟件的運(yùn)行狀態(tài)并記錄相關(guān)監(jiān)控?cái)?shù)據(jù)與狀態(tài),所述數(shù)據(jù)處理模塊用于完成測試日志數(shù)據(jù)的處理及測試報(bào)告的生成。
7、根據(jù)本發(fā)明一個(gè)方面提出的整車環(huán)境下電控模塊的智能化集成測試系統(tǒng),所述整車測試臺(tái)架包括控制機(jī)柜和車載模塊,所述整車測試臺(tái)架用于模擬整車環(huán)境。
8、根據(jù)本發(fā)明一個(gè)方面提出的整車環(huán)境下電控模塊的智能化集成測試系統(tǒng),所述上位機(jī)通過測試設(shè)備與整車測試臺(tái)架連接,所述測試設(shè)備作為中間介質(zhì)同時(shí)連接上位機(jī)及整車測試臺(tái)架,所述車載模塊根據(jù)整車網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)連接到控制機(jī)柜,所述控制機(jī)柜還包括電源、線束、傳感器和執(zhí)行器。
9、根據(jù)本發(fā)明一個(gè)方面提出的整車環(huán)境下電控模塊的智能化集成測試系統(tǒng)的控制方法,所述控制方法包含以下步驟:
10、b:判斷用戶定制化參數(shù)是否已完成設(shè)置,如果已設(shè)置則跳轉(zhuǎn)到步驟e;如果未設(shè)置則跳轉(zhuǎn)到步驟c;
11、c:初始化配置參數(shù);
12、d:設(shè)置用戶定制化參數(shù);
13、e:判斷參數(shù)設(shè)置是否有效,如果有效則跳轉(zhuǎn)到步驟f;如果無效則跳轉(zhuǎn)到步驟r;
14、f:判斷參數(shù)是否需要保存,如果需要保存則跳轉(zhuǎn)到步驟g;如果不需要?jiǎng)t跳轉(zhuǎn)到步驟h;
15、g:保存用戶定制化參數(shù);
16、h:判斷刷新測試是否勾選,如果勾選則跳轉(zhuǎn)到步驟i;如果未勾選則跳轉(zhuǎn)到步驟k;
17、i:執(zhí)行多維度智能刷新;
18、j:判斷刷新測試是否完成,如果完成則跳轉(zhuǎn)到步驟k;如果未完成則跳轉(zhuǎn)到步驟r;
19、k:判斷數(shù)據(jù)檢測是否勾選,如果勾選則跳轉(zhuǎn)到步驟l;如果未勾選則跳轉(zhuǎn)到步驟o;
20、l:執(zhí)行數(shù)據(jù)智能檢測;
21、m:判斷數(shù)據(jù)檢測是否完成,如果完成則跳轉(zhuǎn)到步驟o;如果未完成則跳轉(zhuǎn)到步驟r;
22、o:判斷診斷檢測是否勾選,如果勾選則跳轉(zhuǎn)到步驟p;如果未勾選則跳轉(zhuǎn)到步驟r;
23、p:執(zhí)行診斷智能檢測;
24、q:判斷診斷檢測是否完成,如果完成則跳轉(zhuǎn)到步驟s;如果未完成則跳轉(zhuǎn)到步驟r;
25、r:提示錯(cuò)誤;
26、s:生成測試結(jié)果并保存。
27、根據(jù)本發(fā)明一個(gè)方面提出的整車環(huán)境下電控模塊的智能化集成測試系統(tǒng)的控制方法,多維度智能刷新包含以下步驟:
28、a1:啟動(dòng)軟件自動(dòng)化刷新測試;
29、b1:初始化參數(shù)軟件刷新重試次數(shù)c=1,單刷標(biāo)定重試次數(shù)d=1,軟件中斷重試次數(shù)e=1,標(biāo)定中斷重試次數(shù)f=1;配置待刷新模塊的基本信息,最大重試次數(shù)x1、x2、x3、x4;
30、c1:檢查信息是否配置正確,如不正確則跳轉(zhuǎn)到步驟w1;如正確則跳轉(zhuǎn)到d1;
31、d1:調(diào)用刷新軟件并打開;
32、e1:如果調(diào)用成功則跳轉(zhuǎn)到f1;失敗則跳轉(zhuǎn)到步驟w1;
33、f1:自動(dòng)配置刷新軟件所需的信息;
34、g1:執(zhí)行軟件刷新測試;
35、h1:如果刷新成功,則跳轉(zhuǎn)到j(luò)1;如果失敗,則跳轉(zhuǎn)到i1;
36、i1:重新嘗試軟件刷新測試,如重試次數(shù)小于設(shè)定的最大重試次數(shù)x1,則跳轉(zhuǎn)到步驟ic1;如重試次數(shù)c不小于x1,則跳轉(zhuǎn)到步驟w1;
37、ic1:重試次數(shù)c=c+1;
38、j1:判斷是否需要執(zhí)行單刷標(biāo)定測試,如果需要?jiǎng)t跳轉(zhuǎn)到k1;如果不需要?jiǎng)t跳轉(zhuǎn)到o1;
39、k1:執(zhí)行單刷標(biāo)定測試;
40、l1:如果刷新成功,則跳轉(zhuǎn)到o1;如果失敗,則跳轉(zhuǎn)到m1;
41、m1:重新嘗試單刷標(biāo)定測試,如重試次數(shù)d小于設(shè)定的最大重試次數(shù)x2,則跳轉(zhuǎn)到步驟md1;如重試次數(shù)不小于x2,則跳轉(zhuǎn)到步驟w1;
42、md1:重試次數(shù)d=d+1;
43、o1:判斷是否需要執(zhí)行軟件中斷測試,如果需要?jiǎng)t跳轉(zhuǎn)到p1;如果不需要?jiǎng)t跳轉(zhuǎn)到步驟s1;
44、p1:執(zhí)行軟件中斷測試;
45、q1:如果中斷測試成功,則跳轉(zhuǎn)到步驟s1;如果失敗,則跳轉(zhuǎn)到步驟r1;
46、r1:重新嘗試軟件中斷測試,如重試次數(shù)e小于設(shè)定的最大重試次數(shù)x3,則跳轉(zhuǎn)到步驟re1;如重試次數(shù)不小于x3,則跳轉(zhuǎn)到步驟w1;
47、re1:重試次數(shù)e=e+1;
48、s1:判斷是否執(zhí)行標(biāo)定中斷測試,如果需要?jiǎng)t跳轉(zhuǎn)到步驟t1;如果不需要?jiǎng)t跳轉(zhuǎn)到步驟x1;
49、t1:執(zhí)行標(biāo)定中斷測試;
50、u1:如果中斷測試成功,則跳轉(zhuǎn)至x1;如果中斷測試失敗,則跳轉(zhuǎn)至步驟v1;
51、v1:重新嘗試標(biāo)定中斷測試,如重試次數(shù)d小于設(shè)定的最大重試次數(shù)x4,則跳轉(zhuǎn)到步驟vf1;如重試次數(shù)不小于x4,則跳轉(zhuǎn)到步驟w1;
52、vf1:重試次數(shù)d=d+1;
53、w1:報(bào)錯(cuò)提示;
54、x1:判斷是否執(zhí)行安全刷新測試,如果是則跳轉(zhuǎn)到步驟z1;如果否則跳轉(zhuǎn)到步驟c21;
55、z1:判斷安全刷新測試文件輸入是否正確,如果正確則跳轉(zhuǎn)到步驟c11;如果不正確則跳轉(zhuǎn)到步驟w1;
56、a11:自動(dòng)生成測試結(jié)果;
57、c11:判斷待測模塊是否處于工廠模式,如果是則跳轉(zhuǎn)到d11;如果否則跳轉(zhuǎn)到r11;
58、d11:寫入有效的授權(quán)bypass文件;
59、e11:判斷授權(quán)bypass文件是否寫入成功,如果寫入成功則繼續(xù)執(zhí)行步驟f11;如果寫入失敗則跳轉(zhuǎn)到步驟w1;
60、f11:刷新未授權(quán)文件a;
61、g11:判斷未授權(quán)文件a刷新是否成功,如果是則執(zhí)行步驟h11;如果否則跳轉(zhuǎn)到步驟w1;
62、h11:刷新授權(quán)文件b;
63、i11:判斷授權(quán)文件b刷新成功,如果是則繼續(xù)執(zhí)行j11;如果否則跳轉(zhuǎn)到步驟w1;
64、j11:清除有效的授權(quán)bypass文件;
65、l11:刷新未授權(quán)文件a;
66、m11:判斷未授權(quán)文件a刷新是否失敗,如果是則繼續(xù)執(zhí)行o11;如果否則跳轉(zhuǎn)到步驟w1;
67、o11:刷新授權(quán)文件b;
68、p11:判斷授權(quán)文件b是否刷新成功,如果是則繼續(xù)執(zhí)行q11;如果否則跳轉(zhuǎn)到步驟w1;
69、q11:退出工廠模式;
70、r11:寫入有效的授權(quán)bypass文件
71、s11:判斷授權(quán)bypass文件是否寫入成功,如果寫入成功則繼續(xù)執(zhí)行步驟t11;如果寫入失敗則跳轉(zhuǎn)到步驟w1;
72、t11:刷新未授權(quán)文件a;
73、u11:判斷未授權(quán)文件a刷新是否成功,如果是則繼續(xù)執(zhí)行v11;如果否則跳轉(zhuǎn)到步驟w1;
74、v11:刷新授權(quán)文件b;
75、w11:判斷授權(quán)文件b刷新是否成功,如果是則繼續(xù)執(zhí)行x11;如果否則跳轉(zhuǎn)到步驟w1;
76、x11:清除有效的授權(quán)bypass文件;
77、z11:刷新未授權(quán)文件a;
78、a21:判斷未授權(quán)文件a是否刷新失敗,如果是則繼續(xù)執(zhí)行b21;如果否則跳轉(zhuǎn)到步驟w1;
79、b21:刷新授權(quán)文件b;
80、c21:判斷授權(quán)文件b刷新是否成功,如果是則繼續(xù)執(zhí)行d21;如果否則跳轉(zhuǎn)到步驟w1;
81、d21:提醒測試已完成。
82、根據(jù)本發(fā)明一個(gè)方面提出的整車環(huán)境下電控模塊的智能化集成測試系統(tǒng)的控制方法,數(shù)據(jù)智能檢測包含以下步驟:
83、b2:進(jìn)行參數(shù)配置;
84、c2:向數(shù)據(jù)庫發(fā)送獲取相應(yīng)版本通訊規(guī)范請(qǐng)求;
85、d2:判定請(qǐng)求是否通過,如果通過跳轉(zhuǎn)到e2,否則跳轉(zhuǎn)到u2;
86、e2:如果請(qǐng)求通過,獲得通訊規(guī)范文件;
87、f2:對(duì)通訊規(guī)范文件進(jìn)行數(shù)據(jù)一致性檢測;
88、g2:對(duì)通訊規(guī)范中無效值進(jìn)行糾正;
89、h2:計(jì)算數(shù)據(jù)中的數(shù)據(jù)周期,并填充到數(shù)據(jù)末位;
90、i2:根據(jù)數(shù)據(jù)規(guī)范文件中的參數(shù)識(shí)別對(duì)通訊類型進(jìn)行判斷;
91、j2:對(duì)于不同通訊規(guī)范,自動(dòng)匹配相關(guān)檢驗(yàn)機(jī)制,并將相應(yīng)通訊規(guī)范涵蓋數(shù)據(jù)分類;
92、k2:在參數(shù)配置之后,識(shí)別需要進(jìn)行實(shí)時(shí)數(shù)據(jù)采集還是使用離線數(shù)據(jù)進(jìn)行檢測,如果是實(shí)時(shí)數(shù)據(jù)采集跳轉(zhuǎn)至l2,如果離線數(shù)據(jù)檢測跳轉(zhuǎn)至o2;
93、l2:向設(shè)備發(fā)出數(shù)據(jù)采集請(qǐng)求;
94、m2:判斷請(qǐng)求是否通過,如果請(qǐng)求通過跳轉(zhuǎn)到p2;如果請(qǐng)求未通過跳轉(zhuǎn)到u2;
95、o2:報(bào)錯(cuò)并提示;
96、p2:如果請(qǐng)求通過開始截取并傳輸數(shù)據(jù);
97、q2:對(duì)實(shí)際數(shù)據(jù)進(jìn)行數(shù)據(jù)一致性檢驗(yàn);
98、r2:移除實(shí)際數(shù)據(jù)中無效值;
99、s2:糾正實(shí)際數(shù)據(jù)中錯(cuò)誤數(shù)據(jù);
100、t2:將整車環(huán)境通訊網(wǎng)絡(luò)產(chǎn)生的實(shí)際數(shù)據(jù)和相應(yīng)類型的通訊規(guī)范進(jìn)行對(duì)比;
101、u2:報(bào)錯(cuò)并提示;
102、v2:得到檢測結(jié)果,自動(dòng)輸出檢測結(jié)果報(bào)告。
103、根據(jù)本發(fā)明一個(gè)方面提出的整車環(huán)境下電控模塊的智能化集成測試系統(tǒng)的控制方法,診斷智能檢測包含以下步驟:
104、b3:判斷工具是否已連接;若已連接則執(zhí)行步驟b3;若未連接則跳轉(zhuǎn)到步驟x3;
105、c3:進(jìn)行參數(shù)配置;
106、d3:判斷參數(shù)是否正確,若正確則執(zhí)行步驟d3;若不正確則跳轉(zhuǎn)到步驟x3;
107、e3:掃描并提取測試文檔中的待測診斷指令;
108、f3:確認(rèn)是否有非法的診斷指令,若無非法指令則執(zhí)行步驟h3;若有非法指令則跳轉(zhuǎn)到步驟x3;
109、h3:判斷臺(tái)架狀態(tài)是否符合需求,若符合需求則執(zhí)行步驟j3;否則跳轉(zhuǎn)到步驟i3;
110、i3:將臺(tái)架狀態(tài)設(shè)置到符合需求狀態(tài);
111、j3:匹配正確的診斷指令類型;
112、k3:提取測試用例中待測試的診斷指令;
113、l3:判斷發(fā)送該報(bào)文是否存在前置條件,若存在則執(zhí)行步驟j3;否則執(zhí)行步驟m3;
114、m3:構(gòu)建診斷header和診斷payload,拼裝組成待發(fā)送的診斷報(bào)文;
115、o3:發(fā)送診斷指令;
116、p3:接受診斷反饋;
117、q3:在報(bào)文緩存中尋找目標(biāo)模塊的反饋報(bào)文;
118、r3:判斷等待次數(shù)是否小于3次,若是則執(zhí)行步驟p3;若否則執(zhí)行步驟t3;
119、s3:判斷反饋報(bào)文是否為負(fù)反饋且需要繼續(xù)等待,若是則執(zhí)行步驟r3;若否則執(zhí)行步驟t3;
120、t3:智能處理反饋;
121、u3:記錄原始數(shù)據(jù);
122、v3:判斷反饋是否符合要求,若是則執(zhí)行步驟w23;若否則執(zhí)行步驟w13;
123、w13:標(biāo)注存在問題;
124、w23:標(biāo)注pass;
125、x3:報(bào)錯(cuò)提示;
126、z13:保存結(jié)果。
127、根據(jù)本發(fā)明一個(gè)方面提出的整車環(huán)境下電控模塊的智能化集成測試系統(tǒng)的控制方法,診斷智能檢測的智能處理反饋包含以下步驟:
128、t23:輪詢判斷反饋是否超時(shí),若是則執(zhí)行步驟t133;若否則執(zhí)行步驟t33;
129、t33:判斷報(bào)文是否為拓展格式,若是則執(zhí)行步驟t413;若否則執(zhí)行步驟t423;
130、t413:按照拓展格式處理反饋報(bào)文;
131、t423:按照非拓展格式處理反饋報(bào)文;
132、t53:判斷報(bào)文是否為多幀格式,若是則執(zhí)行步驟t613;若否則執(zhí)行步驟t73;
133、t613:獲取首幀有效數(shù)據(jù);
134、t623:發(fā)出流控幀;
135、t633:獲得連續(xù)幀有效數(shù)據(jù);
136、t73:獲取單幀有效數(shù)據(jù);
137、t83:判斷是否需要進(jìn)行報(bào)文格式的再處理,若是則執(zhí)行步驟t93;若否則執(zhí)行步驟t103;
138、t93:報(bào)文格式轉(zhuǎn)換/切割;
139、t103:判斷是否存在歷史診斷數(shù)據(jù),若是則執(zhí)行步驟t113;若否則執(zhí)行步驟t123;
140、t113:對(duì)比兩次診斷結(jié)果是否相同;
141、t123:返回裝在有效數(shù)據(jù)的數(shù)組。
142、根據(jù)本發(fā)明一個(gè)方面提出的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,該計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)根據(jù)本發(fā)明的控制方法的步驟。
143、本發(fā)明的有益效果包括:(1)本發(fā)明系統(tǒng)將集成測試高度模塊化,優(yōu)化了集成測試驗(yàn)證算法,最大化地模擬了整車環(huán)境;(2)可以根據(jù)用戶需求定制化地完成整車環(huán)境下的多維度智能刷新、總線通信數(shù)據(jù)智能檢測和診斷數(shù)據(jù)智能分析等電控模塊的自動(dòng)化智能集成測試;(3)可移植性好,集成度高,使得集成測試結(jié)果更加可靠安全,測試過程更加人性化。