新聞中心

EEPW首頁(yè) > 電源與新能源 > 設(shè)計(jì)應(yīng)用 > 一種基于CPLD的PWM控制電路設(shè)計(jì)

一種基于CPLD的PWM控制電路設(shè)計(jì)

作者: 時(shí)間:2004-12-06 來(lái)源:網(wǎng)絡(luò) 收藏
摘要:介紹了利用硬件描述語(yǔ)言VHDL設(shè)計(jì)的一種電路,該PWM電路具有開(kāi)關(guān)頻率可調(diào),同側(cè)2路信號(hào)互鎖、延時(shí)時(shí)間可調(diào)、接口簡(jiǎn)單等特點(diǎn),可應(yīng)用于現(xiàn)代直流伺服系統(tǒng)。

關(guān)鍵詞:電路 VHDL

在直流伺服控制系統(tǒng)中,通過(guò)專用集成芯片或中小規(guī)模的數(shù)字集成電路構(gòu)成的傳統(tǒng)PWM控制電路往往存在復(fù)雜,體積大,抗干擾能力差以及設(shè)計(jì)困難、設(shè)計(jì)周期長(zhǎng)等缺點(diǎn)?因此PWM控制電路的模塊化、集成化已成為發(fā)展趨勢(shì)。它不僅可以使系統(tǒng)體積減小、重量減輕且功耗降低,同時(shí)可使系統(tǒng)的可靠性大大提高。隨著電子技術(shù)的發(fā)展,特別是專用集成電路(ASIC)設(shè)計(jì)技術(shù)的日趨完善,數(shù)字化的電子自動(dòng)化設(shè)計(jì)(EDA)工具給電子設(shè)計(jì)帶來(lái)了巨大變革,尤其是硬件描述語(yǔ)言的出現(xiàn),解決了傳統(tǒng)電路原理圖設(shè)計(jì)系統(tǒng)工程的諸多不便。針對(duì)以上情況,本文給出一種復(fù)雜可編程邏輯器件(CPLD)的PWM控制和它的仿真波形。

1?。校祝涂刂齐娐坊驹?/B>

為了實(shí)現(xiàn)直流伺服系統(tǒng)的H型單極模式同頻PWM可逆控制,一般需要產(chǎn)生四路驅(qū)動(dòng)信號(hào)來(lái)實(shí)現(xiàn)電機(jī)的正反轉(zhuǎn)切換控制。當(dāng)PWM控制電路工作時(shí),其中H橋一側(cè)的兩路驅(qū)動(dòng)信號(hào)的占空比相同但相位相反,同時(shí)隨控制信號(hào)改變并具有互鎖功能;而另一側(cè)上臂為低電平,下臂為高電平。另外,為防止橋路同側(cè)對(duì)管的導(dǎo)通,還應(yīng)當(dāng)配有延時(shí)電路。設(shè)計(jì)的整體模塊見(jiàn)圖1所示。其中,d[7:0]矢量用于為微機(jī)提供調(diào)節(jié)占空比的控制信號(hào),cs為微機(jī)提供控制電機(jī)正反轉(zhuǎn)的控制信號(hào),clk為本地晶振頻率,qout[3:0]矢量為四路信號(hào)輸出。其內(nèi)部原理圖如圖2所示。

該設(shè)計(jì)可得到脈沖周期固定(用軟件設(shè)置分頻器I9可改變PWM開(kāi)關(guān)頻率,但一旦設(shè)置完畢,則其脈沖周期將固定)、占空比決定于控制信號(hào)、分辨力為1/256的PWM信號(hào)。I8模塊為脈寬鎖存器,可實(shí)現(xiàn)對(duì)來(lái)自微機(jī)的控制信號(hào)d[7:0]的鎖存,d[7:0]的向量值用于決定PWM信號(hào)的占空比。clk本地晶振在經(jīng)I9分頻模塊分頻后可為PWM控制電路中I12計(jì)數(shù)器模塊和I11延時(shí)模塊提供內(nèi)部時(shí)鐘。I12計(jì)數(shù)器在每個(gè)脈沖的上升沿到來(lái)時(shí)加1,當(dāng)計(jì)數(shù)器的數(shù)值為00H或由0FFH溢出時(shí),它將跳到00H時(shí),cao輸出高電平至I7觸發(fā)器模塊的置位端,I7模塊輸出一直保持高電平。當(dāng)I8鎖存器的值與I12計(jì)數(shù)器中的計(jì)數(shù)值相同時(shí),信號(hào)將通過(guò)I13比較器模塊比較并輸出高電平至I7模塊的復(fù)位端,以使I7模塊輸出低電平。當(dāng)計(jì)數(shù)器再次溢出時(shí),又重復(fù)上述過(guò)程。I7為RS觸發(fā)器,經(jīng)過(guò)它可得到兩路相位相反的脈寬調(diào)制波,并可實(shí)現(xiàn)互鎖。I11為延時(shí)模塊,可防止橋路同側(cè)對(duì)管的導(dǎo)通,I10模塊為脈沖分配電路,用于輸出四路滿足設(shè)計(jì)要求的信號(hào)。CS為I10模塊的控制信號(hào),用于控制電機(jī)的正反轉(zhuǎn)。

2 

本設(shè)計(jì)采用的是Lattice半導(dǎo)體公司推出的is-plever開(kāi)發(fā)平臺(tái),該開(kāi)發(fā)平臺(tái)定位于復(fù)雜設(shè)計(jì)的簡(jiǎn)單工具。它采用簡(jiǎn)明的設(shè)計(jì)流程并完整地集成了Leonardo Spectrum的VHDL綜合工具和ispVMTM系統(tǒng),因此,無(wú)須第三方設(shè)計(jì)工具便可完成整個(gè)設(shè)計(jì)流程。在原理設(shè)計(jì)方面,本設(shè)計(jì)采用自頂向下、層次化、模塊化的設(shè)計(jì)思想,這種設(shè)計(jì)思想的優(yōu)點(diǎn)是符合人們先抽象后具體,先整體后局部的思維習(xí)慣。其設(shè)計(jì)出的模塊修改方便,不影響其它模塊,且可重復(fù)使用,利用率高。本文僅就原理圖中的I12計(jì)數(shù)器模塊和I11延遲模塊進(jìn)行討論。

計(jì)數(shù)器模塊的VHDL程序設(shè)計(jì)如下:

entity counter is

port(clk: in std logic;

Q : out std logic vector(7 downto 0);

cao: out std_logic);

end counter;

architecture a_counter of counter is

signal Qs: std_logic_vector(7 downto 0);

signal reset: std_logic;

signal caolock: std_logic;

begin

process(clk,reset)

begin

if(reset=‘1')then

Qs<=“00000000”;

elsif clk'event and clk=‘1' then

Qs<=Qs+‘1';

end if;

end process;

reset<=‘1' when Qs=255 else

‘0';

caolock<=‘1' when Qs=0 else

‘0';

Q<=Qs;

cao<=reset or caolock;

end a_counter;

圖2 PWM可逆控制電路原理圖

在原理圖中,延遲模塊必不可少,其功能是對(duì)PWM波形的上升沿進(jìn)行延時(shí),而不影響下降沿,從而確保橋路同側(cè)不會(huì)發(fā)生短路。其模塊的VHDL程序如下:

entity delay is

port(clk: in std_logic;

input: in std_logic_vector(1 downto 0);

output:out std_logic_vector(1 downto 0)

end delay;

architecture a_delay of delay is

signal Q1,Q2,Q3,Q4: std_logic;

begin

process(clk)

begin

if clk'event and clk=‘1' then

Q3<=Q2;

Q2<=Q1;

Q1<=input(1);

end if;

end process;

Q4<=not Q3;

output(1)<=input(1)and Q3;

output(0)<=input(0)and Q4;

end a_delay;

圖3為原理圖中的若干信號(hào)的波形仿真圖。

3 結(jié)束語(yǔ)

采用可編程邏輯器件和硬件描述語(yǔ)言,同時(shí)利用其供應(yīng)商提供的開(kāi)發(fā)工具可大大縮短數(shù)字系統(tǒng)的設(shè)計(jì)時(shí)間,節(jié)約新產(chǎn)品的開(kāi)發(fā)成本,另外,還具有設(shè)計(jì)靈活,集成度高,可靠性好,抗干能力強(qiáng)等特點(diǎn)。本文設(shè)計(jì)的PWM控制電路用于某光測(cè)設(shè)備的傳動(dòng)裝置時(shí),取得了良好的效果。

pwm相關(guān)文章:pwm原理


分頻器相關(guān)文章:分頻器原理


評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉