GOGOGO高清完整国语,GOGOGO在线观看免费观看完整版高清,GOGOGO免费高清完整,GOGOGO高清在线观看免费视频,GOGOGO日本高清国语完整,GOGOGO免费高清完整版

技術熱線: 4007-888-234
設計開發

專注差異化嵌入式產品解決方案 給智能產品定制注入靈魂給予生命

開發工具

提供開發工具、應用測試 完善的開發代碼案例庫分享

技術支持

從全面的產品導入到強大技術支援服務 全程貼心伴隨服務,創造無限潛能!

新品推廣

提供新的芯片及解決方案,提升客戶產品競爭力

新聞中心

提供最新的單片機資訊,行業消息以及公司新聞動態

直流電機調速的PWM實現方法

更新時間: 2019-01-05
閱讀量:1527

PWM在控制中使用非常廣泛,可以以數字量對模擬電路進行控制。這里對PWM的原理進行講述,并舉例說明PWM的重要應用。

1、PWM簡介

采樣控制理論中有一個重要結論:沖量相等而形狀不同的窄脈沖加在具有慣性的環節上時,其效果基本相同。PWM控制技術就是以該結論為理論基礎,對半導體開關器件的導通和關斷進行控制,使輸出端得到一系列幅值相等而寬度不相等的脈沖,用這些脈沖來代替正弦波或其他所需要的波形。按一定的規則對各脈沖的寬度進行調制,既可改變逆變電路輸出電壓的大小,也可改變輸出頻率。

PWM控制的基本原理很早就已經提出,但是受電力電子器件發展水平的制約,在上世紀80年代以前一直未能實現。直到進入上世紀80年代,隨著全控型電力電子器件的出現和迅速發展,PWM控制技術才真正得到應用。隨著電力電子技術、微電子技術和自動控制技術的發展以及各種新的理論方法,如現代控制理論、非線性系統控制思想的應用,PWM控制技術獲得了空前的發展。通俗的說PWM是采用數字量對模擬量進行合成的方法。

數字量是怎么樣對模擬量進行合成的呢?請看下例:

用PWM波代替正弦沖半波:

上圖中用一系列等幅不等寬的脈沖來代替一個正弦半波,正弦半波N等分,看成N個相連的脈沖序列,寬度相等,但幅值不等;用矩形脈沖代替,等幅,不等寬,中點重合,面積(沖量)相等,寬度按正弦規律變化。這兩種波作用于電路時,所產生的效果基本相同。

2、PWM的應用

基于面積相等的原理實際上可以對任意波形進行合成,再如下圖:

圖中a波形作用于LED上,表現為光強的遞增變化,b波形采用PWM對a進行合成。在某一段時間內兩種波形的面積是相同的,因此b作用于LED上時,效果與a是相同的。b波以一定頻率的等幅不等寬的脈沖序列出現,脈沖寬度遞增。

PWM的單片機實現如下:

#include

 #define uchar unsigned char

/*—————————————————————————————-

以程序用于說明PWM的實現

——————————————————————————————-*/

/**

程序思路說明:

關于頻率和占空比的確定,對于12M晶振,

假定PWM輸出頻率為1KHZ,這樣定時中斷次數 *

設定為C=10,即0.01MS中斷一次,則TH0=FF,TL0=F6;

由于設定中斷時間為0.01ms,這樣*

可以設定占空比可從1-100變化。即0.01ms*100=1ms

*/

/**

TH0和TL0是計數器0的高8位和低8位計數器,

計算辦法:TL0=(65536-C)%256;

TH0=(65536-C)/256,其中C為所要計數的次數即多長時間產生一次中斷;

TMOD是計數器*

工作模式選擇,0X01表示選用模式1,它有16位計數器,

最大計數脈沖為65536,最長時 間

為1ms*65536=65.536ms

**/

#define V_TH0  0XFF                  

#define V_TL0  0XF6                  

#define V_TMOD 0X01                  

void init_sys(void); /系統初始化函數/

void Delay5Ms(void);

unsigned char ZKB1,ZKB2;

void delay(unsigned int time)

{

while(time—);

}

void main (void)

{

init_sys();

ZKB1=40; /占空比初始值設定/

ZKB2=60; /占空比初始值設定/

while(1)

{

if (!P1_1) //如果P1.1為低電平,增加占空比

{

delay(50000);

if(!P1_1)

 {

  ZKB1++;

  ZKB2=100-ZKB1;

 }

}

if(!P1_2) //如果P1.2為低電平,減少占空比

{

delay(50000);

if (!P1_2)

{

 ZKB1--;

 ZKB2=100-ZKB1;

}

}

/對占空比值限定范圍/

if (ZKB1>99) ZKB1=1;

if (ZKB1<1) ZKB1=99;

}

}

/系統初始化函數/

void init_sys(void)

{

/定時器初始化/

TMOD=V_TMOD;

TH0=V_TH0;

TL0=V_TL0;

TR0=1;

ET0=1;

EA=1;

}

/中斷函數/

void timer0(void) interrupt 1 using 2

{

static uchar click=0; /中斷次數計數器變量/

TH0=V_TH0; /恢復定時器初始值/

TL0=V_TL0;

++click;

if (click>=100) click=0;

if (click<=ZKB1)

/當小于占空比值時輸出低電平,高于時是高電平,從而實現占空比的調整/

P1_3=0;

else

P1_3=1;

if (click<=ZKB2)

P1_4=0;

else

P1_4=1;

}

以上是PWM的簡單應用,用得更多的是采用它進行直流電機調速,其實就是把波形作用于電機驅動電路的使用端,有必要對電機驅動電路進行介紹。

1)H橋式電機驅動電路:

  上圖所示為一個典型的直流電機控制電路。電路得名于“H橋式驅動電路”是因為它的形狀酷似字母H。4個三極管組成H的4條垂直腿,而電機就是H中的橫杠(上圖及隨后的兩個圖都只是示意圖,而不是完整的電路圖,其中三極管的驅動電路沒有畫出來)。電路中,H橋式電機驅動電路包括4個三極管和一個電機。要使電機運轉,必須導通對角線上的一對三極管。根據不同三極管對的導通情況,電流可能會從左至右或從右至左流過電機,從而控制電機的轉向。

要使電機運轉,必須使對角線上的一對三極管導通。例如,如上圖所示,當Q1管和Q4管導通時,電流就從電源正極經Q1從左至右穿過電機,然后再經Q4回到電源負極。按圖中電流箭頭所示,該流向的電流將驅動電機順時針轉動。當三極管Q1和Q4導通時,電流將從左至右流過電機,從而驅動電機按特定方向轉動(電機周圍的箭頭指示為順時針方向)。

上圖所示為另一對三極管Q2和Q3導通的情況,電流將從右至左流過電機。 當三極管Q2和Q3導通時,電流將從右至左流過電機,從而驅動電機沿另一方向轉動(電機周圍的箭頭表示為逆時針方向)。

2)使能控制與方向邏輯

驅動電機時,保證H橋上兩個同側的三極管不會同時導通非常重要。如果三極管Q1和Q2同時導通,那么電流就會從正極穿過兩個三極管直接回到負極。此時,電路中除了三極管外沒有其他任何負載,因此電路上的電流就可能達到最大值(該電流僅受電源性能限制),甚至燒壞三極管。基于上述原因,在實際驅動電路中通常要用硬件電路方便地控制三極管的開關。上圖所示就是基于這種考慮的改進電路,它在基本H橋電路的基礎上增加了4個與門和2個非門。4個與門同一個“使能”導通信號相接,這樣,用這一個信號就能控制整個電路的開關。而2個非門通過提供一種方向輸人,可以保證任何時候在H橋的同側腿上都只

有一個三極管能導通。(與前面的示意圖一樣,上圖所示也不是一個完整的電路圖,特別是圖中與門和三極管直接連接是不能正常工作的。)

具有使能控制和方向邏輯的H橋電路采用以上方法,電機的運轉就只需要用三個信號控制:兩個方向信號和一個使能信號。如果DIR-L信號為0,DIR-R信號為1,并且使能信號是1,那么三極管Q1和Q4導通,電流從左至右流經電機(如上圖所示);如果DIR-L信號變為1,而DIR-R信號變為0,那么Q2和Q3將導通,電流則反向流過電機。

實際使用的時候,用分立件制作H橋式是很麻煩的,好在現在市面上有很多封裝好的H橋集成電路,接上電源、電機和控制信號就可以使用了,在額定的電壓和電流內使用非常方便可靠。比如常用的L293D、L298N、TA7257P、SN754410等。

3)L298電機驅動芯片介紹
L298是一種高電壓,高電流電機驅動集成電路,內置雙路全橋驅動,可以同時驅動兩個直流電機,通過外部控制信號與PWM,可以實現電機的調向與調速,也可以驅動一個步進電機。

  1. 芯片封裝

  2. 引腳定義

編號

名稱

功能描述

1,15

Sense A Sense B

在此引腳與地之間接采樣電阻,用來調節負載電流

2,3

Out1 Out2

橋式電路A的的輸出端,接電機

4

Vs

輸出端電源供給

5,7

Input 1 Input2

橋式電路A的控制端

6,11

Enable A Enable B

橋式電路A與B的使能端

8

GND

9

VSS

邏輯控制地

10,12

Input 3 Input4

橋式電路B的控制端

13,14

Out3 Out4

橋式電路B的的輸出端,接電機

NC

不接

將上面的PWM例程產生的波形作用于電機的使能端上,就可以實現電機的調速。至于方向的控制,只需兩個IO接于控制端即可。

欢迎光临: 濮阳市| 南宁市| 齐河县| 新乐市| 庐江县| 和林格尔县| 南川市| 元朗区| 若尔盖县| 武乡县| 许昌县| 上栗县| 清远市| 大英县| 大理市| 乌鲁木齐县| 泰顺县| 深泽县| 辛集市| 桦南县| 云龙县| 历史| 甘孜| 大洼县| 尚义县| 奎屯市| 奉节县| 徐汇区| 永济市| 梁河县| 汝城县| 集贤县| 皋兰县| 汝阳县| 鞍山市| 利辛县| 井研县| 嵊泗县| 卓尼县| 济源市| 广平县|