Tải bản đầy đủ (.pdf) (19 trang)

Điều khiển động cơ bước máy tính dùng VB

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (403.7 KB, 19 trang )

Bộ Công Thương
Trường ĐH Công Nghiệp HN

Khoa: Điện Tử


LỜI MỞ ĐẦU
Ngày nay khoa học kỹ thuật ngày càng phát triển mạnh.Và đã được ứng
dụng trong nhiều lĩnh vực của cuộc sống đặc biệt là trong công nghiệp mà điển
hình là các thiết bị điều khiển bằng máy tính đã và đang làm cho các thiết bị
công nghiệp ngày càng hiện đại và thông minh hơn.Một trong nhưng thành tựu
đó ta không thể không nhắc đến các bộ vi xử lý mà điển hình là các thế hệ máy
tính ngày nay.
Sự phát triển của “Kỹ thuật ghép nối máy tính” đã mở rộng đáng kể các
lĩnh vực ứng dụng của máy tính, đặc biệt là trong đo lường và điều khiển. Và
đặc biệt để hiểu biết về ghép nối máy tính chúng ta cần có những kiến thức về
điện - điện tử và các ngôn ngữ lập trình như Assembly,Pascal,C++,Visual basic.
Sau khi tìm hiểu môn học chúng em đã được làm đồ án về “Thiết kế mô hình
cánh tay máy sử dung cổng song song(LPT)”, và để thực hiện đồ án này chúng em
đã tìm hiểu thật kỹ về ghép nối máy tính, sử dụng ngôn ngữ Visual basic để viết
chương trình cho bài đồ án. Trong quá trình thực hiện bài tập này chúng em đã được
sự giúp đỡ tận tình của các thầy cô giáo đặc biệt là thầy Vũ Trung Kiên. Mặc dù đã
tìm hiểu thật kỹ về ghép nối máy tính nhưng do thời gian có hạn nên không thể tránh
khỏi những thiếu sót rất mong các thầy cô có ý kiến và góp ý cho chúng em để
chúng em rút ra những kinh nghiệm cho lần sau và sau này ra trường đi làm.
Chúng em xin chân thành cản ơn !

Hà Nội ngày 03 tháng 03 năm 2010

Trang 1



B Cụng Thng
Trng H Cụng Nghip HN

Khoa: in T


MC LC
Lời mở đầu ............................................................................................

1

Mục lục ...................................................................................................

2

Phần I . MáY TíNH Và KHI GHéP NI ...................................

3

1. Máy tính .......................................................................................

3

1.1.

Các dạng tin trao đổi của máy tính .................................

3


1.2.

Các phương thức trao đổi tin của máy tính.....................

4

2. Khối ghép nối................................................................................

4

2.1.

Vai trò.................................................................................

4

2.2.

Nhiệm vụ ...........................................................................

4

2.3.

Cấu trúc..............................................................................

5

Phần II . Giới thiệu về cổng song song............................


5

Phần III . ĐộNG CƠ BƯớC .............................................................

9

phần iv: Mạch điều khiển......................................................... 11
phần v: chương trình điều khiển ........................................ 14
Tài liệu tham khảo ...............................................................................

Trang 2

19


Bộ Công Thương
Trường ĐH Công Nghiệp HN

Khoa: Điện Tử


PHẦN I – MÁY TÍNH VÀ KHỐI GHÉP NỐI
1.

Máy tính.
Như chúng ta biết cấu trúc máy tính có thể được phân chia thành ba khối chính:
 Khối xử lý trung tâm CPU làm nhiệm vụ thu nhập và xử lý mọi dữ liệu.
 Khối nhớ (Memory) : Lưu trữ dữ liệu khác nhau đưa vào, lấy ra từ CPU.
 Khối phối hợp vào ra (I/O) : Làm nhiệm vụ tưng thích giữa các thiết bị


ngoài và đường đây (bus) trong máy tính.
Trong các máy tính thế hệ hiện nay thường có một số thiết bị ngoài thông
dụng như : Màn hình, bàn phím, chuột, máy in, loa, các ổ đĩa ngoài …ứng với
các khối ghép nối đó máy tính đều có khối ghép nối tương ứng.
Tuy nhiên, máy tính không chỉ dừng lại ở màn hình, máy in, loa …mà còn
nhiều ứng dụng vô cùng rộng rãi trong nhiêu lĩnh vực, công việc này cần có
khối ghép nối này, công việc kia cần có khối ghép nối kia. Tất cả các khả năng
đó đều được các nhà sản xuất lưu tâm tới và họ để trống vô số các con đường có
thể ghép nối với bus của máy tính như : RS232, LPT, khe cắm mở rộng, cổng
USB. Đây chính là những con đường cho những ai muốn nghiên cứu mở rộng
thêm phạm vi ứng dụng của máy tính.
1.1

Các dạng tin trao đổi của máy tính
Trong quá trình gửi tin từ thiết bị ngoài vào máy tính có hai loại như sau:
 Tin về trạng thái của thiết bị ngoài.
 Tin mang dữ liệu cần trao đổi.
 Trong quá trình ngược lại:
 Tin về địa chỉ ( chính xác hơn là địa chỉ của các thanh ghi đệm nằm trong

khối ghép nối ).
 Tin về dữ liệu trao đổi.
 Tin mang lệnh điều khiển.

Trang 3


Bộ Công Thương
Trường ĐH Công Nghiệp HN


1.2

Khoa: Điện Tử


Các phương thức trao đổi tin của máy tính :
 Phương pháp trao đổi đồng bộ : phương pháp này, máy tính sẽ tiến hành

trao đổi tin ngay với thiết bị ngoài khi khởi động xong mà không cần biết trạng
thái của đường dây cũng như thiết bị ngoài.
 Phương pháp trao đổi không đồng bộ : phưong pháp này, trước khi trao
đổi tin máy tính tiến hành đọc, kiểm tra trạng thái của thiết bị ngoài, nếu thiết bị
ngoài đã sẵn sãng thì tiến hành trao đổi tin còn ngược lại thì sẽ chờ. Nếu tin bị
lỗi cũng yêu cầu truyền lại.
 Phương pháp trao đổi theo ngắt chương trình : phương pháp này tận dụng
ưu điểm và khắc phục nhược điểm của hai phương pháp trên.
2. Khối ghép nối.
2.1 Vai trò.
Trong quá trình trao đổi giữa máy thiết bị ngoài, khối ghép nối giữ vai trò
trung chuyển tin. Trung chuyển ở đây có nghĩa tích cực vì trong quá trình nhận
tin từ thiết bị ngoài vào máy tính, khối ghép nối nhận tin từ thiết bị ngoài, xử lý
và gửi ra cho máy tính theo khuôn dạng tin thích hợp. Ngược lại trong quá trình
gửi tin từ máy ra thiết bị ngoài, khối ghép nối nhận tin từ máy tính, xử lý và giữ
cho thiết bị ngoài theo dạng phù hợp với thiết bị ngoài tương ứng.
2.2 Nhiệm vụ
Để đáp ứng được các vai trò trên đòi hỏi khối ghép nối phải thực hiện các
nhiệm vụ sau :


Phối hợp với mức và công suất của tín hiệu.




Phối hợp về dạng tin.



Phối hợp về tốc độ trao đổi tin.



Phối hợp về phương thức trao đổi tin.

2.3 Cấu trúc


Khối phối hợp đường dây.



Khối giải mã địa chỉ - lệnh.



Khối xử lý ngắt.
Trang 4


Bộ Công Thương
Trường ĐH Công Nghiệp HN


Khoa: Điện Tử


PHẦN II - GIỚI THIỆU VỀ CỔNG SONG SONG
Khi một máy tính PC được xuất xưởng hay bầy bán ở cửa hàng thì các nhà
sản xuất, người bán cũng như người mua đều ngầm hiểu đây chưa phải là một hệ
thống hoàn chỉnh, càng không phải là một hệ thống khép kín. Tuỳ theo nhu cầu
sử dụng mà người dùng có thể nâng cấp mở rộng cấu hình bằng ghép nối thêm
các card mở rộng hoặc các thiết bị ngoại vi như môdem, máy in … Các nhà sản
xuất máy tính đã dự trữ sẵn các rãnh cắm mở rộng trên bản mạch chính, các
cổng ghép nối: song song(LPT) và nối tiếp(COM). Cổng song song được công
ty Centronics thiết kế nhằm mục đích kết nối máy tính PC với máy in. Tên gọi
của cổng song song bắt nguồn từ cách truyền dữ liệu của cổng này: các bit dữ
liệu của cổng này được truyền song song hay nói cụ thể hơn là byte nối tiếp còn
bit song song.
Cấu trúc cổng song song rất đơn giản với tám đường dẫn dữ liệu, một
đường mass chung, bốn đường dẫn điều
khiển để chuyển các dữ liệu điều khiển
tới máy in và và năm đường dẫn trạng
thái để truyền các thông tin về trạng thái
của máy in ngược trở lại máy tính. Giao
diện song song sử dụng các mức logic
TTL, vì vậy sử dụng cổng song song
trong đo lường và điều khiển có phần đơn giản. Nhưng khoảng cách cực đại
giữa cổng song song máy tính PC và thiết bị ngoại vi bị hạn chế vì điện dung ký
sinh và hiện tượng cảm ứng giữa các đường dẫn có thể làm biến dạng tín hiệu.
Khoảng cách tới hạn là 8m nhưng thông thường chỉ cỡ 1.5 – 2m. Tốc độ truyền
dữ liệu của cổng song song phụ thuộc vào linh kiện phần cứng được sử dụng.
Cấu trúc cổng song song

Cổng song song có hai loại :

+ Ổ cắm 36 chân.
+ Ổ cắm 25 chân.

Trang 5


Bộ Công Thương
Trường ĐH Công Nghiệp HN

Khoa: Điện Tử


Nhưng ngày nay loại 36 chân không được sử dụng nữa mà chủ yếu là loại
25 chân.
Tên của tín hiệu

Chân số

Strobe

51

D0

2

D1


3

D2

4

D3

5

D4

6

D5

7

D6

8

D7

9

Acknowledge

10


Busy(báo bận)

11

Paper empty(hết giấy)

12

Select(lựa chọn)

13

Auto linefeed(tự động nạp dòng)

14

Error(mắc lỗi)

15

Reset(đặt lại)

16

Select input(lựa chọn lối vào)

17

Ground(nối đất, 0V)


18-2

Trang 6


Bộ Công Thương
Trường ĐH Công Nghiệp HN

Khoa: Điện Tử


Qua cách mô tả chức năng của từng tín hiệu riêng lẻ ta có thể nhận thấy là
các đường dẫn tín hiệu có thể chia thành ba nhóm :

Các đường dẫn tín
hiệu, xuất ra từ máy tính PC và
điều khiển máy in, được gọi là
các đường dẫn điều khiển dẫn tới
bốn ô nhớ trên thanh ghi điều
khiển.

Các đường dẫn tín hiệu,
đưa các thông báo ngược lại từ
máy in về máy tính, được gọi là
các đường dẫn trạng thái nối tới
năm ô nhớ trên thanh ghi trạng
thái.

Trang 7



Bộ Công Thương
Trường ĐH Công Nghiệp HN

Khoa: Điện Tử


Đường dẫn dữ liệu truyền các bit riêng lẻ của các ký tự cần truyền
được nối với thanh ghi dữ liệu.
Thanh ghi dữ liệu đựơc chỉ rõ là hai hướng dữ liệu có thể xuất ra các
đường dẫn D0 đến D7 hoặc đọc vào. Thanh ghi điều khiển cũng là hai hướng,
hay nói chính xác hơn: bốn bit có giá trị thấp hơn được sắp xếp ở các chân 1, 14,
16, 17 (bit ngắt bao giờ cũng cung cấp giá trị được đưa vào sau cùng và ba bit có
giá trị cao nhất ở hầu hết các giao diện đều chứa số 1). Thanh ghi trạng thái chỉ
có thể được đọc và vì vậy gọi là một hướng.
Trong hệ điều hành dos dự tính bốn cổng song song và đặt tên là: LPT1,
LPT2, LPT3, LPT4. Tuy nhiên hầu hết các máy tính PC đều chỉ có nhiều nhất là
hai cổng song song và ngày nay với lý do giảm giá thành, cổng song song chỉ
còn lại là một. Về mặt phần cứng các nhà thiết kế đã dự tính bốn nhóm, mỗi
nhóm ba địa chỉ, để trao đổi với từng ô nhớ trên ba thanh ghi của mỗi giao diện.
Bảng sau địa chỉ các thanh ghi:
Cổng song

Địa chỉ thanh ghi Địa chỉ thanh ghi Địa chỉ thanh ghi

song(LPT)

dữ liệu

trạng thái


điều khiển

LPT1

3BCh

3BDh

3BEh

LPT2

378h

379h

37Ah

LPT3

278h

279h

27Ah

LPT4

2BCh


2BDh

2BEh

Với các địa chỉ của cổng song song như trên ta có thể trao đổi băng phần
mền với các thanh ghi riêng lẻ trên các chân của cổng song song lên mức High
hoặc Low.

Trang 8


Bộ Công Thương
Trường ĐH Công Nghiệp HN

Khoa: Điện Tử


Phần III: ĐỘNG CƠ BƯỚC

Động cơ bước là một loại động cơ điện có nguyên lý và ứng dụng khác
biệt với đa số các động cơ điện thông thường. Chúng thực chất là một động cơ
đồng bộ dụng để biến đổi các tín hiệu điều khiển dưới dạng cấp xung điện rời
rạc kế tiếp nhau thành các chuyển động góc quay hoặc các chuyển động của rôt
có khả năng cố định roto vào các vị trí cần thiết
Về cấu tạo, động cơ bước có thể được coi là tổng hợp của hai loại động
cơ: Động cơ một chiều không tiếp xúc và động cơ đồng bộ giảm tốc công suất
nhỏ

Hoạt độ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 độ chính xác rất cao về mặt điều khiển học. Chúng làm
việc nhờ các bộ chuyển mạch điện tử đưa các tín 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 roto tương ứng với số lần
chuyển mạch, cũng như chiều quay và tốc độ quay của roto phụ thuộc vào thứ tự
chuyển đổi và tần số chuyển đổi.

Trang 9


Bộ Công Thương
Trường ĐH Công Nghiệp HN

Khoa: Điện Tử


Điều khiển motor bước.
Có 2 phương pháp điều khiển motor bước.
+ Điều khiển 1 pha:
Ở phương pháp này các bước của motor sẽ là từ 0 o ,1.8o ,3.6 o ,....258.2 o .
Motor sẽ quay 200 bước/vòng. Các bước của motor được thiết lập theo bảng I
+ Điều khiển 2 pha:
Ở phương pháp này các bước của motor sẽ là từ 0.9 o 2.7 o 4.5o....359.1o
Motor sẽ quay 200 bước/vòng. Các bước của motor được thiết lập theo bảng II
+ Điều khiển hỗn hợp một pha và hai pha:
Ở phương pháp này các bước của motor sẽ là từ 0 o 0.9 o1.8o 2.7 o....359.1o
Motor sẽ quay 400 bước/vòng. Các bước của motor được thiết lập theo bảng III
Bảng I
Bảng II
Bước

A
B
A
B
Bước
A
B
A
B
1
0
0
0
1
1
1
0
0
1
0
1
0
0
2
0
1
1
0
2
0

0
1
0
3
0
0
1
1
3
0
0
0
1
4
1
0
0
1
4
1
0
0
0
5
1
1
0
0
5
0

1
0
0
6
0
1
1
0
6
0
0
1
0
7
0
0
1
1
7
0
0
0
1
8
1
0
0
1
8


Bước
1
2
3
4
5
6
7
8

Bảng III
A
B
1
0
1
1
0
1
0
1
0
0
0
0
0
0
1
0


Trang 10

A
0
0
0
1
1
1
0
0

B
0
0
0
0
0
1
0
1


Bộ Công Thương
Trường ĐH Công Nghiệp HN

Khoa: Điện Tử


Trang 11



Bộ Công Thương
Trường ĐH Công Nghiệp HN

Khoa: Điện Tử


Phần IV: MẠCH ĐIỀU KHIỂN
Mạch nguyên lý:

Mạch gồm 2 khối : Khối nguồn và khối điều khiển
- Khối nguồn: Gồm 2 IC 7812 và 7805 lần lượt cấp nguồn 1 chiều 12V và 5V
- Khối điều khiển gồm :
+ IC 74HC04 là IC logic đảo trạng thái các chân 1, 14, 17 của cổng LPT
+ IC ULN2803: Là IC đệm dòng để điều khiển 2 động cơ bước.

Trang 12


Bộ Công Thương
Trường ĐH Công Nghiệp HN

Khoa: Điện Tử


Sơ đồ mạch in

Trang 13



Bộ Công Thương
Trường ĐH Công Nghiệp HN

Khoa: Điện Tử


Phần V: CHƯƠNG TRÌNH ĐIỀU KHIỂN

Giao diện chương trình

Trang 14


Bộ Công Thương
Trường ĐH Công Nghiệp HN

Khoa: Điện Tử


Nội dung chương trình
Khai Báo Biến
Private Declare Sub Out32 Lib "inpout32.dll" (ByVal Portaddress As Integer, ByVal value As
Integer)
Private Declare Function Inp32 Lib "inpout32.dll" (ByVal Portaddress As Integer) As Integer
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Dim trai As Boolean
Dim phai As Boolean
Dim leen As Boolean
Dim xuong As Boolean

Dim giay As Integer
Dim a
Dim b
Dim c
Dim i
Dim j
Dim k
Dim m
Dim n
Dim x
Dim y
Dim tg

Phím Trái :
Private Sub Command1_Click()
trai = True
phai = False
End Sub

Phím Phải
Private Sub Command2_Click()
phai = True
trai = False
End Sub

Trang 15


Bộ Công Thương
Trường ĐH Công Nghiệp HN


Khoa: Điện Tử


Phím lên
Private Sub Command3_Click()
leen = True
xuong = False
End Sub

Phím Xuống
Private Sub Command4_Click()
leen = False
xuong = True
End Sub

Phím Tự Động
Private Sub Command5_Click()
giay = Second(Time)
Timer6.Enabled = True
End Sub

Phím Tạm Dừng
Private Sub Command6_Click()
leen = False
xuong = False
trai = False
phai = False
Timer6.Enabled = False
End Sub


Phím Thoát
Private Sub Command7_Click()
Dialog.Show
End Sub

Trang 16


Bộ Công Thương
Trường ĐH Công Nghiệp HN

Khoa: Điện Tử


Timer1 : Điểu khiển sang trái
Private Sub Timer1_Timer()
i=i+1
If i = 8 Then i = 4
If trai = True Then
Out32 &H378, 255 - 2 ^ i
End If
End Sub

Timer2 : Điểu khiển sang phải
Private Sub Timer2_Timer()
j=8-k
k=k+1
If k = 5 Then k = 0
If phai = True Then

Out32 &H378, 255 - 2 ^ j
End If
End Sub

Timer3: Điểu khiển đi lên
Private Sub Timer3_Timer()
a=a+1
If a = 4 Then a = 0
If leen = True Then
Out32 &H37A, 255 - 2 ^ a
End If
End Sub

Timer4: Điều khiển đi xuống
Private Sub Timer4_Timer()
b=8-c
c=c+1
If c = 9 Then c = 5
If xuong = True Then
Out32 &H37A, 255 - 2 ^ b
End If
End Sub

Trang 17


Bộ Công Thương
Trường ĐH Công Nghiệp HN

Khoa: Điện Tử



Timer5: Tạo chữ chạy phần tiêu đề
Private Sub Timer5_Timer()
Dim chu As String
chu = Label1.Caption
Label1.Caption = Right(chu, Len(chu) - 1) + Left(chu, 1)
End Sub

Timer6: Điều khiển phần tự động
Private Sub Timer6_Timer()
Tg = Second(Time) –giay
If tg<0 then
Tg=60+tg
End if
Select Case (tg)
Case 0
xuong = False
leen = True
Case 3
phai = False
trai = True
Case 6
leen = False
xuong = True
Case 9
trai = False
phai = True
Case Is > 12
Call Command6_Click

End Select
End Sub

Trang 18


Bộ Công Thương
Trường ĐH Công Nghiệp HN

Khoa: Điện Tử


Tài liệu tham khảo:
 Giáo Trình Ghép nối máy tính – ĐH Công Nghiệp Hà Nội
 Tự học Visual basic 6.0 - Nhà xuất bản lao động.
 Ebook: Lập trình giao tiếp với máy tính – Hồ Thanh Tâm, Lê Văn Bạn
 Ebook: Mẹo vặt trong VB – VDC Media 2001
 Và các nguồn trên mạng Internet khác.

Trang 19



×