You are on page 1of 40

BỘ CÔNG THƯƠNG

TRƯỜNG ĐẠI HỌC ĐIỆN LỰC


KHOA ĐIỀU KHIỂN VÀ TỰ ĐỘNG HÓA

ĐỒ ÁN MÔN HỌC VI XỬ LÝ
Đề tài: Thiết kế mạch điều khiển động cơ bước ( Step Motor)

Giảng viên hướng dẫn : TS. ĐOÀN THỊ HƯƠNG GIANG


Sinh viên thực hiện: Đinh Phúc Anh-19810430219
Phan Hải Đăng-19810430216
Dương Văn Huy-19810430209
Nguyễn Tùng Lâm-19810430239
Lớp : D14TDH&ĐKTBCN3

Hà Nội, tháng 10 năm 2020


ĐẶT VẤN ĐỀ VÀ NHIỆM VỤ THƯ
Thiết kế mạch điều khiển động độ động cơ bước (step Motor)
Nhiệm vụ thiết kế:
 Điều khiển động cơ theo phương pháp sử dụng độ rộng xung.
 Có các phím chức năng tương ứng để: Quay thuận cả bước; Quay thuận nửa
bước; Quay nghịch cả bước; Quay nghịch nửa bước; Dừng.
 Hiển thị các chức năng tương ứng khi chạy và tốc độ động cơ lên màn hình
LCD.
Yêu cầu:
 Đặt vấn đề và nhiệm vụ thư.
 Giới thiệu chung về bộ điều khiển
 Thiết kế phần cứng.
 Thiết kế phần mềm.
 Kết luận.
MỤC LỤC
Content

s
LỜI MỞ ĐẦU................................................................................................................................................1
LỜI CẢM ƠN................................................................................................................................................2
Đánh giá và nhận xét của GV hướng dẫn......................................................................................................3
CHƯƠNG 1: ĐẶT VẤN ĐỀ VÀ NHIỆM VỤ THỰC HIỆN.......................................................................4
I. Đặt vấn đề..........................................................................................................................................4
1. Vai trò của động cơ điện trong sản xuất........................................................................................4
2. Vai trò của động cơ điện một bước trong sản xuất........................................................................5
3. Các phương pháp điều khiển được sử dụng động cơ bước............................................................5
4. Lựa chọn thiết bị............................................................................................................................6
II. Nhiệm vụ và yêu cầu kĩ thuật........................................................................................................7
CHƯƠNG II: GIỚI THIỆU CHUNG VỀ CÁC NHÓM THIẾT BỊ TRONG THIẾT KẾ BỘ ĐIỀU
KHIỂN...........................................................................................................................................................8
I. Đặc điểm của động cơ bước...............................................................................................................8
1. Khái niệm chung............................................................................................................................8
2. Cấu tạo...........................................................................................................................................9
3. Nguyên lý hoạt động và các chế độ hoạt động................................................................................10
II. Tổng quan về họ vi điều khiển 8051................................................................................................11
1. Tóm tắt lịch sử 8051....................................................................................................................11
2. Bộ vi điều khiển 8051..................................................................................................................11
3. Sơ đồ khối chung của họ vi điều khiển 8051...............................................................................12
III. Tổng quan về vi điều khiển AT89C52.........................................................................................13
1. Vi điều khiển AT89C52...................................................................................................................13
2. Đặc tính của AT89C52................................................................................................................13
3. Sơ đồ chân và chức năng các chân của AT89C52.......................................................................14
III. Hệ thống nút bấm.........................................................................................................................17
IV. Tìm hiểu về LCD.........................................................................................................................18
CHƯƠNG III: THIẾT KẾ HỆ THỐNG......................................................................................................21
I. Sơ đồ khối hệ thống.........................................................................................................................21
II. Sơ đồ nguyên lý hệ thống................................................................................................................22
III. Thiết kế các khối..........................................................................................................................22
1. Bộ xử lý...........................................................................................................................................22
2. Bộ hiển thị....................................................................................................................................23
3. Bộ ổn định dòng...........................................................................................................................24
3. Motor bước.....................................................................................................................................25
4. Hệ thống nút bấm.........................................................................................................................25
CHƯƠNG IV: THIẾT KẾ PHẦN MỀM.....................................................................................................27
I. Lưu đồ thuật toán.............................................................................................................................27
II. Chương trình điều khiển..................................................................................................................28
KẾT LUẬN..................................................................................................................................................33
TÀI LIỆU THAM KHẢO...........................................................................................................................34
LỜI MỞ ĐẦU
Như chúng ta đã biết kỹ thuật vi điều khiển đã trở nên quen thuộc trong các ngành
kỹ thuật và trong dân dụng. Các bộ vi điều khiển có khả năng xử lý nhiều hoạt động phức
tạp mà chỉ cần một chip vi mạch nhỏ, nó đã thay thế các tủ điều khiển lớn và phức tạp
bằng những mạch điện gọn nhẹ, dễ dàng thao tác sử dụng.
Vi điều khiển không những góp phần vào kỹ thuật điều khiển mà còn góp phần to
lớn vào việc phát triển thông tin. Chính vì các lý do trên, việc tìm hiểu, khảo sát vi điều
khiển là điều mà các sinh viên ngành điện phải hết sức quan tâm. Đó chính là một nhu
cầu cần thiết và cấp bách đối với mỗi sinh viên, đề tài này được thực hiện chính là đáp
ứng nhu cầu đó.
Mặc dù vi điều khiển đã đi được những bước dài như vậy nhưng để tiếp cận được
với kỹ thuật này không thể là một việc có được trong một sớm một chiều. Để tìm hiểu bộ
vi điều khiển một cách khoa học và mang lại hiệu quả cao làm nền tảng cho việc xâm
nhập vào những hệ thống tối tân hơn. Việc trang bị những kiến thức về vi điều khiển cho
sinh viên là hết sức cần thiết. Xuất phát từ thực tiển này em đã đi đến quyết định Thiết kế
mạch điều khiển động độ động cơ bước (Step Motor) nhằm đáp ứng nhu cầu ham muốn
học hỏi của bản thân và giúp cho các bạn sinh viên dễ tiếp cận và hiểu sâu hơn về vi điều
khiển họ 8051
Tuy nhiên vì thời gian có hạn và kiến thức chuyên môn còn hạn chế nên trong quá
trình thực hiện đồ án không thể tránh những thiếu sót nhất định. Vì vậy, chúng em rất
mong sự giúp đỡ, ý kiến đóng góp của thầy cô cùng tất cả các bạn để đồ án này được
hoàn thiện hơn.
Chúng em chân thành cảm ơn!

1
LỜI CẢM ƠN

Lời đầu tiên chúng em xin được gửi lời cảm ơn đến cô Đoàn Thị Hương Giang.
Cô đã hướng dẫn và giúp đỡ tận tình chúng em nghiên cứu và hoàn thành tốt đồ án này.
Những lời nhận xét góp ý và hướng dẫn của thầy đã giúp chúng em có định hướng đúng
đắn trong quá trình thực hiện đồ án, giúp chúng em nhìn ra được ưu khuyết điểm của đồ
án và từng bước khắc phục để có được kết quả tốt nhất. Chúng em cũng xin cảm ơn thầy
cô trong khoa Điều Khiển và Tự Động Hóa, bộ môn Vi Xử Lý trong Đo Lường Điều
Khiển tận tình chỉ bảo, truyền đạt cho chúng em các kiến thức chuyên ngành, những công
nghệ mới cũng như cách làm việc nhóm đề hoàn thành tốt đồ án môn học này.

Hà Nội, tháng 04 năm 2023

2
Đánh giá và nhận xét của GV hướng dẫn

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

Giảng viên hướng dẫn

3
CHƯƠNG 1: ĐẶT VẤN ĐỀ VÀ NHIỆM VỤ THỰC HIỆN
I. Đặt vấn đề
1. Vai trò của động cơ điện trong sản xuất
Hiện nay trong rất nhiều lĩnh vực đời sống và sản xuất các loại động cơ điện ngày
càng được ứng dụng rộng rãi hơn so với những loại động cơ sử dụng năng lượng như
xăng, dầu khí, khi đốt…
Động cơ điện là máy điện dùng để chuyển đổi năng lượng điện sang năng lượng
cơ.
Động cơ điện được dùng trong hấu hết mọi lĩnh vực, từ các động cơ nhỏ dùng
trong lò vi sóng để chuyển động đĩa quay, hay trong các máy đọc đĩa (máy chơi CD hay
DVD), đến các đồ nghề như máy khoan, hay các máy gia dụng như máy giặt, sự hoạt
động của thang máy hay các hệ thống thông gió cũng dựa vào động cơ điện.
Ở nhiều nước động cơ điện được dùng trong các phương tiện vận chuyển, đặc biệt
trong các đầu máy xe lửa.Trong công nghệ máy tính: Động cơ điện được sử dụng trong
các ổ cứng, ổ quang, chúng là các động cơ bước rất nhỏ. Sở dĩ, động cơ điện được đánh
giá cao và ứng dụng phổ biến trong nhiều lĩnh vực hiện nay là bởi nguyên tắc hoạt động
vô cùng thông minh của nó.
Động cơ điện bao gồm 2 bộ phận chính được gọi là rotor và stator. Khi cuộn dây
trên rotor và stator được nối với nguồn điện, các từ trường sẽ được tạo ra xung quanh và
tạo ra sự chuyển động quay của rotor quanh trục hay 1 mômen. Đa số các động cơ điện
đều hoạt động theo nguyên lý điện từ. Các động cơ điện từ
Dựa vào nguyên lí hoạt động là có một lực cơ học trên một cuộn dây có dòng điện
chạy qua nằm trong một từ trường. Nhờ đó mà động cơ có thể hoạt động liên tục, bền bỉ
và tiết kiệm năng lượng.

4
2. Vai trò của động cơ điện một bước trong sản xuất
a. Ưu điểm
- Có thế điều khiển mạch hở.
- Duy trì mô men rất tốt (không cần phanh, biến tốc).
- Giá thành rẻ
- Mômen xoắn cao ở tốc độ thấp.
- Chi phí bảo dưỡng thấp (không có chổi quét)
- Định vị chính xác
b. Nhược điểm
- Động cơ làm việc không đểu, đặc biệt là ỏ tốc độ thấp (điều khiển đầy bước).
- Tiêu thụ dòng điện không phụ thuộc vào tải.
- Kích cỡ hạn chế.
- Làm việc ồn.
- Mô men giảm theo tốc độ.
- Không có phản hồi nên có thể xảy ra các sai số.
3. Các phương pháp điều khiển được sử dụng động cơ bước
Động cơ bước có thể được điều khiển bởi nhiều cách khác nhau từ những thiết bị
thô sơ nhất như nút bấm, mạch điện-điện tử tuy cách sử dụng vận hành các thiết bị này
đơn giản nhưng đòi hỏi người vận hành phải có mặt trực tiếp tại hiện trường để sử dụng
thiết bị điều khiển.
Ngày nay, công nghệ kỹ thuật điện-điện tử, công nghệ thông tin phát triển, giải
pháp tự động hóa trong điều khiển ngày càng được áp dụng rộng rãi trong đời sống , sản
xuất. Việc sử dụng tự động hóa trong điều khiển đáp ứng được việc có thể điều khiển
thiết bị khác ở mọi lúc mọi nơi mà không cần có mặt tại hiện trường, tiết kiệm được thời
gian, công sức cho người sử dụng.
 Vì vậy, để đáp ứng yêu cầu đề tài chúng em tập trung vào những vấn đề sau:
- Tìm hiểu, lựa chọn động cơ một chiều.
- Tìm hiểu, lựa chọn các linh kiện, thiết bị trong hệ thống điều khiển như: LCD
16x2, module ULN2003, , các loại nút bấm, điện trở, tụ điện…

5
Thiết kế một hệ thống điều khiển động cơ bước sử dụng vi điều khiển theo yêu cầu
công nghệ của đề tài.
4. Lựa chọn thiết bị
a. Động cơ bước
Đề tài yêu cầu đối tượng điều khiển là động cơ bước, để phù hợp với yêu cầu của
đề tài và quá trình tìm hiểu, thiết kế, vậy nên chúng em chọn động cơ bước 28BYJ-48:
- Điện áp cung cấp: 5VDC.
- Số phase: 4.
Động cơ bước chúng em đang sử dụng có 4 cực và cơ cấu giảm tốc để tăng
momen xoắn. Góc bước của động cơ là 5,64 °. Nhưng khi xét giảm tốc, góc bước của trục
đầu ra là 5,64°/64°.
b. Module ULN2003
Để điều khiển động cơ bưóc, chúng em sử dụng module ULN2003. Dựa vào các
thông số của động cơ bước, chọn module ULN2003 có thông số như sau:
- Điện áp đầu vào: 5 ~ 12 VDC
- Tín hiệu ngõ vào: 4 chân in1, in2, in3, in4.
- Tín hiệu ngõ ra: Jack cắm động cơ bước 28BYJ-48.
- 4 led hiển thị trạng thái hoạt động của động cơ.
c. Vi điều khiển
Đối với vi điều khiển , chúng em sử dụng vi điều khiển AT89C52 thuộc họ vi điều
khiển MCS51 :
- Điện áp hoạt động: 4V - 5.5V
- Dòng điện nuôi vi điều khiển: 25mA
- Dòng đầu ra của các Port cỡ 15mA
d. Nút bấm
Để điều khiển chọn chế độ chạy cho động cơ, chúng em sử dụng nút bấm vuông
cỡ 6x6x5mm có thông số như sau:
- Nút nhấn chịu điện áp định mức: AC 250V
- Tải định mức : DC 12V 50mA

6
- Trở kháng định mức khi tắt (OFF): ≥100MΩ
- Trở kháng định mức khi mở (ON): ≤0.03Ω
e. Thạch anh
Thạch anh sử dụng là loại 12Mhz 49S có thông số như sau:
- Tần số: 12MHz
- Dung sai tần số: ±20ppm
- ESR (Equivalent series resistance): 30 Ohm
- Nhiệt độ hoạt động: -20oC ~ 70oC
II. Nhiệm vụ và yêu cầu kĩ thuật
Thiết kế một mạch điều khiển động cơ DC 5V với các yêu cầu quay thuận, quay
ngược, quay thuận nửa bước, quay nghịch nửa bước, dừng.
Thực hiện thao tác điều chỉnh các chức năng trên thông qua các nút ấn bao gồm 5
phím bấm điều chỉnh quay thuận cả bước; quay thuận nửa bước; quay nghịch cả bước;
quay nghịch nửa bước; dừng cấp độ quay. Thông qua các nút ấn cho phép ta có thể điều
chỉnh động cơ làm việc như mong muốn.
Hệ thống cho phép hiển thị quá trình làm việc có thể sử dụng LCD để thông báo
trạng thái của động cơ.
Thông qua đề tài, làm quen với cách thức, nguyên lý điều khiển đối tượng động cơ
bước.
- Tìm hiểu thực tế các linh kiện, các IC
- Viết chương trình cho vi điều khiển thực hiện thành công theo yêu cầu đề ra.
- Tìm hiểu các hướng phát triển của đề tài, nâng cao chất lượng của hệ thống.
- Chi phí cho hệ thống không quá cao, phù hợp với yêu cầu kinh tế.

7
CHƯƠNG II: GIỚI THIỆU CHUNG VỀ CÁC NHÓM THIẾT BỊ
TRONG THIẾT KẾ BỘ ĐIỀU KHIỂN

I. Đặc điểm của động cơ bước


1. Khái niệm chung
Động cơ bước là loại động cơ điện được dùng để biến đổi các lệnh cho dưới dạng
xung điện thành sự dịch chuyển dút khoát về góc quay hay đường thẳng –như là bước
từng bước mà không cần cảm biến phản hồi.
Động cơ bước được ứng dụng nhiều trong ngành tự động hóa, chúng được ứng
dụng trong các thiết bị cần điều khiển chính xác. Ví dụ : điều khiển robot, điều khiển tiêu
cự trong các thiết bị gia công cắt gọt, điều khiển lập trính trong các thiết bị gia công cắt
gọt, điều khiển các cơ cấu lái phương và chiều trong máy bay….
Trong công nghệ máy tính động cơ bước được sử dụng cho các loại ổ đĩa, máy in,

Hình 2.1: Động cơ bước


Với nhiệm vụ và chức năng nói trên, động cơ bước đòi hỏi những yêu cầu riêng về
kĩ thuật , ngoài những yêu cầu chung
- Có bước dịch chuyển bé
- Moment đồng bộ hóa đủ lớn đảm bảo được sai số góc nhỏ nhất khi thực hiện bước

8
di chuyển
- Không tích lũy sai số khi tăng bước
- Tác động nhanh
- Làm việc đảm bảo khi có cuộn dây điều khiển ít nhất
- Động cơ và cả bộ điều khiển đổi chiều có cấu tạo đơn giản
Tùy theo cấu tạo động cơ bước có những loại như:
- Chỉ thị hay động lực
- Thuận nghịch hay không thuận nghịch
- Có một stato hay nhiều stato
- Có một hay nhiều cuộn dây điều khiển
- Roto phản kháng và roto tác dụng
2. Cấu tạo
Gồm có 2 phần chinh: phần quay (Rotor) và được bao quanh là phần tĩnh (Stator)

Hình 2.2: Cấu tạo động cơ bước


a. Stator
Hai bộ phận chính của Stator là lõi thép (mạch từ) và dây quấn:
- Lõi thép làm bằng các lá thép kĩ thuật điện dập theo khuôn rồi ghép lại dạng hình
trụ rỗng, mặt trong có phay rãnh. Trong rãnh là dây quấn máy điện có thể là dây
quấn 2 pha, 3 pha. Phía ngoài Stator có vỏ bằng nhôm hoặc hợp kim của nhôm,

9
hai đầu Stator có 2 nắp làm cùng vật liệu với vỏ và bắt chặt với vỏ. Trên nắp máy
có lắp ổ trục để đỡ trục quay của Rotor
- Dây quấn Stator của động cơ bước nam châm vĩnh cửu là loại dây điện từ, có tiết
diện hình tròn hoặc hình chữ nhật. Dây quấn Stator được chia thành nhiều pha dây
quấn, mỗi pha có một tổ bối dây, mỗi tổ bối dây có W số vòng dây và được lồng
vào cực từ của Stator.
b. Rotor
Rotor của động cơ bước có cấu tạo thường không có răng cực từ, được từ hóa vĩnh
cửu vuông góc với trục và được lồng vào phía trong của Stator. Cực từ của Rotor thường
là 2 hoặc 6 cực từ (N – S) xen kẽ nhau.
3. Nguyên lý hoạt động và các chế độ hoạt động
a. Nguyên lý hoạt động
Khác với động cơ đồng bộ bình thường, rotor của động cơ bước không có cuộn dây
khởi động mà nó được khởi động bằng phương pháp tần số. Rotor của động cơ bước có
thể kích thích (rotor tích cực) hoặc không được kích thích (rotor thụ động). Động cơ bước
không quay theo cơ chế thông thường, chúng quay theo từng bước nên có độ chính xác
rất cao về mặt điều khiển. Động cơ bước làm việc nhờ các bộ chuyển mạch điện tử đưa
các tính hiệu điều khiển vào stato theo thứ tự và một tần số nhất định. Tổng số góc quay
của rotor tương ứng với số lần chuyển mạch, cũng như chiều quay và tốc độ của rotor
phụ thuộc vào thứ tự chuyển đổi và tần số chuyển đổi.
b. Các chế độ hoạt động
 Chế độ full step
Động cơ bước tiêu chuẩn có rotor 200 răng, hoặc 200 full step cho mỗi trục xoay của
động cơ. Chia 200 bước cho 360 sẽ được một góc full step 1,8. Thông thường, chế độ full
step được thực hiện bằng cách tiếp điện theo thứ tự liên tiếp theo số chẵn cuộn dây hoặc
số lẻ cuộn dây, trong khi duy trì dòng thay đổi. Về cơ bản mỗi đầu vào từ trình điều khiển
tương đương một bước.
 Chế độ half step

10
Half step đơn giản chỉ có nghĩa là động cơ quay ở 400 bước mỗi vòng. Trong chế độ
này, một trong những cuộn dây được tiếp điện và sau đó hai cuộn dây được tiếp điện thay
phiên (đây được cấp điện theo thứ tự số lẻ cuộn dây rồi tới số chẵn cuộn dây hoặc ngược
lại), làm trục quay ở nửa khoảng cách hoặc 0,9.
II. Tổng quan về họ vi điều khiển 8051
1. Tóm tắt lịch sử 8051
Vào năm 1981. Hãng Intel giới thiệu một số bộ vi điều khiển được gọi là 8051. Bộ
vi điều khiển này có 128 byte RAM, 4K byte ROM trên chíp, hai bộ định thời, một cổng
nối tiếp và 4 cổng (đều rộng 8 bit) vào ra tất cả được đặt trên một chíp. Lúc ấy nó được
coi là một “hệ thống trên chíp”. 8051 là một bộ xử lý 8 bit có nghĩa là CPU chỉ có thể làm
việc với 8 bit dữ liệu tại một thời điểm. Dữ liệu lớn hơn 8 bit được chia ra thành các dữ
liệu 8 bit để cho xử lý. 8051 có tất cả 4 cổng vào - ra I/O mỗi cổng rộng 8 bit. Mặc dù
8051 có thể có một ROM trên chíp cực đại là 64 K byte, nhưng các nhà sản xuất lúc đó
đã cho xuất xưởng chỉ với 4K byte ROM trên chíp. Điều này sẽ được bàn chi tiết hơn sau
này.
8051 đã trở nên phổ biến sau khi Intel cho phép các nhà sản xuất khác sản xuất và
bán bất kỳ dạng biến thế nào của 8051 mà họ thích với điều kiện họ phải để mã lại tương
thích với 8051. Điều này dẫn đến sự ra đời nhiều phiên bản của 8051 với các tốc độ khác
nhau và dung lượng ROM trên chíp khác nhau được bán bởi hơn nửa các nhà sản xuất.
Điều này quan trọng là mặc dù có nhiều biến thể khác nhau của 8051 về tốc độ và dung
lương nhớ ROM trên chíp, nhưng tất cả chúng đều tương thích với 8051 ban đầu về các
lệnh. Điều này có nghĩa là nếu ta viết chương trình của mình cho một phiên bản nào đó
thì nó cũng sẽ chạy với mọi phiên bản bất kỳ khác mà không phân biệt nó từ hãng sản
xuất nào.
2. Bộ vi điều khiển 8051
Đặc tính Số lượng
ROM trên chíp 4K byte
RAM 128byte

11
Bộ định thời 2
Các chân vào – ra 32
Cổng nối tiếp 1
Nguồn ngắt 6

Bảng 2.1: Các đặc tính của 8051


3. Sơ đồ khối chung của họ vi điều khiển 8051
- Interrupt control : Điều khiển ngắt.
- Other registers : Các thanh ghi khác.
- 128 Byte RAM : RAM 128 Byte.
- Timer 2, 1 , 0 : Bộđịnh thời 2 , 1 , 0
- CPU : Đơn vịđiều khiển trung tâm.
- Oscillator : Mạch dao động.
- Bus control: Điều khiển Bus
- I/O ports: Các ports vào/ ra
- Serial port: port nối tiếp
- Address/data : địa chỉ/ dữ liệu

12
Hình 2.3: Bố trí bên trong của sơ đồ khối 8051
III. Tổng quan về vi điều khiển AT89C52
1. Vi điều khiển AT89C52
AT89C52 là họ IC vi điều khiển do hãng Atmel sản xuất. Các sản phẩm AT89C52
thích hợp cho những ứng dụng điều khiển. Việc xử lý trên byte và các toán số học ở
cấu trúc dữ liệu nhỏ được thực hiện bằng nhiều chế độ truy xuất dữ liệu nhanh trên
RAM nội. Nó cung cấp những hổ trợ mở rộng trên chip dùng cho những biến một bit
như là kiểu dữ liệu riêng biệt cho phép quản lý và kiểm tra bit trực tiếp trong hệ thống
điều khiển.

Hình 2.4 : Vi điều khiển AT89C52


2. Đặc tính của AT89C52
Chíp AT89C51 chứa trên 60000 Transistor bao gồm 4Kbyte ROM, 128Byte
RAM, 32 đường xuất nhập, 1 Port nối tiếp và 2 bộ định thời 16 bit. Một số lượng
mạch đáng chú ý trong IC đơn. Các thành viên mới được thêm vào cho họ MCS-51 và
các biến thể này gần như có gấp đôi các đặc trưng này. Tập đoàn Seimens, nguồn sản
xuất thứ hai các bộ vi điều khiển thuộc họ MCS-50 cung cấp Chíp SAB80515, một
cải tiến của 8051 chứa trong một vỏ 68 chân, có 6 Port xuất nhập 8-bit, 13 nguồn tạo

13
ra ngắt và một bộ biến đổi A/D 8-bit với 8 kênh ngõ vào. Họ 8051 là một trong những
bộ vi điều khiển 8-bit mạnh và linh hoạt nhất, đã trở thành bộ vi điều khiển hàng đầu
trong những năm gần đây.
- Cụ thể vi điều khiển AT89C51 là 1 IC có tích hợp trên đó hệ vi xử lí.
- IC AT98C51 có 40 chân.
- 4KB ROM trong và có thể ghi xoá được 1000 lần.
- Dải tần số hoạt động từ 0MHz → 24MHz.
- 128x8 bit RAM trong.
- 4 Cổng vào ra 8 bit.
- 2 Bộ định thời 16 bit.
- Có 6 nguyên nhân ngắt.
- Có thể lập trình được qua cổng nối tiếp.
- 210 bit được địa chỉ hoá.
- Giao tiếp nối tiếp.
3. Sơ đồ chân và chức năng các chân của AT89C52

Hình 2.5: Sơ đồ chân của AT89C52

14
- PORT 0 : Nằm trên các chân từ 32 đến 39 có 2 công dụng. Trong các thiết kế có
tối thiểu thành phần thì Port 0 được sử dụng làm nhiệm vụxuất/nhập. Trong các
thiết kế lớn hơn có bộ nhớ ngoài, Port 0 trở thành Bus địa chỉ và Bus dữ liệu đa
hợp..
- PORT 1 : Nằm trên các chân 1 đến 8, chỉ có một cộng dụng là đểgao tiếp với thiết
bị ngoài khi có yêu cầu.
- PORT 2 : Nằm trên các chân 21 đến 28 có 2 công dụng hoặc làm nhiệm vụ
xuất/nhập hoặc là Byte địa chỉ cao của BUS địa chỉ 16 bit cho các thiết kế có
nhiều hơn 256Byte bộ nhớ dữ liệu ngoài.
- PORT 3 : Nằm trên các chân 10 đến 17 có 2 công dụng. một là chức năng
xuất/nhập bình thường còn khi không hoạt động xuất nhập các chân của PORT 3
có nhiều chức năng riêng Cụ thể các chức năng của các chân ở PORT 3 như sau :
Bit Tên Địa Chỉ Bit Chức năng
P3.0 RxD B0H Nhận dữ liệu của Port nối tiếp
P3.1 TxD B1H Phát dữ liệu của Port nối tiếp
P3.2 INT 0 B2H Ngõ vào ngắt ngoài 0
P3.3 INT 1 B3H Ngõ vào ngắt ngoài 1
P3.4 T0 B4H Ngõ vào của bộ định thời/ đếm 0
P3.5 T1 B5H Ngõ vào của bộ định thời/ đếm 1
P3.6 WR B6H Điều khiển ghi bộ nhớ dữ liệu ngoài
P3.7 RD B7H Điều khiển đọc bộ nhớ dữ liệu ngoài

Bảng 2.2: Các chức năng của PORT 3


- Chân cho phép bộ nhớ chương trình PSEN
8051 Cung cấp cho ta 4 tín hiệu điều khiển BUS. Tín hiệu cho phép bộ nhớ
chương trình PSEN (Program Store Enable) là tín hiệu xuất trên chân 29. Đây là tín hiệu
điều khiển cho phép ta truy xuất bộ nhớ chương trình ngoài. Chân này thường được nối
với chân cho phép xuất OE ( Output Enable) của EPROM hoặc ROM để cho phép đọc

15
các Byte lệnh.
Tín hiệu PSEN ở mức Logic 0 trong suất thời gian tìm nạp lệnh, các mã nhị phân
của chương trình hay mã thao tác (Opcode) được đọc từEPROM qua BUS dữ liệu và
được chốt vào thanh ghi IR của 8051 để được giải mã.
Khi thực thi một chương trình chứa ở ROM nội PSEN được duy trì ở mức Logic
tích cực 1.
- Chân cho phép chốt địa chỉ ALE.
Chân này nằm trên chân 30 của 8051 là chân xuất tín hiệu cho phép chốt địa chỉ
ALE (Address Latch Enable) để giải đa hợp. Bus dữ liệu và Bus địa chỉ. Khi Port 0 được
sử dụng làm Bus địa chỉ/dữ liệu đa hợp chân ALE xuất tín hiệu để chốt địa chỉ ( Byte
thấp của địa chỉ 16bit) vào một thanh ghi ngoài trong suốt 1/2 đầu chu kỳ bộ nhớ. Sau khi
điều này đã được thực hiện các chân của Port 0 sẽ xuất nhập dữ liệu hợp lệ trong suốt 1/2
thứ2 của chu kỳ bộ nhớ.
Tín hiệu ALE có tần số bằng 1/6 tần số của mạch dao động bên trong vi điều khiển
và có thể được dùng làm xung Clock cho phần còn lại của hệthống. Nếu mạch dao động
có tần số 12MHz, tín hiệu ALE có tần số2MHz. Ngoại lệ duy nhất là trong thời gian thực
thi lệnh MOVX, một xung ALE sẽ bị bỏ qua. Chân ALE còn được dùng để nhận xung
ngõ vào lập trình cho EPROM trên CHIP đối với các phiên bản của 8051 có EPROM
này.
- Chân truy xuất ngoài EA.
Ngõ vào này ở chân 31 có thểđược nối với nguồn +5V (Logic 1) hoặc GND
(Logic 0). Nếu chân này nối lên 5V , 8051/8052 thực thi chương trình trong ROM
nội( chương trình nhỏ hơn 4K/8K). Nếu chân này nối với GND ( và chân PSEN cũng ở
mức Logic 0), chương trình cần thực thi chứa ở bộ nhớ ngoài. Đối với 8031/8032 chân
EA phải ở mức Logic 0 vì chúng không có bộ nhớ chương trình trên CHIP. Nếu chân EA
ở mức Logic 0 đối với 8051/8052, ROM nội bên trong CHIP được vô hiệu hoá và
chương trình cần thực thi chứa ở EPROM bên ngoài.
Các phiên bản EPROM của 8051 còn sử dụng chân EA làm chân nhận điện áp cấp
nguồn 21VPP cho việc lập trình EPROM nội ( Nạp EPROM).

16
- Chân RESET ( RST).
Ngõ vào RST ở chân 9 là ngõ vào xoá chính (Master reset) của 8051 dùng để thiết
lập lại trạng thái ban đầu cho hệ thống hay còn gọi tắt là Reset hệ thống. Khi ngõ vào này
được treo ở mức Logic 1 tối thiểu hai chu kỳ máy , các thanh ghi bên trong của 8051
được nạp các giá trị thích hợp cho việc khởi động lại hệ thống.
- Các chân thạch anh XTAL 1 và XTAL 2.
Nằm trên chân 18 và 19 của CHIP, 2 chân này được dùng để nối với thạch anh
ngoài nhằm tái tạo dao động và xác định tần số làm việc cho mạch dao động ở bên trong
CHIP. Kết hợp với thạch anh có thêm 2 tụ gốm để ổn định tần số dao động. Tần số danh
định của thạch anh là 12MHz cho hầu hết các CHIP của họ MCS – 51.
III. Hệ thống nút bấm
 Điều khiển ngoài: Để điều khiển chiều quay và các chế độ của động cơ bước,
ở đây chúng em sử dụng phím bấm như sau:

Hình 2.6: Sơ đồ phím nhấn trên phần mềm

Các phím bấm sử dụng có

17
 Phím B1: chế độ Quay Thuận cả bước
 Phím B2: chế độ Quay Thuận nửa bước,
 Phím B3: chế độ Quay Nghịch cả bước
 Phím B4: chế độ Quay Nghịch nửa bước bước
 Phím B5 : phím Dừng động cơ bước

- Thông qua các nút ấn cho phép ta có thể điều chỉnh động cơ làm việc như mong
muốn.
- Hệ thống cho phép hiển thị quá trình làm việc có thể sử dụng LCD để thông báo
trạng thái quay thuận, quay ngược, dừng.
- Thông qua đề tài, làm quen với cách thức, nguyên lý điều khiển đối tượng động cơ
bước.
- Tìm hiểu thực tế các linh kiện, các IC
- Viết chương trình cho vi điều khiển thực hiện thành công theo yêu cầu đề ra.
- Tìm hiểu các hướng phát triển của đề tài, nâng cao chất lượng của hệ thống.
- Chi phí cho hệ thống không quá cao, phù hợp với yêu cầu kinh tế.
IV. Tìm hiểu về LCD
Ngày nay thiết bị hiển thị LCD ( Liquid Crystal Display) được sử dụng trong rất
nhiều các ứng dụng của vi điều khiển. LCD có rất nhiều ưu điểm so với các dạng hiển thị
khác: Nó có khả năng hiển thị kí tự đa dạng, trực quan (chữ, số và kí tự đồ họa), dễ dàng
đưa vào mạch ứng dụng theo nhiều giao thức giao tiếp khác nhau, tốn rất ít tài nguyên hệ
thống và giá thành rẻ.

18
Hình 2.7 : Hình dáng LCD
- Chức năng của các chân:

Mô tả
Chân Kí hiệu
Chân nối đất cho LCD, khi thiết kế mạch ta nối chân này với GND của
1 VSS mạch điều khiển
Chân cấp nguồn cho LCD, khi thiết kế mạch ta nối chân này với
2 VDD VCC=5V của mạch
điều khiển
3 Vee Chân này dùng để điều chỉnh độ tương phản của LCD.

Chân chọn thanh ghi (Register select). Nối chân RS với logic “0”
(GND) hoặc logic “1” (VCC) để chọn thanh ghi.
+ Logic “0”: Bus DB0-DB7 sẽ nối với thanh ghi lệnh IR của LCD (ở
4 RS chế độ “ghi” - write) hoặc nối với bộ đếm địa chỉ của LCD (ở chế độ
“đọc” - read)
+ Logic “1”: Bus DB0-DB7 sẽ nối với thanh ghi dữ liệu DR bên trong
LCD.
Chân chọn chế độ đọc/ghi (Read/Write). Nối chân R/W với logic “0”
để LCD hoạt
19
5 R/W động ở chế độ ghi, hoặc nối với logic “1” để LCD ở chế độ đọc.
Chân cho phép (Enable). Sau khi các tín hiệu được đặt lên bus DB0-
DB7, các lệnh chỉ được chấp nhận khi có 1 xung cho phép của chân E.
+ Ở chế độ ghi: Dữ liệu ở bus sẽ được LCD chuyển vào(chấp nhận)
thanh ghi bên trong nó khi phát hiện một xung (high-to-low transition)
6 E của tín hiệu chân E.
+ Ở chế độ đọc: Dữ liệu sẽ được LCD xuất ra DB0-DB7 khi phát hiện
cạnh lên (low- to-high transition) ở chân E và được LCD giữ ở bus đến
khi nào chân E xuống mức thấp.
Tám đường của bus dữ liệu dùng để trao đổi thông tin với MPU. Có 2
chế độ sử dụng 8 đường bus này :
DB0- + Chế độ 8 bit : Dữ liệu được truyền trên cả 8 đường, với bit MSB là
7-14 DB7 bit DB7.
+ Chế độ 4 bit : Dữ liệu được truyền trên 4 đường từ DB4 tới DB7, bit
MSB là DB7 Chi tiết sử dụng 2 giao thức này được đề cập ở phần sau.
15 Nguồn dương cho đèn nền

16 GND cho đèn nền

20
CHƯƠNG III: THIẾT KẾ HỆ THỐNG
I. Sơ đồ khối hệ thống
Với yêu cầu của đề tài là thiết kế hệ thống điều khiển động cơ bước bằng cách sử
dụng chip vi điều khiển để điều khiển động cơ bước, vì vậy em xin đưa ra sơ đồ khối như
sau:

Điều khiển
Khối hiển thị
ngoài

Động Khuếch
cơ đại dòng Bộ xử lý
bước

Khối nguồn

Hình 3.1: Sơ đồ khối điều khiển động cơ bước

21
II. Sơ đồ nguyên lý hệ thống

III. Thiết kế các khối


1. Bộ xử lý
Bộ xử lý làm nhiệm vụ nhận tín hiệu điều khiển từ bên ngoài như số bước, tốc độ,
hiển thị thông số trên màn hình LCD, điều khiển cho động cơ quay theo thông số nhập
vào. Như đã phân tích trong chương I, ở đây chúng em sử dụng vi điều khiển AT89S52.
Đây là vi điều khiển có 40 chân

22
Hình 3.2: Sơ đồ mạch bộ xử lý trên phần mềm
2. Bộ hiển thị
Sử dụng màn hình tinh thể lỏng LCD (Liquid Crytal Display) loại 2 dòng, 16 kí tự
LCD1602. Màn hình LCD đã rất phổ biến trên thị trường và việc lập trình cho nó rất đơn
giản thêm vào đó là nó có mặt thẩm mỹ rất cao. Sử dụng nguồn nuôi thấp (từ 2,5V đến
5V). Có thể hoạt động ở hai chế độ 4 bit hoặc 8 bit .

Hình 3.3: Sơ đồ khối hiển thị LCD trên phần mềm

23
3. Bộ ổn định dòng
Bộ ổn định dòng: (ULN 2003) Nhằm mục đích hỗ trợ dòng cho motor bước, luôn
giữ cho dòng cấp vào motor là <500 mA
Đối với những ứng dụng mà mỗi cuộn dây của động cơ dẫn dòng nhỏ hơn 500mA,
mạch darlington họ ULN200x của Allegro Microsystems hoặc họ DS200x của
National Semiconductor hay MC1413 của Motorola sẽ dẫn động cho cuộn dây hoặc
các tải cảm ứng khác trực tiếp từ tín hiệu logic.
 Sơ đồ chân IC ULN 2003

Hình 3.4: Sơ chân UNL 2003 trên phần mềm


Điện trở nền trên mỗi transistor darlington phải thích hợp với tín hiệu ra TTL lưỡng
cực chuẩn. Cực phát của mỗi darlington NPN được nối với chân 8, là chân nối đất. Mỗi
transistor được bảo vệ bằng 2 diode, một nối giữa cực phát và cực thu để bảo vệ transistor
khỏi điện áp ngược, một nối cực thu với chân, nếu chân 9 nối với nguồn của động cơ thì
diode này sẽ bảo vệ transistor khỏi đỉnh nhọn của độ tự cảm.
 Chức năng các chân IC ULN2003

24
- IC ULN2003 có 8 đầu vào (từ chân 1->7) có chức năng nhận các tín hiệu dòng vào
cần khuếch đại.
- IC ULN2003 có 8 đầu ra (từ chân 9 ->16) tín hiệu qua các chân đã được khuếch
đại theo yêu cầu và làm nhiệm vụ kết nối với thiết bị cần hỗ trợ dòng
- Chân 8 thường được nối đất, chân 9 hoặc 10 được cấp nguồn dương + 5VDC.
3. Motor bước
Motor bước là đối tượng điều khiển, ở đây chúng em sử dụng loại motor lưỡng cực,
có góc quay là 1,8 độ mỗi bước.

Hình 3.5: Hình ảnh của động cơ bước


4. Hệ thống nút bấm
 Điều khiển ngoài: Để điều khiển chiều quay và các chế độ của động cơ bước, ở
đây chúng em sử dụng phím bấm như sau:

25
Hình 3.6: Sơ đồ phím nhấn trên phần mềm

Các nút bấm được nối với các điện trở có giá trị 10kΩ. Khi bấm một trong các nút
thì dòng điện có giá trị thay đổi lên 5V được VĐK tiếp nhận và xử lý theo đúng chức
năng của nút bấm đó.

26
CHƯƠNG IV: THIẾT KẾ PHẦN MỀM
I. Lưu đồ thuật toán

27
II. Chương trình điều khiển
$mod51; khai bao bien
U equ 31
L equ 32
S equ 33 ;bien nho
org 0000H
ljmp main1
org 200H
main1:
mov p0,#00H
mov R7,#0
main:
mov a,p1
anl a,#00011111B
cjne a,#00011111B,check1
ljmp mode1
;======================================================
;check phim
check1:
cjne a,#00011110B,check2 ;check phim 1
mov R7,#1
check2:
cjne a,#00011101b,check3 ;check phim 2
mov R7,#2
check3:
cjne a,#00011011b,check4 ;check phim 3
mov R7,#3
check4:
cjne a,#00010111b,check5 ;check phim 4
mov R7,#4
check5:
cjne a,#00001111b,mode1 ;check phim 5
mov R7,#5
mode1:
cjne R7,#1,mode2
lcall hienlcd
mov S,#1
lcall thuan ;thuan 100%
ljmp main
mode2:
cjne R7,#2,mode3
lcall hienlcd1

28
mov S,#2
lcall thuan ;;thuan 50%
ljmp main
mode3:
cjne R7,#3,mode4
lcall hienlcd2
mov S,#1
lcall nghich;nghich 100%
ljmp main
mode4:
cjne R7,#4,mode5
lcall hienlcd3
mov S,#2
lcall nghich;;nghich 50%
ljmp main
mode5:
cjne R7,#5,the_end
clr p3.1
lcall hienlcd4
mov p2,00H
ljmp main
the_end:
ljmp main
;====================================================
;====================================================
thuan:
mov p0,#00001000B
lcall delay0
mov p0,#00001100B
lcall delay0
mov p0,#00000100B
lcall delay0
mov p0,#00000110B
lcall delay0
mov p0,#00000010B
lcall delay0
mov p0,#00000011B
lcall delay0
mov p0,#00001001B
lcall delay0
ret
nghich:
mov p0,#00000001B

29
lcall delay0
mov p0,#00000011B
lcall delay0
mov p0,#00000010B
lcall delay0
mov p0,#00000110B
lcall delay0
mov p0,#00000100B
lcall delay0
mov p0,#00001100B
lcall delay0
mov p0,#00001001B
lcall delay0
ret
hienlcd:
clr p3.1
lcall init
lcall hienthi
ret
;================================
hienthi:
lcall prtLCD
db "CHE DO: THUAN 100%",0H; khai bao bien
ret
;================================
hienlcd1:
clr p3.1
lcall init
lcall hienthi1
ret
;================================
hienthi1:
lcall prtLCD
db "CHE DO: THUAN 50%",0H; khai bao bien
ret
;================================
hienlcd2:
clr p3.1
lcall init
lcall hienthi2
ret
;================================
hienthi2:

30
lcall prtLCD
db "CHE DO: NGHICH 100%",0H; khai bao bien
ret
;================================
hienlcd3:
clr p3.1
lcall init
lcall hienthi3
ret
;================================
hienthi3:
lcall prtLCD
db "CHE DO: NGHICH 50%",0H; khai bao bien
ret
;================================
hienlcd4:
clr p3.1
lcall init
lcall hienthi4
ret
;================================
hienthi4:
lcall prtLCD
db "CHE DO: DUNG",0H; khai bao bien
ret
;================================
init:
mov p2,#20H; gui 20h toi lcd de dat che do 4 bit
clr p3.0
setb p3.2
lcall delay
clr p3.2
mov A,#28h; dat giao dien 4 bit, 2 dong
lcall lcd_cmd
mov A,#0ch
lcall lcd_cmd
mov A,#06h
lcall lcd_cmd
mov A,#01h
lcall lcd_cmd
ret
;================================
lcd_cmd: ; truong trinh lcd

31
clr p3.0
lcall tachb
mov A,U
lcall dichuyen
mov A,L
lcall dichuyen
ret
;================================
tachb: ; tach 8 bit thanh 4 bit
mov U,A
anl U,#0f0h
swap A
anl A,#0f0h
mov L,A
ret
;================================
dichuyen: ; chuyen lenh sang lcd
mov p2,A
setb p3.2
lcall delay
clr p3.2
lcall delay
ret
;================================
lcd_data: ; chuyen du lieu sang lcd
setb p3.0
lcall tachb
mov A,U
lcall dichuyen
mov A,L
lcall dichuyen
ret
;================================
delay: ; tao thoi gian tre
MOV R6, #0FH
L2: MOV R5,#0FH
L1: DJNZ R5, L1
DJNZ R6, L2
RET
;================================
prtLCD:
pop dph; dua du lieu tu ngan xep ra dptr
pop dpl

32
prtnext:
mov a,#00H; dia chi offset =0
movc a,@a+dptr; sao chep noi dung trong rom
cjne a,#0,chrOK; so sanh
sjmp retPrtLCD
chrOK:
lcall lcd_data
inc dptr
ljmp prtNext
retPrtLCD:
mov a,#01H
jmp @a+dptr
ret
delay0:
mov R3,S
mov TMOD,#01H
again:
mov TL0,#00H
mov TH0,#00H
setb TR0
back:
jnb TF0,back
clr TR0
clr TF0
djnz R3,again
ret

end

33
KẾT LUẬN
Qua nghiên cứu về mạch điều khiển động cơ bước em đã hiểu thêm về vi xử lí,
động cơ bước và các phương pháp điều khiển chúng
Đề tài Thiết kế mạch điều khiển động độ động cơ bước (Step Motor) đã đáp ứng
nhu cầu ham muốn học hỏi của bản thân và giúp cho các bạn sinh viên dễ tiếp cận và hiểu
sâu hơn về vi điều khiển họ 8051. Vi điều khiển không những góp phần vào kỹ thuật điều
khiển mà còn góp phần to lớn vào việc phát triển thông tin. Chính vì các lý do trên, việc
tìm hiểu, khảo sát vi điều khiển là điều mà các sinh viên ngành điện phải hết sức quan
tâm.
Qua đó, em đã nắm rõ nguyên lí hoạt động và các phương pháp điều khiển của
động cơ bước. Hơn thế cũng nắm rõ cả về các linh kiện hay các IC mạch khác, góp phần
một chút kiến thức cho bản thân và các bạn.

34
TÀI LIỆU THAM KHẢO
1. Cấu trúc và lập trình họ Vi Điều khiển 8051 (Nhà xuất bản Khoa học và Kỹ thuật )
- Nguyễn Tăng Cường, Phan Quốc Thắng .
2. Cấu trúc lập trình ghép nối và ứng dụng của Vi điều khiển (Nhà xuất bản Lao
động – Xã hội) - Nguyễn Mạnh Giang .
3. Kỹ thuật điện tử (Nhà xuất bản Khoa học và Kỹ thuật) - Phạm Minh Hà .
4. Vi điều khiển trong đo lường và điều khiển tự động (Nhà xuất bản Khoa học và
Kỹ thuật) - Ngô Diện Tập .
5. Họ Vi điều khiển 8051 ( Nhà xuất bản Lao động – Xã hội)

35

You might also like