LỜI MỞ ĐẦU
Ngày nay với sự phát triển của khoa học kỹ thuật và công nghệ trên thế
giới ở nhiều lĩnh vực khác nhau đang diễn ra. Đặc biệt sự phát triển như vũ bão
của khoa học máy tính là một cơng cụ hỗ trợ đắc lực và quan trọng trong các
ngành công nghệ thơng tin và tự động hóa. Nó giúp con người lưu trữ, xử lý
thơng tin, tính tốn, điều khiển. Hơn thế nữa nó có thể kết nối với nhau tạo
thành một mạng máy tính tồn cầu để chia sẻ thơng tin giữa các vùng trên thế
giới.
Và đúng như vậy, việc lập trình cho phần cứng và chip điều khiển là điều
không thể phủ nhận được, và tầm quan trọng của nó là rất lớn. Và việc ghép nối
với máy tính là điều bắt buộc, vì người ta dùng ghép nối để mở rộng cấu hình
và khả năng ứng dụng của máy tính vào thực tế.
Việc ghép nối với máy tính ta có thể kể đến ghép nối tiếp ( qua cổng
COM ) và ghép song song ( qua cổng LPT). Trong đó cổng LPT được ứng
dụng rất rộng rãi và phổ biến với những ưu điểm mà chúng ta cần phải quan
tâm trong lĩnh vực đo lường và điều khiển.
Trong bài tập của em em nêu một ứng dụng nhỏ của việc ghép nối máy
tính với máy in qua cổng LPT. Qua thời gian tìm hiểu với sự hướng dẫn của
thầy Trần Sinh Biên và sự cố gắng tìm hiểu của bản thân em đã hoàn thành
được bài tập lớn này. Tuy nhiên, do sự hiểu biết về thực tế và trình độ chun
mơn cịn hạn chế nên bài tập lớn khơng tránh khỏi thiếu sót. Em mong nhận
được sự góp ý của các thầy cơ giáo và các bạn.
Em xin chân thành cảm ơn các thầy cô!
-1-
Đề 69:
Thiết kế modul ghép nối với PC qua giao diện LPT để điều khiểm và giám sát
thang máy cho tòa nhà 5 tầng. Xây dựng một phần mềm giao diện đơn giản trên
máy tính cho phép điều khiển và giám sát quá trình này. Nêu khả năng ứng
dụng của Module.
Chương 1: TỔNG QUAN CÔNG NGHỆ
1.1.Giới thiệu cấu trúc cổng song song(LPT):
Đây là hình ảnh về cổng LPT[/I]
Hình trên giới thiệu loại ổ cắm 25 chân và cách bố trí các chân
-2-
Tín hiệu ở các chân trên ổ cắm 25 chân và 36 chân
Ngày nay, loại ổ cắm 36 chân khơng cịn được sử dụng, hầu hết các máy tính
PC đều trang bị cổng song song 25 chân nên ta chỉ cần quan tâm đến loại 25 chân.
Sau đây là chức năng của các đương dẫn tín hiệu:
Strobe (1): Với một mức logic thấp ở chân này, máy tính thơng báo cho máy in biết
có một byte đang sẵn sàng trên các đường dẫn tín hiệu để được truyền.
Acknowledge: với một mức logic thấp ở chân này, máy in thơng báo cho máy tính
biết là đã nhận được kí tự vừa gửi và có thể tiếp tục nhận.
Busy (bận – 11): máy in gửi đến chân này mức logic cao trong khi đang đón nhận
hoặc in ra dữ liệu để thơng báo cho máy tính biết là các bộ đệm trong máy tính biết là
các bộ đệm trong máy tính đã bị đầy hoặc máy in trong trạn thái Off-line.
-3-
Paper empty (hết giấy – 12): Mức cao ở chân này có nghĩa là giấy đã dùng hết.
Select (13): Một mức cao ở chân này, có nghĩa là máy in đang trong trạng thái kích
hoạt (On-line)
Auto Linefeed (tự nạp dịng): Có khi cịn gọi là Auto Feed. Bằng một mức thấp ở
chân này máy tính PC nhắc máy in tự động nạp một dòng mới mỗi khi kết thúc một
dòng.
Error (có lỗi): Bằng một mức thấp ở chân này, máy in thơng báo cho máy tính là đã
xuất hiện một lỗi, chẳng hạn kẹt giấy hoặc máy in đang trong trạng thái Off-Line.
Reset (đặt lại): Bằng một mức thấp ở chân này, máy in được đặt lại trạng thái được
xác định lúc ban đầu.
Select Input: bằng một mức thấp ở chân này, máy in được lựa chọn bởi máy tính.
Như vậy cáp nối giữa máy in và máy tính bao gồm 25 sợi, nhưng không phải
tất cả điều được sử dụng mà trên thực tế chỉ có 18 sợi được nối với các chân cụ thể.
Nhận xét này giúp chúng ta tận dụng những cáp nối mà trong lõi đã bị đứt một hai
sợi.
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 các
đương dẫn dữ liệu có thể chia thành 3 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 tính, được gọi là
các đường dẫn điều khiển.
- Các đường dẫn tín hiệu, đưa các thơng tin 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.
- Đường dẫn dữ liệu, truyền các bit rieng lẽ của các ký tự cần in.
Từ cách mơ tả các tín hiệu và mức tín hiệu ta có thể nhận thấy là: các tín hiệu
Acknowledge, Auto Linefeed, Error, Reset và Select Input kích hoạt ở mức thấp.
Thơng qua chức năng của các chân này ta cũng hình dung được điều khiển cổng máy
in.
Đáng chú ý là 8 đường dẫn song song đều được dùng để chuyển dữ liệu từ máy
tính sang máy in. Trong những trường hợp này, khi chuyển sang các ứng dụng để
thực hiện nhiệm vụ đo lường ta phải chuyển dữ liệu từ mạch ngọa vi vào máy tính để
thu thập và xử lý.
Vì vậy ta phải tận dụng một trong năm đường dẫn theo hướng ngược lại, nghĩa
là từ bên ngoài về máy tính để truyền số liệu đo lường. Dưới đây đề cập chi tiết hơn
đến các đặc tính một hướng và hai hướng của các đường dẫn này.
Để có thể ghép nối các thiết bị ngoại vi, các mạch điện ứng dụng trong đo
lường và điều khiển với cổng song song ta phải tìm hiểu cách trao đổi với các thanh
-4-
ghi thông qua cách sắp xếp và địa chỉ các thanh ghi cũng như phần mềm.
Các đường dẫn của cổng song song được nối với ba thanh ghi 8bit khác nhau:
Thanh ghi dữ liệu
Thanh ghi trạng thái
Thanh ghi điều khiển
Tám đường dẫn dữ liệu dẫn tới 8 ô nhớ trên thanh ghi dữ liệu còn bốn đường
dẫn điều khiển Strobe, Auto Linefeed, Reset, Select Input dẫn tới bốn ô nhớ trên
thanh ghi điều khiển, cuối cùng là năm đường dẫn trạng thái Acknowledge, Busy,
Paper empty, Select, Error nối tới năm ô trên thanh ghi trạng thái. Riêng ở thanh ghi
điều khiển còn phải chú ý tới một bit nữa được sử dụng cho mục đích ghép nối nhưng
khơng được nối với ổ cắm 25 chân. Bit này có thể được sử dụng để xóa một bit ngắt
liên quan với đường dẫn Acknowledge, vì vậy chưa đề cập đến đây.
Trên hình, thanh ghi dữ liệu được chỉ rõ là hai hướng dữ liệu có thể được xuất
ra các chân D0 đến D7 hoặc đọc vào. Thanh ghi điều khiển cũng là hai hướng, thanh
ghi trạng thái chỉ có thể được đọc và vì vậy gọi là một hướng.
Ta có thể trao đổi với 3 thanh ghi này như thế nào? Hệ điều hành DOS dự tính
đến bốn cổng song song và đặt tên là: LPT1, LPT2, LPT3 và LPT4. Tuy vậy, hầu hết
các máy tính PC đều chỉ có nhiều nhất hai cổng song song , và cho đến nay với lí do
giảm giá thành, cổng song song chỉ cịn lại một. Về mặt phần cứng, các nhà sản xuất
đã dự tính bốn nhóm, mỗi nhóm 3 địa chỉ, để trao đổi với từng ô nhớ trên thanh ghi
của mỗi giao diện. Ta có thể nhận thấy các địa chỉ thanh ghi nằm kế tiếp nhau.
Khi bật máy tính, BIOS kiểm tra kế tiếp nhau các địa chỉ được ghi trong bảng
và khẳng định xem trên máy có trang bị một vài cổng song song. Các cổng song song
được BIOS tìm thấy sẽ được sắp xếp theo các tên mà DOS đã chỉ định là: LPT1,
LPT2…
Điều này giải thích vì sao trong các tài liệu khác nhau các địa chỉ được ấn định
cho LPT1, LPT2… lại sai lệch nhau. Ta có thể làm dừng q trình khới động máy
tính bằng phím <Pause> để quan sát kỹ các thông số được liệt kê trong bảng.
-5-
-6-
Chương 2: GHÉP MODUL VÀ LẬP TRÌNH ĐIỀU KHIỂN
2.1. Mạch điều khiển
2.1.1 IC 74HC245
Bộ đệm bus 2 chiều 74HC245 gồm có 20 chân, ,bộ đệm chỉ hoạt động khi có
tín hiệu low ở chân 19.Nó có chứa 8 vi mạch đệm với các lối ra 3 trạng thái để trao
đổi thông tin giữa các đường dẫn bus dữ liệu theo 2 hướng. Hướng truyền dữ liệu
được xác định bằng chân DIR: DIR = 0, dữ liệu được chuyển từ B sang A. Việc
chuyển hướng dữ liệu cho phép quản lý đơn giản bằng tín hiệu /IOR. Ta có thể nối
trực tiếp ra chân DIR. Qua đó đảm bảo bộ đệm chỉ cho phép dữ liệu đưa vào từ bên
ngoài đưa lên bus dữ liệu của máy tính khi PC thực hiện một q trình truy nhập đọc
(/IOR = 0)
2.1.2 IC ULN 2803
Vi mạch ULN 2803 để khuếch đại dòng tải của các đầu ra từ modul cơ sở để cấp
cho các rơle,ULN2803 là một bộ đệm khá đặc biệt,nó chứa bên trong 8 bộ khuếch đại
-7-
darlington với các điơt bảo vệ đã được tích hợp sẵn cho các trường hợp tải cảm
kháng.Các bộ khuếch đại darlington này được điều khiển trực tiếp bởi các tín hiệu
logic TTL và có thể cung cấp 1 dịng tải ở đầu ra đến 500mA.Các đầu ra đều là đầu ra
collector hở.
2.1.3 Cảm biến vị trí
- Xác định vị trí của buồng thang
- Phát lệnh điều khiển thang lên, xuống, dừng
*Cảm biến kiểu cơ khí: cơng tắc 3 vị trí
Ưu điểm: kết cấu đơn giản, thực hiện đủ 3 chức năng của cảm biến vị trí
Nhược điểm: Tuổi thọ làm việc không cao, gây tiếng ồn, nhiễu các thiết bị vô tuyến
*Cảm biến cảm ứng: Dựa trên sự thay đổi trị số điện cảm (L) của cuộn dây mạch từ
khi mạch từ kín và mạch từ hở.
Ưu điểm: Cho độ tin cậy cao, tốc độ đáp ứng nhanh, bền
R2 R11 T5 5
U P -D O W N
2 T4 4
T3 3
R1 R2 T2 2 Cabin
R4 R3
1
L E F T -R IG H T
CB_L CB_R
2 T1 1
R3 R4
2.2 Mạch động lực
Thang máy là thiết bị vận tải dùng để chở người và hàng hóa theo phương
thẳng đứng hoặc nghiêng 1 góc nhỏ hơn 150 theo phương đã định sẵn.
Đối với cơ cấu chuyển động thang máy, ta sử dụng 2 động cơ
- Động cơ nâng hạ: Sử dụng động cơ 1 chiều, có hộp số giảm tốc nhằm
nâng hạ cabin thang máy
- Động cơ đóng mở cửa: Sử dụng động cơ 1 chiều với công suất nhỏ, tác
-8-
dụng đóng mở cửa cabin thang máy
2.3 Mạch Orcad
14 14 D0 2 U4 18 U6 18 UP
15 15 D1 3 2 B1 17 O U T1 17 DOW N
16 16 D2 4 3 A1 B2 16 1 O U T2 16
17 17 D3 5 4 A2 B3 15 2 IN 1 O U T3 15 LE F T
18 G N D D4 6 5 A3 B4 14 3 IN 2 O U T4 14 R IG H T
19 G N D D5 7 6 A4 B5 13 4 IN 3 O U T5 13
20 G N D Cong LPT D6 8 7 A5 B6 12 5 IN 4 O U T6 12
21 G N D D7 9 8 A6 B7 11 6 IN 5 O U T7 11
22 G N D 9 A7 B8 7 IN 6 O U T8
23 G N D 8 IN 7
24 G N D A8
25 G N D IN 8
VC C 191G 10 C O M
D IR
74H C 245 U LN 2803 VC C
Dieu khien dong co R1 R2 R3 R4
DOW N LE F T R IG H T
S T R O B E 1 a/b UP
AC K 10 2 U 3A 1 4 1Y U2 T4
7 2Y 2 D7
BU SY 11 74H C 04 9 3Y
12 4Y 1A 3 T3
PE 12 1B 5 C B_R
2A 6
SLC T 13 2B 11 T2
3A 10 C B_L
R2 R1 3B 14
4A 13 T1
U P -D O W N 4B T5
Thu tin hieu Cam 15 a/b
bien vi tri G1
A /B
T5 5
74H C 257
1
2 T4 4
T3 3
R1 R2 T2 2 Cabin
R4 R3
1
L E F T-R IG H T
CB_L CB_R
2 T1 1
R3 R4
-9-
2.4 Giao diện Visual Basic
-10-
-11-
2.5 Code lập trình
Dim t, dem, up, down As Byte
Dim open_close, ok As Boolean
Dim time0, time1 As Integer
Private Sub delay(time0)
time1 = 0
Timer1.Enabled = False ‘bat timer 1
Timer2.Enabled = True ‘bat timer 2
End Sub
Private Sub Command1_Click()
t = 1
End Sub
Private Sub Command2_Click()
t = 2
End Sub
Private Sub Command3_Click()
t = 3
End Sub
Private Sub Command4_Click()
t = 4
End Sub
Private Sub Command5_Click()
t = 5
End Sub
Private Sub Command6_Click()
open_close = Not open_close ' dao bit
-12-
If ok = True Then
If open_close = True Then
Outport &H378, 4
Text1.Text = "ĐANG Mở CửA TầNG: " & t
delay (2)
ElseIf open_close = False Then
Outport &H378, 8
Text1.Text = "§ANG §ãNG CưA TÇNG: " & t
delay (2)
MsgBox "CHON TANG DI TOI"
Timer1.Enabled = True
End If
ElseIf ok = False Then
MsgBox "! THANG MAY DANG CHUYEN DONG - KHONG MO
CUA DUOC"
End If
End Sub
Private Sub Form_Load()
up = 1
down = 2
sp = 0
dem = 3
End Sub
Private Sub Timer1_Timer()
If Inport(&H379) And 248 = 8 Then ' dang o tang 1
dem = 1
ElseIf Inport(&H379) And 248 = 16 Then ' dang o tang 2
-13-
dem = 2
ElseIf Inport(&H379) And 248 = 32 Then ' dang o tang 3
dem = 3
ElseIf Inport(&H379) And 248 = 64 Then ' dang o tang 4
dem = 4
ElseIf Inport(&H379) And 248 = 128 Then ' dang o tang 5
dem = 5
End If
If dem < t Then ' nho hon thi di len
Outport &H378, up
Text1.Text = "THANG MáY ĐANG ĐI L£N TÇNG: " & t
ok = False
ElseIf dem > t Then ' lon hon thi di xuong
Outport &H378, down
Text1.Text = "THANG MáY ĐANG ĐI XUốNG TầNG: " & t
ok = False
ElseIf dem = t Then ' = thi dung
Outport &H378, sp
Text1.Text = "THANG MáY ĐANG DừNG ở TầNG: " & t
ok = True
End If
End Sub
Private Sub Timer2_Timer()
time1 = time1 + 1
If time1 < time0 Then
time1 = 0
-14-
Timer2.Enabled = False ‘tat timer 2
End If
End Sub
**** Thuật toán: Phần code viết cho -` 5 nút ấn chọn tầng – 1 nút
ĐÓNG/MỞ CỬA. Phần lệnh sử dụng 2 Timer, 1 timer tạo trễ, 1 timer sử dụng để
kiểm tra hoạt động của hệ thống, kiểm tra vị trí hiện tại của thang máy để đưa ra
lệnh điều khiển chính xác nhất.
2.6 Ứng dụng
Thang máy được sử dụng rộng rãi trong các ngành kinh tế quốc dân như
khai thác hầm mỏ, luyện kim, xây dựng, cơng nghiệp nhẹ. Nó vận chuyển hàng hóa,
ngun liệu, cơng nhân tới nơi làm việc ở những độ cao khác nhau. Sử dụng thang
máy làm nâng cao năng suất lao động , giảm sức lực con người, tiết kiệm thời gian
Trong sinh hoạt, thang máy được lắp đặt và sử dụng rộng rãi tại các siêu
thị, nhà hàng, khách sạn, công sở, bệnh viện... Hệ thống thang máy giúp con người
tiết kiệm nhiều thời gian và sức lực.
Nhiều quốc gia trên thế giới hiện nay quy định: tòa nhà cao trên 6 tầng bắt
buộc phải có hệ thống thang máy để thuận tiện, tiết kiệm thời gian, tăng năng suất
lao động
-15-