TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CƠ KHÍ BÁO CÁO ĐỒ ÁN ĐO LƯỜNG VÀ ĐIỀU KHIỂN TÊN CHỦ ĐỀ NGHIÊN CỨU ĐO LƯỜNG VÀ ĐIỀU KHIỂN LƯU LƯỢNG BẰNG FUZZY LOGIC GVHD Lê Ngọc Duy Thành viên nhóm Hà Nội–Năm 2.
TRƯỜNG ĐẠI HỌC CƠNG NGHIỆP HÀ NỘI KHOA: CƠ KHÍ - BÁO CÁO ĐỒ ÁN ĐO LƯỜNG VÀ ĐIỀU KHIỂN TÊN CHỦ ĐỀ NGHIÊN CỨU ĐO LƯỜNG VÀ ĐIỀU KHIỂN LƯU LƯỢNG BẰNG FUZZY LOGIC GVHD: Lê Ngọc Duy Thành viên nhóm: Hà Nội–Năm 2022 MỤC LỤC CHƯƠNG 1: TỔNG QUAN ĐỀ TÀI 1.1 Giới thiệu chung .4 1.2 Phạm vi giới hạn chức mơ hình đề tài .5 1.3 Phương pháp nghiên cứu 1.4 Danh mục tài liệu tham khảo 1.5 Danh mục dự khiến thiết bị 1.6 Bảng phân chia công việc thành viên .7 CHƯƠNG 2: XÂY DỰNG MƠ HÌNH HỆ THỐNG 2.1 Sơ đồ khối chức .8 2.2 Phân tích lựa chọn cảm biến 2.3 Phân tích lựa chọn điều khiển .8 2.4 Thiết kế mạch đo xử lý tín hiệu .10 2.5 Phân tích điều khiển .10 2.5.1 Bộ điều khiển mờ ? 10 2.5.2 Cấu trúc điều khiển mờ .10 2.5.3 Nguyên lý điều khiển mờ .11 2.5.4 Các bước thiết kế điều khiển mờ .12 2.5.5 Thiết kế điều khiển lưu lượng nước (BĐK mờ Sugeno) 12 CHƯƠNG 3: CHẾ TẠO VÀ THỬ NGHIỆM HỆ THỐNG 14 3.1 Chế tạo phận khí 14 3.2 Chế tạo phận điện tử 15 3.2.1 Cảm biến lưu lượng YF-S201 15 3.2.2 Arduino 16 3.2.3 Module L298N 17 3.2.4 LCD16x2 .18 3.2.5 Bơm mini 12v 19 3.2.6 nguồn .21 3.3 Xây dựng chương trình điều khiển .22 3.4 Thử nghiệm đánh giá hệ thống 26 CHƯƠNG 4: Kết luận 27 CHƯƠNG 1: TỔNG QUAN VỀ HỆ THỐNG 1.1 Giới thiệu chung a, Tổng quan Tự động hóa q trình cơng nghệ thực phát triển ứng dụng mạnh mẽ công nghiệp, lựa chọn tối ưu lĩnh vực nhằm tạo sản phẩm chất lượng cao, tiết kiệm chi phí sản xuất tạo khả cạnh tranh mạnh mẽ thị trường Khoa học kỹ thuật, cách mạng công nghiệp đang bước phát triển - người kỹ thuật phải thay đổi tầm nhìn để theo kịp công nghệ đại Trọng tâm khoa học kỹ thuật văn minh công nghiệp đặt vào lĩnh vực cơng nghệ thơng tin, công nghệ vật liệu, nguồn lượng, công nghệ sinh học công nghệ kỹ thuật điều khiển tự động Nhằm ứng dụng kiến thức trang bị q trình học tập vào thực tế nhóm em lựa chọn đề tài “ Xây dựng hệ thống đo lường điều khiển lưu lượng chất lỏng ống dẫn” Nội dung hệ thống đo lưu lượng chất lỏng chảy ống dẫn từ cảm biến lưu lượng đưa tín hiệu để điều khiển hệ thống bơm ổn định áp dụng điều khiển mờ (fuzzy logic) Hệ thống có khả ứng dụng rộng rãi hệ thống đường ống dẫn dầu, đường ống cấp nước sinh hoạt Hình Hệ thống đo điều khiển lưu lượng nước nhà máy sản xuất nước b, Giới thiệu điều khiển mờ (fuzzy logic) Khái niệm logic mờ giáo sư L.A Zadeh đưa lần năm 1965, trường Đại học Berkeley, bang California - Mỹ Từ lý thuyết mờ phát triển ứng dụng rộng rãi Năm 1970 trường Mary Queen, London – Anh, Ebrahim Mamdani dùng logic mờ để điều khiển máy nước mà ông điều khiển kỹ thuật cổ điển Tại Đức Hann Zimmermann dùng logic mờ cho hệ định Tại Nhật logic mờ ứng dụng vào nhà máy xử lý nước Fuji Electronic vào 1983, hệ thống xe điện ngầm Hitachi vào 1987 Lý thuyết mờ đời Mỹ, ứng dụng Anh phát triển mạnh mẽ Nhật Trong lĩnh vực Tự động hoá logic mờ ngày ứng dụng rộng rãi Nó thực hữu dụng với đối tượng phức tạp mà ta chưa biết rõ hàm truyền, logic mờ giải vấn đề mà điều khiển kinh điển không làm 1.2 Yêu cầu Hệ thống phù hợp với nhu cầu người tiêu dùng, doanh nghiệp Hệ thống đảm bảo độ xác Giá thành hệ thống phù hợp kết cấu nhỏ gọn Hoạt động ổn định điều kiện môi trường 1.3 Phương pháp, phạm vi giới hạn nghiên cứu a) Phương pháp Phương pháp lý thuyết + Nghiên cứu nguyên lý hoạt động cảm biến lưu lượng YF-S201 thông qua tài liệu internet + Tìm hiểu kĩ mạch điều khiển Arduino mô Proteus cách kết nối với máy tính + Đưa ý tưởng thông số giá trị hiển thị LCD + Tìm cơng thức tốn học để tính dung tích nước, lưu lượng máy bơm thông qua giá trị khoảng cách đo từ cảm biến + Đề xuất nghiên cứu linh kiện có mạch kinh kiện bảo vệ + Mô mạch ứng dụng Proteus Phương pháp thực nghiệm: + Dựa tham khảo vào mơ hình tham khảo Internet để cải tiến thiết kế mục đích sử dụng b) Phạm vi đề tài giới hạn nghiên cứu Được sử dụng rộng rãi công nghiệp hộ gia đình để phục vụ an tồn cho bình chứa, bể chứa hộ gia đình có cố tràn gây nguy hiểm Mơ hình đo lường điều khiển lưu lượng chất lỏng áp dụng điều khiển mờ hiển thị tín hiệu lưu lượng dòng chảy chất lỏng (chất lỏng thực tế nước) lên máy tính để điều khiển hình LCD để quan sát, điều khiển lưu lượng chất lỏng ống dẫn từ bể chứa thông qua máy bơm 1.4 Ý nghĩa thực tiễn Ngày nay, với phát triển nhanh chóng khoa học cơng nghệ, nhu cầu người đặt ngày cao Để đánh giá chất lượng sản phẩm khơng thể thiếu phương pháp sản xuất đo lường Vì dụng cụ đo lường công cụ lao động tạo chất lượng cao tạo sản phẩm tốt Một dụng cụ đo thiết bị đo điều khiển lưu lượng Đo điều khiển lưu lượng có tầm quan trọng đặc biệt công nghiệp cần khống chế lượng chất lỏng tham gia vào quán trình lị phản ứng hóa học, nhà máy sản xuất xi măng, động đốt,… Vận dụng cách tổng hợp kiến thức học để tiến hành thiết kế, thi cơng mạch để từ đào sâu, mở rộng hoàn thiện vốn hiểu biết thân Kết thiết kế thi công mạch giúp cho việc đơn giản hóa nhu cầu tự động hóa thiết bị thơng minh Ngồi ra, đề tài cịn giúp cho người học điện, điện tử, điện tử, tiếp thu thêm kiến thức lập trình Arduino để ứng dụng vào nhu cầu sinh hoạt đời sống làm việc CHƯƠNG 2: XÂY DỰNG MƠ HÌNH HỆ THỐNG 2.1 Thiết kế sơ đồ khối hệ thống hình 2.1: Sơ đồ khối chức Chú thích : : Nguồn điện : Tín hiệu Ý nghĩa khối hệ thống : - Khối nguồn : cung cấp điện cho thiết bị có hệ thống : vi điều khiển , máy bơm , cảm biến ,… - Khối cảm biến lưu lượng: Đo gửi tín hiệu thu từ thực tế gửi tới khối xử lý - Khối điều khiển động : Chấp hành tín hiệu từ khối xử lý - Khối xử lý trung tâm : Nhận tín hiệu từ cảm biến từ xuất mức tín hiệu điều khiển cho phần tử chấp hành - Khối nút nhấn led báo hiệu : Nhận thực tín hiệu từ khối xử lý trung tâm 2.2 Phân tích lựa chọn cảm biến Trong lý thuyết, cảm biến lưu lượng lại chia làm loại dựa theo nguyên lý đo chúng Chúng gồm ba loại: Cảm biến lưu lượng thể tích Cảm biến lưu lượng khối lượng Cảm biến lưu lượng vận tốc Cảm biến lưu lượng thể tích Cảm biến lưu lượng thể tích số cảm biến lưu lượng thực phép đo trực tiếp thể tích chất lỏng qua thiết bị Tất loại cảm biến lưu lượng khác không trực tiếp đo tốc độ dịng chảy mà thay vào đó, đo thông số khác (chẳng hạn áp suất) sau sử dụng thơng tin để lấy suy tốc độ dòng chảy từ phép đo thực Với cảm biến lưu lượng thể tích, thể tích chất lỏng biết vào di chuyển qua cảm biến cách sử dụng phận quay để truyền cách hiệu chất lỏng tích biết theo trước cho phép nhiều chất lỏng vào thiết bị Khi phận quay hoàn thành vòng quay, lượng chất lỏng biết chuyển qua cảm biến Đếm số vòng quay xảy đơn vị thời gian sau thiết lập thể tích chất lỏng qua đơn vị thời gian Vì dịng chất lỏng chuyển động trực tiếp thành phần quay nên vận tốc quay tỷ lệ thuận với tốc độ dịng chảy Hình 2.1 Cảm biến lưu lượng cánh khuấy Chịu áp lực đến: 1.75Mpa Lưu lượng đo: – 30 (L/min) Nhiệt độ hoạt động: < 120 độ C Độ ẩm: 35% – 90% RH Kích thước: 61 x 36 x 34mm Lưu ý quan trọng : Không để nghiêng độ, lắp thẳng đứng nhiệt độ nước chảy qua 2A cho motor) Điện áp tín hiệu điều khiển: +5 V ~ +7 V Dịng tín hiệu điều khiển: ~ 36mA (Arduino chịu đến 40mA) Cơng suất hao phí: 20W (khi nhiệt độ T = 75 ℃) Chức chân mạch 12V power, 5V power Đây chân cấp nguồn trực tiếp đến động Có thể cấp nguồn 9-12V 12V Bên cạnh có jumper 5V, bạn để hình có nguồn 5V cổng 5V power, ngược lại khơng Bạn để hình ta cần cấp nguồn 12V vơ 12V power có 5V 5V power, từ cấp cho Arduino Power GND chân GND nguồn cấp cho Động cơ, phải đồng GND với arduino Gồm có chân Input IN1, IN2, IN3, IN4 nhận tín hiệu high low Output A,B: nguồn cho hai động A, B Chân ENA, ENB nhận tín hiệu điều khiển chiều rộng xung dương Chu kì xung điều khiển động 2ms 3.2.4 Module hiển thị I2C LCD16x2 LCD có q nhiều chân gây khó khăn q trình kết nối chiếm dụng nhiều chân vi điều khiển nên việc sử dụng Module chuyển đổi I2C LCD giải vấn đề hình 3.5: Module I2C LCD 16×2 Bảng 3.2 Giao tiếp I2C LCD 16x2 Thay sử dụng tối thiểu chân vi điều khiển để kết nối với LCD (RS, EN, D7, D6, D5 D4) với module chuyển đổi ta cần sử dụng chân (SCL, SDA) để kết nối Module chuyển đổi I2C hỗ trợ loại LCD sử dụng driver HD44780(LCD 1602, LCD 2004, … ), kết nối với vi điều khiển thông qua giao tiếp I2C, tương thích với hầu hết vi điều khiển 3.2.5 Bơm mini 12v Máy bơm mini 12V loại máy bơm ưa dùng Việt Nam tính nhỏ gọn, hiệu cao hình 3.6 Bơm Thông số kỹ thuật Động Cơ Bơm Nước Mini 3.7V - 12V: Điện áp: 9V ~ 12V DC Công xuất: 12 W Áp lực: < 0.1 Mpa Lưu lượng: 2.0 L/phút Ống nước vào ra: 10 mm Tự hút nước cao mét Đẩy cao mét Đầu bơm công nghệ chất lượng Motor lõi đồng tuổi thọ cao Motor 385 12V chất lượng Chất liệu: Đồng – Gang – Nhựa ABS Nhiệt độ nước bơm: 10 – 60 độ C Kích thước: 90 x 40 x 35 mm Trọng lượng: 110 gam Sử dụng nguồn điện ắc quy 12V 1.5Ah trở lên Sử dụng biến adapter 12V 2A trở lên Ưu điểm : - Nhỏ gọn , hoạt động êm khơng gây tiếng ồn thích hợp dùng cho dự án nhỏ - Chi phí mua rẻ thích hợp cho sinh viên 3.2.6 Khối nguồn Khối nguồn sử dụng loại nguồn 12v/2a thường, sử rộng rãi, giá thành rẻ hình 3.7 Nguồn 12V/2A Thơng số bản: Điện áp đầu vào: AC100-240V 50/60HZ Điện áp ra: 12VDC Dòng điện ra: Max 2A Chiều dài đường dây đầu ra: tổng chiều dài 1m Đóng gói: Hộp trắng Ổ cắm DC: 5.5 * 2.5mm (tương thích 5.5 * 2.1mm) 3.2.7 Lắp ráp mạch điện tử Hình 3.7 lắp ráp bảng mạch Mạch nối cảm biến lưu lượng YF-S201 Arduino: Nguồn (đỏ) nối với chân 5v Arduino GNA (đen) nối với chân GND Arduino Tín hiệu (vàng) nối với chân Arduino Mạch nối Module L298N Arduino: Chân ENA nối với chân Arduino Chân IN1 nối với chân Arduino Chân IN2 nối với chân Arduino Nối LCD với Arduino: Chân GND LCD nối với chân GND Arduino Chân VCC LCD nối với chân 5V Arduino Chân SDA LCD nối với chân A4 Arduino Chân SCL LCD nối với chân A5 Arduino 3.3 Xây dựng chương trình điều khiển Lưu đồ thuật tốn 3.4 Thử nghiệm đánh giá hệ thống CHƯƠNG 4: Kết luận Sản phẩm chúng em làm thực phát triển mức trung bình khơng có đủ kiến thức chi phí để mua linh kiện đắt khác Nếu sử dụng môi trường Arduino cho việc đọc tín hiệu cảm biến xuất Serial việc lập trình đơn giản, sử dụng môi trường khác, việc hiểu lập trình câu lệnh cách xác vấn đề khó chúng em Qua việc thực đề tài mơn học giúp chúng em có thêm nhiều kinh nghiệm làm việc nhóm nâng cao kiến thức việc sử dụng phần mềm quan trọng khí chuyên ngành Proteus, Arduino,… Mong đề tài chúng em nghiên cứu có nhiều áp dụng thực tế đạt yêu cầu mà thầy môn học đặt Trong trình thực em có gặp phải vấn đề chưa xử lý thỏa đáng nên em mong nhận nhận xét đánh giá thầy để em rút kinh nghiệm sửa chữa Cuối cùng, em xin gửi lời cảm ơn chân thành đến thầy Lê Ngọc Duy nhờ dẫn dắt bảo thầy mà em có điều kiện thực tập lớn hồn thiện thời gian sớm nhất! TÀI LIỆU THAM KHẢO: [1] Giáo trình sở hệ thống tự động Đại học Công nghiệp Hà Nội [2] Giáo trình lý thuyết điều khiển tự động Đại học Bách khoa TP.HCM [3] Hệ thống điều khiển thông minh, Huỳnh Thái Hoàng, NXB ĐHQGTPHCM Phụ lục //=====================================INCLUDE THU_VIEN============================================ #include// Thư viện lcdI2C #include LiquidCrystal_I2C lcd(0x3f, 16,2); //====================================KHAI BÁO BIẾN========================================== double m_cham; double m_vua; double m_nhanh; double u_cham; double u_vua; double u_nhanh; int pwm_value; //=====================================KHAI BÁO CHÂN======================================== int cam_bien = 2; int dem = 0; double luu_luong; int thoi_gian_1 = 0; int thoi_gian_2 = 0; int in1 = 3; int in2 = 4; int dem_xung(); void setup(){ pinMode(in1, OUTPUT); pinMode(in2, OUTPUT); pinMode(en_a, OUTPUT); millis(); Serial.begin(9600); pinMode(cam_bien, INPUT_PULLUP); lcd.init(); lcd.backlight(); attachInterrupt(0, dem_xung, FALLING);// câu lệnh ngắt u_cham = 150.00; u_vua = 220.00; u_nhanh = 254.00; } // Hàm đếm xung int dem_xung(){ dem++; //Serial.println(dem); } void loop(){ thoi_gian_1 = millis(); if(thoi_gian_1 - thoi_gian_2 >=1000){ luu_luong = dem*2.25;; lcd.setCursor(0,0); lcd.print("Luu luong nuoc:"); lcd.setCursor(0,1); lcd.print(luu_luong); lcd.print(" ml/p"); dem = 0; thoi_gian_2 = thoi_gian_1; } if(luu_luong == 0.00){ m_cham = 0; m_vua = 0.00; m_nhanh = 0.00; } if(luu_luong