近年來(lái),嵌入式技術(shù)發(fā)展極為迅速,出現(xiàn)了以單片機(jī)、專用嵌入式ARM為核心的高集成度處理器,并在通信、自動(dòng)化、電力電子等領(lǐng)域得到了廣泛應(yīng)用。電源行業(yè)也開始采用內(nèi)部集成資源豐富的嵌入式控制器來(lái)構(gòu)成大型開關(guān)電源的控制系統(tǒng)。將SAMSUNC公司的嵌入式ARM處理器S3C4480芯片,應(yīng)用到開關(guān)電源的控制系統(tǒng)的設(shè)計(jì)中,采用C語(yǔ)言和少量匯編語(yǔ)言,就可以實(shí)現(xiàn)一種以嵌入式ARM處理器為核心、具有智能PID控制器以及觸摸屏、液晶顯示器等功能的開關(guān)電源控制系統(tǒng)。
系統(tǒng)硬件架構(gòu)
隨著數(shù)字電路和半導(dǎo)體工藝日趨完善成熟,數(shù)字信號(hào)、數(shù)字電路在應(yīng)用中所占比例越來(lái)越大,同時(shí)顯現(xiàn)出越來(lái)越多的優(yōu)點(diǎn):便于計(jì)算機(jī)處理控制、減小信號(hào)的干擾、提高抗干擾能力、便于調(diào)試,也便于自診斷、容錯(cuò)等技術(shù)的植入。隨著嵌入式處理器主頻的提升,片內(nèi)控制功能的增強(qiáng),PWM波形頻率與精度的進(jìn)一步提高,使得電源控制系統(tǒng)的集成度與精度得以提高。
本電源對(duì)輸出的電壓電流信號(hào)進(jìn)行采樣,進(jìn)行PID控制,最后輸出PWM驅(qū)動(dòng)波形調(diào)節(jié)輸出電壓。輸出電壓通過(guò)對(duì)大容量鉭電容充放電,給負(fù)載提供穩(wěn)定的高電壓大電流輸出,供工廠進(jìn)行電鍍使用。電源的控制系統(tǒng)硬件架構(gòu)如圖1所示。
電源輸入到開關(guān)電源整流模塊,經(jīng)整流濾波后輸出平穩(wěn)的直流電壓。該直流電壓直接輸出至IGBT模塊。高精度AD轉(zhuǎn)換器將后端輸出的電壓電流信號(hào)由模擬信號(hào)量變?yōu)閿?shù)字量供給S3C4480進(jìn)行數(shù)字PlD運(yùn)算,經(jīng)過(guò)PID控制運(yùn)算后,由S3C4480輸出PWM至IGBT從而構(gòu)成一個(gè)閉環(huán)系統(tǒng),控制電壓電流穩(wěn)定輸出,從而實(shí)現(xiàn)開關(guān)電源控制系對(duì)于PID運(yùn)算和PWM波輸出模塊,要求較高。通過(guò)計(jì)算和考查,我們選取了,SAMSUNC公司的S3C4480,這是一款32位基于ARM7TDtMI架構(gòu)的CPU,擁有高達(dá)59MIPS的運(yùn)算速度,其具體功能特性如下:
運(yùn)算速度高達(dá)59MIPS,完全滿足復(fù)雜PID控制器運(yùn)算的實(shí)時(shí)性要求;16位的定時(shí)器,可實(shí)現(xiàn)精度高達(dá)0.03μs的PWM脈沖波,并且有防死區(qū)(DEADZONE)功能;外部中斷源多達(dá)8個(gè),可以對(duì)系統(tǒng)外部故障信息進(jìn)行實(shí)時(shí)響應(yīng);內(nèi)部嵌入了LCD)控制器,并擁有DMA通道,使得電壓電流值可以實(shí)時(shí)顯示在LCD上;多達(dá)71個(gè)通用10口線,可以方便地?cái)U(kuò)展外部接口;內(nèi)嵌的lIC接口控制器可以將系統(tǒng)信息保存在EEPROM中,為系統(tǒng)操作員提供參考;內(nèi)部的看門狗功能可使系統(tǒng)在軟件或硬件出錯(cuò)的情況下自動(dòng)復(fù)位,保證了系統(tǒng)的安全正常運(yùn)行;2個(gè)異步串行接口(UART)可以方便地實(shí)現(xiàn)和上位機(jī)的通信;外擴(kuò)的大容量存儲(chǔ)器為軟件提供j,充足的空間。
首先系統(tǒng)采用觸摸屏和LCD作為人機(jī)接口。S3C4480內(nèi)部集成了LCD控制器,可支持高達(dá)320×240分辨率,256色sTN—LCD),并通過(guò)DMA通道與CPU相連,可以快速動(dòng)態(tài)地顯示彩色圖形,替代了廠家傳統(tǒng)的5l系列單片機(jī)與LED數(shù) 碼管組成的人機(jī)接口,使工人操作更加方便。S3C44BO外部GPIO接口,町以提供多種外部信號(hào)如表1所列。8個(gè)外部中斷,滿足對(duì)過(guò)流,過(guò)壓,缺相,超 溫等特殊情況的即時(shí)停機(jī)響應(yīng)。S3C44BO帶有外部存儲(chǔ)器接口,通過(guò)外擴(kuò)FLAsHSST39VF160和SDRAMHY641620保證了本數(shù)字控制 系統(tǒng)有足夠的空間保存和運(yùn)行程序。由于設(shè)計(jì)精度要求千分之一,未選用S3C4480片內(nèi)IOBIT—ADC,而是選用了AD7705這款雙通道、 168IT△一∑的ADC,并通過(guò)SIO同步端口與CPU連接。 AD7705的配置可見(jiàn)參考文獻(xiàn)[7],這里不再說(shuō)明。
采樣控制理論中有一個(gè)重要結(jié)論:沖量相等而形狀不同的窄脈沖加在慣性環(huán)節(jié)上時(shí),其效果基本相同。PWM控制技術(shù)就是以該結(jié)論為理論基礎(chǔ),對(duì)半導(dǎo)體開關(guān)器件的導(dǎo)通和關(guān)斷進(jìn)行控制,使輸出端得到一系列幅值相等而寬度不相等的脈沖,用這些脈沖列來(lái)代替正弦波或其他所需要的波形,并按照一定的規(guī)則對(duì)各個(gè)脈沖的寬度進(jìn)行調(diào)制。
在本系統(tǒng)中,PWM波形由中央處理器S3C4480的時(shí)鐘TIMER0 輸出口T0UTO輸出。由于要求輸出頻率30kHz的PWM波,且精度在千分之一,所以通過(guò)設(shè)置TCFGO和TCFGl寄存器的設(shè)置,將4BIT分頻器設(shè) 置為O.5,預(yù)定標(biāo)寄存器設(shè)置為l,計(jì)數(shù)比較寄存器TCNTB0設(shè)置為1000,這樣,在S3C4480主頻于66MHz時(shí),TOUT0輸出的PWM波頻 率為30kHz。當(dāng)TIMER0 開始計(jì)時(shí)后,每次TCNTB0的值與定時(shí)器的向下計(jì)數(shù)器值相同時(shí),定時(shí)器控制PWM波電平改變。使得修改TC-NTB0的值可以控制PWM波的占空比,增 加或者減少1,則PWM輸出占空比增加或者減少千分之一,從而達(dá)到千分之一精度。圖2為輸出的PWM波形圖,我們可以看出,通過(guò)專用的定時(shí)器輸出口 TOUTO輸出的PWM波形,波形很好,經(jīng)過(guò)測(cè)試,上升沿與下降沿均在ns級(jí)。PID算法與軟件流程
3.1主程序軟件流程
由于采用了嵌入式ARM芯片,使得在系統(tǒng)軟件實(shí)現(xiàn)中主要以C語(yǔ)言進(jìn)行驅(qū)動(dòng)和應(yīng)用程序的開發(fā),僅在CPU初始化階段使用ARM匯編語(yǔ)言。使用 ARMS3C4480芯片外擴(kuò)了 2MFLASH,8MSDRAM大容量存儲(chǔ)器,完全滿足了系統(tǒng)程序運(yùn)行和數(shù)據(jù)的存儲(chǔ),這樣充分發(fā)揮了S3C4480 ARM嵌入式系統(tǒng)存 儲(chǔ)器容量大,軟件編程簡(jiǎn)單,速度快,精度高的優(yōu)勢(shì)。數(shù)字控制系統(tǒng)軟件流程如圖3所示。在系統(tǒng)開機(jī)后,首先要檢測(cè)系統(tǒng)外圍設(shè)備的狀態(tài)是否正常,以免出現(xiàn)故 障。在系統(tǒng)運(yùn)行中,為了防止軟件跑飛,還需要開啟看門狗功能,加入喂狗程序,這樣軟件上保證系統(tǒng)的可靠性和穩(wěn)定性。在ADC部分對(duì)采樣值進(jìn)行均值濾波,保 證采樣值的正確與穩(wěn)定。
3.2PID控制算法
在自動(dòng)控制技術(shù)中,應(yīng)用最為廣泛的調(diào)節(jié)器控制規(guī)律為比例(P)、積分(I)、微分(D)控制,簡(jiǎn)稱PID控制,又稱Pm調(diào)節(jié)。其原理的關(guān)鍵是測(cè)量、比較和執(zhí)行。PID控制器將測(cè)量受控對(duì)象(在本系統(tǒng)中即電壓電流值)與設(shè)定值相比較,用這個(gè)誤差來(lái)調(diào)節(jié)系統(tǒng)的響應(yīng)。
在電源數(shù)字PID控制系統(tǒng)中,使用比例環(huán)節(jié)控制電壓電流的輸出與輸入誤差信號(hào)成比例改變,但是實(shí)際值與給定值通常會(huì)存在偏差,這個(gè)偏差稱作穩(wěn)態(tài)誤差。因 此,需要引入積分環(huán)節(jié)的消除穩(wěn)態(tài)誤差功能提高精度,但是考慮到電源系統(tǒng)開機(jī)、關(guān)機(jī)或大幅增加電壓電流工作設(shè)定值時(shí),產(chǎn)生積分積累,就會(huì)引起電壓電流超調(diào), 甚至在給定值上下振蕩。所以為減小在運(yùn)行過(guò)程中積分環(huán)節(jié)對(duì)電壓電流動(dòng)態(tài)性能的影響,采用了積分分離PID控制電壓電流,即當(dāng)電壓電流與設(shè)定工作值的誤差小 于一個(gè)范圍時(shí),再采用積分環(huán)節(jié)去消除系統(tǒng)比例環(huán)節(jié)產(chǎn)生的穩(wěn)態(tài)誤差。
積分分離PID控制算法需設(shè)定積分分離閥ε,當(dāng) le(k)│>ε時(shí),即偏差值較大時(shí),僅采用PD控制環(huán)節(jié),減少超調(diào)量,使系統(tǒng)有較快響應(yīng);當(dāng)le(k)l≤ε時(shí),即偏差值比較小時(shí),采用PID 控制,以保證電壓電流精度和穩(wěn)定度。在開機(jī)后,按照固定步長(zhǎng)打開PWM波寬度,使得電壓升高。在達(dá)到設(shè)定值一定范圍后,為防止電壓過(guò)沖,需要加入積分分離 PID控制算法進(jìn)行控制,防止電壓超調(diào)。在電壓達(dá)到千分之一進(jìn)度范圍后,需要加入積分環(huán)節(jié),完成電源開機(jī)時(shí)迅速穩(wěn)定的輸出。PID算法流程如圖3所示。
結(jié)論
該系統(tǒng)經(jīng)現(xiàn)場(chǎng)調(diào)試證明,設(shè)計(jì)合理、運(yùn)行可靠,為廠家實(shí)現(xiàn)了51系列8位單片機(jī)到ARM32位系統(tǒng)的升級(jí),降低了成本并提高了產(chǎn)品的性能。