1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Mô hình máy bơm nước tự động cho gia đình

17 708 6

Đ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

Thông tin cơ bản

Định dạng
Số trang 17
Dung lượng 1,42 MB

Nội dung

Dựa trên yêu cầu thực tế là hệ thống tưới nước cho cây còn sử dụng thủ công nên có nhiều hạn chế và bất tiện, chính vì lý do đó, em xin đưa ra thiết kế về mô hình tưới cây tự động cho những người làm vườn và đây cũng chính là đề tài cho bài tiểu luận của em.

Trang 1

ĐẠI HỌC HUẾ TRƯỜNG ĐẠI HỌC KHOA HỌC

KHOA ĐIỆN TỬ - VIỄN THÔNG

 -BÁO CÁO TIỂU LUẬN

Vi xữ lý và điều khiển trong đo lường

tự động

SINH VIÊN THỰC HIỆN:

Mai Văn Rôn

MSV: 14T1051058

Ngành: Công nghệ Kỹ thuật Điện tử, Truyền thông

Giảng viên: TS Đặng Xuân Vinh

Huế - 2017

Trang 2

LỜI CẢM ƠN

Em xin gửi lời cám ơn chân thành đến với giảng viên TS Đặng Xuân Vinh đã nhiệt tình giúp đỡ em trong quá trình học tập trên lớp và viết bài báo cáo Do có sự hạn chế về thời gian cũng như kiến thức và kinh nghiệm nên khó tránh khỏi những sai sót, những lỗi mắc phải trong quá trình làm báo cáo

Vì vậy, em rất mong được sự đóng góp ý kiến của thầy giáo đối với bài báo cáo này Em xin chân thành cảm ơn

Trang 3

Đề tài: Xây dựng mô hình máy bơm nước tự động

cho gia đình

I MỤC ĐÍCH, YÊU CẦU

1 Mục đích:

Dựa trên yêu cầu thực tế là hệ thống bơm nước lên bình chứa tại gia đình còn sử dụng thủ công nên có nhiều hạn chế và bất tiện, chính vì lý do đó, tôi xin đưa ra thiết kế về mô hình máy bơm nước

tự động cho gia đình và đây cũng chính là đề tài cho bài tiểu luận của tôi

2 Yêu cầu:

Mô hình phải đảm bảo tính thực tế, thiết kế dễ dàng, lắp ráp thuận tiện, độ bền cao, đảm bảo độ an toàn và giá thành rẻ

II NỘI DUNG

1 Tổng quan

Mô hình được thiết kế bao gồm bốn bộ phận chính đó là:

 Bộ cảm biến

 Bộ xữ lý và điều khiển

 Bộ Relay

 Bộ hiển thị

Trang 4

2 Danh sách linh kiện được sử dụng

Boar Arduino UNO R3

Cảm biến siêu âm HC-SR Relay 5V (kích mức cao)

Máy bơm nước 120V LCD Cổng giao tiếp I2C

Trang 5

Ngoài các thiết bị chính ở trên còn có các dây điện để đấu nối, bộ cung cấp nguồn 5V, 120V…

3 Sơ đồ khối

4 Sơ đồ mạch thực tế

Trang 6

5 Chức năng của từng khối

Khối đầu tiên là màn hình LCD 16x2, là đơn vị đầu ra có chức năng

hiển thị mức nước và trạng thái bơm

Khối thứ hai là Arduino, đây được coi là trung tâm xữ lý và điều khiển

của mô hình nó có nhiệm vụ kiểm soát và điều phối tất cả các khối khác

Khối thứ ba là cảm biến siêu âm đo khoảng cách có nhiệm vụ đo mực

nước

Khối khối thứ tư là bộ Relay dùng để bật tắt máy bơm nước thông qua

sự điều khiển của Arduino

Nguyên lý hoạt động của cảm biến siêu âm HC-SR04:

Cảm biến siêu âm phát ra một siêu âm ở tốc độ 40KHz đi qua không khí,

và nếu có một vật hoặc trở ngại trên con đường của nó, nó sẽ quay trở lại

mô đun

Xem xét thời gian di chuyển và tốc độ của âm thanh, bạn có thể tính khoảng cách

Arduino sẽ sử dụng chân echo trên cảm biến siêu âm để đo thời gian đi sóng âm trong vài giây

Trong trường hợp này, cảm biến siêu âm sẽ được đặt trên đầu của bể chứa nước và nó có thể đo mức nước trong bể

Mức nước đo được tính bằng cm sẽ được chuyển sang biểu đồ mực nước

và cũng sẽ được hiển thị trên màn hình LCD 16x2 như vậy, Arduino sẽ tắt máy bơm khi bể đã đầy

6 Phần mềm được sử dụng

Trang 7

 Mô phỏng Proteus 8.5

 Viết code Arduino

7 Chương trình Code

#include <Wire.h>

#include <NewPing.h>

#define TRIGGER_PIN 12 // Kết nối chốt kích hoạt trên bộ cảm biến Sonar với pin kỹ thuật số Arduino 12

#define ECHO_PIN 11 // Kết nối echo pin trên bộ cảm biến với chân

số 11

#define MAX_DISTANCE 24 // Chiều cao của Bể chứa Nước (bằng cm)

#include <LiquidCrystal_I2C.h> //Khai báo thư viện LCD I2C

LiquidCrystal_I2C lcd(0x3F, 16, 2);// khai báo thuộc tính của LCD

int Relay = 10;

int val=0;

NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);

// Tạo xếp biểu tượng

byte Level0[8] = {

Trang 8

0b00000,

0b00000,

0b00000,

0b00000,

0b00000,

0b00000,

0b11111,

0b11111

};

byte Level1[8] = {

0b00000,

0b00000,

0b00000,

0b00000,

0b11111,

0b11111,

0b11111,

0b11111

};

byte Level2[8] = {

Trang 9

0b00000,

0b00000,

0b11111,

0b11111,

0b11111,

0b11111,

0b11111,

0b11111

};

byte Level3[8] = {

0b11111,

0b11111,

0b11111,

0b11111,

0b11111,

0b11111,

0b11111,

0b11111

};

byte NoLevel[8] = {

Trang 10

0b00000,

0b00000,

0b00000,

0b00000,

0b00000,

0b00000,

0b00000,

0b00000

};

void setup()

{

lcd.init();

// khoi tao man hinh LCD

lcd.backlight();//bật đèn LCD

lcd.createChar(0, Level0);

lcd.createChar(1, Level1);

lcd.createChar(2, Level2);

lcd.createChar(3, Level3);

lcd.createChar(4, NoLevel);

lcd.begin(16, 2); // thiết lập cột và hàng của LCD

Trang 11

pinMode(Relay,OUTPUT); //thiết lập tín hiệu ra relay digitalWrite(Relay,LOW);

}

void loop()

{

delay(50);

val=sonar.ping_cm();

lcd.setCursor(0, 1);

lcd.print("HET");

lcd.setCursor(11, 1);

lcd.print("DAY");

if(val<4) //mức nước đạt đỉnh

{

delay(50);

lcd.setCursor(3, 1);

lcd.write(byte(0));

lcd.setCursor(4, 1);

lcd.write(byte(0));

lcd.setCursor(5, 1);

lcd.write(byte(1));

Trang 12

lcd.setCursor(6, 1);

lcd.write(byte(1));

lcd.setCursor(7, 1);

lcd.write(byte(2));

lcd.setCursor(8, 1);

lcd.write(byte(2));

lcd.setCursor(9, 1);

lcd.write(byte(3));

lcd.setCursor(10, 1);

lcd.write(byte(3));

digitalWrite(Relay,LOW); //máy bơm tắt lcd.setCursor(0,0);

lcd.print("TAT MAY BOM "); }

else if(val<=15&&val>4)

{

lcd.setCursor(3, 1);

lcd.write(byte(0));

lcd.setCursor(4, 1);

lcd.write(byte(0));

Trang 13

lcd.setCursor(5, 1);

lcd.write(byte(1));

lcd.setCursor(6, 1);

lcd.write(byte(1));

lcd.setCursor(7, 1);

lcd.write(byte(2));

lcd.setCursor(8, 1);

lcd.write(byte(2));

lcd.setCursor(9, 1);

lcd.write(byte(4));

lcd.setCursor(10, 1);

lcd.write(byte(4));

}

else if(val<=20&&val>15)

{

lcd.setCursor(3, 1);

lcd.write(byte(0));

lcd.setCursor(4, 1);

lcd.write(byte(0));

lcd.setCursor(5, 1);

Trang 14

lcd.write(byte(1));

lcd.setCursor(6, 1);

lcd.write(byte(1));

lcd.setCursor(7, 1);

lcd.write(byte(4));

lcd.setCursor(8, 1);

lcd.write(byte(4));

lcd.setCursor(9, 1);

lcd.write(byte(4));

lcd.setCursor(10, 1);

lcd.write(byte(4));

}

else if(val<=21&&val>20)

{

lcd.setCursor(3, 1);

lcd.write(byte(0));

lcd.setCursor(4, 1);

lcd.write(byte(0));

lcd.setCursor(5, 1);

lcd.write(byte(4));

Trang 15

lcd.setCursor(6, 1);

lcd.write(byte(4));

lcd.setCursor(7, 1);

lcd.write(byte(4));

lcd.setCursor(8, 1);

lcd.write(byte(4));

lcd.setCursor(9, 1);

lcd.write(byte(4));

lcd.setCursor(10, 1);

lcd.write(byte(4));

}

else if(val>21) // hết nước

{

digitalWrite(Relay,HIGH); // bật máy bơm

lcd.setCursor(0,0);

lcd.print(" BAT MAY BOM "); lcd.setCursor(3, 1);

lcd.write(byte(4));

lcd.setCursor(4, 1);

lcd.write(byte(4));

Trang 16

lcd.setCursor(5, 1);

lcd.write(byte(4));

lcd.setCursor(6, 1);

lcd.write(byte(4));

lcd.setCursor(7, 1);

lcd.write(byte(4));

lcd.setCursor(8, 1);

lcd.write(byte(4));

lcd.setCursor(9, 1);

lcd.write(byte(4));

lcd.setCursor(10, 1);

lcd.write(byte(4));

}

}

8 Kết quả

Sau khi chạy mô phỏng trên phần mềm Proteus 8.5, thấy mô hình hoạt động tốt và kết quả lắp ráp mạch thực tế vẫn hoạt động như khi mô phỏng trên phần mềm, chạy ổn định

III KẾT LUẬN VÀ ĐÁNH GIÁ KẾT QUẢ

Với kết quả nhận được là mô hình máy bơm nước tự động cho gia đình rất thiết thực và đáp ứng được nhu cầu thực tế, độ bền khá

Trang 17

cao, thiết kế, lắp đặt đơn giản, nhỏ gọn và đặc biệt chi phí rẻ đối với linh kiện hay modul cần thiết

Ngày đăng: 27/12/2017, 15:02

TỪ KHÓA LIÊN QUAN

w