LỜI MỞ ĐẦU
Ngày nay cùng với sự phát triển mạnh mẽ của khoa học kĩ thuật,máy tính trở
thành công cụ vô cùng quan trọng.Sự phát triển của “Kỹ thuật ghép nối vớ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.Các thiết bị ghép nối với máy tính theo các modul nhờ vậy mà
máy tính có thể truyền nhận tín hiệu để thực hiện nhiệm vụ xử lý tín hiệu và điều
khiển. Các thiết bị, hệ thống đo lường và điều khiển ghép nối máy tính có độ chính
xác cao, thời gian thu thấp số liệu ngắn, nhưng còn đáng quan tâm hơn là mức độ tự
động hóa trong việc thu thập và xử lý các kết quả đo, kể cả việc lập bảng thống kê
cũng như in ra kết quả. ISA là một tiêu chuẩn của rãnh cắm mở rộng của máy
tính,phần lớn các card ghép nối dùng trong kỹ thuật đo lường và điều khiển đều
được chế tạo để đặt vào các rãnh cắm theo tiêu chuẩn ISA. Bài tập lớn này của em
chỉ nêu lên một ứng dụng nhỏ của việc kết nối máy tính vào sản xuất nói chung và
rãnh cắm mở rộng nói riêng.
Qua một thời gian tìm hiểu, thiết kế với sự cố gắng của bản thân và sự hướng
dẫn của thầy giáo bộ môn đến nay em đã hoàn thành bài tập lớn này.
Tuy nhiên, do
sự hiểu biết về thực tế và trình độ chuyên 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ô!
CHƯƠNG 1. TỔNG QUAN VỀ CÔNG NGHỆ
1.1. Giới thiệu về chuẩn giao tiếp ISA
Ở máy tính PC/XT rãnh cắm trong máy tính chỉ có 1 loại với độ rộng bus là 8 bit và
tuân theo tiêu chuẩn ISA(Industry Standard Architecture).Từ máy tính AT trở đi
việc bố trí chân trên rãnh cắm trở lên phức tạp hơn,có loại rãnh cắm PS/2 với 16 bit
theo tiêu chuẩn ISA.Rãnh cắm theo tiêu chẩn ISA được mô tả như sau:
Thông thường rãnh cắm có 62 đường tín hiệu dùng cho mục đích thông tin với 1
card cắm vào.Về cơ bản các đường tín hiệu này được chia thành các đường dẫn tín
hiệu,đường dẫn địa chỉ và đường dẫn điều khiển
Phía mạch in Phía linh kiện
GND B01 A01 /IOCHCK
Reset B02 A02 D7
+5 V B03 A03 D6
IRQ2 B04 A04 D5
-5 V B05 A05 D4
DREQ2 B06 A06 D3
-12 V B07 A07 D2
Dự trữ B08 A08 D1
+12V B09 A09 D0
GND B10 A10 /IOCHDY
/MEMW B11 A11 AEN
/MEMR B12 A12 A19
/IOW B13 A13 A18
/IOR B14 A14 A17
/DACK3 B15 A15 A16
DREQ3 B16 A16 A15
/DACK1 B17 A17 A14
DREQ1 B18 A18 A13
/DACK0 B19 A19 A12
CLK B20 A20 A11
IRQ7 B21 A21 A10
IRQ6 B22 A22 A9
IRQ5 B23 A23 A8
IRQ4 B24 A24 A7
IRQ3 B25 A25 A6
/DACK2 B26 A26 A5
TC B27 A27 A4
ALE B28 A28 A3
+5V B29 A29 A2
OSC B30 A30 A1
GND B31 A31 A0
H1.Sắp xếp chân ra của rãnh cắm mở rộng 8 bit
Kích thước lớn nhất vủa các card ISA 8 bit là:
- Chiều cao 106,7 mm(hay 4,2 inhxơ)
- Chiều dài 333,5mm(hay 13,13 inhxơ)
- Chiều dày –kể cả linh kiện -12,7(hay 0,5 inhxơ)
Kích thước lớn nhất vủa các card ISA 16 bit là:
- Chiều cao 121,92 mm(hay 4,8 inhxơ)
- Chiều dài 333,5mm(hay 13,13 inhxơ)
- Chiều dày –kể cả linh kiện -12,7(hay 0,5 inhxơ)
Từ cách sắp xếp chân ra,rõ ràng 62 đường tín hiệu nằm cả ở mặt hàn thiếc lẫn mặt
sắp xếp linh kiện.Do đó các bản mạch (card) cắm vào bao giờ cũng là những card
mạc in 2 mặt.
Bộ giải mã địa chỉ 74HC688 so sánh các đường dẫn địa chỉ từ A2 đến A9 xem có
thống nhất với các địa chỉ cơ bản được thiết lập trên card mở rộng bằng chuyển
mạch DIP,74HC688 so sánh 2 trong số 8 bit xem có giống nhau không và khi các bit
xếp kề sát đồng nhất sẽ tạo ra tín hiệu Low ở chân 19.Mạch lôgic của mạch giải mã
có chứa 2 vi mạch 74HC00 và 74HC138.Ba cổng NAND làm cho bộ đệm bú
74HC245 sau đấy chỉ trở nên được kích hoạt(/G=0)khi các điều kiện sau được thực
hiện:Thứ nhất là card mở rộng cắm vào đã trao đổi được(chân 19 của vi mạch
74HC688 bằng 0) thứ hai là 1 chu trình đọc hay 1 chu trình ghi được thực
hiện(IRO=0 hoặc IRW=0)
1.2. Giới thiệu về các linh kiện sử dụng trong sơ đồ
1.1.1. Vi mạch 8255
8255A là vi mạch phối ghép được dùng rất phổ biến trong các mạch mở
rộng cổng vào ra song song.
Các chân tín hiệu của 8255:
- Reset: đặt trạng thái làm việc ban đầu cho 8255A.Chân này phải được
nối với tín hiệu Reset chung của toàn hệ(khi reset thì các cổng được định nghĩa là
cổng vào để không gây ra sự cố cho các mạch điều khiển).
- /CS:Chân chọn vỏ,được nối với mạch giả mã địa chỉ để đặt mạch
8255A vào một địa chỉ cơ sở nào đó.
A0,A1: Các chân tín hiệu địa chỉ cho phép chọn ra 4 thanh ghi bên trong
8255A:một thanh ghi để ghi từ điều khiển cho hoạt động của 8225A,và 3 thanh ghi
khac tương ứng với các cổng PA,PB,PC để ghi đọc các dữ liệu.Địa chỉ của cổng
chính là địa chỉ cơ sở của 8255A.
Bảng chân lý vi mạch 8255
A1 A0 RD WR CS Chức năng
0 0 0 1 0 Đọc cổng A
0 1 0 1 0 Đọc cổng B
1 0 0 1 0 Đọc cổng C
0 0 1 0 0 Ghi cổng A
0 1 1 0 0 Ghi cổng B
1 0 1 0 0 Ghi cổng C
1 1 1 0 0 Ghi từ điều khiển
X X X X 1 Bus D ở Z cao
X X 1 1 0 Bus D ở Z thấp
Có hai loại từ điều khiển cho 8255
- Từ điều khiển định nghĩa cầu hình cho các cổng PA, PB, PC
- Từ điều khiển lập/xóa từng đầu ra của cổng PC.
* Từ điều khiển định nghĩa cấu hình
Các cổng PA, PB, PC được chia thành 2 nhóm. Nhóm A gồm cổng PA và 4
bít cao của PC (gọi 4 bit này là CA), nhóm B gồm cổng PB và 4 bit thấp của cổng
PC (gọi 4 bit này là CB). Từ điều khiển dùng để điều khiển định nghĩa cấu hình các
cổng như sau.
1 MA1 MA0 A CA MB B CB
Trong đó:
- MA1, MA0: Là 2 bit định chế độ cho nhóm A
00: Chế độ 0
01: Chế độ 1
1x: Chế độ 2
- Bit A dùng để đặt cổng PA là cổng ra (A=0) hay cổng vào (A=1)
- Bit CA dùng để đặt 4 bit cao của cổng PC là cổng ra (CA=0) hay cổng vào
(CA=1)
- Bit MB là bit định chế độ làm việc cho nhóm B:
MB=0: Chế độ 0
MB=1: Chế độ 1
- Bit B để đặt cổng PB là cổng ra (B=0) hay cổng vào (B=1)
- Bit CB dùng để đặt 4 bit thấp của cổng PC là cổng ra (CB=0) hay cổng vào
(CB=1)
* Từ điều khiển lập/xóa bit PCi
0 0 0 0 C B A S/R
Trong đó:
- Các bit a, b, c dùng để chọn một trong 8 bit: PC0 … PC7 của cổng PC.
Bit được chọn sẽ có giá trị bằng bit S/R ( 0 hoặc 1). Bit S/R có thể được đặt là 0
hoặc 1 tại thời điểm ghi điều khiển.
Các chế độ làm việc của 8255A có thể được đặt bằng cách ghi nội dung vào
từ điều khiển ( thường được ký hiệu là CWR). 8255A có 4 chế độ làm việc.
- Chế độ 0: Vào/ra cơ sở. Trong chế độ này mỗi cổng PA, PB, PCH hay
PCL đều có thể được định nghĩa là cổng vào hoặc cổng ra.
- Chế độ 1: Vào ra có xung cho phép. Trong chế độ này mỗi cổng PA,
PB có thể được định nghĩa là cổng vào hoặc cổng ra với các tín hiệu móc nối do các
bit tương ứng của cổng PC trong cùng nhóm đảm nhiệm.
- Chế độ 2: Vào ra 2 chiều. Trong chế độ này chỉ riêng cổng PA có thể
được định nghĩa là cổng vào/ra 2 chiều với các tín hiệu móc nối do các bit của cổng
PC đảm nhiệm. Cổng PB có thể làm việc ở chế độ 1 hoặc 2.
- Lập xóa các bit cổng PC
1.2.2. Giới thiệu về ULN2803
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 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ở.
1.2.3. Giới thiệu về 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 quá trình truy nhập đọc
(/IOR = 0)
1.2.4. Giới thiệu về 74HC688
Bộ giả mã địa chỉ 74HC688 so sánh các tín hiệu từ A0-A7 xem có thống nhất với
các địa chỉ của tín hiệu trên các chân tương ứng B0-B7.74HC688 so sánh hai trong
số tám bit xem có giống nhau không và khi các bit xếp kề sát đồng nhất sẽ tạo ra
một tín hiệu Low ở chân19.
CHƯƠNG 2. THIẾT KẾ MODUL THEO YÊU CẦU
2.1. Sơ đồ hệ thống bơm nước
CB1
CB3
CB4
CB2
bom 3
bom 2
bom 1
Một bồn chứa có 3 bơm cấp nước
• Yêu cầu hoạt động là:
+ Khi nước ở dưới mức cảm biến 1 thì hệ thống bắt đầu TTBĐ
+ Khi mức nước ở trong khoảng từ CB1 đến CB2 thì cả 3 bơm hoạt động
+ Khi mức nước ở trong khoảng từ CB2 đến CB3 thì bơm 1 và bơm 2 hoạt
động
+ Khi mức nước ở trong khoảng từ CB3 đến CB4 thì chỉ bơm 1 hoạt động
+ Khi mức nước chạm CB4 thì hệ thống ngừng hoạt động
2.2. Thiết kế mạch điều khiển ghép nối máy tính
2.2.1. Mạch vào ra ghép nối ISA
2.2.2. Mạch cảm biến
2.2.3. Mạch đầu ra role
D K 3
D K 4
R L 1
4
3
1
2
4
3
1
2
R L 3
4
3
1
2
4
3
1
2
U 1 9
U L N 2 8 0 3
C O M
1 0
I N 1
1
I N 2
2
I N 3
3
I N 4
4
I N 5
5
I N 6
6
I N 7
7
I N 8
8
O U T 1
1 8
O U T 2
1 7
O U T 3
1 6
O U T 4
1 5
O U T 5
1 4
O U T 6
1 3
O U T 7
1 2
O U T 8
1 1
V C C
V C C
V C C
V C C
T o i b o m 1
T o i b o m 2
T o i b o m 3
T o i b o m 4
D K 1
D K 2
2.2.4. Mạch cấp nguồn
C 8
G N D
+ 8 V
+ 5 V
- 8 V
- +
D 1
D I O D E B R I D G E _ 4 2 1 3
1
4
3
2
+ 1 0 V ~
- 1 0 V ~
U 5
L M 7 8 0 8 / T O
V I N
1
V O U T
2
U 6
L M 7 9 0 8 / T O 3
V I N
3
V O U T
2
U 7
L M 7 8 0 5 / T O
V I N
1
V O U T
2
C 2
C 3
C 4
C 5
C 6
C 7
CHƯƠNG 3. THIẾT KẾ PHẦN MỀM
Các shape xanh khi bơm ngừng hoạt động và đỏ khi bơm hoạt động
3.1. Giao diện phần mềm.
Dim a, b, c As Integer
Private Sub Command1_Click()
MsgBox "day la chuong trinh dieu khien bom nuoc qua giao dien ISA "
End Sub
Private Sub Command2_Click()
End
End Sub
Private Sub Command3_Click()
Timer1.Interval = 10
Outportb &H303, 144 'ghi tu dieu khien
b = Inportb(&H300)
If b > 0 Then
MsgBox "be dang con nuoc, hay xa het nuoc"
Else
a = 1
End If
End Sub
Private Sub Form_Load()
Shape1.Visible = False
Shape2.Visible = True
Shape3.Visible = True
Shape4.Visible = True
Shape5.Visible = False
Shape6.Visible = True
End Sub
Private Sub Timer1_Timer()
If a = 1 Then
Outportb &H301, 7 'bat ca ba bom
Shape1.Visible = True
Shape4.Visible = True
Shape5.Visible = True
Shape2.Visible = False
Shape3.Visible = False
Shape6.Visible = False
b = Inportb(&H300)
If b = 3 Then
Outportb &H301, 3 'tat bom 3
Shape1.Visible = False
Shape2.Visible = True
b = Inportb(&H300)
If b = 7 Then
Outportb& H301, 1 'tat bom 3 va bom 2
Shape3.Visible = True
Shape4.Visible = True
b = Inportb(&H300)
If b = 15 Then
Shape6.Visible = True
Shape5.Visible = False
Outportb& H301, 0 'tat tat ca cac bom
End If
End If
End If
End If
End Sub
Kt lun
Sau nhiều ngày tìm hiểu và làm bài tập lớn dưới sụ hướng đẫn của các thầy và
bạn b—, em đã hoàn thành xong được đề tài này. Sau khi làm xong đã giúp cho em
có nhiều hiểu biết hơn về vi điều khiển và hoạt động của nó. Mặc dù em đã rất cố
gắng, xong do kiến thức còn hạn chế nên không thoát khỏi những sai lầm trong khi
thiết kế, mong thầy có thể chỉ ra những sai sót đó để em có thể lắm rõ hơn nữa về
vấn đề. Em xin chân thành cảm ơn.