日本无码免费高清在线|成人日本在线观看高清|A级片免费视频操逼欧美|全裸美女搞黄色大片网站|免费成人a片视频|久久无码福利成人激情久久|国产视频一二国产在线v|av女主播在线观看|五月激情影音先锋|亚洲一区天堂av

  • 手機(jī)站
  • 小程序

    汽車測(cè)試網(wǎng)

  • 公眾號(hào)
    • 汽車測(cè)試網(wǎng)

    • 在線課堂

    • 電車測(cè)試

FlexRay通信系統(tǒng)與CAN和LIN有什么區(qū)別?

2024-06-03 10:37:09·  來源:汽車電控知識(shí)  
 

FlexRay通信系統(tǒng)是一種用于汽車的高速通信網(wǎng)絡(luò),每通道速率可達(dá)10Mb/s。


FlexRay通信采用TDMA時(shí)分多址的網(wǎng)絡(luò)訪問方式,具有容錯(cuò)功能及確定的通信消息傳輸時(shí)間,同時(shí)支持時(shí)間觸發(fā)和事件觸發(fā)通信。


FlexRay通信可用于車身、底盤、安全和ADAS應(yīng)用,它的通信特點(diǎn)也更適合下一代汽車線控系統(tǒng)或分布式控制系統(tǒng)的通訊要求,比如線控轉(zhuǎn)向和線控制動(dòng)等這些對(duì)實(shí)時(shí)性和安全性有很高要求的主動(dòng)安全系統(tǒng)。


FlexRay通信不僅僅是速度上比我們常用的CAN和LIN通信快,在通信機(jī)制上也有很大的不同。


1.網(wǎng)絡(luò)拓?fù)?


我們常用的CAN通信是總線型網(wǎng)絡(luò)拓?fù)洌負(fù)湫问胶芎?jiǎn)單,就是各個(gè)節(jié)點(diǎn)通過一對(duì)差分線直接連到CAN總線上。


圖片

CAN網(wǎng)絡(luò)拓?fù)?差分多主總線型


LIN通信也是總線型,但它是主從式結(jié)構(gòu),所有的子節(jié)點(diǎn)都要通過主節(jié)點(diǎn)調(diào)度,而且是單線連接。


圖片

LIN網(wǎng)絡(luò)拓?fù)?單線主從總線型


1.1FlexRay的三種拓?fù)浣Y(jié)構(gòu)


與CAN和LIN通信相比,F(xiàn)lexRay的網(wǎng)絡(luò)拓?fù)渚捅容^復(fù)雜了。首先,它不只1種,而是有3種拓?fù)浣Y(jié)構(gòu):總線型(Bus)、星型(Star)和混合型(Hybrid)。


總線型網(wǎng)絡(luò)拓?fù)渑cCAN通信基本一樣,也是采用差分信號(hào)傳輸,兩根線稱為BP和BM,即總線正和總線負(fù),兩根線組成一個(gè)通道Channel。


圖片

FlexRay網(wǎng)絡(luò)拓?fù)渲?總線型


星型拓?fù)鋾?huì)有一個(gè)中心節(jié)點(diǎn),稱為星型耦合器(star coupler),星型耦合器負(fù)責(zé)轉(zhuǎn)發(fā)通信數(shù)據(jù)。


圖片

FlexRay網(wǎng)絡(luò)拓?fù)渲?星型


(注:為了便于查看, 上圖及后續(xù)的FlexRay圖形都用1根總線來表示差分信號(hào))


上圖中的星型拓?fù)涞慕Y(jié)構(gòu)與LIN的拓?fù)溆悬c(diǎn)相似,但實(shí)際上是不同的,LIN仍然是總線型,不是星型。而且FlexRay的星型拓?fù)渲羞€可以有2個(gè)中心節(jié)點(diǎn),LIN只能有1個(gè)主節(jié)點(diǎn)。


混合型網(wǎng)絡(luò)拓?fù)渚褪强偩€型與星型間不同的組合。



圖片

FlexRay網(wǎng)絡(luò)拓?fù)渲?混合型


上圖中的節(jié)點(diǎn)A、B和Star組成星型拓?fù)?,?jié)點(diǎn)C、D、E和F是總線型拓?fù)洌偩€型與星型間的節(jié)點(diǎn)可以通過中心節(jié)點(diǎn)Star進(jìn)行通信。


1.2FlexRay的兩個(gè)通道


FlexRay通信除了上面的三種類型外,每一種類型還有單通道(SingleChannel)和雙通道(DualChannel)之分,雙通道分別稱為通道A和通道B。


在同一個(gè)網(wǎng)絡(luò)中,允許節(jié)點(diǎn)連接不同的通道,即每個(gè)節(jié)點(diǎn)可以只連接1個(gè)通道,也可以同時(shí)連接兩個(gè)通道。


圖片

雙通道總線型拓?fù)?


如上圖所示,其中的A、C、E節(jié)點(diǎn)同時(shí)連接了通道A和通道B。D節(jié)點(diǎn)只連接了通道A,B節(jié)點(diǎn)只連接了通道B。


此外,在星型結(jié)構(gòu)中,還存在級(jí)聯(lián)拓?fù)浜投嘈峭負(fù)洹<?jí)聯(lián)拓?fù)渲胁荒苡谐^2個(gè)星型耦合器。


圖片

單通道級(jí)聯(lián)星型拓?fù)?


如上圖所示,每個(gè)節(jié)點(diǎn)單獨(dú)連接到1個(gè)星型耦合器,兩個(gè)星型耦合器直接相連。


多星拓?fù)淇梢灾С秩哂嗤ㄐ磐ǖ溃總€(gè)網(wǎng)絡(luò)通道不能存在閉環(huán),且每個(gè)通道不能有超過2個(gè)星型耦合器。


圖片

雙通道單冗余星型網(wǎng)絡(luò)拓?fù)?


如上圖所示,每個(gè)通道只連了1個(gè)星型耦合器。通道A連接到了Star1A,通道B連接到了Star1B。


圖片

雙通道級(jí)聯(lián)星型拓?fù)?


如上圖所示,每個(gè)通道(通道A或通道B)都連接了2個(gè)星型耦合器。


混合型拓?fù)涓鶕?jù)總線型、星型和不同的通道組合,可以有很多種具體的拓?fù)浣Y(jié)構(gòu),我們現(xiàn)列舉一個(gè)有代表性的混合型拓?fù)洹?


圖片

單通道混合拓?fù)?


如上圖所示,節(jié)點(diǎn)A、B、C、D通過點(diǎn)對(duì)點(diǎn)的方式連接到星型耦合器Star1A和Star2A,節(jié)點(diǎn)E、F、G通過總線拓?fù)浠ハ噙B接,總線拓?fù)渫瑫r(shí)又連接到星型耦合器star2A,這樣E、F、G就可以通過Star2A與其他節(jié)點(diǎn)通信。


還有一種混合拓?fù)漕愋褪遣煌耐負(fù)涫褂貌煌耐ǖ馈?


圖片

雙通道混合拓?fù)?


如上圖所示,通道A作為總線拓?fù)溥B接,通道B作為星型拓?fù)溥B接。


FlexRay的這種雙通道架構(gòu)看起來有點(diǎn)冗余,但是雙通道架構(gòu)也恰好可以滿足高級(jí)安全系統(tǒng)的冗余要求。通過雙通道傳輸相同的數(shù)據(jù)時(shí),當(dāng)其中某個(gè)通道出現(xiàn)故障或信息有誤時(shí),另一通道可繼續(xù)正常傳輸,通過這種冗余備份實(shí)現(xiàn)很好的安全性和容錯(cuò)性。


當(dāng)然這種結(jié)構(gòu)也有一個(gè)缺點(diǎn),就是當(dāng)中心節(jié)點(diǎn)損壞時(shí),整個(gè)網(wǎng)絡(luò)便無法工作。


2.物理接口


FlexRay的物理層接口與CAN類似,也是通過收發(fā)器連接的。不同的是,CAN總線只有一路,也就是1個(gè)通道。而FlexRay最多可以有2個(gè)通道。


每個(gè)FlexRay節(jié)點(diǎn)通過一個(gè)控制器FlexRay Controller和兩個(gè)收發(fā)器FlexRay Transceivers與總線相連,控制器負(fù)責(zé)FlexRay協(xié)議中的數(shù)據(jù)鏈路層,收發(fā)器則負(fù)責(zé)總線物理信號(hào)的接收和發(fā)送。


圖片

FlexRay的硬件結(jié)構(gòu)圖


Host主機(jī)向控制器發(fā)出控制、配置信息和有效負(fù)載數(shù)據(jù),控制器向主機(jī)Host反饋狀態(tài)信息和通信幀上接收的有效負(fù)載數(shù)據(jù)。


FlexRay可采用屏蔽或不屏蔽的雙絞線,每個(gè)通道有兩根導(dǎo)線,即總線正BP和總線負(fù)BM組成。每一通道需使用80~110歐的終端電阻。


這里要注意的是,F(xiàn)lexRay的節(jié)點(diǎn)收發(fā)器與星型耦合器的收發(fā)器型號(hào)是不同的。


3.TDMA時(shí)分多址


FlexRay是一種時(shí)間觸發(fā)式的通信系統(tǒng),符合TDMA(Time Division MultipleAccess)的原則。


所謂的時(shí)間觸發(fā)就是將一個(gè)周期的時(shí)間分成多個(gè)時(shí)隙slot,每個(gè)時(shí)隙都會(huì)安排給事先定義好的報(bào)文信息,這樣每個(gè)報(bào)文就一定會(huì)被發(fā)送,無論系統(tǒng)外部發(fā)生什么情況,都不會(huì)影響預(yù)定報(bào)文的發(fā)送,這就是報(bào)文發(fā)送的確定性!


FlexRay總線的通訊由通訊周期Communication Cycle構(gòu)成,從總線啟動(dòng)到停止都在不斷重復(fù)該通訊周期。每個(gè)通訊周期具有相同的可配置時(shí)間間隔,且每個(gè)通訊周期由靜態(tài)段(Static Segment)、動(dòng)態(tài)段(Dynamic Segment)、特征窗(Symblo Window)和網(wǎng)絡(luò)空閑時(shí)間(Network Idle Time)四部分構(gòu)成。


圖片

通信周期構(gòu)成


3.1靜態(tài)段(Static Segment)


靜態(tài)段采用TDMA(Time Division Multiple Access)方式由固定的時(shí)隙(Slot)組成,不可更改且所有時(shí)隙大小一致。


圖片

靜態(tài)段示例


如上圖所示,示例中的靜態(tài)段分為4個(gè)時(shí)隙Slot,其中第1個(gè)時(shí)隙Slot1發(fā)送節(jié)點(diǎn)A的A1報(bào)文,A1報(bào)文會(huì)同時(shí)在A、B兩個(gè)通道發(fā)送,因?yàn)锳、B兩個(gè)通道是互相獨(dú)立的,可以共用第1個(gè)時(shí)隙。


第2個(gè)時(shí)隙Slot2,發(fā)送節(jié)點(diǎn)B和C的B1、C1報(bào)文,B1在A通道,C1在B通道發(fā)送。


第3個(gè)時(shí)隙Slot3與第1個(gè)時(shí)隙Slot1發(fā)送原理類似,也是1個(gè)節(jié)點(diǎn),不同的是節(jié)點(diǎn)D的兩個(gè)通道發(fā)送的是不同的報(bào)文。


第4個(gè)時(shí)隙Slot4的發(fā)送與第2個(gè)時(shí)隙類似。


由此可知,每個(gè)節(jié)點(diǎn)可擁有一個(gè)或多個(gè)時(shí)隙Slot,每個(gè)節(jié)點(diǎn)在每個(gè)通訊周期內(nèi)都可在其所占有的Slot內(nèi)發(fā)送,兩個(gè)節(jié)點(diǎn)也可在不同的通道上共享同一Slot,單個(gè)Slot也可為空(即不被任何節(jié)點(diǎn)占用),所有的幀和Slot在靜態(tài)段都具有相同的長(zhǎng)度。


圖片

靜態(tài)段時(shí)序示意圖


如上圖所示,其中的每個(gè)靜態(tài)段的時(shí)隙Slot1-Slot3持續(xù)的時(shí)間都是相同的,其中的Slot3并未被節(jié)點(diǎn)占用,但是依然要保留這個(gè)時(shí)隙時(shí)間。


3.2動(dòng)態(tài)段(Dynamic Segment)


動(dòng)態(tài)段采用FTDMA(Flexible Time Division Multiple Access)方式,F(xiàn)TDMA也是時(shí)間觸發(fā)的方式,只是它的時(shí)隙不是固定的,可根據(jù)需要拓展變動(dòng),一般用于傳輸事件控制型消息。


圖片

動(dòng)態(tài)段示例


如上圖示例所示,其中Slot6和Slot8兩個(gè)時(shí)隙發(fā)生了事件型報(bào)文;其它時(shí)隙沒有發(fā)生事件型報(bào)文,所以Slot5、7和9中就沒有報(bào)文發(fā)送。其報(bào)文發(fā)送時(shí)序如下圖所示。


圖片

動(dòng)態(tài)段時(shí)序示意圖


從上圖可以看出,動(dòng)態(tài)段中的時(shí)隙Slot是由細(xì)分的Minislot組成,沒有發(fā)生事件報(bào)文時(shí),各個(gè)節(jié)點(diǎn)報(bào)文只占用1個(gè)Minislot,如節(jié)點(diǎn)A占用的Slot5,節(jié)點(diǎn)D的Slot7和節(jié)點(diǎn)E的Slot9都是只占用了1個(gè)Minislot的時(shí)間。


如果發(fā)生了事件報(bào)文,則會(huì)根據(jù)實(shí)際幀的長(zhǎng)度占用,比如報(bào)文C2占用了6個(gè)Minislot,報(bào)文B2占用了10個(gè)Minislot。所以動(dòng)態(tài)段中的時(shí)隙Slot不是固定的,是根據(jù)實(shí)際情況變化的。


FlexRay的時(shí)間觸發(fā)總線分配機(jī)制與CAN總線的CSMA/CA機(jī)制完全不同,CAN總線各節(jié)點(diǎn)會(huì)一直監(jiān)聽總線,發(fā)現(xiàn)總線空閑時(shí)便開始發(fā)送報(bào)文ID,能否發(fā)送成功要根據(jù)ID的優(yōu)先級(jí)來判定,如果節(jié)點(diǎn)優(yōu)先級(jí)過低,可能會(huì)導(dǎo)致長(zhǎng)時(shí)間發(fā)不出去。所以它不是確定性的,是不可預(yù)測(cè)的。


Flexray在靜態(tài)段部分使用TDMA方法,每個(gè)節(jié)點(diǎn)會(huì)均勻分配時(shí)間片,每個(gè)節(jié)點(diǎn)只有在屬于自己的時(shí)間片里面才能發(fā)送消息,即使某個(gè)節(jié)點(diǎn)當(dāng)前無消息可發(fā),該時(shí)間片依然會(huì)保留。在動(dòng)態(tài)部分使用FTDMA方法,會(huì)輪流問詢每個(gè)節(jié)點(diǎn)有沒有消息要發(fā),有就發(fā),沒有就跳過。


靜態(tài)部分用于發(fā)送需要經(jīng)常性發(fā)送的重要性高的數(shù)據(jù),動(dòng)態(tài)部分用于發(fā)送使用頻率不確定、相對(duì)不重要的數(shù)據(jù)。


與CAN總線相比,F(xiàn)lexRay的時(shí)間觸發(fā)機(jī)制更像是LIN總線的調(diào)度表機(jī)制,LIN總線中的主節(jié)點(diǎn)通過主任務(wù)控制了所有的通信時(shí)序,主任務(wù)用于決定什么時(shí)候、哪個(gè)幀將在總線上傳輸。從節(jié)點(diǎn)中的從任務(wù)用于提供每個(gè)幀中需要傳輸?shù)臄?shù)據(jù)。發(fā)生沖突時(shí)主節(jié)點(diǎn)會(huì)根據(jù)沖突解決調(diào)度表進(jìn)行協(xié)調(diào)。


圖片

LIN總線的調(diào)度表機(jī)制


這里要注意的是,F(xiàn)lexRay通信中的事件報(bào)文處理與CAN總線的事件型發(fā)送報(bào)文類型和LIN總線中的事件觸發(fā)幀都不相同。


CAN和LIN都存在沖突的現(xiàn)象,CAN需要通過ID優(yōu)先級(jí)處理,LIN需要通過主任務(wù)跳讀處理。而FlexRay并不存在沖突,動(dòng)態(tài)段中給每個(gè)可能發(fā)生事件報(bào)文的節(jié)點(diǎn)都預(yù)留了時(shí)間段,只是時(shí)間段的長(zhǎng)度不同。


雖然FLexRay的靜態(tài)段中的時(shí)隙造成了一定的總線資源浪費(fèi),但這也是它為什么具有確定性的原因。Flexray的靜態(tài)段就是時(shí)間觸發(fā)式,而動(dòng)態(tài)段就是事件觸發(fā)式通信,從而形成以時(shí)間觸發(fā)為主,兼顧事件觸發(fā)的靈活特性。


CAN總線通信就像是給狗狗們喂食,食物準(zhǔn)備好后,所有的狗按自身的能力(優(yōu)先級(jí))去搶,這種喂食方式雖然效率高,但是有可能會(huì)出現(xiàn)個(gè)別的狗長(zhǎng)時(shí)間吃不到食(報(bào)文無法發(fā)送)。


CAN總線按ID優(yōu)先級(jí)搶占總線


FlexRay的方法就是每個(gè)狗先給出一個(gè)固定的基本吃飯時(shí)間,輪到某個(gè)狗的基本時(shí)間時(shí),不管這只狗餓不餓,是不是在吃飯,其它狗都要等待,保證每只狗都有機(jī)會(huì)吃。


圖片

FlexRay按時(shí)間觸發(fā)方式先均勻分配時(shí)間


然后再每個(gè)狗詢問一遍,如果某只狗今天很餓,需要臨時(shí)加餐,再給它一個(gè)加餐時(shí)間,滿足臨時(shí)的需求。


FlexRay處理事件型報(bào)文可額外分配時(shí)間


4.幀格式


FlexRay幀由起始段(Header Segment)、有效負(fù)載段(Payload Segment)和結(jié)束段(Trailer Segment)三大部分構(gòu)成。節(jié)點(diǎn)在網(wǎng)絡(luò)中發(fā)送報(bào)文時(shí),會(huì)先發(fā)送起始段,然后是有效負(fù)載段,最后是結(jié)束段。


圖片FlexRay幀格式


4.1起始段


起始段由4個(gè)字節(jié),共40位組成。前5位屬于狀態(tài)指示位,然后依次是幀ID、負(fù)載長(zhǎng)度、CRC和循環(huán)計(jì)數(shù)。


狀態(tài)位包括:


1位的預(yù)留位reserved bit:表示當(dāng)前未使用;


1位的靜荷指示位payload preamble indicator:表示有效負(fù)載段中是否包含可選向量。0表示負(fù)載段中沒有可選向量,1表示負(fù)載段的開始部分是網(wǎng)絡(luò)管理向量(靜態(tài)段)或者報(bào)文ID(動(dòng)態(tài)段);


1位的空幀指示位Null frameIndicator:表示當(dāng)前幀是否為空幀,0表示負(fù)載段中沒有有效數(shù)據(jù),即空幀,此時(shí)靜荷指示位也是0;1表示負(fù)載段中包含數(shù)據(jù),空幀可用于時(shí)鐘同步算法;


1位的同步幀指示位Sync frame indicator:表示當(dāng)前幀是否為同步幀,為1時(shí),所有的接收節(jié)點(diǎn)都將此幀作為同步使用,同步幀用于系統(tǒng)范圍的通信同步;


1位的啟動(dòng)幀指示位Startup frame indicator:表示當(dāng)前幀是否為啟動(dòng)幀,為1時(shí)表示啟動(dòng)幀,只有冷啟動(dòng)節(jié)點(diǎn)coldstart nodes才能發(fā)送啟動(dòng)幀;


11位的幀ID:一個(gè)網(wǎng)絡(luò)中每個(gè)可能被發(fā)送的幀都要定義1個(gè)幀ID,作為將在時(shí)隙Slot中被發(fā)送的幀的唯一標(biāo)識(shí)。在1個(gè)通信周期中的每個(gè)通道中,1個(gè)幀ID被使用的次數(shù)不能超過1次。幀ID的有效范圍為1-2047,0是無效的ID;


7位的負(fù)載長(zhǎng)度Payload Length:表示該幀含有的有效負(fù)載段中的數(shù)據(jù)長(zhǎng)度,在每個(gè)周期中的靜態(tài)段中,每幀的數(shù)據(jù)長(zhǎng)度是相同的,在動(dòng)態(tài)段中的長(zhǎng)度則是不同的,而且動(dòng)態(tài)區(qū)中,每個(gè)周期可以不同,每個(gè)通道也可以不同;


這里要注意的是,負(fù)載長(zhǎng)度值表示實(shí)際數(shù)據(jù)字節(jié)數(shù)的一半,比如當(dāng)實(shí)際數(shù)據(jù)是72個(gè)字節(jié)時(shí),負(fù)載長(zhǎng)度參數(shù)應(yīng)設(shè)置為36?;蛘哒f負(fù)載長(zhǎng)度值表示的是2字節(jié)的字word??傊?,實(shí)際數(shù)據(jù)字節(jié)數(shù)=負(fù)載長(zhǎng)度值*2;


11位的起始校驗(yàn)Header CRC:用于起始段冗余校驗(yàn),檢查傳輸中的錯(cuò)誤;


6位的循環(huán)計(jì)數(shù)器Cycle count:發(fā)送節(jié)點(diǎn)發(fā)出的循環(huán)計(jì)數(shù)值,數(shù)值范圍是0-63。


4.2有效負(fù)載段


有效負(fù)載段payload segment包含要傳輸?shù)挠行?shù)據(jù),有效數(shù)據(jù)長(zhǎng)度最大254個(gè)Bytes(0~127個(gè)Words),


在動(dòng)態(tài)段中,前兩個(gè)字節(jié)0-1字節(jié)可選擇作為報(bào)文Message的ID使用,前面介紹的起始段中的靜荷指示位payload preamble indicator就是用于表示負(fù)載段中是否包含報(bào)文ID。


注意這里的16位報(bào)文ID與前面的11位幀ID不同,這里的報(bào)文ID是由應(yīng)用層使用的,是根據(jù)具體的應(yīng)用功能定義的。而幀ID是在底層通信協(xié)議中確定的。


在靜態(tài)段中,第0-12字節(jié)可以用作網(wǎng)絡(luò)管理向量,也是通過靜荷指示位payload preamble indicator表示。


這里要注意的是,由于負(fù)載長(zhǎng)度PayloadLength表示的是2字節(jié)的字word,所以有效數(shù)據(jù)必須要發(fā)送偶數(shù)個(gè)字節(jié)的數(shù)據(jù),否則無法用負(fù)載長(zhǎng)度表示。


4.3結(jié)束段


結(jié)束段包含24Bits的檢驗(yàn)域,由起始段和有效負(fù)載段計(jì)算得出的CRC校驗(yàn)碼,計(jì)算CRC時(shí),根據(jù)網(wǎng)絡(luò)傳輸順序從保留位到有效負(fù)載段的最后一位放到CRC生成器中進(jìn)行計(jì)算。


小結(jié):


FlexRay通信的網(wǎng)絡(luò)拓?fù)湫问蕉鄻?,包括總線型、星型、混合型,每種類型還包括單通道和多通道兩種方式,相較于CAN通信的總線型架構(gòu)要復(fù)雜許多,當(dāng)然安全性也相對(duì)較高。


FlexRay和CAN或LIN總線最本質(zhì)的區(qū)別是總線分配的方式不同。CAN總線是采用CSMA/CA機(jī)制,每個(gè)節(jié)點(diǎn)根據(jù)ID優(yōu)先級(jí)搶占總線;LIN總線是主從節(jié)點(diǎn)的調(diào)度表方式;而Flexray用的是靈活的TDMA/FTDMA機(jī)制,每個(gè)節(jié)點(diǎn)既可以根據(jù)調(diào)度表均勻分配時(shí)間,又可以兼顧事件型報(bào)文的發(fā)送。


FlexRay的兩個(gè)通道如果平行傳輸數(shù)據(jù)(兩個(gè)通道傳輸不同的數(shù)據(jù)),速率可達(dá)20Mb/s;在安全應(yīng)用中大多采用冗余通信(兩個(gè)通道傳輸相同的數(shù)據(jù))。


Flexray通信協(xié)議具有實(shí)時(shí)性、確定性和安全性的特點(diǎn),其設(shè)計(jì)難度較大,對(duì)開發(fā)能力要求較高,使用成本也會(huì)高一些。

分享到:
 
反對(duì) 0 舉報(bào) 0 收藏 0 評(píng)論 0
滬ICP備11026917號(hào)-25