新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于單片機(jī)的CAN總線分布式測控系統(tǒng)的研制

基于單片機(jī)的CAN總線分布式測控系統(tǒng)的研制

作者: 時(shí)間:2012-03-08 來源:網(wǎng)絡(luò) 收藏

本文介紹了一種基于AT89C52的分布式,主要闡述了系統(tǒng)的總體設(shè)計(jì)方案,以及控制模塊和采集模塊的軟硬件設(shè)計(jì),重點(diǎn)是系統(tǒng)中以為核心的帶有接口的設(shè)計(jì),解決現(xiàn)場各傳感器得到的測量信號(hào)利用進(jìn)行存儲(chǔ)和處理,然后通過與CAN控制器的通訊將信息發(fā)送到上。

1 CAN總線網(wǎng)絡(luò)的技術(shù)特點(diǎn)[1][2]  

用通訊數(shù)據(jù)塊編碼,可實(shí)現(xiàn)多主工作方式,數(shù)據(jù)收發(fā)方式靈活,可實(shí)現(xiàn)點(diǎn)對點(diǎn)、一點(diǎn)對多點(diǎn)及全局廣播等多種傳輸方式;可將DCS結(jié)構(gòu)中主機(jī)的常規(guī)測試與控制功能分散到各個(gè)智能節(jié)點(diǎn),節(jié)點(diǎn)控制器把采集到的數(shù)據(jù)通過CAN適配器發(fā)送到總線,或者向總線申請數(shù)據(jù),主機(jī)便從原來繁重的底層設(shè)備監(jiān)控任務(wù)中解放出來,進(jìn)行更高層次的控制和管理功能,比如故障診斷、優(yōu)化協(xié)調(diào)等;

采用非破壞性基于優(yōu)先權(quán)的總線仲裁技術(shù),具有暫時(shí)錯(cuò)誤和永久性故障節(jié)點(diǎn)的判別及故障節(jié)點(diǎn)的自動(dòng)脫離功能,使系統(tǒng)其它節(jié)點(diǎn)的通信不受影響;同時(shí),CAN具有出錯(cuò)幀自動(dòng)重發(fā)功能,可靠性高;   

信號(hào)傳輸用短幀結(jié)構(gòu)(8字節(jié)),實(shí)時(shí)性好;
  
不關(guān)閉總線即可任意掛接或拆除節(jié)點(diǎn),增強(qiáng)了系統(tǒng)的靈活性和可擴(kuò)展性;  

采用統(tǒng)一的標(biāo)準(zhǔn)和規(guī)范,使各設(shè)備之間具有較好的互操作性和互換性,系統(tǒng)的通用性好;   

通訊介質(zhì)可采用雙絞線,無特殊要求;現(xiàn)場布線和安裝簡單,易于維護(hù),經(jīng)濟(jì)性好。

總之,CAN總線具有實(shí)時(shí)性強(qiáng)、可靠性高、結(jié)構(gòu)簡單、互操作性好、價(jià)格低廉等優(yōu)點(diǎn),克服了傳統(tǒng)的工業(yè)總線的缺陷,是構(gòu)建分布式的一種有效的解決方案。

2系統(tǒng)總體硬件設(shè)計(jì)方案 

首先,定義各節(jié)點(diǎn)的功能,確定各節(jié)點(diǎn)檢測或控制量的數(shù)目、類型、信號(hào)特征。這是進(jìn)行微機(jī)網(wǎng)絡(luò)化的第一步。原則是盡量避免重復(fù)測試。智能節(jié)點(diǎn)模塊絕大部分是輸入輸出模塊,調(diào)節(jié)回路可以跨模塊構(gòu)成回路。但考慮到調(diào)節(jié)回路的安全性,為了保證在上位機(jī)或整個(gè)通信線路出現(xiàn)重大故障時(shí)回路調(diào)節(jié)不受到影響,設(shè)計(jì)了隔離型、自整定PID、隔離型溫度調(diào)節(jié)器等帶有調(diào)節(jié)功能的模塊。它們的輸入輸出通道都在同一模塊中,其底層軟件的功能很強(qiáng),所有的輸入處理、輸出增量的計(jì)算(多種調(diào)節(jié)算法可通過組態(tài)選擇,包括串級調(diào)節(jié))、輸出,包括自整定模塊的過程參數(shù)的自動(dòng)識(shí)別都在本模塊實(shí)現(xiàn),保證了調(diào)節(jié)回路的安全性、可靠性。

其次,選擇各節(jié)點(diǎn)控制器和相應(yīng)的CAN適配元件。由于各測控節(jié)點(diǎn)功能相對單一,數(shù)據(jù)量少,因此對CPU的要求大大降低,采用8051系列單片機(jī)即可滿足要求。CAN 總線適配器件主要有:控制器接口、總線收發(fā)器和I/O器件。采用Philips公司生產(chǎn)的82C200CAN控制器和與其配套的82C250CAN收發(fā)器。82C200具有完成高性能通信協(xié)議所要求的全部必要特性。具有簡單總線連接的82C200可完成物理層和數(shù)據(jù)鏈路層的所有功能。

最后,按照CAN總線物理層協(xié)議選擇總線介質(zhì),設(shè)計(jì)布線方案,連接成CAN總線分布式測控網(wǎng)絡(luò)。如圖1所示。

58.jpg

3系統(tǒng)的硬件組成[3][4][5]

(1)CAN總線接口模塊

① 微處理器

目前廣泛流行的CAN總線器件有兩大類:一類是獨(dú)立的CAN控制器,如82C200,SJA1000及Intel 82526/82527等;另一類是帶有芯片CAN的微控制器,如P8XC582及16位微控制器87C196CA/CB等。根據(jù)當(dāng)前市場、開發(fā)工具和課題的實(shí)際需要,系統(tǒng)的智能節(jié)點(diǎn)均選用ATMEL 8位單片機(jī)AT89C52為微處理器。

② CAN控制器

CAN控制器選用SJA1000作為控制器。SJA1000是高集成度CAN控制器。具有多主結(jié)構(gòu)、總線訪問優(yōu)先權(quán)、成組與廣播報(bào)文功能及硬件濾波功能。輸入時(shí)鐘頻率為16MHh時(shí)鐘,輸出可編程控制。由以下幾部分構(gòu)成:接口管理邏輯、發(fā)送緩存器、接收緩存器、位流處理器、位定時(shí)邏輯、收發(fā)邏輯、錯(cuò)誤管理邏輯、控制器接口邏輯等。

SJA1000有很多新功能 :標(biāo)準(zhǔn)結(jié)構(gòu)和擴(kuò)展結(jié)構(gòu)報(bào)文的接受和發(fā)送;64字節(jié)的接收FIFO;標(biāo)準(zhǔn)和擴(kuò)展幀格式都具有單/雙接收濾波器;可進(jìn)行讀/寫訪問的錯(cuò)誤計(jì)數(shù)器;可編織的錯(cuò)誤報(bào)警限制:最近一次的錯(cuò)誤代碼寄存器;每一個(gè)CAN總線錯(cuò)誤都可以產(chǎn)生錯(cuò)誤中斷;具有丟失仲裁定位功能的丟失仲裁中斷;單發(fā)方式(當(dāng)發(fā)主錯(cuò)誤或丟失仲裁時(shí)不重發(fā));只聽方式(監(jiān)聽CAN總線,無應(yīng)答,無錯(cuò)誤標(biāo)志);支持熱插拔(無干擾軟件驅(qū)動(dòng)位速率監(jiān)測)。因此,系統(tǒng)的智能節(jié)點(diǎn)均選用SJA1000作為CAN控制器。

③ CAN總線收發(fā)器

CAN總線收發(fā)器選用PCA82C250作為總線收發(fā)器。 PCA82C250是CAN 協(xié)議控制器和物理總線之間的接口。82C250 可以為總線提供不同的發(fā)送性能,為CAN 控制器提供不同的接收性能。而且它與“ISO 11898”標(biāo)準(zhǔn)完全兼容。PCA82C250的目的是為了增大通信距離,提高系統(tǒng)的瞬間抗干擾能力,保護(hù)總線,降低射頻干擾(RFI)實(shí)現(xiàn)熱防護(hù)等。為了進(jìn)一步提高抗干擾措施,在兩個(gè)CAN器件之間使用了由高速隔離器件6N137構(gòu)成的隔離電路。 CAN器件與微處理器的硬件連接如圖2所示。

59.jpg


上一頁 1 2 3 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉