CAN總線在多機(jī)通信中的應(yīng)用
摘要:設(shè)計(jì)了多個(gè)CAN總線的通信節(jié)點(diǎn),通過(guò)PCI9810-CAN適配卡上的CAN總線,組成一個(gè)局域通信網(wǎng)絡(luò),實(shí)現(xiàn)了PC機(jī)對(duì)各個(gè)節(jié)點(diǎn)的監(jiān)控和通信以及節(jié)點(diǎn)間的自由通信。
關(guān)鍵詞:CAN總線;多機(jī)通信;CAN控制器
隨著微處理器的發(fā)展,利用微處理器對(duì)工業(yè)生產(chǎn)過(guò)程進(jìn)行控制已成為趨勢(shì)。在工業(yè)控制過(guò)程中,由于大量數(shù)據(jù)信息的共享和傳輸,傳統(tǒng)的串行通信模式已不能滿足要求。在工業(yè)控制領(lǐng)域中,需要一種抗干擾性強(qiáng)、可靠性高、傳輸速度快和傳輸距離長(zhǎng)的總線結(jié)構(gòu)。CAN總線技術(shù)不僅滿足上述要求,而且還能實(shí)現(xiàn)多點(diǎn)間的信息傳遞。本文使用PCI9810-cAN適配卡上的CAN總線組成局域網(wǎng)絡(luò),實(shí)現(xiàn)多微處理器間的信息傳遞和PC機(jī)對(duì)多處理器的檢控、通信。
1 CAN總線簡(jiǎn)介
CAN(Controller Area Networks)總線,最早是由德國(guó)Bosch公司開(kāi)發(fā)用于局域網(wǎng)控制的總線技術(shù)。CAN總線采用傳統(tǒng)的雙線串行通信方式,具有診斷能力,抗電磁干擾,其最陜傳輸速率可達(dá)1 Mb·s-1,最長(zhǎng)通信距離可達(dá)10 km(此時(shí)的傳輸速率大約為40 kb·s-1)。在CAN總線組成的局域網(wǎng)絡(luò)中,通信節(jié)點(diǎn)之間不采用主從方式,而是具有總線訪問(wèn)優(yōu)先權(quán),通信方式靈活,可實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn),一點(diǎn)對(duì)多點(diǎn)及廣播方式傳輸數(shù)據(jù)。
2 系統(tǒng)通信模塊的硬件設(shè)計(jì)
CAN總線是由PCI9810-CAN適配卡提供,本文主要完成通信節(jié)點(diǎn)的設(shè)計(jì)。通信節(jié)點(diǎn)不僅可以和PC機(jī)進(jìn)行信息交換,還可獨(dú)立與其他各節(jié)點(diǎn)通信。微處理器在需要和主機(jī)或其它節(jié)點(diǎn)通信時(shí),其通過(guò)P0口向SJA1000T的寄存器發(fā)送信息,再由PCA82C250把信息傳遞到CAN總線上。主機(jī)和其他通信節(jié)點(diǎn)判斷接收?qǐng)?bào)文的標(biāo)識(shí)符,將對(duì)接收到的信息作相應(yīng)的處理,從而實(shí)現(xiàn)通信功能,如圖1所示。
在設(shè)計(jì)過(guò)程中,為了滿足多微處理器間通信的實(shí)時(shí)性和可靠性要求,結(jié)合CAN控制器的特點(diǎn),對(duì)圖1作簡(jiǎn)單介紹:
(1)收發(fā)器PCA82C250的引腳8(Rs)有3種工作方式:高速,斜率控制和待機(jī)。斜率控制方式具有抗射頻干擾的功能,所以采用47 kΩ的電阻連接引腳8,實(shí)現(xiàn)斜率控制方式。
(2)圖1中應(yīng)為兩個(gè)高速光電耦合隔離器件6N137,由于6N137輸出引腳的驅(qū)動(dòng)能力不夠,需要連接一個(gè)約390 Ω的上拉電阻,以增加輸出引腳的驅(qū)動(dòng)能力。兩個(gè)光電耦合隔離器件6N137的電源信號(hào)采用5 V的DC-DC隔離模塊WRA0505P,以增強(qiáng)系統(tǒng)的抗干擾能力。
(3)收發(fā)器PCA82C250的CANH和CANL引腳各自由通過(guò)一個(gè)5 Ω的電阻與CAN總線相連,電阻起到一定的限流作用,保護(hù)PCA82C250免受CAN總線上的過(guò)流沖擊。
(4)收發(fā)器PCA82C250的CANH和CANL引腳與電源地之間分別反接一個(gè)保護(hù)二極管和30 pF的電容,可以起到CAN總線的過(guò)壓保護(hù)作用和過(guò)流沖擊。
(5)CAN控制器SJA1000T輸入方式有2種:Intel輸入方式和Motorola輸入方式。在此采用Intel輸入方式,所以SJA1000T的MODE引腳接高電平。
評(píng)論