1 概述
電流環(huán)形式因較RS-485/RS-422總線形式連線復(fù)雜等原因已基本退出歷史舞臺(tái),。而RS-485總線接線形式較RS-422總線接線形式少了二極通信線且抗干擾能力增強(qiáng),,從而使接線形式更為簡(jiǎn)單,、造價(jià)更低,,因此,RS-485總線基本上獨(dú)霸了以單片機(jī)為核心的分布式多機(jī)測(cè)控系統(tǒng)通信物理層的應(yīng)用,。但隨著科技的發(fā)展,,RS-485總線的總線效率低、系統(tǒng)實(shí)時(shí)性差,、通訊可靠性低,、后期維護(hù)成本高、網(wǎng)絡(luò)工程調(diào)試復(fù)雜,、傳輸距離不理想,、單總線可掛接節(jié)點(diǎn)少、應(yīng)用不靈活等缺點(diǎn)慢慢地暴露出來(lái),,因此,,迫切需要尋找一種新型,、簡(jiǎn)單有效的通信物理層接口芯片來(lái)替代RS-485總線物理層接口電路進(jìn)行網(wǎng)絡(luò)通信,這對(duì)提高多機(jī)互連的分布式測(cè)控系統(tǒng)的可靠性具有重大意義,。
與其他現(xiàn)場(chǎng)總線相比,,CAN部遲疑不決在通信能力、可靠性,、實(shí)時(shí)性,、靈活性、易用性,、傳輸距離和成本等方面有著明顯的優(yōu)勢(shì),,成為控制等領(lǐng)域最有前途的現(xiàn)場(chǎng)總線之一。對(duì)于CAN總線的物理層接口,,現(xiàn)有大多是CAN總線物理層接口電路與CAN總線控制器連接構(gòu)成的CAN總線通信網(wǎng)絡(luò),。經(jīng)筆者的深入分析和實(shí)踐證明:CAN總線物理層接口電路(符合ISO11898標(biāo)準(zhǔn))也可與單片機(jī)直接連接構(gòu)成一個(gè)高可靠、低成本,、簡(jiǎn)單實(shí)用,、多機(jī)互連的分布式測(cè)控系統(tǒng),。
2 CAN與RS-485物理層特性比較
CAN總線在物理層個(gè)有專(zhuān)用接口電路,,該類(lèi)接口電路具有特色。
CAN總線與RS-485總線物理層特性的相同點(diǎn)有:
·二線制,、半雙工串行通信;
·差分傳送,、平衡接收;
·傳輸介質(zhì)為雙絞線;
·需終端匹配電阻器;
·通信電路可在5V電源條件下工作。
CAN總線與RS-485總線相比,,CAN總線通信物理層接口電路(以PCA82C250為例)具有如下優(yōu)點(diǎn):
·完全符合ISO11898國(guó)際標(biāo)準(zhǔn);
·數(shù)據(jù)傳輸距離長(zhǎng)(長(zhǎng)達(dá)10km/5kb/s);
·數(shù)據(jù)傳輸速率高(高達(dá)1Mb/s/40m);
·CAN總線中的總線數(shù)值為二種互補(bǔ)邏輯“顯性”或“隱性”位數(shù)值;
·可實(shí)現(xiàn)多主式通信網(wǎng)絡(luò)設(shè)計(jì),,信號(hào)在總線上通過(guò)“線與”可實(shí)現(xiàn)非破壞性總線仲裁;
·無(wú)發(fā)送、接收轉(zhuǎn)換控制引腳;
·具有抗瞬間脈沖干擾(-150V
·具有較RS-485總線高的總線電壓(-8V~+18V)承受能力;
·具有發(fā)送脈沖斜率控制,,可降低射頻干擾;
·差分接收器可以抗拒較寬范圍的共模干擾;
·具有總線與電源和地之間的短路保護(hù);
·具有抗總線短路保護(hù)能力;
·在特定的單線條件下仍可以保護(hù)總線正常工作;
·具有低電流待機(jī)模式;
·總線內(nèi)部配有電阻器網(wǎng)絡(luò),,無(wú)需外部上、下位電阻器;
·未上電的節(jié)點(diǎn)對(duì)總線無(wú)影響;
·至少可以連接110節(jié)點(diǎn),。
由此可見(jiàn),,采用CAN總線的物理層專(zhuān)用接口電路替代RS-485總線接口電路形成一個(gè)混合模式的多機(jī)互連分布式測(cè)控系統(tǒng)的通信網(wǎng)絡(luò),可以克服RS-485總線的固有缺陷,,充分利用CAN總線物理層的優(yōu)勢(shì),,能以簡(jiǎn)單的形式、較低的價(jià)格,、較高的性能構(gòu)造出極具競(jìng)爭(zhēng)力的分布式測(cè)控系統(tǒng),。
3 PCA82C250簡(jiǎn)介
完全符合ISO11898國(guó)際標(biāo)準(zhǔn)的CAN總線物理層專(zhuān)用接口電路有多種,這里僅以CAN總線通用接口電路PCA82C250為例對(duì)這類(lèi)接口芯片作以說(shuō)明,。PCA82C250的引腳圖如圖1所示,。各功能引腳如下:
1腳:欲發(fā)送數(shù)據(jù)的輸入端;
2腳:電源地端;
3腳:電源端;
4腳:接收數(shù)據(jù)的輸出端;
5腳:參考電壓的輸出端;
6腳:低電平CAN總線輸入/輸出端;
7腳:高電平CAN總線輸入/輸出端;
8腳:總線脈沖斜率控制電阻連接端,。
PCA82C250可以提供對(duì)總線數(shù)據(jù)的差動(dòng)發(fā)送能力和對(duì)通信總線數(shù)據(jù)的差動(dòng)接收能力。其引腳8較為特殊,,該引腳用于選擇電路自身的工作方式;高速,、斜率控制和待機(jī)。該腳接地時(shí),,PCA82C250工作于高速通信方式;接一個(gè)一定阻值的電阻器后再接地,,用于控制發(fā)送數(shù)據(jù)脈沖的上升和下降斜率(斜率正比于引腳8上的電流值),用以減少射頻干擾;該腳接高電平時(shí),,電路進(jìn)入低電流待機(jī)狀態(tài),。在這種方式下,發(fā)送器被關(guān)閉,,接收器轉(zhuǎn)至低電流工作,但接收器仍可對(duì)CAN總線上的“顯性”位做出,。
如果PCA82C250處于通信總線的網(wǎng)絡(luò)終端,,在總線上需要加一個(gè)120Ω左右的匹配電阻。
4 應(yīng)用實(shí)例
以Atmal AT89C55型單片機(jī)為例,,AT89C55與RS-485總線接口電路及AT89C55與CAN總線物理層專(zhuān)用接口電路的對(duì)比連接圖如圖2所示,。
由圖2的對(duì)比中可以看出,PCA82C250與AT89C55的硬件連接比MAX485與AT89C55的硬件連接還要簡(jiǎn)單,,因?yàn)?,PCA82C250的通信過(guò)程無(wú)需接收與發(fā)送的硬件轉(zhuǎn)換控制,僅由軟件來(lái)控制接浮時(shí),,CAN總線表現(xiàn)為“隱性”位數(shù)值,即CANH和CANL為懸浮態(tài)(VCAHN≈CANL≈VCC/2,,相當(dāng)于關(guān)閉總線),這為具有“休眠”功能的系統(tǒng)提供了網(wǎng)絡(luò)安全保障;當(dāng)TXD端輸入為低電平時(shí),,CAN總線表現(xiàn)為“顯性”位數(shù)值(向總線傳送有效數(shù)據(jù)位),,即CANH輸出高電壓(約3.5V,,當(dāng)VCC為5V時(shí))、CANL輸出低電平(約1.5V,當(dāng)Vcc為5V時(shí)),。顯然,,在多主機(jī)條件下,“顯性”位和“隱性”位的引入,,可在總線上實(shí)現(xiàn)非破壞性總線仲裁,,以裁決哪一個(gè)主設(shè)備應(yīng)是下一個(gè)占有總線的設(shè)備,。由于沒(méi)有用到PCA82C250參考電壓的輸出值,,因此,,PCA82C250的5腳可懸空,而8腳所接的電阻RS用于控制CAN總線的輸出脈沖的上升,、下降沿的斜率,,以降低總線的射頻干擾,。當(dāng)RS上的電阻大于0.75CC時(shí),,PCA82C250芯片進(jìn)入低功耗待機(jī)狀態(tài);當(dāng)RS上的電壓小于0.3Vcc時(shí),PCA82C250進(jìn)入高速通信狀態(tài);當(dāng)RS上的電壓處于0.4Vcc至0.6Vcc之間時(shí),,PCA82C250進(jìn)入CAN總線輸出脈沖上升,、下降沿的斜率控制通信狀態(tài),其斜率大小與RS上的電壓成正比,。
圖2中,,二個(gè)通信系統(tǒng)的軟件幾乎相同。當(dāng)采用PCA82C250的作為總線接口替代原有的MAX485時(shí),,在軟件上所做的變更有:首先,,可取消RS-485總線的通信方向控制指令部分,因?yàn)镃A7402097N總線接口已不需要此功能;其次,,RS-485總線在總線發(fā)送時(shí),,由于發(fā)送、接收控制端已連接在一起,,即自動(dòng)關(guān)閉了總線數(shù)據(jù)接收功能,,而CAN總線接口在總線數(shù)據(jù)發(fā)送的同時(shí)也在進(jìn)行總線數(shù)據(jù)的接收(CAN總線接口不提供通信接收、發(fā)送數(shù)據(jù)的分離控制功能),,因此,,在軟件設(shè)計(jì)上對(duì)此應(yīng)有所考慮。當(dāng)然,,這為多機(jī)通信系統(tǒng)中的總線數(shù)據(jù)沖突的軟件識(shí)別與仲裁提供了條件,。
當(dāng)需要MCU與通信網(wǎng)絡(luò)之間的電氣隔離時(shí),可在MCU與CAN總線的物理層專(zhuān)用接口電路之間增加2個(gè)光電隔離器件(如6N137光電隔離電路),,即可實(shí)現(xiàn)MCU與通信網(wǎng)絡(luò)之間的電氣隔離,。
5 結(jié)論
軟件上僅做少許修改,甚至不修改原有的RS-485總線的通信軟件就能適應(yīng)新的系統(tǒng)工作,。必要時(shí)通過(guò)修改原有的RS-485總線的通信軟件即可實(shí)現(xiàn)多主式多機(jī)數(shù)據(jù)通信,,充分利用了CAN總線物理層的優(yōu)勢(shì)。在硬件方面,,能夠以簡(jiǎn)單的形式,、較低的價(jià)格,、較高的性能構(gòu)造出極具競(jìng)爭(zhēng)力的分布式測(cè)控系統(tǒng),使多機(jī)互連的分布式測(cè)控系統(tǒng)的通信網(wǎng)絡(luò)性能得以提升,。