LabVIEW FPGA番外篇:實(shí)驗(yàn)69-基于FPGA生成多路中心對(duì)齊的PWM輸出

????????本節(jié)實(shí)驗(yàn)教會(huì)大家如果使用LabVIEW編寫(xiě)下位機(jī)FPGA程序使其產(chǎn)生多路中心對(duì)齊的PWM輸出。注意,這里不是產(chǎn)生帶死區(qū)的互補(bǔ)PWM,而是產(chǎn)生中心對(duì)齊的PWM輸出。關(guān)于帶死區(qū)時(shí)間的FPGA PWM互補(bǔ)輸出可以參考《LabVIEW FPGA開(kāi)發(fā)寶典》第49個(gè)實(shí)驗(yàn)。
????????一般情況下,生成中心對(duì)齊的PWM互補(bǔ)輸出,常用于運(yùn)動(dòng)控制應(yīng)用。例如,在FET或IGBT這類(lèi)H橋里面,使用中心對(duì)齊的PWM意味著開(kāi)關(guān)狀態(tài)切換的頻率是使用正常PWM信號(hào)時(shí)的一半。這就減少了開(kāi)關(guān)的磨損,也減少了FET或IGBT產(chǎn)生的熱量,還能改善系統(tǒng)的動(dòng)態(tài)特性。
????????本節(jié)實(shí)驗(yàn)我們使用LabVIEW直接對(duì)黑金FPGA開(kāi)發(fā)板(比如Spartan6、ARTIX7、KINTEX7)進(jìn)行編程,輸出3路中心對(duì)齊的PWM波出來(lái),用戶(hù)可以直接在FPGA程序前面板上對(duì)生成的PWM周期頻率和占空比進(jìn)行動(dòng)態(tài)修改。
????????圖1顯示的是基于FPGA兩種不同方式(單周期定時(shí)循環(huán)和普通while循環(huán))實(shí)現(xiàn)的多路中心對(duì)齊PWM項(xiàng)目瀏覽器;圖2是基于FPGA產(chǎn)生多路中心對(duì)齊的PWM程序前面板;圖3是基于單周期定時(shí)循環(huán)實(shí)現(xiàn)的多路中心對(duì)齊PWM程序框圖;圖4是基于普通while循環(huán)實(shí)現(xiàn)的多路中心對(duì)齊PWM程序框圖;圖5是基于FPGA在線仿真運(yùn)行時(shí)的實(shí)際效果圖。

(單周期定時(shí)循環(huán)SCTL和普通while循環(huán))



