對(duì)TTCAN的分析
關(guān)鍵詞 CAN TTCAN 時(shí)間觸發(fā)協(xié)議 誤碼率
2002年左右國(guó)外推出的TTCAN是一種時(shí)間觸發(fā)的通信協(xié)議,在我國(guó)電動(dòng)汽車“863”攻關(guān)項(xiàng)目及地方的科研項(xiàng)目中有許多嘗試,目的是判斷它能否成為新一代汽車的通信骨干網(wǎng)絡(luò)。在研制中,它們一般規(guī)模較小,總線負(fù)載較輕,試驗(yàn)環(huán)境并不十分惡劣,對(duì)誤碼造成的丟幀不容易發(fā)現(xiàn),且未經(jīng)長(zhǎng)期考驗(yàn),所以沒(méi)有發(fā)現(xiàn)什么問(wèn)題;但對(duì)于大量生產(chǎn)的汽車,必須全面認(rèn)識(shí)TTCAN的優(yōu)劣,以及汽車控制用總線的技術(shù)走向,才能避免采用新技術(shù)帶來(lái)的技術(shù)與經(jīng)濟(jì)風(fēng)險(xiǎn)。本文試圖從可靠性與經(jīng)濟(jì)性角度對(duì)TTCAN作些分析,供大家決策時(shí)參考。
1 TTCAN興起的推動(dòng)力量
TTCAN是在CAN的基礎(chǔ)上發(fā)展起來(lái)的一種高層協(xié)議,它的出現(xiàn)是為解決CAN應(yīng)用中遇到的瓶頸而作的一種試探。
現(xiàn)在,TTCAN已被采納為國(guó)際標(biāo)準(zhǔn)ISO118984;但在工業(yè)上也只是試驗(yàn)性的應(yīng)用,沒(méi)有見(jiàn)到大規(guī)模的采用。雖然如此,對(duì)它興起的原因進(jìn)行分析仍然會(huì)對(duì)我們有很大的啟發(fā),正是這些需求構(gòu)成了評(píng)價(jià)一種新技術(shù)優(yōu)劣的依據(jù)。CAN是最成功的一種現(xiàn)場(chǎng)總線,在今天依然是應(yīng)用的主力,經(jīng)過(guò)近20年的實(shí)踐,對(duì)它的局限也有了較多的認(rèn)識(shí)[1]。這里不重復(fù)其中總結(jié)的內(nèi)容,僅從應(yīng)用的角度來(lái)說(shuō)明CAN所面臨的問(wèn)題。
1.1 為滿足時(shí)限要求不得不降低總線利用率
CAN是事件觸發(fā)協(xié)議,當(dāng)許多消息同時(shí)要求發(fā)送時(shí),競(jìng)爭(zhēng)結(jié)果使低優(yōu)先級(jí)消息發(fā)送的時(shí)間推后很多,甚至不能滿足其時(shí)限的要求。
現(xiàn)以一個(gè)SAE benchmark為例[1]。該例有5條5 ms周期的消息,其幀長(zhǎng)含1B、2B、1B、2B和4B數(shù)據(jù),其余為50、100和1 000 ms的消息。在參考文獻(xiàn)[1]中,消息可能的最大長(zhǎng)度計(jì)算小了,但即便這樣,對(duì)于5 ms周期的消息在125、250、500 kbps和1 Mbps的總線速率下,最大響應(yīng)時(shí)間為4.456、2.228、1.114、0.557 ms。由于這些消息都置于較高優(yōu)先級(jí),它們只可能被一個(gè)低優(yōu)先級(jí)4B數(shù)據(jù)消息阻斷1次。我們可以只算這幾條消息而估計(jì)相應(yīng)總線的通信負(fù)載為75 kbps,對(duì)應(yīng)的總線利用率為60%、30%、15%和7.5%。
現(xiàn)在看看最大響應(yīng)時(shí)間對(duì)于應(yīng)用意味著什么:一個(gè)閉環(huán)控制系統(tǒng)以5 ms為采樣控制周期,在最壞響應(yīng)時(shí)間為4.456 ms時(shí),執(zhí)行器產(chǎn)生的反饋控制效果在下一次采樣前維持的時(shí)間最壞為5-4.456=0.55 ms,最長(zhǎng)為5 ms。顯然在這種變動(dòng)巨大的情況下,控制參數(shù)只能取得比較保守,例如微分和積分增益不能太強(qiáng)。這就極大地限制了控制品質(zhì)的提高。有些控制算法對(duì)這種純遲后的變化更為敏感,例如smith預(yù)估,因此為了保證品質(zhì),只能取較低的總線利用率。對(duì)于以品質(zhì)為第一的整車廠,這是唯一的選擇,而取較低的總線利用率意味著成本的提高。
1.2 汽車廠是對(duì)成本非常敏感的企業(yè)
如果總線利用率只有20%~30%,隨著安全、節(jié)能與舒適性要求的提高,要增加更多消息而不希望增加成本。1條總線不夠,在技術(shù)上可再加,或者是連接2個(gè)ECU的專用總線,或者是連多個(gè)ECU的附加總線。要在2條CAN總線中加網(wǎng)橋,不要說(shuō)復(fù)雜性的增加,成本的增加就很大。以一個(gè)網(wǎng)橋200元算,年產(chǎn)20萬(wàn)臺(tái)車的廠家要增加4 000萬(wàn)元成本。如果把總線利用率提高到60%,這錢就省下來(lái)了。
1.3 CAN的開(kāi)發(fā)與應(yīng)用成本較高
為了使低優(yōu)先級(jí)消息發(fā)送時(shí)間減少,不得不修改消息的優(yōu)先級(jí)分配,這種變化增加了維修、管理的成本。由于系統(tǒng)中消息量與種類的變化,消息的送達(dá)時(shí)間會(huì)變化,又增加了認(rèn)證和驗(yàn)證的工作量和成本。在開(kāi)發(fā)新功能方面,也受到消息優(yōu)先級(jí)設(shè)置上的相互影響,不易單獨(dú)推進(jìn)。
1.4 CAN達(dá)不到線控技術(shù)的要求
線控技術(shù)可能簡(jiǎn)化汽車的結(jié)構(gòu)、降低成本、提高控制能力,是一個(gè)重要發(fā)展的方向。但要達(dá)到與原來(lái)機(jī)械—液壓系統(tǒng)同樣的可靠性,需要通信系統(tǒng)有更高的確定性與冗余度。CAN達(dá)不到這一確定性要求,所以要改進(jìn)。當(dāng)然,新的協(xié)議不能在性能上比CAN還差。
通過(guò)時(shí)間觸發(fā)協(xié)議,使消息在調(diào)度好的時(shí)間片內(nèi)發(fā)送,可以消除總線的爭(zhēng)用,消息傳送的確定性得到了保證,總線的利用率也得到了提高。由于一部分消息不具有周期性質(zhì),需要提供合理的帶寬與時(shí)隙分布。TTCAN就在這種背景下出現(xiàn)了。幾乎同時(shí)出現(xiàn)的還有其他時(shí)間觸發(fā)協(xié)議,早一點(diǎn)的有TTP/C,晚一點(diǎn)的有FTTCAN、FlexRay等。它們都是在特定時(shí)隙指定周期性消息或事件消息的傳送,細(xì)節(jié)上雖有區(qū)別,但沒(méi)有根本的區(qū)別。與其他協(xié)議比較,TTCAN的優(yōu)點(diǎn)是它用現(xiàn)有的CAN芯片就可以實(shí)現(xiàn),因此價(jià)格便宜。這些經(jīng)濟(jì)上的考慮是TTCAN出現(xiàn)的直接推動(dòng)力量。
2 TTCAN的簡(jiǎn)要內(nèi)容
參考文獻(xiàn)[2]有TTCAN的詳細(xì)介紹。它的作者是TTCAN技術(shù)專利發(fā)明人、標(biāo)準(zhǔn)起草人。這里僅將它的幾個(gè)要點(diǎn)摘出:
?、?TTCAN用System Matrix組織時(shí)間片。它相當(dāng)于一個(gè)大周期,一個(gè)System Matrix里又分為2n個(gè)Cycle。在每個(gè)Cycle開(kāi)始處,由時(shí)間上的Master節(jié)點(diǎn)發(fā)Reference消息,時(shí)間上的從節(jié)點(diǎn)對(duì)Reference進(jìn)行同步,這樣就建立了全局時(shí)鐘。
?、?Cycle里可以劃分為若干長(zhǎng)度不同的Slot(時(shí)隙),但每個(gè)Cycle的Slot劃分是一樣的。
?、?Slot的用途有3種:Exclusive Window(獨(dú)占窗)、Arbitration Window(仲裁窗)和 Free Window(空窗)。Exclusive Window用于周期性消息發(fā)送,Arbitration Window用于事件消息的爭(zhēng)用,F(xiàn)ree Window用來(lái)備用。
?、?禁止消息跨窗口的發(fā)送,只有相連續(xù)的Arbitration Window除外。為此,禁止CAN的出錯(cuò)自動(dòng)重發(fā)功能。在Arbitration Window內(nèi)爭(zhēng)用的消息要先判斷能否發(fā)完,如能發(fā)完,才可參加爭(zhēng)用。
?、?Slot用途的指定是由調(diào)度器來(lái)實(shí)現(xiàn)的,它不是標(biāo)準(zhǔn)的內(nèi)容,然而事件消息在Arbitration Window的爭(zhēng)用并不是嚴(yán)格意義上的隨到隨爭(zhēng)用。按參考文獻(xiàn)[2]的想法,事件消息是偶發(fā)消息,應(yīng)用程序可以預(yù)先安排幾個(gè)偶發(fā)消息到一個(gè)Arbitration Window,再任它們爭(zhēng)用。
?、?在一個(gè)Cycle里,Slot的用途不受約束。
3 TTCAN的缺點(diǎn)與問(wèn)題
(1) TTCAN與CAN是不兼容的
TTCAN要求獨(dú)占窗,因此它不能和CAN混合使用在一個(gè)系統(tǒng)中。帶CAN通信口的ECU不受TTCAN的約束,可在任意時(shí)刻發(fā)送,就有可能在總線空閑時(shí)爭(zhēng)得發(fā)送權(quán),使TTCAN的調(diào)度發(fā)送完全失效。汽車廠在采用TTCAN時(shí)必須將所有要用到的ECU都改為用TTCAN的方式,這就要重新認(rèn)證和驗(yàn)證所有的ECU,涉及大的工作量和投資。如果用網(wǎng)關(guān)將CAN的ECU過(guò)渡到TTCAN網(wǎng),其成本的增加更大,只具有實(shí)驗(yàn)意義。
電焊機(jī)相關(guān)文章:電焊機(jī)原理
評(píng)論