《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 一種基于CPLD的PWM控制電路設計
一種基于CPLD的PWM控制電路設計
摘要: 在直流伺服控制系統中,通過專用集成芯片或中小規模的數字集成電路構成的傳統PWM控制電路往往存在電路設計復雜,體積大,抗干擾能力差以及設計困難、設計周期長等缺點因此PWM控制電路的模塊化、集成化已成為發展趨勢.它不僅可以使系統體積減小、重量減輕且功耗降低,同時可使系統的可靠性大大提高.隨著電子技術的發展,特別是專用集成電路(ASIC)設計技術的日趨完善,數字化的電子自動化設計(EDA)工具給電子設計帶來了巨大變革,尤其是硬件描述語言的出現,解決了傳統電路原理圖設計系統工程的諸多不便.針對以上情況,本文給出一種基于復雜可編程邏輯器件(CPLD)的PWM控制電路設計和它的仿真波形.
關鍵詞: CPLD PWM 控制電路 伺服
Abstract:
Key words :

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

  1 PWM控制電路基本原理

  為了實現直流伺服系統的H型單極模式同頻PWM可逆控制,一般需要產生四路驅動信號來實現電機的正反轉切換控制.當PWM控制電路工作時,其中H橋一側的兩路驅動信號的占空比相同但相位相反,同時隨控制信號改變并具有互鎖功能;而另一側上臂為低電平,下臂為高電平.另外,為防止橋路同側對管的導通,還應當配有延時電路.設計的整體模塊見圖1所示.其中,d[7:0]矢量用于為微機提供調節占空比的控制信號,cs為微機提供控制電機正反轉的控制信號,clk為本地晶振頻率,qout[3:0]矢量為四路信號輸出.其內部原理圖如圖2所示.


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

  2 電路設計

  本設計采用的是Lattice半導體公司推出的is-plever開發平臺,該開發平臺定位于復雜設計的簡單工具.它采用簡明的設計流程并完整地集成了Leonardo Spectrum的VHDL綜合工具和ispVMTM系統,因此,無須第三方設計工具便可完成整個設計流程.在原理設計方面,本設計采用自頂向下、層次化、模塊化的設計思想,這種設計思想的優點是符合人們先抽象后具體,先整體后局部的思維習慣.其設計出的模塊修改方便,不影響其它模塊,且可重復使用,利用率高.本文僅就原理圖中的I12計數器模塊和I11延遲模塊進行討論.

  計數器模塊的VHDL程序設計如下:

  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;

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 亚洲欧美日韩精品专区卡通| 啊…别了在线观看免费下载 | 一本无码中文字幕在线观| 日本高清电影免费播放| 亚洲人成网站18禁止久久影院| 波多野结衣一区在线| 伊人这里只有精品| 精品伊人久久久久网站| 国产91精品久久久久久久| 青青青久97在线观看香蕉| 国产成人女人毛片视频在线 | 日产精品卡一卡2卡三卡乱码工厂| 久热这里只有精| 欧美xx性在线| 亚洲国产片在线观看| 欧美激情在线一区二区三区| 亚洲精品无码精品mV在线观看 | 正在播放julia女教师| 人人妻人人添人人爽日韩欧美| 精品96在线观看影院| 又黄又爽的视频在线观看| 老司机成人精品视频lsj| 国产va免费精品观看精品| 蜜桃成熟之蜜桃仙子| 国产呻吟久久久久久久92| 黑色丝袜美腿美女被躁翻了| 国产成人精品曰本亚洲78 | 手机小视频在线观看| 久9热免费精品视频在线观看| 日本尤物精品视频在线看| 久久无码人妻精品一区二区三区 | 炕上摸着老妇雪白肥臀| 人人妻人人澡av天堂香蕉| 狠狠色丁香婷婷久久综合| 人人爽天天爽夜夜爽曰| 激情综合色五月丁香六月欧美| 亚洲高清中文字幕综合网| 热99re久久精品天堂vr| 亚洲第一永久色| 欧美极度极品另类| 亚洲欧美中文字幕5发布|