【摘要】論述了一種基于CAN現(xiàn)場總線的分布式煤礦安全系統(tǒng)的設(shè)計(jì)方法,通過中控分站采用CPLD設(shè)計(jì),高速AD進(jìn)行采樣,將采集到的數(shù)據(jù)送至MCU進(jìn)行控制邏輯分析。本文詳細(xì)論述了系統(tǒng)的設(shè)計(jì)方案、硬件搭建,最后通過軟件仿真驗(yàn)證了該方案的可行性。
【關(guān)鍵詞】數(shù)據(jù)采集;CAN總線;CPLD;MCU
引言
隨著煤礦系統(tǒng)的日益增多和國家對(duì)煤礦安全化程度要求的增加,煤礦的分布式控制也愈發(fā)復(fù)雜。傳統(tǒng)的煤礦控制系統(tǒng)采用點(diǎn)對(duì)點(diǎn)的方式或者一主多從的方式進(jìn)行,而目前該方式已經(jīng)滿足不了煤礦安全監(jiān)控系統(tǒng)實(shí)時(shí)控制的需要。同時(shí)由于各種監(jiān)測控制系統(tǒng)的不斷增加而導(dǎo)致的設(shè)備數(shù)量的幾何式的增長,也使得在煤礦巷道的布線難度的復(fù)雜性、線纜成本等的急劇上升。對(duì)煤礦各個(gè)系統(tǒng)的維修也越發(fā)復(fù)雜。如何使這些眾多的獨(dú)立功能協(xié)調(diào)統(tǒng)一工作,亦即如何對(duì)大多數(shù)系統(tǒng)進(jìn)行集中控制,已經(jīng)成為整個(gè)煤礦行業(yè)研究領(lǐng)域中非常重要的課題。-而采用現(xiàn)場總線CAN-BUS技術(shù)實(shí)現(xiàn)煤礦各系統(tǒng)的分布式網(wǎng)絡(luò)化控制使得對(duì)各設(shè)備的實(shí)時(shí)控制成為可能。本文使用CPLD控制系統(tǒng),把采集到的數(shù)據(jù)通過CAN總線傳輸?shù)組CU中進(jìn)行處理,將大大提高系統(tǒng)的方便性,并且具有較強(qiáng)的抗干擾能力。
1.CAN總線介紹
CAN總線術(shù)語現(xiàn)場總線的范疇,是一種有效支持分布式控制或?qū)崟r(shí)控制的串行通信網(wǎng)絡(luò),位速率可以達(dá)到1Mbps。
CAN總線具有其它現(xiàn)場總線無法比擬的優(yōu)點(diǎn):a.多主站依據(jù)優(yōu)先權(quán)進(jìn)行總線訪問:總線開放時(shí),任何單元均可以發(fā)送報(bào)文,具有最高優(yōu)先權(quán)的報(bào)文單元贏得總線訪問權(quán)。利用這個(gè)特點(diǎn)可以作為多主設(shè)備的自發(fā)控制系統(tǒng)。b.無破壞性的基于優(yōu)先權(quán)的總裁。網(wǎng)絡(luò)上的多個(gè)主機(jī)可以同時(shí)發(fā)送數(shù)據(jù),網(wǎng)絡(luò)會(huì)根據(jù)報(bào)文幀的優(yōu)先權(quán)大小來動(dòng)態(tài)控制數(shù)據(jù)流,沒有發(fā)送的幀可以自動(dòng)重發(fā)。c.優(yōu)秀的地址濾波功能:收到的標(biāo)識(shí)符與本機(jī)的接收碼寄存器與屏蔽寄存器相比較,符合的報(bào)文才予以接收,不需要軟件的干預(yù),大大減少了軟件的負(fù)荷量。d.另外,還具有遠(yuǎn)程數(shù)據(jù)自動(dòng)請(qǐng)求,節(jié)點(diǎn)的收發(fā)配置,數(shù)據(jù)相容性,錯(cuò)誤檢測和出錯(cuò)指令等,這些優(yōu)點(diǎn)都是其它常用的現(xiàn)場總線結(jié)構(gòu)所無法比擬的。而且,現(xiàn)場總線CAN-Bus本身是符合本質(zhì)安全要求的一種總線形式。
2.系統(tǒng)設(shè)計(jì)
煤礦安全系統(tǒng)的控制對(duì)象包括:各種傳感器、人員定位分站、廣播分站、環(huán)網(wǎng)交換機(jī)等,結(jié)構(gòu)如圖1所示:
圖1 煤礦安全系統(tǒng)結(jié)構(gòu)
主控單元接收信號(hào)之后,先進(jìn)行分析處理,然后通過CAN總線把控制指令發(fā)送給各受控端,各受控端響應(yīng)后作出相應(yīng)的動(dòng)作。
在煤礦行業(yè)中,系統(tǒng)的外部狀態(tài)獲取是通過各種傳感器件,例如攝像頭、位移傳感器、壓力傳感器等,由CPLD控制ADC對(duì)模擬信號(hào)進(jìn)行采樣,并把采樣到的數(shù)據(jù)自動(dòng)向FIFO存儲(chǔ)器中存儲(chǔ),通過CAN節(jié)點(diǎn)最終將數(shù)據(jù)發(fā)送到中央控制模塊,如圖2所示。
圖2 數(shù)據(jù)采集結(jié)構(gòu)
3.硬件設(shè)計(jì)
3.1 AD轉(zhuǎn)換
MCP3421是Microchip公司△-∑A/D轉(zhuǎn)換器系列的一款18位分辨率器件,采用SOT23-6封裝結(jié)構(gòu)。MCP3421為一個(gè)全差分、18位分辨率且具有自校正功能的△-∑A/D轉(zhuǎn)換器,內(nèi)部內(nèi)部包括△-EA/D轉(zhuǎn)換器、可編程增益放大器(PGA)、時(shí)鐘振蕩器和I2C串行接口,以及2.048 V電壓基準(zhǔn)源5部分。MCP3421設(shè)計(jì)簡單、極易配置,允許設(shè)計(jì)工程師通過最小配置獲得精確的測量結(jié)果。MCP3421與其它AD相比,主要優(yōu)點(diǎn)在于:全差分輸入;18位分辨率;精密的連續(xù)自校準(zhǔn)功能;可選擇3.75、15、60或240 sps采樣速率進(jìn)行轉(zhuǎn)換;可工作在連續(xù)轉(zhuǎn)換或單次轉(zhuǎn)換模式,在單次轉(zhuǎn)換后的空閑期內(nèi)自動(dòng)進(jìn)入待機(jī)模式,極大地減小了電流消耗;內(nèi)部集成2.048 V±0.05%精度,且溫度漂移僅為5ppm/℃的基準(zhǔn)電壓源;可編程增益放大器(PGA)提供1/2/4/8倍增益,允許測量極小的信號(hào)并且具有很高的分辨率;內(nèi)部集成振蕩器電路并提供I2C串行接口等。
3.2 CAN節(jié)點(diǎn)
CAN總線節(jié)點(diǎn)硬件部分由CAN控制器、CAN收發(fā)器和單片機(jī)組成,其接口電路圖如圖3所示。CAN節(jié)點(diǎn)的主要作用是把從FIFO存儲(chǔ)器中的數(shù)據(jù)通過CAN總線傳輸?shù)街醒肟刂颇K中。
CAN控制器選用的Microchip 公司的MCP2510,該芯片支持CAN2.0A/B協(xié)議。具有SPI接口,3個(gè)發(fā)送緩沖器和2個(gè)接收緩沖器,可對(duì)其優(yōu)先權(quán)進(jìn)行編程,具有6個(gè)接收濾波器和2個(gè)接收濾波器屏蔽,采用低功耗CMOS技術(shù),其電壓工作范圍為3.0-5.5V。有效電流為5mA,維持電流為10uA。CAN收發(fā)器選用的是82C250,該芯片是CAN協(xié)議控制器和物理介質(zhì)之間的接口。82C250可以為總線提供不同的發(fā)送性能,為CAN控制器提供不同的接受性能,而且它與IS011898標(biāo)準(zhǔn)完全兼容。
圖3 CAN總線硬件電路
在本系統(tǒng)中,CAN控制器MCP2510的中斷引腳INT與MCU的中斷引腳直接相連,這樣能夠在數(shù)據(jù)發(fā)送、數(shù)據(jù)接收以及總線報(bào)錯(cuò)時(shí)即使產(chǎn)生中斷,交由單片機(jī)進(jìn)行處理。為了增強(qiáng)CAN總線節(jié)點(diǎn)的抗干擾能力,建議增加高速光耦,這樣就很好的實(shí)現(xiàn)了電氣隔離。
4.軟件設(shè)計(jì)
4.1 AD轉(zhuǎn)換
本系統(tǒng)采用有限狀態(tài)機(jī)完成A/D轉(zhuǎn)換和FIFO中的數(shù)據(jù)存儲(chǔ),如圖4所示。在狀態(tài)S0處,在時(shí)鐘上升沿對(duì)信號(hào)采樣;在狀態(tài)S1處,把采樣輸出的同步信號(hào)作為FIFO的寫入信號(hào)。
CPLD接受到A/D芯片傳輸?shù)?位二進(jìn)制數(shù),轉(zhuǎn)換成電壓數(shù)字量。A/D芯片的參考電壓為5V,而且8位A/D芯片的最大輸出為255,這樣A/D轉(zhuǎn)換的最小輸出單位大約為0.02V,所以可近似地將A/D輸出的8位二進(jìn)制數(shù)乘以2,即得到要得到的3位電壓值,圖5所示為在MAX+PLUS II中的仿真結(jié)果。
圖4 采樣控制狀態(tài)機(jī)
圖5 AD仿真
4.2 CAN節(jié)點(diǎn)
CAN節(jié)點(diǎn)接口程序設(shè)計(jì)的實(shí)質(zhì)就是對(duì)控制器MCP2510初始化和收發(fā)中斷處理等操作。由于該芯片是SPI通訊方式,故主要編寫SPI程序,即可對(duì)其進(jìn)行配置和使用:
SPI接口程序:
MOV R4,#8; "置循環(huán)次數(shù)
WRIT1:CLR SCK;
NOP;
RLC A;
MOV SI,C;
NOP;
SETB SCK;
NOP;
DJNZ R4,WRIT1;
RET;
SPI接口讀子程序:
READ: "CLR ACC;
CLR C;
MOV R4,#8;
READ1: CLR SCK;
NOP;
MOV C,SO;
RLC A;
SETB SCK;
NOP;
DJNZ R4,READ1;
RET
5.結(jié)論
本文提出了CAN總線為基礎(chǔ),代替?zhèn)鹘y(tǒng)的RS485,對(duì)煤礦行業(yè)的一些系統(tǒng)進(jìn)行了整合,解決了煤礦行業(yè)布線復(fù)雜,耗材損耗過重問題,并對(duì)這些設(shè)備的聯(lián)網(wǎng)做出了模擬分析。但是由于煤礦井下的復(fù)雜程度,勢(shì)必會(huì)造成網(wǎng)絡(luò)的多變性,該方法在井下的實(shí)際應(yīng)用,還有待進(jìn)一步的研究。
參考文獻(xiàn)
[1]趙偉霞,李喻奎.18位高精密△-∑A/D轉(zhuǎn)換器MCP3421及其應(yīng)用[J].單片機(jī)及嵌入式系統(tǒng)應(yīng)用,2007(8).
[2]李婷.CAN總線綜述[J].數(shù)字技術(shù)與應(yīng)用,2010(4).