通過CAN模塊和PIC30系列芯片實現(xiàn)船舶電站控制系統(tǒng)的設(shè)計
引言
船舶電站一般由燃油發(fā)動機、發(fā)電機、主配電屏組成,如圖 1所示,每個組成部分有各自的輸入輸出信號,傳統(tǒng)的控制方式是將各自的輸入或輸出連接到對應(yīng)的控制器,由對應(yīng)的控制器實現(xiàn)單臺設(shè)備的控制,如電網(wǎng)檢測到負(fù)載較大時,自動產(chǎn)生一個備用發(fā)電機起動信號,備用的發(fā)動機控制器接受到該信號后自動起動,延時并建立電壓后,由自動并車裝置控制將該臺發(fā)電機并入電網(wǎng)運行,運行過程中由負(fù)載分配裝置進(jìn)行負(fù)載的自動調(diào)節(jié),如果電網(wǎng)負(fù)載較小時,經(jīng)過負(fù)載平衡分配后,每臺發(fā)電機的負(fù)載過小,系統(tǒng)將會自動卸載一臺原來備用的發(fā)電機,待脫離電網(wǎng)運行延時后自動熄火并回到備用狀態(tài),實現(xiàn)電站的自動解列。
1. CAN總線與船舶電站
隨著航運事業(yè)的發(fā)展和船舶電站的要求提高,總線技術(shù)逐漸在船舶控制技術(shù)中使用,分布式系統(tǒng)在新設(shè)計系統(tǒng)中漸漸成為主角。其中控制器局域網(wǎng)(Controller Area Network,CAN)模塊是一個串行接口,可用于與其他外設(shè)或者單片機之間進(jìn)行通信,此接口/協(xié)議是針對允許在噪聲環(huán)境下通信而設(shè)計的。本文以CAN總線為基礎(chǔ),結(jié)合單片微機(MCU)技術(shù),
將船舶電站中的三臺發(fā)動機、三臺發(fā)電機、三個主配電屏構(gòu)成的供電電站系統(tǒng)實現(xiàn)無人自動控制并可實現(xiàn)遠(yuǎn)程監(jiān)控。
CAN具有幾個重要的特點:一是總線協(xié)議完全開放,從相關(guān) CAN芯片或 MCU中可以直接得到相關(guān)的控制字及寄存器,只要對相關(guān)的寄存器進(jìn)行有效的設(shè)置,CAN總線模塊能自動地進(jìn)行通訊,MCU可以直接通過讀或?qū)懱幚?CAN通訊的信息;二是 CAN為底層協(xié)議,用戶完全可以在此基礎(chǔ)上進(jìn)行用戶自定制的高層協(xié)議;三是該總線有成熟的市場使用,有可靠的抗干擾特性。所以在船舶控制系統(tǒng)中也越來越多地使用CAN 總線。
船舶電站按控制功能可以分成如下幾個部分:
1) 發(fā)動機的起動、停止控制
2) 發(fā)電機的電壓控制和無功分配控制
3) 發(fā)電機的信號檢測及保護(hù)控制
4) 發(fā)電機自動并車控制
5) 發(fā)電機的電能管理控制
上述控制各有對應(yīng)的傳感器,信號變送器和執(zhí)行控制器與之相配,本系統(tǒng)將各環(huán)節(jié)或組成部分用帶 CAN總線的單片微機來實現(xiàn),系統(tǒng)結(jié)構(gòu)具體如圖 2所示,系統(tǒng)分為三層,昀高一層是一個電網(wǎng)的電能管理控制器( PMU), 檢測電網(wǎng)的用電情況,并根據(jù)情況向中間一層對應(yīng)的控制器發(fā)送起動或停止信號,或發(fā)出負(fù)荷增減信號,中間一層是每臺發(fā)電機所需要的控制器,根據(jù)需要調(diào)節(jié)控制各自的電量信號,如電壓或電流等,昀低一層是傳感器和執(zhí)行器層,由一個或幾個傳感器或執(zhí)行器構(gòu)成一個 CAN總線的單元,所有的組成均掛在一個 CAN總線網(wǎng)上,為保證系統(tǒng)可靠,物理上每個單元帶雙 CAN接口,整個網(wǎng)絡(luò)構(gòu)成兩個 CAN網(wǎng)絡(luò),即 CAN 總線實現(xiàn)冗余控制,理論上,任意一個控制器均可控制任意一個傳感器或執(zhí)行器,即可實現(xiàn)控制器的冗余控制,實際上是將三臺發(fā)電機對應(yīng)功能的控制器做成相互冗余,不同性質(zhì)的控制器不做冗余,但是昀高一級的控制器( PMU)內(nèi)帶中間以及所有控制器的功能,可以實現(xiàn)向下冗余控制。
開關(guān)量輸入變送器 1是檢測燃油發(fā)動機的一些基本信號并將其轉(zhuǎn)換成CAN 總線接口信號,這些基本信號包括:冷卻水壓力,滑油溫度,油底殼油位,發(fā)動機備用狀態(tài),發(fā)動機自動控制位置,燃油壓力,起動空氣壓力等;CAN總線 2是整個系統(tǒng)通訊的網(wǎng)絡(luò)總線,圖示為一條總線,實際為保證系統(tǒng)可靠,使用兩條總線方式,每個單元均帶 2個總線接口,實現(xiàn)雙總線冗余;起停輸出執(zhí)行器 3是帶 CAN接口的繼電器輸出,去控制發(fā)動機的起動、停止和緊急停止電磁閥;發(fā)動機起動停止及保護(hù)控制器 4是控制發(fā)動機運行或停止的控制核心,一方面接受控制按鈕等信號,一方面接受 CAN總線的信號,并根據(jù)這些命令信號去控制發(fā)動機;加減輸出執(zhí)行器 5是帶CAN總線的繼電器輸出控制器,并帶本地手動輸出,其作用是控制發(fā)動機內(nèi)調(diào)速器的輸入,起到調(diào)節(jié)速度或負(fù)載的目的;燃油發(fā)動機 6根據(jù)起動或停止電磁閥控制運行,根據(jù)調(diào)速器來調(diào)節(jié)運行速度或輸出功率;轉(zhuǎn)速等模擬輸入變送器 7是檢測發(fā)動機的速度,冷卻水溫度,滑油壓力,排氣溫度等一些重要參數(shù)的傳感器并將信號轉(zhuǎn)換為 CAN總線接口的信號;電站電能管理控制器 8是整個控制系統(tǒng)的調(diào)度控制單元,檢測電網(wǎng)和每臺發(fā)動機的狀態(tài),實現(xiàn)調(diào)頻調(diào)載的自動控制,或?qū)崿F(xiàn)自動起動,或控制自動卸載解列;調(diào)壓執(zhí)行器9是帶CAN總線控制的相復(fù)勵自動調(diào)壓控制器,根據(jù) CAN總線來的命令或自帶的調(diào)節(jié)旋鈕信號調(diào)節(jié)其旁路可控硅的觸發(fā)角,從而實現(xiàn)發(fā)動機的調(diào)壓控制;發(fā)電機 10接受 9的勵磁調(diào)節(jié),由原動機 6帶動輸出電能給配電裝置;自動調(diào)壓及無功控制器 11根據(jù)發(fā)電機的電壓,電流信號,同時需要判斷其無功功率和功率因素值,來調(diào)節(jié)其輸出給單元9,實現(xiàn)電壓恒定及無功分配均衡;電壓電流信號輸入變送器 12是檢測本發(fā)電機輸出的電壓和電流信號以及兩者之間的相位差,計算出需要使用的功率值,無功功率值,功率因素值等電量,并轉(zhuǎn)換為數(shù)字信號通過 CAN接口提供給需要的其他環(huán)節(jié);主開關(guān)保護(hù)控制器 13主要實現(xiàn)發(fā)電機的過電流、欠電壓、逆功率的保護(hù),其輸入信號由環(huán)節(jié) 12提供,主開關(guān)及配電屏狀態(tài)信號作為輔助信號輸入,其控制的是主開關(guān)的分?jǐn)嗫刂?;屏上按鈕等輸入變送器 14是將配電屏上的按鈕等所有操作信號轉(zhuǎn)換為標(biāo)準(zhǔn)的CAN 接口信號并提供給 CAN網(wǎng)絡(luò)上的有關(guān)環(huán)節(jié)使用;主配電屏15是含主開關(guān),有關(guān)繼電回路,有關(guān)設(shè)備安裝其內(nèi)部的配電裝置;主開關(guān)并車控制器 16將檢測本發(fā)電機和電網(wǎng)之間的電量差別,通過調(diào)節(jié)本發(fā)電機實現(xiàn)兩者的同步并自動并車;主開關(guān)合閘/分閘執(zhí)行器 17是帶 CAN接口的繼電器輸出環(huán)節(jié),其與主開關(guān)配套,實現(xiàn)主開關(guān)的儲能,合閘或分閘的控制;供電母線 18是船舶電站三臺發(fā)電機供電的電網(wǎng),所有外部用電設(shè)備均經(jīng)過本電網(wǎng)供電。 [page]
2. 帶 CAN總線接口的 MCU單元
從圖2可以看出,控制系統(tǒng)相關(guān)環(huán)節(jié)均需要配有CAN總線接口,包括傳感器信號輸入和控制輸出,其中有些信號變送環(huán)節(jié)還需要經(jīng)過計算和分析,基本上帶CAN總線的單元均需要配單片微型計算機MCU,通過MCU采集需要的信號或輸出控制信號,由MCU和CAN實現(xiàn)總線接口,為方便該功能的實現(xiàn),選擇帶CAN總線接口的MCU,本系統(tǒng)使用MICROCHIP公司的PIC30系列的控制芯片來實現(xiàn),其內(nèi)置CAN模塊主要特性如下:
? 實現(xiàn)CAN協(xié)議:CAN 1.2、CAN 2.0A和CAN 2.0B
? 標(biāo)準(zhǔn)和擴展的數(shù)據(jù)幀
? 數(shù)據(jù)長度為0 到8 字節(jié)
? 可編程比特率達(dá)到1 Mb/s
? 支持遠(yuǎn)程數(shù)據(jù)幀
? 雙緩沖的接收器,帶兩個區(qū)分優(yōu)先級的接收報文存儲緩沖器
根據(jù)上述具備 CAN通訊接口的 MCU特性描述,結(jié)合使用場合,配以相關(guān)的電路可以實現(xiàn)帶雙 CAN接口的多種多樣的變送器和執(zhí)行器,MCU采用 dsPIC30f5011,內(nèi)置兩路 CAN接口。MCU與 CAN接口電路如圖 3所示,C1Tx是 1號 CAN總線的發(fā)送信號,C1Rx是 1號 CAN總線的接受信號,C2Tx是 2號 CAN總線的發(fā)送信號,C2Tx是 2號 CAN總線的接受信號,外圍開關(guān)量可以實現(xiàn)昀大 48路輸入或輸出,模擬量昀大可以實現(xiàn) 16路輸入。MCU與外圍采用高速芯片 6N137進(jìn)行光電隔離 , CAN總線收發(fā)器采用標(biāo)準(zhǔn)的 PCA82C250,其輸出為差分信號,定義為 CANH和 CANL一對,采用雙絞線方式掛在整個系統(tǒng) CAN總線網(wǎng)絡(luò)上。CANH 和 CANL之間并聯(lián)小電容可以起到濾除總線上的高頻干擾和一定的防電磁輻射的能力,另外,在 CAN 總線的終端處的兩根線 CANH 和 CANL間還并聯(lián)一個 120歐姆的電阻,以消除信號的反射。
MCU內(nèi)具備強大功能, 16位 CPU,程序存儲器達(dá) 66K,4K RAM,1K EEPROM,16 ×16bit工作寄存器,昀高時鐘可以使用 10M晶振倍頻 16倍,所以一般應(yīng)用場合均能適應(yīng),由于自帶 DSP核心,對要求快速響應(yīng)的數(shù)據(jù)處理也能勝任,一般不需要擴展即可滿足需要,具體需要實現(xiàn)的信號輸入輸出,只要配以合適的外圍接口電路即可實現(xiàn);需要實現(xiàn)的控制功能也可編程實現(xiàn)。在本系統(tǒng)中除電站電能管理控制器要求比較復(fù)雜,需要進(jìn)一步增強系統(tǒng)配置外,其它控制器和信號接口或變送器等均使用上述電路實現(xiàn),帶 CAN接口的變送器或執(zhí)行器一端如圖 3所示實現(xiàn) CAN總線接口,另一端配以 MCU對應(yīng)的外圍電路,可實現(xiàn)帶CAN總線的不同功能的輸入輸出。具體如下:
2.1 帶 CAN總線的常用信號變送器
常用的信號分為開關(guān)量輸入, 0-5V,4-20mA,熱電阻,熱電偶等,其中開關(guān)量信號輸入采用光耦隔離輸入,模擬量輸入采用高性能的儀表運算放大器構(gòu)成,熱電阻,熱電偶等均采用標(biāo)準(zhǔn)的信號調(diào)理電路,所以對 MCU而言,輸入的均為標(biāo)準(zhǔn)的0-5V信號,對應(yīng)傳感器的昀大量程。經(jīng)信號調(diào)理后的 16路模擬量輸入接到 MCU的RB0-15,即可實現(xiàn) MCU對該 16路模擬量輸入的采樣。開關(guān)量輸入信號變送器將輸入信號隔離后送到 MCU的PORTB-G口,昀大可以實現(xiàn) 48個輸入,除使用光耦隔離電路外中間不需要其它電路。
2.2 帶 CAN總線的編碼信號變送器
正交脈沖編碼輸入,有A,B正交的2相輸入,即相位上相差90度,其昀到頻率可達(dá)20KHz。由于頻率較高,光電隔離應(yīng)采用高速光耦來采樣,可以使用 MCU的信號捕捉接口 RD8—11來實現(xiàn) 2組 4個正交脈沖編碼輸入,配置 MCU相應(yīng)的寄存器可實現(xiàn)正交脈沖編碼的計數(shù)和正負(fù)判斷。
2.3 帶 CAN總線的電量信號變送器
電量信號的采樣需要采集電壓和電流信號并轉(zhuǎn)換成有效值,調(diào)理成 MCU需要的0-5V信號,同時需要正弦-方波的轉(zhuǎn)換,送到 MCU的中斷接口處,便于相位計算。電壓信號的調(diào)理電路如圖 4所示,電流型電壓互感器將取樣電壓信號轉(zhuǎn)換成 mA電流信號經(jīng)運放 U2放大成電壓信號,經(jīng) U1A比較電路取得交流電壓過零方波的檢測信號,供頻率轉(zhuǎn)換和相位計算用,運放 U1B,U1C電路構(gòu)成整流電路,U1D電路為濾波電路,其輸出為 MCU需要的0-5V電壓信號。電壓信號采樣考慮到變化幅度有限,選擇 1.5倍額定電壓對應(yīng) MCU昀大輸入5V,而電流信號變化比較大,特別是大電機起動時,電流可以達(dá)到其額定電流6-8倍,電流的保護(hù)控制也需要能有效地實現(xiàn)8-10倍的保護(hù)控制,所以同一個電流的采樣分成三個等級來實現(xiàn),一是 2倍額定電流對應(yīng) MCU對答輸入5V,一是 4倍額定電流對應(yīng) MCU的 5V輸入,另一是 10倍額定電流對應(yīng) 5V輸入。電路原理與圖 4所示類似,這樣,一臺發(fā)電機輸出的三相電壓和電流的采樣要用到 12個模擬量輸入,3個電壓過零中斷輸入,3個電流過零中斷輸入。根據(jù)上述信號 MCU將不僅得到相應(yīng)的電壓值、電流值,還要計算出相位差,功率因素,有功功率,無功功率,視在功率,有功電能統(tǒng)計等,同時需要根據(jù)額定值確定是否有過電壓、欠電壓、長延時過電流、短延時過電流、瞬時過電流,逆功率等故障信號,所以本電量變送器含多重功能。
2.4帶 CAN總線的執(zhí)行器
MCU的 I/O口可以配置為輸出,根據(jù)需要將相應(yīng)的 I/O配置成輸出后,接到光電耦合單元,其輸出再經(jīng)過三極管驅(qū)動繼電器實現(xiàn)繼電器的輸出。執(zhí)行器的控制為其控制電源經(jīng)過繼電器的觸點后送到執(zhí)行器上,控制其正反運轉(zhuǎn)實現(xiàn)相應(yīng)的調(diào)節(jié),或控制電磁閥回路的通斷等。在一些特殊場合,MCU的輸出可經(jīng)過光電耦合后再經(jīng)三極管驅(qū)動MOSFET,實現(xiàn) PWM的調(diào)節(jié)控制,或有關(guān)的執(zhí)行器件的動作調(diào)節(jié)。
3. 帶CAN總線接口的各種控制器
帶 CAN總線的控制器 CAN接口與上述 MCU的相同,在控制器中,輸入輸出不是主要的,主要的是 MCU的運算能力,存儲能力,控制能力,顯示驅(qū)動等,所以考慮使用的 MCU為 PIC系列中較為高端的MCU,其硬件電路也大同小異,除與圖 3使用 CAN接口電路相同外,另外為配合需要使用了一些帶I 2C的擴展電路,如EEPROM,時鐘電路等,如圖5所示,其中SCL,SDA為 MCU中自帶的 I 2C的接口,定義為時鐘線和數(shù)據(jù)線,A0,A1,A2為相同器件同時使用時的選擇信號,由 MCU控制,U3為時鐘芯片DS1307,與為時鐘源晶振,24C08為I 2C接口的EEPROM。如需要其他功能,可以在原來I 2C總線接口電路上再擴展。在此硬件基礎(chǔ)上,通過 CAN接受總線上的信息,各控制器按其需要的功能編制相應(yīng)的軟件,并將相應(yīng)的輸出信號通過 CAN發(fā)送到對應(yīng)的輸出 CAN接口模塊去??刂破靼淳唧w位置和功能分成發(fā)動機控制器、自動調(diào)壓及無功調(diào)節(jié)控制器、配電保護(hù)控制器、同步并車控制器、電能管理控制器等。
4.冗余控制技術(shù)
除主要的電能管理控制器 PMU外,設(shè)計的其他幾個控制器的硬件電路接近,實現(xiàn)的功能不同,但是可以通過軟件實現(xiàn)相互間的控制冗余,所以在實際設(shè)計中,每個控制器內(nèi)設(shè)計成兩套控制程序,正常情況下,一套本身主要的程序在工作,另一套作為其它控制器的備用在讀取 CAN總線上的數(shù)據(jù),但是備用的程序不作輸出動作。當(dāng)系統(tǒng)中某控制器故障出現(xiàn)時,CAN總線網(wǎng)絡(luò)上無該控制器正常工作的心跳信號后,作為它備用的控制器將其備用的程序喚醒工作并輸出,以替代故障的控制器,同時在工作的控制器上出現(xiàn)相應(yīng)的顯示。系統(tǒng)設(shè)計中各控制相互冗余備用的關(guān)系如表 1所示,其中電能管理控制器可以作為其他控制器的備用。
除控制器具備的冗余外,前述 CAN總線均采用雙 CAN接口,實際線路也是對應(yīng)的雙 CAN網(wǎng)絡(luò),其中一個 CAN總線出現(xiàn)故障后,系統(tǒng)可以自動啟用備用 CAN網(wǎng)絡(luò),從而實現(xiàn) CAN總線的冗余控制。
5. 結(jié)論
船舶電站控制系統(tǒng)采用分布式結(jié)構(gòu) , 硬件設(shè)計標(biāo)準(zhǔn)化,軟件設(shè)計模塊化,使整個系統(tǒng)設(shè)計組合較為靈活,這種設(shè)計方法對于其他項目的研制也具有一定參考價值。系統(tǒng)實際運行效果良好,工作可靠,說明 CAN總線技術(shù)在船舶電站中的使用是成功的,并可推廣使用。
本文創(chuàng)新點:昀初開發(fā)的 CAN協(xié)議被運用于汽車制造領(lǐng)域,現(xiàn)把 CAN技術(shù)移植到船舶電站的控制方面,實現(xiàn)了船舶電站的無人操縱、過程自動控制及遠(yuǎn)程監(jiān)控,提高了船舶自動化程度,改善了系統(tǒng)性能。