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