1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đồ án: Mạch đo mực nước dùng PIC

20 489 7

Đ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

Tiêu đề Mạch Đo Mực Nước Dùng Pic
Thể loại Đồ án
Định dạng
Số trang 20
Dung lượng 739,88 KB

Nội dung

Ngày này ta có cách thiết bị điều khiển bị động dựa vào tác động hoặc thay đổi bên ngoài. Nhưng điều đó chưa đủ, Chúng ta cần có những thiết bị tự chuẩn đoán, dự báo để điều khiển thiết bị một cách thông minh hơn.

Trang 1

ĐỒ ÁN 1

MẠCH ĐO MỰC NƯỚC DÙNG PIC

Trang 2

MỤC LỤC

CHƯƠNG 1:GIỚI THIỆU 7

1.1 Giới thiệu chung 7

1.2 Mục đích thực hiện đề tài 7

1.3 Nhiệm vụ đề tài 7

CHƯƠNG 2: THIẾT KẾ PHẦN CỨNG 8

2.1 Thiết kế sơ đồ khối 8

2.2 GIỚI THIỆU CÁC LINH KIỆN 8

2.2.1 VI ĐIỀU KHIỂN PIC 8

2.2.2 Cảm biến siêu âm SRF04 12

2.2.2.1 Thông số kĩ thuật SRF04 12

2.2.2.2 Sơ đồ chân 12

2.2.2.3 Giao tiếp với vi điều khiển 12

2.2.2.4 Cách tính khoảng cách từ thời gian đo được 13

2.2.3 LCD 16x02 13

CHƯƠNG 3: PHẦN MỀM 15

3.1 Lưu đồ hoạt động 15

3.2 Mô phỏng 16

3.3 Thi công mạch 16

CHƯƠNG 4: KẾT LUẬN 17

4.1 Kết luận 17

4.2 HƯỚNG PHÁT TRIỂN ĐỀ TÀI 17

PHỤ LỤC 19

2

Trang 3

DANH MỤC CÁC HÌNH VẼ

Hình 2.1: Sơ đồ khối của mạch 8

Hình 2.2.1: Sơ đồ chân và hình dạng của PIC 16F877A 9

Hình 2.2.2-1: SRF04 12

Hình 2.2.2-2: Khoảng cách từ SRF04 tới vật 13

Hình 2.2.3: LCD 16x02 14

Hình 3.1: Lưu đồ hoạt động 15

Hình 3.2: Mạch mô phỏng proteus 16

Hình 3.3: Mạch in 16

Trang 4

DANH MỤC BẢNG BIỂU

Bảng 2.2.1: Chức năng các chân 9 Bảng 2.2.2-1:Sơ đồ chân SRF04 12 Bảng 2.2.3: Sơ đồ chân trong LCD 14

4

Trang 5

CHƯƠNG 1: GIỚI THIỆU

1.1 Giới thiệu chung

Ngày này ta có cách thiết bị điều khiển bị động dựa vào tác động hoặc thay đổi bên ngoài Nhưng điều đó chưa đủ, Chúng ta cần có những thiết bị tự chuẩn đoán, dự báo để điều khiển thiết bị một cách thông minh hơn

1.2 Mục đích thực hiện đề tài

Bằng cách sử dụng sử dụng PIC16F877A và các linh kiện, gồm điện trở, tụ điện, LCD 16x02 và cảm biến siêu âm SRF-04 Ta có thể dễ dàng tạo ra thiết bị có thể đo mực nước

1.3 Nhiệm vụ đề tài

Thiết kế mạch đo mực nước Sử dụng PIC16F877A và SRF-04 để đo khoảng cách và xuất dữ liệu ra LCD Xây dựng phần cứng hệ thống

Trang 6

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 của mạch

Khối SRF-04: có chức năng đo khoảng cách từ mạch tới vật cản và đưa giá trị

về khối vi điều khiển

Khối điều khiển: Có chứa vi điều khiển PIC16F877A Nhận tín hiệu từ khối

cảm biến đưa về, cho hiển thị trên 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 năng biến đổi dòng soay chiều 220v thành dòng 1 chiều

cung cấp cho các khối hoạt động

Nguyên lý hoạt động: Khi PÍC6F877A nhận được tín hiệu từ SRF-04 đưa về,

khối vi điều khiển xử lý và tính toán ra khoảng cách từ SRF-04 tới vật thể và gửi tín hiệu cho LCD hiển thị

2.2 Giới thiệu các linh kiện

2.2.1 Vi điều khiển PIC

PIC16F877A có 40/44 chân với sự phân chia cấu trúc như sau :

 Có 5 port xuất/nhập

 Có 8 kênh chuyển đổi A/D 10-bit

 Có 2 bộ PWM

 Có 3 bộ định thời: Timer0, timer1 và timer2

 Có giao tiếp truyền nối tiếp: chuẩn RS 232, I2C…

6

Trang 7

 Có giao tiếp LCD.

Hình 2.2.1: Sơ đồ chân và hình dạng của PIC 16F877A.

Bảng 2.2.1: chức năng các chân

Trang 8

Chân Tên Chức năng

- : Hoạt động Reset ở mức thấp

- VPP : ngõ vào áp lập trình

2 RA0/AN0 - RA0 : xuất/nhập số - AN0 : ngõ vào tương tự

3 RA1/AN1 - RA1 : xuất/nhập số - AN1 : ngõ vào tương tự

4 RA2/AN2/VREF-/CVREF

- RA2 : xuất/nhập số

- AN2 : ngõ vào tương tự

- VREF -: ngõvào điện áp chuẩn (thấp) của bộ A/D

5 RA3/AN3/VREF+

- RA3 : xuất/nhập số

- AN3 : ngõ vào tương tự

- VREF+ : ngõ vào điện áp chuẩn (cao) của bộ A/D

6 RA4/TOCKI/C1OUT - RA4 : xuất/nhập số - TOCKI : ngõ vào xung clock bên ngoài cho timer0

- C1 OUT : Ngõ ra bộ so sánh 1

7 RA5/AN4/ /C2OUT - RA5 : xuất/nhập số - AN4 : ngõ vào tương tự 4

- SS : ngõ vào chọn lựa SPI phụ

- C2 OUT : ngõ ra bộ so sánh 2

8 RE0/ /AN5 - RE0 : xuất nhập số - RD : điều khiển việc đọc ở port nhánh song song

- AN5 : ngõ vào tương tự

9 RE1/ /AN6 - RE1 : xuất/nhập số - WR : điều khiển việc ghi ở port nhánh song song

- AN6 : ngõ vào tương tự

10 RE2/ /AN7 - RE2 : xuất/nhập số - CS : Chip lựa chọn sự điều khiển ở port nhánh song

song

- AN7 : ngõ vào tương tự

13 OSC1/CLKI Ngõ vào dao động thạch anh hoặc xung clock bênngoài.

- OSC1 : ngõ vào dao động thạch anh hoặc xung

clock bên ngoài Ngõ vào Schmit trigger khi được cấu tạo ở chế độ RC ; một cách khác của CMOS

- CLKI : ngõ vào nguồn xung bên ngoài Luôn được

kết hợp với chức năng OSC1

14 OSC2/CLKO - OSC2 : Ngõ ra dao động thạch anh Kết nối đếnNgõ vào dao động thạch anh hoặc xung clock

thạch anh hoặc bộ cộng hưởng

- CLKO : ở chế độ RC, ngõ ra của OSC2, bằng tần số

của OSC1 và chỉ ra tốc độ của chu kỳ lệnh

15 RC0/T1 OCO/T1CKI - RC0 : xuất/nhập số - T1OCO : ngõ vào bộ dao động Timer 1

- T1CKI : ngõ vào xung clock bên ngoài Timer 1

16 RC1/T1OSI/CCP2 - RC1 : xuất/nhập số - T1OSI : ngõ vào bộ dao động Timer 1

- CCP2 : ngõ vào Capture 2, ngõ ra compare 2, ngõ

ra PWM2

17 RC2/CCP1 - RC2 : xuất/nhập số - CCP1 : ngõ vào Capture 1, ngõ ra compare 1, ngõ

ra PWM1

Trang 9

2.2.2 Cảm biến siêu âm SRF04

SRF04 là cảm biến siêu âm dung để đo khoảng cách tới vật cản

Khoảng cách đo: 3cm-4cm

Ứng dụng: chống trộm, đo mực nước, robot dò đường……

Hình 2.2.2-1: SRF04

2.2.2.1 Thông số kĩ thuật SRF04

+ Nguồn cung cấp: 5V DC

+ Dòng: 30mA (Max 50mA)

+ Tần số hoạt động: 40KHz

+ Khoảng cách lớn nhất đo được: 6m

+ Khoảng cách nhỏ nhất đo được: 3 cm

+ Góc quét: 45 ° [3]

2.2.2.2 Sơ đồ chân

SRF04

2.2.2.3 Giao tiếp với vi điều khiển

 Đo khoảng cách bằng cảm biến siêu âm SRF04 chính là đo thời gian chân Echo ở mức cao

 Để đo khoảng cách ta làm các bước sau:

 Kích chân Trigger: xuất mức 1 ra chân Trigger và delay tối thiểu 10ms

 Sau đó đợi chân Echo lên mức cao

 Khi chân Echo lên mức cao, kích hoạt Timer

 Khi chân Echo xuống mức thấp (hoặc trong chương trình xử lý ngắt), dừng Timer và tính toán giá trị từ Timer, sau đó suy ra khoảng cách

 Reset giá trị đếm cho Timer, chuẩn bị lần đo tiếp theo

Trigger Chân kích phát song âm đi Echo Chân phát hiện song âm dội lại

Trang 10

2.2.2.4 Cách tính khoảng cách từ thời gian đo được

Hình 2.2.2-2: Khoảng cách từ SRF04 tới vật

Gọi S là quãng đường đi của song âm

S= 2 x d

Gọi V là vận tốc song âm

V=344m/s = 34400cm/s

V=0.0344m/us

Gọi t là thời gian truyền thì ta có: Như vậy:

S = 2 x d = V x t

D = V x t/2 = 0.0344 x t/2 = (t/58)

2.2.3 LCD 16x02

Trong đồ án, khối hiển thị sử dụng LCD 16x02 LCD là viết tắt của từ Liquid Crystal Display được khá nhiều thiết bị điện tử sử dụng Là loại hiển thị cấu tạo bởi các tế bào ( các điểm ảnh) chứa tinh thể lỏng có khả năng thay đổi tính phân cực của ánh sáng do đó thay đổi cường độ ánh sáng truyền qua khi kết hợp với các kính lọc phân cực Ưu điểm là phẳng, cho hình ảnh sáng, chân thật và tiết kiệm năng lượng

Hình 2.2.3: LCD 16x02

10

d

D = t/58

Trang 11

Nguồn cho

Điều khiển

LCD

Từ 1 xuống 0

Vô hiệu hóa LCD LCD hoạt động Bắt đầu ghi/đọc

Dữ liệu/lệnh

Bảng 2.2.3: Sơ đồ chân trong LCD

Trang 12

CHƯƠNG 3: PHẦN MỀM

3.1 Lưu đồ hoạt động

Hình 3.1: Lưu đồ hoạt động

12

Trang 13

3.2 Mô phỏng

Hình 3.2: Mạch mô phỏng proteus

3.3 Thi công mạch

Hình 3.3: Mạch in

Trang 14

CHƯƠNG 4: KẾT LUẬN

4.1 Kết luận

Sau hơn một thời gian tìm hiểu, nghiên cứu, tham khảo nhiều tài liệu và được sự hướng

dẫn của thầy cô, em đã thực hiện xong đề tài : ‘‘Mạch đo mực nước Việc hoàn thành đề

tài với những nội dung và mục tiêu đề ra ban đầu đã đem lại cho em thực hiện một lượng kiến thức bổ ích, thiết thực và có khả năng ứng dụng trong thực tế Sau thời gian thực hiện đồ án, em đã hoàn thành được những 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 ‘‘mạch đo mực nước” được thực hiện trên mô hình thí nghiệm Để đưa đề tài này vào áp

dụng trong thực tiễn đời sống và sản xuất thì cần phải nâng cấp và mở rộng hệ thống hơn nữa Ngoài ra, dựa vào ứng dụng và tầm khả năng hoạt động , chúng ta có thể phát triển thành các đề tài khác như hệ thống ổn định lò nhiệt, hệ thống ổn định áp suất……

14

Trang 15

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-khien-pic-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

Trang 16

PHỤ LỤC

#define LCD_EN PIN_D1

#define LCD_RS PIN_D0

#define LCD_D4 PIN_D7

#define LCD_D5 PIN_D6

#define LCD_D6 PIN_D5

#define LCD_D7 PIN_D4

// misc display

defines-#define Clear_Scr 0x01

// prototype statements

#separate void LCD_khoitao (void);

#separate void LCD_thietlap (unsigned int cX);

#separate void LCD_VIETKITU (unsigned int cX);

#separate void LCD_GUILENH (unsigned int cX);

#separate void LCD_Kichhoatxung (void);

#separate void LCD_SetData (unsigned int cX);

#use standard_io (B)

#use standard_io (A)

//khoi tao LCD**********************************************

#separate void LCD_khoitao (void)

{

LCD_SetData (0x00);

delay_ms (200);

output_low (LCD_RS);

LCD_SetData (0x03);

L CD_PulseEnable ();

LCD_Kichhoatxung ();

LCD_Kichhoatxung ();

LCD_SetData (0x02);

LCD_Kichhoatxung ();

LCD_GUILENH (0x2C);

LCD_GUILENH (0X0C);

LCD_GUILENH (0x06);

LCD_GUILENH (0x01);

}

16

Trang 17

#separate void LCD_thietlap (unsigned int cX)

{

LCD_SetData (swap ( cX ) | 0x08);

LCD_Kichhoatxung ();

LCD_SetData (swap (cX));

LCD_Kichhoatxung ();

}

#separate void LCD_VIETKITU (unsigned int cX)

{

output_high (LCD_RS);

LCD_GUILENH (cX);

output_low (LCD_RS);

}

#separate void LCD_GUILENH (unsigned int cX)

{

LCD_SetData (swap (cX)); /* send high nibble */

LCD_Kichhoatxung ();

LCD_SetData (swap (cX)); /* send low nibble */

LCD_Kichhoatxung ();

}

#separate void LCD_Kichhoatxung (void)

{

output_high (LCD_EN);

delay_us (3); // was 10

output_low (LCD_EN);

delay_ms (3); // was 5

}

#separate void LCD_SetData (unsigned int cX)

{

output_bit (LCD_D4, cX & 0x01);

output_bit (LCD_D5, cX & 0x02);

output_bit (LCD_D6, cX & 0x04);

output_bit (LCD_D7, cX & 0x08);

}

#DEFINE TRIGGER PIN_C4

#DEFINE ECHO PIN_C5

FLOAT KC1, KC2;

Trang 18

#int_timer1

void interrupt_timer1()

{

GT_TRAN++;

}

VOID TAO_XUNG_TRIGGER() // tao xung de day tin hieu ra ngoai {

DELAY_MS(50);

OUTPUT_HIGH(TRIGGER);

DELAY_MS(1);

OUTPUT_LOW(TRIGGER); // kich muc thap thi tao duoc 1 xung

SET_TIMER1(0); //chuong trinh ngat reset ve 0

WHILE(!(INPUT(ECHO)));

SETUP_TIMER_1(T1_INTERNAL);

WHILE(INPUT(ECHO));

KC1 = GET_TIMER1();

SETUP_TIMER_1(T1_DISABLED); // khong cho doc gia tri timer }

VOID SETUP_SRF04()

{

SETUP_TIMER_1(T1_DISABLED);

ENABLE_INTERRUPTS(GLOBAL); // cho phép ngat

ENABLE_INTERRUPTS(INT_TIMER1); // cho phep ngat timer 1 K=1;

}

VOID DOC_SRF04()

{

KC2=0; // reset gia tri

FOR(I=0;I<K;I++) // dem 1 lan tinh trung binh

{

GT_TRAN=0; //bao gia tri tran

TAO_XUNG_TRIGGER(); // khi tran thi doc gia tri

KC2 = KC2 +KC1 +GT_TRAN*65536;

}

KC2 = KC2/K;

KC2 = KC2/5;

18

Trang 19

KC2 = (KC2/58);

KC2 = KC2*100;

KQ = KC2;

IF(KC2<45000)

{

LCD_GUILENH (0X06);

LCD_GUILENH (0X0C);

LCD_GUILENH (0XC0);

LCD_VIETKITU (" ");

LCD_GUILENH (0XCC);

LCD_VIETKITU (" ");

LCD_GUILENH (0XC5);

LCD_VIETKITU (KQ/10000+0x30);

LCD_VIETKITU (KQ/1000%10+0X30);

LCD_VIETKITU (KQ/100%10+0X30);

LCD_VIETKITU (".");

LCD_VIETKITU (KQ/10%10+0X30);

LCD_VIETKITU("cm");

}

}

VOID DOC_KHOANG_CACH()

{

}

VOID MAIN()

{

SET_TRIS_D(0X00);

LCD_KHOITAO();

SETUP_SRF04();

LCD_GUILENH(0X82);

LCD_VIETKITU("DIEN-DIEN TU");

LCD_GUILENH(0XC5);

LCD_VIETKITU("DO AN 1");

DELAY_MS(2000);

LCD_GUILENH(0X80);

LCD_VIETKITU("PHUNG MINH THUAN");

LCD_GUILENH(0XC4);

LCD_VIETKITU("41302392");

DELAY_MS(3000);

LCD_GUILENH(0X80);

Trang 20

LCD_VIETKITU("DO KHOANG CACH ");

WHILE(TRUE)

{

DOC_SRF04();

}

}

END;

20

Ngày đăng: 14/08/2020, 20:46

HÌNH ẢNH LIÊN QUAN

Hình 2.1: Sơ đồ khối của mạch - Đồ án: Mạch đo mực nước dùng PIC
Hình 2.1 Sơ đồ khối của mạch (Trang 6)
Hình 2.2.1: Sơ đồ chân và hình dạng của PIC 16F877A. - Đồ án: Mạch đo mực nước dùng PIC
Hình 2.2.1 Sơ đồ chân và hình dạng của PIC 16F877A (Trang 7)
Hình 2.2.2-1: SRF04 - Đồ án: Mạch đo mực nước dùng PIC
Hình 2.2.2 1: SRF04 (Trang 9)
Hình 2.2.3: LCD 16x02 - Đồ án: Mạch đo mực nước dùng PIC
Hình 2.2.3 LCD 16x02 (Trang 10)
Hình 2.2.2-2: Khoảng cách từ SRF04 tới vật - Đồ án: Mạch đo mực nước dùng PIC
Hình 2.2.2 2: Khoảng cách từ SRF04 tới vật (Trang 10)
Bảng 2.2.3: Sơ đồ chân trong LCD - Đồ án: Mạch đo mực nước dùng PIC
Bảng 2.2.3 Sơ đồ chân trong LCD (Trang 11)
Hình 3.1: Lưu đồ hoạt động - Đồ án: Mạch đo mực nước dùng PIC
Hình 3.1 Lưu đồ hoạt động (Trang 12)
Hình 3.2: Mạch mô phỏng proteus - Đồ án: Mạch đo mực nước dùng PIC
Hình 3.2 Mạch mô phỏng proteus (Trang 13)
Hình 3.3: Mạch in - Đồ án: Mạch đo mực nước dùng PIC
Hình 3.3 Mạch in (Trang 13)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w