您的位置:電子發燒友網 > 電子技術應用 > 電源管理 > 開關電源 >
基于CAN的電源控制系統設計(2)
2012年05月16日 09:55 來源:互聯網 作者:秩名 我要評論(0)
4 通信協議及軟件實現
在系統中,上位機給下位機發送運行定值以及起停信號,并且會定時查詢各單機的運行狀況以對其狀態進行相應的調整。
具體通信過程分為2類:
(1)上位機向下位機傳送操作命令及定值,上位機發送的是數據幀。
上位機發送完數據幀后,若下位機收到該數據幀則向上位機發送確認幀,該數據幀發送結束。若發送失敗,上位機在等待一段時間后未接收到確認幀,則自動重發該數據幀。
(2)上位機對下位機的運行狀態及各種記錄定值進行查詢,上位機發送的是遠程幀。
遠程幀中只包含有數據類型而沒有數據內容,下位機接到遠程幀后,根據上位機要求的數據類型向上位機傳送數據。同時等待上位機的確認幀。若未接收到確認幀則定時重發。
在該系統中,以標準幀進行通信,即采用11位的標識符。其各位的定義如下:
ID0~ID4:節點標識,5位的節點標識可使網絡能容納32個節點。
ID5~ID7:數據類型,需要傳送的數據種類比較多,上傳的數據幀規定了7種類型(包括確認幀),與此對應下傳的遠程幀有6種類型,而下傳的數據幀則有6種類型。需要至少3位標識符來確定數據類型。
ID8~ID10:幀計數,數據量最大的數據類型包含有17字的數據,而每幀最多能傳4字,故該類型數據至少需要5幀才能傳完。需對數據幀進行計數以對傳送數據具體類型進行確定,故至少需要3位標識符來進行確定幀計數。
由于LF2407有專門的CAN模塊中斷,且在CAN控制模塊中設計了專門的CAN中斷標志及屏蔽寄存器,可以十分方便地采用中斷的方式來啟動CAN控制器進行數據的接收與發送。
在進行CAN控制器的設置時,需要先對改變數據請求位CCR進行使能,并在改變后進行復原。值得注意的是,TMS320LF2407中有很多寄存器位是需要通過寫“1”來實現清“0”的,還有些位是只能讀不能用程序直接改寫的,例如:對郵箱中斷(包括接收和發送)的標志位MIFn(0~5),在進入中斷響應后應將其清除,但該位是只讀位,用戶程序只有寫1到TCR寄存器的TAn位(對發送郵箱)和寫1到RCR寄存器的RMPn位(對接受郵箱)才可達到清位目的。
5 實現的功能
通過該通信系統實現的功能包括:定值傳送(從上位機傳到下位機的數據幀):
(1)對時:具體到時分秒的數據。
(2)運行定值的傳輸:包括閃絡參數(閃絡系數KSP,給定火花率SPARK_NUM)、充電參數(給定峰值Up,上升率RISE-NUM,充電時限Ton-max)、放電參數(平均電壓Vg,平均電流Ig,放電時間極限Toff-max)。
(3)保護定值:包括開路參數(電壓,電流,延時)、短路參數(電壓,電流,延時)、欠壓電壓、延時、過載電流、偏勵磁、IGBT溫度、油溫等。
(4)通道參數:包括一次電流、輸出電壓電流、IGBT溫度、油溫、輸入電流(三相)、直流電壓。
運行定值查詢(上位機發出遠程幀):包括系統狀態、故障記錄、運行定值、保護定值、通道系數等。
6 結 語
本系統已經過調試,在我們初制成的單對單系統(上位機帶1臺控制系統)中,能抗除強干擾,在較大傳輸數據量的情況下正常工作。