1 引言
控制器局域網(wǎng)(CoNtrollerAreaNetwork,CAN),是德國(guó)Bosch公司為汽車(chē)的監(jiān)控系統(tǒng)而設(shè)計(jì)的總線式串行通信網(wǎng)絡(luò),它具有良好的組網(wǎng)靈活性、開(kāi)放性、擴(kuò)展性和兼容性,它的抗干擾、自診斷、自監(jiān)控和糾錯(cuò)能力強(qiáng),可靠性高,它的協(xié)議模型結(jié)構(gòu)簡(jiǎn)單,實(shí)時(shí)性好,性?xún)r(jià)比高,便于開(kāi)發(fā),它是目前唯一有國(guó)際標(biāo)準(zhǔn)的現(xiàn)場(chǎng)總線,它的應(yīng)用范圍已經(jīng)遠(yuǎn)遠(yuǎn)超出汽車(chē)監(jiān)控系統(tǒng),它適用于許多領(lǐng)域中分布式自動(dòng)控制系統(tǒng),如:工業(yè)過(guò)程控制和自動(dòng)化,智能結(jié)構(gòu)和分布管理等,成為很有推廣普及應(yīng)用潛力的現(xiàn)場(chǎng)總線。
為便于CAN總線在不同領(lǐng)域的推廣普及應(yīng)用,研制一種通用的CAN總線系統(tǒng)基本組成單元――節(jié)點(diǎn)的仿真平臺(tái),通過(guò)仿真使研究開(kāi)發(fā)CAN總線系統(tǒng)的成本和周期降低,這是很有實(shí)際應(yīng)用價(jià)值的。
本仿真平臺(tái)選用Philips公司的SJA1000芯片作為CAN控制器,它除了具有基本CANPCA82C200芯片標(biāo)準(zhǔn)模式的所有功能外,更增加了一種新的工作模式―PeliCAN模式,這種模式支持具有很多新特性的CAN2。0B協(xié)議,如:兼容性和擴(kuò)展性更強(qiáng),檢錯(cuò)和糾錯(cuò)能力更強(qiáng),支持熱插拔等,設(shè)計(jì)更方便靈活,而芯片價(jià)格低廉,很適合作通用的CAN總線系統(tǒng)節(jié)點(diǎn)仿真平臺(tái)之用。
為了適應(yīng)多種不同領(lǐng)域的自動(dòng)控制系統(tǒng)仿真需要,可采用普通PC機(jī)作為各種不同的自動(dòng)控制系統(tǒng)的傳感器、執(zhí)行器和人機(jī)鍵控和顯示接口的仿真器,形成仿真平臺(tái),提高節(jié)點(diǎn)的通用性,靈活性和可擴(kuò)展性。通過(guò)仿真PC機(jī)可模擬各種不同應(yīng)用系統(tǒng)。
2 仿真平臺(tái)的硬件設(shè)計(jì)
所設(shè)計(jì)的CAN總線系統(tǒng)節(jié)點(diǎn)仿真平臺(tái)硬件系統(tǒng)框圖如圖1所示。
圖1CAN總線系統(tǒng)節(jié)點(diǎn)仿真平臺(tái)
總線系統(tǒng)采用價(jià)格低廉而安裝方便的雙絞線作為通信介質(zhì),將各節(jié)點(diǎn)聯(lián)接成網(wǎng)絡(luò)系統(tǒng)。每個(gè)節(jié)點(diǎn)由CAN控制器、CAN收發(fā)器、微處理器和仿真PC機(jī)四個(gè)功能模塊組成。
CAN控制器SJA1000作為核心,執(zhí)行CAN協(xié)議,包括數(shù)據(jù)的成幀和解幀以及幀的收發(fā)等等。
由于SJA1000的總線驅(qū)動(dòng)能力有限,它通過(guò)CAN收發(fā)器PCA82C250芯片與物理總線聯(lián)接起來(lái)。CAN收發(fā)器將來(lái)自CAN控制器的邏輯電平信號(hào)轉(zhuǎn)換成適合在CAN總線上傳輸且能被CAN收發(fā)器接收的邏輯電平信號(hào),起到抗瞬間干擾和射頻干擾,增大通信距離和保護(hù)總線等作用;為了進(jìn)一步增強(qiáng)抗干擾能力,在SJA1000與PCA82C250之間,可用高速光電耦合器6N137實(shí)現(xiàn)總線上各CAN節(jié)點(diǎn)間的電平隔離。
CAN控制器和收發(fā)器配合完成CAN協(xié)議中物理層和數(shù)據(jù)鏈路層的通信協(xié)議功能。微處理器89C51控制SJA1000的功能,包括初始化和監(jiān)控管理,實(shí)現(xiàn)數(shù)據(jù)的收發(fā)通信,執(zhí)行應(yīng)用層功能。
仿真PC機(jī)通過(guò)串口芯片MAX232實(shí)現(xiàn)與微處理器之間的電平轉(zhuǎn)換和通信,從而實(shí)現(xiàn)與CAN總線通信。PC機(jī)可作為各種不同的自動(dòng)控制系統(tǒng)的傳感器、執(zhí)行器和人機(jī)鍵控和顯示接口的仿真器,形成仿真平臺(tái),提高節(jié)點(diǎn)的通用性,靈活性和可擴(kuò)展性。通過(guò)仿真PC機(jī)可模擬各種不同的應(yīng)用系統(tǒng)。
3 仿真平臺(tái)的軟件設(shè)計(jì)
軟件設(shè)計(jì)主要是對(duì)微處理器進(jìn)行應(yīng)用編程,實(shí)現(xiàn)SJA1000的初始化(包括工作模式、濾波器、中斷使能寄存器等初始值的設(shè)置),監(jiān)控管理和鍵控顯示。微處理器采用中斷工作模式,使響應(yīng)速度提高,支持系統(tǒng)實(shí)時(shí)性。中斷流程如圖2。
圖2中斷流程圖
軟件設(shè)計(jì)的核心是微處理器與CAN控制器之間的數(shù)據(jù)通信。最終實(shí)現(xiàn)CAN網(wǎng)絡(luò)節(jié)點(diǎn)間的數(shù)據(jù)通信。編程采用模塊化方式,方便修改、升級(jí)和調(diào)試,支持系統(tǒng)靈活性、開(kāi)放性和可擴(kuò)展性。
4 小結(jié)
本文的基于SJA1000的CAN總線系統(tǒng)節(jié)點(diǎn)仿真平臺(tái),經(jīng)測(cè)試得,可實(shí)現(xiàn)兩個(gè)節(jié)點(diǎn)間的數(shù)據(jù)正確的發(fā)送和接收,并實(shí)現(xiàn)了節(jié)點(diǎn)和仿真PC機(jī)之間的通信以及鍵控輸入、數(shù)據(jù)顯示等功能。它的硬件結(jié)構(gòu)簡(jiǎn)單價(jià)廉,軟件靈活,易修改、升級(jí)和進(jìn)一步組網(wǎng)等的開(kāi)發(fā),通過(guò)仿真PC機(jī)可模擬各種不同應(yīng)用系統(tǒng)。通過(guò)仿真使研究開(kāi)發(fā)CAN總線系統(tǒng)的成本和周期降低,該仿真平臺(tái)為CAN總線系統(tǒng)在汽車(chē)及其它多種不同領(lǐng)域的自動(dòng)控制系統(tǒng)中推廣應(yīng)用,提供了方便的研究開(kāi)發(fā)條件,為CAN的普及和提高提供了有益的參考實(shí)例。
-
收發(fā)器
+關(guān)注
關(guān)注
10文章
3742瀏覽量
109798 -
控制器
+關(guān)注
關(guān)注
114文章
17497瀏覽量
188470 -
CAN
+關(guān)注
關(guān)注
58文章
2975瀏覽量
470447
發(fā)布評(píng)論請(qǐng)先 登錄
電源控制器MCU硬件在環(huán)(HIL)測(cè)試方案
基于PXI和cRIO的電子穩(wěn)定程序硬件在環(huán)仿真平臺(tái)開(kāi)發(fā)
Veloce Apps硬件仿真平臺(tái)
如何對(duì)數(shù)字預(yù)失真平臺(tái)系統(tǒng)進(jìn)行仿真測(cè)試?
怎么實(shí)現(xiàn)燃料電池汽車(chē)整車(chē)控制器仿真測(cè)試平臺(tái)?
什么是全數(shù)字仿真平臺(tái)
EasyGo實(shí)時(shí)仿真丨控制器硬件在環(huán)(HIL)風(fēng)電場(chǎng)景仿真測(cè)試應(yīng)用
EasyGo 實(shí)時(shí)仿真丨大功率電機(jī)控制器硬件在環(huán)系統(tǒng)仿真測(cè)試
OBS系統(tǒng)仿真平臺(tái)的構(gòu)建及分析
光電跟蹤伺服系統(tǒng)仿真平臺(tái)開(kāi)發(fā)與應(yīng)用
基于PXI和cRIO的ESP硬件在環(huán)仿真平臺(tái)

基于MATLAB_GUI的電機(jī)教學(xué)實(shí)驗(yàn)用控制系統(tǒng)的仿真平臺(tái)
基于SJA1000芯片和PCA82C250芯片實(shí)現(xiàn)總線節(jié)點(diǎn)仿真平臺(tái)設(shè)計(jì)

存儲(chǔ)控制器系統(tǒng)級(jí)硬件仿真與原型驗(yàn)證性能
基于MCP2510 CAN控制器實(shí)現(xiàn)CAN總線系統(tǒng)智能節(jié)點(diǎn)的設(shè)計(jì)

評(píng)論