DS80C390雙CAN總線分層分布式監(jiān)控系統(tǒng)的設(shè)計及實現(xiàn)
1 引 言
CAN總線的全稱是ControllerAreaNetworkBus,簡稱控制器局部網(wǎng)總線,它是現(xiàn)場總線的一種,是一種有效支持分布式控制或?qū)崟r控制的串行通信網(wǎng)絡(luò)。CAN網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)采用兩級總線式結(jié)構(gòu),兩級總線之間采用轉(zhuǎn)發(fā)器進(jìn)行連接,這種結(jié)構(gòu)比環(huán)型結(jié)構(gòu)信息吞吐率低,并且無源抽頭連接,通信介質(zhì)用雙絞線,系統(tǒng)可靠性高。經(jīng)過二十年的發(fā)展,CAN總線憑借其卓越的特性、極高的可靠性和獨特的設(shè)計,越來越受到工業(yè)界的重視,并已公認(rèn)為最有前途的現(xiàn)場總線之一。CAN總線具有高可靠性、實時性和靈活性,它的特點如下:(1)方便地構(gòu)成分布式監(jiān)控系統(tǒng),可以多主方式工作,而不分主從,通信方式靈活。(2)通信距離最遠(yuǎn)可達(dá)10km,通信速率最高可達(dá)1Mbpsˆ40m,網(wǎng)絡(luò)上節(jié)點可分成不同的優(yōu)先等級,可以滿足不同的實時要求。(3)每幀信息都有CRC效驗及其他檢錯措施,保證了數(shù)據(jù)的出錯率極低。
本文以美國Dallas公司的內(nèi)部帶2個獨立CAN模塊的DS80C390芯片為核心設(shè)計一種雙CAN總線分層分布式監(jiān)控系統(tǒng),并在電力系統(tǒng)同步靜止補(bǔ)償器(STATCOM)上得到應(yīng)用。
2 智能雙CAN總線節(jié)點
美國Dallas公司的高檔單片機(jī)DS80C390是內(nèi)置雙CAN模塊的嵌入式高速微處理器芯片:每個機(jī)器周期僅包含4個時鐘周期,比8051單片機(jī)快四倍;支持最大晶振頻率為40MHz,單指令周期100ns;與80C52兼容且與8051指令兼容;有4個8位IˆO端口、3個16位定時器、256字節(jié)RAM、4kB內(nèi)部靜態(tài)SRAM、16個中斷源其中有6個外部中斷源;具有雙串行口、雙CAN口和雙數(shù)據(jù)指針。
采用DS80C390單片機(jī)作為核心的智能CAN節(jié)點結(jié)構(gòu)圖如圖1所示。由DS80C390單片機(jī)、8255、A/D轉(zhuǎn)換以及PCA82C250CAN收發(fā)器組成。外部程序存儲器選用Atmel公司的AT49F010芯片,最快讀時間45ns,擦除周期時間10s;數(shù)據(jù)存儲器選用HY628100SOP,該芯片是一種高速CMOS靜態(tài)RAM;AˆD轉(zhuǎn)換器ADS7864是德州儀器(TI)公司Burr-Brown產(chǎn)品部最新推出的快速6通道全差分輸入的雙12位AˆD轉(zhuǎn)換器,它能以500kHz的采樣率同時進(jìn)行六通道信號采樣。時鐘芯片選擇DS12887,可以用來直接代替IBMPC上的時鐘日歷芯片;CAN收發(fā)器接口電路是用PHILIP公司生產(chǎn)的PCA82C250實現(xiàn)電平的轉(zhuǎn)換,以滿足CAN的通信要求,并可以調(diào)整轉(zhuǎn)換速度和防止出現(xiàn)大的干擾,負(fù)責(zé)將總線節(jié)點連接到總線上。
智能雙CAN節(jié)點功能主要包含如下:讀取撥碼開關(guān)的值,并以此數(shù)據(jù)作為ID的一部分,進(jìn)行ID的設(shè)定;啟動AˆD轉(zhuǎn)換,每個轉(zhuǎn)換通道在交流每周波采集1000點,即每20Ls轉(zhuǎn)換一次,數(shù)據(jù)存放在外部數(shù)據(jù)發(fā)送緩沖區(qū)中,當(dāng)上位機(jī)召喚數(shù)據(jù)時,由CAN發(fā)送出去;啟動日歷時鐘,當(dāng)發(fā)生故障時,記錄下故障時間,并產(chǎn)生外部中斷申請ˆINT0或ˆINT1。
3 分層分布式監(jiān)控系統(tǒng)
DS80C390片內(nèi)集成有2個CAN接口模塊,可靠性較高,適合用來實現(xiàn)雙CAN線分層分布式監(jiān)控系統(tǒng)。電力系統(tǒng)靜止同步補(bǔ)償器(STATCOM)分層分布式監(jiān)測系統(tǒng)的電路原理框圖如圖2所示,整個監(jiān)控系統(tǒng)分為調(diào)度層、站控層和間隔層。
3.1 調(diào)度層
調(diào)度層包括上級調(diào)度計算機(jī)和遠(yuǎn)動工作站計算機(jī)等,可以通過調(diào)制解調(diào)器撥號或通過以太網(wǎng)與站控層的中央監(jiān)控計算機(jī)網(wǎng)絡(luò)服務(wù)器進(jìn)行通信。調(diào)度層的監(jiān)視畫面是由站控層的網(wǎng)絡(luò)服務(wù)器發(fā)布的。調(diào)度層是監(jiān)測系統(tǒng)的管理層。
3.2 站控層
站控層包括1臺中央監(jiān)控網(wǎng)絡(luò)服務(wù)器(WebServ2er),WEB服務(wù)器是整個監(jiān)測系統(tǒng)的核心,完成系統(tǒng)的所有監(jiān)測功能并通過網(wǎng)絡(luò)發(fā)布到調(diào)度層。站控層的WEB服務(wù)器包括PC2CAN卡和網(wǎng)卡等,通過PC2CAN卡總線與就地監(jiān)控的CAN節(jié)點通信,完成對裝置進(jìn)行封鎖脈沖和跳閘操作、封鎖故障指示、水冷報警和故障指示以及語音報警等;采集靜止同步補(bǔ)償器的輸出電壓和系統(tǒng)電壓;站控層通過網(wǎng)卡和調(diào)度層的計算機(jī)連網(wǎng)。
3.3 間隔層
間隔層共設(shè)置40個底層監(jiān)測雙CAN節(jié)點(雙CAN單元),每個底層監(jiān)測CAN節(jié)點用跳線設(shè)置本單元號,用數(shù)碼管顯示設(shè)置的單元號。雙CAN節(jié)點連續(xù)進(jìn)行3路模擬量錄波,接收到封鎖或跳閘信號時,繼續(xù)錄波2周期后存儲前后2周期錄波數(shù)據(jù),發(fā)送到站控層的集中監(jiān)控計算機(jī)WEB服務(wù)器。CAN節(jié)點平時定期發(fā)送2周期數(shù)據(jù)及輸入量狀態(tài)到站控層的集中監(jiān)控計算機(jī)WEB服務(wù)器。
4 軟件設(shè)計
單片機(jī)監(jiān)控程序是采用KeilC51開發(fā)的,在KeiluVision7.0上調(diào)試通過。CAN節(jié)點的軟件設(shè)計采用了模塊化的設(shè)計方法,在DS80C390的初始化中,初始化內(nèi)部寄存器,確定存儲器的分配情況。其設(shè)置如下:
SA EQU 1
IDM DQU 2
CMA EQU 1
P4CNT5-3 EQU 100B
P4CNT2-0 EQU 100B
P5CNT3-0 EQU 100B
程序采用中斷方式,各程序初始化后,根據(jù)不同的中斷調(diào)度到相應(yīng)的中斷服務(wù)子程序,在中斷服務(wù)程序中,單片機(jī)將把記錄的信息通過CAN發(fā)送出去,即實現(xiàn)故障錄波功能。系統(tǒng)軟件可利用串口在線升級。
5 結(jié) 論
本文研制了DS80C390雙CAN總線分層分布式監(jiān)控系統(tǒng),并在電力系統(tǒng)靜止同步補(bǔ)償器中應(yīng)用,滿足了電力系統(tǒng)中各控制對象分布廣,實時性要求高的要求,極大地提高了系統(tǒng)的安全性、可靠性和抗干擾性。