MSP430G2553 Giao tiếp DHT11 điều khiển mô hình giám sát nhiệt độ và độ ẩm hệ thống thông gió (CÓ CODE MẪU VÀ SƠ ĐỒ CHI TIẾT)

40 882 39
MSP430G2553 Giao tiếp DHT11 điều khiển mô hình giám sát nhiệt độ và độ ẩm hệ thống thông gió  (CÓ CODE MẪU VÀ SƠ ĐỒ CHI TIẾT)

Đ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

MSP430G2553 Giao tiếp cảm biến nhiệt độ và độ ẩm DHT11 (Upload dữ liệu lên Thingspeak bằng module ESP8266 nếu cần) điều khiển mô hình giám sát nhiệt độ và độ ẩm hệ thống thông gió (CÓ CODE MẪU VÀ SƠ ĐỒ CHI TIẾT)

bo Bộ giáo dục đào tạo Trường Đại Học Cần Thơ ĐỒ ÁN VI XỬ LÝ Tên đề tài: Thiết kế điều khiển mơ hình giám sát nhiệt độ độ ẩm hệ thống thơng gió nhà kho Giáo viên hướng dẫn : Trần Hữu Danh Ngocb1509816@student.ctu.edu.vn PHỤ LỤC MỤC TIÊU VÀ GIỚI HẠN ĐỀ TÀI CẦN ĐẠT ĐƯỢC MƠ HÌNH HỆ THỐNG THƠNG QUA SƠ ĐỒ KHỐI PHÂN TÍCH VÀ LỰA CHỌN LINH KIỆN LƯU ĐỒ CHƯƠNG TRÌNH DIỀU KHIỂN SƠ ĐỒ NGUYÊN LÝ MẠCH IN TỔNG KẾT ĐỀ TÀI £ NỘI DUNG BÁO CÁO MỤC TIÊU VÀ GIỚI HẠN ĐỀ TÀI CẦN ĐẠT ĐƯỢC _Mục tiêu:Thiết kế điều khiển mơ hình đo nhiệt độ ẩm hệ thống thơng gió nhà kho hiển thị kết đo LCD _Giới hạn : _Chọn sử dụng linh kiện hợp lý nhất, tránh lãng phí tài nguyên _Thiết kế phải sử dụng chức phần cứng tích hợp MSP430 có để tối ưu định thiết kế phần cứng hệ thống _ Nhiệt độ độ ẩm đọc có sai số khơng q 5% MƠ HÌNH HỆ THỐNG THƠNG QUA SƠ ĐỒ KHỐI LED Cảm biến nhiệt độ độ ẩm DHT11 Bộ xử lý trung tâm MSP 430G2553 Phím điều khiễn tự đơng PHÂN TÍCH VÀ LỰA CHỌN LINH KIỆN  MSP430G2553 loại 20 chân Hiển thị LCD         Ngõ vào: Chân SCK kết nối với chân P1.1 MSP430G2553 Chân DT kết nối với chân P1.2 MSP430G2553 Ngõ ra: Dữ liệu Chân P1.4 kết nối với D4 LCD Chân P1.5 kết nối với D5 LCD Chân P1.6 kết nối với D6 LCD Chân P1.7 kết nối với D7 LCD  Vi điều khiển MSP430G2553 thực điều khiển tồn q trình chuyển đổi từ tín hiệu lực đo thành liệu số thể trung thực giao tiếp với thiết bị khác để trao đổi thông tin   Thông số kỹ thuật ưu điểm msp430g2553  -Low Supply-Voltage Range: 1.8 V to 3.6 V  - Cấu trúc sử dụng nguồn thấp giúp kéo dài tuổi thọ Pin (siêu tiết kiệm điện):  +Duy trì 0.1µA dòng ni RAM  +Chỉ 0.8µA real-time clock  +230 µA/ MIPS  -Bộ tương tự hiệu suất cao cho phép đo xác  -Bộ giám sát điện áp nguồn  -16 bit RISC CPU cho phép nhiều ứng dụng, thể phần kích thước Code lập trình  +Thanh ghi lớn nên loại trừ trường hợp tắt nghẽn tập tin làm việc  +Thiết kế nhỏ gọn làm giảm lượng tiêu thụ điện giảm giá thành  +Tối ưu hóa cho chương trình ngơn ngữ bậc cao C, C++Tối ưu hóa cho chương trình ngơn ngữ bậc cao C, C++  -Có chế độ định địa  -Khả ngắt theo véc tơ lớn + Trong lập trình cho nhớ Flash cho phép thay đổi Code cách linh hoạt, phạm vi rộng, nhớ Flash lưu lại nhật ký liệu  -Tần số bên lên đến 16 MHz với bốn chế độ tần số hiệu chỉnh  -Crystal 32 kHz  -Năm chế độ tiết kiệm lượng   DHT11 Hình ảnh      Thông tin Điện áp hoạt động: 3V - 5V (DC) Dãi độ ẩm hoạt động: 20% - 90% RH, sai số ±5%RH Dãi nhiệt độ hoạt động: 0°C ~ 50°C, sai số ±2°C Khoảng cách truyển tối đa: 20m DHT11 Là cảm biến thông dụng chi phí rẻ dễ lấy liệu thông qua giao tiếp 1-wire (giao tiếp digital 1-wire truyền liệu nhất) Cảm biến tích hợp tiền xử lý tín hiệu giúp liệu nhận xác mà khơng cần phải qua tính tốn  Sơ đồ kết nối DHT11:    Nguyên lý hoạt động: Để giao tiếp với DHT11 theo chuẩn chân vi xử lý thực theo bước: o Gửi tin hiệu muốn đo (Start) tới DHT11, sau DHT11 xác nhận lại o Khi giao tiếp với DHT11, Cảm biến gửi lại byte liệu nhiệt độ đo Bước gửi tín hiệu start MCU thiết lập chân DATA Output, kéo chân DATA xuống khoảng thời gian >18ms Trong Code để 25ms Khi DHT11 hiểu MCU muốn đo giá trị nhiệt độ độ ẩm + MCU đưa chân DATA lên 1, sau thiết lập lại chân đầu vào + Sau khoảng 20-40us, DHT11 kéo chân DATA xuống thấp Nếu >40us mà chân DATA ko kéo xuống thấp nghĩa ko giao tiếp với DHT11 + Chân DATA mức thấp 80us sau DHT11 kéo nên cao 80us Bằng việc giám sát chân DATA, MCU biết có giao tiếp với DHT11 ko Nếu tín hiệu đo DHT11 lên cao, hồn thiện q trình giao tiếp MCU với DHT    Đọc giá trị DHT11 DHT11 trả giá trị nhiệt độ độ ẩm dạng byte Trong đó: + Byte 1: giá trị phần nguyên độ ẩm (RH%) + Byte 2: giá trị phần thập phân độ ẩm (RH%) + Byte 3: giá trị phần nguyên nhiệt độ (TC) + Byte : giá trị phần thập phân nhiệt độ (TC) + Byte : kiểm tra tổng + Nếu Byte = (8 bit) (Byte1 +Byte2 +Byte3 + Byte4) giá trị độ ẩm nhiệt độ xác, sai kết đo khơng có nghĩa + Đọc liệu: Sau giao tiếp với DHT11, DHT11 gửi liên tiếp 40 bit MCU, tương ứng chia thành byte kết Nhiệt độ độ ẩm + Đọc liệu: Sau giao tiếp với DHT11, DHT11 gửi liên tiếp 40 bit MCU, tương ứng chia thành byte kết Nhiệt độ độ ẩm + Bit 0:    Sau tín hiệu đưa 0, ta đợi chân DATA MCU DHT11 kéo lên Nếu chân DATA khoảng 26-28 us 0, tồn 70us Do lập trình ta bắt sườn lên chân DATA, sau delay if(row!=0) address=0x40; else address=0; address += col; lcd_put_byte(0,0x80|address); lcd_delay_ms(2); // wait for LCD } void lcd_putc(char c) { switch(c){ case '\f': lcd_put_byte(0, 0x01); lcd_delay_ms(2); // wait for LCD break; case '\n': lcd_gotoxy(0, 0x01); break; default: lcd_put_byte(1, c); lcd_delay_ms(2); // wait for LCD break; } } void lcd_puts(const char* s) { while(*s){ lcd_putc(*s++); } } void lcd_string(unsigned char *data) { char length=16; while(length > 0) // Write data to LCD up to null { lcd_putc(*data); data++; // Write character to LCD // Increment buffer length ; } } void lcd_2l_puts (const char* s1 , const char* s2) { lcd_gotoxy (0,0); lcd_puts (s1); lcd_gotoxy (0,1); lcd_puts (s2); } void lcd_put_num (unsigned long val, char dec, unsigned char neg) { char i, j, digit,k; long total; long temp; for (i = 0, total = val; total > 0;i++) // count number total /= 10; total = i; if (neg !=0 ) lcd_putc ('-'); if ((total - dec) 0) // ex: val = 55; dec = put 0.055 { for ( i = 0; i < (dec-total);i++) lcd_putc('0'); k = 0; } else k = total - dec; for (i=k; i< total; i++) { temp = 1; for (j=1;j _bit.b0 #define DHT_OUT P2_out -> _bit.b0 #define DHT_DIR P2_dir -> _bit.b0 unsigned char nhietdo, doam; unsigned char dht_get(unsigned char *tem, unsigned char *humi) { unsigned char buffer[5]={0,0,0,0,0}; unsigned char i,ii; DHT_DIR = 1;//2.4 DHT_OUT=1; delay_cycles(60); DHT_OUT=0; delay_cycles(25000); DHT_OUT=1; DHT_DIR = 0;//2.4 vao delay_cycles(60);// if(DHT_IN) return 0; else while(!DHT_IN); //doi Data len delay_cycles(60); if(!DHT_IN) return 0; else while(DHT_IN); //doi Data xuong //doc du lieu for(i=0;idoamset) { P2OUT=BIT3; delay_cycles(50000);}// Coi else { P2OUT&=~(BIT1+BIT2+BIT3);} } 5.SƠ ĐỒ NGUYÊN LÝ U2 5V LM1117MP-2,5 J1 IN OUT GND C1 1nF CONN-SIL2 3.3V 2/4 R1 220 C2 1nF A R8 3.3V D1 vol K LED-YELLOW J5 CONN-SIL18 U1 D4 D5 D6 D7 5V 4 10 11 12 13 14 15 16 17 18 D4 D5 D6 D7 14 15 IN R2 220 N1 N2 N3 N4 J7 10 11 12 13 19 18 P1.0/TA0CLK/ACLK/A0/CA0 RST/NMI/SBWTDIO P1.1/TA0.0/UCA0RXD/UCA0SOMI/A1/CA1 TEST/SBWTCK P1.2/TA0.1/UCA0TXD/UCA0SIMO/A2/CA2 P1.3/ADC10CLK/CAOUT/VREF-/VEREF-/A3/CA3 P1.4/SMCLK/UCB0STE/UCA0CLK/VREF+/VEREF+/A4/CA4/TCK P1.5/TA0.0/UCB0CLK/UCA0STE/A5/CA5/TMS P1.6/TA0.1/UCB0SOMI/UCB0SCL/A6/CA6/TDI/TCLK P1.7/CAOUT/UCB0SIMO/UCB0SDA/A7/CA7/TDO/TDI 16 17 J4 C3 1nF CONN-SIL2 P2.0/TA1.0 P2.1/TA1.1 P2.2/TA1.1 P2.3/TA1.0 P2.4/TA1.2 P2.5/TA1.2 XIN/P2.6/TA0.1 XOUT/P2.7 R4 MSP430G2553 A J6 D2 R3 LED-YELLOW 10k K 10k DONG CO IN CONN-SIL5 LOA J9 J8 2 CONN-SIL2 CONN-SIL3 10k R6 10k R5 10k R7 10k J11 CONN-SIL2 N1 J10 N3 J12 CONN-SIL2 N4 CONN-SIL2 N2 6.MẠCH IN 7.TỔNG KẾT ĐỀ TÀI Ưu điểm Thiết kế điều khiển mạch đo nhiệt độ độ ẩm hiển thi lcd Mạch chay xác khơng xãy lổi Nhược điểm thiết kế đơn giản chưa có tính ứng dụng cao Thiết kế chưa ngắn rườm rà ứng dụng -có thể ứng dụng vào mạch giám sát điều chỉnh nhiệt độ từ xa hệ thống nông nghiệp thông minh ( bao gồm khâu trồng bảo quản nông sản) -do thiết kế nhỏ gọn tiết kiệm chi phí vật liệu chế tạo lắp đăt -có thể tự động ngắt tkhông cần hoạt động giúp tiết kiệm lương có thời hạn hoạt động lâu dài

Ngày đăng: 03/09/2019, 00:57

Từ khóa liên quan

Mục lục

  • Kết nối (SỬ DỤNG ARDUINO VÀ ESP8266)

  • Source code test

  • . Kết hợp đọc nhiệt độ độ - độ ẩm và xuất ra màn hình

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

Tài liệu liên quan