本發(fā)明涉及電動(dòng)汽車技術(shù)領(lǐng)域,尤其涉及一種整車控制系統(tǒng)多點(diǎn)式校驗(yàn)算法。
背景技術(shù):
隨著人們環(huán)保意識(shí)的不斷提高,減少城市汽車尾氣的排放量是重中之重。各種新能源汽車投入到人們的生活當(dāng)中,其中能源效率高、低碳環(huán)保、零排放的電動(dòng)汽車成為城市新能源交通汽車的主力軍。
電動(dòng)汽車在運(yùn)行中,整車CAN報(bào)文尤其至關(guān)重要,決定了整車的驅(qū)動(dòng)性能、安全性能;然而目前電動(dòng)客車的CAN報(bào)文通過(guò)普通的CAN收發(fā)器就可以完全監(jiān)控,并且CAN報(bào)文的內(nèi)容并沒(méi)有實(shí)現(xiàn)校驗(yàn)和加密過(guò)程,使得整車的通訊機(jī)制完全暴露在外,一方面對(duì)整車安全不利,另一方面對(duì)整車廠的控制策略和過(guò)程的保護(hù)性不高;所以我司推出了一種針對(duì)CAN報(bào)文的多點(diǎn)式校驗(yàn)機(jī)構(gòu)和算法,主要是利用CAN報(bào)文的ID號(hào)、設(shè)備分配號(hào)以及加密因子進(jìn)行校驗(yàn)和加密,實(shí)現(xiàn)相互之間內(nèi)容校驗(yàn)和對(duì)外加密過(guò)程。
技術(shù)實(shí)現(xiàn)要素:
基于背景技術(shù)存在的技術(shù)問(wèn)題,本發(fā)明提出了一種整車控制系統(tǒng)多點(diǎn)式校驗(yàn)算法。
本發(fā)明提出的整車控制系統(tǒng)多點(diǎn)式校驗(yàn)算法,包括以下步驟:
S1、整車控制器和上位機(jī)分別對(duì)整車內(nèi)零部件的設(shè)備分配地址以及加密因子進(jìn)行采集并存儲(chǔ);
S2、整車內(nèi)零部件儀表、BMS控制器、電機(jī)控制器、打氣控制器、轉(zhuǎn)向控制器分別為整車CAN網(wǎng)絡(luò)的節(jié)點(diǎn),且上述零部件分別具有固定的加密因子、加密算法及解密算法;
S3、對(duì)整車內(nèi)零部件之間建立關(guān)聯(lián);
S4、當(dāng)整車內(nèi)零部件之間進(jìn)行CAN數(shù)據(jù)信息發(fā)送時(shí),首先確定上述信息的目標(biāo)發(fā)送零部件和目標(biāo)接收零部件,且目標(biāo)發(fā)送零部件按照目標(biāo)接收零部件的加密算法對(duì)信息進(jìn)行加密后再發(fā)送;
S5、目標(biāo)接收零部件接收到加密后的信息后,對(duì)上述加密后的信息進(jìn)行解密,并提取出有效信息進(jìn)行使用。
優(yōu)選地,整車內(nèi)零部件的加密算法及解密算法均依據(jù)零部件的設(shè)備分配地址、零部件的加密因子、各幀信息的CAN數(shù)據(jù)ID號(hào)進(jìn)行加密計(jì)算及解密計(jì)算。
優(yōu)選地,所述的加密計(jì)算公式如下:
Keyn=Kn+(ID&0x00FFFF00)>>2+Sn;
其中,Kn為各零部件的加密因子;Sn為各零部件的設(shè)備分配地址;ID為需要發(fā)送的CAN數(shù)據(jù)的ID號(hào),該ID號(hào)的數(shù)據(jù)字節(jié)均加上該加密因子后對(duì)255求余;Keyn為該幀信息的CAN數(shù)據(jù)ID號(hào)的加密因子。
優(yōu)選地,所述的解密計(jì)算公式如下:
Keyn=Kn+(ID&0x00FFFF00)>>2+Sn;
其中,Kn為各零部件的加密因子;Sn為各零部件的設(shè)備分配地址;ID為需要發(fā)送的CAN數(shù)據(jù)的ID號(hào),該ID號(hào)的數(shù)據(jù)字節(jié)均加上該加密因子后對(duì)255求余;Keyn為該幀信息的CAN數(shù)據(jù)ID號(hào)的解密因子。
優(yōu)選地,步驟S4進(jìn)步一包括下述操作:
S41、目標(biāo)發(fā)送零部件將加密前的CAN數(shù)據(jù)進(jìn)行CRC校驗(yàn)計(jì)算,得到CRC校驗(yàn)和C1,并將CRC校驗(yàn)和C1填充在第一字節(jié);
S42、計(jì)算該幀數(shù)據(jù)的加密因子;
S43、利用上述加密因子對(duì)需要發(fā)送的CAN數(shù)據(jù)進(jìn)行加密計(jì)算;
S44、將加密后的CAN數(shù)據(jù)進(jìn)行發(fā)送。
優(yōu)選地,步驟S5進(jìn)步一包括下述操作:
S51、目標(biāo)接收零部件對(duì)接收到的加密后的信息進(jìn)行解密計(jì)算;
S52、利用解密因子對(duì)CAN數(shù)據(jù)進(jìn)行解密;
S53、對(duì)解密后的CAN數(shù)據(jù)進(jìn)行CRC校驗(yàn)計(jì)算;
S54、根據(jù)上述校驗(yàn)計(jì)算結(jié)果提取有效信息進(jìn)行使用。
優(yōu)選地,所述的儀表具有K1加密因子,所述的BMS控制器具有K3加密因子,所述的電機(jī)控制器具有K5加密因子,所述的打氣控制器具有K6加密因子,所述的轉(zhuǎn)向控制器具有K7加密因子。
本發(fā)明對(duì)整車內(nèi)各零部件之間建立關(guān)聯(lián),且當(dāng)整車內(nèi)零部件之間有信息發(fā)送時(shí),對(duì)上述信息進(jìn)行加密,保證信息傳遞的安全性;同時(shí),在目標(biāo)發(fā)送零部件對(duì)需要發(fā)送信息的進(jìn)行加密前,對(duì)上述加密前信息進(jìn)行校驗(yàn),且在目標(biāo)接收零部件對(duì)接收到的信息進(jìn)行解密后,對(duì)上述解密后的信息進(jìn)行校驗(yàn),如此,對(duì)加密前的信息和加密后的信息進(jìn)行校驗(yàn),使整車的通訊機(jī)制得到保護(hù),不僅保護(hù)了整車的安全,而且對(duì)整車廠的控制策略和過(guò)程進(jìn)行了全面的保護(hù)。并且,本發(fā)明主要利用CAN數(shù)據(jù)ID號(hào)、整車內(nèi)零部件設(shè)備分配地址、加密因子進(jìn)行校驗(yàn)和加密,實(shí)現(xiàn)了整車內(nèi)零部件之間內(nèi)容校驗(yàn)和對(duì)外加密過(guò)程,不僅保證了數(shù)據(jù)信息傳輸?shù)陌踩?,而且保障了?shù)據(jù)信息傳輸?shù)挠行浴?/p>
附圖說(shuō)明
圖1為一種整車控制系統(tǒng)多點(diǎn)式校驗(yàn)算法的結(jié)構(gòu)示意圖。
具體實(shí)施方式
如圖1所示,圖1為本發(fā)明提出的一種整車控制系統(tǒng)多點(diǎn)式校驗(yàn)算法。
參照?qǐng)D1,本發(fā)明提出的整車控制系統(tǒng)多點(diǎn)式校驗(yàn)算法,包括以下步驟:
S1、整車控制器和上位機(jī)分別對(duì)整車內(nèi)零部件的設(shè)備分配地址以及加密因子進(jìn)行采集并存儲(chǔ);
S2、整車內(nèi)零部件儀表、BMS控制器、電機(jī)控制器、打氣控制器、轉(zhuǎn)向控制器分別為整車CAN網(wǎng)絡(luò)的節(jié)點(diǎn),且上述零部件分別具有固定的加密因子、加密算法及解密算法;所述的儀表具有K1加密因子,所述的BMS控制器具有K3加密因子,所述的電機(jī)控制器具有K5加密因子,所述的打氣控制器具有K6加密因子,所述的轉(zhuǎn)向控制器具有K7加密因子。
S3、對(duì)整車內(nèi)零部件之間建立關(guān)聯(lián);
S4、當(dāng)整車內(nèi)零部件之間進(jìn)行CAN數(shù)據(jù)信息發(fā)送時(shí),首先確定上述信息的目標(biāo)發(fā)送零部件和目標(biāo)接收零部件,且目標(biāo)發(fā)送零部件按照目標(biāo)接收零部件的加密算法對(duì)信息進(jìn)行加密后再發(fā)送;具體操作為:
S41、目標(biāo)發(fā)送零部件將加密前的CAN數(shù)據(jù)進(jìn)行CRC校驗(yàn)計(jì)算,得到CRC校驗(yàn)和C1,并將CRC校驗(yàn)和C1填充在第一字節(jié);
S42、計(jì)算該幀數(shù)據(jù)的加密因子;
S43、利用上述加密因子對(duì)需要發(fā)送的CAN數(shù)據(jù)進(jìn)行加密計(jì)算;
S44、將加密后的CAN數(shù)據(jù)進(jìn)行發(fā)送。
S5、目標(biāo)接收零部件接收到加密后的信息后,對(duì)上述加密后的信息進(jìn)行解密,并提取出有效信息進(jìn)行使用,具體操作為:
S51、目標(biāo)接收零部件對(duì)接收到的加密后的信息進(jìn)行解密計(jì)算;
S52、利用解密因子對(duì)CAN數(shù)據(jù)進(jìn)行解密;
S53、對(duì)解密后的CAN數(shù)據(jù)進(jìn)行CRC校驗(yàn)計(jì)算;
S54、根據(jù)上述校驗(yàn)計(jì)算結(jié)果提取有效信息進(jìn)行使用。
本實(shí)施方式中,整車內(nèi)零部件的加密算法及解密算法均依據(jù)零部件的設(shè)備分配地址、零部件的加密因子、各幀信息的CAN數(shù)據(jù)ID號(hào)進(jìn)行加密計(jì)算及解密計(jì)算,具體計(jì)算方式如下:
所述的加密計(jì)算公式為:
Keyn=Kn+(ID&0x00FFFF00)>>2+Sn;
其中,Kn為各零部件的加密因子;Sn為各零部件的設(shè)備分配地址;ID為需要發(fā)送的CAN數(shù)據(jù)的ID號(hào),該ID號(hào)的數(shù)據(jù)字節(jié)均加上該加密因子后對(duì)255求余;Keyn為該幀信息的CAN數(shù)據(jù)ID號(hào)的加密因子。
所述的解密計(jì)算公式為:
Keyn=Kn+(ID&0x00FFFF00)>>2+Sn;
其中,Kn為各零部件的加密因子;Sn為各零部件的設(shè)備分配地址;ID為需要發(fā)送的CAN數(shù)據(jù)的ID號(hào),該ID號(hào)的數(shù)據(jù)字節(jié)均加上該加密因子后對(duì)255求余;Keyn為該幀信息的CAN數(shù)據(jù)ID號(hào)的解密因子。
本發(fā)明主要利用CAN數(shù)據(jù)ID號(hào)、整車內(nèi)零部件設(shè)備分配地址、加密因子進(jìn)行校驗(yàn)和加密,實(shí)現(xiàn)了整車內(nèi)零部件之間內(nèi)容校驗(yàn)和對(duì)外加密過(guò)程,不僅保證了數(shù)據(jù)信息傳輸?shù)陌踩裕冶U狭藬?shù)據(jù)信息傳輸?shù)挠行浴?/p>
以上所述,僅為本發(fā)明較佳的具體實(shí)施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),根據(jù)本發(fā)明的技術(shù)方案及其發(fā)明構(gòu)思加以等同替換或改變,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。