1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÁO cáo đồ án THIẾT kế II đề tài THIẾT kế MẠCH đo NHIỆT độ và độ ẩm

28 51 0

Đ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 28
Dung lượng 437,89 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Các kỹ thuật tiên tiến như vi xử lý, vi mạch số,… được ứng dụng nhiều vào lĩnh vực đo lường và điều khiển thaycho các hệ thống thô sơ trước, với tốc độ xử lý nhanh hơn và chính xác hơn d

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

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

Trang 2

Giảng viên hướng dẫn : Tào Văn Cường

Hà Nội, 12-2021

Trang 3

LỜI NÓI ĐẦU

Ngày nay, với sự phát triển của nền công nghiệp vi mạch điện tử, các hệ thống đolường và điều khiển dần dần được số hóa và tự động hóa Các kỹ thuật tiên tiến như vi

xử lý, vi mạch số,… được ứng dụng nhiều vào lĩnh vực đo lường và điều khiển thaycho các hệ thống thô sơ trước, với tốc độ xử lý nhanh hơn và chính xác hơn do cáclệnh chương trình tự động được thiết lập trước.Trong quá trình sản xuất, việc đo vàthống kê nhiệt độ, độ ẩm một các tự động là yêu cầu hết sức cần thiết trong các nhàmáy xí nghiệp hiện nay Nếu nắm bắt được nhiệt độ đô ẩm làm việc của các hệ thống,dây chuyền sản xuất sẽ giúp biết được tình trạng hoạt động của máy móc và có nhữngphương pháp xử lý kịp thời, tránh những sự cố hay hư hỏng không đáng có

Nhận biết được tầm quan trọng của việc đo và khống chế nhiệt độ, em quyếtđịnh chọn đề tài “Thiết kế mạch đo nhiệt độ và độ ẩm” làm đồ án thiết kế 2 Đề tàigiúp em tích lũy được thêm nhiều kiến thức về mạch điện tử cũng như trau dồi thêmnhiều kinh nghiệm để phục vụ cho những môn học sau này

Em xin gửi lời cảm ơn đến thầy Tào Văn Cường đã chỉ bảo và góp ý giúp emtrong suốt quá trình thực hiện đồ án Em đã cố gắng hết sức để đề tài đạt kết quả tốtnhất nhưng do hạn chế về kiến thức chuyên môn cũng như thời gian nên đề tài sẽkhông tránh khỏi những thiết sót nhất định Em rất mong nhận được những lời nhậnxét của thầy để em có thể rút kinh nghiệm và cải tiến, phát triển đề tài

Trang 5

MỤC LỤC

DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT i

DANH MỤC HÌNH VẼ ii

DANH MỤC BẢNG BIỂU iii

CHƯƠNG 1 MÔ TẢ ĐỀ TÀI 1

1.1 Giới thiệu chung 1

1.2 Phân tích thiết kế 2

1.2.1 Yêu cầu chức năng 2

1.2.2 Yêu cầu phi chức năng 2

CHƯƠNG 2 THIẾT KẾ HỆ THỐNG 1

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

2.2 Chi tiết từng khối 1

2.2.1 Khối nguồn 1

2.2.2 Khối cảm biến 2

2.2.3 Khối xử lý 2

2.2.4 Khối hiển thị 3

2.3 Sơ đồ mạch nguyên lý 5

2.4 Mạch thực tế 6

CHƯƠNG 3 ĐÁNH GIÁ VÀ HƯỚNG PHÁT TRIỂN 8

3.1 Đánh giá 8

3.2 Hướng phát triển 8

KẾT LUẬN 9

TÀI LIỆU THAM KHẢO 10

PHỤ LỤC 11

Trang 6

DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT

Ý nghĩa Direct current

Universal asynchronous transmitter

receiver-Electrically Erasable Programmable

Read-Only MemoryStatic random-access memory

Trang 7

DANH MỤC HÌNH VẼ

Hình 2-1 Sơ đồ khối hệ thống 1

Hình 2-2 Sơ đồ nguyên lý khối nguồn 1

Hình 2-3 Hình ảnh module DHT11 2

Hình 2-4 Sơ đồ nguyên lý khối cảm biến 2

Hình 2-5 Sơ đồ chân của vi điều khiển ATmage16 3

Hình 2-6 Màn hình LCD1602 3

Hình 2-7 Sơ đồ nguyên lý khối hiển thị 5

Hình 2-8 Sơ đồ nguyên lý hệ thống 6

Hình 2-9 Hình ảnh mạch thực tế 7

Trang 8

DANH MỤC BẢNG BIỂU

Bảng 2-1 Ý nghĩa các chân của LCD1602 4

Trang 9

CHƯƠNG 1 MÔ TẢ ĐỀ TÀI

1.1 Giới thiệu chung

Nhiệt độ là một đại lượng vật lý gắn liền với cuốc sống của chúng ta Nó tácđộng đến mọi người mọi mặt của cuốc sống Và các lĩnh vực sản xuất cũng vậy, nhiết

độ ảnh hưởng trực tiếp tới quá trình vận hành, sản xuất

Độ ẩm là đại lượng vật lý xác định khối lượng hơi nước tính theo gam có trongđơn vị thể tích xác định hay còn nói đó là lượng hơi nước có trong không khí Độ ẩmchính là thước đo cho thấy được khả năng mưa hoặc lượng mưa, sương mù của thờitiết

Đối với con người thì độ ẩm càng cao việc đổ mồ hôi làm mát cơ thể càng kém

Vì thế mà trong những điều kiện thời tiết độ ẩm cao khiến cho chúng ta cảm thấy khóchịu Độ ẩm không khí quá cao sẽ tạo điều kiện cho vi khuẩn, vi sinh vật phát triểnmạnh mẽ Đây cũng là nguyên nhân gây ra nhiều bệnh lý hô hấp, ảnh hưởng trực tiếpđến sức khỏe mọi người

Trong lĩnh vực sản xuất công nghiệp, nhiệt độ có tác động trực tiếp đến chấtlượng sản phẩm đầu ra như trong quá trình gia công hàn vật liệu, nhiệt độ ảnh hưởngtới độ chính xác, tính giãn nở của vật liệu

Trong y học, nhiệt độ ảnh hưởng tới kết quả nghiên cứu chữa bệnh

Trong nông nghiệp, nó ảnh hưởng trực tiếp đến thành quả và năng suất nôngnghiệp; trong chế biến và bảo quản thực phẩm

Trong quá trình nung nóng, sấy như nung gạch men thì nhiệt độ ảnh hưởng tớichất lượng về độ cứng, độ dẻo, màu sắc của sản phầm đầu ra

Nhiệt độ là đại lượng chỉ có thể đo gián tiếp trên cơ sở tính chất của vật phụthuộc nhiệt độ Hiện nay, chúng ta có nhiều nguyên lý cảm biến khác nhau để chế tạocảm biến nhiệt độ như: nhiệt điện trở, cặp nhiệt ngẫu, phương pháp quang dựa trênphân bố bức xạ nhiệt, phương pháp dựa trên sự dãn nở của vật rắn, lỏng, khí,…

Như vậy, việc đo nhiệt độ, độ ẩm bằng cảm biến đang là phương pháp phổ biến

và tiết kiệm trong đời sống

Trang 10

1.2 Phân tích thiết kế

1.2.1 Yêu cầu chức năng

Mạch có yêu cầu chức năng như sau:

Đo được nhiệt độ và độ ẩm

Hiển thị nhiệt độ, độ ẩm lên màn hình LCD

Có thể tùy chỉnh ngưỡng cảnh báo

1.2.2 Yêu cầu phi chức năng

Mạch có các yêu cầu phi chức năng như sau:

Nhiệt độ và độ ẩm đo được với sai số thấp Giá thành rẻ

Mạch chạy ổn định lâu dài

Sử dụng nguồn 5V DC

Kích thước mạch nhỏ gọn

Trang 11

− Khối cảm biến: Đo nhiệt độ và độ ẩm từ môi trường

− Khối giao tiếp: Giao tiếp với máy tính để thay đổi ngưỡng cảnh báo

− Khối xử lý: Xử lý tính toán

− Khối hiện thị: Hiện thị nhiệt độ, độ ẩm

2.2 Chi tiết từng khối

2.2.1 Khối nguồn

Hình 2-2 Sơ đồ nguyên lý khối nguồn

Trang 12

Khối nguồn có nhiệm vụ hạ áp đầu vào từ 9-12V DC xuống 5V DC để hệ thống có thể

sử dụng ổn định

2.2.2 Khối cảm biến

Trong khối này em sẽ sử dụng cảm biến DHT11 để đo nhiệt độ và độ ẩm từ môitrường

Cảm biến nhiệt độ và độ ẩm DHT11 là loại linh kiện điện tử cảm biến nhiệt độ

độ ẩm Đây là cảm biến cơ bản và giá rẻ so với các cảm biến khác, rất thích hợp chonhững ứng dụng thu thập dữ liệu cơ bản Cảm biến DHT11 có 2 phần, 1 cảm biến độ

ẩm điện dung và một điện trở nhiệt

Dữ liệu ngõ ra của cảm biến DHT là chuẩn 1 dây (One-Wire), có thể dùng bất

cứ vi điều khiển nào để lấy dữ liệu ra Dữ liệu độ ẩm mà cảm biến đo được mức từ20% ~ 90% Bộ tiền xử lý tín hiệu tích hợp trong cảm biến giúp bạn có được dữ liệuchính xác mà không phải qua bất kỳ tính toán nào

Nhiệt độ đo từ 0 ~ 50 Độ C, thời gian trả dữ liệu < 50ms

Trang 13

Hình 2-5 Sơ đồ chân của vi điều khiển ATmage16

ATmega16 là một bộ vi điều khiển 8 bit dựa trên kiến trúc RISC bộ nhớchương trình 16KB ISP flash có thể ghi xóa hàng nghìn lần, 512B EEPROM, một bộnhớ RAM vô cùng lớn trong thế giới vi xử lý 8 bit (1KB SRAM)

Với 32 chân có thể sử dụng cho các kết nối I/O, 3 bộ định thời, đầy đủ các giaotiếp ngoại vi như I2C, UART, SPI, có hỗ trợ ngắt ngoài, bộ chuyển đổi tương tự sang

số ADC với độ phân giải 10 bit

Trong khối này, vi điều khiển sẽ dùng giao tiếp UART để giao tiếp với máytính, kết nối với cảm biến nhiệt độ, hiển thị lên LCD và cảnh báo nếu vượt ngưỡng

Trang 14

Bảng 2-1 Ý nghĩa các chân của LCD1602

1 VSS Chân nối đất cho LCD, khi thiết kế mạch ta nối chân này với

GND của mạch điều khiển

2 VDD Chân cấp nguồn cho LCD, khi thiết kế mạch ta nối chân này

với VCC=5V của mạch điều khiển

3 VEE Điều chỉnh độ tương phản của LCD

4 RS Chân chọn thanh ghi (Register select)

+ Logic “0”: Bus DB0-DB7 sẽ nối với thanh ghi lệnh IR củaLCD

+ Logic “1”: Bus DB0-DB7 sẽ nối với thanh ghi dữ liệu DRbên trong LCD

5 R/W Chân chọn chế độ đọc/ghi (Read/Write) Nối chân R/W với

logic “0” để LCD hoạt động ở chế độ ghi, hoặc nối với logic

“1” để LCD ở chế độ đọc

6 E Chân cho phép (Enable) Sau khi các tín hiệu được đặt lên

busDB0-DB7, các lệnh chỉ được chấp nhận khi có 1 xung chophép của chân E

+ Ở chế độ ghi: Dữ liệu ở bus sẽ được LCD chuyển vào(chấpnhận) thanh ghi bên trong nó khi phát hiện một xung (high-to-low transition) của tín hiệu chân E

+ Ở chế độ đọc: Dữ liệu sẽ được LCD xuất ra DB0-DB7 khiphát

7-14 DB0 - DB7 Tám đường của bus dữ liệu dùng để trao đổi thông tin với

MPU Có 2 chế độ sử dụng 8 đường bus này :

Trang 15

+ Chế độ 8 bit : Dữ liệu được truyền trên cả 8 đường, với bitMSB là bit DB7.

+ Chế độ 4 bit : Dữ liệu được truyền trên 4 đường từ DB4 tớiDB7, bit MSB là DB7

Trang 16

TIEU LUAN MOI download : skknchat123@gmail.com

Trang 17

Hình 2-8 Sơ đồ nguyên lý hệ thống

2.4 Mạch thực tế

Sau khi sử dụng ngôn ngữ C để lập trình cho vi điều khiển, chúng ta sẽ tiến hànhbiên dịch mã nguồn sang file mã máy dưới dạng hex Sau đó chúng ta sẽ sử dụngmạch nạp AVR USB và phần mềm Progisp để nạp file này xuống vi điều khiển Sau

đó tiến hành kiểm tra hoạt động của mạch theo như ý tưởng thiết kế đã nêu lên phầntrước Hình ảnh bên dưới miêu tả quá trình hoạt động của mạch thực tế

Trang 18

Hình 2-9 Hình ảnh mạch thực tế

Trang 19

CHƯƠNG 3 ĐÁNH GIÁ VÀ HƯỚNG PHÁT TRIỂN

3.1 Đánh giá

Sau 2 tháng nỗ lực làm việc cùng với sự hướng dẫn tận tình của thầy giáo TàoVăn Cường với đề tài “Thiết kế mạch đo nhiệt độ và độ ẩm”, em đã hoàn thànhđúng với thời gian quy định

Ưu điểm:

o Mạch có dải đo nhiệt lớn từ 0 đến 50℃, sai số ±2℃

o Độ ẩm: 20-90% RH, sai số ± 5%RH

o Khả năng đáp ứng nhanh với độ thay đổi nhiệt độ của môi trường

o Mạch được thiết kế nhỏ gọn, dễ sử dụng, tiện lợi

o Có thể sử dụng ở những nơi cần theo dõi nhiệt độ như nhà kho, công

xưởng, nhà ở và trong một số thiết bị máy móc khác

- Để tăng độ chính xác thì có thể sử dụng 1 loại cảm biến khác

- Thiết lập các trạm đo nhiệt độ, độ ẩm sau đó gửi dữ liệu về server bằng cách sử dụng Module SIM900A hoặc ESP8266

Trang 20

KẾT LUẬN

Trong đồ án này bản thân em đã thiết kế được mạch đo nhiệt độ độ ẩm sử dụngcảm biến cho tín hiệu số, hoàn thành được mục tiêu đề ra của đồ án Tuy mạch chạythử nghiệm còn đơn giản và tồn tại một số hạn chế nhất định nhưng có thể hoàn thiện

và cải tiến mạch với những phương pháp em đề xuất ở trên Em rất hi vọng nhận đượcnhững lời nhận xét và đánh giá từ thầy hướng dẫn để em có thể phát triển đề tài, cũngnhư thực hiện được những project lớn hơn

Trang 21

TÀI LIỆU THAM KHẢO

[1] https://www.electronicwings.com/avr-atmega/atmega1632-usart , truy nhập lần cuối 12/2020

[2] https://www.electronicwings.com/avr-atmega/lcd16x2-interfacing-with-

atmega16-32, truy nhập lần cuối 12/2020

[3] https://www.mouser.com/datasheet/2/758/DHT11-Technical-Data-Sheet-Version-1143054.pdf , truy nhập lần cuối 12/2020

Trang 22

Translated-PHỤ LỤC

#define F_CPU 8000000UL

/* Define frequency here its 8MHz */

direction register */ #define

LCD_Data_Port PORTC #define

LCD_Command_Port PORTD #define

RS PIND6 (data/command

reg.)pin */ #define RW PIND5

#define EN PIND7

#define BUZZER_DDRx DDRD

#define BUZZER_PORTx PORTD

#define BUZZER_PIN PIND3

volatile char buff[10];

volatile uint8_t status_flag = 0;

volatile uint8_t buffer_pointer = 0;

int th_Temp =30, th_humi = 90;

void LCD_Command(unsigned char cmnd)

{

/* Define LCD data port direction /* Define LCD command port

/* Define LCD data port */

/* Define LCD data port */ /* Define Register Select /* Define Read/Write signal pin

*/ /* Define Enable signal pin */

LCD_Data_Port= cmnd;

LCD_Command_Port &= ~(1<<RS);/* RS=0 command reg */

LCD_Command_Port &= ~(1<<RW);/* RW=0 Write operation */

Trang 23

LCD_Command_Port |= (1<<EN); /* Enable pulse

LCD_Command_Port |= (1<<RS); /* RS=1 Data reg */

LCD_Command_Port &= ~(1<<RW);/* RW=0 write operation */

LCD_Command_Port |= (1<<EN); /* Enable Pulse */

/* Initialization of 16X2 LCD in

/* Display ON Cursor OFF

*/ /* Auto Increment cursor

*/ /* Clear display */

/* Cursor at home position */

/* Send string to LCD function */

Trang 24

for(i=0;str[i]!=0;i++) /* Send each char of string till the NULL */

{

LCD_Char (str[i]);

} }

void LCD_String_xy (char row, char pos, char *str)/* Send string to LCD with xy position */

{

if (row == 0 && pos<16)

required position<16 */

else if (row == 1 && pos<16)

}

#define DHT11_PIN PIND4

uint8_t temperature, humidity;

uint8_t DHT_Read(uint8_t * temp,uint8_t * humi){

uint8_t dht_data[5] = {0};

TCCR0 = (1<<CS01);

DDRD |=(1<<DHT11_PIN);// set output

PORTD &= ~(1<<DHT11_PIN);

_delay_ms(18); //low 18ms PORTD |=(1<<DHT11_PIN);

_delay_us(40);//high 40 us

Trang 25

DDRD &= ~(1<<DHT11_PIN); // Set input

while(!(PIND & (1<<DHT11_PIN)))

if (TCNT0 > 100)

{

return 255; //timeout }

//wait data high in 80us

//doc 40 bit

for (uint8_t i =0;i<5;i++)

{

for (uint8_t j =0;j<8;j++) {

while(!(PIND & (1<<DHT11_PIN)))

if (TCNT0>60U) {

return 255; //timeout }

0x00;

while(PIND & (1<<DHT11_PIN))

if (TCNT0 > 100U) {

return 255; //timeout }

uint8_t counter_tmp = TCNT0;

Trang 26

if (counter_tmp > 40U) {

dht_data[i] |= (uint8_t)1<<(7-j);

} }

} if((dht_data[0] + dht_data[1] + dht_data[2] + dht_data[3]) !

baud rate value */

UBRRH = (BAUD_PRESCALE >> 8);/* Load upper 8-bits*/

Trang 28

BUZZER_PORTx &= ~(1<< BUZZER_PIN);

DHT_Read(&temperature,&humidity);

sprintf(msg,"Temp=%d%cC,RH=%d%

%",temperature,degree_sysmbol,humidity);

LCD_String_xy(0,0,msg); if (status_flag == 1)

Ngày đăng: 03/08/2022, 16:05

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w