本發(fā)明汽車(chē)
技術(shù)領(lǐng)域:
,尤其涉及一種汽車(chē)軟件刷新控制方法、系統(tǒng)及網(wǎng)關(guān)。
背景技術(shù):
:在汽車(chē)領(lǐng)域,尤其是在汽車(chē)開(kāi)發(fā)階段,經(jīng)常需要更新軟件以修復(fù)漏洞或升級(jí)軟件。對(duì)于實(shí)車(chē)刷新,因一個(gè)CAN通道連接多個(gè)電子控制單元(ECU),所有ECU都在總線上發(fā)送報(bào)文,會(huì)占用一定的負(fù)載率,對(duì)刷新會(huì)有一定的影響;當(dāng)負(fù)載率很高時(shí),因刷新報(bào)文ID優(yōu)先率不高,會(huì)導(dǎo)致刷新報(bào)文延時(shí)甚至丟幀,從而導(dǎo)致刷新失敗。技術(shù)實(shí)現(xiàn)要素:本發(fā)明所要解決的技術(shù)問(wèn)題在于,提供一種汽車(chē)軟件刷新控制方法、系統(tǒng)及網(wǎng)關(guān),以降低總線負(fù)載率,提高刷新成功率。為了解決上述技術(shù)問(wèn)題,本發(fā)明提供一種汽車(chē)軟件刷新控制方法,包括:步驟S1,網(wǎng)關(guān)將刷新設(shè)備發(fā)送的刷新報(bào)文轉(zhuǎn)發(fā)至目標(biāo)電子控制單元;步驟S2,當(dāng)目標(biāo)電子控制單元判斷所述刷新報(bào)文為首幀時(shí),網(wǎng)關(guān)接收由所述目標(biāo)電子控制單元發(fā)送的攜帶有可接收的最小的連續(xù)幀時(shí)間間隔以及可一次性接收的連續(xù)幀的數(shù)量的流控制幀;步驟S3,當(dāng)網(wǎng)關(guān)識(shí)別出所述流控制幀中攜帶的所述目標(biāo)電子控制單元可接收的最小的連續(xù)幀時(shí)間間隔小于設(shè)定閾值時(shí),將所述目標(biāo)電子控制單元可接收的最小的連續(xù)幀時(shí)間間隔修改為所述設(shè)定閾值,并轉(zhuǎn)發(fā)至刷新設(shè)備;步驟S4,網(wǎng)關(guān)接收所述刷新設(shè)備按照所述設(shè)定閾值發(fā)送的連續(xù)幀,并轉(zhuǎn)發(fā)至所述目標(biāo)電子控制單元。其中,所述設(shè)定閾值的取值范圍為2毫秒-4毫秒。其中,所述步驟S3中,當(dāng)網(wǎng)關(guān)識(shí)別出所述流控制幀中攜帶的所述目標(biāo)電子控制單元可接收的最小的連續(xù)幀時(shí)間間隔大于或等于所述設(shè)定閾值時(shí),則直接將所述流控制幀中攜帶的所述目標(biāo)電子控制單元可接收的最小的連續(xù)幀時(shí)間間隔轉(zhuǎn)發(fā)至刷新設(shè)備。本發(fā)明還提供一種汽車(chē)軟件刷新控制系統(tǒng),包括:刷新設(shè)備、網(wǎng)關(guān)、目標(biāo)電子控制單元;其中,所述網(wǎng)關(guān)將所述刷新設(shè)備發(fā)送的刷新報(bào)文轉(zhuǎn)發(fā)至所述目標(biāo)電子控制單元,并接收由所述目標(biāo)電子控制單元發(fā)送的攜帶有可接收的最小的連續(xù)幀時(shí)間間隔以及可一次性接收的連續(xù)幀的數(shù)量的流控制幀,在識(shí)別出所述流控制幀中攜帶的所述目標(biāo)電子控制單元可接收的最小的連續(xù)幀時(shí)間間隔小于設(shè)定閾值時(shí),將所述目標(biāo)電子控制單元可接收的最小的連續(xù)幀時(shí)間間隔修改為所述設(shè)定閾值,并轉(zhuǎn)發(fā)至所述刷新設(shè)備,以及接收所述刷新設(shè)備按照所述設(shè)定閾值發(fā)送的連續(xù)幀,并轉(zhuǎn)發(fā)至所述目標(biāo)電子控制單元。其中,所述設(shè)定閾值的取值范圍為2毫秒-4毫秒。其中,所述網(wǎng)關(guān)還用于在識(shí)別出所述流控制幀中攜帶的所述目標(biāo)電子控制單元可接收的最小的連續(xù)幀時(shí)間間隔大于或等于所述設(shè)定閾值時(shí),直接將所述流控制幀中攜帶的所述目標(biāo)電子控制單元可接收的最小的連續(xù)幀時(shí)間間隔轉(zhuǎn)發(fā)至刷新設(shè)備。本發(fā)明還提供一種用于汽車(chē)軟件刷新的網(wǎng)關(guān),所述網(wǎng)關(guān)用于將刷新設(shè)備發(fā)送的刷新報(bào)文轉(zhuǎn)發(fā)至目標(biāo)電子控制單元,并接收由所述目標(biāo)電子控制單元發(fā)送的攜帶有可接收的最小的連續(xù)幀時(shí)間間隔以及可一次性接收的連續(xù)幀的數(shù)量的流控制幀,還用于在識(shí)別出所述流控制幀中攜帶的所述目標(biāo)電子控制單元可接收的最小的連續(xù)幀時(shí)間間隔小于設(shè)定閾值時(shí),將所述目標(biāo)電子控制單元可接收的最小的連續(xù)幀時(shí)間間隔修改為所述設(shè)定閾值,并轉(zhuǎn)發(fā)至刷新設(shè)備,以及接收所述刷新設(shè)備按照所述設(shè)定閾值發(fā)送的連續(xù)幀,并轉(zhuǎn)發(fā)至所述目標(biāo)電子控制單元。其中,所述設(shè)定閾值的取值范圍為2毫秒-4毫秒。其中,所述網(wǎng)關(guān)還用于在識(shí)別出所述流控制幀中攜帶的所述目標(biāo)電子控制單元可接收的最小的連續(xù)幀時(shí)間間隔大于或等于所述設(shè)定閾值時(shí),直接將所述流控制幀中攜帶的所述目標(biāo)電子控制單元可接收的最小的連續(xù)幀時(shí)間間隔轉(zhuǎn)發(fā)至刷新設(shè)備。本發(fā)明實(shí)施例的有益效果在于:通過(guò)網(wǎng)關(guān)修改流控制幀中的參數(shù),可智能克服不同波特率通道之間數(shù)據(jù)轉(zhuǎn)發(fā)對(duì)總線負(fù)載率的影響,解決了整車(chē)所有ECU面臨的負(fù)載率的問(wèn)題,降低了總線負(fù)載率。附圖說(shuō)明為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1是本發(fā)明實(shí)施例一一種汽車(chē)軟件刷新控制方法中長(zhǎng)幀傳送機(jī)制示意圖。圖2是本發(fā)明實(shí)施例一一種汽車(chē)軟件刷新控制方法的流程示意圖。具體實(shí)施方式以下各實(shí)施例的說(shuō)明是參考附圖,用以示例本發(fā)明可以用以實(shí)施的特定實(shí)施例。根據(jù)汽車(chē)UDS協(xié)議(全球統(tǒng)一車(chē)載電腦自診斷服務(wù)協(xié)議)規(guī)定,如果設(shè)備請(qǐng)求的內(nèi)容或ECU回復(fù)的內(nèi)容大于8個(gè)字節(jié)時(shí),需要用長(zhǎng)幀報(bào)文傳送數(shù)據(jù),長(zhǎng)幀報(bào)文發(fā)送的機(jī)制如圖1所示,其中,STmin是接收方可以接收的最小的連續(xù)幀時(shí)間間隔,BlockSize是接收方可以一次性接收的連續(xù)幀的數(shù)量。設(shè)備(發(fā)送方)首先發(fā)送長(zhǎng)幀的首幀,ECU(接收方)在判斷此幀報(bào)文是首幀后,發(fā)送帶STmin和BlockSize的流控制幀,以通知設(shè)備該ECU所支持的可以接收的最小的連續(xù)幀時(shí)間間隔以及可以一次性接收的連續(xù)幀的數(shù)量,設(shè)備收到這兩個(gè)參數(shù)后,調(diào)整發(fā)送的連續(xù)幀的時(shí)間間隔及一次性發(fā)送的連續(xù)幀數(shù)量,以滿足ECU的需求。ECU可通過(guò)改變流控制幀的參數(shù)從而改變?cè)O(shè)備傳送數(shù)據(jù)的時(shí)間參數(shù),參數(shù)詳見(jiàn)如下流控制幀格式。表1流控制幀格式含義PCIBlockSizeSTmin值0x300x00-0xFF0x00-0xFF其中PCI是協(xié)議控制信息(ProtocolControlInformation),按診斷協(xié)議為固定值0x30;BlcokSize由ECU定義,可根據(jù)ECU自身可接受能力,在0x00-0xFF中定義一個(gè)具體的值;STmin也由ECU定義,可根據(jù)ECU自身可接受能力,在0x00-0xFF中定義一個(gè)具體的值,單位為毫秒。在刷新過(guò)程中,因數(shù)據(jù)量在幾十K至幾百K之間,遠(yuǎn)遠(yuǎn)大于8個(gè)字節(jié),因此必須用到長(zhǎng)幀傳送數(shù)據(jù)。單件刷新時(shí),為了節(jié)省時(shí)間,一般要求ECU回復(fù)STmin為0x00,因此設(shè)備是根據(jù)當(dāng)前CAN通道的波特率,設(shè)置傳送數(shù)據(jù)的速率使得CAN通道基本是滿負(fù)荷運(yùn)行;而整車(chē)刷新時(shí),因各ECU之間的數(shù)據(jù)的相互傳遞,每個(gè)CAN通道本身就存在一定的負(fù)載率,而且ECU之間傳送數(shù)據(jù)用的ID都是優(yōu)先級(jí)較高的ID,而刷新用的都是診斷ID,優(yōu)先級(jí)相對(duì)較低,在總線仲裁時(shí),刷新的報(bào)文就會(huì)有延時(shí),當(dāng)總線負(fù)載率一直處于一個(gè)超負(fù)荷運(yùn)行時(shí),甚至?xí)G幀。對(duì)于獨(dú)立網(wǎng)關(guān)車(chē)型,因不同通道之間的報(bào)文都是由網(wǎng)關(guān)轉(zhuǎn)發(fā),而設(shè)備與網(wǎng)關(guān)連接的通道是高速CAN,當(dāng)需要刷新高速CAN上ECU時(shí),因網(wǎng)關(guān)自身處理能力及總線負(fù)載的影響,目標(biāo)ECU通道上診斷報(bào)文仲裁更易失敗,而設(shè)備通道上因沒(méi)有應(yīng)用報(bào)文,診斷報(bào)文仲裁成功,如果網(wǎng)關(guān)缺乏緩存能力,數(shù)據(jù)更容易丟失。當(dāng)需要刷新低速CAN上ECU時(shí),因設(shè)備通道上已是滿負(fù)荷,則低速CAN上必定超負(fù)荷運(yùn)行,必然會(huì)導(dǎo)致丟幀。有鑒于此,為了解決這個(gè)問(wèn)題,請(qǐng)參照?qǐng)D2所示,本發(fā)明提供一種汽車(chē)軟件刷新控制方法,包括:步驟S1,網(wǎng)關(guān)將刷新設(shè)備發(fā)送的刷新報(bào)文轉(zhuǎn)發(fā)至目標(biāo)電子控制單元;步驟S2,當(dāng)目標(biāo)電子控制單元判斷所述刷新報(bào)文為首幀時(shí),網(wǎng)關(guān)接收由所述目標(biāo)電子控制單元發(fā)送的攜帶有可接收的最小的連續(xù)幀時(shí)間間隔以及可一次性接收的連續(xù)幀的數(shù)量的流控制幀;步驟S3,當(dāng)網(wǎng)關(guān)識(shí)別出所述流控制幀中攜帶的所述目標(biāo)ECU可接收的最小的連續(xù)幀時(shí)間間隔小于設(shè)定閾值時(shí),將所述目標(biāo)ECU可接收的最小的連續(xù)幀時(shí)間間隔修改為所述設(shè)定閾值,并轉(zhuǎn)發(fā)至刷新設(shè)備;步驟S4,網(wǎng)關(guān)接收所述刷新設(shè)備按照所述設(shè)定閾值發(fā)送的連續(xù)幀,并轉(zhuǎn)發(fā)至所述目標(biāo)電子控制單元。設(shè)定閾值的具體取值,既要考慮保證刷新速度,又要考慮緩解負(fù)載率,一般在2毫秒-4毫秒之間。舉例來(lái)說(shuō),當(dāng)網(wǎng)關(guān)識(shí)別出目標(biāo)ECU回復(fù)流控制幀的STmin為0時(shí),網(wǎng)關(guān)將STmin統(tǒng)一修改為2毫秒,然后將修改了STmin的流控制幀轉(zhuǎn)發(fā)至刷新設(shè)備,刷新設(shè)備則以2毫秒作為發(fā)送的連續(xù)幀之間的時(shí)間間隔。這樣不僅緩解了高速CAN上的負(fù)載率,降低了丟幀的概率,也避免了由高速轉(zhuǎn)低速時(shí)總線負(fù)載率增加而導(dǎo)致低速超負(fù)荷運(yùn)行的情況。需要說(shuō)明的是,目標(biāo)電子控制單元發(fā)送的攜帶有可接收的最小的連續(xù)幀時(shí)間間隔STmin由ECU根據(jù)自身工作情況及處理能力決定,如果STmin超過(guò)設(shè)定閾值,例如5毫秒,表明該ECU當(dāng)前處理能力只能是以5毫秒間隔接收連續(xù)幀,此時(shí)不能將其修改為2毫秒,否則同樣會(huì)造成丟幀。只有在ECU反饋其可接受比設(shè)定閾值更短的時(shí)間間隔來(lái)接收連續(xù)幀時(shí),通過(guò)網(wǎng)關(guān)將該時(shí)間間隔“拉長(zhǎng)”,使得原本可以連續(xù)接收連續(xù)幀(STmin=0)變?yōu)槊扛?毫秒接收連續(xù)幀(STmin=2毫秒),減少單位時(shí)間內(nèi)在總線上傳輸?shù)膱?bào)文數(shù)量,從而降低總線負(fù)載率。本發(fā)明尤其適用于配置有獨(dú)立網(wǎng)關(guān)的車(chē)型。在現(xiàn)有技術(shù)中,并未考慮通過(guò)修改流控制幀中STmin參數(shù)來(lái)降低總線負(fù)載率,而為了盡快完成刷新,總是嚴(yán)格按照ECU回復(fù)的STmin來(lái)發(fā)送連續(xù)幀。本發(fā)明雖然一定程度上延長(zhǎng)了該時(shí)間間隔,但總體刷新速度并未受到較大影響,在降低總線負(fù)載率和保證刷新速度之間達(dá)成了平衡。通過(guò)上述說(shuō)明可知,本發(fā)明通過(guò)網(wǎng)關(guān)修改流控制幀中的參數(shù),可智能克服不同波特率通道之間數(shù)據(jù)轉(zhuǎn)發(fā)對(duì)總線負(fù)載率的影響,解決了整車(chē)所有ECU面臨的負(fù)載率的問(wèn)題,降低了總線負(fù)載率。并且,對(duì)于網(wǎng)關(guān)的修改成本也較低?;诒景l(fā)明實(shí)施例一,本發(fā)明實(shí)施例二提供一種汽車(chē)軟件刷新控制系統(tǒng),包括:刷新設(shè)備、網(wǎng)關(guān)、目標(biāo)電子控制單元;其中,所述網(wǎng)關(guān)將所述刷新設(shè)備發(fā)送的刷新報(bào)文轉(zhuǎn)發(fā)至所述目標(biāo)電子控制單元,并接收由所述目標(biāo)電子控制單元發(fā)送的攜帶有可接收的最小的連續(xù)幀時(shí)間間隔以及可一次性接收的連續(xù)幀的數(shù)量的流控制幀,在識(shí)別出所述流控制幀中攜帶的所述目標(biāo)電子控制單元可接收的最小的連續(xù)幀時(shí)間間隔小于設(shè)定閾值時(shí),將所述目標(biāo)電子控制單元可接收的最小的連續(xù)幀時(shí)間間隔修改為所述設(shè)定閾值,并轉(zhuǎn)發(fā)至所述刷新設(shè)備,以及接收所述刷新設(shè)備按照所述設(shè)定閾值發(fā)送的連續(xù)幀,并轉(zhuǎn)發(fā)至所述目標(biāo)電子控制單元。其中,所述設(shè)定閾值的取值范圍為2毫秒-4毫秒。其中,所述網(wǎng)關(guān)還用于在識(shí)別出所述流控制幀中攜帶的所述目標(biāo)電子控制單元可接收的最小的連續(xù)幀時(shí)間間隔大于或等于所述設(shè)定閾值時(shí),直接將所述流控制幀中攜帶的所述目標(biāo)電子控制單元可接收的最小的連續(xù)幀時(shí)間間隔轉(zhuǎn)發(fā)至刷新設(shè)備?;诒景l(fā)明實(shí)施例一,本發(fā)明實(shí)施例三提供一種用于汽車(chē)軟件刷新的網(wǎng)關(guān),所述網(wǎng)關(guān)用于將刷新設(shè)備發(fā)送的刷新報(bào)文轉(zhuǎn)發(fā)至目標(biāo)電子控制單元,并接收由所述目標(biāo)電子控制單元發(fā)送的攜帶有可接收的最小的連續(xù)幀時(shí)間間隔以及可一次性接收的連續(xù)幀的數(shù)量的流控制幀,還用于在識(shí)別出所述流控制幀中攜帶的所述目標(biāo)ECU可接收的最小的連續(xù)幀時(shí)間間隔小于設(shè)定閾值時(shí),將所述目標(biāo)ECU可接收的最小的連續(xù)幀時(shí)間間隔修改為所述設(shè)定閾值,并轉(zhuǎn)發(fā)至刷新設(shè)備,以及接收所述刷新設(shè)備按照所述設(shè)定閾值發(fā)送的連續(xù)幀,并轉(zhuǎn)發(fā)至所述目標(biāo)電子控制單元。其中,所述設(shè)定閾值的取值范圍為2毫秒-4毫秒。其中,所述網(wǎng)關(guān)還用于在識(shí)別出所述流控制幀中攜帶的所述目標(biāo)電子控制單元可接收的最小的連續(xù)幀時(shí)間間隔大于或等于所述設(shè)定閾值時(shí),直接將所述流控制幀中攜帶的所述目標(biāo)電子控制單元可接收的最小的連續(xù)幀時(shí)間間隔轉(zhuǎn)發(fā)至刷新設(shè)備。有關(guān)本實(shí)施例的工作原理以及所帶來(lái)的有益效果請(qǐng)參照本發(fā)明實(shí)施例一的說(shuō)明,此處不再贅述。以上所揭露的僅為本發(fā)明較佳實(shí)施例而已,當(dāng)然不能以此來(lái)限定本發(fā)明之權(quán)利范圍,因此依本發(fā)明權(quán)利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。當(dāng)前第1頁(yè)1 2 3