竇 垚,江海河
(1.安徽建筑大學機械與電氣工程學院,安徽合肥 230009;2.中國科學院合肥物質科學研究院健康與醫學技術研究所,安徽合肥 230031)
常規的開發半導體激光器電源控制系統的流程主要是單線式流程[1],根據設計要求,軟硬件各自制定設計方案。若軟硬件聯調過程中出現錯誤,彼此又回到所設計的部分重新測試與驗證,造成開發過程中軟硬件關聯性不強。最為重要的問題是,設計要求的變更以及設計參數模糊化導致代碼的復雜度和規模倍增[2-3]。為此,提出一種V字模式開發方法代替人工編程開發控制系統,主要包括系統定義、結構設計、快速原型、自動生成代碼、軟硬件在環測試、功能測試、現場測試七個環節[4]。根據需求進行結構設計搭建模型,后面任一環節出現問題都可以在模型基礎上修改,不需要軟硬件分別測試,大幅度地提高了工作效率[5-6]。近年來,隨著電控系統技術的快速發展,這種基于模型設計開發控制系統的方法逐步得到使用和推廣,特別是在汽車制造[7]、太陽能光伏、航空航天等領域[8-9]。
對系統進行分析,設計環路控制,建立Simulink模型,對環路控制部分進行軟硬件在環測試。測試通過后配置代碼生成模型,生成代碼經過編譯后,燒錄進處理器中進行實驗。控制系統開發流程分為4個步驟:
步驟1:設計環路控制,搭建Simulink 仿真模型,完成控制算法和被控對象的建模,并進行實時仿真。
步驟2:對控制算法模塊進行SIL/PIL 測試,驗證對控制算法模塊使用Simulink 工具自動生成代碼的可運行性。SIL(Software in the Loop)測試是在PC端測試生成代碼的可運行性。PIL(Processor in the Loop)測試是在實際目標處理器上運行代碼進行測試,驗證生成的代碼在目標處理器上的可運行性。
步驟3:配置代碼生成模型,最終面向的是DSP28335 芯片,需要配置ADC 模塊接口及EPWM模塊輸出。生成的代碼經CCS 編譯后燒錄進目標芯片中去,脫離Simulink軟件。
步驟4:連接處理器與硬件電路板,通過示波器觀察輸出,完成實驗。
環路控制的核心在于補償網絡的設計,補償網絡的選取直接影響整個電源系統的輸出精度和動態特性,因此需要設計合適的補償網絡。設計的電源控制電路在前級輸入在12~15 V 之間,后級輸出范圍為4~6 V,采用電壓電流雙閉環補償網絡。
2.1.1 電流內環補償網絡設計
電流內環控制對象為主電路,采用單極點-單零點補償網絡對電流內環進行補償。單極點-單零點補償網絡的傳遞函數為
式中:Kc為電流補償網絡最大增益;Wz為低頻零點;Wp為高頻極點。對于降壓主電路,其系統穿越頻率,其中fs為開關頻率100 kHz,D為最小占空比0.27,故其穿越頻率fc=58.98 kHz。低頻零點根據加入補償后的開環傳遞函數bode 圖進行調整,最終選取為14 kHz,高頻極點設置為開關頻率100 kHz。代入參數得到電流內環補償網絡傳遞函數Gc為
加入電流內環補償網絡后的系統開環傳遞函數T為
2.1.2 電壓外環補償網絡設計
設計電壓外環時,其被控對象變成了加入補償網絡后的整體閉環。由于整體閉環存在兩個零點,三個極點,故電壓外環補償網絡選取為雙極點-雙零點補償網絡。雙極點-雙零點補償網絡的傳遞函數為
式中:Gv為電壓補償網絡傳遞函數;Kv為電壓補償網絡最大增益;wz1、wz2為補償網絡傳遞函數零點;wp1、wp2為補償網絡傳遞函數極點。根據設計要求,可計算得出電壓外環補償網絡的零極點:①=15.6 Hz,抵消負載極點;②加入電流內環補償網絡后計算系統閉環傳遞函數得出其零點為10086kHz、13.88kHz,極點為40.453 kHz、19.095 kKz,其中10 086 kHz 遠大于100 kHz,忽略其影響并舍去,且40.453 kHz為一對共軛復根,故wz2=19.095 kHz;③=4.7 kHz,抵消ESR零點;④wp2設置在開關頻率處為100 kHz。此時系統開環傳遞函數Tw為
在Simulink搭建的模型補償網絡部分使用的是連續模塊搭建,對于模型設計來說,需要對其進行離散化。在離散化傳遞函數的方法中,雙線性變換法相對于其他離散化方法來說離散化后的bode圖與未離散化的bode圖更為接近。因此采用離散化法為雙線性變換法。
將控制模塊部分與主電路模塊部分分開各自創建子系統模塊,如圖1。在Simulink 工具里選擇模型離散化器(modle discretizer),對控制算法模塊使用雙線性變換法進行離散化。

圖1 離散化控制算法模塊圖
圖2 為對離散化后的控制算法模塊進行基礎設置生成的軟件在環測試SIL 模塊與原系統連接的整體模型。軟件在環測試(SIL)的屬性設置為求解器選擇Fixed-step(定步長)與discrete(no continuous states)(離散(無連續狀態))。其次是硬件實現部分,在做軟件在環測試時不需要連接硬件,因此硬件部分選擇None。系統目標文件選擇Ert.tlc,tlc 文件可以直接控制代碼自動生成過程。驗證部分啟用可移植字長,生成SIL模塊。

圖2 軟件在環測試整體系統圖
采樣電路的輸出電壓及電感電流作為環路控制的輸入,同時給定電壓值,穩定輸出值。軟件在環測試的目的是為了驗證離散化后的控制算法模塊能否生成代碼并成功在電腦上運行。通過基礎設置生成SIL 模塊,用控制算法模塊模塊輸出減去SIL 模塊輸出,測試結果為零,證明兩部分模塊同輸入同輸出,軟件在環測試通過。
硬件在環測試(PIL)的使用的芯片為DSP 28335選擇F2833x 系列。其次是通訊模塊設置,選擇SCIA通訊,通過RS232通訊線連接處理器與計算機。驗證部分,生成PIL模塊。
如圖3,連接控制算法模塊與PIL 模塊,通過RS232通訊線與計算機交互信息,也就是采樣的輸出電壓和電感電流,在輸出端做減法。觀察到最終示波器輸出為零,產生波動是因為目標芯片周圍元器件的影響,波動范圍在-0.000 008~0.000 008 s 屬正常范圍,即硬件在環測試通過。

圖3 硬件在環測試整體系統圖
通過軟硬件在環測試后,驗證了的代碼的可靠性和可運行性。由于最終面向的是DSP28335,需要對底層進行基礎設置。代碼配置模型如圖4,通過配置ADC 模塊和EPWM 模塊生成完整代碼,其邏輯為ADC 開始采樣,結束采樣,觸發采樣結束中斷,進入中斷服務函數。PWM 函數運行,計數器=周期值(CTR=PRD),觸發ADC-A 模塊的開始轉換事件,ADC 又開始采樣,如此循環,最終穩定輸出值。

圖4 配置代碼生成模型圖
ADC 模塊設置選擇A 模塊,轉換模式設為順序采樣信號。Start of conversion(轉換開始),設置為ePWMxA,由用戶定義的PWM 事件觸發。Sample time:指定待轉換信號的采樣間隔時間,設置為-1,從上游模塊繼承采樣時間。勾選Post interrupt at the end of conversion—在采樣結束時觸發中斷(回到上一步中的PIE中斷)。
EPWM 模塊設置選擇使用epwm5,以時鐘周期確定計時器周期值。點開PWM 模塊(Event Trigger),勾選使能PWM 模塊 在計數器=周期值(CTR=PRD)對ADC-A 模塊開始轉換事件(通過設置First event,第一事件/第二事件/第三事件,可以排列ADC采樣事件觸發順序)。
對配置好的代碼模型使用Simulink工具生成代碼,燒錄進處理器中去,連接硬件電路板。通過示波器觀察負載輸出電壓。設置為6 V,實際實驗中受到周圍元器件影響實際輸出結果為6.04 V,如圖5,電壓紋波穩定在40 mV以內,證明了配置后自動生成的完整代碼經CCS編譯后在處理器中成功運行,且能夠對輸出進行控制,驗證了基于模型設計開發半導體激光器電源控制系統的方案代替傳統人工編程開發的可行性。

圖5 CCS編譯代碼實驗輸出結果圖
在搭建的Simulink 與CCS 聯合開發環境中設計了半導體激光器電源控制系統,并對其設計開發過程進行了詳細的闡述。借助于Matlab/Simulink 快速、高地的搭建模型,過程中出現錯誤只需對模型進行修改,不需要對代碼進行更改,極大地縮短了開發周期,通過基于模型設計的方法完成了對半導體激光器的電源控制系統的開發,驗證了模型設計方法開發的可行性,同時相較于傳統編程式開發電源控制系統的優越性。