You are on page 1of 31

Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK

8051

Chương I

GIỚI THIỆU ĐỀ TÀI

Đề tài của em là “Lập trình điều khiển động cơ bước từ máy tính
qua cổng nối tiếp dùng vi điều khiển 8051” với giao diện thân thiện với
con người. Mục đích là kết hợp được các kiến thức đã học về tính toán
thiết kế mạch, lập trình trên vi điều khiển và trên giao diện phần mềm
để thực hiện giao tiếp giữa vi điều khiển với PC nhằm điều khiển hoạt
động của thiết bị ngoại vi là động cơ bước một cách linh hoạt.
Các mảng chính trong nội dung của thuyết minh là :
- Động cơ bước – hoạt động và nguyên lí điều khiển.
- Giao tiếp vi điều khiển P89V51RB2 với máy tính thông qua cáp
RS232 9 chân.
- Lập trình giao diện điều khiển bằng Visual Basic 6.0.

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 3
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

I.1 Giới thiệu động cơ bước :


Theo quyển “Động cơ bước – kĩ thuật điều khiển và ứng dụng” (Nguyễn Quang
Hùng – Trần Ngọc Bình) động cơ bước là loại động cơ không đồng bộ dùng để biến đổi
các tín hiệu điều khiển dưới dạng các xung điện rời rạc kế tiếp nhau thành các chuyển
động góc quay của rotor. Góc quay này có giá trị nhất định phụ thuộc vào xung điện áp
cấp vào stator theo kiểu nào, và được định nghĩa là góc bước của rotor. Thông thường
góc bước này rất nhỏ, có loại có thể đạt đến 0,72 0, và phổ biến là loại có góc bước 1,80.
Nhờ có sự điều khiển cấp xung vào các đầu dây mà ta có thể điều khiển chuyển động của
động cơ một cách chính xác, do đó động cơ bước được sử dụng rộng rãi trong kĩ thuật
điều khiển tự động, điều khiển chính xác như chuyển động của máy gia công CNC, đầu
đọc CD-ROM, máy in ...
Động cơ bước em sử dụng ở đây có số hiệu 23LM-C004, động cơ 2 pha, 6 đầu
dây, dòng qui ước là 1,2A và áp cấp vào là 6V, thuộc loại động cơ biến từ trở.
Tra catalog của series này, em xác định được các đầu dây theo màu sắc như sau :

Hình 1.1 Màu sắc các đầu dây chuẩn theo Catalog
Nếu không có catalog, có thể dùng phương pháp đo điện trở kết hợp với kích dòng
cho động cơ để xác định các đầu dây của động cơ bước căn cứ vào cấu tạo của các cuộn
dây bên trong động cơ. Đối với động cơ bước 6 dây như trên sẽ chia làm 2 nhóm, mỗi
nhóm có 3 dây trong đó có một dây chung, gọi là dây COM (common) mà điện trở của
đầu dây này đối với 2 đầu dây còn lại thuộc nhóm đó sẽ bằng nhau, còn giữa các dây
khác nhóm sẽ hoàn toàn cách điện. Dựa vào đó ta sẽ tìm được 2 dây COM và các dây
thuộc cùng nhóm với dây COM tương ứng của động cơ bước. Vấn đề còn lại là kích
dòng để tìm ra thứ tự các cuộn dây của động cơ sử dụng.
Chọn một nhóm dây, loại trừ dây COM của nhóm đó đã tìm ra bằng phương pháp
đo điện trở, đặt cho 2 dây còn lại, một dây là A, một dây là B. Nối 2 dây COM chung với

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 4
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

nhau và đấu vào nguồn điện 1 chiều ở cực dương (điện áp của nguồn này trên mức định
mức của động cơ một chút), kích lần lượt các cuộn còn lại vào cực âm của nguồn, bắt đầu
từ cuộn A  cuộn B  2 cuộn dây còn lại thuộc nhóm kia, nếu tạo ra chuyển động quay
liên tục thì thứ tự 2 cuộn còn lại là C, D còn nếu có chuyển động quay ngược lại thì thứ
tự 2 cuộn còn lại là D, C.
Việc diễn giải dài dòng song trên thực tế lại rất đơn giản, căn cứ vào hình vẽ sau :

Hình 1.2 Thứ tự đầu dây động cơ bước

Loại động cơ bước em dùng có các đầu dây có màu sắc


được ghi ở ngoài dấu ngoặc đơn hình 1.1. Theo đó 2 đầu
dây chung có màu trắng và đen. Đầu A, B, C, D theo thứ tự
là lục/trắng, lục, đỏ, đỏ/trắng.
Để tạo chuyển động quay của động cơ bước, về mặt logic có 3 cách : điều khiển cả
bước, điều khiển nửa bước và điều khiển vi bước. Hai cách đầu tiên chỉ cần điều khiển
theo thứ tự cấp xung cho các cuộn dây, còn cách thứ ba liên quan đến thay đổi dòng điện
để tạo những dịch chuyển rất nhỏ gần như vô cấp cho động cơ, khá phức tạp. Trong đồ án
này em chọn hai cách đầu để thực hiện điều khiển. Đối với điều khiển cả bước và nửa
bước cũng có nhiều cách cấp xung, mà tác dụng của nó chính là thay đổi momen quay
của động cơ. Có thể liệt kê ra tất cả các phương án có thể dùng để điều khiển cho 4 đầu
dây này như sau :
- Quay cả bước : số đầu dây được cấp xung điều khiển tuần tự như nhau theo
chiều nhất định và dịch từng bước. Cụ thể :
Thuận : Nghịch :
Chế độ 1 : cấp cho từng cuộn :
Cuộn 1 : 10001000100010001000 10001000100010001000
Cuộn 2 : 01000100010001000100 00010001000100010001
Cuộn 3 : 00100010001000100010 00100010001000100010
Cuộn 4 : 00010001000100010001 01000100010001000100
Chế độ 2 : cấp xung cho 2 cuộn kế nhau :
Cuộn 1 : 11001100110011001100 11001100110011001100
Cuộn 2 : 01100110011001100110 10011001100110011001
Cuộn 3 : 00110011001100110011 00110011001100110011

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 5
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

Cuộn 4 : 10011001100110011001 01100110011001100110


Chế độ 3 : cấp xung cho 3 cuộn kế nhau :
Cuộn 1 : 11101110111011101110 11101110111011101110
Cuộn 2 : 01110111011101110111 11011101110111011101
Cuộn 3 : 10111011101110111011 10111011101110111011
Cuộn 4 : 11011101110111011101 01110111011101110111
- Quay nửa bước : số đầu dây được cấp xung điều khiển tuần tự từ lẻ sang chẵn kế
tiếp nhau, theo chiều nhất định và dịch từng bước. Cụ thể :
Thuận : Nghịch :
Chế độ 1 : cấp cho 1 cuộn và 2 cuộn :
Cuộn 1 : 11000001110000011100 11000001110000011100
Cuộn 2 : 01110000011100000111 00000111000001110000
Cuộn 3 : 00011100001110000011 00011100001110000011
Cuộn 4 : 00000111000001110000 01110000011100000111
Chế độ 2 : cấp cho 2 cuộn và 3 cuộn :
Cuộn 1 : 11100011111000111110 11100011111000111110
Cuộn 2 : 11111000111110001111 10001111100011111000
Cuộn 3 : 00111110001111100011 00111110001111100011
Cuộn 4 : 10001111100011111000 11111000111110001111

I.2 Giới thiệu về chuẩn giao tiếp truyền thông RS232


Trong khi làm việc với các thiết bị truyền tin, ta thường gặp các thuật ngữ DTE
(Data Terminal Equipment – thiết bị đầu cuối dữ liệu) như các PC, PLC, vi điều khiển …
và DCE (Data Communication Equipment – thiết bị truyền dữ liệu) như MODEM.
Để mở rộng cấu hình của máy tính cũng như tạo sự truyền thông linh hoạt giữa
các máy tính với nhau, giữa các máy tính và thiết bị ngoại vi cũng như giữa các thiết bị
ngoại vi với nhau, hiện nay ta có các phương thức như sử dụng rãnh cắm mở rộng trên
board mạch máy tính, chuẩn giao tiếp song song (thường là cổng máy in hay cổng
Centronics), chuẩn giao tiếp nối tiếp, chuẩn USB, cáp mạng …
Chuẩn giao tiếp truyền thông RS232 thuộc về loại chuẩn giao tiếp nối tiếp. Ưu
điểm của chuẩn này là cáp nối có độ kháng nhiễu cao do đó có thể truyền thông trong
những khoảng cách rất lớn, giá thành rẻ hơn so với cáp sóng song. Tuy nhiên tốc độ
truyền dẫn thấp hơn cổng song song do khoảng thời gian giữa các bit đơn quyết định, mặt
khác sự không tương thích với mức logic TTL của các mạch điện tử số cũng là một bất

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 6
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

lợi, điều này sẽ được đề cập ở bên dưới. Không được sử dụng cho những yêu cầu mang
tính thời gian thực.
Chuẩn RS232 có mức điện áp như sau :
- High : -3V ÷ -12V
- Low : +3V ÷ 12V
Trong khi đó điện áp sử dụng cho các thiết bị logic trên mạch điều khiển số ngoại
vi sử dụng ở mức High là 5V và mức Low là 0V. Do đó để có thể truyền dẫn thông tin từ
máy tính ra thiết bị điều khiển thông qua cáp truyền theo chuẩn RS232 cần phải có các
linh kiện chuyển đổi trung gian để tương thích về mức tín hiệu. Để đơn giản ta dùng chip
Max232 phổ biến trên thị trường có tích hợp sẵn chức năng này.
Các cổng trên máy tính tuân theo chuẩn RS232 gồm 2 loại, loại 25 chân và loại 9
chân. Song loại 25 chân cồng kềnh và không sử dụng hết chức năng nên hiện nay ta chỉ
gặp các cổng 9 chân có sẵn trên Case máy tính. Tên gọi và chức năng của các chân này
như sau :

Hình 1.3 Hình dạng của cổng DB9 trên máy tính

Hình 1.4 Vị trí các chân của cổng DB9 trên máy tính

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 7
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

Bảng 1.1 Bảng liệt kê tên gọi và chức năng các chân của DB9

Thứ tự Tên gọi Chức năng

1 DCD (Data Carrier Detect) DCE phát hiện sóng mang.

2 RxD (Received Data) Chân nhận dữ liệu

3 TxD (Transmitted Data) Chân truyền dữ liệu

4 DTR (Data Terminal Ready) DTE sẵn sàng làm việc

5 GND (GRounD)Nối đất tín hiệu

6 DSR (Data Set Ready) DCE sẵn sàng làm việc

7 RTS (Request To Send) DTE yêu cầu gửi dữ liệu

8 CTS (Clear To Send) DCE sẵn sàng nhận dữ liệu

9 RI (Ring Indicator) Báo chuông

I.3 Ngôn ngữ lập trình Visual Basic


Là ngôn ngữ cấp cao 32 bit dùng để viết các chương trình cấp cao chạy trong
Windows, giao diện thân thiện với người dùng, có chứa các chức năng thiết kế giao diện
dễ dàng, hướng đối tượng đồng thời có điều khiển MSCOMM được hỗ trợ sẵn cho việc
truyền tín hiệu qua cổng COM. Ngôn ngữ này sẽ được giới thiệu kĩ hơn khi thiết kế phần
mềm.

I.4 Giới thiệu chip P89V51RB2


Thuộc họ vi điều khiển MCU51 của Philips, với các đặc trưng đáng quan tâm :
- 16KB ROM
- 128 byte RAM
- 4 port xuất nhập 8 bit
- 3 bộ timer
- Mạch giao tiếp nối tiếp
- Bộ xử lí bit
- Có khả năng điều xung
- Chức năng bộ định thời chó canh (Watch Dog Timer)

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 8
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

I.5 Nội dung của đồ án


Thực hiện việc giao tiếp truyền thông giữa PC và chip vi điều khiển P89V51RD2
qua chuẩn truyền thông RS232 với IC chuyên dụng để tương thích điện áp sử dụng nhằm
điều khiển động cơ bước 6 dây 2 pha. Các bước tiến hành :
- Thiết kế mạch điều khiển động cơ, mạch công suất, mạch giao tiếp
- Thiết kế giao diện phần mềm trên máy tính bằng VB6.0 với MSCOMM để điều
khiển cổng COM trên máy
- Thực hiện giao tiếp giữa PC và vi điều khiển ngay trên đường nạp chip
- Chọn chế độ, chiều quay trên máy tính và xuất ra chuyển động quay của động cơ
đúng theo ý muốn
- Sau khi động cơ dừng, hiển thị thông báo trên màn hình máy tính

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 9
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

Chương 2

THIẾT KẾ PHẦN CỨNG

Phần cứng được thiết kế theo từng module riêng biệt để dễ kiểm
tra, bảo trì, nâng cấp từng phần, phù hợp chức năng chuyên biệt
hóa sản phẩm hiện nay. 3 module chính là : module giao tiếp,
module điều khiển và module công suất. Phần này sẽ nghiên cứu
cấu tạo và chức năng của các linh kiện có trong module, công
năng chung của module và tính toán thiết kế một sản phẩm hoàn
chỉnh trên cơ sở các module rời rạc trên.

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 10
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

PC

MẠCH MẠCH GIAO


NGUỒN
KHỐI ĐIỀUKHIỂN TIẾP
CHÍNH

MẠCH CÔNG
SUẤT

THIẾT BỊ NGOẠI VI

Hình 2.1 Sơ đồ các khối chức năng

Giải thích các khối chức năng :


- Phần mạch giao tiếp : gồm linh kiện chính là cổng COM DB9 với IC MAX232
để thực hiện chuyển đổi tương thích điện áp giữa cổng COM trên máy tính và điện áp tín
hiệu trên mạch điều khiển. Làm nhiệm vụ giao tiếp giữa máy tính và vi điều khiển.
- Phần mạch điều khiển chính : gồm IC P89V51RB2 với các linh kiện phụ khác
như bộ tạo dao động ngoài là thạch anh tần số 11.0592MHz, nút Reset và các tụ, trở để
thực hiện chức năng điều khiển.
- Phần mạch nguồn : gồm 2 cấp điện áp : nguồn cho vi điều khiển dùng ở mức 5V
và nguồn cho thiết bị ngoại vi ở mức 9V, để an toàn dùng hai nguồn riêng và cách li
chúng. Nguồn cho vi điều khiển cần có mạch riêng để đưa từ mức 12V về 5V.
- Phần mạch công suất : trực tiếp điều khiển các cuộn dây động cơ, gồm các
transistor, linh kiện cách li quang là OPTO PC817, mạch đẩy kéo Darlington gồm cặp
BJT bổ phụ 2SD468 và 2SB562, transistor trường chịu dòng ngược cao là FET IRF540.
Trong khi thi công mạch, em đã tách riêng các phần mạch để dễ kiểm tra và bảo
đảm an toàn.

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 11
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

II.1 Phần mạch giao tiếp


V C C _ A R R O W

V c c C 5
1 2 G N D
D 1 R 1 C 3
G N D 2 1 2 1
1 n

L E D 1 k 1 n
J P 1
U 1

16
R x D

2
4 T x D 1
2 P 1
3 C 1 + C 4

V+
G N D G N D 5

VCC
2 V c c C 1 3 6 2 1 9
1 C 1 - V - 4
12 1 n 4 8
4 H E A D E R C 2 + 1 4 1 n 3
C 2 5 T 1 O U T 7
C 2 - 7 2
1 1 n 1 1 T 2 O U T 6
T x D 1 0 T 1 I N 1
1 2 T 2 I N 1 3
R x D 9 R 1 O RU 1 T I8 N
C O N N E C T O R
GND

R 2 O RU 2 T I N

M A X 2 3 2
15

G N D

Hình 2.2 Module giao tiếp


<chú ý : các tụ phân cực, thông số tra theo datasheet>
Vi mạch MAX232 với sơ đồ kết nối chân với DB9 và vi điều khiển giống như
trong datasheet đi kèm. Led điểm và R8 chỉ để kiểm tra điện áp ngoài cấp vào cho
MAX232.

II.2 Phần mạch điều khiển chính :


Thành phần chính là chip P89V51RB2 của Philips. Với mục đích mở rộng thêm
các chức năng sau này, nên các cổng P0, P1, P2 được đưa đến các Jumper 10 chân, trong
đó 8 chân là dành cho các đường tín hiệu từ các cổng, 1 chân nguồn và 1 chân nối đất.
Bộ tạo dao động ngoài của chip vi điều khiển là thạch anh tần số 11,0592MHz.

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 12
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

Hình 2.3 Module điều khiển

II.3 Phần mạch nguồn


Nguồn sử dụng trong đồ án gồm 2 cấp điện áp : Nguồn 5V cấp cho vi điều khiển
và nguồn 9V cấp cho động cơ. Để có thể tận dụng ngay nguồn điện năng xoay chiều có
sẵn, em thiết kế ra 2 mạch chỉnh lưu kết hợp với ổn áp riêng lẻ để cấp cho mạch 9V và
adapter dòng 15mA để cấp cho mạch điều khiển.

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 13
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

Hình 2.4 Nguồn 5V


Các linh kiện trong mạch :
D1, C10 : diode loại 5A và tụ 1000u tạo thành mạch xén xung âm đưa vào ổn áp.
U18 : IC ổn áp 7812, 7805 là thành phần chính tạo điện áp đầu ra 5V để cấp cho vi
điều khiển và 9V để cấp cho động cơ
C11, C12 : tụ hóa 104, làm nhiệm vụ lọc tín hiệu dương ở tần số cao
C10, C13 : lọc tín hiệu dương ở đầu vào và đầu ra của 7805
Q2 : Transistor loại B688 hoặc B633 làm nhiệm vụ đệm dòng
R7, D2 : led điểm để phát hiện nguồn đã được cấp và đạt đến 5V hay chưa, còn R7
là để tạo điện áp rơi đủ để D2 sáng mà không bị cháy. Giá trị R7 được tính như sau :
5V − Vled 5V − 0,7V
R7 = = = 215( Ω) chọn R7 = 330 (Ω )
I led 20 mA

Phần mạch nguồn này được tích hợp luôn trên mạch điều khiển.

II.4 Phần mạch công suất :


Động cơ bước sử dụng thuộc loại 2 pha, 6 dây, số hiệu 23LM-C004 với các thông
số cho trước như sau :
- Dòng điều khiển : Iđm = 1,2A
- Áp điều khiển : Uđm = 6V
- Bước quay : 1,80
- Số bước quay 1 vòng : 200 bước

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 14
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

Với các đặc điểm của động cơ như trên, việc kích dòng cho động cơ trực tiếp từ vi
điều khiển là không thể thực hiện được. Có các cách giải quyết vấn đề này như sau :
- Sử dụng IC họ ULN, UCN như ULN2003, ULN2803, UCN5803, UCN5804 …
để tăng dòng. 1 ưu điểm nữa của các IC này là có diode bảo vệ bên trong chống lại dòng
ngược từ động cơ xuất hiện khi hãm
- Sử dụng linh kiện rời với các BJT và FET IRF làm nhiệm vụ tăng dòng dẫn ra
các cuộn dây
- Sử dụng vi mạch chuyên dụng điều khiển động cơ 2 pha là cặp L297, L298 với
cách mắc được cho sẵn trong datashet của sản phẩm.
Xét về sự phù hợp với đặc điểm của động cơ là dòng kích lớn, họ ULN không đáp
ứng được, cùng với sự phù hợp về kinh tế, em lựa chọn cách thứ hai. Mạch công suất
thiết kế gồm 8 khối công suất giống hệt để có thể điều khiển được 2 động cơ, phục vụ
mục đích mở rộng sau này. Ở hình bên dưới chỉ trích ra một khối. Để bảo đảm an toàn, ở
đầu vào mạch này lắp cách li quang.

Hình 2.5 Mạch công suất


Trong đó dk5 dẫn trực tiếp từ đầu ra của chân vi điều khiển, VCC là nguồn của vi
điều khiển, nguồn 12V là trên lí thuyết, thực tế có thể thay đổi chút ít nằm trong giới hạn
cho phép của động cơ sử dụng, ở đây em dùng nguồn 9V. coin5 nối ra dây động cơ bước,
còn ISO5 là linh kiện OPTO PC817.
Khi có điện áp kích (ở mức 0) đưa vào dk5, ISO 5 dẫn. Cụm D468, B568 làm
nhiệm vụ đẩy kéo và khuếch đại dòng đưa vào chân G của FET. Điện trở R14 dùng để
phân cực cho Q14, Q15. Điện trở R15 dùng để phân cực cho FET đồng thời tăng hệ số
khuếch đại dòng của FET. R29 là điện trở hạn dòng bảo vệ OPTO. Trong cùng một thời

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 15
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

điểm sẽ có một hoặc nhiều đầu dây được kích để tạo ra chuyển động quay của động cơ
bước.
Giá trị của các điện trở được tính như sau :
Vcc − Vak 5V − 0,5V
R 29 = = = 225( Ω) chọn R29 = 560 (Ω )
I ak 20mA

12 V − Vces 12 V − 0,2V
R 14 = = = 11,8KΩ chọn R14 = 10 (kΩ )
I ces 1mA
I g = I e / Q14 = βI ces = 80 ×1mA = 80 mA

Sơ đồ tương đương của tầng ra (chứa FET) :


I g G D

R 1 5 R g s U 1 R d c

1
R 4 . 7 4

1
g m V g s

2
2
S I d c

Dòng vào : Ig = 80 mA
Dòng ra định mức : Idcdm = 1,5 A
Chọn dòng cho động cơ bằng 5 lần dòng định mức, khi đó Idc = 7,5 A
 Hệ số khuếch đại dòng :
I dcdm 7,5A
Ai = = = 93,75
Ig 80 mA

Mặt khác :
g m Vgs R 15 × 4,7
Ai = = g m ( R 15 // R gs ) = 20 ×
Vgs R 15 + 4,7
R 15 // R gs

1  1 1  1
  +  =
20  R 15 4,7  93,75

 R15 = 878,9 (Ω )
Chọn R15 thấp xuống để giảm hệ số khuếch đại dòng, chọn R15 = 390 Ω

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 16
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

Chương III

THIẾT KẾ PHẦN MỀM

Phần mềm được thiết kế gồm 2 phần :


- Phần thiết kế giao diện giao tiếp với chip ngoại vi (P89V51RB2)
trên máy tính ;
- Phần lập trình trên vi điều khiển để giao tiếp với máy tính và
điều khiển động cơ bước.

III.1 Thiết kế giao diện phần mềm trên máy tính

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 17
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

III.1.1 Những vấn đề chung nhất về Visual Basic


- Visual Basic hỗ trợ đồ họa mạnh, nên có thể dễ dàng thiết kế giao diện theo ý
muốn.
- Ngôn ngữ Visual Basic là ngôn ngữ cấp cao, hướng đối tượng nên dễ dàng lập
trình xử lí trên từng đối tượng, tạo sự đóng gói dữ liệu, dễ kiểm tra và phát triển theo ý
muốn.
- Khi thiết kế giao diện trên phần mềm, ta có thể sử dụng các đối tượng hỗ trợ sẵn
có thể tìm thấy ở bên trái cửa sổ phần mềm khi khởi động Visual Basic hoặc gọi ra từ nút
Toolbox ở thanh công cụ phía trên màn hình. Ngoài các đối tượng trên, Visual Basic còn
hỗ trợ thêm các điều khiển mạnh và chuyên biệt, được gọi từ Project  Component.
Trong đó, điều khiển MS_COMM là điều khiển được hỗ trợ sẵn cho cổng nối tiếp. Ngoài
ra cũng có thể điều khiển bằng cách lập trình trên thư viện liên kết động ở dạng file .dll
tuy nhiên ở mức độ không chuyên em chọn cách dùng điều khiển MS_COMM cho đồ án
của mình.

III.1.2 Bản chất của việc thu nhận dữ liệu qua cổng COM
Khi thu dữ liệu bằng cổng COM, giá trị sẽ truyền trên qua chân RxD và đưa vào
chip UART (Universal Asynchronous Receiver/Transmitter : mạch thu phát không đồng
bộ vạn năng) kết nối trực tiếp với cổng COM trên máy tính. Một số loại chip UART được
sử dụng trên các máy tính là 8250, 16450, 16550. Bên trong chip UART có 1 thanh ghi
đệm thu, chính là nơi lưu giữ các dữ liệu tạm thời được nhập qua cổng COM, và 1 thanh
ghi đệm phát lưu giữ dữ liệu chờ được xuất ra khỏi cổng. Khi phát dữ liệu, giá trị người
dùng đưa vào máy sẽ đưa vào bộ đệm phát và xuất ra chân TxD đưa đến thiết bị ngoại vi.
Mỗi lần thu và phát dữ liệu trên cổng COM sẽ gây ra một ngắt trên chip UART.
Em không đi sâu vào cấu tạo bên trong của vi mạch UART vì đồ án của em chỉ
quan tâm đến phương thức gửi và nhận tín hiệu qua cổng, còn việc xử lí tín hiệu bên
trong chip UART đã được nhà sản xuất đảm nhận.

III.1.3 Nghiên cứu các thuộc tính của điều khiển MS_COMM
- Settings :
Cú pháp : MSCOMMx.Settings = “bps,p,d,s”
Trong đó : x : số thứ tự của điều khiển MS_COMM ta đang sử dụng.
bps: tốc độ truyền dữ liệu của cổng nối tiếp (bit/giây)
p : kiểm tra chẵn lẻ. Giá trị của nó là O (kiểm tra lẻ), E (kiểm tra
chẵn), N (không kiểm tra chẵn lẻ).
d : số bit dữ liệu

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 18
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

s : số bit stop
Các thông số được lấy tương ứng với cổng RS232 của người dùng.
Như hình bên dưới là thông số cổng COM trên máy tính của em. Như vậy khai
báo thuộc tính Settings sẽ là :
MSCOMM1.Settings = “9600,N,8,1”

Hình 3.1 Cách xác định thuộc tính cổng COM trên máy tính
Kiểm tra thuộc tính này trên điều khiển MSCOMM :

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 19
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

Hình 3.2 Thuộc tính cổng COM trên MSCOMM hỗ trợ sẵn

- CommPort :
Cú pháp : MSCOMMx.Commport = y
Với y là số thứ tự của cổng COM ta sử dụng. Như hình trên, cổng COM của ta có
số thứ tự là 1. Như vậy khai báo Commport là :
MSCOMM1.CommPort = 1
- PortOpen :
Cú pháp : MSCOMMx.PortOpen = Boolean
Với Boolean là True (buộc mở Port) và False (buộc đóng Port).
3 thuộc tính nêu trên bắt buộc khai báo khi muốn sử dụng cổng COM cho ứng
dụng của mình.
- Các thuộc tính nhận dữ liệu :
Input : nhận 1 chuỗi kí tự và xóa khỏi bộ đệm
InBufferCount : số kí tự có trong bộ đệm nhận
InBufferSize : đặt và xác định kích thước bộ đệm nhận, tính bằng Byte
- Các thuộc tính xuất dữ liệu : tương tự như nhập dữ liệu, bao gồm thuộc tính
Output, OutBufferCount, OutBufferSize
- CDTimeout, DSRTimeOut, CTSHolding, DSRHolding, CDHolding : do đồ
án không có giao tiếp với thiết bị trung gian như Modem nên các thuộc tính này ta không
quan tâm đến.

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 20
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

- DTREnable : thông báo sự tồn tại của DTE, nhận kiểu Boolean.
- RTSEnable : xóa tín hiệu RTS để yêu cầu truyền dữ liệu đến DTE.
- NullDiscard : cho phép nhận kí tự rỗng hay không.
- RThreshold, SThreshold : số byte trong bộ đệm nhận, bộ đệm phát làm phát
sinh sự kiện OnComm.
- HandShaking : chọn giao thức bắt tay khi truyền dữ liệu. Đối với đồ án của em
không sử dụng giao thức này nên cũng không cần nghiên cứu sâu ở đây.
- CommEvent : trả lại các lỗi truyền thông hay các sự kiện xảy ra trên cổng nối
tiếp.

* Sự kiện OnComm : là sự kiện xảy ra khi có thay đổi giá trị của các thuộc tính trong
CommEvent.

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 21
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

III.1.4 Thiết kế giao diện

Hình 3.3 Giao diện chính của phần mềm

Giải thích giao diện :


- Trước khi vào giao diện chính, người dùng có thể xem qua các hướng dẫn trong
menu Hướng dẫn để thực hiện các thao tác kết nối phần cứng và các bước tiến hành thao
tác trên phần mềm.
- Trong giao diện chính người dùng sẽ chọn lần lượt theo thứ tự các bước. Nút
Cancel dùng để tắt giao diện. Nút Stop làm việc ở hai chế độ, ở chế độ kiểm tra cổng sẽ
làm việc như nút OK dùng để chấp nhận chuỗi kí tự gửi từ khung kí tự nhận, còn ở chế
độ quay động cơ sẽ dùng để dừng động cơ. Khi khởi động giao diện, frame Kiểm tra
frame Chế độ quay sẽ không hiển thị, chỉ khi người dùng chọn 1 trong hai chế độ Kiểm
tra cổng hoặc Ngoại vi thì frame tương ứng mới cho phép nhìn thấy.
+ Bước 1 : chứa các thao tác để chọn cổng và tốc độ baud tuân theo thuộc tính của
nó trên máy tính của người dùng.

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 22
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

+ Bước 2 : chứa 2 tùy chọn :


* Ngoại vi : là để chọn các chế độ điều khiển trực tiếp thiết bị ngoại vi từ máy
tính. Nếu chọn tùy chọn này thì các chế độ trong frame Chế độ quay sẽ cho phép chọn,
còn nếu chọn tùy chọn Kiểm tra cổng thì
* Kiểm tra cổng : để test cổng DB9. Có thể test riêng cổng trên máy tính của mình
bằng cách nối 2 chân thứ 2 (RxD) và thứ 3 (TxD) của cổng với nhau, hoặc kết nối 2 máy
tính với sơ đồ kết nối các chân như sau :

Hình 3.2 Ghép nối truyền thông của chuẩn giao tiếp nối tiếp

Khi đó frame Kiểm tra mới hiển thị lên, cho phép gõ vào khung Kí tự phát, khi
nhấn OK hoặc Enter thì dãy kí tự sẽ xuất hiện ở khung Kí tự nhận. Trường hợp cổng bị
hư hỏng, hoặc kết nối dây không đúng thì khung Kí tự nhận không hiển thị gì. Sau khi
kiểm tra xong, nếu ta muốn thực hiện chọn chế độ điều khiển cho thiết bị ngoại vi, cần
chọn lại tùy chọn Ngoại vi ở trên, khi đó frame Kiểm tra bị ẩn đi. Việc làm ẩn đi hoặc
hiển thị frame các frame chỉ có tác dụng làm giao diện rõ ràng và thẩm mĩ hơn, không
ảnh hưởng đến thuật toán chương trình.
- menu Giới thiệu là một phần phụ đi theo, giới thiệu về đề tài, tác giả và lời cảm
ơn.

III.1.5 Lập trình trên nền Visual Basic


Lập trình theo lưu đồ thuật toán sau :

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 23
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

START

- Chọn cổng COM


- Chọn tốc độ baud

Đ Hiển thị gửi và


Chế độ test
nhận chuỗi kí tự
cổng
trên màn hình
S

Chế độ quay Chọn chế độ quay và gửi ra cổng


Đ COM
động cơ

Hiển thị thông


Dừng động báo dừng trên
Đ
cơ màn hình máy
tính
S
END

Hình 3.4 Lưu đồ thuật toán việc gửi và xử lí dữ liệu từ PC trên VB6.0

III.2 Thiết kế phần mềm trên chip P89V51RB2


III.2.1 Điều khiển thu phát dữ liệu
Đối với các chip vi điều khiển hiện nay, việc thu phát dữ liệu có thể thực hiện
được nhờ một chip UART tích hợp bên trong qua hai đường truyền thông nối tiếp là TxD
và RxD trên vi điều khiển. Thường hai đường này nằm trùng với 2 chân làm nhiệm vụ
xuất/nhập dữ liệu thông thường, chỉ được sử dụng trong trường hợp truyền nhận nối tiếp

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 24
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

khi được set chế độ thích hợp bằng phần mềm. Việc thu phát dữ liệu của vi điều khiển
theo 2 phương thức :
a) Thăm dò : đối với việc thu dữ liệu, vi điều khiển không làm gì cả, chỉ chờ việc dữ liệu
gửi đến bộ đệm thu, thực thi nhiệm vụ tương ứng với dữ liệu đó – cũng chính là lệnh điều
khiển được gửi đến vi điều khiển từ DTE phát. Đối với việc phát dữ liệu, vi điều khiển
chờ dữ liệu được đưa vào bộ đệm phát và phát tín hiệu sẵn sàng cho việc gửi dữ liệu. Sau
khi thực thi chương trình tương ứng, vi điều khiển lại quay về chờ dữ liệu được đưa vào
bộ đệm để chuyển đến chương trình kế tiếp. Việc này tuy thực hiện đơn giản nhưng lại
mất thời gian trong việc chờ đợi dữ liệu. Đối với phương thức này, đối với 8051, người ta
sử dụng thanh ghi SCON chuyên dụng cho việc truyền thông nối tiếp trong vi điều khiển.
Cấu tạo của nó như sau :
Các bit chức năng trên thanh ghi SCON :

Trong đó :
Bit 7, 6 : các bit chọn chế độ được cho bởi bảng sau :

Chế độ 0 : port nối tiếp làm việc ở chế độ thanh ghi dịch 8 bit. Dữ liệu nối tiếp
được thu và phát thông qua chân RxD, còn chân TxD xuất xung clock dịch bit. Tốc độ
baud cố định = 1/12 tần số của dao động nội trong chip.
Chế độ 1, 2, 3 : port nối tiếp làm việc ở chế độ UART như mô tả ở trên. 2 chân
RxD và TxD theo đúng chức năng Thu/ Phát như tên của nó. Chữ “x” trong tên của 2
chân này để nhấn mạnh rằng 2 thiết bị đầu cuối kết nối theo kiểu nối tiếp có thể làm việc
bắt tay, nghĩa là có thể đồng thời phát và thu trên 2 đường dữ liệu riêng biệt.

Bit 5 : cho phép truyền thông đa xử lí làm việc ở các chế độ 2 và 3. Do trong đồ án
không yêu cầu truyền thông theo kiểu này, do đó ta không nghiên cứu sâu vào.

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 25
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

Bit 4 : cho phép thu. Thường được set lên từ đầu để cho phép thu dữ liệu ngay khi
cấp nguồn và kết nối với máy tính.
Bit 3, 2 : chỉ sử dụng trong chế độ 2 và 3, là bit thứ 9 được truyền đi hoặc nhận về
trong 2 chế độ này tùy thuộc vào việc nhận hay phát tín hiệu của vi điều khiển.
Bit 1 : cờ ngắt phát. Được set khi kết thúc việc thu kí tự, xóa bởi phần mềm.
Bit 0 : cờ ngắt thu. Thường set ở đầu chương trình để báo bộ đệm rỗng, cho phép
nhận tín hiệu ngay khi cấp nguồn và kết nối với máy tính. Được xóa bởi phần mềm.

b) Ngắt nối tiếp :


Phương thức này khắc phục được nhược điểm của phương thức thăm dò nêu trên,
đó là loại bỏ thời gian vô ích trong việc chờ dữ liệu được đưa đến bộ đệm thu/phát. Trong
khi chương trình chính của ta đang thực thi, thì một ngắt thu/phát do dữ liệu được đưa
đến bộ đệm ở trạng thái sẵn sàng cho việc thực thi chương trình ngắt nối tiếp xảy ra,
chương trình nhảy đến chương trình ngắt tương ứng để thực hiện, xong đâu đấy nó lại
quay về điểm bị ngắt và thực thi tiếp.
Trong 8051 có thanh ghi điều khiển ngắt IE, sẽ điều khiển được 5 ngắt tương ứng,
đó là 2 ngắt do bộ định thời, 2 ngắt ngoài, 1 ngắt nối tiếp. Riêng đối với một số loại chip
của Philips như P89V51RB2, P89V51RD2 … hoặc chip AT89Sxx, AT89C52 của Atmel
có thêm 1 ngắt do bộ định thời thứ 3. Trong phạm vi nghiên cứu của đồ án này em chỉ
đưa ra những thuộc tính của ngắt do port nối tiếp.
Để khai báo việc sử dụng ngắt nối tiếp, ta set bit EA là bit thứ 7 của thanh ghi IE
để cho phép ngắt, và bit ES là bit thứ 4 của thanh ghi IE cho phép ngắt nối tiếp.
Khi xảy ra một ngắt (thu hoặc phát) cờ ngắt RI hoặc TI được set lên, chương trình
nhảy đến ngắt thích hợp và thực thi nó. Vì cờ nhớ không tự xóa nên người lập trình phải
xóa bằng thuật toán trên vi điều khiển để chương trình có thể thực hiện các ngắt tiếp theo.
Đối với cả hai phương thức nói trên, để thực hiện được cần phải tạo ra một tốc độ
baud thích hợp để việc truyền thông nối tiếp có thể xảy ra. Tốc độ baud này được tạo bởi
tốc độ tràn của bộ định thời trên chip vi điều khiển, do đó một bộ định thời sẽ được sử
dụng trong nhiệm vụ này.
Tốc độ baud = tốc độ tràn bộ định thời / 32
Vậy nếu ta cần tốc độ baud 9600 thì tốc độ tràn bộ định thời là 307,2KHz.
Tần số của thạch anh là 11,0592MHz, bộ định thời tạo tốc độ baud được cấp xung
clock là 0,9216 MHz = 921,6KHz, việc tràn này cần phải xảy ra sau mỗi 921,6/307,2 = 3
xung. Do bộ định thời đếm lên nên giá trị nạp lại cho bộ định thời phải là -3 hay 0FDh.
Để có sự đồng bộ hóa giữa việc gửi tín hiệu từ máy tính và nhận tín hiệu đưa vào
chip cần phải tuân theo đúng loại dữ liệu được đưa từ máy tính, ví dụ dữ liệu gửi đến ở
dạng số nhị phân thì dữ liệu xử lí trên chip cũng phải ở dạng số nhị phân, còn ở dạng kí
tự thì dữ liệu xử lí trên chip cũng phải ở dạng kí tự.

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 26
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

Lưu ý : trong chương trình thuộc nội dung đồ án, dữ liệu được xuất ra ở cổng
COM ở dạng kí tự và dữ liệu nhận vào chip cũng ở dạng kí tự, nên để đồng bộ hóa việc
thu phát dữ liệu và dễ dàng trong việc lập trình, em sử dụng các kí tự theo thứ tự tùy chọn
trên giao diện thiết kế để gửi và nhận tín hiệu trên cả VB lẫn chip, đó là :

“1” : Chế độ 1 - quay thuận cả bước


“2” : Chế độ 2 - quay nghịch cả bước
“3” : Chế độ 3 - quay thuận nửa bước
“4” : Chế độ 4 - quay nghịch nửa bước
Để thực hiện việc thu và phát tín hiệu giao tiếp giữa vi điều khiển, em sử dụng
ngắt nối tiếp của vi điều khiển P89V51RB2.
Chương trình xử lí dữ liệu từ máy tính được cụ thể hóa trên lưu đồ thuật toán sau :

MAIN

Các khai báo


Khởi tạo
Chờ ngắt

S
Chế độ 1 ?
Đ
QUAY THUẬN
CẢ BƯỚC

S S S
Chế độ 2 ? Chế độ 3 ? Chế độ 4 ?
Đ Đ Đ
QUAY NGHỊCH QUAY THUẬN QUAY NGHỊCH
CẢ BƯỚC NỬA BƯỚC NỬA BƯỚC

Hình 3.5 Lưu đồ thuật toán xử lí dữ liệu trên P89V51RB2


<bị sai chỗ chờ ngắt : nhảy đến trình phục vụ ngắt, trong trình phục vụ ngắt mới so sánh>

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 27
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

III.2.2 Điều khiển động cơ bước


Để điều khiển động cơ, em đưa ra các chế độ cấp tín hiệu điều khiển cho các đầu
dây theo kiểu đơn cực phụ thuộc vào đầu dây được cấp tín hiệu. Đối với động cơ bước có
4 đầu dây thì số lượng đầu được cấp tín hiệu cho 1 lần dịch bước tối đa là 3. Việc này
trong các ứng dụng thực tế cần điều khiển nhiều thiết bị khác nhau sẽ gây nên lãng phí
chân, tuy nhiên trong một ứng dụng nhỏ thuộc nội dung đồ án này thì nó sẽ đơn giản hơn
cho việc điều khiển và cũng không bị giới hạn về số lượng chân nên em chọn cách điều
khiển đơn cực để tạo chuyển động quay của động cơ bước.
Lưu đồ thuật toán của các chế độ quay :

QUAY THUẬN QUAY NGHỊCH


CẢ BƯỚC CẢ BƯỚC

R6 = 25 R6 = 25

R4 = 4 R4 = 4

A = 01111111B A = 11101111B

DELAY DELAY

P2  A P2  A

DELAY DELAY

Quay phải A Quay trái A

Giảm R4 Giảm R4

S S
R4 = 0 R4 = 0
Đ Đ
Giảm R6 Giảm R6

S S
R6 = 0 ? R6 = 0 ?
Đ Đ

RETI RETI

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 28
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

QUAY THUẬN QUAY NGHỊCH


NỬA BƯỚC NỬA BƯỚC

R6 = 25 R6 = 25

DELAY DELAY

P2=01111111B P2=11101111B

DELAY DELAY

P2=00111111B P2=11001111B

DELAY DELAY

P2=10111111B P2=11011111B

DELAY DELAY

P2=10011111B P2=10011111B

DELAY DELAY

P2=11011111B P2=10111111B

DELAY DELAY

P2=11001111B P2=00111111B

DELAY DELAY

P2=11101111B P2=01111111B

DELAY DELAY

P2=01101111B P2=01101111B

Giảm R6 Giảm R6

R6 = 0 ? S R6 = 0 ? S

Đ Đ

RETI RETI

Hình 3.6 Lưu đồ thuật toán thu nhận dữ liệu điều khiển động cơ bước

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 29
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

Chương IV

MỞ RỘNG ĐỒ ÁN

Phần này nêu lên các ưu nhược điểm trong các bước xây dựng
phần cứng, phần mềm của đồ án, những ứng dụng thực tiễn của
sản phẩm và mở rộng đồ án cho các ứng dụng nâng cao hơn để
hoàn chỉnh chức năng của một sản phẩm có tính ứng dụng thực
tiễn cao.

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 30
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

IV.1 Ưu điểm của đồ án


- Về thiết kế phần mềm : Đơn giản, dễ sử dụng. Đã thực hiện được ý đồ ban đầu là
giao tiếp được giữa PC – vi điều khiển – ngoại vi. Có khả năng mở rộng các ứng dụng
khác một cách dễ dàng.
- Về thiết kế phần cứng : Phần mạch thiết kế riêng từng module nên tiện cho việc
kiểm tra, thay thế cũng như mở rộng các chức năng khác như hiển thị led, hiển thị LCD,
nhận tín hiệu từ cảm biến ngoài cũng như điều khiển được nhiều động cơ DC và động cơ
bước khác. Từng module nhỏ gọn phù hợp với các yêu cầu chuyên môn hóa, nhờ đó có
thể dễ dàng nâng cấp theo yêu cầu của người dùng.

IV.2 Nhược điểm của đồ án


- Về thiết kế phần mềm : Chuyển đổi tốc độ chưa mịn do trình phục vụ ngắt nối
tiếp không thể thực hiện một ngắt khi đang thực hiện 1 chương trình ngắt nối tiếp trước
đó.
- Về thiết kế phần cứng : Chưa thực hiện được nhúng các ứng dụng về mặt phần
cứng. Như đã nói, mạch điều khiển được đưa ra với mục đích mở rộng các chức năng để
điều khiển được nhiều thiết bị ngoại vi khác, tuy nhiên đồng thời với ưu điểm này thì việc
tách rời các thành phần sẽ khiến mạch cồng kềnh hơn.

IV.3 Ứng dụng thực tiễn


Nhờ thay đổi linh hoạt chuyển động của động cơ từ máy tính nên người dùng có
thể dễ dàng điều khiển nó hoạt động theo những quĩ đạo nhất định hoặc thay đổi với chu
trình vận tốc phù hợp với yêu cầu của mình. Đây là cơ sở để xây dựng nên những máy vẽ
điện tử, điều khiển hoạt động của robot công nghiệp hay một dây chuyền sản xuất bất kì
theo một chu trình định sẵn hay được tùy biến bởi người dùng. Các chức năng mở rộng
của nó có thể làm cho hoạt động lao động sản xuất của con người được cải tiến rất nhiều
về thời gian và kinh phí, nâng cao năng suất lao động, đem lại hiệu quả cao, giảm giá
thành các sản phẩm.

IV.4 Mở rộng chức năng


Do trình độ cũng như thời gian có hạn nên đồ án của em chỉ giới hạn ở việc điều
khiển chế độ, chiều quay của động cơ ở 2 chế độ : cả bước và nửa bước, thông qua cổng
COM. Từ những kiến thức có được trong quá trình nghiên cứu các tài liệu để thực hiện
đồ án này, có thể nâng cao thêm để ứng dụng gần gũi hơn với thực tế như sau :
- Điều khiển động cơ ở chế độ vi bước
- Điều khiển thông qua cổng USB

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 31
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

- Chuyển đổi chế độ quay ngay trong quá trình động cơ quay, thay đổi tốc độ quay
- Ứng dụng cho việc điều khiển tuần tự trong một dây chuyền sản xuất, chẳng hạn
như dây chuyền cấp phôi tự động, dây chuyền lắp ráp các thiết bị sử dụng trong các nhà
máy …
- Điều khiển chính xác tọa độ dựa trên các chuyển động của động cơ bước. Có thể
ứng dụng trong các máy vẽ, điện tâm đồ, điện não đồ hoặc chuyển động các trục trong
máy CNC. Nhờ có giao diện với máy tính nên việc điều khiển sẽ trở nên trực quan hơn.
- Mở rộng giao tiếp truyền thông đa xử lí để giao tiếp giữa các máy tính trong
mạng cục bộ nhà máy, cơ sở sản xuất nhằm tối ưu hóa thời gian và khắc phục trở ngại
của không gian.
- Kết hợp giữa mô phỏng trên phần mềm với điều khiển thực tế để tối ưu quá trình
thiết kế robot, giúp rút ngắn con đường giữa lí thuyết và thực nghiệm.

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 32
Lập trình điều khiển động cơ bước từ máy tính qua cổng nối tiếp dùng VĐK
8051

TÀI LIỆU THAM KHẢO :

 Ninh Đức Hùng


Tự học thiết kế hệ thống vi điều khiển với họ 8051 trong 10 tiếng
NXB văn hóa thông tin
Hà Nội, 2007
 Nguyễn Mạnh Giang
Cấu trúc – Lập trình – Ghép nối và ứng dụng vi điều khiển, tập 2
NXB Giáo dục
Hà Nội, 2007
 Tống Văn On, Hoàng Đức Hải
Họ vi điều khiển 8051
NXB lao động – xã hội
TP HCM, 2001
 Nguyễn Quang Hùng, Trần Ngọc Bình
Động cơ bước – Kĩ thuật điều khiển và ứng dụng
NXB KHKT
Hà Nội, 2003
 Douglas W.Jones (Đoàn Hiệp dịch)
Điều khiển động cơ bước
Tài liệu mạng
 Hoàng Minh Sơn
Mạng truyền thông công nghiệp
NXB KHKT
Hà Nội, 2007
Phạm Huỳnh Kim Khánh
Tài liệu lập trình hệ thống
Ebook
 Hồ Thanh Tâm, Lê Văn Bạn
Lập trình giao tiếp máy tính bằng Visual Basic
Ebook
Ngô Diên Tập
Đo lường và điều khiển bằng máy tính
NXB Khoa học kĩ thuật
Hà Nội, 2004
 Nguyễn Văn Minh Trí, Lâm Tăng Đức
Ghép nối và điều khiển thiết bị ngoại vi
Ebook

SVTH : Châu Thị


Ngọc An – Lớp 05CDT1 Trang 33

You might also like