《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 電源技術(shù) > 業(yè)界動(dòng)態(tài) > 基于CAN總線的模塊化并聯(lián)UPS監(jiān)控系統(tǒng)的設(shè)計(jì)

基于CAN總線的模塊化并聯(lián)UPS監(jiān)控系統(tǒng)的設(shè)計(jì)

2008-12-11
作者:陳旭紅1, 單鴻濤1,2,

  摘 要: 介紹了一種實(shí)用并聯(lián)UPS監(jiān)控系統(tǒng)" title="監(jiān)控系統(tǒng)">監(jiān)控系統(tǒng)的設(shè)計(jì),對(duì)于這種基于SJA1000的PeliCAN模式的智能節(jié)點(diǎn)在模塊UPS系統(tǒng)中的設(shè)計(jì)方法" title="設(shè)計(jì)方法">設(shè)計(jì)方法,給出了硬件電路及相關(guān)軟件設(shè)計(jì)方法,該系統(tǒng)的設(shè)計(jì)實(shí)用,對(duì)于研制其他應(yīng)用CAN總線產(chǎn)品具有借鑒意義。
  關(guān)鍵詞: CAN; DSP; 驗(yàn)收濾波器

?

  不間斷電源UPS(Uninterruptible Power Supply)的高可靠性為金融、電信、保險(xiǎn)、交通、稅務(wù)、證券、能源、制造、軍隊(duì)、教育等行業(yè)提供了重要的電源保障,模塊化并聯(lián)UPS系統(tǒng)以其增強(qiáng)的可靠性和靈活的擴(kuò)容能力倍受商家、用戶的青睞。
  本文介紹一款采用分散邏輯控制技術(shù)實(shí)現(xiàn)并聯(lián)冗余控制的模塊化并聯(lián)UPS系統(tǒng),系統(tǒng)原理圖如圖1所示。

?


  該并聯(lián)系統(tǒng)中,每個(gè)模塊UPS各有一套自己獨(dú)立的控制系統(tǒng)(包括PFC、鎖相、逆變、并聯(lián)控制單元等)。其中各模塊UPS之間通過并聯(lián)控制線及CAN總線互聯(lián)。在并聯(lián)控制單元與CAN總線的共同控制下,處于并聯(lián)運(yùn)行狀態(tài)的各模塊UPS電源共同分擔(dān)負(fù)載,實(shí)現(xiàn)負(fù)載的均分。
  CAN(Controller Area Network)是一種成熟的現(xiàn)場(chǎng)總線,其最大特點(diǎn)是對(duì)數(shù)據(jù)通訊塊進(jìn)行編碼,因而可采用多主方式,網(wǎng)絡(luò)上任意節(jié)點(diǎn)均可主動(dòng)向其他節(jié)點(diǎn)發(fā)送信息。網(wǎng)絡(luò)節(jié)點(diǎn)可按系統(tǒng)實(shí)時(shí)性要求分成不同的優(yōu)先級(jí),一旦發(fā)生總線沖突,會(huì)減少總線仲裁的時(shí)間,可實(shí)現(xiàn)在線上網(wǎng)下網(wǎng)、即插即用和多站接收。
  在模塊UPS系統(tǒng)中,各UPS模塊是CAN總線網(wǎng)絡(luò)結(jié)構(gòu)中的下位節(jié)點(diǎn),模塊UPS系統(tǒng)監(jiān)控板視為上位節(jié)點(diǎn)。作為下位節(jié)點(diǎn)的各模塊UPS電源的運(yùn)行參數(shù)通過CAN總線網(wǎng)絡(luò)進(jìn)行高速傳輸,實(shí)現(xiàn)各UPS電源運(yùn)行參數(shù)的高速共享。通過運(yùn)行參數(shù)的高速共享,嵌入各高頻UPS內(nèi)部的中央處理器DSP對(duì)各UPS單機(jī)的運(yùn)行狀態(tài)進(jìn)行實(shí)時(shí)控制。
1 系統(tǒng)的硬件電路設(shè)計(jì)
  該模塊UPS系統(tǒng)采用DSP數(shù)字控制技術(shù),以美國(guó)TI公司的DSP芯片TMS320F240為各節(jié)點(diǎn)主控CPU,選擇常見的獨(dú)立CAN控制器SJA1000以及82C250總線收發(fā)器構(gòu)成各智能節(jié)點(diǎn)電路。SJA1000與DSP分別采用獨(dú)立的20MHz時(shí)鐘源。SJA1000提供的微處理器的接口信號(hào)主要有控制器的數(shù)據(jù)和地址分時(shí)復(fù)用線AD0~AD7共8根地址數(shù)據(jù)線和ALE、、MODE、INT信號(hào),其中MODE為接口方式選擇信號(hào),可選用INTEL方式或MODTOROLA方式,這里選用INTEL方式,MODE=1。而DSP內(nèi)部采用先進(jìn)的哈佛結(jié)構(gòu),地址、數(shù)據(jù)線并行,沒有ALE地址有效信號(hào)。通過對(duì)SJA1000和TMS320F240的時(shí)序分析得出:必須在DSP與SJA1000間附加相應(yīng)的時(shí)序邏輯電路以滿足SJA1000的接口信號(hào)ALE、要求,這里SJA1000選用INTEL方式,MODE=1,按以下邏輯關(guān)系設(shè)計(jì):
  

2 系統(tǒng)的軟件設(shè)計(jì)
  SJA1000有兩種操作模式:BasicCAN模式和PeliCAN模式。BasicCAN模式使得SJA1000向下兼容CAN控制器82C200,對(duì)于BasicCAN僅有單一濾波的方式;PeliCAN模式是新增功能操作模式,在錯(cuò)誤處理、超載能力以及比較靈活的接收濾波等方面性能都有了很大的提高。這里對(duì)PeliCAN模式的驗(yàn)收濾波器" title="驗(yàn)收濾波器">驗(yàn)收濾波器作說明。
2.1 采用PeliCAN模式的濾波器簡(jiǎn)介
  PeliCAN模式的濾波方式有單濾波和雙濾波兩種方式。SJA1000的報(bào)文驗(yàn)收濾波就是指對(duì)接收?qǐng)?bào)文的節(jié)點(diǎn)而言,總線控制器對(duì)CAN總線上的報(bào)文信息如何進(jìn)行選擇接收。此工作由驗(yàn)收濾波器完成,它由驗(yàn)收碼寄存器ACR和驗(yàn)收屏蔽寄存器AMR組成。在本系統(tǒng)中,發(fā)送節(jié)點(diǎn)的主控制器DSP將報(bào)文信息的識(shí)別碼和數(shù)據(jù)送入發(fā)送緩沖區(qū),再啟動(dòng)SJA1000讀取發(fā)送緩沖區(qū)中的數(shù)據(jù),按CAN協(xié)議封裝成一完整的CAN信息幀,通過收發(fā)器82C250發(fā)往總線。發(fā)送報(bào)文節(jié)點(diǎn)的發(fā)送緩沖區(qū)存儲(chǔ)一個(gè)完整的信息幀長(zhǎng)度可達(dá)13B,標(biāo)準(zhǔn)幀格式在發(fā)送緩沖器里配置的列表如圖2所示,其中幀信息主要提供關(guān)于幀格式、遠(yuǎn)程請(qǐng)求、數(shù)據(jù)代碼長(zhǎng)度(可達(dá)8個(gè)字節(jié))等信息;識(shí)別碼(ID)就像報(bào)文的名字一樣使用在驗(yàn)收濾波過程中,標(biāo)準(zhǔn)幀格式的識(shí)別碼有11位(ID.28~I(xiàn)D.18),驗(yàn)收濾波器把接收到報(bào)文的識(shí)別碼和驗(yàn)收代碼寄存器ACR中的值進(jìn)行逐位比較;而接收屏蔽寄存器AMR用來定義識(shí)別碼中哪些位是與比較相關(guān)。所有對(duì)應(yīng)AMR為0 的ACR的位,必須和CAN信息幀的對(duì)應(yīng)位相同才算驗(yàn)收通過,報(bào)文才會(huì)被接收;所有對(duì)應(yīng)AMR 為1的 ACR位,則予以屏蔽,即CAN 信息幀的該位對(duì)驗(yàn)收無任何影響,屬于不相關(guān)位。當(dāng)信息被正確接收完畢, CAN的狀態(tài)寄存器SR的接收緩存器狀態(tài)位被置位;在接收中斷使能時(shí),產(chǎn)生接收中斷。

?


  PeliCAN模式的單濾波方式只有一個(gè)由4個(gè)驗(yàn)收碼寄存器ACR和4個(gè)驗(yàn)收屏蔽寄存器AMR組成的驗(yàn)收濾波器,總線上的信息只有通過了它的驗(yàn)收濾波才予以接收。在雙濾波方式下有兩個(gè)短濾波器(濾波器1、濾波器2)接收信息幀,通過任意一個(gè)濾波器即可予以接收。無論是單濾波還是雙濾波,驗(yàn)收碼寄存器ACR 和驗(yàn)收屏蔽寄存器AMR 都是配合在一起工作。雙濾波方式的驗(yàn)收信息的原理如圖3所示。

?


2.2 采用PeliCAN模式的雙" title="的雙">的雙濾波器的UPS節(jié)點(diǎn)工作原理
  從上節(jié)介紹可知,對(duì)于僅有一種濾波格式的BasicCAN模式和PeliCAN模式下的單濾波方式,要使系統(tǒng)具有既能點(diǎn)對(duì)點(diǎn)、又有點(diǎn)對(duì)多點(diǎn)" title="多點(diǎn)">多點(diǎn)通訊的功能,將會(huì)增加軟件的工作量,系統(tǒng)的實(shí)時(shí)性也會(huì)受影響,而PeliCAN模式下的雙濾波方式,可方便地實(shí)現(xiàn)CAN網(wǎng)絡(luò)內(nèi)的點(diǎn)對(duì)點(diǎn)一般報(bào)文和點(diǎn)對(duì)多點(diǎn)的廣播報(bào)文通訊功能。
  考慮到本系統(tǒng)要求上位監(jiān)控節(jié)點(diǎn)需能對(duì)下位UPS節(jié)點(diǎn)群發(fā)命令,如上位監(jiān)控節(jié)點(diǎn)要求下位各模塊UPS能同時(shí)關(guān)輸出等;同時(shí)上位節(jié)點(diǎn)對(duì)各下位節(jié)點(diǎn)具有群接收數(shù)據(jù)功能,如接收下位各模塊UPS上傳送的運(yùn)行參數(shù);此外,上位節(jié)點(diǎn)還應(yīng)能與諸下位節(jié)點(diǎn)進(jìn)行點(diǎn)對(duì)點(diǎn)的通訊,如發(fā)現(xiàn)下位的某模塊UPS參數(shù)不正常,要求其退出并聯(lián)系統(tǒng),為此,決定采用PeliCAN的雙濾波器工作模式設(shè)計(jì)智能節(jié)點(diǎn)。接收?qǐng)?bào)文為標(biāo)準(zhǔn)幀,其雙濾波器中濾波器1使用的驗(yàn)收碼寄存器和屏蔽寄存器為:ACR0/ACR1 或ACR3 的低四位、AMR0/AMR1 或AMR3的低四位,濾波器2使用的驗(yàn)收碼寄存器和屏蔽寄存器:ACR2 或ACR3 的高四位、AMR2 或AMR3 的高四位,如圖4所示。設(shè)濾波器1與濾波器2使用的驗(yàn)收屏蔽寄存器內(nèi)容相同,報(bào)文識(shí)別碼的ID28~I(xiàn)D18定義如圖4所示。

?


  對(duì)驗(yàn)收屏蔽寄存器AMR內(nèi)為1的位,將其對(duì)應(yīng)的ACR位予以屏蔽。從圖4可知,報(bào)文中ID25~I(xiàn)D23位對(duì)驗(yàn)收屬于相關(guān)位。以模塊UPS總數(shù)為四個(gè)的系統(tǒng)為例,設(shè)置下位節(jié)點(diǎn)模塊:UPS-1的節(jié)點(diǎn)地址為001,UPS-2的節(jié)點(diǎn)地址為010,UPS-3的節(jié)點(diǎn)地址為011,UPS-4的節(jié)點(diǎn)地址為100。按CAN網(wǎng)優(yōu)勢(shì)位仲裁的特點(diǎn),識(shí)別碼的二進(jìn)值越低,在仲裁過程中決定總線訪問的優(yōu)先權(quán)越高,設(shè)置上位監(jiān)控節(jié)點(diǎn)的節(jié)點(diǎn)地址為000,以保證上位監(jiān)控節(jié)點(diǎn)具有高優(yōu)先權(quán)。每個(gè)節(jié)點(diǎn)均有兩個(gè)濾波器,一個(gè)濾波器用于接收點(diǎn)對(duì)點(diǎn)發(fā)送的一般報(bào)文,在此使用濾波器1,在ACR0.4~2存放本節(jié)點(diǎn)的地址;另一個(gè)濾波器為濾波器2,用于接收上位監(jiān)控節(jié)點(diǎn)向CAN網(wǎng)內(nèi)各節(jié)點(diǎn)的廣播報(bào)文, 將其ACR2.4~2內(nèi)存放代碼:111。
  當(dāng)下位模塊UPS-1節(jié)點(diǎn)所收?qǐng)?bào)文的ID25~I(xiàn)D23為001時(shí),即其他節(jié)點(diǎn)將其發(fā)送的目標(biāo)節(jié)點(diǎn)地址設(shè)為001,則下位模塊UPS-1可經(jīng)濾波器1驗(yàn)收通過,以接收系統(tǒng)中其他節(jié)點(diǎn)對(duì)模塊UPS-1的信息;當(dāng)報(bào)文的ID25~I(xiàn)D23為111時(shí),經(jīng)濾波器2驗(yàn)收通過,以接收上位監(jiān)控節(jié)點(diǎn)向各下位節(jié)點(diǎn)的群發(fā)信息,由此設(shè)置即可方便地滿足模塊UPS系統(tǒng)點(diǎn)對(duì)點(diǎn)、點(diǎn)對(duì)多點(diǎn)通訊時(shí)信息過濾的需要。
2.3 程序設(shè)計(jì)
  PeliCAN模式初始化框圖如圖5所示。系統(tǒng)程序設(shè)計(jì)主要包括:初始化、報(bào)文接收、報(bào)文發(fā)送程序。初始化SJA1000必須要在復(fù)位狀態(tài),主要完成濾波器設(shè)置以及時(shí)鐘分頻寄存器CDR、方式寄存器、總線定時(shí)寄存器BTR0和BTR1、輸出控制寄存器OCR、中斷允許寄存器IER等設(shè)置。待完成初始化后,令SJA1000回到工作狀態(tài),進(jìn)行正常的通訊任務(wù)。SJA1000 的報(bào)文緩沖區(qū)中發(fā)送緩沖區(qū)TXB 和接收緩沖區(qū)RXB共用同一段CAN 地址為16~28 共13B。發(fā)送信息時(shí)應(yīng)往此區(qū)域中寫入數(shù)據(jù),而接收時(shí)則從此區(qū)域中讀出數(shù)據(jù)。狀態(tài)寄存器SR提供當(dāng)前SJA1000 的總線狀態(tài)、錯(cuò)誤狀態(tài)、發(fā)送狀態(tài)、接收狀態(tài)等,在編程時(shí)可充分利用這些狀態(tài)信息進(jìn)行相應(yīng)的處理。報(bào)文發(fā)送程序簡(jiǎn)單,只要將發(fā)送的報(bào)文傳送到發(fā)送緩沖器,再將命令寄存器中的“發(fā)送請(qǐng)求”標(biāo)志置位即可。報(bào)文接收程序相對(duì)于報(bào)文發(fā)送程序要復(fù)雜一些,在處理接收的過程中要處理總線脫離、接收溢出等情況。

?


3 實(shí)驗(yàn)結(jié)果及結(jié)論
  本文設(shè)計(jì)思想已應(yīng)用于實(shí)際的六并聯(lián)UPS監(jiān)控系統(tǒng)中,圖6為六臺(tái)UPS并聯(lián)時(shí),當(dāng)上位節(jié)點(diǎn)發(fā)送數(shù)據(jù)請(qǐng)求命令,下位六節(jié)點(diǎn)回送數(shù)據(jù)。從CAN總線上的波形可看出CAN正常通訊。

?


  將基于獨(dú)立的CAN控制器的CAN總線技術(shù)應(yīng)用于基于DSP控制的并聯(lián)UPS監(jiān)控系統(tǒng),實(shí)踐證明是一種成功的應(yīng)用,該并聯(lián)UPS監(jiān)控系統(tǒng)具有抗干擾性強(qiáng)、運(yùn)行穩(wěn)定、成本適中等特點(diǎn)。文中波形來自實(shí)際裝置實(shí)驗(yàn)所測(cè),該設(shè)計(jì)方法具有一定的實(shí)用和推廣價(jià)值。


參考文獻(xiàn)
[1] ?鄔寬明.CAN總線原理和應(yīng)用系統(tǒng)設(shè)計(jì)[M]北京:北京航空航天大學(xué)出版社,1996.
[2] ?SJA1000獨(dú)立CAN 控制器[EB/OL]. 廣州:http://www.zlgmcu.com.
[3] ?SJA1000 獨(dú)立的CAN 控制器應(yīng)用指南[EB/OL]. 廣州:http://www.zlgmcu.com.
[4] ?鄒繼軍,饒運(yùn)濤.CAN總線系統(tǒng)智能節(jié)點(diǎn)設(shè)計(jì)[J]. 單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2001,(12):26-31.
[5] ?廖傳書,李崇. CAN總線控制器與DSP的接口 [J].電子技術(shù)應(yīng)用, 2002,28(11):75-77.

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請(qǐng)及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。