基于單片機的光伏正弦波逆變電源
3 串行通信
為了增強系統適應不同環境的能力,有必要對系統進行監控監測及對參數進行修改調節,本系統采用串行通信技術同外界鍵盤監控系統進行通信。程序上采用查詢方式,周期性地向外界發送檢測的數據,檢測的數據包括太陽電池電壓、充電電流、蓄電池電壓、直流側電流、輸出電壓、輸出電流、散熱器溫度等,當發生故障時優先發送故障信號,當需要修改參數時就接收數據并修改相應參數,并使用校驗和校驗的方法檢驗數據通信的準確性。硬件采用MAXIM公司的MAX485作為接口芯片使其工作于半雙工模式,同時本系統采用光耦隔離的辦法以增強系統抗干擾能力,提高可靠性。
4 系統的軟件設計
本系統軟件采用模塊化設計,包括初始化模塊、保護模塊、調節器模塊、通信模塊、中斷程序模塊等,除中斷模塊外其余模塊都放在主程序中進行,主程序框圖見圖4。
圖4 主程序流程圖
初始化模塊主要完成系統的初始化、各變量單元、各寄存器單元賦初值。
保護模塊根據電壓電流采樣值進行故障判斷,并在故障發生時封鎖PWM的輸出。保護包括蓄電池欠壓、蓄電池過壓、系統過載、過熱保護等,其中蓄電池欠壓、過壓保護能夠實現自恢復,即在檢測到蓄電池電壓又恢復正常時,系統重新軟啟動并恢復正常工作。過流保護由于需要快速反應故采用硬件保護,當過流發生時就立即封鎖全部PWM輸出,也立即封鎖全部驅動電路,只有重新復位時才能恢復工作,軟件可判斷出是否發生過流保護。
調節器模塊完成對系統輸出電壓穩壓的PI調節,使輸出電壓穩定在220V,同時軟啟動也放在其中。其入口參數為軟啟動輸出,出口參數M送到中斷模塊中參與PWM脈寬的計算。通過實時調節該參數的值就能改變脈寬值從而使輸出跟隨給定。
中斷程序模塊完成SPWM波形的發出、交流電壓、交流電流參數的采樣。中斷的入口參數為PI調節器的輸出參數M,該參數參與脈寬的計算即PVALX(H:L)值的計算,從而改變了占空比也即調節了輸出電壓。按照SPWM的規則2采樣的方法,結合初始化中對PWMMC的設定得脈寬的實時計算公式為
正半周期:
PVALX(H:L)=PMOD(H:L)/2+M×SIN(PTR)
負半周期:
PVALX(H:L)=PMOD(H:L)/2-M×SIN(PTR)
其中PTR為正弦表指針,SIN(PTR)為對應PTR指針的正弦值。
評論