當(dāng)前中小功率電源還是模擬控制為主,但是隨著數(shù)字化的發(fā)展,主控MCU性價(jià)比越來(lái)越高,電源控制的數(shù)字化是今后的趨勢(shì)。很多工程師覺(jué)得電源的數(shù)字化控制高大上,模擬控制都還沒(méi)弄的明白,就進(jìn)入數(shù)字化覺(jué)得比較困難。其實(shí)電源的數(shù)字化并沒(méi)有那么遙不可及,大家可以參考本人寫(xiě)的專題《基于MCHP 16bit dspic33系列全數(shù)字控制同步Buck入門》系列文章,其實(shí)非常的容易。數(shù)字化的核心就是將模擬連續(xù)信號(hào)離散化,通過(guò)ADC外設(shè)完成模擬信號(hào)的采樣,然后在MCU內(nèi)部全部完成環(huán)路的控制,并實(shí)時(shí)的更新PWM外設(shè)去控制主功率拓?fù)涞哪芰哭D(zhuǎn)換,區(qū)別在于模擬控制在s域,數(shù)字控制在z域。
要想實(shí)現(xiàn)一個(gè)最基本的功率拓?fù)洌瑑纱笸庠O(shè)必不可少,一個(gè)是PWM外設(shè),一個(gè)是ADC模塊。PWM外設(shè)完成對(duì)占空比/周期/移相等調(diào)制波的變換,ADC模塊完成外部模擬信號(hào)(電壓/電流等)的采樣并轉(zhuǎn)換。因?yàn)楸緦n}主要是實(shí)現(xiàn)方式,所以不涉及ADC模塊,講重點(diǎn)介紹PWM實(shí)現(xiàn)功率拓?fù)涞姆绞健?/p>
本專題主要采用MCC(MPLAB Code Configuration )實(shí)現(xiàn),下面將進(jìn)行PWM外設(shè)工作最基本的配置介紹,后續(xù)章節(jié)的PWM實(shí)現(xiàn)均在這個(gè)基礎(chǔ)上進(jìn)行。關(guān)于MPLAB X IDE如何下載以及安裝MCC,請(qǐng)查看附件。
Microchip最新一代的dsPIC33C系列專門用于電源和電機(jī)的控制,單核c系列多達(dá)8對(duì)HRPWM,雙核CH系列有(8+4)對(duì)HRPWM,高精度模式下分辨率達(dá)到了250ps,每個(gè)PGx模塊下有4個(gè)PCI模塊(PWM Control Input),使得PWM非常的靈活方便實(shí)現(xiàn)各種功率拓?fù)淇刂品绞揭约氨Wo(hù)功能。
下面介紹PWM模塊MCC配置方法及如何使用。
1.系統(tǒng)時(shí)鐘的配置(System Clock Selection)
一般如果外部使用8MHz晶振,選擇Primary Oscillator模式。
主振蕩器和內(nèi)部FRC振蕩器源可選擇使用片上PLL(主內(nèi)核鎖相環(huán))來(lái)獲取更高的工作速度,比如主頻100MIPS(每?jī)蓚€(gè)時(shí)鐘周期執(zhí)行一條指令,故時(shí)鐘頻率為200MHz)。
dsPIC33C器件系列為每個(gè)內(nèi)核實(shí)現(xiàn)了一個(gè)附屬PLL模塊。附屬PLL模塊用來(lái)生成獨(dú)立于系統(tǒng)時(shí)鐘的各種外設(shè)時(shí)鐘源,比如給PWM模塊提供500MHz時(shí)鐘源就是來(lái)自于此。如下:
至此時(shí)鐘配置完畢。
2.配置仿真口,取決于你自己的選擇(PGD1/PGD2/PGD3),在這里我選擇PGD2仿真口。
3.配置PWM外設(shè)
- PWM Clock Setting
如果要使能高精度模式,必須選擇500MHz時(shí)鐘源,否則下面的高精度模式無(wú)法選擇。
Select Required PWM Generators有PG1~PG8供選擇(根據(jù)不同型號(hào)PGx數(shù)量不一致),可以根據(jù)自己需要進(jìn)行配置。
- PWM Master Settings
- PWM工作模式
PWM模塊支持多種PWM模式,適用于電機(jī)控制和電源設(shè)計(jì),主要支持以下PWM模式:
2.PWM輸出模式
每個(gè)PWM發(fā)生器都可以編程為三種輸出模式之一,以控制PWMxH和PWMxL引腳的行為。輸出模式選擇與PWM模式無(wú)關(guān)。輸出模式包括:
- PWM Freqence Settings
工作頻率/占空比/相移可以根據(jù)自己選擇,因?yàn)槊總€(gè)PG模塊都是一個(gè)單獨(dú)的個(gè)體,所以可以有自己的工作頻率/占空比/相移,可以選擇Use Master Period/Duty Cycle讓不同個(gè)PG模塊使用同一個(gè)參數(shù)。
- Trigger Control Settings
PWM發(fā)生器操做基于觸發(fā)信號(hào)。PWM發(fā)生器必須接收到周期開(kāi)始(SOC)觸發(fā)信號(hào)才能產(chǎn)生各個(gè)PWM周期。觸發(fā)信號(hào)可以在PWM發(fā)生器外部產(chǎn)生,PWM發(fā)生器也可以自觸發(fā)。當(dāng)PWM發(fā)生器到達(dá)PWM周期末尾時(shí),它會(huì)產(chǎn)生一個(gè)周期結(jié)束(End-of-Cycle, EOC)觸發(fā)信號(hào),該觸發(fā)信號(hào)可供其他PWM發(fā)生器使用。
SOC(Start-of-Cycle) trigger sources有下面一些:
- Local SOC
- Othet's PG's ECO
- Other PG's Trigger
- Comparator
- CLC
- I/O Pins
- Software trigger
- PCI Sync(Always OR'd with other SOC signal)
Start of cycle trigger 選項(xiàng)要注意:PG1-PG8分為兩組,PG1-PG4之間相互觸發(fā)同步,PG5-PG8之間相互觸發(fā)同步,也就是說(shuō)PG1不能作為PG5-PG8的觸發(fā)源。但是可以通過(guò)PCI模塊進(jìn)行每個(gè)PG模塊之間的同步。
- ADC Trigger
- Dead Time and Override Settings
在互補(bǔ)輸出模式下的死區(qū)時(shí)間設(shè)置,PWM H/L Overirde為軟件改寫(xiě)。
- Data Update Settings
為進(jìn)行數(shù)據(jù)寄存器更新,PWM周期長(zhǎng)度可變。PWM周期可包含一個(gè)、兩個(gè)或四個(gè)定時(shí)器周期,具體取決于PWM工作模式和所選輸出模式。請(qǐng)求SOC更新后,PWM數(shù)據(jù)寄存器可在下一個(gè)、下兩個(gè)或四個(gè)定時(shí)器周期進(jìn)行更新(由PWM工作模式和輸出模式?jīng)Q定,詳見(jiàn)FRM)。下表總結(jié)了每次SOC更新之間相隔的定時(shí)器周期數(shù)與PWM發(fā)生器工作模式和輸出模式之間的關(guān)系。
更多的功能配置請(qǐng)參考數(shù)據(jù)手冊(cè)在寄存器頁(yè)進(jìn)行配置。
后續(xù)各種功能的實(shí)現(xiàn)均在這個(gè)配置下進(jìn)行,敬請(qǐng)關(guān)注。