基于CAN的電源控制系統(tǒng)設(shè)計(jì)
1 系統(tǒng)總體結(jié)構(gòu)
圖1是該集散電源控制系統(tǒng)的結(jié)構(gòu)示意圖。
其中:CAN0節(jié)點(diǎn)是上位機(jī)。
本系統(tǒng)用的是C51單片機(jī),外接CAN控制器SJA1000,他對(duì)下面多臺(tái)下位機(jī)傳送控制定值,并且在收集下位機(jī)送來數(shù)據(jù)后對(duì)其進(jìn)行分析計(jì)算以改變定值。節(jié)點(diǎn)CAN1~CAN31(最多可有31臺(tái))為各單電源的控制部分,我們采用的是TI公司的TMS320LF2407芯片做主控,其上集成有CAN控制器模塊。
2 LF2407及其集成CAN控制模塊介紹
LF2407是TI公司推出的定點(diǎn)DSP處理器,他采用高性能靜態(tài)CMOS技術(shù),供電電壓為3.3 V,指令周期可達(dá)25 ns,其上集成了包括CAN控制器在內(nèi)的多個(gè)外圍模塊及存儲(chǔ)器,適用于電機(jī)及逆變電路的控制。
CAN控制器模塊是集成于LF2407中的一個(gè)16位外設(shè)模塊。該模塊具有以下特性:
(1)支持CAN2.0B協(xié)議,支持標(biāo)準(zhǔn)標(biāo)識(shí)符(11位)及擴(kuò)展標(biāo)識(shí)符(29位),支持?jǐn)?shù)據(jù)幀與遠(yuǎn)程幀。
(2)配置有6個(gè)郵箱,2個(gè)接收(0,1號(hào)),2個(gè)發(fā)送(4,5號(hào)),2個(gè)可配置(3,4號(hào));每個(gè)郵箱數(shù)據(jù)長(zhǎng)度為8 B。接收郵箱可進(jìn)行標(biāo)識(shí)符屏蔽。當(dāng)標(biāo)識(shí)符位被屏蔽時(shí),在接收數(shù)據(jù)幀時(shí)無須對(duì)該位標(biāo)識(shí)符進(jìn)行校驗(yàn)。
(3)具有可編程的位定時(shí)器、中斷服務(wù)和CAN總線喚醒功能。
(4)能自動(dòng)回復(fù)遠(yuǎn)程請(qǐng)求,當(dāng)發(fā)送錯(cuò)誤或數(shù)據(jù)丟失時(shí),有自動(dòng)重發(fā)功能。
每個(gè)郵箱寄存器包含7個(gè)字的信息,與各功能模塊控制寄存器相類似,LF2407為其分配了固定的數(shù)據(jù)存儲(chǔ)器地址,例如郵箱0,其寄存器分配如下:
MBX0A~D(4個(gè)字的存儲(chǔ)空間)地址:7204~7207其中:標(biāo)識(shí)符(按29位設(shè)置)在MSGIDnH的后13位和MSGIDnL中。
3 硬件電路設(shè)計(jì)及調(diào)試
在設(shè)計(jì)LF2407的CAN通信電路時(shí)應(yīng)注意一個(gè)問題,即2407的供電電壓為3.3 V,其CAN控制模塊輸出的高電平也只有3.3 V,與CAN驅(qū)動(dòng)器PCA80C250電平(5 V)不兼容,在設(shè)計(jì)電路時(shí)加隔離光耦時(shí)要加以注意。圖2所示為下位機(jī)側(cè)的CAN通信原理圖。
由于TX的輸出光耦采用的是射極輸出方式,我們的輸出光耦應(yīng)采用6N136(137由于其結(jié)構(gòu)原因不能滿足要求),圖3是我們進(jìn)行數(shù)據(jù)發(fā)送時(shí)測(cè)試得到的R42兩端的電壓波形(輸出10101010…)
由我們對(duì)CAN通信控制器的位配置寄存器BCR1的設(shè)置可知,每一位數(shù)據(jù)所占的時(shí)間段中,我們的采樣點(diǎn)在70%的時(shí)間點(diǎn),在這一點(diǎn)的輸出電壓必須在額定高低電平的設(shè)定值范圍內(nèi)。我們選定R42=5 kΩ,得到以上波形,滿足采樣點(diǎn)處高電平≥3.5 V,低電平≤1.5 V。
4 通信協(xié)議及軟件實(shí)現(xiàn)
在系統(tǒng)中,上位機(jī)給下位機(jī)發(fā)送運(yùn)行定值以及起停信號(hào),并且會(huì)定時(shí)查詢各單機(jī)的運(yùn)行狀況以對(duì)其狀態(tài)進(jìn)行相應(yīng)的調(diào)整。 具體通信過程分為2類:
(1)上位機(jī)向下位機(jī)傳送操作命令及定值,上位機(jī)發(fā)送的是數(shù)據(jù)幀。
上位機(jī)發(fā)送完數(shù)據(jù)幀后,若下位機(jī)收到該數(shù)據(jù)幀則向上位機(jī)發(fā)送確認(rèn)幀,該數(shù)據(jù)幀發(fā)送結(jié)束。若發(fā)送失敗,上位機(jī)在等待一段時(shí)間后未接收到確認(rèn)幀,則自動(dòng)重發(fā)該數(shù)據(jù)幀。
(2)上位機(jī)對(duì)下位機(jī)的運(yùn)行狀態(tài)及各種記錄定值進(jìn)行查詢,上位機(jī)發(fā)送的是遠(yuǎn)程幀。
遠(yuǎn)程幀中只包含有數(shù)據(jù)類型而沒有數(shù)據(jù)內(nèi)容,下位機(jī)接到遠(yuǎn)程幀后,根據(jù)上位機(jī)要求的數(shù)據(jù)類型向上位機(jī)傳送數(shù)據(jù)。同時(shí)等待上位機(jī)的確認(rèn)幀。若未接收到確認(rèn)幀則定時(shí)重發(fā)。
在該系統(tǒng)中,以標(biāo)準(zhǔn)幀進(jìn)行通信,即采用11位的標(biāo)識(shí)符。其各位的定義如下:
ID0~I(xiàn)D4:節(jié)點(diǎn)標(biāo)識(shí),5位的節(jié)點(diǎn)標(biāo)識(shí)可使網(wǎng)絡(luò)能容納32個(gè)節(jié)點(diǎn)。
ID5~I(xiàn)D7:數(shù)據(jù)類型,需要傳送的數(shù)據(jù)種類比較多,上傳的數(shù)據(jù)幀規(guī)定了7種類型(包括確認(rèn)幀),與此對(duì)應(yīng)下傳的遠(yuǎn)程幀有6種類型,而下傳的數(shù)據(jù)幀則有6種類型。需要至少3位標(biāo)識(shí)符來確定數(shù)據(jù)類型。
ID8~I(xiàn)D10:幀計(jì)數(shù),數(shù)據(jù)量最大的數(shù)據(jù)類型包含有17字的數(shù)據(jù),而每幀最多能傳4字,故該類型數(shù)據(jù)至少需要5幀才能傳完。需對(duì)數(shù)據(jù)幀進(jìn)行計(jì)數(shù)以對(duì)傳送數(shù)據(jù)具體類型進(jìn)行確定,故至少需要3位標(biāo)識(shí)符來進(jìn)行確定幀計(jì)數(shù)。
由于LF2407有專門的CAN模塊中斷,且在CAN控制模塊中設(shè)計(jì)了專門的CAN中斷標(biāo)志及屏蔽寄存器,可以十分方便地采用中斷的方式來啟動(dòng)CAN控制器進(jìn)行數(shù)據(jù)的接收與發(fā)送。
在進(jìn)行CAN控制器的設(shè)置時(shí),需要先對(duì)改變數(shù)據(jù)請(qǐng)求位CCR進(jìn)行使能,并在改變后進(jìn)行復(fù)原。值得注意的是,TMS320LF2407中有很多寄存器位是需要通過寫“1”來實(shí)現(xiàn)清“0”的,還有些位是只能讀不能用程序直接改寫的,例如:對(duì)郵箱中斷(包括接收和發(fā)送)的標(biāo)志位MIFn(0~5),在進(jìn)入中斷響應(yīng)后應(yīng)將其清除,但該位是只讀位,用戶程序只有寫1到TCR寄存器的TAn位(對(duì)發(fā)送郵箱)和寫1到RCR寄存器的RMPn位(對(duì)接受郵箱)才可達(dá)到清位目的。
5 實(shí)現(xiàn)的功能
通過該通信系統(tǒng)實(shí)現(xiàn)的功能包括:定值傳送(從上位機(jī)傳到下位機(jī)的數(shù)據(jù)幀):
(1)對(duì)時(shí):具體到時(shí)分秒的數(shù)據(jù)。
(2)運(yùn)行定值的傳輸:包括閃絡(luò)參數(shù)(閃絡(luò)系數(shù)KSP,給定火花率SPARK_NUM)、充電參數(shù)(給定峰值Up,上升率RISE-NUM,充電時(shí)限Ton-max)、放電參數(shù)(平均電壓Vg,平均電流Ig,放電時(shí)間極限Toff-max)。
(3)保護(hù)定值:包括開路參數(shù)(電壓,電流,延時(shí))、短路參數(shù)(電壓,電流,延時(shí))、欠壓電壓、延時(shí)、過載電流、偏勵(lì)磁、IGBT溫度、油溫等。
(4)通道參數(shù):包括一次電流、輸出電壓電流、IGBT溫度、油溫、輸入電流(三相)、直流電壓。
運(yùn)行定值查詢(上位機(jī)發(fā)出遠(yuǎn)程幀):包括系統(tǒng)狀態(tài)、故障記錄、運(yùn)行定值、保護(hù)定值、通道系數(shù)等。
6 結(jié) 語
本系統(tǒng)已經(jīng)過調(diào)試,在我們初制成的單對(duì)單系統(tǒng)(上位機(jī)帶1臺(tái)控制系統(tǒng))中,能抗除強(qiáng)干擾,在較大傳輸數(shù)據(jù)量的情況下正常工作。
參考文獻(xiàn)
[1] 劉和平.TMS320LF240xDSP結(jié)構(gòu)原理及應(yīng)用[M].北京:航空航天大學(xué)出版社,2002.
[2] 鄔寬明.CAN總線原理和應(yīng)用系統(tǒng)設(shè)計(jì)[M].北京:航空航天大學(xué)出版社,1996. 2001.
評(píng)論