基于DSP56F805的可并機逆變電源設計

根據無功功率的大小和本機的特性參數,設定無功功率允許窗口,利用查表方法投入適當的電容組合,達到補償的目的。
4.2 軟件模塊結構
本系統軟件采用模塊化設計,根據任務可分為7個模塊:系統初始化模塊、數字正弦信號產生及輸出穩定模塊、補償模塊、并機均流模塊、故障檢測處理模塊、顯示模塊、通信模塊。其流程如圖6所示。
圖6 軟件模塊框圖
4.2.1 系統初始化模塊
系統初始化模塊包括:中斷及優先權設置、PWM設置、定時設置、A/D設置、通用輸入輸出口設置、通信口設置等。系統初始化模塊是DSP工作的開始,程序放在DSP_ init()子程序及appcofig.h程序中。
4.2.2 數字正弦信號產生及輸出穩定模塊
數字正弦信號產生及輸出穩定模塊,又分為信號采樣及處理模塊、輸出穩定模塊、PWM重加載中斷服務模塊等3個子模塊。
其中信號采樣及處理模塊又分為:A/D采樣,有功功率計算,無功功率計算,功率因數計算,輸出電壓有效值計算,輸出電流有效值計算等。
輸出信號穩定模塊主要任務是根據給定的標準信號(輸出220V)和輸出的反饋信號之差采用模糊算法,以最快的速度把輸出電壓調整到標準值。
PWM重加載中斷優先級最高。為保證以最快的速度完成PWM重加載工作,此程序采用匯編語言,利用DSP56F805的快速16位數的乘法,在約3μs內完成重加載的計算工作。
4.2.3 補償模塊
逆變器在帶感性負載時,一方面功率因數降低,降低了逆變器的有功功率,另一方面滯后的電流會給逆變器帶來危害。補償模塊的作用是在帶感性負載時,用投入適當電容的方法對感性負載進行補償。根據信號采樣模塊計算出無功功率Q和本機最大允許無功功率ΔQ,采用模糊算法以最快的速度把無功功率調整到允許范圍內。
4.2.4 并機均流模塊
并機均流模塊是為多單元并聯輸出時用的。它不僅保證各單元輸出電壓的幅度、頻率、相位一致,而且還要求各單元的輸出負載均流。通過CAN總線對參與并機的各單元電流進行分析、計算,使本單元電流為總電流的1/N,達到均流的目的。
定時鎖相電路用來檢測相位和頻率,使數字正弦信號產生器輸出的相位和頻率一致。
4.2.5 故障檢測處理模塊
故障檢測處理模塊分別對輸入電壓太高或太低、輸出電壓太高或太低、輸出過載,PWM電路故障、機內溫度、開關管狀態進行檢測。對所檢測的故障分為兩類分別進行不同情況處理:對于非致命性故障采用故障顯示及報警;對于致命性故障除采用故障顯示及報警外,還關閉PWM工作以防進一步損害其它器件。
4.2.6 顯示模塊
顯示模塊是用來顯示逆變電源的工作狀態和參數,顯示的參數主要有Vin、Iin、Vout、Iout、Pout、θ等。由于采用16X2的LCD,每次只能顯示Vout及另一個參數,通過循環按動S2鍵可顯示其它參數。
4.2.7 通信模塊
通信模塊是獨立于其它模塊單獨工作的,通過CAN總線管理進行多單元通信工作。各并聯運行的單元之間,采用數據包的方式進行通信。數據包中包含有一個數據包標志及若干個數據塊。每個數據中又包含了參與并聯單元的標識號、輸出電流值等信息。通信模塊就是負責管理數據包的發送和接收工作,它是獨立工作的。它和并機均流模塊采用通信的方式傳送數據,并機均流模塊計算出本機的輸出電流后把它放在緩沖區內,并通知通信模塊發送信號,當通信模塊收到并機均流模塊的發送信號后,等到數據包到達本機后,本機狀態加入數據包中并發送出去,同時也向并機均流模塊發送有效數據包信號。并機均流模塊收到通信模塊發送來的信號后就到緩沖區中取走數據。
本系統采用Motorola公司的MSCAN軟件進行CAN通信軟件的編程,方便快捷。
4.3 主程序清單
主程序框圖見圖7,主程序清單如下:
main ( )
{
Dsp_init ( ) ; /* 系 統 初 始 化 * /
adc_tans ( ) ; /* 輸 入 電 壓 采 樣 * /
chech_VI _ IAI_TT( ); /* 檢 查 輸 入 電 壓 是 否 合 適 * /
while ( 1 )
{
if ( PWMA_INT_F!=0 ) /* 是 否 有 PWM重 加 載 中 斷 到 來 * /
{
adc_trans ( ) ; /* 把 A/D采 樣 結 果 送 入 相 應 緩 沖 區 * /
bace_hot_protect( ); /* 送 出 脈 沖 調 寬 波 形 到 PWMA4 * /
if(OP_FLAG!=0 ) /* 判 斷 是 否 過 零 * /
{
phase_Output_U2_Change ( ) ; /* 橋 式 開 關 倒 相 * /
Move_Buffers ( ) ; /* 將 第 一 級 緩 沖 區 內 容 轉 存 到 第 二 級 緩 沖 區 * /
Multiple_count ( ); /* 計 算 有 功 功 率 P, 視 在 功 率 S、 電 壓 有 效 值 、 電 流 有 效 值 * /
If ( STRAT_FLAG = 0 ) /* 是 否 剛 開 機 * /
{
Narmal_V2_corr_kh ( ); /* 正 常 計 算 脈 寬 * /
}
else
{
Start_V2_corr_kk ( ); /* 慢 起 動 , 計 算 脈 寬 * /
}
count_IACP ( ) ; /* 均 流 計 算 * /
count_power_compensate ( ) ; /* 功 率 因 素 補 償 計 算 * /
check_VI_IAI_TT ( ); /* 檢 測 輸 入 電 壓 是 否 異 常 , 是 否 過 載 , 溫 度 是 否 過 高 * /
}
}
}
}
中 斷 程 序 如 下 :
void PWM_Reload_A_callback ( void ) ; /* PWMA重 加 載 中 斷 , 根 據 相 位 送 出 不 同 指 令 * /
void SX_callback ( void ) ; /* 鎖 相 中 斷 * /
void HSCAN_Callback ( void ) ; /* MSCAN 中 斷 收 發 程 序 * /
圖7 主程序流程圖
4.3 特殊軟件算法說明
本機需要調整的量有:輸出電壓幅度、頻率、相位、功率因數、均流等,所有的算法都采用模糊算法。
輸出電壓調整的輸入變量有電壓偏差E和變化率ΔE,輸出控制量為脈沖寬度Zc,因此對輸入變量
定義了兩個語言:電壓偏差和變化率。電壓偏差其模糊值為5個,即低、較低、中等、較高、高。對于變化率有3個模糊值,即減小、不變和增大。根據以上定義作相應的模糊判決。
功率因數補償的輸入變量為有功功率偏差(即反饋無功功率和允許無功功率之差),其模糊值有3個,即負、正好、過大。其輸出控制量為投入電容的容量,電容的容量組合有8種,可根據有功功率偏差來確定電容的容量組合。
5 實驗結果
我們采用DSP56F805做出2臺逆變電源樣機,試驗結果令人滿意。
圖8為50Hz驅動波形,圖9為100Hz半波波形,圖10、圖11為SPWM波形。
圖8 50Hz驅動波形
圖9 100Hz半波波形
圖10 SPWM調制波形(低頻)
圖11 SPWM調制波形(高頻)
主要技術參數如下:
輸入電壓 DC40~60V
輸出電壓 AC220(1±1%)V
輸出頻率 50Hz±0.001Hz
輸出功率 2000VA
均流偏差 ≤2%
整機效率 ≥89%
6 結語
本文介紹了基于DSP56F805數字化控制的可并機的逆變電源原理,提出了控制信號的產生過程。實驗結果證明了數字化實現的正確性,取得了較好的結果。基于DSP56F805控制的可并機的逆變電源具有實時性好、控制精度高、開發方便和成本低等優點。
評論