cảnh báo mực nước sử dụng arduino r3

15 8 0
cảnh báo mực nước sử dụng arduino r3

Đ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

Mục lục CHƯƠNG 1 GIỚI THIỆU 3 1 1 Giới thiệu chung 3 1 2 Mục đích thực hiện đề tài 3 1 3 Nhiệm vụ đề tài 3 CHƯƠNG 2 THIẾT KẾ PHẦN CỨNG 4 2 1 Thiết kế sơ đồ khối 4 2 2 Giới thiệu các linh kiện 4 2 2 1.

MỤC LỤC CHƯƠNG 1: GIỚI THIỆU 1.1 Giới thiệu chung Ngày ta có cách thiết bị điều khiển bị động dựa vào tác động thay đổi bên Nhưng điều chưa đủ, Chúng ta cần có thiết bị tự chuẩn đoán, dự báo để điều khiển thiết bị cách thơng minh 1.2 Mục đích thực đề tài Bằng cách sử dụng sử dụng Arduino Uno R3 linh kiện, gồm điện trở, tụ điện, LCD 16x02, phao mini, máy bơm chìm Ta dễ dàng tạo thiết bị đo mực nước 1.3 Nhiệm vụ đề tài Thiết kế chế tạo mạch điều khiển động bơm hiển thị LCD mực nước đặt CHƯƠNG 2: THIẾT KẾ PHẦN CỨNG 2.1 Thiết kế sơ đồ khối Hình 2.1: Sơ đồ khối mạch Khối cảm biến: có chức cung cấp tín hiệu cho khối xử lý Khối điều khiển: Có chứa Arduino Uno R3 cho hiển thị LCD Khối LCD: hiển thị thông tin từ khối khối điều khiển đưa tới Khối nguồn: có chức biến đổi dòng soay chiều 220v thành dòng chiều cung cấp cho khối hoạt động Nguyên lý hoạt động: Khi nhận Arduino Uno R3 tín hiệu từ cảm biến đưa về, khối vi điều khiển xử lý gửi tín hiệu cho LCD hiển thị 2.2 Giới thiệu linh kiện 2.2.1 Arduino Uno R3 Vì phịng nhà có nhiều cảm biến cấu chấp hành, có cảm biến nhiệt độ LM35 có tín hiệu dạng tương tự(analog), cịn lại chủ yếu có tín hiệu dạng số(digital) nên cần sử dụng module Arduino Uno xử lý tất tín hiệu Cấu trúc chung Hình 2.6 Cấu trúc phần cứng Arduino Uno Arduino Uno bo mạch vi điều khiển dựa chip Atmega328 Nó co 14 chân vào tín hiệu số, có chân sử dụng để điều chế rộng xung Có chân đầu vào tín hiệu tương tự cho phép kết nối với cảm biến bên để thu thập số liệu, sứ dụng dao động thạch anh tần số dao động 16MHz, có cổng kết nối chuẩn USB để nạp chương trình vào bo mạch chân cấp nguồn cho mạch, ICSP header, nút reset Nó chứa tất thứ cần thiết để hỗ trợ vi điều khiển, nguồn cung cấp cho Arduino từ máy tính thơng qua cổng USB từ nguồn chuyên dụng biến đổi từ xoay chiều sang chiều nguồn lấy từ pin Khối nguồn Arduino hỗ trợ thơng qua kết nối USB với nguồn cung cấp điện bên Các nguồn lượng lựa chọn tự động Hệ thống vi điều khiển hoạt động nguồn cung cấp bên từ 6V đến 20V Tuy nhiên, cung cấp với 7V, chân 5V cung cấp 5V hệ thống vi điều khiển khơng ổn định Nếu cấp nhiều 12V, điều chỉnh điện áp nóng gây nguy hiểm cho bo mạch Phạm vi khuyến nghị 7V đến 12V Chân Vin: Điện áp đầu vào Arduino dùng nguồn điện bên (khác với nguồn 5V lấy từ USB nguồn thông qua jack cắm nguồn riêng) Chúng ta cung cấp nguồn thơng qua chân Chân 5V: Cung cấp nguồn vi điều khiển phận khác bo mạch cung cấp nguồn cho thiết bị ngoại vi kết nối tới bo mạch Chân 3,3V: Cung cấp nguồn cho thiết bị cảm biến Chân GND: Chân nối đất Chân Aref: Tham chiếu điện áp đầu vào analog Chân IOREF: Cung cấp điện áp cho vi điều khiển hoạt động Một shield cấu hình đọc điện áp chân IOREF lựa chọn nguồn thích hợp kích hoạt chuyển đổi điện áp để việc mức 5V 3,3V Bộ nhớ Chip Atmega328 có 32KB (với 0,5KB sử dụng cho bootloader) Nó cịn có 2KB SRAM 1KB EEPROM Thông số kỹ thuật Arduino Uno có 14 chân digital (chân – 13) chân analog (chân A0 – A5) Các chân digital cấu hình để làm chân nhần liệu vào từ thiết bị ngoại vihoặc làm chân để truyền tín hiêu thiết bị ngoại vi Bằng cách sử dụng hàm pin Mode(), digitalWrite() digitalRead() Mỗi chân cung cấp nhận dịng điện tối đa 40mA có điện trở kéo nội (mặc định không nối) 20 - 50 kOhms Ngồi có số chân có chức đặc biệt: Chân (Rx): Chân dùng để nhận liệu nối tiếp Chân (Tx): Chân dùng để truyền liệu nối tiếp Chân 3: Chân ngắt Chân 3, 5, 6, 9, 10 11: Chân vào/ra số để điều chế độ rộng xung (chân 13 nối với LED đơn, sáng tắt tương ứng với mức logic chân này) Chân 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK): Chuẩn giao tiếp SPI Các chân analog có độ phân giải 10 bit (tương ứng với 1024 mức giá trị khác nhau) ứng với mức từ – 5V Ngoài số chân có chức đặc biệt: Chân A4 (SDA) A5 (SCL): Hỗ trợ truyền thông TWI 2.2.2 LCD 16x02 Trong đồ án, khối hiển thị sử dụng LCD 16x02 LCD viết tắt từ Liquid Crystal Display nhiều thiết bị điện tử sử dụng Là loại hiển thị cấu tạo tế bào ( điểm ảnh) chứa tinh thể lỏng có khả thay đổi tính phân cực ánh sáng thay đổi cường độ ánh sáng truyền qua kết hợp với kính lọc phân cực Ưu điểm phẳng, cho hình ảnh sáng, chân thật tiết kiệm lượng Hình 2.2.3: LCD 16x02 Chức Số thứ tự chân Tên Ground Nguồn cho LCD Tương phản Vss(GND) Trạng Thái Logic - Vdd(Vcc) - 5V Vee RS RW E 10 11 12 13 14 D0 D1 D2 D3 D4 D5 D6 D7 1 Từ xuống 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0-Vdd D0-D7: Lệnh D0-D7:Dữ liệu Ghi (Từ IC vào LCD) Đọc (Từ LCD vào IC) Vô hiệu hóa LCD LCD hoạt động Bắt đầu ghi/đọc Bit LSB Bit Bit Bit Bit Bit Bit Bit MSB Điều khiển LCD Dữ liệu/lệnh Bảng 2.2.3: Sơ đồ chân LCD Mô Tả 0V 2.2.3 Cảm biến Hình 2.2.4 Cảm biến mực nước - Sử dụng cảm biến mực nước đơn giản Đầu tiếp điểm khô, hoạt động công tắc, cơng tắc lưỡi gà Ẩn hồn tồn, nhấn chìm Máy dị mực nước chất lỏng Số mơ hình : ZP4510 Dịng tiếp xúc tối đa : 10W Điện áp chuyển đổi tối đa : 220V DC/AC Dòng điện chuyển đổi tối đa : 0.5A Điện áp phóng điện tối đa : 300V DC/AC Dịng điện tối đa : 1A Điện trở tiếp xúc tối đa : 100m ohm Nhiệt độ : -10 / +85 Celsuis Chất liệu bóng : P.P Chất liệu thân phao : P.P Kích thước đinh ốc (xấp xỉ) : 9.5mm / 0.374" Kích thước thân cơng tắc : 23.3 x 57.7mm / 0.9" x 2.27"(Tối đa D*H) Độ dài cáp : 36cm / 14.2" Màu : Trắng Khối lượng tịnh : 70g Kích thước lỗ lắp: 10mm 2.2.4 Máy bơm mini Hình 2.2.5 Máy bơm mini • Dịng điện đầu vào: DC 3V-5V • Lưu lượng dịng chảy: 1.2-1.6 L/min • Nhiệt độ hoạt động: 80 độ C • Dòng điện hoạt động: 0.1-0.2A • Khoảng cách hút: 0.8 mét (Tối đa) • Đường kính bên ngồi đầu nước: 7.5mm • Đường kính bên đầu nước: 5.0 mm • Đường kính đầu nước vào : 5.0 mm • Độ dài dây dẫn: 200 mm • Chiều dài ống cao su: mét • Kích thước: 45 x 30 x 25 mm • Nặng: 30g CHƯƠNG 3: THIẾT KẾ MẠCH 3.1 Sơ đồ nguyen lý Hình 3.1: Sơ đồ nguyen lý 3.2 Nguyên Lý hoạt động - Khi mạch dược cấp nguồn cảm biến mực nước bắt đàu hoạt động heo chế độ ứng với cảm biến đầy (CB1), trung bình (CB2), cạn nước (CB3) Khi bề đầy nước CB1 tác động LCD báo “NƯỚC ĐẦY” Khi mực nước bắt đầu giảm xuống phao thứ CB2 tác báo gần cạn bình LCD cạn đến phao số CB3 tác động xuất tín hiệu bơm nước vào bình kh nước đầy đến CB1 LCD báo nước đầy máy bơm ngắt - Chu trình lập lạp lại tuần hồn 3.3 Thi cơng mạch Hình 3.3: Mạch in CHƯƠNG 4: KẾT LUẬN 4.1 Kết luận Sau thời gian tìm hiểu, nghiên cứu, tham khảo nhiều tài liệu hướng dẫn thầy cô, em thực xong đề tài: ‘‘Thiết kế chế tạo mạch điều khiển động bơm hiển thị LCD mực nước đặt” Việc hoàn thành đề tài với nội dung mục tiêu đề ban đầu đem lại cho em thực lượng kiến thức bổ ích, thiết thực có khả ứng dụng thực tế Sau thời gian thực đồ án, em hoàn thành công việc sau: Xây dựng, thiết kế thi công mạch Tìm hiểu vầ thiết kế mạch 4.2 Hướng phát triển đề tài Đề tài ‘‘Thiết kế chế tạo mạch điều khiển động bơm hiển thị LCD mực nước đặt” thực mơ hình thí nghiệm Để đưa đề tài vào áp dụng thực tiễn đời sống sản xuất cần phải nâng cấp mở rộng hệ thống Ngoài ra, dựa vào ứng dụng tầm khả hoạt động, phát triển thành đề tài khác hệ thống ổn định lò nhiệt, hệ thống ổn định áp suất…… 10 Tài liệu tham khảo [1] Giáo trình vi điều khiển: 123doc.org //document/1250977-giao-trinh-vi-dieu-khienpic-16f877a.htm [2] Vi điều khiển PIC16f877A: tailieu.tv/tai-lieu/vi-dieu-khien-pic16f877a-17967/ [3] http://mualinhkien.vn/san-pham/34/cam-bien-sieu-am-srf04.html [4] Hocavr.com 11 PHỤ LỤC #include const int rs = 0, rw=1, en = 2, d4 = 3, d5 = 4, d6 = 5, d7 = 6; LiquidCrystal lcd(rs,rw, en, d4, d5, d6, d7); char chuoi[20]; // put your setup code here, to run once: #define on HIGH #define of LOW const const const const int int int int motor = A2; muc_day = A3; muc_giua = A4; muc_can = A5; int nuoc_can = 0; int nuoc_con = 0; int nuoc_day = 0; int trang_thai = 0; int hanh_dong=0; void dung_motor(); void setup() { lcd.begin(16, 2); pinMode(motor, OUTPUT); pinMode(muc_day, INPUT);// treo dung len => neu day cam bien bi dut cung hieu la nguoc day tranh tinh trang nc chay tran pinMode(muc_giua, INPUT);// treo nguoc xuong pinMode(muc_can, INPUT); // treo nguoc xuong lcd.setCursor(0, 0); lcd.print(" DO AN MON HOC "); // digitalWrite(motor, on); // delay(5000); // digitalWrite(coi_bao_dong, LOW); } 12 void loop() { nuoc_can = digitalRead(muc_can); nuoc_con = digitalRead(muc_giua); nuoc_day = digitalRead(muc_day); // cam bien muc can (ket hop dieu kien an toan cua cam bien bao day tranh nuoc bi chay tran cam bien tran bi dut day) if(nuoc_can==0 & nuoc_day==1) { hanh_dong=1;// can bom nuoc digitalWrite(motor, on); } // cam bien muc day if(nuoc_day==0) { hanh_dong=0;// can tat bom digitalWrite(motor, of); lcd.setCursor(0, 1); lcd.print(" NUOC DAY! "); } // cam bien muc giua if(nuoc_con==0) { if(hanh_dong==0)// bom dang dung=> phat hien het muc giua ma trc bom k hoat dong=> bao nc gan het { if(nuoc_day!=0) { lcd.setCursor(0, 1); lcd.print(" GAN CAN BINH "); } } else { lcd.setCursor(0, 1); lcd.print(" NUOC CAN! "); } } else { if(hanh_dong==1)// bom dang chay=> phat hien da qua muc giua bom dang hoat dong=> bao nc gan day 13 { lcd.setCursor(0, 1); lcd.print(" GAN DAY BINH "); } } 14 ... Cảm biến Hình 2.2.4 Cảm biến mực nước - Sử dụng cảm biến mực nước đơn giản Đầu tiếp điểm khô, hoạt động công tắc, công tắc lưỡi gà Ẩn hồn tồn, nhấn chìm Máy dị mực nước chất lỏng Số mơ hình :... cấp nguồn cảm biến mực nước bắt đàu hoạt động heo chế độ ứng với cảm biến đầy (CB1), trung bình (CB2), cạn nước (CB3) Khi bề đầy nước CB1 tác động LCD báo “NƯỚC ĐẦY” Khi mực nước bắt đầu giảm... chủ yếu có tín hiệu dạng số(digital) nên cần sử dụng module Arduino Uno xử lý tất tín hiệu Cấu trúc chung Hình 2.6 Cấu trúc phần cứng Arduino Uno Arduino Uno bo mạch vi điều khiển dựa chip Atmega328

Ngày đăng: 27/12/2022, 09:19

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

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

Tài liệu liên quan