CAN總線通信控制協(xié)議的仿真與性能分析
所以,吞吐量的計算公式為:
平均信息時延的計算公式為:
式中i表示節(jié)點編號(I=1~16)。
通信沖突率的計算公式為:
網(wǎng)絡(luò)利用率的計算公式為:
網(wǎng)絡(luò)效率的計算公式為:
負載完成率的計算公式為:
式中i表示節(jié)點編號(1~16)。
經(jīng)過運行仿真模型,得到系統(tǒng)在負載分別為16%、33%、50%、81.5%、100%、125%、150%、175%、200%、230%、250%、280%、310%時的一系列仿真結(jié)果。
依據(jù)公式(1)-(6),我們分析了負載率從0.02到3.1的情況下,CAN總線通信系統(tǒng)中負載率的變化對網(wǎng)絡(luò)吞吐量、平均信息時延、通信沖突率、網(wǎng)絡(luò)利用率、網(wǎng)絡(luò)效率以及負載完成率的影響。結(jié)果如圖3-8中所示。
圖3-8的變化趨勢都是由CAN總線通信控制協(xié)議決定的,即總線空閑時,任一節(jié)點都有發(fā)起通信的權(quán)力,當多個節(jié)點同時發(fā)送產(chǎn)生沖突時,采用非破壞性位仲裁機制,低優(yōu)先級節(jié)點停止發(fā)送,高優(yōu)先級節(jié)點不受影響繼續(xù)發(fā)送,從而可以避免總線沖突。
圖3中,由于當負載率較低時,低優(yōu)先級的信息可以競爭到總線權(quán)得以發(fā)送,隨著負載率的增加,網(wǎng)絡(luò)利用率提高,所以,吞吐量也隨之增加,當負載率增加到一定程度時,只有高優(yōu)先級的信息得以發(fā)送,此時吞吐量趨于飽和。
圖3吞吐量與負載率的關(guān)系
圖4中,由于隨著負載率的增加,信道主要用來發(fā)送高優(yōu)先級的信息,而低優(yōu)先級的信息卻被長時間延遲甚至造成數(shù)據(jù)丟失,所以平均信息時延隨著負載率的增加幾乎呈線性增加。
圖4平均信息時延與負載率的關(guān)系
圖5中,由于隨著負載率增加,吞吐量增加,即單位時間內(nèi)需要處理的信息量增加,信息發(fā)生沖突的機會也增加。而且隨著負載率的增加,當吞吐量增加到趨于飽和后,信息發(fā)生沖突的機會也增加的較為緩和,即通信吞吐率增加的較為緩和。
圖5通信沖突率與負載率的關(guān)系
圖6中,由于隨著負載率增加,吞吐量隨之增加,則單位時間內(nèi)需要處理的信息量增加,從而使得通道的利用率增加。同時,通道由忙碌到空閑 狀態(tài)所用的幀間隔時間也增加,使得通道不可能連續(xù)不斷地傳輸信號,這樣隨著吞吐量增加并趨于飽和時,網(wǎng)絡(luò)利用率也隨之增加并趨于1,但不會達到1。
圖6網(wǎng)絡(luò)利用率與負載率的關(guān)系
圖7中,由于隨著負載率的而增加,吞吐量增加,而通道處于忙碌狀態(tài)的總時間也在增加,并且在吞吐量達到飽和時,通道處于忙碌狀態(tài)的時間也趨于穩(wěn)定,所以,單位時間內(nèi)通道成功傳送的信息與通道發(fā)送信息的時間比率幾乎不隨著負載率變化而變化,基本在一個恒值附近微小變化。
圖7網(wǎng)絡(luò)效率與負載率的關(guān)系
圖8中,由于在負載率較低時,各優(yōu)先級的信息都可以競爭到總線權(quán)得以發(fā)送,所有節(jié)點成功向總線上發(fā)送的數(shù)據(jù)幀的個數(shù)與請求發(fā)送的數(shù)據(jù)幀的個數(shù)相等或相差很小,但是隨著負載率的增加,低優(yōu)先級信息得不到發(fā)送,只有高優(yōu)先級信息才得以發(fā)送,導致所有節(jié)點成功向總線上發(fā)送的數(shù)據(jù)幀的個數(shù)遠小于請求發(fā)送的數(shù)據(jù)幀的個數(shù)。所以,負載完成率隨著負載率的增加而減小,并且在負載較小時,負載完成率很大,幾乎接近于1。
圖8負載完成率與負載率的關(guān)系
總之,以上分析結(jié)果驗證了CAN總線通信控制協(xié)議的特點。
4結(jié)束語
運用MATLAB軟件中Stateflow工具箱來對CAN總線通信系統(tǒng)建模仿真切實可行,是現(xiàn)場總線協(xié)議分析與研究的又一途徑。仿真模型能夠完全描述協(xié)議的復雜邏輯關(guān)系,而且形象直觀貼近實際系統(tǒng),易于理解,也便于修改調(diào)試。
評論