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

Thiết kế hệ thống an ninh nhà ở

79 15 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 79
Dung lượng 5,05 MB

Nội dung

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH CƠNG TRÌNH NGHIÊN CỨU KHOA HỌC CỦA SINH VIÊN THIẾT KẾ HỆ THỐNG AN NINH NHÀ Ở S K C 0 9 MÃ SỐ: SV2020-135 S KC 0 Tp Hồ Chí Minh, tháng 07/2020 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐH SƯ PHẠM KỸ THUẬT TPHCM BÁO CÁO TỔNG KẾT ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CỦA SINH VIÊN THIẾT KẾ HỆ THỐNG AN NINH NHÀ Ở SV2020 - 135 Chủ nhiệm đề tài: Đào Ngọc Giang TP Hồ Chí Minh, 07/2020 16119015 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐH SƯ PHẠM KỸ THUẬT TPHCM BÁO CÁO TỔNG KẾT ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CỦA SINH VIÊN THIẾT KẾ HỆ THỐNG AN NINH NHÀ Ở SV2020 - 135 Thuộc nhóm ngành khoa học: Kỹ thuật SV thực hiện: Đào Ngọc Giang Nam, Nữ: Nam Dân tộc: Kinh Lớp, khoa: 16119CLC - Đào tạo Chất Lượng Cao Năm thứ: 4/Số năm đào tạo: Ngành học: Công nghệ kỹ thuật máy tính Người hướng dẫn: ThS Trương Quang Phúc TP Hồ Chí Minh, 07/2020 MỤC LỤC DANH MỤC HÌNH ẢNH DANH MỤC BẢNG BIỂU DANH MỤC NHỮNG TỪ VIẾT TẮT THÔNG TIN KẾT QUẢ NGHIÊN CỨU CỦA ĐỀ TÀI PHẦN MỞ ĐẦU 1 Đặt vấn đề Lý chọn đề tài Mục tiêu đề tài Phương pháp nghiên cứu Đối tượng phạm vi nghiên cứu PHẦN NỘI DUNG CHƯƠNG 1: CƠ SỞ LÝ THUYẾT .3 1.1 Giới thiệu IOT .3 1.1.1 Khái niệm 1.1.2 Cấu phần hệ thống IOT .3 1.1.3 Ứng dụng 1.2 Các chuẩn giao tiếp 1.2.1 SPI .4 1.2.2 UART 1.2.3 I2C 1.3 Các linh kiện sử dụng 1.3.1 Kit phát triển ESP8266 NodeMCU 1.3.2 Màn hình LCD 12 1.3.3 Module I2C LCD .13 1.3.4 Bàn phím keypad 4x4 14 1.3.5 Module Sim800L .15 1.3.6 Module RFID RC522 17 1.3.7 Cảm biến chuyển động PIR HC-SR501 18 1.3.8 Cảm biến lửa 19 1.3.9 Module chuyển nguồn .20 1.3.10 Module hạ áp 21 1.3.11 Động RC servo 9G 22 1.3.12 Buzzer 23 1.4 Phần mềm lập trình Arduino IDE 23 1.4.1 Giới thiệu 23 1.4.2 Các lệnh, hàm Arduino IDE .26 1.5 Giới thiệu ngôn ngữ lập trinh web 28 1.6 Giới thiệu Google Firebase 28 1.6.1 Khái niệm 28 1.6.2 Realtime Database System .29 1.6.3 Tại chọn Google Firebase 29 1.6.4 Tạo sở liệu Google Firebase 30 CHƯƠNG 2: THIẾT KẾ HỆ THỐNG .34 2.1 Phân tích hệ thống 34 2.1.1 Yêu cầu thiết kế .34 2.1.2 Đặc tả hệ thống 34 2.2 Thiết kế sơ lược 34 2.2.1 Sơ đồ khối hệ thống chức khối 34 2.2.2 Mô tả hệ thống 36 2.3 Thiết kế chi tiết khối .37 2.3.1 Khối hiển thị 37 2.3.2 Khối nhập liệu đóng/mở cửa 37 2.3.3 Khối đóng/mở cửa 38 2.3.4 Khối cảm biến 38 2.3.5 Khối thực sms/gọi 39 2.3.6 Khối báo động 39 2.3.7 Khối xử lý trung tâm .39 2.3.8 Khối nguồn .41 2.3.9 Sơ đồ mạch nguyên lý .42 2.4 Thiết kế phần mềm 43 2.4.1 Giải thuật phần mềm cho phần cứng 43 2.4.2 Giao diện website firebase 45 CHƯƠNG 3: KẾT QUẢ NGHIÊN CỨU VÀ ĐÁNH GIÁ 47 3.1 Kết thực 47 3.1.1 Phần cứng .47 3.1.2 Phần mềm 48 3.2 Đánh giá hệ thống 49 3.2.1 Nhận xét 49 3.2.2 Hướng phát triển .50 PHẦN KẾT LUẬN 51 Kết luận 51 Kiến nghị 51 TÀI LIỆU THAM KHẢO PHỤ LỤC DANH MỤC HÌNH ẢNH Hình 1.1: Mơ hình kiến trúc IOT Hình 1.2: Truyền liệu SPI Hình 1.3: Mơ hình kết nối chuẩn I2C .9 Hình 1.4: Kit phát triển ESP8266 NodeMCU 10 Hình 1.5: Sơ đồ chân ESP8266 NodeMCU 11 Hình 1.6: Màn hình LCD 204 .12 Hình 1.7: Module I2C LCD 14 Hình 1.8: Keypad 4x4 14 Hình 1.9: Sơ đồ mạch keypad 4x4 15 Hình 1.10: Module Sim800L 15 Hình 1.11: Sơ đồ chân Sim800L 16 Hình 1.12: Module RFID RC522 18 Hình 1.13: Cảm biến chuyển động PIR HC-SR501 .19 Hình 1.14: Cảm biến lửa .20 Hình 1.15: Mạch chuyển nguồn M350 12VDC 21 Hình 1.16: Module hạ áp LM2596 .21 Hình 1.17: Động RC servo 9G 22 Hình 1.18: Buzzer 5V 23 Hình 1.19: Giao diện phần mềm Arduino IDE 24 Hình 1.20: Các loại board phần mềm hỗ trợ 24 Hình 1.21: Chọn port giao tiếp với phần cứng .25 Hình 1.22: Một số ví dụ 25 Hình 1.23: Quản lý thư viện Arduino IDE hỗ trợ 26 Hình 1.24: Giao diện install thư viện 26 Hình 1.25: Giao diện trang Google Firebase 30 Hình 1.26: Tạo project 31 Hình 1.27: Tạo sở liệu 31 Hình 1.28: Chọn chế độ cho project .32 Hình 1.29: Chọn chế độ lưu trữ liệu 32 Hình 1.30: Giao diện sở liệu Firebase 33 Hình 2.1: Sơ đồ khối hệ thống 35 Hình 2.2: Sơ đồ kết nối keypad 4x4 để đọc giá trị ADC 37 Hình 2.3: Sơ đồ nguyên lý hệ thống 42 Hình 2.4: Lưu đồ giải thuật phần mềm (1/2) 44 Hình 2.5: Lưu đồ giải thuật phần mềm (2/2) 45 Hình 2.6: Realtime Database hệ thống Google Firebase 46 Hình 2.7: Trang web thiết kế 46 Hình 3.1: Mơ hình bên ngồi hệ thống 47 Hình 3.2: Mơ hình bên hệ thống 47 Hình 3.3: Hệ thống thực gọi khẩn cấp 48 Hình 3.4: Hệ thống thực gửi sms khẩn cấp 48 Hình 3.5: Trang web hệ thống 49 DANH MỤC BẢNG BIỂU Bảng 1.1: Chức chân LCD 20x4 13 Bảng 2.1: Giá trị điện trở nút nhấn (đơn vị Ω) 38 Bảng 2.2: Sơ đồ kết nối chân ESP8266 với linh kiện ngoại vi 40 Bảng 2.3: Sơ đồ chân kết nối nguồn 41 DANH MỤC NHỮNG TỪ VIẾT TẮT IOT: Internet of things SPI: Serial Peripheral Interface UART: Universal asynchronous receiver transmitter I2C: Inter-Integrated Circuit LCD: Liquid Crystal Display RFID: Radio Frequency Identification PIR: Passive InfraRed VCC: Voltage common collector GND: Ground DC: Direct Current PWM: Pulse Width Modulation HTML: Hypertext Markup Language CSS: Cascading Style Sheets JS: JavaScript PHỤ LỤC Chương trình lập trình hệ thống esp8266 #include #include #include #include #include #include #include #include #include #include #define SS_PIN D3 #define RST_PIN 10 #define FIREBASE_HOST "testmyled-aa8f7.firebaseio.com" #define FIREBASE_AUTH "gn0qcrclXBS7gVjNSNpOaULUn17H4cssN2kRxhie" #define buzzer #define PIR D0 #define FIRE D4 String pass = "1401"; const String ID_default = "4b91a90d"; LiquidCrystal_I2C lcd(0x27, 20, 4); MFRC522 mfrc522(SS_PIN, RST_PIN); // Create MFRC522 instance Servo sg90; int statuss = 0; int out = 0; bool the = false, chuyenDong = false, coChay = false; int modeBaoTrom = 1; String CardIDs[10]; char *inpt_pass; char *inpt_display; unsigned int soLuongThe; int8_t j = 0; char key[]={'1','2','3','A','4','5','6','B','7','8','9','C','*','0','#','D'}; int adc_value = 0, i=0, threshold = 3, outputValue = 0; // value read from the pot int val_key_adc[] = {990, 900, 830, 773, 935, 860, 799, 749, 910, 840, 783, 730, 875, 812, 762, 713 }; char k ='n'; int baoChay; int baoTrom; // ngat phat hien chay ICACHE_RAM_ATTR void ngatBaoChay() { coChay = true; } // kiem tra the vua quet co danh sach id hay ko bool soSanhThe(String id, String* ArrayID); // kiem tra danh sach id va cap nhat void capNhatThe(); void call(); void send_sms(char *text); void capNhatPass(); void setup() { Serial.begin(9600); pinMode(buzzer, OUTPUT); // cau hinh chan ngat phat hien chay pinMode(FIRE, INPUT); attachInterrupt(digitalPinToInterrupt(FIRE), ngatBaoChay, FALLING); // cau hinh chan ngat phat hien chuyen dong pinMode(PIR, INPUT); sg90.attach(D8); sg90.write(0); SPI.begin(); mfrc522.PCD_Init(); inpt_pass = (char*)malloc(5); inpt_pass = " "; inpt_display = (char*)malloc(5); inpt_display = " "; // dat bien thoi gian de ngung cho ket noi wifi qua lau unsigned long past = millis(); // ket noi voi mang wifi thu if (WiFi.status() != WL_CONNECTED) { past = millis(); WiFi.begin("Ngoc Giang", "14091998"); while (WiFi.status() != WL_CONNECTED) { // cho 30s de ket noi neu khong thi bo qua if (millis() - past > 30000) break; delay(500); } } Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH); delay(300); // kiem tra va lay toan bo id tren firebase vao the soLuongThe = Firebase.getString("tkHTN/soLuong").toInt(); delay(100); for (int i = 0; i < soLuongThe; i++) { String url = "tkHTN/the" + String(i + 1); CardIDs[i] = Firebase.getString(url); delay(100); } // handshake Serial.println("AT"); delay(500); // cau hinh text mode sim Serial.println("AT+CMGF=1"); delay(500); call(); lcd.begin(); lcd.begin(); lcd.backlight(); lcd.print(" Nhap ma de mo cua"); lcd.setCursor(1,1); lcd.print(inpt_pass); } void loop() { capNhatPass(); // thay doi mode bao dong modeBaoTrom = Firebase.getString("tkHTN_baoDong/modeBaoTrom").toInt(); // cap nhat trang thai da bao dong hay chua baoChay = Firebase.getString("tkHTN_baoDong/chay").toInt(); baoTrom = Firebase.getString("tkHTN_baoDong/chuyenDong").toInt(); adc_value = analogRead(A0); if(adc_value > 600){ for (i = 0; i < 16; i++){ if ((adc_value < (val_key_adc[i]+ threshold)) && (adc_value >(val_key_adc[i]- th reshold))){ k = key[i]; inpt_pass[j] = k; j++; lcd.setCursor(1,1); lcd.print(inpt_pass); if (j == 4) { j = 0; if (strcmp(inpt_pass, pass.c_str()) == 0) { Firebase.setString("tkHTN_baoDong/buzzer", "0"); digitalWrite(buzzer, 0); baoChay = 0; baoTrom = 0; coChay = false; chuyenDong = false; sg90.write(90); delay(3000); sg90.write(0); delay(300); } else if (strcmp(inpt_pass, "####") == 0) { Firebase.setString("tkHTN_baoDong/modeBaoTrom", "1"); modeBaoTrom = 1; } lcd.setCursor(1,1); //reset inpt_pass va inpt_display for (int i = 0; i < 4; i++) { inpt_pass[i] = '_'; inpt_display[i] = '_'; } lcd.print(inpt_pass); } } } delay(100); k = 'z'; } // neu co chay va chua bao dong if (coChay && baoChay == 0) { Firebase.setString("tkHTN_baoDong/chay", "1"); Firebase.setString("tkHTN_baoDong/buzzer", "1"); baoChay = 1; digitalWrite(buzzer, 1); call(); send_sms("phat hien chay"); } // neu co chuyen dong va chua bao dong if (modeBaoTrom && digitalRead(PIR)) chuyenDong = true; if (chuyenDong && baoTrom == 0) { Firebase.setString("tkHTN_baoDong/chuyenDong", "1"); Firebase.setString("tkHTN_baoDong/buzzer", "1"); baoTrom = 1; digitalWrite(buzzer, 1); call(); send_sms("phat hien chuyen dong"); } // dieu kien de tat buzzer if (Firebase.getString("tkHTN_baoDong/buzzer").toInt() == 0) { digitalWrite(buzzer, 0); Firebase.setString("tkHTN_baoDong/chay", "0"); Firebase.setString("tkHTN_baoDong/chuyenDong", "0"); baoChay = 0; baoTrom = 0; coChay = false; chuyenDong = false; } // kiem tra co the quet qua if ( ! mfrc522.PICC_IsNewCardPresent()) { return; } // Select one of the cards if ( ! mfrc522.PICC_ReadCardSerial()) { return; } //neu co the quet qua chay lay id va kiem tra id String content= ""; for (byte i = 0; i < mfrc522.uid.size; i++) { content.concat(String(mfrc522.uid.uidByte[i] < 0x10 ? "0" : "")); content.concat(String(mfrc522.uid.uidByte[i], HEX)); } capNhatThe(); bool a = soSanhThe(content, CardIDs); } bool soSanhThe(String id, String *ArrayID) { // so sanh vs id mac dinh if (ID_default.compareTo(id) == 0) { Firebase.setString("tkHTN_baoDong/buzzer", "0"); digitalWrite(buzzer, 0); baoChay = 0; baoTrom = 0; coChay = false; chuyenDong = false; sg90.write(90); delay(3000); sg90.write(0); delay(300); return true; } for (int i = 0; i < soLuongThe; i++) { if (ArrayID[i].compareTo(id) == 0) { // neu dung thi mo cua va tat bao dong Firebase.setString("tkHTN_baoDong/buzzer", "0"); digitalWrite(buzzer, 0); baoChay = 0; baoTrom = 0; coChay = false; chuyenDong = false; sg90.write(90); delay(3000); sg90.write(0); delay(300); return true; } } return false; } void capNhatThe() { unsigned int soLuongThe = Firebase.getString("tkHTN/soLuong").toInt(); delay(100); for (int i = 0; i < soLuongThe; i++) { String url = "tkHTN/the" + String(i + 1); CardIDs[i] = Firebase.getString(url); delay(10); } } void call() { Serial.println("ATD+ +84346126117;"); delay(500); } void send_sms(char *text) { Serial.println("AT+CMGS=\"+84346126117\"");//change ZZ with country code and xxxxxxxxxxx with phone number to sms delay(200); Serial.println(text); //text content delay(200); Serial.write(26); delay(100); } void capNhatPass() { pass = Firebase.getString("tkHTN_baoDong/pass"); } Chương trình lập trình trang web hệ thống File index.html NCKH HỆ THỐNG AN NINH NHÀ Ở Buzzer Báo Động Mode Báo Trộm Phát người lạ Phát cháy Mật khẩu Thay đổi mật khẩu Thay đổi mật khẩu × Mật cũ Mật Thay đổi Thoát File style.css body{ background-image: url(./image/blue-gradient-white-linear-1920x1080-c2-87cefa ffffff-a-270-f-14.png); background-position: initial; background-repeat: no-repeat; background-size: auto; height: 100%; width: 100%; } switch { position: relative; display: inline-block; width: 60px; height: 34px; } switch input { opacity: 0; width: 0; height: 0; } slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; -webkit-transition: 4s; transition: 4s; } slider:before { position: absolute; content: ""; height: 26px; width: 26px; left: 4px; bottom: 4px; background-color: white; -webkit-transition: 4s; transition: 4s; } input:checked + slider { background-color: #2196F3; } input:focus + slider { box-shadow: 0 1px #2196F3; } input:checked + slider:before { -webkit-transform: translateX(26px); -ms-transform: translateX(26px); transform: translateX(26px); } slider.round { border-radius: 34px; } slider.round:before { border-radius: 50%; } #chuyenDong { border-width: 2px; border-color: black; width: 100px; height: 20px; } File style.js var firebaseConfig = { apiKey: "AIzaSyDIXsmHu0C9Swyo3dT6dnneJMhw1dMQ5ow", authDomain: "testmyled-aa8f7.firebaseapp.com", databaseURL: "https://testmyled-aa8f7.firebaseio.com", projectId: "testmyled-aa8f7", storageBucket: "testmyled-aa8f7.appspot.com", messagingSenderId: "378415090064", appId: "1:378415090064:web:3c01ac67900f96aea54b15" }; firebase.initializeApp(firebaseConfig); var db = firebase.database(); document.getElementById('buzzer').onclick = function(e){ if (this.checked){ db.ref().child('tkHTN_baoDong').update({ buzzer: "1" }); } else{ db.ref().child('tkHTN_baoDong').update({ buzzer: "0" }); } }; document.getElementById('modeBaoTrom').onclick = function (e) { if (this.checked){ db.ref().child('tkHTN_baoDong').update({ modeBaoTrom: "1" }); } else{ db.ref().child('tkHTN_baoDong').update({ modeBaoTrom: "0" }); } }; db.ref().child('tkHTN_baoDong').on('value', function (snapshot) { var valbuzzer = snapshot.child('buzzer').val(); if (valbuzzer == "1"){ document.getElementById("buzzer").checked = true; } else if (valbuzzer == "0"){ document.getElementById("buzzer").checked = false; } }); db.ref().child('tkHTN_baoDong').on('value', function (snapshot) { var valmode = snapshot.child('modeBaoTrom').val(); if (valmode == "1"){ document.getElementById("modeBaoTrom").checked = true; } else if (valmode == "0"){ document.getElementById("modeBaoTrom").checked = false; } }); db.ref().child('tkHTN_baoDong').on('value', function (snapshot) { var valbaonguoi = snapshot.child('chuyenDong').val(); if (valbaonguoi== "0"){ document.getElementById("chuyenDong").innerHTML = "Khơng có người lạ" } else if(valbaonguoi== "1"){ document.getElementById("chuyenDong").innerHTML = "Phát người lạ" } }); db.ref().child('tkHTN_baoDong').on('value', function (snapshot) { var valbaochay = snapshot.child('chay').val(); if (valbaochay== "0"){ document.getElementById("chay").innerHTML = "Khơng có lửa" } else if(valbaochay== "1"){ document.getElementById("chay").innerHTML = "Phát có lửa" } }) db.ref().child('tkHTN_baoDong').on('value', function (snapshot) { document.getElementById("pass").innerHTML= snapshot.child('pass').val(); }) function changePassWord(){ var oldpassword = $("#oldpassword").val(); var newpassword = $("#newpassword").val(); var valpassword; db.ref().child('tkHTN_baoDong').on('value', function (snapshot) { valpassword = snapshot.child('pass').val(); }) if (valpassword == oldpassword && newpassword.length > 0){ db.ref().child('tkHTN_baoDong').update({ pass: newpassword }); alert("Thay đổi thành công"); } else { alert("Thay đổi không thành công"); } } S K L 0 ... Giao diện sở liệu 32 Hình 1.30: Giao diện sở liệu Firebase 33 CHƯƠNG 2: THIẾT KẾ HỆ THỐNG 2.1 Phân tích hệ thống 2.1.1 Yêu cầu thiết kế Hệ thống thiết kế với yêu cầu:  Có thể đóng mở cửa tiện... chức hệ thống, giao diện website người dùng giao tiếp với hệ thống Đóng góp mặt giáo dục đào tạo, kinh tế - xã hội, an ninh, quốc phòng khả áp dụng đề tài: Đề tài "Thiết kế hệ thống an ninh nhà ở" ... hệ thống từ nơi nào, cần smartphone máy tính bảng có kết nối Internet Vì hệ thống ứng dụng IoT đem lại hiệu to lớn, phù hợp thực tế nên nhóm định chọn đề tài: ? ?Thiết kế hệ thống an ninh cho nhà

Ngày đăng: 07/01/2022, 20:25

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] "Internet of things là gì," [Online]. Available: https://iot.dtt.vn/InternetofThings.html Sách, tạp chí
Tiêu đề: Internet of things là gì
[2] Hải Đăng PPK, "Aruino và giao tiếp SPI," 1 8 2016. [Online]. Available: http://arduino.vn/bai-viet/1081-arduino-va-giao-tiep-spi Sách, tạp chí
Tiêu đề: Aruino và giao tiếp SPI
[3] Hàn Mạc Tử, "Kiến thức cơ bản về giao tiếp UART trong Arduino," 14 5 2020. [Online]. Available: https://espace.edu.vn/tu-hoc-arduino/kien-thuc-co-ban-ve-giao-tiep-uart-serial-trong-arduino/ Sách, tạp chí
Tiêu đề: Kiến thức cơ bản về giao tiếp UART trong Arduino
[4] Hải Đăng PPK, "Giao tiếp I2C với nhiều module," 27 7 2016. [Online]. Available: http://arduino.vn/bai-viet/1053-giao-tiep-i2c-voi-nhieu-module Sách, tạp chí
Tiêu đề: Giao tiếp I2C với nhiều module
[5] "Tìm hiểu thông số kĩ thuật của LCD," 11 1 2018. [Online]. Available: https://suachualaptop24h.com/linh-kien-laptop/tim-hieu-thong-so-ki-thuat-cua-lcd-1602-n5212.html Sách, tạp chí
Tiêu đề: Tìm hiểu thông số kĩ thuật của LCD
[7] Bá Điền, "Tổng hợp các lệnh Arduino IDE," 15 7 2019. [Online]. Available: https://quantrimang.com/tong-hop-cac-lenh-arduino-ide-165078 Sách, tạp chí
Tiêu đề: Tổng hợp các lệnh Arduino IDE
[8] N.X.P, "Giới thiệu Firebase," 30 6 2017. [Online]. Available: https://blog.vietnamlab.vn/2017/06/30/firebase-p1-gioi-thieu-firebase/ Sách, tạp chí
Tiêu đề: Giới thiệu Firebase
[6] 11 7 2018. [Online]. Available: https://laptrinhdieukhien.com/ta%CC%A3p-le%CC%A3nh-at-danh-cho-module-sim-900a-800a-800l-va-cac-module-sim-khac/ Link

HÌNH ẢNH LIÊN QUAN

Hình 1.1: Mô hình kiến trúc IOT - Thiết kế hệ thống an ninh nhà ở
Hình 1.1 Mô hình kiến trúc IOT (Trang 15)
Hình 1.2: Truyền dữ liệu SPI  1.2.2  UART - Thiết kế hệ thống an ninh nhà ở
Hình 1.2 Truyền dữ liệu SPI 1.2.2 UART (Trang 18)
Hình 1.3: Mô hình kết nối chuẩn I2C   1.3  Các linh kiện sử dụng - Thiết kế hệ thống an ninh nhà ở
Hình 1.3 Mô hình kết nối chuẩn I2C 1.3 Các linh kiện sử dụng (Trang 21)
Hình 1.5: Sơ đồ chân ESP8266 NodeMCU - Thiết kế hệ thống an ninh nhà ở
Hình 1.5 Sơ đồ chân ESP8266 NodeMCU (Trang 23)
Hình 1.9: Sơ đồ mạch keypad 4x4  1.3.5  Module Sim800L - Thiết kế hệ thống an ninh nhà ở
Hình 1.9 Sơ đồ mạch keypad 4x4 1.3.5 Module Sim800L (Trang 27)
Hình 1.11: Sơ đồ chân của Sim800L - Thiết kế hệ thống an ninh nhà ở
Hình 1.11 Sơ đồ chân của Sim800L (Trang 28)
Hình 1.12: Module RFID RC522 - Thiết kế hệ thống an ninh nhà ở
Hình 1.12 Module RFID RC522 (Trang 30)
Hình 1.13: Cảm biến chuyển động PIR HC-SR501 - Thiết kế hệ thống an ninh nhà ở
Hình 1.13 Cảm biến chuyển động PIR HC-SR501 (Trang 31)
Hình 1.15: Mạch chuyển nguồn M350 12VDC - Thiết kế hệ thống an ninh nhà ở
Hình 1.15 Mạch chuyển nguồn M350 12VDC (Trang 33)
Hình 1.17: Động cơ RC servo 9G - Thiết kế hệ thống an ninh nhà ở
Hình 1.17 Động cơ RC servo 9G (Trang 34)
Hình 1.20: Các loại board phần mềm hỗ trợ - Thiết kế hệ thống an ninh nhà ở
Hình 1.20 Các loại board phần mềm hỗ trợ (Trang 36)
Hình 1.19: Giao diện của phần mềm Arduino IDE - Thiết kế hệ thống an ninh nhà ở
Hình 1.19 Giao diện của phần mềm Arduino IDE (Trang 36)
Hình 1.22: Một số ví dụ cơ bản - Thiết kế hệ thống an ninh nhà ở
Hình 1.22 Một số ví dụ cơ bản (Trang 37)
Hình 1.21: Chọn port giao tiếp với phần cứng - Thiết kế hệ thống an ninh nhà ở
Hình 1.21 Chọn port giao tiếp với phần cứng (Trang 37)
Hình 1.23: Quản lý các thư viện Arduino IDE hỗ trợ - Thiết kế hệ thống an ninh nhà ở
Hình 1.23 Quản lý các thư viện Arduino IDE hỗ trợ (Trang 38)
w