Hệ thống điều khiển băng tải và đếm số lượng sản phẩm bằng vi điều khiển

57 164 2
Hệ thống điều khiển băng tải và đếm số lượng sản phẩm bằng vi điều khiển

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM KHOA VẬT LÝ  VÕ TRẦN NGUYÊN “HỆ THỐNG ĐIỀU KHIỂN BĂNG TẢI VÀ ĐẾM SỐ LƯỢNG SẢN PHẨM BẰNG VI ĐIỀU KHIỂN” Đà Nẵng, 2018 ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM KHOA VẬT LÝ  VÕ TRẦN NGUYÊN “HỆ THỐNG ĐIỀU KHIỂN BĂNG TẢI VÀ ĐẾM SỐ LƯỢNG SẢN PHẨM BẰNG VI ĐIỀU KHIỂN” Chuyên ngành: Vật lý học Khóa học: 2014 - 2018 Người hướng dẫn: Th.S Lê Xứng Đà Nẵng, 2018 LỜI CẢM ƠN L ời em xin gửi lời cảm ơn chân thành đến nhà trường tạo điều kiện cho sinh viên chúng em có mơi trường học tập tốt Cảm ơn thầy cô khoa Vật lý – Trường Đại học sư phạm – Đại học Đà Nẵng truyền đạt kiến thức cho sinh viên chúng em lòng nhiệt huyết với học trò, với cơng việc suốt năm qua Em xin gửi lời cảm ơn sâu sắc đến thầy Lê Xứng – khoa Điện Tử Viễn Thông – Đại học Bách khoa Đà Nẵng trực tiếp hướng dẫn, định hướng chun mơn, quan tâm giúp đỡ tận tình tạo điều kiện thuận lợi trình em thực khóa luận tốt nghiệp Và hết, em xin bày tỏ lòng kính trọng biết ơn sâu sắc đến gia đình tạo điều kiện tốt để em hồn thành tốt cơng việc q trình thực khóa luận Em xin chân thành cảm ơn quý thầy cô khoa Vật lý tận tình giảng dạy, trang bị cho em kiến thức quý báu năm học vừa qua Mặc dù em cố gắng để hồn thành đề tài khóa luận chắn khơng thể tránh khỏi thiếu sót Rất mong nhận đóng góp ý kiến quý thầy cô bạn Em xin chân thành cảm ơn! Sinh viên thực Võ Trần Nguyên I MỤC LỤC LỜI CẢM ƠN I MỤC LỤC II DANH MỤC KÝ HIỆU VÀ CỤM TỪ VIẾT TẮT IV DANH MỤC BẢNG BIỂU, DANH MỤC HÌNH V MỞ ĐẦU 1 Lý chọn đề tài Mục tiêu nghiên cứu Nhiệm vụ nghiên cứu Đối tượng phạm vi nghiên cứu Phương pháp nghiên cứu CHƯƠNG 1: GIỚI THIỆU VỀ HỆ THỐNG ĐIỀU KHIỂN VÀ NHỮNG LINH KIỆN SỬ DỤNG TRONG THIẾT KẾ 1.1Giới thiệu hệ thống điều khiển 1.2Nguyên lý hoạt động 1.3Cấu trúc phần cứng AT89S52 1.3.1Các chức vi điều khiển AT89S52 1.3.2Các chân (Pinout) 1.4Hoạt động đình thời AT89S52 1.4.1Thanh ghi chế độ định thời TMOD 1.4.2Thanh ghi điều khiển Timer ( TCON) 1.4.3Các chế độ đình thời Timer Timer 1.5Tổ chức ngắt AT89S52 1.5.1Thanh ghi IE 10 1.5.2Ngắt Timer 10 1.5.3Ngắt cổng nối tiếp 10 1.6Sơ lược linh kiện điện tử sử dụng thiết kế 11 1.6.1Thạch anh 12MHz 11 1.6.2Tụ gốm, tụ hóa 11 1.6.3Điện trở 12 1.6.4Diode 12 1.6.5LED đơn 13 1.6.6LED đoạn 13 1.6.7Relay 14 1.6.8Opto 15 1.6.9Module cảm biến hồng ngoại 16 1.6.10Động DC 5V 17 1.6.11Xi lanh khí nén hoạt động đơn 18 1.6.12Van điện từ khí nén 5/2 19 1.6.13Động Servo 19 CHƯƠNG : THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN 20 2.1Sơ đồ khối hệ thống 20 2.2Chức khối 20 2.2.1Khối xử lý trung tâm 20 2.2.2Khối cảm biến 21 2.2.3Khối hiển thị 21 2.2.4Khối chấp hành 22 2.2.5Khối công tắc 23 II 2.2.6Khối nguồn 23 2.3Sơ đồ nguyên lý hệ thống 24 2.3.1Mạch điều khiển trung tâm AT89S52 24 2.3.2Mạch Reset 25 2.3.3Mạch dao động 25 2.3.4Mạch hiển thị số lượng 26 2.3.5Mạch chấp hành 27 CHƯƠNG 3: CHƯƠNG TRÌNH ĐIỀU KHIỂN 28 3.1Thiết kế phần mềm 28 3.2Lưu đồ thuật toán 30 3.3Chương trình lập trình 34 KẾT LUẬN 45 -Kết luận: 45 -Kiến nghị: 45 TÀI LIỆU THAM KHẢO 46 Ý KIẾN CỦA NGƯỜI HƯỚNG DẪN 47 III DANH MỤC KÝ HIỆU VÀ CỤM TỪ VIẾT TẮT CPU Central Processing Unit ALU Arithmetic Logical Unit PSW Program Status Word PC Program Counter ROM Read Only Memory RAM Random Acces Memory OE Outbook Enable ALE Adress Latch Enable IV DANH MỤC BẢNG BIỂU, DANH MỤC HÌNH Hình 1.1: Sơ đồ chân vi điều khiển AT89S52 Bảng 1.1 : Chức riêng Port Bảng 1.2 : Thanh ghi chọn chế độ định thời Bảng 1.3: Thanh ghi điều khiển định thời TCON Bảng 1.4 : Tổ chức ngắt AT89S52 Bảng 1.5: Thanh ghi cho phép ngắt IE Hình 1.2 : Hình ảnh kí hiệu thạch anh Hình 1.3: Hình ảnh ký hiệu tụ điện Hình 1.4: Hình ảnh kí hiệu điện trở Hình 1.5: Hình ảnh ký hiệu diode Hình 1.6: Hình ảnh kí hiệu LED đơn Hình 1.7: Hình ảnh kí hiệu LED đoạn Hình 1.8: Hình ảnh kí hiệu relay DC5V Hình 1.9: Hình ảnh kí hiệu Opto Hình 1.10: Module cảm biến hồng ngoại Hình 1.11 : Nguyên lý hoạt động module cảm biến hồng ngoại Hình 1.12 : Động DC5V Hình 1.13: Xy lanh khí nén Hình 1.14: Van điện từ khí nén 5/2 DC24V Hình 1.15: Động Servo DC5V Hình 2.1: Sơ đồ khối hệ thống Hình 2.2: Mạch vi điều khiển AT89S52 Hình 2.3: Khối cảm biến Hình 2.3: Khối hiển thị Hình 2.4: Module relay Hình 2.5 : Khối cơng tắc Hình 2.6: Mạch điều khiển trung tâm AT89S52 Hình 2.7:Mạch reset Hình 2.8: Mạch dao động với tần số 12MHz Hình 2.9: Mạch hiển thị sản phẩm Hình 2.10: Mạch nguyên lý module Relay kênh V MỞ ĐẦU Lý chọn đề tài Trong năm gần đây, với tiến khoa học kỹ thuật đặc biệt kỹ thuật điện tử, công nghệ điện tử ngày phát triển mạnh mẽ Trong có đóng góp lớn kỹ thuật vi điều khiển Các vi điều khiển ứng dụng rộng rãi thâm nhập ngày nhiều lĩnh vực kỹ thuật, đời sống xã hội đem lại nhiều tiện nghi cho người thời đại công nghiệp hóa, đại hóa Trong thời đại khoa học kỹ thuật phát triển, nhà máy xí nghiệp sản xuất sản phẩm băng tải đại, sản phẩm xuất nhanh nhiều việc đếm xem có sản phẩm hồn tất từ băng tải cuối người cơng nhân khó thực xác Vì vậy, cần có hệ thống điều khiển băng tải đếm sản phẩm giúp ta kiểm soát số lượng sản phẩm Không vậy, hệ thống đếm sản phẩm giúp người lao động bớt phần mệt nhọc chân tay tăng hiệu suất lao động lên gấp nhiều lần, đồng thời đảm bảo độ xác cao Sau năm học tập nghiên cứu trường Đại học Sư phạm – Đại học Đà Nẵng, sinh viên học chuyên ngành điện tử, em muốn khai thác tìm hiểu ứng dụng vi điều khiển lĩnh vực điều khiển tự động hóa, đồng thời em muốn củng cố lại kiến thức học suốt thời gian qua thơng qua mơ hình thực tế Và quan em muốn trau dồi thêm kiến thức chuyên ngành để thuận lợi cho công việc sau Xuất phát từ lý trên, em chọn đề tài: “HỆ THỐNG ĐIỀU KHIỂN BĂNG TẢI VÀ ĐẾM SỐ LƯỢNG SẢN PHẨM BẰNG VI ĐIỀU KHIỂN” làm đề tài khóa luận tốt nghiệp Mục tiêu nghiên cứu Thiết kế chế tạo hệ thống băng tải đếm số lượng sản phẩm vi điều khiển Việc thực đề tài giúp em củng cố lại kiến thức học tiếp thu thêm nhiều kiến thức từ giảng viên hướng dẫn Đó khoảng thời gian em thực tế hóa kiến thức học mơ hình cụ thể hiểu rõ cách viết chương trình cho vi điều khiển Do kiến thức hạn hẹp nên em nghiên cứu ứng dụng nhỏ Nếu có thời gian nhiều nghiên cứu sâu hơn, mơ hình ứng dụng rộng rãi hầu hết lĩnh vực sống Nhiệm vụ nghiên cứu Để đạt mục tiêu đề ra, cần thực yêu cầu sau: + Nghiên cứu lý thuyết nguyên lý hoạt động linh kiện điện tử: vi điều khiển AT89S52, Relay, xi lanh khí nén, van điện từ khí nén, LED,… + Nghiên cứu sở lý thuyết để thiết kế hồn chỉnh phần mơ hình +  Đối tượng phạm vi nghiên cứu Đối tượng nghiên cứu Vi điều khiển AT89S52: dòng vi điều khiển tương đối mạnh với nhiều tính năng, hoạt động ổn định mà giá thành lại tương đối rẻ thông dụng thị trường Do dễ dàng mở rộng thiết kế ứng dụng khác + Các tài liệu linh kiện điện tử + Các tài liệu hướng dẫn lập trình Keil C Vision  Phạm vi nghiên cứu Đề tài sử dụng vi điều khiển AT89S52 đề lập trình, module cảm biến hồng ngoại, động Servo, xy lanh khí nén hành trình 10cm, van điện từ khí nén 24V, động DC 5V LED dùng đề hiển thị số lượng sản phẩm Phương pháp nghiên cứu + Nghiên cứu tài liệu nguyên lý hoạt động thiết bị linh kiện điện tử + Nghiên cứu cách trình bày khóa luận tốt nghiệp PWM_Init(ck) PWM_Set_Duty ( duty) PWM_PIN = TMOD = 0xF0 TMOD = 0x01 ET0= EA= T =ck Ton=T/2 Toff =T-Ton Ton_h_reload = (65536-Ton)>>8 Ton_l_reload = (65536-Ton)&0x00FF duty =0 PWM_PIN = ET0= RET duty =100 Toff_h_reload = (65536-Toff)>>8; Toff_l_reload = (65536-Toff)&0x00FF TH0 = Ton_h_reload TL0 = Ton_l_reload PWM_PIN = ET0= RET RET Ton=((unsigned long)T)*duty/100 Toff = T - Ton Ton_h_reload = (65536-Ton)>>8 Ton_l_reload = (65536-Ton)&0x00FF Toff_h_reload = (65536-Toff)>>8; Toff_l_reload = (65536-Toff)&0x00FF ET0 =1 Timer0Overflow( ) interrupt PWM_PIN = !PWM_PIN PWM_PIN=0 TH0 = Toff_h_reload TL0 = Toff_h_reload RETI 33 RET 3.3 Chương trình lập trình #include #include "C:\New KeilC\Library\Main.h" #define LEDPORT1 P1 #define LEDPORT2 P2 sbit CTHT_tren_pin1 = P0^0; sbit Button_Start = P0^1; sbit CTHT_tren_pin2 = P0^2; sbit Button_HT = P0^3; sbit CB1=P0^6; sbit CB2=P0^7; sbit PWM_PIN = P0^4; sbit CB3 = P0^5; sbit Seg_1= P3^4; sbit Seg_2=P3^5; sbit Seg_3=P3^6; sbit Seg_4=P3^7; sbit DC2_pin = P3^2; sbit DC1_pin = P3^3; sbit Xylanh1_pin = P3^0; sbit Xylanh2_pin = P3^1; unsigned char Ma7Seg[]={0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09}; //Bang ma LED seg unsigned int T, Ton, Toff, i, state; unsigned char Ton_h_reload, Ton_l_reload, Toff_h_reload, Toff_l_reload; unsigned char so_sanpham = 0; unsigned char so_thung = 0; unsigned int dem, dem1, dem2; 34 /* Chuong trinh delay ms */ void Delay_ms(unsigned int i){ unsigned int x; for(x=0;x1) { so_sanpham++; } 36 dem=0; } } /* Chuong trinh khoi tao xung PWM */ // ck (us) void PWM_Init(unsigned int ck) { PWM_PIN = 1; TMOD = 0xF0; // Xoa di cac bit chon mode cua Timer0 TMOD = 0x01; // Timer0 hoat dong o mode ET0 = 1; EA=1; T = ck; Ton = T/2; Toff = T - Ton; Ton_h_reload = (65536-Ton)>>8; Ton_l_reload = (65536-Ton)&0x00FF; Toff_h_reload = (65536-Toff)>>8; Toff_l_reload = (65536-Toff)&0x00FF; TH0 = Ton_h_reload; TL0 = Ton_l_reload; } /* Chuong trinh bat dau dem Timer0 */ void PWM_Start() { TR0 = 1; // Timer0 bat dau dem 37 } /* Chuong trinh ngung dem Timer0 */ void PWM_Stop() { TR0 = 0; // Timer0 ngung dem } /* Chuong trinh tao xung PWM */ // duty: den 100 void PWM_Set_Duty(float duty) { if(duty == 0) { PWM_PIN = 0; ET0 = 0; } else if(duty == 100) { PWM_PIN = 1; ET0 = 0; } else { Ton = ((unsigned long)T)*duty/100; Toff = T - Ton; Ton_h_reload = (65536-Ton)>>8; Ton_l_reload = (65536-Ton)&0x00FF; 38 Toff_h_reload = (65536-Toff)>>8; Toff_l_reload = (65536-Toff)&0x00FF; ET0 = 1; } } /* Chuong trinh ngat tran Timer0 */ void Timer0Overflow() interrupt { PWM_PIN = !PWM_PIN; if(PWM_PIN==0) { TH0 = Toff_h_reload; TL0 = Toff_l_reload; } else { TH0 = Ton_h_reload; TL0 = Ton_l_reload; } } /* Chuong trinh phat hien san pham loi */ void CB2_SanPhamLoi() { if(CB2 == 1) { PWM_Init(20000) ; //Servo quay goc PWM_Set_Duty(0); 39 PWM_Start(); } if(CB2 == 0){ PWM_Init(20000); PWM_Set_Duty(32); //Servo quay goc 90 PWM_Start(); } } /* Chuong trinh cam bien thung */ void CB_DemSoThung() { Hien_thi_San_Pham(so_sanpham); Hien_thi_Thung(so_thung); if(CB3 == 0){ dem1++; } if(CB3==1) { if(dem1>1) { so_thung++; if(so_thung ==6){ so_thung=1; Hien_thi_Thung(so_thung); } } dem1=0; } } 40 /* chuong trình nut nhan Start va Stop */ void state_main() { if(Button_Start == 0){ dem2++; } if(Button_Start ==1) { if(dem2>1) { state++; } dem2=0; } } /* Delay co hien thi san pham */ void Delay_cohienthi(unsigned int i){ unsigned int x; for(x=0;x5) { so_thung=1; } if(so_sanpham>10) { so_sanpham=1; } if(state>1) { state=0; 42 } if(state==1) { DC2_pin =0; CB_DemSoThung(); CB2_SanPhamLoi(); CB_DemSanPham(); if(so_thung= 10) { Delay_cohienthi(40); DC1_pin=1; Xylanh2_pin = 0; Delay_cohienthi(50); Xylanh2_pin = 1; Delay_cohienthi(100); if(Button_HT == 0) { Xylanh1_pin = 0; Delay_cohienthi(50); Xylanh1_pin = 1; Delay_cohienthi(100); DC1_pin=0; so_sanpham=0; } } else 43 { CB_DemSoThung(); CB_DemSanPham(); DC1_pin=0; } } } else { Hien_thi_San_Pham(so_sanpham); Hien_thi_Thung(so_thung); DC1_pin =1; DC2_pin =1; } } } 44 KẾT LUẬN - Kết luận: Sau hoàn thành đề tài này, em hiểu sâu nguyên lý hoạt động cuả vi điều khiển AT89S51, biết cách vận dụng lý thuyết vi điều khiển vào q trình làm mạch để hồn thành khóa luận Trong khả cho phép, em thực điều khiển băng tải đếm số lượng sản phẩm - Kiến nghị: Sau thời gian thực khóa luận tốt nghiệp chuyên ngành điện tử, em nhận thấy ngành học lý thú có ứng dụng thực tiễn đời sống Tuy nhiên qua năm học tập trường, kiến thức chuyên ngành điện tử em học tập khơng nhiều nên q trình thực khóa luận gặp khơng khó khăn Vì vậy, em mong khóa tiếp theo, khoa Vật lý đưa kế hoạch học tập cụ thể, hướng sinh viên ngành Vật lý học theo chuyên ngành điện tử cách rõ ràng bổ sung thêm học phần chuyên ngành điện tử 45 TÀI LIỆU THAM KHẢO [1] Lê Nguyễn Thanh Hằng, Điều khiển ánh sáng theo nhạc dùng vi điều khiển 8051, Khóa luận tốt nghiệp năm 2014, Trường Đại học Sư phạm Đà Nẵng [2] Nguyễn Đức Dũng, Hệ thống điều khiển quạt với tốc độ, có thị thời gian, Khóa luận tốt nghiệp năm 2017, Trường Đại học Sư phạm Đà Nẵng [3] Tống Văn Ôn, Họ vi điều khiển 8051 46 Ý KIẾN CỦA NGƯỜI HƯỚNG DẪN Nhận xét: (về chất lượng Khóa luận cần) Ý kiến: Đánh dấu (X) vào ô lựa chọn Đồng ý thông qua báo cáo Không đồng ý thông qua báo cáo Đà Nẵng,ngày 03 tháng 05 năm 2018 NGƯỜI HƯỚNG DẪN (ký ghi rõ họ tên) Th.S Lê Xứng 47 ... KHIỂN BĂNG TẢI VÀ ĐẾM SỐ LƯỢNG SẢN PHẨM BẰNG VI ĐIỀU KHIỂN” làm đề tài khóa luận tốt nghiệp 1.2 Nguyên lý hoạt động “HỆ THỐNG ĐIỀU KHIỂN BĂNG TẢI VÀ ĐẾM SỐ LƯỢNG SẢN PHẨM BẰNG VI ĐIỀU KHIỂN”... nghiệp sản xuất sản phẩm băng tải đại, sản phẩm xuất nhanh nhiều vi c đếm xem có sản phẩm hồn tất từ băng tải cuối người cơng nhân khó thực xác Vì vậy, cần có hệ thống điều khiển băng tải đếm sản phẩm. .. dụng vi điều khiển lĩnh vực tự động hóa Em muốn lập trình cho vi điều khiển AT89S52 để điều khiển băng tải tự động đếm số lượng sản phẩm chạy băng tải Từ đó, em định chọn đề tài: “HỆ THỐNG ĐIỀU KHIỂN

Ngày đăng: 07/10/2019, 11:37

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan