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

Đồ án vi điều khiển tên đề tài thiết kế hệ thống

87 1 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 87
Dung lượng 9,79 MB

Nội dung

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT KHOA CƠ KHÍ-BỘ MÔN CƠ ĐIỆN TỬ ĐỒ ÁN VI ĐIỀU KHIỂN TÊN ĐỀ TÀI: THIẾT KẾ HỆ THỐNG GIÁM SÁT THÔNG SỐ NHIỆT ĐỘ ĐỘ ẨM HIỂN THỊ LÊN APP BLYNK GVHD:TS Đồn Lê Anh SVTH: Bùi Quang Huy Ngơ Đức Mạnh Lớp 221DAVDKCDT02 Đà Nẵng, ngày 16 tháng 06 năm 2022 Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đoàn Lê Anh Lời mở đầu Ngày với phát triển nhanh chóng khoa học kỹ thuật lĩnh vực ứng dụng kỹ thuật công nghệ cao ngày phát triển kỹ thuật điện tử khẳng định vai trị to lớn mình,góp phần nâng cao cải thiện đời sống vật chất tinh thần cho ngƣời Lĩnh vực ứng dụng điện tử số ngày lớn mạnh đƣợc ƣa chuộng tính đa dạng, xác ƣu điểm vƣợt trội so với kỹ thuật tƣơng tự Những môn học điện tử đƣợc ứng dụng nhiều Nhiệt độ , độ ẩm đặc trƣng quan trọng khí hậu có ý nghĩa quan trọng số q trình cơng nghệ Ứng dụng cảm biến nhiệt độ -độ ẩm vô đa dạng, dùng xác định độ ẩm đất, nhiệt độ nhà máy, phòng thí nghiệm đơn để xác định nhiệt - độ ẩm khơng khí Vận dụng kiến thức học để làm sáng tỏ hiệu ứng dụng mà cảm biến độ ẩm mang lại em định chọn đề tài “Thiết kế hệ thống giám sát thông số nhiệt độ độ ẩm hiển thị lên app blynk” Đề tài gồm nội dung sau: Chƣơng 1: Phần mở đầu Chƣơng 2: Giới thiệu số linh kiện mơ hình nghiên cứu thiết kế Chƣơng 3: Thiết kế mạch chƣơng trình điều khiển Chƣơng 4: Kết luận Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đoàn Lê Anh Mục lục CHƢƠNG PHẦN MỞ ĐẦU Mục đích thực đề tài Đặt vấn đề Giải vấn đề Giới hạn vấn đề Tổng quan phƣơng pháp đo nhiệt độ 1.1 Đo nhiệt độ phƣơng pháp tiếp xúc 1.2 Đo nhiệt độ nhiệt điện trở 1.3 Đo nhiệt độ cặp nhiệt ngẫu : 1.4 Đo nhiệt độ IC cảm biến 1.5 Đo nhiệt độ phƣơng pháp không tiếp xúc Một số phƣơng pháp đo độ ẩm thông dụng Sơ đồ tổng quan hệ thống 11 CHƢƠNG TỔNG QUAN HỆ THỐNG 12 Cảm biến 12 1.1 Cảm biến nhiệt độ LM35 12 1.2 Cảm biến đo độ ẩm 13 1.3 Cảm biến độ ẩm nhiệt độ DHT1 14 Khối xử lí trung tâm 19 2.1 Giới thiệu adruino mega 2560 : 20 2.2 Các thông số kỹ thuật Ardiuno Mega 2560: 22 2.3 Quy trình giao tiếp : 22 2.4 Cách dùng phần mềm với adruino mega 2560 : 24 2.5 Một số ứng dụng adruino mega 2560 thực tế: 25 Giới thiệu LCD 26 3.1 Giới thiệu 26 3.2 Sơ đồ chức chân 26 3.3 Các ghi 28 3.4 Vùng RAM hiển thị DDRAM : (Display Data RAM) 28 3.5 Vùng ROM chứa kí tự CGROM: Character Generator ROM 29 Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đoàn Lê Anh 3.6 Tập lệnh LCD 30 3.7 Mô code mẫu 34 3.8 Chƣơng trình hiển thị ký tự lên LCD 35 Giới thiệu số link kiện 36 4.1 Quạt tản nhiệt 5vdc 36 4.2 Led đơn 37 4.3 Điện trở 37 4.4 Bread board 38 4.5 Dây Bread board 38 Giao tiếp Module wifi ESP8266 40 a ESP8266 gì? 40 b Sơ đồ chân 41 c Thông số kỹ thuật 44 d Quản lý lƣợng NODE MCU ESP8266 44 e Chế độ hoạt động ESP8266 45 Khái niệm 56 Giới thiệu appblynk cách đăng kí tài khoản appblynk 60 Bƣớc :Cấu hình thông số cảm biến DHT11 App Blynk 68 Phần mềm điều khiển 73 7.1 phần mềm sử dụng 73 CHƢƠNG 3: THIẾT KẾ HỆ THỐNG 74 Hoạt động hệ thống 74 Khảo sát vẽ lƣu đồ thuật toán 74 Bảng liệt kê linh kiện 77 Thiết kế phần cứng cho hệ thống 77 Chƣơng trình cho hệ thống 80 5.1 Viết chƣơng trình code cho arduio mega 80 5.2 Viết code chƣơng trình cho NODEMCU 82 CHƢƠNG KẾT LUẬN 87 1.Kết đạt đƣợc đề tài : 87 Một số khó khăn thực đề tài: 87 Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đồn Lê Anh CHƢƠNG PHẦN MỞ ĐẦU Mục đích thực đề tài Mục đích trƣớc hết thực đề tài hồn thành đồ án mơn học Cụ thể chọn đề tài em muốn ứng dụng kiến thức học để tạo sản phẩm giúp ngƣời học có hứng thú đam mê học tập nhƣ khả ứng dụng thực tế cao Mặt khác tài liệu làm tài liệu tham khảo cho sinh viên khóa sau , giúp họ hiểu rõ ứng dụng lập trình vi điều khiển Đặt vấn đề Sự biến đổi nhiệt độ môi trƣờng ảnh hƣởng đến trình làm việc thiết bị Nhƣng nắm bắt đƣợc nhiệt độ làm việc hệ thống giúp ta biết đƣợc tình trạng làm việc có xử lý kịp thời hƣ hỏng Việc dùng phƣơng pháp thủ công xác định đƣợc nhiệt độ trở nên xác tốn thời gian Thay vào dùng cảm biến nhiệt độ - độ ẩm để có đƣợc độ cao thời gian Chúng ta cịn áp dụng cảm biến nhiệt độ - độ ẩm khống chế giới hạn nhiệt độ tùy vào ứng dụng thực tiễn Giải vấn đề Mạch đo nhiêt độ - độ ẩm sử dụng DHT11 hiển thị LCD Arduino trở nên gần gũi với ngƣời sử dụng hơn, giao diện dễ gần thân thiện, độ xác tƣơng đối cao, chúng đƣợc chế tạo linh kiện điện tử , lập trình tự động có hoạt động tự động theo ý muốn ngƣời lập trình Do em chọn đề tài để thực Giới hạn vấn đề Trong trình thực đề tài có nhiều vấn đề phát sinh nhƣ : thời gian có hạn, tài liệu tham khảo cịn kiến thức cịn hạn chế nhƣ kinh nghiệm non nên tránh khỏi thiếu sót Tổng quan phƣơng pháp đo nhiệt độ 1.1 Đo nhiệt độ phƣơng pháp tiếp xúc Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đoàn Lê Anh 1.2 Đo nhiệt độ nhiệt điện trở Nguyên lí hoạt động : điện trở số kim loại thay đổi theo nhiệt độ dựa vào thay đổi điện trở ngƣời ta đo đƣợc nhiệt độ cần đo Vật liệu dùng làm chuyển đổi nhiệt điện trở có hệ số nhiệt độ lớn ổn định , điện trở suất lớn Trong công nghiệp nhiệt điện trở chia thành hai loại : +Nhiệt điện trở kim loại +Nhiệt điện trở bán dẫn 1.3 Đo nhiệt độ cặp nhiệt ngẫu : Dựa nguyên tắc thay đổi sức điện động cặp nhiệt điện thay đổi 1.4 Đo nhiệt độ IC cảm biến Có nhiều IC cảm biến nhiệt độ có sẵn để đơn giản hóa phạm vi rộng thách thức giám sát nhiệt độ Các cảm biến nhiệt độ silicon khác biệt đáng kể với loại đƣợc đề cập vài cách quan trọng Đầu tiên phạm vi nhiệt độ hoạt động IC cảm biến nhiệt độ hoạt động phạm vi nhiệt độ danh nghĩa từ -55 ° C đến + 150 ° C 1.5 Đo nhiệt độ phƣơng pháp không tiếp xúc Sử dụng thiết bị đo nhiệt độ từ xa (thƣờng gọi súng đo nhiệt độ hồng ngoại hay súng hồng ngoại) Bảng : So sánh ưu điểm nhược điểm phương pháp đo nhiệt độ Stt Tên phƣơng pháp Nhiệt điện trở Ƣu điểm ổn định , xác , tuyến tính so với cặp nhiệt ngẫu Nhƣợc điểm Đắt tiền Cần phải cung cấp nguồn dòng Điện trở tuyệt đối thấp Cặp nhiệt ngẫu Là thành phần tích cực cung cấp cơng suất Đơn giản rẻ Tầm thay đổi rộng Phi tuyến Điện áp cung cấp thấp Đòi hỏi điện áp tham chiếu Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đoàn Lê Anh Tầm đo nhiệt độ Kém ổn định rộng Kém nhạy IC cảm biến Tuyến tính Ngõ có giá trị cao Rẻ tiền Đo nhiệt độ Ttầm đo nhiệt độ phƣơng pháp không rộng tiếp xúc Nhiệt độ đo thấp Cần cung cấp nguồn dòng cho cảm biến Ccấu tạo phức tạp Một số phƣơng pháp đo độ ẩm thông dụng Xác định độ ẩm đóng vai trị quan trọng sống nhằm đảm bảo môi trƣờng bảo quản tốt cho loại vật liệu, vật dụng, hàng hóa…trong ngành cơng nghiệp chế biến thí nghiệm Cùng điểm danh qua phƣơng pháp xác định độ ẩm thông dụng 2.1 Phƣơng pháp sấy khô - Ứng dụng: Xác định độ ẩm bánh kẹo, loại bột… - Dụng cụ: Cân sấy ẩm - Cách thực hiện: + Chỉnh bàn cân cho bọt thủy tâm để cân xác + Cho mẫu vật lên cân đến đạt khối lƣợng cần phân tích độ ẩm + Chọn chế độ đo, thời gian nhiệt độ sấy cần thiết mẫu (100 độ đến 105 độ C) + Cân sấy ẩm sấy vật liệu, sau tự tính tốn phần tram độ ẩm mẫu sau sấy + Kết độ ẩm mẫu sau sấy đƣợc hiển thị hình - Ƣu điểm: Kết đo độ ẩm xác, sai số thấp, cân xác khơi lƣợng mẫu, thiết kế nhỏ gọn, dễ sử dụng, tiết kiệm thời gian -Nhƣợc điểm: Chỉ thích hợp khối lƣợng mẫu đo nhỏ, phải chuẩn bị mẫu trƣớc đo, mẫu sau đo xong không sử dụng đƣợc 2.2 Phƣơng pháp điện trở -Ứng dụng: Đo độ ẩm gỗ, vật liệu xây dựng… Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đoàn Lê Anh -Dụng cụ: Máy đo độ ẩm gỗ, vật liệu xây dựng - Cách thực hiện: + Cắm chọc đầu cắm điện trực tiếp vào vùng mẫu muốn đo + Kết đo hiển thị hình -Ƣu điểm: Nhỏ gọn, dễ sử dụng lúc nơi đo độ ẩm thao tác, không tốn thời gian chuẩn bị mẫu - Nhƣợc điểm: Phải đo nhiều lần nhiều vị trí khác để có giá trị trung bình nên làm hỏng mẫu đo 2.3 Đo độ ẩm máy đo có đầu dò - Ứng dụng: Xác định độ ẩm giấy hay vật liệu mỏng - Dụng cụ: Máy đo độ ẩm giấy - Cách thực hiện: + Khởi động máy đo, áp đầu dò máy vào bề mặt giấy + Kết đo hiển thị hình điện tử -Ƣu điểm: Nhỏ gọn, dễ sử dụng, tiện lợi việc khảo sát độ ẩm giấy kho, đo trực tiếp mẫu không làm hƣ hại đến mẫu -Nhƣợc điểm: Thiết kế chuyên biệt để đo giấy 2.4 Phƣơng pháp nguyên lí điện trở -Ứng dụng: Đo độ ẩm ngũ cốc, loại hạt - Dụng cụ: Máy đo độ ẩm hạt cầm tay (điện trở nằm ngồi), máy có điện trở nằm buồng phân tích mẫu - Cách thực hiện: + Với máy đo độ ẩm hạt cầm tay: Cắm chọc đầu cắm điện trực tiếp vào vùng mẫu muốn đo Kết đo hiển thị hình + Với loại có buồng chứa mẫu: Chuẩn bị mẫu => Cho mẫu vào buồng/khay chƣa mẫu bấm nút “Start” => Kết hiển thị hình sau vài giây phân tích - Ƣu điểm: Kết đo nhanh, thao tác ít, dễ sử dụng không làm hƣ hại đến mẫu Máy đo có buồng chứa mẫu có chế độ đo ẩm cho loại hạt chuyên biệt -Nhƣợc điểm: + Máy đo ẩm dạng que nhọn cho kết xác đo loại hạt to Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đoàn Lê Anh + Máy đo ẩm có buồng chứa mẫu có kích thƣớc khơng đƣợc nhỏ gọn 2.5 Phƣơng pháp khúc xạ ánh sáng - Ứng dụng: Đo độ ẩm mật ong - Dụng cụ: Khúc xạ kế - Cách thực hiện: + Đối với khúc xạ kế loại cơ, nhỏ vài giọt mẫu lên bề mặt lăng kính, đậy nắp lăng kính cho khối lƣợng mẫu tràn bề mặt lăng kính Đặt khúc xạ kế ngang tầm mắt đọc kết thơng qua thị kính + Đối với khúc xạ kế loại điện tử: cho vài giọt mẫu lên lăng kính bấm phím “Start” kết hiển thị sau vài giây hình điện tử -Ƣu điểm: Dễ sử dụng, cho kết nhanh, nhỏ gọn bỏ túi -Nhƣợc điểm: Vì khúc xạ kế nên phụ thuộc nhiều vào nguồn sáng 2.6 Phƣơng pháp điện trở - Ứng dụng: Đo độ ẩm đất - Dụng cụ: Máy đo pH độ ẩm đất Takemura DM 15 - Cách thực hiện: + Cắm đầu đo máy vào nơi đất cần đo cho đất ngập vòng kim loại + Ấn giữ phím màu trắng thân máy để đọc phần trăm độ ẩm hình thả tay muốn đọc số pH - Ƣu điểm: nhỏ gọn, tiện lợi, dễ sử dụng, giá thành thấp - Nhƣợc điểm: Phải đo nhiều lần nhiều vị trí khác khoảng mét vng để tính độ ẩm độ pH trung bình 2.7 Đo độ ẩm khơng khí - Ứng dụng: Đo độ ẩm khơng khí - Dụng cụ: Ẩm kế điện tử loại treo tƣờng /cầm tay, máy đo độ ẩm có đầu dò rời - Cách thực hiện: + Ẩm kế điện tử loại treo tƣờng dùng để xác định độ ẩm cách liên tục kho chứa, nhà máy, xí nghiệp, văn phịng nhà + Ẩm kế điện tử loại cầm tay máy đo độ ẩm có đầu dị rời dùng để khảo sát độ ẩm trƣờng kho bãi, container… 10 Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đoàn Lê Anh Sơ đồ tổng quan hệ thống Kkhối cảm Kkhối xử lí Kkhối điều trung tâm khiển biến Kkhối nguồn khối hiển thị Khối app blynk ồn hệ thống Giải thích thành phần :  Khối cảm biến mạch thu nhận liệu có chức thu thập thơng số cảm biến , xử lí sau gửi khối xử lí trung tâm  Khối trung tâm xử lí tín hiệu thơng tin từ nhận liệu , điều khiển động , thiết bị nhƣ đƣa liệu lên server  Khối điều khiển cacs mạch điều khiển bao gồm relay để bật tắt động , đèn báo  Khối hiển thị module hiển thị nhƣ lcd , …  Khối bluetool ,app bao gồm liệu lên điện thoại  Khối nguồn đƣợc dùng để cung cấp áp cho hoạt động cho khối lại 11 Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đoàn Lê Anh CHƢƠNG 3: THIẾT KẾ HỆ THỐNG Hoạt động hệ thống Nguyên tắc hoạt động: Các yếu tố cho hệ thống đo nhiệt độ độ ẩm hoạt động: Nhiệt độ môi trƣờng : Độ ẩm môi trƣờng: Khảo sát vẽ lƣu đồ thuật toán Bài toán đặt -thu thập thông tin nhiệt độ , độ ầm môi trƣờng -truyền liệu thu đƣợc đến ngƣời quản lý -điều khiển cánh quạt theo nhiệt độ độ ẩm thông qua app blynk -Hiển thị trực tiếp nhiệt độ , độ ẩm hình LCD đồng thời app blynk -nguồn lƣợng để trì hoạt động hệ thống Lƣu đồ thuật toán hệ thống 74 Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đoàn Lê Anh Giải pháp thực  Thiết bị công nghệ 75 Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đồn Lê Anh Hình 3.1 Các thiết bị module sử dụng hệ thống Nhiệm vụ khối  Khối thu thập liệu  DHT11 : thu thâp nhiệt độ , độ ẩm từ môi trƣờng  Khối xử lý Arduino mega : nhận thông tin gửi từ khối thu thập liệu , từ thực cộng việc sau:  Đƣa thơng tin nhiệt độ , độ ẩm lên hình lcd  Thực bật tắt đèn led  Thực bật tắt quạt tùy theo nhiệt độ  Truyền thông tin nhiệt độ độ ẩm theo chuẩn giao tiếp UART đến NodeMcu  Khối truyền dẫn: Node MCU  Nhận thơng tin nhiệt độ độ ẩm sau gửi lên App blynk  Thực điều khiển cánh quạt từ app Quạt tản nhiệt: Thực việc quay theo tín hiệu nhiệt độ độ đo đƣợc từ cảm biến trực tiếp công tắc  Khối hiển thị  Màn hình LCD hiển thị thơng tin nhiệt độ, độ ẩm giúp ngƣời quản lý theo dõi trục tiếp hệ thống 76 Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển  GVHD: TS Đoàn Lê Anh Khối nguồn :  Hệ thống sử dụng nguồn adapter để trì hoạt động Nguồn điện lấy từ điện 220v chuyển thành nguồn 5vdc điều khiển cánh quạt nguồn nuôi cho arduino Bảng liệt kê linh kiện Tên linh kiện Arduino Mega 2560 Esp8266 DHT11 QUạt tản nhiệt 5vdc LCD 16x02 I2C lcd Số lƣợng 1 1 1 Module relay kênh 5vdc Test board Bìa fomex Nguồn adapter 5vdc Led đơn Dây nối đực đực 20 Dây nối đực -cái 20 Thiết kế phần cứng cho hệ thống Hệ thống đƣợc lắp đặt hộp làm bìa fomex với kích thƣớc 22x15x10 Các jack cổng com có nhiệm vụ cấp nguồn kết nối với hệ thống 77 Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đoàn Lê Anh Hình 3.2 Hệ thống lắp đặt hộp điều khiển Hình 3.3 Hình ảnh tồn hệ thống đo nhiệt độ độ ẩm hoàn thiện 78 Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đoàn Lê Anh Giám sát nhiệt độ độ ẩm mơ hình thực tế Hình 3.4 Nhiệt độ độ ẩm hiển thị lên LCD Giao diện giám sát thơng qua app blynk Hình 3.2 Kết nhiệt độ , độ ẩm hiển thị lên app 79 Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đoàn Lê Anh Chƣơng trình cho hệ thống 5.1 Viết chƣơng trình code cho arduio mega  Code chƣơng trình giám sát nhiệt độ độ ẩm hiển thị lên lcd điều khiển quạt // goi cac thu vien #include #include #include #include "DHT.h" LiquidCrystal_I2C lcd(0x27, 16, 2); // 0x27 la dia chi man hinh i2c 16 la so cot ,2 la so hang SoftwareSerial nodemcu(2,3);//tx-2, rx-3 #define RELAY_FAN_PIN A7 const int DHTPIN = ; //Đọc liệu từ DHT11 chân mạch Arduino const int DHTTYPE = DHT11; //khai bao loai cam bien su dung la dht11 const int TEMP_THRESHOLD_UPPER = 35; // nguong len cua nhiet do, ban co the thay doi gia tri const int TEMP_THRESHOLD_LOWER = 33; // nguong xuong cua nhiet do, ban co the thay doi gia tri DHT dht(DHTPIN, DHTTYPE); //cau hinh chan dht int sdata1 = 0; int sdata2 = 0; int sdata3 = 0; int led_do =6 ; int led_xanh = 5; String cdata; void setup() { Serial.begin(9600); dht.begin(); // Khởi động cảm biến 80 Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đoàn Lê Anh pinMode(RELAY_FAN_PIN, OUTPUT); nodemcu.begin(9600); lcd.init(); // khoi dong man hinh lcd.backlight(); // bat den nen pinMode(led_do , OUTPUT); pinMode(led_xanh , OUTPUT); } void loop() { delay(2000); float h = dht.readHumidity(); //Đọc độ ẩm float t = dht.readTemperature(); //Đọc nhiệt độ Serial.print("Nhiet do: "); Serial.println(t); //Xuất nhiệt độ Serial.print("Do am: "); Serial.println(h); //Xuất độ ẩm if(t > TEMP_THRESHOLD_UPPER){ Serial.println("Quat da duoc bat "); digitalWrite(RELAY_FAN_PIN, HIGH); // turn on digitalWrite(led_do, HIGH); delay(100); digitalWrite(led_do, LOW); delay(100); digitalWrite(led_xanh, LOW); } else if(t < TEMP_THRESHOLD_LOWER){ Serial.println("Quat da duoc tat "); digitalWrite(RELAY_FAN_PIN, LOW); // quat bat digitalWrite(led_xanh, HIGH); } 81 Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đoàn Lê Anh cdata = cdata + t+","+h; // comma will be used a delimeter Serial.println(cdata); nodemcu.println(cdata); delay(1000); // delay 1s cdata = ""; /// hien thi nhiet do am len lcd lcd.clear(); // check if any reads failed if (isnan(h) || isnan(t)) { lcd.setCursor(0, 0); lcd.print("Failed"); } else { lcd.setCursor(0, 0); // bat dau in lcd hang dau tien lcd.print("nhiet do: "); // xuat chu nhiet lcd.print(t); // in man hinh nhiet lcd.print((char)223); // in ki tu lcd.print("C"); lcd.setCursor(0, 1); // bat dau in lcd hang thu hai lcd.print("do am: "); lcd.print(h); // in am lcd.print("%"); } } 5.2 Viết code chƣơng trình cho NODEMCU Để sử dụng đƣợc blynk cần phải tải thƣ viện thơng qua Arduino IDE -Chọn Sketch -> Include Library -> Manage Libraries, tìm kiếm blynk install 82 Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đoàn Lê Anh Hình 3.3 Thêm thư viện blynk Hình 3.4 Thêm thư viện DHT11 - Chọn Tool  Board chọn nodemcu 1.0 Hình 3.5 Chọn board nodemcu 1.0  Code chƣơng trình hiển thị lên app blynk thơng qua nodemcu #define BLYNK_PRINT Serial #include #include #include #include char auth[] = "uhk-orQkk_lKiBUt9frFHrcIjbOHZNR7"; //ma auth token cua blynk 83 Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đoàn Lê Anh char ssid[] = "Bat 4G Len"; // ten wifi char pass[] = "0394273969@";//mat khau wifi SimpleTimer timer; // su dung timer String myString; // thơng báo hồn chỉnh từ arduino, bao gồm liệu cảm biến char rdata; //ky tu da nhan int firstVal, secondVal,thirdVal; // cam bien void myTimerEvent() { // gan du lieu vao bien virtual de hien thi len blynk Blynk.virtualWrite(V1, millis() / 1000); } void setup() { // Debug console Serial.begin(9600); // mo serial Blynk.begin(auth, ssid, pass); //ket noi voi blynk timer.setInterval(1000L,sensorvalue1); //1s doc cam bien lan timer.setInterval(1000L,sensorvalue2); } void loop() { if (Serial.available() == ) { Blynk.run(); //chay blynk timer.run(); // chay simpletimer } if (Serial.available() > ) { 84 Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đoàn Lê Anh rdata = Serial.read(); myString = myString+ rdata; // Serial.print(rdata); if( rdata == '\n') { String t = getValue(myString, ',', 0); String h = getValue(myString, ',', 1); String n = getValue(myString, ',', 2); firstVal = t.toInt(); secondVal = h.toInt(); thirdVal = n.toInt(); myString = ""; // end new code } } } void sensorvalue1() { int sdata = firstVal; Blynk.virtualWrite(V2, sdata); } void sensorvalue2() { int sdata = secondVal; Blynk.virtualWrite(V3, sdata); } String getValue(String data, char separator, int index) { int found = 0; int strIndex[] = { 0, -1 }; 85 Đại Học Sƣ Phạm Kỹ Thuật Lớp HP:221DAVDKCDT02 Đồ Án Vi Điều Khiển GVHD: TS Đoàn Lê Anh int maxIndex = data.length() - 1; for (int i = 0; i

Ngày đăng: 03/07/2023, 15:28

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

TÀI LIỆU LIÊN QUAN

w