<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > SVPWM信號發(fā)生器的VHDL實(shí)現

SVPWM信號發(fā)生器的VHDL實(shí)現

——
作者: 時(shí)間:2007-01-26 來(lái)源:《電子設計應用》 收藏

引言

近年來(lái),dsp在svpwm(空間矢量脈寬調制)控制領(lǐng)域得到了廣泛應用。但是使用dsp單核心的控制方法仍然存在一些缺陷:基于軟件的dsp在實(shí)現svpwm觸發(fā)信號時(shí)需要較長(cháng)的時(shí)鐘周期;微處理器中不確定的中斷響應會(huì )導致pwm脈沖的相位抖動(dòng)。針對以上問(wèn)題,本文提出了一種利用fpga實(shí)現的svpwm信號發(fā)生器,系統結構如圖1所示。作為dsp的外圍接口電路,該信號發(fā)生器能夠屏蔽dsp內部錯誤中斷對輸入時(shí)間信號的影響,保證輸出完整的svpwm觸發(fā)信號波形,其三相并行處理結構還能夠有效提升系統的動(dòng)態(tài)響應速度。

svpwm簡(jiǎn)介

svpwm的主要思想在于利用逆變器空間電壓矢量的切換合成參考電壓矢量。具體方法如下:在橋式電路中,同一橋臂上兩個(gè)開(kāi)關(guān)的工作狀態(tài)在任意時(shí)刻都是互補的,所以可以用二值邏輯函數表示6個(gè)開(kāi)關(guān)的工作狀態(tài):

k=(a,b,c) (1)

由式1可見(jiàn),3組開(kāi)關(guān)的工作狀態(tài)共有23=8種,不同的開(kāi)關(guān)工作狀態(tài)對應著(zhù)不同的三相輸出電壓。這8種工件狀態(tài)分別對應著(zhù)8條基本空間電壓矢量,任意區域內的空間電壓參考矢量都可以由2條非零矢量以及2條零矢量合成。在進(jìn)行電壓矢量合成時(shí),規定每一次開(kāi)關(guān)動(dòng)作只能有一相橋臂的工作狀態(tài)發(fā)生轉換,目的是為了降低電路中的諧波含量,確定基本電壓矢量的切換順序。

svpwm信號發(fā)生器的設計

基本原理

圖1中dsp采集逆變器交流側輸出電壓值,并通過(guò)計算得到橋式電路開(kāi)關(guān)的狀態(tài)保持時(shí)間,svpwm信號發(fā)生器將dsp的輸入時(shí)間信號轉換為開(kāi)關(guān)觸發(fā)信號,在結構上可以分為數據鎖存器和有限狀態(tài)機兩個(gè)模塊,其頂層文件原理圖如圖2所示。

本文引用地址:http://dyxdggzs.com/article/20761.htm


在狀態(tài)機的一個(gè)工作周期內,輸入時(shí)間信號的突變會(huì )使狀態(tài)機的工作狀態(tài)發(fā)生不規則跳變,對輸出信號造成巨大影響,無(wú)法得到所需要的svpwm觸發(fā)信號。因此,圖2中latch鎖存器模塊的作用就是鎖存輸入時(shí)間數據time1_a,time0_a、tim1_b、tim0_b、time1_c、time0_c,直至狀態(tài)機的當前工作周期結束(即"order"命令有效)從而避免外界對狀態(tài)機的工作狀態(tài)的影響,保證狀態(tài)機按照輸入時(shí)間數據要求完成工作狀態(tài)的轉換。

利用有限狀態(tài)機的方法設計fpga,只須控制三相橋臂開(kāi)關(guān)狀態(tài)的保持時(shí)間,就可以實(shí)現svpwm觸發(fā)信號。圖2中fsms主要由1個(gè)基準計數器和3個(gè)比較器構成,輸入時(shí)間數據預存在3個(gè)比較器內,通過(guò)比較基準計數器當前值和比較器中的預存數據控制fsms工作狀態(tài)的轉換,同時(shí)根據不同的比較結果生成不同的三相橋臂開(kāi)關(guān)驅動(dòng)信號。如果基準計數器當前值等于預存輸入時(shí)間,說(shuō)明狀態(tài)機當前工作狀態(tài)已經(jīng)完成,要轉入下一個(gè)工作狀態(tài),相應的觸發(fā)信號也要改變;如果基準計數器當前值不等于預存輸入時(shí)間,說(shuō)明狀態(tài)機當前工作狀態(tài)尚未完成,需要繼續保持當前工作狀態(tài),相應的觸發(fā)信號也保持不變。狀態(tài)機按照輸入時(shí)間信號的要求轉換自身工作狀態(tài),使觸發(fā)信號產(chǎn)生相應變化,從而實(shí)現時(shí)間信號向svpwm觸發(fā)信號的轉變。另外,由于fsms內部比較器參照同一基準計數器,因此三相觸發(fā)信號之間不存在時(shí)間延遲,得到的是并行的三相觸發(fā)信號。

設計方法

本設計采用自頂向下、層次化、模塊化的設計思想。

latch鎖存器模塊由6個(gè)并行的6位數據鎖存器構成,所有鎖存器均使用圖2中的"0rder"作為數據鎖存信號,具體規定如下:
1)"order"信號作為鎖存器工作進(jìn)程的唯一敏感信號參量,只有其信號值發(fā)生變化時(shí)才會(huì )啟動(dòng)鎖存器的工作進(jìn)程,否則鎖存器不做出任何相應;

2)當"order"信號發(fā)生變化,且當前值為1時(shí),鎖存器中的存儲數據得以釋放,被輸入fsms,新的時(shí)間數據同時(shí)輸入鎖存器;

3)當"order"信號發(fā)生變化,且當前值為0時(shí),鎖存器鎖存已輸入的時(shí)間數據,保持fsms的時(shí)間輸入數據不變,同時(shí)拒絕新數據輸入;

4)鎖存器的數據鎖存時(shí)間等于fsms中基準計數器的一個(gè)工作周期。當基準計數器的一個(gè)工作周期時(shí),"order"信號將被置"1",其余時(shí)間,"order"信號將被置"0"。

為了得到三相并行輸出的svpwm觸發(fā)信號,fsms模塊內部設計了3個(gè)狀態(tài)機分別控制a、b、c相輸出。根據式1,假設上橋臂每個(gè)開(kāi)關(guān)在一個(gè)周期內工作狀態(tài)的轉換順序都是"1-0-1"因此可以將每個(gè)狀態(tài)機都設計為3種狀態(tài),分別代表每一相開(kāi)關(guān)在一個(gè)周期內的3個(gè)工作狀態(tài),工作狀態(tài)的保持時(shí)間由輸入時(shí)間決定。當輸入時(shí)間信號發(fā)生變化時(shí),fsms工作進(jìn)程啟動(dòng)。具體流程如圖3所示。

以a相橋臂為例(另外兩相橋臂的控制方法與a相橋臂類(lèi)似),狀態(tài)機進(jìn)程啟動(dòng)后,基準計數器開(kāi)始計時(shí),比較器實(shí)時(shí)比較計數器當前值和比較器內部預存的時(shí)間。計數器的一個(gè)工作周期可以分為三個(gè)階段:

1)計數器當前值小于輸入時(shí)間time1_a時(shí),狀態(tài)機處于"00"態(tài),a相上橋臂輸出為"1";

2)計數器當前值大于等于輸入時(shí)間time1_a而小于time1_a與time0_a的和時(shí),狀態(tài)機處于"01"態(tài),a相上橋臂輸出為"0";

3)計數器當前值大于等于time1_a與time0_a的和時(shí),狀態(tài)機處于"10"態(tài),a相上橋臂輸出為"1"。

如果狀態(tài)機處于非法狀態(tài)"11",則圖2中管腳a和nota輸出為高阻態(tài)。

仿真結果

利用mux+plus ⅱ軟件對本設計的邏輯功能進(jìn)行仿真驗證,仿真時(shí)間為0-120μs,時(shí)鐘頻率為1mhz。

采用epm3256atc144-7fpga芯片進(jìn)行邏輯編程后,共占用166個(gè)邏輯單元,芯片利用率為64%,具有較大的擴展空間。仿真結果如圖4所示。

圖4中輸出信號a和nota、b和notb,c和notc分別代表橋式電路3組互補開(kāi)關(guān)的驅動(dòng)命令,輸入信號time1_a、time1_b、time1_c和time0_a、time0_b、time0_c分別代表各開(kāi)關(guān)高低電平狀態(tài)的保持時(shí)間,通過(guò)仿真波形可以看到,fpga實(shí)現了空間矢量的轉換,開(kāi)關(guān)的狀態(tài)保持時(shí)間取決于輸入信號time0_a、time0_b、time0_c和time1_a、time1_b、time1_c,完全實(shí)現了時(shí)間信號到觸發(fā)信號的轉換。而且,a相橋臂有效地抵抗了外界干擾,沒(méi)有受到輸入時(shí)間信號突變的影響,表明svpwm信號發(fā)生器具有良好的抗干擾能力。

結語(yǔ)

本文用vhdl硬件描述語(yǔ)言設計了一種由鎖存器陣列和有限狀態(tài)機構成的svpwm信號發(fā)生器,該信號發(fā)生器不僅成功實(shí)現了輸入時(shí)間信號到svpwm觸發(fā)信號的轉換,而且具有良好的抗干擾能力。此外,其并行處理結構可以保證三相橋臂開(kāi)關(guān)同時(shí)動(dòng)作,有效地提升了控制系統的整體性能。由于svpwm信號發(fā)生器是用vhdl硬件描述語(yǔ)言實(shí)現的ip核,因而可簡(jiǎn)便地應用于逆變器控制系統中。


關(guān)鍵詞:

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>