Tải bản đầy đủ (.doc) (20 trang)

Điều khiển băng tải phân loại sản phẩm bằng giao diện máy tính ISA

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 (605.46 KB, 20 trang )

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ô!
1
Chương 1 : GIỚI THIỆU VỀ GIAO DIỆN ISA
1.1 Giới thiệu về rãnh cắm ISA
Rãnh cắm thông dụng nhất là rãnh căm isa(industry standasd architecture)
do IBM đưa ra năm 1980 cho máy 8086 XT, sau đó là ISA 16 bít cho máy AT
và chở thành chuẩn AT bus .
Thông thường rãnh cắm có 62 đường tín hiệu dùng cho các mục đích
thông tin với các card cắm vào. Về cơ bản các đường tín hiệu này được chia ra
thành các đường dẫn tín hiệu,đường dẫn địa chỉ và đường dẫn điều khiển. bưởi


vì ngay từ các máy tính pc/xt đã có sẵn các rãnh cắm 62 chân này là rãnh cắm 8
bit. Chỉ những card 8 bit mới cắm được vào rãnh này. Bảng dưới đây chỉ ra sự
săp xếp chân ra của rãnh cắm mở rộng 8 bit.

Về sau PC/AT có thêm rãnh cắm thứ 2 và có 36 chân.
Trên rãnh này có chứa cá tín hiệu 16 bit. Nên khi có thêm rãnh cắm này người
ta gọi chung cả 2 rãnh cắm là rãnh cắm 16 bit.
Dưới đây là bảng ý nghĩa rãnh cắm ISA:
2
3
Tuyến ISA có nhiều chân nhưng thực tế sử dụng ta chỉ cần các đường địa
chỉ SA0…SA9, dữ liệu SD0…SD15, điều khiển –IOR,-IOW,AEN,-IOCS16,
-SBHE, ngõ vào ngắt IRQ , xung nhịp CLK và nguồn. Các ngoại vi được gọi la
port, nếu xuất nhập thực hiện theo 8 bit, nếu xuất nhập 16 bít thì dùng hai port
địa chỉ kế tiếp nhau.
4
Việc thiết kế card ISA xuất nhập 8 bit bao gồm mạch giải mã địa chỉ, mạch chốt
dữ liệu ra và mạch đệm dữ liệu vào.
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.
1.2 Mạch giải mã thường dùng trên một card được cắm vào rãnh ISA

5
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).
6
1.2.1 Giới thiệu về các linh kiện sử dụng trong sơ đồ
A,. 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

7
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
8
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
B, 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
9
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ở.
C, 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).
D, Giới thiệu về 74HC68
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
10
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ân 19.
Chương 2. GIỚI THIỆU THIẾT BỊ
2.1 Mô tả công nghệ
11
:
Hệ thống trên có nhiệm vụ phân loại sản phẩm theo chiều cao.
Để nhận biết được chiều cao ta dùng 3 sensor 1,2,3 được đặt ở các độ cao
khác nhau được thiết kế sẵn phù hợp với các chiều cao của sản phẩm.
Nếu sản phẩm có độ cao ở mức 1 thì sẽ được truyền thẳng bởi bănh tải 1.
- Nếu sản phẩm có độ cao ở mức 2 thì sẽ được xilanh 1 đẩy sang băng tải 3.
- Nếu sản phẩm có độ cao ở mức 1 thì sẽ được xilanh 2 đẩy sang băng tải 2.
- Các sensor 4,5 dùng để nhận biết vị trí của vật để dừng băng tải 1 đúng vị trí
trước khi xilanh 1 hoặc xilanh 2 hoạt động.
2.2 Giới thiệu các thiết bị
a. Xilanh
Các xilanh ở đây được sử dụng là các xilanh tác động đơn
12
Để điều khiển các xilanh ta có 1 sơ đồ điều khiển như trên. Khi đầu vào tác động
bằng điện của van 3-2 bằng 1 thì xilanh thực hiện hành trình thuận và ngược lại.
b. Sensor

Ta sử dụng Sensor quang của hãng OMRON loại E3F3 có các thông số như
sau :
- Dạng hình trụ cỡ M18.
- Đầu ra : NPN hoặc PNP 30VDC, 100mA.
- Khoảng cách phát hiện: phản xạ khuyếch tán 30 cm.
- Nguồn cấp : 10 – 30 VDC.
Do tín hiêu đầu ra của sensor quang E3F3 là đầu ra tranzito 30VDC do đó ta cần
gia công tín hiệu trước khi đưa vào Port A của IC 8255. Để đơn giản ở đây ta
dùng mạch phân áp để giảm Ura của sensor quang xuông còn 5VDC.
13
Chương 3 : SƠ ĐỒ NGUYÊN LÝ VÀ LƯU ĐỒ THUẬT TOÁN
3.1. Sơ đồ nguyên lý
A 2
A 3
A 4
A 5
A 6
A 7
A 8
A 9
A 2 2
A 2 3
A 2 4
A 2 5
A 2 6
A 2 7
A 2 8
A 2 9
A 1 1
B 0 2

B 1 3
B 1 4
A 3 0
A 3 1
D 2
R O L E D K B A N G T A I 2
D 3
T I N H I E U S E N S O R 3
R O L E D K B A N G T A I 3
V C C
2
3
4
A 5
A 0
7 4 h c 2 4 5
2
3
4
5
6
7
8
9
1 91
1 8
1 7
1 6
1 5
1 4

1 3
1 2
1 1
A 0
A 1
A 2
A 3
A 4
A 5
A 6
A 7
O ED I R
B 0
B 1
B 2
B 3
B 4
B 5
B 6
B 7
D 4
A E N
3 4
3 3
3 2
3 1
3 0
2 9
2 8
2 7

4
3
2
1
4 0
3 9
3 8
3 7
1 8
1 9
2 0
2 1
2 2
2 3
2 4
2 5
1 4
1 5
1 6
1 7
1 3
1 2
1 1
1 0
5
3 6
9
8
3 5
6

D 0
D 1
D 2
D 3
D 4
D 5
D 6
D 7
P A 0
P A 1
P A 2
P A 3
P A 4
P A 5
P A 6
P A 7
P B 0
P B 1
P B 2
P B 3
P B 4
P B 5
P B 6
P B 7
P C 0
P C 1
P C 2
P C 3
P C 4
P C 5

P C 6
P C 7
R D
W R
A 0
A 1
R E S E T
C S
1 1 9
3
5
7
9
1 2
1 4
1 6
1 8
2
4
6
8
1 1
1 3
1 5
1 7
O E P = Q
Q 0
Q 1
Q 2
Q 3

Q 4
Q 5
Q 6
Q 7
P 0
P 1
P 2
P 3
P 4
P 5
P 6
P 7
A 6
I S A
R E S E T
S W D I P - 8
D 5
A 2
2
3
4
T I N H I E U S E N S O R 4
A 1
1
2
3
4
5
6
7

8 1 1
1 2
1 3
1 4
1 5
1 6
1 7
1 8
9 1 0
I 1
I 2
I 3
I 4
I 5
I 6
I 7
I 8 / Q 1
/ Q 2
/ Q 3
/ Q 4
/ Q 5
/ Q 6
/ Q 7
/ Q 8
G N D V C C
D 0
A 7
U L L 2 8 0 3
D 6
T I N H I E U S E N S O R 5

1
/ O I W
A 3
7 4 H C 6 8 8
A 8
T I N H I E U S E N S O R 2
R O L E D K X I L A N H 1
D 7
A 9
D 1
H I
2
3
4
/ O I R
A 4
R O L E D K X I L A N H 2
H I
R O L E D K B A N G T A I 1
T I N H I E U S E N S O R 1
8 2 5 5
14
3.2. Lưu đồ thuật toán
15
Chương 4 : CHƯƠNG TRÌNH ĐIỀU KHIỂN
4.1 Màn hình điều khiển
4.2 Chương trình điều khiển
Private Sub Form_Load()
status_cmd.Text = "System ready activities"
End Sub

Private Sub start_cmd_Click()
status_cmd.Text = "System is running"
Dim sensor_receive As Byte
Dim data_send As Byte
Dim address_basic, porta, portc, control_registor, control_word As Integer
address_basic = &H300
porta = address_basic + 0
portc = address_basic + 2
control_registor = address_basic + 3
'ghi tu dieu khien porta la cong vao, portc la cong ra
16
control_word = &H90
DlPortWritePortUchar control_registor, control_word
Do While stop_cmd.Enabled = False
'chay bang tai 1
DlPortWritePortUchar portc, &H1
'doc tin hieu sensor 1,2
sensor_recieve = DlPortReadPortUchar(porta)
If sensor_recieve = 1 Then
sensor_recieve = DlPortReadPortUchar(porta)
If sensor_recieve = 8 Then
'dung bang tai 1
DlPortWritePortUchar portc, &H0
'cho phep xilanh 2
DlPortWritePortUchar portc, &H10
Call Delay(3)
'cho phep bang tai 2 va thu xilanh 2 ve
DlPortWritePortUchar portc, &H2
End If
ElseIf sensor_recieve = 2 Then

sensor_recieve = DlPortReadPortUchar(porta)
If sensor_recieve = 4 Then
'dung bang tai 1
DlPortWritePortUchar portc, &H0
'cho phep xilanh 2
DlPortWritePortUchar portc, &H8
Call Delay(3)
'cho phep bang tai 3 va thu xilanh 1 ve
DlPortWritePortUchar portc, &H4
End If
17
End If
Loop
End Sub
Public Sub Delay(HowLong As Date)
TempTime = DateAdd("s", HowLong, Now)
While TempTime > Now
DoEvents
Wend
End Sub
Private Sub stop_cmd_Click()
status_cmd.Text = "System stopped"
If MsgBox("Do you want stop program?", vbOKCancel, "Exit") = vbOK Then
'dung tat ca bang tai va thu xilanh ve
sensor_recieve = 0
DlPortWritePortUchar portc, &H0
End If
End Sub
Private Sub exit_cmd_Click()
If MsgBox("Do you want exit program?", vbOKCancel, "Exit") = vbOK Then

End If
End
End Sub
18
KQt luận
Sau một thời gian thực hiện em đã hoàn thành bài tập lớn của mình. Sau
khi làm xong đã giúp cho em có nhiều hiểu biết hơn về vi cách giao tiếp và điều
khiển công nghệ qua giao diện ISA. Mặc dù em đã rất cố gắng, xong do kiến
thức còn hạn chế và không có điều kiện làm thực tế bằng thiết bị vật lý và mô
phỏng nên không thể chứng thực được tính đúng đắn của phần cứng cũng như
chương trình điều khiển 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.
19
Tài liệu tham khảo
[1] Bài giảng môn điều khiển sản xuất và tích hợp máy tính - Trường ĐHHH
Việt Nam.
[2] Kỹ thuật ghép nối máy tính – Ngô Diên Tập , Nhà xuất bản khoa học – kĩ
thuật.
20

×