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