Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

LỜI CẢM ƠN

Trước hết chúng em xin cảm ơn Khoa Kỹ Thuật – Công nghệ đã tạo điều kiện
để chúng em có thể cọ xát với thực tế cũng như đánh giá được năng lực và trình độ
của bản thân mình.
Chúng em xin gửi lời cảm ơn chân thành đến Thầy VŨ THẾ ĐẢNG đã tận tình
hướng dẫn chỉ bảo chúng em trong suốt quá trình thực hiện đồ án.
Và chúng em cũng xin gửi đến các Thầy Cô, bạn bè, và đồng nghiệp đã chân
tình giúp đỡ và đóng góp ý kiến trong quá trình thực hiện đồ án này.
Chúng em xin chân thành cảm ơn!
Bình Dương, tháng 05 năm 2012.

Sinh viên thực hiện.
Lê Duy Tân
Võ Duy Khánh

Trường Đại Học Trà Vinh

1

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

LỜI NHẬN XÉT CỦA GIÁO VIÊN
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
Bình Dương, ngày

tháng

năm 2012

Ký tên

Vũ Thế Đảng

Trường Đại Học Trà Vinh

2

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

MỤC LỤC
LỜI CẢM ƠN ....................................................................................................................... 1
MỤC LỤC ............................................................................................................................ 3
LỜI NÓI ĐẦU ...................................................................................................................... 4
PHẦN GIỚI THIỆU ............................................................................................................. 5
Chương I. Đặt vấn đề ........................................................................................................ 5
1. Tình hình nghiên cứu ............................................................................................ 5
2. Công việc thực tế của đồ án ................................................................................. 5
3. Sơ đồ khảo sát, mô tả thực tế ................................................................................ 6
PHẦN NỘI DUNG............................................................................................................... 7
CHƯƠNG 1. CƠ SỞ LÝ THUYẾT CỦA ĐỀ TÀI.......................................................... 7
A. PHẦN CỨNG ....................................................................................................... 7
I. VI ĐIỀU KHIỂN ............................................................................................... 7
Tổng quan về vi điều khiển AT89S52 ................................................................... 7
II.
CÁC THIẾT BỊ KHÁC TRONG MẠCH .................................................... 20
2.1. Động cơ bước: .......................................................................................... 20
2.2. Optical encoder: ........................................................................................ 22
2.3. IC L298: .................................................................................................... 23
2.4. IC tạo ổn áp 7805( IC ổn áp 5v) ............................................................... 24
B. PHẦN MỀM ....................................................................................................... 26
1. Phần mềm mô phỏng mạch: Phần mềm Proteus 7 Professional ...................... 26
2. Phần mềm lập trình: KeilC compiler ............................................................... 27
CHƯƠNG 2. THIẾT KẾ TỔNG QUÁT PHẦN CỨNG ............................................... 28
I. HỆ THỐNG ĐIỀU KHIỂN ............................................................................... 28
1. Sơ đồ khối tổng quát ........................................................................................ 28
2. Sơ lược chức năng của từng khối ..................................................................... 28
2.1. Khối nguồn ............................................................................................... 28
2.2. Khối Reset ................................................................................................ 29
2.3. Khối điều khiển: ....................................................................................... 29
2.4. Khối tạo xung dao động: Sử dụng thạch anh 12MHz .............................. 30
2.5. Khối điều khiển trung tâm ........................................................................ 30
2.6. Khối hiện thị LCD .................................................................................... 30
2.7. Khối khuếch đại công suất........................................................................ 31
2.8. Khối chấp hành: động cơ DC ................................................................... 31
II. CHƯƠNG TRÌNH ĐIỀU KHIỂN ...................................................................... 32
1. Sơ đồ giải thuật của chương trình .................................................................... 32
2. Code lập trình cho vi điều khiển ...................................................................... 35
3. Nguyên lý hoạt động của mạch ........................................................................ 35
4. Sơ đồ mạch in................................................................................................... 36
5. Board mạch hoàn chỉnh.................................................................................... 37
PHẦN 3. KẾT LUẬN ........................................................................................................ 38
I. KẾT QUẢ ĐẠT ĐƯỢC. ......................................................................................... 38
II.
HẠN CHẾ CỦA ĐỀ TÀI: ................................................................................... 38
III.
HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI: .............................................................. 38
TÀI LIỆU THAM KHẢO .................................................................................................. 39

Trường Đại Học Trà Vinh

3

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

LỜI NÓI ĐẦU
Công cuộc công nghiệp hóa hiện đại hóa đất nước đang diễn ra theo sự tiến
bộ của khoa học kĩ thuật. Trước tình hình đó đã có khá nhiều yêu cầu cấp bách và
cũng có những thách thức đặt ra cho giới trí thức .
Điện tử và đặc biệt là vi xử lý là một lĩnh vực mới mà ở nước ta đang nghiên
cứu và từng bước phát triển để ứng dụng vào quá trình sản xuất góp phần nâng cao
năng suất lao động .
Do vậy là sinh viên với chuyên ngành kỹ thuật điện tử cần phải nắm vững kiến
thức và kĩ năng từ đơn giản đến phức tạp như trong các hệ thống điều khiển đóng mở
cửa xe hơi, máy bay, robot,... Rèn luyện kĩ năng lập trình trên các hệ thống sử dụng vi
điều khiển trong các hệ thống công nghiệp và các ứng dụng trong sinh hoạt và sản
xuất.
Tuy nhiên do thời gian và kiến thức chúng em còn hạn chế nên không tránh khỏi
sự thiếu sót, mong Thầy Cô và các bạn thông cảm.
Em xin chân thành cảm ơn !
Bình Dương, tháng 05 năm 2012
Nhóm sinh viên thực hiện !!!
Lê Duy Tân
Võ Duy Khánh

Trường Đại Học Trà Vinh

4

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

PHẦN GIỚI THIỆU
Chương I. Đặt vấn đề
1. Tình hình nghiên cứu
Điều khiển động cơ DC là một ứng dụng thuộc dạng cơ bản nhất của điều khiển tự
động vì động cơ DC một cơ cấu chấp hành (actuator) được dùng nhiều nhất trong các
hệ thống tự động như robot, các mô hình máy bay, xe hơi, các cơ cấu truyền động yêu
cầu tính chính xác trong các máy móc,…
Điều khiển được động cơ DC là chúng ta có thể tự xây dựng được cho mình rất
nhiều hệ thống tự động. Vậy câu hỏi đặt ra ở đây là làm sao chúng ta có thể biết được
tốc độ của động cơ và làm thế nào để điều chỉnh được nó?.
Chính vì những lý do đó, nên nhóm em quyết định chọn đề tài “ Điều khiển động
cơ DC servo” để phát huy thêm khả năng của mình và góp phần nhỏ vào cho đời sống
xã hội.
2. Công việc thực tế của đồ án
• Với mục đích nghiên cứu và ứng dụng vi điều khiển vào thực tế nên trong đồ án
sử dụng các phần tử cơ bản như:
o Vi điều khiển họ Atmel 8051
o Động cơ DC 12V có gắn encorder để đọc số vòng quay.
o Nút nhấn để điều khiển.
o Vi điều khiển phát xung PWM để điều chỉnh vận tốc động cơ.
o LCD để hiện thị dữ liệu ( vận tốc của động cơ).
o Dùng mạch cầu H để khuếch đại công suất điều khiển động cơ (vì ngõ ra
của vi điều khiển chỉ ở mức logic ≤ 5V không đủ để cấp cho động cơ hoạt đông).
Người sử dụng sẽ điều chỉnh tốc độ của động cơ thông qua nút nhấn vào vi điều
khiển, vận tốc của động cơ sẽ được hiển thị lên LCD thông qua encorder.

Trường Đại Học Trà Vinh

5

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

V12

3. Sơ đồ khảo sát, mô tả thực tế

J101

VCC

SW301

R101
330

C102
+

LCD501

BTN1

LCD 16X2

VCC

D0
D1
D2
D3
D4
D5
D6
D7

2

LED

7
8
9
10
11
12
13
14

VSS
VDD
VEE

D101

RS
R/W
E

10uF

12V

VDD (BL)
VSS (BL)

BUTTON

4
5
6

10uF

3

1
2
3

J102
1

VOUT

SW302
BTN2
BUTTON

15
16

VIN

C101 7805
+

12V

2

1

GND

U101
1
2

SW303
BTN3

RP201

D4
D5
D6
D7

VCC

E

RS

BUTTON
SW304
BTN4

R501
10k

10k

BUTTON

ENCODER

C202
33pF

Y201

C203

AT89S52
12MHz

2
3
4
5
6
7
8
9

SW305
BTN5
VCC
RS
E
D4
D5
D6
D7

BUTTON

U401
L298

L298_IN1
L298_IN2

L298_IN1
L298_IN2

VCC

5
7
10
12
6
11
1
15

V12

VCC
VCC

4

R201
10k

40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21

IN1
IN2
IN3
IN4
ENA
ENB
SENSA
SENSB

ENCODER

J401
1
2
3
ENCODER
J402

VS

10uF

VCC
AD0/P0.0
AD1/P0.1
AD2/P0.2
AD3/P0.3
AD4/P0.4
AD5/P0.5
AD6/P0.6
AD7/P0.7
EA/VPP
ALE/PROG
PSEN
A15/P2.7
A14/P2.6
A13/P2.5
A12/P2.4
A11/P2.3
A10/P2.2
A9/P2.1
A8/P2.0

OUT1
OUT2
OUT3
GND

C201
+

RST

T2/P1.0
T2X/P1.1
P1.2
P1.3
P1.4
(MOSI) P1.5
(MISO) P1.6
(SCK) P1.7
RST
P3.0/RXD
P3.1/TXD
P3.2/INT0
P3.3/INT1
P3.4/T0
P3.5/T1
P3.6/WR
P3.7/RD
X2
X1
GND

9

SW201

BTN1
BTN2
BTN3
BTN4
BTN5

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

VCC

VCC

1

MCU201

OUT4

2

2
1

3
13

MOTOR

14

8

33pF

Hình 1. Sơ đồ nguyên lý của mạch

Trường Đại Học Trà Vinh

6

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

PHẦN NỘI DUNG
CHƯƠNG 1. CƠ SỞ LÝ THUYẾT CỦA ĐỀ TÀI
A. PHẦN CỨNG
I. VI ĐIỀU KHIỂN
Tổng quan về vi điều khiển AT89S52
Vi điều khiển 89S52 là một vi điều khiển của hãng Atmel, dung CMOS có công suất
thấp, hiệu suất cao. Với
8 KB Flash Memory
256 Byte RAM nội
4 Port xuất nhập I/O 8 bit
2 con trỏ dữ liệu, 3 bộ định thời timer/counter 16 bit.
1 kiến trúc 6 vector ngắt với 2 mức, 1 bộ dao động và 1 mạch xung clock.
Giao tiếp nối tiếp
64 KB vùng nhớ mã ngoài
64 KB vùng nhớ dữ liệu ngoài
Xử lý Boolean ( hoạt động trên bit đơn)
210 vị trí nhớ có thể định vị bit.
4µs cho hoạt động nhân hoặc chia.
Thêm vào đó, vi điều khiển 89S52 còn được thiết kế với logic tĩnh để có thể hoạt động
đến tần số 0Hz và được hổ trợ 2 chế độ tiết kiệm năng lượng có thể lựa chọn được
bằng phần mềm. Chế độ không tải (Idle mode) dừng CPU trong khi cho phép RAM,
Timer/Counter, Port nối tiếp và hệ thống ngắt tiếp tục hoạt động. Chế độ tắt nguồn (
Power down mode) lưu trữ dữ liệu trong RAM nhưng đóng băng bộ dao động, dừng
hoạt động các chức năng khác của Chip cho đến khi ngắt xảy ra hoặc phần cứng được
Reset.

Trường Đại Học Trà Vinh

7

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

2.1. Sơ đồ chân AT89S52

U3
19

18

9

29
30
31

1
2
3
4
5
6
7
8

XTAL1

XTAL2

RST

PSEN
ALE
EA

P1.0/T2
P1.1/T2EX
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7

P0.0/AD0
P0.1/AD1
P0.2/AD2
P0.3/AD3
P0.4/AD4
P0.5/AD5
P0.6/AD6
P0.7/AD7
P2.0/A8
P2.1/A9
P2.2/A10
P2.3/A11
P2.4/A12
P2.5/A13
P2.6/A14
P2.7/A15
P3.0/RXD
P3.1/TXD
P3.2/INT0
P3.3/INT1
P3.4/T0
P3.5/T1
P3.6/WR
P3.7/RD

39
38
37
36
35
34
33
32
21
22
23
24
25
26
27
28
10
11
12
13
14
15
16
17

AT89C52

Hình 2. Sơ đồ chân IC 89S52

Hình 3. Hình dạng thực tế IC 89S52

Trường Đại Học Trà Vinh

8

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

Hình 4. Sơ đồ khối của bộ vi điều khiển AT 89S52

Trường Đại Học Trà Vinh

9

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

Chức năng các chân IC AT89S52:
Chân 29 (PSEN – Program Store Enable): là chân tín hiệu ngỏ ra có tác
dụng cho phép đọc bộ nhớ chương trình mở rộng và thường được nối đến
chân OE của Eprom, cho phép đọc các byte mã lệnh.
Chân 30 (ALE: Adress Latch Enable) là tín hiệu điều khiển xuất ra, nó cho
phép phân kênh bus địa chỉ và bus dữ liệu của port 0.
Chân 31 (EA: Eternal Acess) được đưa xuống thấp cho phép chon bộ nhớ
mã ngoài
32 chân còn lại chia làm 4 cổng vào ra:
Vào ra tức là có thể dùng chân đó để đọc mức logic.
Port 0: từ chân 32 đến chân 39 tương ứng là các chân P0_0 đến P0_7, có 2
chức năng:
• Trong thiết kế cỡ nhỏ không dùng bộ nhớ mở rộng, có chức năng
như đường I/O.
• Đối với các hệ thống lớn có bộ nhớ mở rộng nó vừa là bus địa chỉ
byte thấp vừa là bus dữ liệu để truy cập bộ nhớ ngoài.
Port 1: từ chân 1 đến chân 9 tương ứng là các chân P1_0 đến P1_7
Port 2: từ chân 21 đến chân 28 tương ứng là các chân P2_0 đến P2_7: là
Port có tác dụng kép như các đường I/O hoặc là byte cao (A8 – A15) của
bus địa chỉ đối với các thiết bị dùng bộ nhớ mở rộng.
Port 3: từ chân 10 đến chân 17 tương ứng là các chân P3_0 đến P3_7P3.0 –
RxD : chân nhận dữ liệu nối tiếp khi giao tiếp RS232(Cổng COM). P3.1 _
TxD : phần truyền dữ liệu nối tiếp khi giao tiếp RS232.
P3.2 _ INTO : interrupt 0 , ngắt ngoài 0.
P3.3 _ INT1: interrupt 1, ngắt ngoài 1.
P3.4 _T0 : Timer0 , đầu vào timer0.
P3.5_T1 : Timer1, đầu vào timer 1.
P3.6_ WR: Write, điều khiển ghi dữ liệu.
P3.7 _RD: Read , điều khiển đọc dữ liệu.
Chân 18, 19 nối với thạch anh tạo thành mạch tạo dao động cho VĐK. Tần
số thạch anh thường được dùng trong các ứng dụng là : 11.0592Mhz(giao tiếp
với cổng com máy tính) và tần số tối đa 24Mhz. Tần số càng lớn VĐK xử lý
càng nhanh.
Chân 9 (RST – Reset): Khi tín hiệu này đưa lên mức cao ít nhất 2 chu kỳ
máy, các thanh ghi bên trong được nạp những giá trị thích hợp để khởi động hệ
thống. Khi cấp điện cho hệ thống thì mạch tự động reset.

Trường Đại Học Trà Vinh

10

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng
+5V
100

+5V
10UF

8,2K

Hình 5. Mạch Reset hệ thống

Trạng thái tất cả các thanh ghi của 8051 sau khi reset:
Thanh ghi

Đếm chương trình
Tích lũy
B
PSW
SP
DPTR
Port 0-3
IP
IE
Các thanh ghi định thời
SCON
SBUF
PCON(HMOS)
PCON(CMOS)

Nội dung
0000H
00H
00H

00H
07H
0000H
FFH
XXX00000B
0XX00000B
00H
00H
00H
0XXXXXXB
0XXX0000B

Quan trọng nhất trong các thanh ghi trên là thanh ghi đếm chương trình, nó được
đặt lại 0000H. Khi Reset trở lại mức thấp, việc thi hành chương trình luôn bắt đầu ở
địa chỉ đầu tiên trong bộ nhớ chương trình: địa chỉ 0000H, nội dung của RAM trên
chip không bị thay đổi bởi lệnh Reset.
Chân 18, 19(XTAL1,XTAL2): nối với thạch anh tạo thành mạch tạo dao
động cho VĐK. Tần số thạch anh thường dùng trong các ứng dụng là :
11.0592Mhz(giao tiếp với cổng com máy tính) và 12Mhz Tần số tối đa
24Mhz. Tần số càng lớn VĐK xử lí càng nhanh.

Trường Đại Học Trà Vinh

11

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

Hình 6. Xung dao động thạch anh

Chân 40, 20 ( VCC, GND): cấp nguồn và nối đất cho vi điều khiển.
2.2. Tổ chức bộ nhớ bên trong vi điều khiển 89S52
RAM bên trong 89S52 được phân chia như sau:
Các bank thanh ghi có địa chỉ tử 00H đến 1FH
RAM truy xuất từng bit có địa chỉ 20H đến 2FH
RAM đa dụng từ 30H đến 7FH
Các thanh ghi có chức năng đặc biệt tử 80H đến FFH bao gồm:
-

Thanh ghi trạng thái chương trình ( PSW: Program Status Word)

-

Thanh ghi B

-

Thanh ghi con trỏ ngăn xếp (SP1, SP2: Stack Pointer).

-

Thanh ghi con trỏ dữ liệu (DPH, DPL).

-

Các thanh ghi Port xuất nhập (P0, P1, P2, P3).

-

Các thanh ghi Timer/ Counter.

-

Các thanh ghi Port nối tiếp (SBUF, SCON)

-

Các thanh ghi ngắt (IE, IP)

-

Thanh ghi điều khiển công suất (PCON)

Trường Đại Học Trà Vinh

12

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

Bảng tóm tắt các vùng nhớ của 8051

Địa chỉ
Byte

Địa chỉ
Byte

Địa chỉ bit

7F

Địa chỉ bit

FF
F0 F7 F6 F5 F4 F F2 F1 F0
3

B

RAM đa dụng
E0 E7 E6 E5 E4 E E2 E1 E0
3

ACC

D0 D7 D6 D5 D4 D3 D2 D1 D0 PSW
30
2F
2E
2D
2C
2B
2A
29
28
27
26
25
24
23
22
21
20
1F
18
17
10
0F
08
07
00

B8 7F 7E
77 76
6F 6E
67 66
5F 5E
57 56
4F 4E
47 46
3F 3E
37 36
2F 2E
27 26
1F 1E
17 16
0F 0E
07 06
Bank 3

7D
75
6D
65
5D
55
4D
45
3D
35
2D
25
1D
15
0D
05

7C
74
6C
64
5C
54
4C
44
3C
34
2C
24
1C
14
0C
04

7B
73
6B
63
5B
53
4B
43
3B
33
2B
23
1B
13
0B
03

7A
72
6A
62
5A
52
4A
42
3A
32
2A
22
1A
12
0A
02

Bank 2
Bank 1
Bank thanh ghi 0
(mặc định cho R0-R7)

79
71
69
61
59
51
49
41
39
31
29
21
19
11
09
01

78
70
68
60
58
50
48
40
38
30
28
20
18
10
08
00

-

-

BC BB BA B9 B8 IP

B0 B7 B6 B5 B4 B3 B2 B1 B0 P.3
A8 AF

AC AB AA A9 A8 IE

A0 A7 A6 A5 A4 A3 A2 A1 A0 P2
99 không được địa chỉ hóa bit
98 9F 9E 9D 9C 9B 9A 99 98

SBUF
SCON

90 97 96 95 94 93 92 91 90

P1

không được địa chỉ hóa bit
không được địa chỉ hóa bit
không được địa chỉ hóa bit
không được địa chỉ hóa bit

TH1
TH0
TL1
TL0
TMOD

88 8F 8E 8D 8C 8B 8A 89 88
87 không được địa chỉ hóa bit

TCON
PCON

8D
8C
8B
8A
89

83
82
81
80

không được địa chỉ hóa bit
không được địa chỉ hóa bit
không được địa chỉ hóa bit
87 86 85 84 83 82 81 80

Trường Đại Học Trà Vinh

DPH
DPL
SP
P0

13

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

3. Hoạt động định thời
3.1. Giới thiệu
Các bộ định thời (Timer) được sử dụng rộng rãi trong các ứng dụng đo lường và
điều khiển. Tùy thuộc vào ứng dụng đầu vào của bộ định thời có thể là nguồn xung lấy
từ xung nhịp của vi điều khiển hoặc nguồn xung từ bên ngoài đưa đến.
Vi điều khiển họ 8051 có ba bộ định thời 16 bit trong đó hai bộ Timer 0 và Timer 1
có bốn chế độ hoạt động, còn Timer 2 có ba chế độ hoạt động.
3.2. Các thanh ghi của bộ định thời.
3.2.1. Các thanh ghi của Timer 0 và Timer 1.
o Thanh ghi chế độ định thời TMOD: Thanh ghi TMOD chứa hai nhóm 4 bit
dùng để đặt chế độ làm việc cho Timer 0 và Timer 1
Bit

Name

Timer

Description

7

GATE

1

Khi GATE = 1, Timer chỉ làm việc khi INT = 1

6

C/T

1

Bit đếm sự kiện hay ghi giờ
C/T = 1: Đếm sự kiện
C/T = 0: Ghi giờ đều đặn

5

M1

1

Bit chọn Mode của Timer 1

4

M0

1

Bit chọn Mode của Timer 1

3

GATE

0

Bit chọn cổng của Timer 0

2

C/T

0

Bit chọn chế độ Timer/Counter của Timer 0

1

M1

0

Bit chọn Mode của Timer 0

0

M0

0

Bit chọn Mode của Timer 0

o Thanh ghi điều khiển Timer TCON: Thanh ghi TCON chứa các bit trạng thái
điều khiển cho Timer 0 và Timer 1.
Bit

Symbol

Bit
Address

Description

TCON.7

TF1

8FH

Cờ báo tràn của Timer1, được đặt bởi phần
cứng khi có tràn, được xóa bởi phần mềm
hoặc bởi phần cứng khi bộ xử lý chỉ đến
chương trình phục vụ ngắt.

TCON.6

TR1

8EH

Bit điều khiển Timer 1 hoạt động, được đặt/
xóa bằng phần mềm để điều khiển cho Timer
chạy/dừng

Trường Đại Học Trà Vinh

14

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

TCON.5

TF0

8DH

Cờ báo tràn Timer 0

TCON.4

TR0

8CH

Bit điều khiển Timer 0 hoạt động

TCON.3

IE1

8BH

Cờ ngắt do Timer 1.

TCON.2

IT1

8AH

Cờ ngắt ngoài 1.

TCON.1

IE0

89H

Cờ ngắt do Timer 0

TCON

IT0

88H

Cờ ngắt ngoài 0

3.2.2. Các thanh ghi của Timer 2.
o Thanh ghi T2CON
o Thanh ghi T2MOD: có địa chỉ 0C9H, thanh ghi này không định địa chỉ bit.
o Thanh ghi TH2 và TL2, RCAP2H và RCAP2L: Thanh ghi TH2 và TL2 chứa
giá trị đếm của Timer 2, còn RCAP2H và RCAP2L chứa giá trị cần nạp lại của Timer
2.
3.3. Chế độ của bộ định thời
3.3.1 Các chế độ của Timer 0 và Timer 1.
- Mode 0 (mode Timer 13 bit): là chế độ định thời 13 bit, chế độ này tương thích
với các bộ vi điều khiển trước đó, trong các ứng dụng hiện nay, chế độ này không còn
thích hợp.

- Mode 1 (Mode Timer 16 bit): trong chế độ 1, bộ Timer dùng cả 2 thanh ghi TH
và TL để chứa giá trị đếm, vì vậy chế độ này còn được gọi là chế độ định thời 16 bit.

Trường Đại Học Trà Vinh

15

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

- Mode 2(chế độ 8 bit tự nạp lại): Timer dùng TL để chứa giá trị đếm và TH để
chứa giá trị nạp lại vì vậy chế độ này được gọi là chế độ tự nạp lại 8 bit. Cách điều
khiển giống chế độ 1.

- Mode 3(Chế độ tách Timer): Timer 0 được tách thành 2 bộ Timer hoạt động
độc lập, chế độ này sẽ cung cấp cho vi điều khiên thêm một Timer nữa.

3.3.2 Các chế độ của Timer 2: có 3 chế độ hoạt động là chế độ thu nhận, tự nạp
lại và cung cấp tốc độ baud cho cổng nối tiếp.
RCLK+TCLK TR2
0
0
0
1
1
X
X
X

CP/#RL2
1
1
1
0

Chế độ
16 – bit Auto – reload: 16 bit tự nạp lại
16 – bit – capture: 16 bit thu nhận
Baud rate Generator: cung cấp tốc độ baud
(Off)

chế độ thu nhận (capture):

Trường Đại Học Trà Vinh

16

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

chế độ tự nạp lại

- Chế độ cung cấp tốc độ Baud

Trường Đại Học Trà Vinh

17

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

4. Hoạt động truyền dữ liệu của Vi điều khiển 89S52
4.1
Giới thiệu.
Truyền dữ liệu nối tiếp của MCS 51 có thể hoạt động ở nhiều kiểu riêng biệt
trong phạm vi cho phép của tần số. Dữ liệu dạng song song được chuyển thành nối tiếp
để truyền đi và nhận về dạng nối tiếp được chuyển thành song song.
Chân TXD (P3.1) là ngõ xuất dữ liệu đi và chân RXD (P3.1) là ngõ nhận dữ liệu
về.
Đặc trưng của truyền dữ liệu nối tiếp là hoạt động song công nghĩa là có thể thực
hiện truyền và nhận cùng 1 lúc.
Hai thanh ghi chức năng đặc biệt phục vụ cho truyền dữ liệu là thanh ghi đệm
SBUF và SCON. Thanh ghi đệm SBUF nằm ở địa chỉ 99H có 2 chức năng: nếu vi điều
khiển gửi dữ liệu lên thanh ghe SBUF thì dữ liệu đó sẽ được truyền đi, nếu hệ thống
khác gửi dữ liệu đến thì sẽ được lưu vào thanh ghi đệm SBUF.
4.2 Các thanh ghi cổng nối tiếp
Có 2 thanh ghi chức năng đặc biệt cho phép phần mềm truy xuất đến cổng nối tiếp
là SBUF và SCON
- Thanh ghi SCON ( Serial Controller): Thanh ghi điều khiển cổng nối tiếp ở địa
chỉ 98H, là thanh ghi có định địa chỉ bit, chứa các bit trạng thái và các bit điều khiển
liên quan tới cổng nối tiếp. Các bit điều khiển đặt chế độ hoạt động cho cổng nối tiếp,
các bit trạng thái báo cáo kết thúc việc phát hoặc thu một ký tự.
- Thanh ghi SBUF ( Serial buffer): Thanh ghi này có chức năng đệm các ký tự
khi chúng được nhận về từ cổng nối tiếp hoặc được truyền đi từ cổng nối tiếp, việc
truyền nhận qua cổng nối tiếp thực chất là việc truy xuất thanh ghi này
4.3 Các chế độ hoạt động
- Chế độ 0: chế độ mà cổng nối tiếp được dùng như một hanh ghi dịch 8 bit. Dữ
liệu truyền nhận trên chân RXD và TXD. Tốc độ baud cố định bằng Fosc /12.
- Chế độ 1: Cổng nối tiếp hoạt động như bộ UART 8 bit có tốc độ thay đổi. Dữ
liệu truyền nhận trên chân RXD và TXD, chế độ này cung cấp cho vi điều khiển một
công cụ giao tiếp với máy tính qua cổng COM.
- Chế độ 2: Cổng nối tiếp hoạt động như bộ UART 9 bit, chế độ này thường
được dùng khi cần chèn thêm bit kiểm tra chẵn lẻ vào trong khung truyền để giảm bớt
lỗi trên đường truyền.
- Chế độ 3: Là sự kết hợp của chế độ 1 và chế độ 2.
4.4 Trao đổi dữ liệu qua cổng nối tiếp
Bao gồm các thao tác chính như sau:
Khởi tạo cổng nối tiếp.
Kiểm tra cờ TI khi truyền và cờ RI khi nhận.
Ghi đọc byte dữ liệu ở SBUF.
5. Hoạt động ngắt và xử lý ngắt:
Trong thực tế người ta muốn tận dụng khả năng của CPU để làm thêm nhiều công
việc khác nữa, chỉ khi nào có cần trao đổi dữ liệu mới cần yêu cầu CPU tạm dừng công
việc hiện tại để phục vụ việc trao đổi dữ liệu. Vì vậy 1 hệ thống sử dụng ngắt có thể đáp
ứng nhanh các yêu cầu trao đổi dữ liệu trong khi vẫn có thể làm được các công việc khác.
Tổ chức ngắt ở AT89S52 bao gồm:

Trường Đại Học Trà Vinh

18

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

- Ngắt ngoài đến từ chân #INT0.
- Ngắt ngoài đến từ chân #INT1.
- Ngắt do bộ Timer0.
- Ngắt do bộ Timer1.
- Ngắt do bộ Timer2.
- Ngắt do Port nối tiếp.
Sáu nguồn ngắt này được xóa khi reset và được đặt riêng bằng phần mềm bởi các bit
trong thanh ghi cho phép ngắt IE và thanh ghi ưu tiên ngắt IP.
Phương pháp điều chế độ rộng xung (PWM)
- Phương pháp điều chế PWM ( Pulse Width Modulation) là phương pháp điều
chỉnh điện áp ra tải hay nói cách khác là phương pháp điều chế dựa trên sự thay đổi độ
rộng của chuỗi xung vuông dẫn đến sự thay đổi điện áp ngõ ra.
6.

- Chúng ta sử dụng bộ Timer 16 bit của vi điều khiển để tạo ra xung có tỷ số độ
rộng như mong muốn.
7. Giải thuật điều khiển PID
- PID là viết tắt của Propotional (tỉ lệ), Integral (tích phân) và Derivative (đạo
hàm).

Kp = hệ số tỉ lệ
Ki = hệ số tích phân
Kd = hệ số vi phân

Trường Đại Học Trà Vinh

19

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

- Biến “e” là thành phần sai lệch, là hiệu giữa tín hiệu vào mong muốn và tín hiệu
ra thực tế. Tín hiệu sai lệch (e) sẽ đưa tới bộ PID và bộ điều khiển tính toán cả thành
phần tích phân lẫn vi phân của (e).

- Đặc tính bộ điều khiển PID:
Thành phần tỉ lệ (Kp) có tác dụng làm tăng tốc độ đáp ứng của hệ thống, và
làm giảm chứ không triệt tiêu sai số xác lập của hệ
Thành phần tích phân (Ki) có tác dụng triệt tiêu sai số xác lập nhưng có thể
làm giảm tốc độ đáp ứng của hệ.
Thành phần vi phân (Kd) là tăng độ ổn định hệ thống, giảm độ vọt lố và cải
thiện tốc độ đáp ứng của hệ

II. CÁC THIẾT BỊ KHÁC TRONG MẠCH
2.1. Động cơ bước:
- Động cơ bước là một cơ cấu chấp hành rất thông dụng trong các ứng dụng điều
khiển chính xác.
- Động cơ bước được chia làm nhiều loại như động cơ biến tử trở, động cơ đơn
cực, động cơ hai cực và động cơ nhiều pha.
o Động cơ biến từ trở: có 3 cuộn dây, được nối một đầu chung lại vơi nhau
(C), khi sử dụng thì đầu nối chung (C) được nối vào dương nguồn và các cuộn
được kích theo thứ tự.

Hình 7. Động cơ biến từ trở

o Động cơ bước đơn cực: Cấu tạo có 5,6 hoặc 8 dây ra, được quấn theo sơ
đồ (hình bên dưới), với 1 đầu nối trung tâm trên các cuộn. Khi dùng, các đầu nối
trung tâm thường được nối vào cực dương nguồn và hai đầu còn lại của mỗi mấu
lần lượt nối đất để đảo chiều tử trường bởi cuộn đó.

Trường Đại Học Trà Vinh

20

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

o

Hình 8. Động cơ bước đơn cực

o Động cơ bước hai cực: Các cuộn dây của động cơ hai cực giống như động
cơ đơn cực nhưng không có đầu nối ở trung tâm 2 cuộn, vì vậy đơn giản hơn
nhưng mạch điều khiển để đảo cực mỗi cặp cực trong động cơ thì phức tạp hơn.
Mạch điều khiển cho động cơ này đòi hỏi phải có mạch điều khiển cầu H cho mỗi
mấu.

Hình 9. Động cơ bước hai cực

o Động cơ nhiều pha: động cơ này không được phổ biến như các động cơ
trên, các cuộn dây của nó được quấn nối tiếp thành các vòng kín.

Trường Đại Học Trà Vinh

21

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

Hình 10. Động cơ bước nhiều pha

2.2. Optical encoder:
o Encoder là thiết bị quản lý số vòng quay, quản lý vị trí góc của một đĩa quay,
đĩa quay có thể là bánh xe, trục động cơ,…
o Hệ thống Optical encoder bao gồm một nguồn phát quang (thường là hồng
ngoại – infrared), một cảm biến quang và một đĩa có chia rãnh.

HìnhOptical
11. Optical
encoder
encoder

o Có hai loại encoder: encoder tuyệt đối (absolute encoder) và encoder tương đối
(incremental encoder).
Trong đề tài này chúng em tìm hiểu incremental encoder.
- Encoder thường có 3 kênh (3 ngõ ra): kênh A, B và I (Index)

Trường Đại Học Trà Vinh

22

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

- Hình trên cùng trong hình trên thể hiện sự bố trí của 2 cảm biến kênh A và
kênh B lệch pha nhau. Khi cảm biến A bắt đàu bị che thì cảm biến B hoàn toàn
nhận được hồng ngoại xuyên qua và ngược lại. Hình bên dưới là dạng xung ngõ ra
của 2 kênh.
2.3. IC L298:
Là IC bán dẫn tích hợp mạch cầu H để điều khiển công suất động cơ, tất cả mạch
kích, mạch cầu đều được tích hợp sẵn

Trường Đại Học Trà Vinh

23

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

+ Điện áp cấp lên đến 46V
+ Tổng Dòng DC chịu đựng lên đến 4A
+ Điện áp bão hòa
+ Chức năng bảo vệ quá nhiệt
+ Điện áp logic‘0’từ 1.5V trở xuống

• Tần công suất ngõ ra:
IC L298 tích hợp 2 tầng công suất (A, B). Tần công suất chính là mạch cầu và ngõ ra
của nó có thể lái các loại tải cảm thông dụng ở nhiều chế độ hoạt động khác nhau
(tùy thuộc vào sự điều khiển ở ngõ vào) .
Dòng điện từ chân ngõ ra chảy qua tải đến chân cảm ứng dòng : điện trở ngoài RSA,
RSB cho phép việc cảm ứng cường độ dòng điện này.

Hình 12. Mạch cầu H

• Tần ngõ vào:
Mỗi cầu được điều khiển bởi 4 cổng ngõ vào In1, In2, EnA, và In3, In4, EnB. Các chân
In có tác dụng khi chân En ở mức cao, khi chân En ở mức thấp, các chân ngõ vào In
ở trạng thái cấm. Tất cả các chân đều tương thích với chuẩn TTL.
2.4. IC tạo ổn áp 7805( IC ổn áp 5v)
Với những mạch điện không đòi hỏi độ ổn định của điện áp quá cao, sử dụng IC ổn
áp thường được người thiết kế sử dụng vì mạch điện khá đơn giản. Các loại ổn áp
thường được sử dụng là IC 78xx, với xx là điện áp cần ổn áp. Ví dụ 7805 ổn áp 5V,
7812 ổn áp 12V. Việc dùng các loại IC ổn áp 78xx tương tự nhau, dưới đây là minh
họa cho IC ổn áp 7805:

Trường Đại Học Trà Vinh

24

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

Hình 13. Sơ đồ IC 7805

Sơ đồ chân 7805:
Chân số 1 là chân IN
Chân số 2 là chân GND
Chân số 3 là chân OUT.
Ngõ ra OUT luôn ổn định ở 5V dù điện áp từ nguồn cung cấp thay đổi. Mạch này
dùng để bảo vệ những mạch điện chỉ hoạt động ở điện áp 5V (các loại IC thường hoạt
động ở điện áp này). Nếu nguồn điện có sự cố đột ngột: điện áp tăng cao thì mạch điện
vẫn hoạt động ổn định nhờ có IC 7805 vẫn giữ được điện áp ở ngõ ra OUT 5V không
đổi.

IC ổn áp 7805 : Đầu vào > 7V đầu ra 5V 500mA. Mạch ổn áp: cần cho VĐK vì nếu
nguồn cho VĐK không ổn định thì sẽ treo VĐK, không chạy đúng, hoặc reset liên
tục, thậm chí là chết chíp.

Trường Đại Học Trà Vinh

25

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

B. PHẦN MỀM
1. Phần mềm mô phỏng mạch: Phần mềm Proteus 7 Professional
- Proteus là một phần mềm mô phỏng và thiết kế mạch in. Phần mềm bao gồm 2 thành
phần là ISIS và AREA.
- ISIS là phần mô phỏng mạch, nó có thể mô phỏng cả mạch số và mạch tương tự, tuy
nhiên, điểm mạnh nhất là nó tích hợp rất nhiều thư viện linh kiện số, đặc biệt là vi điều
khiển. Trong quá trình thiết kế mạch số, cần mô phỏng phần mềm của vi điều khiển
như PIC, AVR, 8051,… thì đây là phần mềm lý tưởng nhất. Bên cạnh đó, nó còn tích
hợp mô phỏng mạch tương tự, mô phỏng ngôn ngữ mô tả phần cứng Verilog,…
- AREA là phần thiết kế mạch in, bản khá nhẹ, chạy dây khá thông minh, tuy nhiên
việc quản lý, sắp xếp vị trí khi có nhiều linh kiện chưa hiệu quả lắm.

Hình 14. Màn hình Protues 7 professional

Trường Đại Học Trà Vinh

26

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

2. Phần mềm lập trình: KeilC compiler

KeilC là trình biên dịch C do công ty phát triển phần mềm Keil có trụ sở tại Đức.
Nó cung cấp một số công cụ phát triển như: IDE Integrated Development
environment, Project Manager, Simulator, Debugger, C Cross Compiler, Cross
Assembler,…

Trường Đại Học Trà Vinh

27

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

CHƯƠNG 2. THIẾT KẾ TỔNG QUÁT PHẦN CỨNG
I. HỆ THỐNG ĐIỀU KHIỂN
1. Sơ đồ khối tổng quát

Khối nguồn

Khối điều
khiển

DAC

Vi Điều
Khiển

Tạo xung dao
động

Điều khiển
động cơ

AT89S52
Encorder

Khối
hiển thị

Reset

Hình 15. Sơ đồ khối tổng quát

2. Sơ lược chức năng của từng khối
2.1. Khối nguồn

V12

Khối nguồn cho VĐK:

J101

VIN

C101 7805
+

J102
1

VOUT

2

12V

1

GND

U101
1
2

10uF

3

VCC
C102
+

R101
330

10uF
D101

12V
2

LED

Trường Đại Học Trà Vinh

28

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

Nguồn nuôi của vi điều khiển là nguồn DC 5V, sau khi qua biến áp 12V, điện áp
xoay chiều 220V sẽ còn 12V và được đưa qua chỉnh lưu thành dòng 1 chiều, sau khi
qua IC ổn áp 7805,điện áp ra còn 5V và được đưa vào vi điều khiển.
Đây là mạch dùng để tạo ra nguồn điện áp chuẩn +5V. Sử dụng IC7805. Đầu vào là
điện áp xoay chiều sau khi được biến đổi qua máy biến thế, đưa vào bộ Diod cầu để
cho ra dòng điện một chiều( lúc này điện áp nằm trong khoảng từ 7->10V). Sau khi đi
qua IC ổn áp 7805 sẽ tạo ra nguồn điện áp chuẩn +5V cung cấp cho mạch

2.2.

Khối Reset

Khối RESET có tác dụng đưa vi điều khiển về trạng thái ban đầu. Khi nút Reset
được ấn điện áp +5V từ nguồn được nối vào chân Reset của vi điều khiển được chạy
thẳng xuống đất lúc này điện áp tại chân vi điều khiển thay đổi đột ngột về 0, VĐK
nhận biết được sự thay đổi này và khởi động lại trạng thái ban đầu cho hệ thống.
2.3. Khối điều khiển:
Gồm 5 nút ấn, hoạt động tương tự nút Reset. Khi ấn nút thì các chân của vi điều
khiển được nối với chân mass đưa điện áp xuống đất lúc này điện áp tại các chân này
bằng 0 làm cho vi điều khiển nhận biết được sự thay đổi này và thực hiện lệnh cần
SW301
điều khiển.
BTN1
BUTTON
SW302
BTN2
BUTTON
SW303
BTN3
BUTTON
SW304
BTN4
BUTTON
SW305
BTN5
BUTTON

Trường Đại Học Trà Vinh

29

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

2.4. Khối tạo xung dao động: Sử dụng thạch anh 12MHz

C202
33pF

Y201

C203
12MHz
33pF

2.5. Khối điều khiển trung tâm
Vi điều khiển AT89S52 là phần tử thu nhập xử lý thông tin và đưa ra các tín hiệu điều
khiển thiêt bị.

VCC
RP201

10k

VCC

SW201

C201
+

RST

10uF

ENCODER
BTN1
BTN2
BTN3
BTN4
BTN5

R201
10k

C202
Y 201

33pF
C203

T2/P1.0
T2X/P1.1
P1.2
P1.3
P1.4
(MOSI) P1.5
(MISO) P1.6
(SCK) P1.7
RST
P3.0/RXD
P3.1/TXD
P3.2/INT0
P3.3/INT1
P3.4/T0
P3.5/T1
P3.6/WR
P3.7/RD
X2
X1
GND

VCC
AD0/P0.0
AD1/P0.1
AD2/P0.2
AD3/P0.3
AD4/P0.4
AD5/P0.5
AD6/P0.6
AD7/P0.7
EA/VPP
ALE/PROG
PSEN
A15/P2.7
A14/P2.6
A13/P2.5
A12/P2.4
A11/P2.3
A10/P2.2
A9/P2.1
A8/P2.0

40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21

1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

2
3
4
5
6
7
8
9

MCU201

RS
E
D4
D5
D6
D7

L298_IN1
L298_IN2

AT89S52
12MHz

33pF

2.6. Khối hiện thị LCD

VDD (BL)
VSS (BL)
15
16

D0
D1
D2
D3
D4
D5
D6
D7
7
8
9
10
11
12
13
14
D4
D5
D6
D7

E

4
5
6

RS
R/W
E

LCD 16X2

RS

VCC

1
2
3

VSS
VDD
VEE

LCD501

R501
10k

VCC

Trường Đại Học Trà Vinh

30

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

Dùng LCD 4 bit kích thước 16x2, được nối với Port 0 của vi điều khiển. Nhiệm vụ
của khối này là hiện thị tốc độ của động cơ.
Chân VSS nối lên Vcc, chân VDD nối xuống mass, còn chân VEE được nối với 1 biến
trở để tăng giảm độ sáng cho LCD.
2.7. Khối khuếch đại công suất
Sử dụng IC L298 tích hợp mạch cầu H để khuếch đại công suất ngõ ra của vi điều
khiển để điều khiển động cơ.
Chân Vcc của IC nối lên Vcc từ ổn áp 5V ra, còn chân VS thì nối lên nguồn 12V.
Chân IN1 và IN2 nối vô Port 2 của vi điều khiển để lấy tín hiệu vô, động cơ được
nối vào chân OUT 1 và OUT 2 .

V12

ENCODER
J402

VS

4

SENSA
SENSB

ENCODER

J401
1
2
3

OUT1
OUT2
OUT3
OUT4

2

2
1

3
13

MOTOR

14

8

1
15

IN1
IN2
IN3
IN4
ENA
ENB

GND

VCC

5
7
10
12
6
11

VCC

U401
L298
L298_IN1
L298_IN2

VCC

9

VCC

2.8. Khối chấp hành: động cơ DC

− Sử dụng động cơ DC 12V, có gắn một Encoder đồng trục, có ba dây: một dây
+5v, một dây 0v, và một dây xung (60xung/ vòng.)

Trường Đại Học Trà Vinh

31

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

II. CHƯƠNG TRÌNH ĐIỀU KHIỂN
1. Sơ đồ giải thuật của chương trình
a. Chương trình chính:

Begin

PWM Init
Timer/Counter Init
Interrupt Init
LCD Init

Welcome Indication

Check
BTN 1?

No

Yes
LCD clear
Indication Init

While (1)

End

Trường Đại Học Trà Vinh

32

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

b. Chương trình quét phím
While(1)

Yes

Start system
update DIR 1
Motor run with des_Speed

Yes

Run/ Stop Motor
Init Des_Speed(PID)
LCD Indication

BTN 3

Yes

Increase Duty Cycle
Set Duty Cycle
Update LCD

BTN 4

Yes

Decrease Duty Cycle
Set Duty Cycle
Update LCD

BTN 5

Yes

Change DIR 0
Convert the motor direction

BTN 1

No
BTN 2
No

No

No

No
Duty Cycle
PID

T
200ms?

Yes

Calculate speed indication

No
End

Trường Đại Học Trà Vinh

33

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

c. Chương trình ngắt tạo PWM
Interrupt
Timer 0(PWM)

No
PWM= 0
Recharged Timer 0

PWM=0

Yes

PWM= 1
Recharged Timer 0

End

d. Chương trình PWM_Set_Duty
PWM_Set_Duty
PWM_Set_Duty

TR0
=0
TRO=0

No
Duty=100
Duty=100

Yes

PWM
=1
PWM=1

No

Duty=0
Duty = 0

Yes

PWM
=0
PWM=0

PWM = 0
Calculate TON, TOFF
Recharged Timer
TR0=0

End
End

Trường Đại Học Trà Vinh

34

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

2. Code lập trình cho vi điều khiển
- Phần này nhóm em sẽ trình bày trong buổi báo cáo.
3. Nguyên lý hoạt động của mạch
- Phần điều khiển gồm các nút nhấn: Run/Stop, motor chạy thuận (1), motor chạy
ngược(0), tăng tốc, giảm tốc và nút reset.
- Khởi động chương trình, khởi tạo PWM, khởi tạo Timer/Counter, khởi tạo
chương trình ngắt, lời chào sẽ được hiển thị LCD, sau đó nhấn nút đầu tiên sẽ vào
chương trình điều khiển.
- Màn hình LCD hiển thị 2 dòng: dòng 1 là tốc độ đặt (SP) và chiều quay hiện tại
của motor (DIR), dòng 2 là tốc độ thực tế (PV) được đo về qua Encoder và RUN
hoặc STOP tùy thuộc vào trạng thái motor.
- Nhấn nút BTN 1(đầu tiên) để khởi động giá trị des_Speed cho motor đồng thời
motor chạy theo chiều thuận. Để đổi chiều ta nhấn nút nhấn thứ 5 (BTN 5)
- Cài đặt tốc độ cho motor bằng cách nhấn nút tăng hoặc giảm, mỗi lần nhấn tốc độ
sẽ được tăng lên hoặc giảm theo mức mà chúng ta quy định trong chương trình.
- Dùng chương trình tạo PWM để thay đổi chu kỳ xung để thay đổi tốc độ cho
motor.
- Áp dụng giải thuật PID để ổn định tốc độ cho motor. Khi tốc độ được cài đặt, thì
motor phải chạy bám theo 1 tốc độ nhất định đó.
- Chúng ta phải điều chỉnh Kp, Ki, Kd để đạt được tính ổn định đó.

Trường Đại Học Trà Vinh

35

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

4. Sơ đồ mạch in

Hình 16. Sơ đồ mạch in

Trường Đại Học Trà Vinh

36

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

5. Board mạch hoàn chỉnh

Hình 17. Board mạch hoàn chỉnh

Trường Đại Học Trà Vinh

37

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

PHẦN 3. KẾT LUẬN
I. KẾT QUẢ ĐẠT ĐƯỢC.

− Mô hình tuy nhỏ nhưng đã giúp em hiểu sâu hơn về chuyên ngành tự động hóa,
gồm tất cả những phần: điều khiển, chấp hành, tín hiệu hồi tiếp,…
− Hiểu và nắm rõ được cấu trúc của vi điều khiển, lập trình C cho vi điều khiển, các
phương pháp điều khiển tốc độ động cơ như PWM, PID.
− Tìm hiểu và biết thêm về các loại động cơ, các IC driver cho động cơ, cảm biến,
encoder,LCD…
− Biết thêm về phương pháp thiết kế và thi công mạch in bằng Orcad.
− Thi công và lập trình được mạch chạy đúng như yêu cầu.
II. HẠN CHẾ CỦA ĐỀ TÀI:
- Lập trình C còn rời rạc, không được logic.
- Chưa ứng dụng hết chức năng của 89S52 ( bộ capture đọc giá trị ).
- Không thể nhập tốc độ đặt bằng phím mà phải sử dụng nút nhấn để tăng giảm 1 giá
trị được lập trình.
- Chưa hiểu thật rõ ràng về PID nên còn hạn chế trong lập trình.
III. HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI:
− Ứng dụng vi điều khiển vào điều khiển động cơ bước, servo.
− Ứng dụng encoder để đo tốc độ của motor, đo chiều dài của các cuộn giấy quấn,
máy quấn lại,… từ đó ứng dụng vào PLC để điều khiển trong công nghiệp.
− Ứng dụng giải thuật PID để điều khiển các thiết bị khác trong công nghiêp như:
điều khiển nhiệt độ, robot,…

Trường Đại Học Trà Vinh

38

Đồ án môn học 2

GVHD: Th.S Vũ Thế Đảng

TÀI LIỆU THAM KHẢO
1. Tài liệu VI ĐIỀU KHIỂN CẤU TRÚC-LẬP TRÌNH VÀ ỨNG DỤNG _ Kiều
Xuân Thực (Chủ biên). Nhà xuất bản giáo dục Việt Nam.
2. Giáo trình 89C51,89S52 trường Đại Học SPKT TP HCM.
3. Tài liệu học AVR – Internet (www.hocavr.com)
4. Website: www.codientu.biz, www.electronicctu.net
5. Tài liệu lập trình C cho 8051, hướng dẫn sử dụng KeilC,…

Trường Đại Học Trà Vinh

39

Sign up to vote on this title
UsefulNot useful