THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN THIẾT BỊ VÀ GIÁM SÁT NHIỆT độ VÀ độ ẩm CHO NHÀ THÔNG MINH

53 7 0
THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN THIẾT BỊ VÀ GIÁM SÁT NHIỆT độ VÀ độ ẩm CHO NHÀ THÔNG MINH

Đ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

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐIỆN TỬ - VIỄN THÔNG BÁO CÁO KỸ THUẬT VI XỬ LÝ Đề tài: THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN THIẾT BỊ VÀ GIÁM SÁT NHIỆT ĐỘ VÀ ĐỘ ẨM CHO NHÀ THÔNG MINH Giảng viên hướng dẫn: TS Hàn Huy Dũng Nhóm sinh viên : Ngơ Gia Hải 20183729 Đồn Ngọc Phú 20180153 Vũ Ngọc Tú 20182852 Đỗ Văn Đại 20181865 Lê Hoàng Lân 20183940 Hà Nội, tháng năm 2021 MỤC LỤC DANH MỤC HÌNH VẼ iii DANH MỤC BẢNG BIỂU iv LỜI NÓI ĐẦU v CHƯƠNG GIỚI THIỆU 1.1 Đặt vấn đề 1.2 Mục tiêu nghiên cứu 1.3 Phương pháp nghiên cứu 1.4 Phạm vi nghiên cứu 1.5 Lập kế hoạch phân công nhiệm vụ 1.5.1 Phân tích nhân lực 1.5.2 Lập kế hoạch phân chia nhiệm vụ CHƯƠNG YÊU CẦU HỆ THỐNG 2.1 Mô tả hoạt động hệ thống 2.2 Yêu cầu chức 2.3 Yêu cầu phi chức CHƯƠNG THIẾT KẾ HỆ THỐNG 3.1 Sơ đồ khối hệ thống 3.2 Chi tiết khối hệ thống 3.2.1 Khối cảm biến 3.2.2 Khối điều khiển 3.2.3 Khối đóng ngắt tải 11 3.2.4 Khối nguồn 12 3.2.5 Khối hiển thị 13 3.3 Sơ đồ nguyên lý 15 3.4 Thiết kế chương trình 16 3.4.1 Khai báo thư viện hằng, biến 16 i 3.4.2 Hàm khởi tạo setup 18 3.4.3 Vòng lặp loop 19 3.4.4 Các hàm đọc, gửi liệu điều khiển 19 3.4.5 Hàm điều khiển bật tắt thiết bị phím bấm App Blynk 19 3.4.6 Hàm điều khiển tự động bật tắt thiết bị 20 3.5 Tạo giao diện App Blynk 21 3.6 Thiết kế mạch in 23 3.6.1 Danh sách linh kiện sử dụng 23 3.6.2 Mạch in 25 CHƯƠNG KẾT QUẢ THỰC NGHIỆM 27 4.1 Test số chức 27 4.1.1 Test chức đọc giá trị nhiệt độ, độ ẩm gửi lên Blynk 27 4.1.2 Test chức đăng bật tắt thiết bị thiết bị App 28 4.1.3 Test chế độ điều khiển tự động 29 4.1.4 Test mạch kích relay Proteus 30 4.2 Chạy thử hệ thống 31 4.2.1 Kết 31 4.2.2 Nhận xét 32 KẾT LUẬN 34 TÀI LIỆU THAM KHẢO 35 PHỤ LỤC 36 Phụ lục Sơ đồ chân Module ESP8266 V1 giải thích 36 Phụ lục Mã nguồn chương trình 40 ii DANH MỤC HÌNH VẼ Hình 3.1 Sơ đồ khối hệ thống Hình 3.2 Hai kiểu cảm biến DHT11 thị trường Hình 3.3 ESP32 Dev kit V1 10 Hình 3.4 NodeMCU ESP8266 10 Hình 3.5 Relay Songle SLA 6P 11 Hình 3.6 Relay Songle SRD 5P 11 Hình 3.7 Sơ đồ khối Relay 12 Hình 3.8 Adapter nguồn 5V-1A .13 Hình 3.9 Các thành phần Blynk 14 Hình 3.10 Sơ đồ nguyên lý mạch 15 Hình 3.11 Giao diện người dùng App Blynk 23 Hình 3.12 Mạch in dạng 2D 25 Hình 3.13 Mạch in dạng 3D 26 Hình 4.1 Dữ liệu nhiệt độ độ ẩm từ cảm biến DHT11 .27 Hình 4.2 Hiển thị nhiệt độ độ ẩm App Blynk 28 Hình 4.3 Bật tắt thiết bị App Blynk 28 Hình 4.4 Chế độ điều khiển tự động 29 Hình 4.5 Mơ mạch kích relay Proteus 30 Hình 4.6 Nạp chương trình cho ESP8266 .31 Hình 4.7 Giao diện App Blynk hoàn chỉnh 32 Hình 0.1 Sơ đồ chân ESP8266 V1 36 iii DANH MỤC BẢNG BIỂU Bảng 1.1 Bảng phân tích nhân lực Bảng 1.2 Phân chia công việc theo thành viên Bảng 2.1 Các thông số yêu cầu chế độ điều khiển tự động .6 Bảng 3.1 Bảng so sánh cảm biến DHT11 DHT22 Bảng 3.2 Bảng so sánh vi điều khiển ESP32 ESP8266 10 Bảng 3.3 Bảng so sánh loại Relay 11 Bảng 3.4 Năng lượng tiêu thụ cho linh kiện mạch 12 Bảng 3.5 Danh sách bảng giá linh kiện 23 Bảng 0.1 Bảng số GPIO 36 iv LỜI NÓI ĐẦU Trong xu phát triển nay, với bùng nổ ngành công nghệ thông tin, điện tử, tự động hóa, … Đã làm cho đời sống người ngày hoàn thiện Các thiết bị tự động hóa ngày xâm lấn vào sản xuất chí vào sống sinh hoạt hàng ngày người Do ngơi nhà thơng minh giám sát điều khiển từ xa trở thành thực Là sinh viên viện Điện tử viễn thông, kiến thức học mong muốn thiết kế mơ hình nhà tự động hóa đáp ứng nhu cầu sinh hoạt hàng ngày Nhóm em mạnh dạn chọn “Thiết kế mạch điều khiển thiết bị giám sát nhiệt độ, độ ẩm qua internet” làm đề tài cho tập lớn môn học Kỹ thuật vi xử lý [1] Trong trình thực đồ án mình, hướng dẫn thầy HÀN HUY DŨNG, chúng em cố gắng để hoàn thiện cách tốt Nhưng với kiến thức hiểu biết có hạn nên khơng tránh khỏi thiếu sót mong thầy bạn đóng góp ý kiến đề tài nhóm em hoàn thiện v CHƯƠNG GIỚI THIỆU 1.1 Đặt vấn đề Hiện với phát triển xã hội, sống ngày nâng cao việc áp dụng công nghệ khoa học kỹ thuật vào đời sống công việc cần thiết Cùng với phát triển ngành khoa học kỹ thuật, cơng nghệ kỹ thuật điện tử mà đặc biệt kỹ thuật điều khiển tự động đóng vai trò quan trọng lĩnh vực đời sống khoa học kỹ thuật, quản lý, công nghiêp, nông nghiệp, đời sống, quản lý thông tin Trong thời kỳ phát triển nay, điện thoại di động thiết bị khơng thể thiếu sống Ngồi chức nghe nhận gọi, nhắn tin, xem phim, chơi game, chụp ảnh… điện thoại cịn có khả giám sát điều khiển thiết bị từ khoảng cách xa thông qua kết nối Internet/Wifi [2] Từ nhu cầu thực tế cần có thiết bị điều khiển, giám sát nhiệt độ độ ẩm gia đình, phịng máy chủ, trung tâm liệu, kho liệu, tủ lạnh vắc xin, tủ lạnh thực phẩm, nhà kính… điện thoại di động, thông qua Module Wifi Esp8266 Từ đó, có tính linh động cao, cập nhật liệu 24/24h nhằm tăng hiệu quản lý [2] Bên cạnh với xuất Arduino vào năm 2005 Italia góp phần khơng nhỏ cho kinh tế tự động hóa Sự xuất Arduino hỗ trợ cho người nhiều việc lập trình thiết kế, người bắt đầu tìm tịi vi điều khiển mà khơng có q nhiều kiến thức, hiểu biết sâu sắc vật lý điện tử Phần cứng thiết bị tích hợp nhiều chức mã nguồn mở Ngơn ngữ lập trình lại vô dễ sử dụng chia sẻ miễn phí nên Arduino ngày phổ biến phát triển mạnh mẽ toàn giới [3] Xuất phát từ lý em chọn đề tài: “Thiết kế hệ thống điều khiển thiết bị giám sát nhiệt độ, độ ẩm qua internet” làm đề tài cho tập lớn môn học Kỹ thuật Vi xử lý 1.2 Mục tiêu nghiên cứu Thiết kế hệ thống điều khiển thiết bị từ xa hiển thị nhiệt độ, độ ẩm điện thoại di động thông qua Module Wifi ESP8266 1.3 Phương pháp nghiên cứu Trong đề tài em sử dụng phương pháp nghiên cứu: Phương pháp nghiên cứu lí thuyết: tìm hiểu khái niệm, cấu tạo,nguyên lý hoạt động, thông số kĩ thuật, sơ đồ nối chân DHT11 Esp8266 Tìm hiểu cách sử dụng App Blynk, phần mềm Proteus, Altium Arduino IDE Phương pháp nghiên cứu thực nghiệm: thiết kế mạch điều khiển từ xa nhiệt độ độ ẩm điện thoại di động thông qua Module Wifi Esp8266 1.4 Phạm vi nghiên cứu Thiết kế hệ thống điều khiển thiết bị từ xa hiển thị nhiệt độ, độ ẩm điện thoại di động thông qua Module Wifi ESP8266 1.5 Lập kế hoạch phân cơng nhiệm vụ 1.5.1 Phân tích nhân lực Để hồn thành project hồn chỉnh nhất, nhóm thực phân tích điểm mạnh, điểm yếu thành viên nhóm làm phân chia công việc cách hiệu Bảng 1.1 Bảng phân tích nhân lực Điểm mạnh STT Họ tên Điểm yếu Ngô Gia Hải - Điện tử tương tự Lập trình Arduino Thiết kế mạch Layout PCB - Điện tử số Hạn chế thời gian Đoàn Phú - Lập trình C Lập trình Arduino Teamwork tốt - Layout PCB Ngọc Vũ Ngọc Tú - Đỗ Văn Đại - Lê Hoàng Lân - Điện tử tương tự Từng làm việc với arduino Layout PCB - Điện tử số Lập trình C++ Thiết kế mạch Đọc tài liệu tiếng Anh tốt Lập trình Arduino, C++ - Layout PCB Đọc tài liệu tiếng Anh tốt Lập trình Arduino, C++ Teamwork tốt - Layout PCB Thiết kế mạch Căn vào bảng 1.1 phân tích nhân lực trên, với việc phân tích cơng việc cần phải làm, nhóm phân chia cụ thể cơng việc cho thành viên 1.5.2 Lập kế hoạch phân chia nhiệm vụ Bảng 1.2 Phân chia công việc theo thành viên Nhóm cơng việc Cơng việc cụ thể Nhân lực Thời gian Phân tích Tìm hiểu thị trường, sản Hải, Phú, Tú, 3/5 - 9/5 đề tài phẩm có Lân, Đại Định hướng sản phẩm, đưa Hải, Phú, Tú mơ hình giải tốn Hải, Lân, Đại Phân tích yêu cầu Thiết kế Đưa sơ đồ khối phần cứng 10/5 - 6/5 10/5 - 16/5 Hải, Phú, Tú, 17/5 - 23/5 Lân, Đại Phân tích khối lựa Phú, Tú, Lân, 17/5 - 23/5 chọn giải pháp, linh kiện Đại Vẽ mạch nguyên lý mô Hải, Phú, Tú 24/5 - 29/5 Thiết kế thư viện linh Hải, Tú kiện mạch in 31/5 - 6/6 Thiết kế Viết chương trình cho hệ Phú, Tú, Lân, 24/5 - 6/6 phần mềm thống Đại Thiết kế giao diện App Blynk Phú, Tú, Lân, 6/6 - 13/6 Đại Hoàn thiện Chạy thử chương trình hệ Hải, Phú, Tú sản phẩm thống Làm mạch in chạy thử Hải Đo đạc, kiểm tra đánh giá sản Hải, Lân, Đại phẩm 14/6 - 20/6 14/6 - 20/6 20/6 - 27/6 Dựa kế hoạch lập bảng 1.2, nhóm họp hàng tuần trao đổi công việc cụ thể để q trình làm việc nhóm hiệu 33 KẾT LUẬN Việc thiết kế hệ thống điều khiển thiết bị giám sát nhiệt độ, độ ẩm từ xa qua internet ứng dụng đời sống xã hội cơng nghiệp Ngồi ra, module wifi kết hợp với Arduino mở nhiều hướng ứng dụng khác, phục vụ tốt cho việc học tập nghiên cứu sinh viên Việc xây dựng hệ thống giám sát nhiệt độ, độ ẩm từ xa qua internet liên quan đến nhiều tảng kiến thức từ kiến thức lý thuyết kiến thức thực tiễn [1] Hướng phát triển đề tài Trong thời gian tới, nhóm em tiếp tục nghiên cứu phát triển đề tài theo hướng sau đây: - Tăng tính xác ổn định - Giám sát nhiệt độ độ ẩm điều khiển thiết bị qua web sever điều khiển máy tính điện thoại - Tích hợp nhiều cảm biến phù hợp với nhiều đối tượng người dùng để phục vụ cho sống phục vụ công nghiệp - Thêm điều khiển nút nhấn cảm ứng, sử dụng xử lý ngắt (Interupt) - Hiển thị nhiệt độ, độ ẩm hình LCD 34 TÀI LIỆU THAM KHẢO [1] Nhóm sinh viên, Thiết kế hệ thống giám sát nhiệt độ bà độ ẩm ESP8266 NODEMCU Đại học Công Nghiệp Hà Nội, Hà Nội, 2018 [2] Nguyễn Thị Kim Anh, Điều khiển thiết bị qua module ESP8266 Đại học Huế, Đại học Sư Phạm khoa Vật lý, Huế, 2018 [3] Mesquita, J., Guimaraes, D., Pereira, C., Santos, F., & Almeida, L (2018) Assessing the ESP8266 WiFi module for the Internet of Things IEEE 23rd International Conference on Emerging Technologies and Factory Automation (ETFA), 2018 [4] Shakthidhar, S., Srikrishnan, P., Santhosh, S., & Sandhya, M K (2019) Arduino and NodeMcu based Ingenious Household Objects Monitoring and Control Environment Fifth International Conference on Science Technology Engineering and Mathematics (ICONSTEM), 2019 [5] Esp8266 kết nối internet phần 1, truy cập ngày 12/6/2021, http://arduino.vn/bai-viet/1496-esp8266-ket-noi-internet-phan-1-cai-datesp8266-lam-mot-socket-client-ket-noi-toi [6] Arduino – tảng việc điều khiển tự động, truy cập ngày 12/6/2021, http://blog.siliconstraits.vn/arduino-nen-tang-moi-trong-viec-dieu-khien-tudong/ [7] Giới thiệu cảm biến nhiệt độ độ ẩm DHT11 Và Code Giao Tiếp, http://blog.siliconstraits.vn/arduino-nen-tang-moi-trong-viec-dieu-khien-tudong/ 35 PHỤ LỤC Phụ lục Sơ đồ chân Module ESP8266 V1 giải thích Hình 0.1 Sơ đồ chân ESP8266 V1 Một điều quan trọng cần lưu ý ESP8266 số GPIO không khớp với nhãn lụa bo mạch Ví dụ, D0 tương ứng với GPIO16 D1 tương ứng với GPIO5 Bảng bên cho thấy tương ứng nhãn lụa số GPIO chân tốt để sử dụng mạch chân cần phải thận trọng Bảng 0.1 Bảng số GPIO Nhãn GPIO Đầu vào Đầu Ghi D0 không GPIO16 gián đoạn không hỗ MỨC CAO khởi động trợ PWM I2C Sử dụng để đánh thức ngủ sâu D1 GPIO5 OK OK thường sử dụng SCL (I2C) D2 GPIO4 OK OK thường sử dụng SDA (I2C) 36 D3 GPIO0 kéo lên OK kết nối với nút FLASH, khởi động không thành công kéo MỨC THẤP MỨC CAO khởi động D4 GPIO2 Kéo lên OK kết nối với đèn LED bo mạch, khởi động không thành công kéo MỨC THẤP D5 GPIO14 OK OK SPI (SCLK) D6 GPIO12 OK OK SPI (MISO) D7 GPIO13 OK OK SPI (MOSI) D8 GPIO15 RX GPIO3 OK TX Chân GPIO1 TX A0 ADC0 kéo đến OK GND SPI (CS) Khởi động không thành công kéo MỨC CAO Chân RX MỨC CAO khởi động MỨC CAO khởi động OK đầu gỡ lỗi khởi động, khởi động không thành công kéo MỨC THẤP Đầu vào X analog GPIO kết nối với Chip Flash GPIO6 đến GPIO11 thường kết nối với chip flash bo mạch ESP8266 Vì vậy, chân khơng khuyến khích sử dụng Chân sử dụng khởi động ESP8266 bị ngăn không cho khởi động số chân kéo MỨC THẤP MỨC CAO Danh sách sau cho thấy trạng thái chân khởi động: • GPIO16: chân mức cao khởi động • GPIO0: lỗi khởi động kéo mức thấp • GPIO2: chân mức cao khởi động, không khởi động kéo mức thấp • GPIO15: lỗi khởi động kéo mức cao 37 • GPIO3: chân mức cao khởi động • GPIO1: chân mức cao khởi động, không khởi động kéo mức thấp • GPIO10: chân mức cao khởi động • GPIO9: chân mức cao khởi động Chân mức cao khởi động Có số chân xuất tín hiệu 3.3V ESP8266 khởi động Điều vấn đề cần phải quan tâm bạn có relay thiết bị ngoại vi khác kết nối với GPIO Các GPIO sau xuất tín hiệu mức cao khởi động: • GPIO16 • GPIO3 • GPIO1 • GPIO10 • GPIO9 Ngồi ra, GPIO khác, ngoại trừ GPIO5 GPIO4, xuất tín hiệu điện áp thấp khởi động, có vấn đề chúng kết nối với transistor relay Đầu vào analog ESP8266 hỗ trợ đọc analog GPIO GPIO gọi ADC0 thường đánh dấu lụa A0 Điện áp đầu vào tối đa chân ADC0 đến 1V bạn sử dụng chip trần ESP8266 Nếu bạn sử dụng bo phát triển ESP8266 12-E NodeMCU, dải điện áp đầu vào đến 3,3V bo có chia điện áp bên Đèn LED bo mạch Hầu hết bo phát triển ESP8266 có đèn LED tích hợp Đèn LED thường kết nối với GPIO2 Đèn LED hoạt động với logic ngược Gửi tín hiệu CAO để tắt tín hiệu THẤP để bật Chân RST Khi chân RST kéo THẤP, ESP8266 reset Thao tác giống nhấn nút reset bo mạch 38 GPIO0 Khi GPIO0 kéo THẤP, đặt ESP8266 vào chế độ nạp khởi động Thao tác giống nhấn nút FLASH / BOOT bo mạch GPIO16 GPIO16 sử dụng để đánh thức ESP8266 khỏi chế độ ngủ sâu Để đánh thức ESP8266 khỏi chế độ ngủ sâu, GPIO16 phải kết nối với chân RST I2C ESP8266 chân I2C phần cứng, triển khai phần mềm Vì vậy, bạn sử dụng GPIO làm I2C Thông thường, GPIO sau sử dụng làm chân I2C: • GPIO5: SCL • GPIO4: SDA SPI Các chân sử dụng làm SPI ESP8266 là: • GPIO12: MISO • GPIO13: MOSI • GPIO14: SCLK • GPIO15: CS Các chân PWM ESP8266 cho phép phần mềm PWM tất chân I / O: GPIO0 đến GPIO16 Tín hiệu PWM ESP8266 có độ phân giải 10-bit Chân ngắt ESP8266 hỗ trợ chân ngắt GPIO nào, ngoại trừ GPIO16 39 Phụ lục Mã nguồn chương trình #define BLYNK_PRINT Serial #include #include #include #include #define DHTPIN 13 #define DHTTYPE DHT11 #define LAMP1_PIN #define LAMP2_PIN #define LAMP3_PIN #define LAMP4_PIN #define FAN_PIN 14 #define HEATER_PIN 12 int VIRTUAL_PIN_1; int VIRTUAL_PIN_2; int VIRTUAL_PIN_3; int VIRTUAL_PIN_4; int VIRTUAL_PIN_5; int VIRTUAL_PIN_6; int VIRTUAL_PIN_7; int VIRTUAL_PIN_8; int VIRTUAL_PIN_10; bool n1_isPushOnApp = false; bool n2_isPushOnApp = false; bool n3_isPushOnApp = false; bool n4_isPushOnApp = false; bool n5_isPushOnApp = false; bool n6_isPushOnApp = false; 40 bool n7_isPushOnApp = false; bool n8_isPushOnApp = false; bool n10_isPushOnApp = false; char auth[] AuthToken = "5rr5mu7i_v59RIRcpCPvRjKV6tN21EZi"; char ssid[] = "Wifi_Name"; // Nhập tên WiFi char pass[] = "Pass"; // Nhập password WiFi int humDht = 0; int tempDht = 0; BLYNK_WRITE(V1) { VIRTUAL_PIN_1 = param.asInt(); n1_isPushOnApp = true; } BLYNK_WRITE(V2) { VIRTUAL_PIN_2 = param.asInt(); n2_isPushOnApp = true; } BLYNK_WRITE(V3) { VIRTUAL_PIN_3 = param.asInt(); n3_isPushOnApp = true; } BLYNK_WRITE(V4) { VIRTUAL_PIN_4 = param.asInt(); n4_isPushOnApp = true; } 41 // Nhập BLYNK_WRITE(V5) { VIRTUAL_PIN_5 = param.asInt(); n5_isPushOnApp = true; } BLYNK_WRITE(V6) { VIRTUAL_PIN_6 = param.asInt(); n6_isPushOnApp = true; } BLYNK_WRITE(V7) { VIRTUAL_PIN_7 = param.asInt(); n7_isPushOnApp = true; } BLYNK_WRITE(V8) { VIRTUAL_PIN_8 = param.asInt(); n8_isPushOnApp = true; } BLYNK_WRITE(V10) { VIRTUAL_PIN_10 = param.asInt(); n10_isPushOnApp = true; } DHT dht(DHTPIN, DHTTYPE); SimpleTimer timer; void setup() { 42 // Debug console Serial.begin(115200); pinMode(LAMP1_PIN, OUTPUT); pinMode(LAMP2_PIN, OUTPUT); pinMode(LAMP3_PIN, OUTPUT); pinMode(LAMP4_PIN, OUTPUT); pinMode(FAN_PIN, OUTPUT); pinMode(HEATER_PIN, OUTPUT); digitalWrite(LAMP1_PIN,1); digitalWrite(LAMP2_PIN,1); digitalWrite(LAMP3_PIN,1); digitalWrite(LAMP4_PIN,1); digitalWrite(FAN_PIN,1); digitalWrite(HEATER_PIN,1); dht.begin(); // Bắt đầu đọc liệu Blynk.begin(auth, ssid, pass); timer.setInterval(30000L, getDhtData); timer.setInterval(30000L, sendDhtData); timer.setInterval(100L, ctrlDevices); timer.setInterval(100L, ctrlAllLamp); timer.setInterval(5000L, autoCtrl); } void loop() { Blynk.run(); timer.run(); } void getDhtData(void) { 43 tempDht = dht.readTemperature(); humDht = dht.readHumidity(); } void sendDhtData(void) { Blynk.virtualWrite(V11, tempDht); //Nhiệt độ với pin V10 Blynk.virtualWrite(V12, humDht); // Độ ẩm với pin V11 } void ctrlDevices(void) { if(n1_isPushOnApp) // neu Nut nhan tren App duoc nhan { digitalWrite(LAMP1_PIN, trang thai V1 len LED !(VIRTUAL_PIN_1)); n1_isPushOnApp = false; cap nhat } if(n2_isPushOnApp) { digitalWrite(LAMP2_PIN, !(VIRTUAL_PIN_2)); n2_isPushOnApp = false; } if(n3_isPushOnApp) { digitalWrite(LAMP3_PIN, !(VIRTUAL_PIN_3)); n3_isPushOnApp = false; } if(n4_isPushOnApp) { digitalWrite(LAMP4_PIN, !(VIRTUAL_PIN_4)); 44 //ghi // xoa bien n4_isPushOnApp = false; } if(n7_isPushOnApp) { digitalWrite(FAN_PIN, !(VIRTUAL_PIN_7)); n7_isPushOnApp = false; } if(n8_isPushOnApp) { digitalWrite(HEATER_PIN, !(VIRTUAL_PIN_8)); n8_isPushOnApp = false; } } void ctrlAllLamp(void) { if(n5_isPushOnApp) { digitalWrite(LAMP1_PIN, 0); Blynk.virtualWrite(V1, 1); digitalWrite(LAMP2_PIN, 0); Blynk.virtualWrite(V2, 1); digitalWrite(LAMP3_PIN, 0); Blynk.virtualWrite(V3, 1); digitalWrite(LAMP4_PIN, 0); Blynk.virtualWrite(V4, 1); n5_isPushOnApp = false; } if(n6_isPushOnApp) { 45 digitalWrite(LAMP1_PIN, 1); Blynk.virtualWrite(V1, 0); digitalWrite(LAMP2_PIN, 1); Blynk.virtualWrite(V2, 0); digitalWrite(LAMP3_PIN, 1); Blynk.virtualWrite(V3, 0); digitalWrite(LAMP4_PIN, 1); Blynk.virtualWrite(V4, 0); n6_isPushOnApp = false; } } void autoCtrl(void) { if(VIRTUAL_PIN_10) { if(tempDht >= 25) { digitalWrite(FAN_PIN, 0); Blynk.virtualWrite(V7, 1); } else { digitalWrite(FAN_PIN, 1); Blynk.virtualWrite(V7, 0); } if(tempDht

Ngày đăng: 18/12/2021, 07:31

Mục lục

    DANH MỤC HÌNH VẼ

    DANH MỤC BẢNG BIỂU

    1.2 Mục tiêu nghiên cứu

    1.3 Phương pháp nghiên cứu

    1.4 Phạm vi nghiên cứu

    1.5 Lập kế hoạch và phân công nhiệm vụ

    1.5.1 Phân tích nhân lực

    1.5.2 Lập kế hoạch và phân chia nhiệm vụ

    CHƯƠNG 2. YÊU CẦU HỆ THỐNG

    2.1 Mô tả hoạt động của hệ thống

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

Tài liệu liên quan