一種CAN總線光纖傳輸接口設(shè)計(jì)
引言
本文引用地址:http://m.butianyuan.cn/article/188715.htm作為一種成熟的現(xiàn)場總線技術(shù),CAN(ControllerAreaNetwork)總線在汽車、電力、機(jī)械、化工等工業(yè)控制領(lǐng)域得到了極為廣泛的應(yīng)用。CAN協(xié)議標(biāo)準(zhǔn)中規(guī)定了CAN總線支持的兩種傳輸介質(zhì)――雙絞線和光纖。目前,絕大多數(shù)CAN總線系統(tǒng)采用的都是雙絞線傳輸。光纖一般應(yīng)用于大容量、高速率的傳輸中,對(duì)于CAN總線這種傳輸速率較低、數(shù)據(jù)量較小的現(xiàn)場總線通信,光纖傳輸的優(yōu)勢(shì)得不到完全發(fā)揮,因此光纖傳輸的應(yīng)用還不多。國內(nèi)外多家研究機(jī)構(gòu)也都進(jìn)行了CAN總線光纖傳輸的研究,但主要是基于分立光纖收發(fā)元件的方法。本文介紹了一種使用光纖收發(fā)一體模塊,結(jié)合編解碼算法實(shí)現(xiàn)CAN總線光纖傳輸接口的方案;根據(jù)CAN總線的特點(diǎn)和實(shí)驗(yàn)數(shù)據(jù),分析了CAN總線在光纖介質(zhì)下傳輸性能的改善。
1CAN總線的雙絞線及光纖傳輸
1.1CAN總線雙絞線傳輸
CAN總線典型的網(wǎng)絡(luò)拓?fù)涫强偩€結(jié)構(gòu)。1993年頒布的同際標(biāo)準(zhǔn)ISOll898對(duì)基于雙絞線的CAN總線傳輸介質(zhì)特性做出了建議:總線可具有兩種邏輯狀態(tài),即隱性(邏輯l)或顯性(邏輯0)。圖1為基于CAN總線控制器SJA1000和總線驅(qū)動(dòng)器PCA82C250的CAN雙絞線傳輸網(wǎng)絡(luò)結(jié)構(gòu)圖。
CAN總線雙絞線傳輸接口的特點(diǎn)是技術(shù)上容易實(shí)現(xiàn),造價(jià)低廉;理論上節(jié)點(diǎn)數(shù)無限制,對(duì)環(huán)境電磁輻射有一定抑制能力。但隨著頻率的增長,雙絞線線對(duì)的衰減迅速增大;雙絞線還有所謂近端串?dāng)_,即在發(fā)送線對(duì)和接收線對(duì)之間仔在電磁耦合干擾。另外,雙絞線的傳輸速率受距離限制比較大。這些缺陷使得CAN總線不宜在強(qiáng)干擾、高速率、遠(yuǎn)距離的場合下使用雙絞線作為傳輸介質(zhì)。
1.2CAN總線光纖傳輸
CAN協(xié)議支持光纖作為傳輸介質(zhì),但是由于CAN總線網(wǎng)絡(luò)一般采用總線型結(jié)構(gòu),并且其總線仲裁采取的是具有優(yōu)先級(jí)的非破壞性CSMA(載波偵聽多路訪問),而光纖信號(hào)的傳輸則是單向的,因此最簡單實(shí)用的方法是在某些總線支路上采用光纖介質(zhì),整個(gè)CAN網(wǎng)絡(luò)為雙絞線和光纖兩種傳輸介質(zhì)混合使用的方式。結(jié)構(gòu)如圖2所示。
作為傳輸介質(zhì),光纖在抗干擾性、傳輸容量、速率等方面具有許多比雙絞線優(yōu)良的特性。因此,在某些環(huán)境惡劣、地理分布范圍較廣、速率要求較高的CAN總線系統(tǒng)中,可以在相應(yīng)的支路上使用光纖傳輸,從而保證整個(gè)CAN網(wǎng)絡(luò)的性能。
2光纖傳輸接口實(shí)現(xiàn)方案
2.1光纖收發(fā)模塊的選用
實(shí)現(xiàn)光纖傳輸?shù)囊粋€(gè)重要環(huán)節(jié)就是完成總線信號(hào)的光電轉(zhuǎn)換,可以使用專用的光纖收發(fā)器件。目前,光纖收發(fā)器有兩種類型:一種是基于分立元件的,即光接收和光發(fā)送模塊是獨(dú)立的。這種光收發(fā)模塊相對(duì)比較簡單,光發(fā)射部分主要由光源和偏置控制電路組成;光接收部分主要由光探測(cè)器、整形放大電路組成,一般采用塑料或多模光纖進(jìn)行傳輸。另一種是光纖收發(fā)一體模塊,它在光源、光探測(cè)、光器件封裝、驅(qū)動(dòng)集成電路、放大集成電路技術(shù)進(jìn)步的基礎(chǔ)上,將接收和發(fā)送集成到一起、符合電信傳輸標(biāo)準(zhǔn)的光電子系統(tǒng);在光發(fā)射部分使用r性能更好的光源,并在接收部分加入了時(shí)鐘及再生判決電路等,一般采用單模光纖進(jìn)行傳輸。因此,光纖收發(fā)一體模塊在信號(hào)轉(zhuǎn)換的速率和穩(wěn)定性上都比分立的光纖收發(fā)器件有很大的提高,而且與外圍器件接口方便,單模光纖的色散、傳輸光功率消耗也比多模光纖小。
本設(shè)計(jì)中選用一款TTL光纖收發(fā)一體模塊,標(biāo)準(zhǔn)工業(yè)用l×9引腳,單+5V電源供電,光纖傳輸模式為單模,標(biāo)準(zhǔn)ST-ST光纖接口。該模塊驅(qū)動(dòng)接口如圖3所示。
2.2設(shè)計(jì)方案
由于光纖收發(fā)一體模塊中含有時(shí)鐘提取電路,要求所轉(zhuǎn)換的信號(hào)流要含有豐富的時(shí)鐘信息,以便時(shí)鐘提取電路準(zhǔn)確地捕獲信號(hào)的頻率,因此信號(hào)流中不宜包含較長的連1或連0。而CAN總線在空閑以及發(fā)送某些類型幀時(shí)會(huì)出現(xiàn)比較長的連1或連0,尤其在通信波特率比較低的情況下,連續(xù)相同電平的時(shí)間就會(huì)越長,這將會(huì)導(dǎo)致接收器捕獲不到信號(hào)流的準(zhǔn)確波特率,從而導(dǎo)致光電轉(zhuǎn)換后的信號(hào)的位時(shí)間不準(zhǔn)確甚至錯(cuò)誤。因此,就要求對(duì)待轉(zhuǎn)換的CAN信號(hào)流進(jìn)行預(yù)先處理。最常用的方法就是進(jìn)行編碼,編碼后的信號(hào)流中包含豐富的時(shí)鐘信息,不會(huì)出現(xiàn)較長的連1或連0,經(jīng)過光纖傳輸后再進(jìn)行解碼還原。也就是說,在CAN控制器、驅(qū)動(dòng)器與光電轉(zhuǎn)換模塊之間增加一個(gè)編解碼器。
據(jù)此提出一種基于CAN總線控制器SJA1000和光纖收發(fā)一體模塊的CAN總線光纖傳輸接口方案,其結(jié)構(gòu)如圖4所示。
接口分為發(fā)送端和接收端。發(fā)送端由CAN總線控制器SJA1000、信號(hào)編解碼器和光纖收發(fā)一體模塊組成;接收端由CAN總線驅(qū)動(dòng)器PCA82C250、信號(hào)編解碼器和光纖收發(fā)一體模塊組成。CAN節(jié)點(diǎn)向總線發(fā)送數(shù)據(jù)時(shí),發(fā)送端總線控制器SJA1000的發(fā)送信號(hào)TX經(jīng)編碼器進(jìn)行編碼之后,送至光纖收發(fā)一體模塊進(jìn)行信號(hào)的電一光轉(zhuǎn)換,然后通過光纖傳輸?shù)竭_(dá)接收端RX;接收端光纖收發(fā)一體模塊先對(duì)收到的光信號(hào)進(jìn)行光一電轉(zhuǎn)換,再由解碼器將編碼信號(hào)還原,最后通過總線驅(qū)動(dòng)器PCA82C250與總線連接,完成數(shù)據(jù)發(fā)送過程。數(shù)據(jù)接收過程同理。
3光電轉(zhuǎn)換編碼、解碼器設(shè)計(jì)
3.1CAN總線仲裁機(jī)制對(duì)編解碼方的要求
CAN總線的非破壞性總線仲裁機(jī)制的原理為:當(dāng)總線空閑時(shí),任何單元均可發(fā)送報(bào)文;若同時(shí)有2個(gè)或更多的節(jié)點(diǎn)開始發(fā)送報(bào)文,則會(huì)出現(xiàn)總線沖突。對(duì)于總線訪問沖突,可借助于標(biāo)識(shí)符ID進(jìn)行逐位仲裁加以解決。仲裁期間,每個(gè)發(fā)送器將發(fā)送位電平同總線上檢測(cè)到的電平進(jìn)行比較:若相等,則節(jié)點(diǎn)繼續(xù)發(fā)送;若不相等,則表明節(jié)點(diǎn)失去仲裁,停止報(bào)文發(fā)送。只有總線訪問優(yōu)先權(quán)最高的節(jié)點(diǎn)繼續(xù)報(bào)文發(fā)送,其他優(yōu)先權(quán)較低的節(jié)點(diǎn)失去仲裁,主動(dòng)停止報(bào)文發(fā)送,只有當(dāng)總線空閑時(shí)才能繼續(xù)啟動(dòng)報(bào)文發(fā)送。因此,CAN節(jié)點(diǎn)每發(fā)送一位數(shù)據(jù)都要監(jiān)聽總線上的數(shù)據(jù)是否與所發(fā)送的一致。在不考慮信號(hào)在光纖中傳輸時(shí)的衰減及CAN節(jié)點(diǎn)自身限制的前提下,為了保證CAN總線通信的正常進(jìn)行,在CAN總線的通信過程中必須保證信號(hào)延遲不能超過CAN總線的允許值,而這主要是由CAN總線物理層的位定時(shí)和同步功能決定的。CAN總線的位時(shí)間被定義為一位的持續(xù)時(shí)間。一個(gè)位時(shí)間可劃分為4個(gè)不重疊的時(shí)間段,即同步段(SYNC_SEG)、傳播段(PROP_SEG)、相位緩沖段1(PHASE_SEG1)和相位緩沖段2(PHASE_SEG2)。其中,同步段用于同步總線上不同的節(jié)點(diǎn),這一段內(nèi)要有一個(gè)跳變沿;傳播段用于補(bǔ)償網(wǎng)絡(luò)內(nèi)的物理延遲時(shí)間(包括總線上的信號(hào)傳播時(shí)間和節(jié)點(diǎn)的內(nèi)部延遲時(shí)間);相位緩沖段1和相位緩沖段2用于補(bǔ)償邊沿階段的誤差。由于CAN總線中各個(gè)節(jié)點(diǎn)的時(shí)鐘可能不一致,因此需要進(jìn)行重新同步。重新同步的結(jié)果,使相位緩沖段1增長,或使相位緩沖段2縮短,內(nèi)部的位時(shí)間從同步段重新開始。采樣點(diǎn)位于相位緩沖段1的結(jié)束,在采樣點(diǎn)時(shí)刻,CAN節(jié)點(diǎn)讀總線電平。通過編程采樣點(diǎn)的位置可以優(yōu)化總線定時(shí)。
評(píng)論