ĐỒ án học PHẦN cơ điện tử 1 điều KHIỂN lưu LƯỢNG nước TRONG máy CHIẾT rót

51 26 0
ĐỒ án học PHẦN cơ điện tử 1 điều KHIỂN lưu LƯỢNG nước TRONG máy CHIẾT rót

Đ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 CƠNG NGHIỆP THỰC PHẨM TP.HỒ CHÍ MINH KHOA CƠNG NGHỆ CƠ KHÍ BỘ MƠN CƠ ĐIỆN TỬ -o0o - ĐỒ ÁN HỌC PHẦN CƠ ĐIỆN TỬ ĐIỀU KHIỂN LƯU LƯỢNG NƯỚC TRONG MÁY CHIẾT RÓT GVHD: Nguyễn Lê Thái SVTH: Quảng Thục Hằng MSSV: 2025181024 TP HỒ CHÍ MINH, THÁNG 12 NĂM 2020 ĐẠI HỌC CNTP TP.HỒ CHÍ MINH CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc -✩ -✩ Khoa: CN CƠ KHÍ Bộ Mơn: Cơ Điện Tử NHIỆM VỤ ĐỒ ÁN CƠ ĐIỆN TỬ HỌ VÀ TÊN: QUẢNG THỤC HẰNG MSSV: 2025181024 NGÀNH: CƠ ĐIỆN TỬ LỚP : 09DHCDT2 Đề tài: Điều khiển lưu lượng nước máy chiết rót Nhiệm vụ (Yêu cầu nội dung số liệu ban đầu): i Tìm hiểu cảm biến đo lưu lượng ii Tìm hiểu vi điều khiển AVR iii Thiết kế mạch điều khiển iv Chế tạo mơ hình điều chỉnh thơng số để hệ thống đạt độ xác cao Ngày giao nhiệm vụ đồ án: Ngày hoàn thành nhiệm vụ: Họ tên người hướng dẫn: Phần hướng dẫn Nội dung yêu cầu ĐAHP thông qua Bộ Môn Tp.HCM, ngày… tháng… năm 20 CHỦ NHIỆM BỘ MÔN PHẦN DÀNH CHO KHOA, BỘ MÔN: Người duyệt (chấm sơ bộ): Đơn vị: Ngày bảo vệ : Điểm tổng kết: Nơi lưu trữ: NGƯỜI HƯỚNG DẪN CHÍNH NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN [Type the document title] LỜI CẢM ƠN Trong suốt trình học tập hoàn thành đồ án điện tử này, em nhận nhiều hướng dẫn quý báu thầy, Với lịng kính trọng biết ơn sâu sắc em xin gửi lời cảm ơn chân thành đến: Ban giám hiệu trường Đại học Cơng nghiệp Thực phẩm Thành phố Hồ Chí Minh thầy khoa Cơng nghệ Cơ khí dạy bảo tạo điều kiện thuận lợi giúp đỡ em trình thực đồ án Em xin chân thành cảm ơn Thầy Nguyễn Lê Thái ln quan tâm nhiệt tình hướng dẫn em suốt q trình thực đồ án Đồ án mơn học đồ án chương trình học chúng em, nên đồ án quan trọng tảng để chúng em thực đồ án sau Với ước mong học hỏi, em mong nhận góp ý quý thầy cô giáo bảo, hướng dẫn thêm để em rút kinh nghiệm cho đồ án tốt Một lần em xin chân thành cảm ơn quan tâm giúp đỡ quý thầy, cô q trình thực đồ án để em hồn thành đồ án mong giúp đỡ thầy, cô đồ án sau Xin chân thành cảm ơn! Tp Hồ Chí Minh, ngày 14 tháng 12 năm 2020 Sinh viên thực i [Type the document title] Quảng Thục Hằng ii Đồ án học phần GVHD: Nguyễn Lê Thái TÓM TẮT ĐỒ ÁN Hiện nay, q trình tự động hóa cơng nghiệp quan trọng phát triển quốc gia Trong đó, phát triển kỹ thuật tự động hóa tạo hàng loạt thiết bị với đặc điểm bật xác ,bảo mật cao, tốc độ nhanh, gọn nhẹ yếu tố cần thiết cho tiện lợi cho sống Ý tưởng đề tài xuất phát từ tốn thực tế Một thiết bị điều khiển lưu lượng nước hệ thống chiết rót Đề tài “Thiết kế mạch điều khiển lưu lượng nước máy chiết rót, hiển thị lên LCD” kết hợp nhiều linh kiện điện tử sử dụng phần tử vi điều khiển chương trình giảng dạy, tổng hợp kiến thức từ môn sở ngành kỹ thực hành môn Vi Điều Khiển Bộ mạch điều khiển AVR mà cụ thể ATMega 2560 ngơn ngữ lập trình C/C++ với vai trị điều khiển nhập xuất liệu từ thiết bị giao tiếp với nó, điển hình cảm biến lưu lượng YF-S201 giao tiếp với AVR xuất liệu lưu lượng đo đến LCD Ngoài ra, mạch sử dụng nút nhấn để điều chỉnh lưu lượng cần chiết rót Sau cảm biến đạt đến lưu lượng cài đặt vi điều khiển kích relay làm cho van điện từ đóng lại Đồ án học phần GVHD: Nguyễn Lê Thái MỤC LỤC CHƯƠNG GIỚI THIỆU 1.1 Tổng quan 1.2 Nhiệm vụ đồ án (khóa luận) CHƯƠNG 2.1 LÝ THUYẾT Tổng quan AVR 2.1.1 AVR gì? 2.1.2 Phân loại 2.1.3 Kiến trúc vi điều khiển 2.1.4 So sánh PIC AVR 10 2.2 Phần mềm lập trình AVR 11 2.2.1 Giới thiệu mikroC PRO for AVR 11 2.2.2 Đặc điểm tính mikroC PRO for AVR 11 2.2.3 Khái niệm về Arduino IDE .12 2.3 Giới thiệu linh kiện sử dụng .13 2.3.1 Giới thiệu bo mạch Arduino Mega 2560 Pro (Embed) .13 2.3.2 Cảm biến lưu lượng YF-S201: 17 2.3.3 Động Cơ DC Bơm Nước Water Pump P385 12VDC .18 2.3.4 Van điện từ 19 2.3.5 Mạch Relay Opto 21 2.3.6 Ma trận bàn phím 4x4: .22 2.3.7 Màn hình LCD1602 23 2.3.8 Mạch chuyển đổi giao tiếp I2C: 26 CHƯƠNG THIẾT KẾ VÀ THỰC HIỆN PHẦN CỨNG .27 3.1 Sơ đồ khối chức 27 3.2 Tìm hiểu chuẩn bị linh kiện 28 3.3 Thiết kế phần cứng 29 3.3.1 Khối nguồn 29 Đồ án học phần GVHD: Nguyễn Lê Thái 3.3.2 Khối đầu vào .30 3.3.3 Khối hiển thị 31 3.3.4 Khối đầu 32 CHƯƠNG THIẾT KẾ VÀ THỰC HIỆN PHẦN MỀM .33 4.1 Lưu đồ thuật toán 33 4.2 Phần mềm viết chương trình điều khiển Arduino IDE 35 CHƯƠNG KẾT QUẢ THỰC HIỆN 43 5.1 Thi công lắp đặt .43 5.2 Đo đạc thử nghiệm 44 CHƯƠNG KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 45 6.1 Kết luận 45 6.2 Hướng phát triển 45 TÀI LIỆU THAM KHẢO .46 Đồ án học phần GVHD: Nguyễn Lê Thái DANH SÁCH HÌNH MINH HỌA Hình 2.1 Vi điều khiển AVR Hình 2.2 Phần mềm lập trình mikroC for AVR 11 Hình 2.3 Phần mềm lập trình Arduino IDE 12 Hình 2.4 Aruino ATMega 2560 pro (embed) 13 Hình 2.5 Sơ đồ chân bo mạch Arduino Atmega 2560 pro 15 Hình 2.6 Sơ đồ chân Arduino Atmega 2560 pro 16 Hình 2.7Cảm biến lưu lượng ỲF-S201 17 Hình 2.8 Nguyên lý hoạt động cảm biến lưu lượng .18 Hình 2.9 Động Cơ DC Bơm Nước Water Pump P385 18 Hình 2.10 Van điện từ 20 Hình 2.11 Nguyên lý hoạt động van điện từ 20 Hình 2.12 Mạch Relay Opto 21 Hình 2.13 Nguyên lý hoạt động mạch relay 22 Hình 2.14 Ma trận bàn phím 4x4 22 Hình 2.15 Sơ đồ kết nối bàn phím 4x4 23 Hình 2.16 Sơ đồ LCD 1602 24 Hình 2.17 Mạch chuyển đổi giao tiếp I2C 26 Hình 3.1 Nguồn adapter ngõ 12V 29 Hình 3.2 Mạch hạ áp từ 12V sang 5V 29 Hình 3.3 Sơ đồ kết nối vi điều khiển cảm biến lưu lượng 30 Hình 3.4 Sơ đồ kết nối vi điều khiển bàn phím .30 Hình 3.5 Sơ đồ kết nối chân I2C Arduino 31 Hình 3.6 Sơ đồ kết nối I2C LCD 1602 .31 Hình 4.1 Lưu đồ thuật toán 33 Hình 4.2 Lưu đồ thuật tốn Autoset 34 Hình 4.3 Lưu đồ thuật tốn vandientu 35 Hình 5.1 Mơ hình sau thi công 43 Hình 5.2 Sơ đồ mạch mô proteus 43 Đồ án học phần GVHD: Nguyễn Lê Thái DANH SÁCH BẢNG SỐ LIỆU Bảng 2.1 So sánh AVR PIC 10 Bảng 2.2 Chức chân LCD 16x2 25 Bảng 3.1 Các linh kiện cần thiết 28 Bảng 3.2 Sơ đồ kết nối chân khối đầu 32 Bảng 5.1 Bảng thực nghiệm 44 Đồ án học phần GVHD: Nguyễn Lê Thái Theo sơ đồ chân nhà sản xuất, chân SDA Aruino D20 chân SLD Arduino chân D21 Cần kết nối chân để I2C hoạt động 3.3.4 Khối đầu Để điều khiển động bơm nước van điện tử, cần sử dụng mạch relay kích 5V Trong đó, động bơm van điện từ kết nối chân thường hở DC+ 5V+ DC- GND IN1 D7 IN2 D10 COM1 Van điện từ NO1 12V+ COM2 Dây nguội bơm NO2 12V+ Bảng 3.4 Sơ đồ kết nối chân khối đầu Đồ án học phần GVHD: Nguyễn Lê Thái CHƯƠNG THIẾT KẾ VÀ THỰC HIỆN PHẦN MỀM 4.1 Lưu đồ thuật tốn Hình 4.24 Lưu đồ thuật toán Đồ án học phần GVHD: Nguyễn Lê Thái Hình 4.25 Lưu đồ thuật tốn Autoset Đồ án học phần GVHD: Nguyễn Lê Thái Hình 4.26 Lưu đồ thuật tốn vandientu 4.2 Phần mềm viết chương trình điều khiển Arduino IDE #include #include #include LiquidCrystal_I2C lcd(0x27, 16, 2); byte relayVale byte relayPumper = 7; // relay = 10; //bơm byte sensorInterrupt = 4; // digital pin 19 chân ngắt int4 byte sensorPin = 19; // chân tín hiệu unsigned long sosanh; unsigned long luuluong; Đồ án học phần GVHD: Nguyễn Lê Thái float calibrationFactor = 7.5; // theo datasheet volatile byte pulseCount; float flowRate; unsigned int flowMilliLitres; unsigned long totalMilliLitres; unsigned long oldTime; byte setkey; unsigned int set; // KEY PAD char key; const byte ROWS = 4; //four rows const byte COLS = 4; //four columns char keys[ ROWS ][COLS ] = { {'3', '2', '1', 'A'}, {'6', '5', '4', 'B'}, {'9', '8', '7', 'C'}, {'#', '0', '*', 'D'}, }; byte rowPins[ROWS] = {40, 42, 44, 46}; //connect to the row pinouts of the keypad byte colPins[COLS] = {32, 34, 36, 38}; //connect to the column pinouts of the keypad Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS ); void autoset() { key = keypad.getKey(); switch (key) { Đồ án học phần case '1': luuluong = 100; lcd.clear(); lcd.print("AUTO SET"); lcd.setCursor(10, 1); lcd.print(luuluong); lcd.setCursor(14, 1); lcd.print("ml"); break; case '2': luuluong = 220; lcd.clear(); lcd.print("AUTO SET"); lcd.setCursor(10, 1); lcd.print(luuluong); lcd.setCursor(14, 1); lcd.print("ml"); break; case '3': luuluong = 330; lcd.clear(); lcd.print("AUTO SET"); lcd.setCursor(10, 1); lcd.print(luuluong); lcd.setCursor(14, 1); lcd.print("ml"); GVHD: Nguyễn Lê Thái Đồ án học phần break; case '4': luuluong = 400; lcd.clear(); lcd.print("AUTO SET"); lcd.setCursor(10, 1); lcd.print(luuluong); lcd.setCursor(14, 1); lcd.print("ml"); break; case '5': luuluong = 500; lcd.clear(); lcd.print("AUTO SET"); lcd.setCursor(10, 1); lcd.print(luuluong); lcd.setCursor(14, 1); lcd.print("ml"); break; case '6': luuluong = 1000; lcd.clear(); lcd.print("AUTO SET"); lcd.setCursor(10, 1); lcd.print(luuluong); lcd.setCursor(14, 1); GVHD: Nguyễn Lê Thái Đồ án học phần GVHD: Nguyễn Lê Thái lcd.print("ml"); break; } } void setup() { lcd.init(); lcd.backlight(); pinMode(relayVale, OUTPUT); pinMode(relayPumper, OUTPUT); pinMode(sensorPin, INPUT); digitalWrite(sensorPin, HIGH); pulseCount flowRate = 0; = 0.0; flowMilliLitres = 0; totalMilliLitres = 0; oldTime = 0; //sensorInterrup chuyển từ High sang Low thực pulseCounter attachInterrupt(sensorInterrupt, pulseCounter , FALLING); vandientu(); } void pulseCounter() { // Increment the pulse counter pulseCount++; } Đồ án học phần void vandientu() { if (sosanh > luuluong) { digitalWrite(relayVale, HIGH); //relay kích mức cao } if (sosanh < luuluong) { digitalWrite(relayVale, LOW); } } void loop() { key = keypad.getKey(); if (key == 'A') { lcd.clear(); lcd.print("AUTO SET"); while (key != 'B')plus { autoset(); } } if (key == 'D') { digitalWrite(relayPumper, HIGH); } if (key == '*') GVHD: Nguyễn Lê Thái Đồ án học phần GVHD: Nguyễn Lê Thái { digitalWrite(relayPumper, LOW); } if (key == 'C') { sosanh=0; } if ((millis() - oldTime) > 1000) // Only process counters once per second { detachInterrupt(sensorInterrupt); flowRate = ((1000.0 / (millis() - oldTime)) * pulseCount) / calibrationFactor; oldTime = millis(); flowMilliLitres = (flowRate / 60) * 1000; totalMilliLitres += flowMilliLitres; sosanh +=flowMilliLitres; vandientu(); unsigned int frac; lcd.clear(); lcd.setCursor(0, 0); lcd.print("Flow:"); lcd.setCursor(7, 0); lcd.print(int(flowRate)); lcd.setCursor(11, 0); lcd.print("L/min"); lcd.setCursor(0, 1); lcd.print("Total:"); lcd.setCursor(8, 1); Đồ án học phần GVHD: Nguyễn Lê Thái lcd.print(totalMilliLitres); lcd.setCursor(14, 1); lcd.println("ml"); pulseCount = 0; attachInterrupt(sensorInterrupt, pulseCounter, FALLING); } } Đồ án học phần GVHD: Nguyễn Lê Thái CHƯƠNG KẾT QUẢ THỰC HIỆN 5.1 Thi công lắp đặt Trong q tình thi cơng cần bố trí linh kiện cho thuận tiện cho người dùng Các vị trí linh kiện cần hợp lý, gọn gàng an toàn tránh xảy tượng chạm dây gây hư hỏng linh kiện 5.2 Đo đạc thử nghiệm Để kiểm tra độ xác cảm biến mơ hình, cần tiến hành thực nghiệm nhiều lần Bảng 5.5 Bảng thực nghiệm Lần đo 10 Thông số cài đặt Thông số thực nghiệm Sai số Đồ án học phần GVHD: Nguyễn Lê Thái CHƯƠNG KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN CHƯƠNG 6.1 Kết luận Trong đề tài em tìm hiểu nghiên cứu, Điều khiển lưu lượng nước máy chiết rót dùng Arduino Atmega 2560 pro Đây ứng dụng nhỏ, đơn giản việc điều khiển lưu lượng nước Ngoài ra, em nắm nguyên lý hoạt động cảm biến lưu lượng YS-F201 *Ưu điểm:  Mơ hình sử dụng cho nhiều chất lỏng khác nước, thực phẩm dạng lỏng,  Đề tài ứng dụng rộng rãi sản xuất đặc biệt công nghiệp sản xuất hàng tiêu dùng  Mơ hình xây dựng theo khối nên dễ dàng sửa chữa *Khuyết điểm:  Mơ hình cồng kềnh  Thời gian thực chương trình đo lường hiển thị cịn chậm  Mơ hình chưa hồn tồn tự động hóa 6.2 Hướng phát triển Về phần mềm, hệ thống nhiều thời gian để thực chương trình Trong tương lai cần tìm cách tối ưu hóa thời gian thực chương trình Về phần cứng, để hệ thống hồn tồn tự động hóa, cần bổ sung thêm cảm biến mức cảm biến mức cho bồn chứa chất lỏng Hệ thống cịn cồng kềnh sử dụng phương pháp dây thay mạch in Trong tương lai cần thay phương pháp dây phương pháp in mạch để tối ưu hóa hệ thống Ngồi ra, hệ thống cần phát triển thêm Đồ án học phần GVHD: Nguyễn Lê Thái cách cài đặt lưu lượng cần chiết rót Thay phương pháp nút nhấn lưu lượng cố định, hệ thống nên linh động việc Đồ án học phần GVHD: Nguyễn Lê Thái TÀI LIỆU THAM KHẢO [1] http://hshop.vn [2] http://nshop.vn [3] www.robotdyn.com [4] Cộng đồng Arduino Việt Nam http://arduino.vn [5] Trung tâm Công nghệ Advance CAD http://advancecad.edu.vn [6] Công ty phân phối van điện từ https://vandientu.com/ [7] Diễn đàn diện tử Việt Nam: http://www.cdtvn.net/forum ... toán thực tế Một thiết bị điều khiển lưu lượng nước hệ thống chiết rót Đề tài “Thiết kế mạch điều khiển lưu lượng nước máy chiết rót, hiển thị lên LCD” kết hợp nhiều linh kiện điện tử sử dụng phần. .. 202 518 1024 NGÀNH: CƠ ĐIỆN TỬ LỚP : 09DHCDT2 Đề tài: Điều khiển lưu lượng nước máy chiết rót Nhiệm vụ (Yêu cầu nội dung số liệu ban đầu): i Tìm hiểu cảm biến đo lưu lượng ii Tìm hiểu vi điều khiển. .. thuật toán Hình 4.24 Lưu đồ thuật tốn Đồ án học phần GVHD: Nguyễn Lê Thái Hình 4.25 Lưu đồ thuật tốn Autoset Đồ án học phần GVHD: Nguyễn Lê Thái Hình 4.26 Lưu đồ thuật toán vandientu 4.2 Phần mềm

Ngày đăng: 04/08/2021, 19:57

Từ khóa liên quan

Mục lục

  • CHƯƠNG 1. GIỚI THIỆU

    • 1.1 Tổng quan

    • 1.2 Nhiệm vụ đồ án (khóa luận)

    • CHƯƠNG 2. LÝ THUYẾT

      • 2.1 Tổng quan về AVR

        • 2.1.1 AVR là gì?

        • 2.1.2 Phân loại.

        • 2.1.3 Kiến trúc vi điều khiển

        • 2.1.4 So sánh PIC và AVR

        • 2.2 Phần mềm lập trình AVR

          • 2.2.1 Giới thiệu mikroC PRO for AVR

          • 2.2.2 Đặc điểm và tính năng của mikroC PRO for AVR.

          • 2.2.3 Khái niệm về Arduino IDE

          • 2.3 Giới thiệu về linh kiện sử dụng

            • 2.3.1 Giới thiệu về bo mạch Arduino Mega 2560 Pro (Embed)

            • 2.3.2 Cảm biến lưu lượng YF-S201:

            • 2.3.3 Động Cơ DC Bơm Nước Water Pump P385 12VDC

            • 2.3.4 Van điện từ

            • 2.3.5 Mạch 2 Relay Opto

            • 2.3.6 .Ma trận bàn phím 4x4:

            • 2.3.7 Màn hình LCD1602

            • 2.3.8 Mạch chuyển đổi giao tiếp I2C:

            • CHƯƠNG 3. THIẾT KẾ VÀ THỰC HIỆN PHẦN CỨNG

              • 3.1 Sơ đồ khối chức năng

              • 3.2 Tìm hiểu và chuẩn bị linh kiện

              • 3.3 Thiết kế phần cứng

                • 3.3.1. Khối nguồn

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

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

Tài liệu liên quan