下載/瀏覽

Download Report

Transcript 下載/瀏覽

第 七 章
直流馬達控制實習
VHDL數位電路實習與專題設計
文魁資訊-P8127
第七章 直流馬達控制實習
單元10-1 PWM脈寬調變實習

實驗目的
 瞭解直流馬達之驅動與PWM脈寬調變的控制方法
VHDL數位電路實習與專題設計
2
第七章 直流馬達控制實習
相關知識

直流馬達之驅動
 直流馬達為兩個輸入的驅動界面,一般稱為 MOTOR 
與 MOTOR  ,與步進馬達不同,一般直流馬達的驅動
方式有兩種 :


電壓驅動:兩極的電壓差越大轉速越快,電壓差越小轉速越慢
電流驅動:兩極的電流量越大扭力越強,電流量越小扭力越弱
 本章節以介紹如何控制直流馬達的轉速與轉向為主
 可是我們CPLD只有數位訊號輸出,要怎麼產生不同電
壓差的類比訊號呢?以下我們介紹PWM脈寬調變電路
控制技術
VHDL數位電路實習與專題設計
3
第七章 直流馬達控制實習
相關知識

PWM脈寬調變
 PWM是Pulse
Width Modulation的縮寫,就是調整脈波
寬度的意思
 工作率示意圖
工作率 
tH
t
 H
tH  tL T
tH
tL
5V
0V
T  tH  tL
VHDL數位電路實習與專題設計
4
第七章 直流馬達控制實習
相關知識

若我們的高準位是5V電源電壓,低準位是0V電壓,
則我們可以得到的平均電壓為
平均電壓  工作率  電源電壓
t
 H  5V
T

PWM示意圖
5V
5V  0.2  1V
0V
5V
5V  0.4  2 V
0V
5V
5V  0.8  4V
0V
VHDL數位電路實習與專題設計
5
第七章 直流馬達控制實習
相關知識

PWM產生器方塊圖
A
CLK
計數器
B
比較器
PWM
比較器之VHDL語法:PWM <= '1' when A > B else '0';
VHDL數位電路實習與專題設計
6
第七章 直流馬達控制實習
相關知識

計數器採下數計數器與上數計數器的兩種PWM訊號
B
B
A
A
PWM
PWM
VHDL數位電路實習與專題設計
7
第七章 直流馬達控制實習
實驗功能

利用指撥開關來產生不同的PWM訊號以得到不同
的電壓值,我們將輸出驅動LED,以觀察LED的
明亮差異
VHDL數位電路實習與專題設計
8
第七章 直流馬達控制實習
實驗電路圖

PWM實習電路圖
V CC
V CC
SW DIP-8
PWM
4
CLOCK 43
I/O
I/GCLK1
I/O
I/O
I/O
I/O
I/O
I/O
I/O
I/O
29
31
33
34
36
1
44
2
A0
A1
A2
A3
A4
A5
A6
A7
EPM7064S/LCC44
VHDL數位電路實習與專題設計
9
第七章 直流馬達控制實習
PWM實習程式碼
1 ------------------------------------------------------------------2 --實驗名稱:PWM實習
3 --檔案名稱:pwm.vhd
4 --功 能:以指撥開關來調整PWM訊號輸出
5 --日 期:2003.8.8
6 ------------------------------------------------------------------7 library ieee;
8 use ieee.std_logic_1164.all;
9 use ieee.std_logic_arith.all;
10 use ieee.std_logic_unsigned.all;
11
12 entity pwm is
13 port(
14
clk :in std_logic;
--系統頻率
15
A :in std_logic_vector(7 downto 0);
16
pwm :out std_logic
17 );
18 end pwm;
19
20 architecture a of pwm is
21 signal B: std_logic_vector(7 downto 0);
22 begin
23
24 ----- 下數計數器 ----25 process(clk)
26 begin
27 if clk'event and clk='1' then
28
B <= B-1;
29 end if;
30 end process;
31
32 ----- 比較器 ----33 pwm<='1' when A > B else '0';
34 end a;
VHDL數位電路實習與專題設計
10
第七章 直流馬達控制實習
功能模擬與CPLD下載驗證
陳慶逸、林昱翰編著---文魁資訊
VHDL數位電路實習與專題設計
11
第七章 直流馬達控制實習
燒錄於力浦電子FPT-3實驗板

PWM實習腳位配置圖
輸入
腳位
輸出
腳位
clk
43
pwm
4(LED1)
A0
29(DIP1)
A1
31(DIP2)
A2
33(DIP3)
A3
34(DIP4)
A4
36(DIP5)
A5
1(DIP6)
A6
44(DIP7)
A7
2(DIP8)
陳慶逸、林昱翰編著---文魁資訊
VHDL數位電路實習與專題設計
12
第七章 直流馬達控制實習
燒錄於力浦電子FPT-3實驗板

FPT-3實驗板元件規劃
PWM
A
陳慶逸、林昱翰編著---文魁資訊
VHDL數位電路實習與專題設計
13
第七章 直流馬達控制實習
燒錄於力浦電子LP-2900實驗板

由於LP-2900實驗板上之L1 LED燈示為HI啟動,而Pin141為LED的陰極共點
端,在使用上我們將該腳位連接VCC才能驅動LED。因此我們可以利用
Graphic Editor呼叫pwm.sym元件,並將主程式電路圖重新更改如下
(pwm_lp2900.gdf)
pwm
PIN_55
PIN_63
PIN_62
PIN_60
PIN_59
PIN_51
PIN_49
PIN_48
PIN_47
CLK
A[7..0]
INPUT
VCC
INPUT
VCC
陳慶逸、林昱翰編著---文魁資訊
clk
OUTPUT
pwm
PWM
PIN_7
A[7..0]
inst
7
VCC
OUTPUT
LED_COM
PIN_141
VHDL數位電路實習與專題設計
14
第七章 直流馬達控制實習
燒錄於力浦電子LP-2900實驗板

PWM實習腳位配置表
輸入
腳位
輸出
腳位
CLK
55
PWM
7(LED1)
A0
47(SW1)
LED_COM
141
A1
48(SW2)
A2
49(SW3)
A3
51(SW4)
A4
59(SW5)
A5
60(SW6)
A6
62(SW7)
A7
63(SW8)
陳慶逸、林昱翰編著---文魁資訊
VHDL數位電路實習與專題設計
15
第七章 直流馬達控制實習
燒錄於力浦電子LP-2900實驗板

LP-2900實驗板元件規劃
PWM
A
陳慶逸、林昱翰編著---文魁資訊
VHDL數位電路實習與專題設計
16
第七章 直流馬達控制實習
單元10-2 直流馬達轉速與轉向控制實習

實驗目的
 瞭解直流馬達驅動電路以及轉速與轉向的控制方法
陳慶逸、林昱翰編著---文魁資訊
VHDL數位電路實習與專題設計
17
第七章 直流馬達控制實習
相關知識

直流馬達之驅動電路
 在本章節我們要介紹一顆可以利用信號來控制的電子
開關, TOSHIBA所出的直流馬達驅動器TA7291,
TA7291的腳位圖如下圖所示
陳慶逸、林昱翰編著---文魁資訊
VHDL數位電路實習與專題設計
18
第七章 直流馬達控制實習
相關知識

TA7291是由四組NPN電晶體所組成的H橋構造,因此我們可藉由參考電壓
Vref腳位來作輸出至直流馬達電壓的調節。而我們所用的脈波寬度調變訊號
(PWM)即是輸出至此Vref腳位,因為當TA7291輸出為High時的電壓是以此參
考電壓為標準,輸出的High端電壓等於此參考電壓Vref,如此即可以控制馬
達的轉速
陳慶逸、林昱翰編著---文魁資訊
VHDL數位電路實習與專題設計
19
第七章 直流馬達控制實習
相關知識

在上圖中,OUT1及OUT2為連接至直流馬達的輸入端與,Vs為供應直流馬達
的電源,Vcc為邏輯電路的電源。而TA7291的H橋構造還有一主要功能,即
控制馬達的正反轉。也就是藉由TA7291的第五隻腳(IN1)及第六隻腳(IN2)的
電壓準位變化,便可控制馬達的正反轉,其邏輯組合及模式如下表所示
IN1 IN2真值表
IN1
IN2
OUT1
OUT2
模式
1
1
L
L
制動
0
1
L
H
正轉/反轉
1
0
H
L
反轉/正轉
0
0
陳慶逸、林昱翰編著---文魁資訊
高阻抗
VHDL數位電路實習與專題設計
停止
20
第七章 直流馬達控制實習
實驗功能


以指撥開關(DIP[7:0])來設定直流馬達轉速,且以四個彈跳開關
(BTN[3:0])來選擇直流馬達驅動器的驅動模式。下表為本實驗之系統
規格表
系統規格表
信號名稱
輸入/出
CLK
INPUT
DIP[7:0]
INPUT
BTN[3]
INPUT
制動
BTN[2]
INPUT
正轉
BTN[1]
INPUT
反轉
BTN[0]
INPUT
停止
VREF
OUTPUT
PWM輸出
DIR[1:0]
OUTPUT
TA7291控制信號
陳慶逸、林昱翰編著---文魁資訊
信號
功能
系統頻率
00H ~ FFH
VHDL數位電路實習與專題設計
控制速度快慢
21
第七章 直流馬達控制實習
實驗電路圖
直流馬達轉速與轉向控制實習電路圖
V CC
V CC
SW DIP-8
10
9
8
7
6
5
4
3
2
1
M OTOR-
DIR1
DIR0
VREF
4
5
6
CLK
43
I/O
I/O
I/O
M OTOR+
I/O
I/O
I/O
I/O
I/O
I/O
I/O
I/O
29
31
33
34
36
1
44
2
DIP0
DIP1
DIP2
DIP3
DIP4
DIP5
DIP6
DIP7
V CC
TA 7291
I/GCLK1
I/O
I/O
I/O
I/O
37
39
40
41
BTN0
BTN1
BTN2
BTN3
EPM7064S/LCC44
SW1
陳慶逸、林昱翰編著---文魁資訊
VHDL數位電路實習與專題設計
SW2
SW3
SW4
22
第七章 直流馬達控制實習
直流馬達轉速與轉向控制實習程式碼
1 ------------------------------------------------------------------2 --實驗名稱:直流馬達轉速與轉向控制實習
3 --檔案名稱:dcmotor.vhd
4 --功 能:以指撥開關來調整直流馬達轉速,以彈跳開關控制直流馬達轉向
5 --日 期:2003.8.8
6 ------------------------------------------------------------------7 library ieee;
8 use ieee.std_logic_1164.all;
9 use ieee.std_logic_arith.all;
10 use ieee.std_logic_unsigned.all;
11
12 ntity dcmotor is
13 ort(
14
clk :in std_logic;
--系統頻率
15
DIP :in std_logic_vector(7 downto 0); --指撥開關輸入
16
BTN :in std_logic_vector(3 downto 0); --彈跳開關輸入
17
VREF :out std_logic;
--PWM訊號
18
DIR :out std_logic_vector(1 downto 0) --TA7291模式選擇訊號
19 );
20 end dcmotor;
21
22 architecture a of dcmotor is
23 signal B:std_logic_vector(7 downto 0);
24 begin
陳慶逸、林昱翰編著---文魁資訊
VHDL數位電路實習與專題設計
25
26 ----- 下數計數器 ----27 process(clk)
28 begin
29 if clk'event and clk='1' then
30
B <= B-1;
31 end if;
32 end process;
33
34 ----- 比較器 ----35 VREF <= '1' when DIP > B else '0';
36
37 ----- TA7291模式選擇 ----38 process(BTN)
39 begin
40 case BTN is
41
when "1110" => DIR <= "00";
42
when "1101" => DIR <= "01";
43
when "1011" => DIR <= "10";
44
when "0111" => DIR <= "11";
45
when others => DIR <= "00";
46 end case;
47 end process;
48 end a;
23
第七章 直流馬達控制實習
功能模擬與CPLD下載驗證
陳慶逸、林昱翰編著---文魁資訊
VHDL數位電路實習與專題設計
24
第七章 直流馬達控制實習
燒錄於力浦電子FPT-3實驗板

直流馬達轉速與轉向控制實習腳位配置圖
輸入
腳位
輸出
腳位
CLK
43
DIR1
4(IO0)
DIP0
29
DIR0
5(IO1)
DIP1
31
VERF
6(IO2)
DIP2
33
DIP3
34
DIP4
36
DIP5
1
DIP6
44
DIP7
2
BTN0
37(SW1)
BTN1
39(SW2)
BTN2
40(SW3)
BTN3
41(SW4)
陳慶逸、林昱翰編著---文魁資訊
VHDL數位電路實習與專題設計
25
第七章 直流馬達控制實習
燒錄於力浦電子FPT-3實驗板

直流馬達轉速與轉向控制實驗實體圖1
陳慶逸、林昱翰編著---文魁資訊
VHDL數位電路實習與專題設計
26
第七章 直流馬達控制實習
燒錄於力浦電子FPT-3實驗板

直流馬達轉速與轉向控制
實驗實體圖2,按下SW1,
為停止模式

直流馬達轉速與轉向控制
實驗實體圖3,按下SW2,
為正轉/反轉模式
陳慶逸、林昱翰編著---文魁資訊
VHDL數位電路實習與專題設計
27
第七章 直流馬達控制實習
燒錄於力浦電子FPT-3實驗板

直流馬達轉速與轉向控制
實驗實體圖4,按下SW3,
為反轉/正轉模式

直流馬達轉速與轉向控制
實驗實體圖5,按下SW3,
為制動模式
陳慶逸、林昱翰編著---文魁資訊
VHDL數位電路實習與專題設計
28
第七章 直流馬達控制實習
燒錄於力浦電子LP-2900實驗板

此處我們選用力浦電子LP-2900實驗板上的EPF10K10TC144-4晶片型號來編譯程式,
而腳位配置如下表所示。再來將dcmotor_lp2900.sof檔下載到CPLD中做實際驗證,開
啟programmer進行程式下載;下載成功後,我們可調整SW9~SW16的指撥開關來設
定PWM訊號的大小,以SW1~SW4來控制馬達的轉向與動作。
陳慶逸、林昱翰編著---文魁資訊
輸入
腳位
輸出
腳位
CLK
55
DIR1
37
DIP0
64(SW9)
DIR0
38
DIP1
65(SW10)
VERF
39
DIP2
67(SW11)
DIP3
68(SW12)
DIP4
69(SW13)
DIP5
70(SW14)
DIP6
72(SW15)
DIP7
73(SW16)
BTN0
47(SW1)
BTN1
48(SW2)
BTN2
49(SW3)
BTN3
51(SW4)
VHDL數位電路實習與專題設計
29
第七章 直流馬達控制實習
燒錄於力浦電子LP-2900實驗板

LP-2900實驗板元件規劃
BTN0~BTN3
陳慶逸、林昱翰編著---文魁資訊
DIP0~DIP7
DIR1 DIR0 VREF
VHDL數位電路實習與專題設計
30