Chương trình chính: Để các thiết bị hoạt động được đầu tiên phải khởi động các thiết bị ngoại vi, khởi động Timer cho phép ngắt.. Sau đó gọi chương trình nhập số hộp, nhập số sản phẩm..
Trang 1Chương 11: CHƯƠNG TRÌNH ĐIỀU KHIỂN
A THUẬT GIẢI
I Chương trình chính:
Để các thiết bị hoạt động được đầu tiên phải khởi động các thiết bị ngoại vi, khởi động Timer cho phép ngắt Sau đó gọi chương trình nhập số hộp, nhập số sản phẩm Nếu đồng ý số đếm đã nhập vào thì cho phép băng chuyền hoạt động (đóng role BC) Đọc dữ liệu từ cảm biến (đầu dò) Nếu có sản phẩm đi qua thì gọi chương trình đếm Nếu đủ sản phẩm một hộp thì gọi role đóng hộp đồng thời gọi chương trình đếm hộp Nếu đủ số hộp thì băng chuyền ngưng hoạt động và chờ cho ca tiếp theo Khi đã hoàn thành 9 ca sản phẩm thì quay lại làm từ ca 1
Trang 2
- Nạp giá trị đầu #00H vào các ô nhớ
-Khởi động thiết bị ngoại vi
-Khởi động thanh ghi Timer, cho phép ngắt
Ca: =Ca + 1 Ca: = 0
- Gọi chương trình con nhập hộp
- Gọi chương trình con nhập sản phẩm
- Cho phép băng truyền hoạt động
Đủ SP Ro-le đóng hộp, đếm hộp (RL – ĐH)
Gọi chương trình con đầu dò (DAUDO)
Đếm sản phẩm S
- Gọi chương trình con dò phím (IN – HEX)
Đủ hộp
Phím E S Ca = 9
- Cho phép băng chuyền ngưng hoạt động
- Gọi chương trình lưu số hộp, số sản phẩm
- Gọi chương trình xem số liệu lưu bất kì ca nào
S S
Trang 3II CÁC CHƯƠNG TRÌNH CON:
1 Chương trình con khởi động ngoại vi:
8255 chỉ hoạt động khi nạp cho nó từ điều khiển vì vậy để giao tiếp với các thiết bị ngoại vi cần khởi động cho các ô nhớ của 8255
Nạp giá trị ban đầu xóa 8 led Khởi động 8255 - 2
Nạp giá trị ban đầu cho ngõ dự phòng
Nạp giá trị ban đầu cho role băng truyền
Khởi động 8255 - 1
Bắt đầu
Lưu đồ thuật giải chương trình chính
Trang 52 Chương trình ngắt hiển thị:
Trong chương trình ngắt, thời gian ngắt được xác định bằng cờ tràn timer Như vậy cứ sau 250 s các led lại được quét Với thời gian ngắt nhỏ, dữ liệu ra khó có thể quan sát được vì vậy delay sau mỗi lần hiển thị bằng việc giảm thanh ghi R2 Khi R2
= 0 cho phép xuất dữ liệu ra hiển thị Các Led sẽ được quét liên tục từ Led 77đến Led 70, với dữ liệu xuất ra hiển thị từ ô nhớ 77H đến ô nhớ 70H
Lưu đồ thuật giải như sau:
Cho phép ngắt
Đ
R1 = # 69H
R2 = 0 R2 - 1
TỐC ĐỘ 1 R2 Chọn led hiển thị Xuất dữ liệu ra led R1 - 1
R1 # 77H
Thoát 1 Ret
S
Bắt đầu
S Đ
Trang 63 Chương trình con nhấn số
Chương trình này cho phép nhập số thập phân Nếu phím nhấn từ 0 đến 9 thì nhận số còn phím từ A đến F thì xóa số Số nhận thì bit 7D = [0], 7E = [0] Sau khi nhập số liệu xong nếu thấy qua led hiển thị đúng số liệu đã nhập vào thì nhấn phím A tức là đặt bit YES = 1 (7E = 1) để kết thúc quá trình nhập số liệu Còn đang nhập nếu muốn bỏ số liệu vừa nhập vào thì nhấn phím phím B tức là đặt bit NO = 1 (7D = 1) Khi nhập xong số sản phẩm và số hộp thông qua chương trình con nhấn số này thì nhấn phím C tức là cho phép sản phẩm từ lúc này đi qua đầu dò và bắt đầu đếm
Bắt đầu
Xóa bit YES Xoá bit NO Gọi chương trình dò phím