I.Mở đầu Ngày này công nghệ thông minh đã được phát triển và áp dụng vào trong cuộc sống con người rất nhiều , đem lại những tiện nghi khi sử dụng.. Khóa cửa thông minh cũng v
Trang 1TRƯỜNG ĐẠI HỌC MỎ – ĐỊA CHẤT BỘ MÔN MẠNG MÁY TÍNH
TIỂU LUẬN MÔN HỌC KIẾN TRÚC VÀ HẠ TẦNG MẠNG IOT - 7080713
Họ và tên: Nguyễn Hữu Thắng
Mã số sinh viên : 1821050139
Lớp: DCCTKH63C Nhóm:02
Cán bộ giảng dạy: Trần Thị Thu Thúy
Trang 2Mục lục
I.Mở đầu 3
II.Nội dung 3
II.1 Nội dung 1: 3
Code: 4
II.2 Nội dung 2: 4
*Các thiết bị được sử dụng: 6
*Nguyên tắc hoạt động 6
*Code: 7
III.KẾT LUẬN 9
IV.TÀI LIỆU THAM KHẢO 9
Trang 3I.Mở đầu
Ngày này công nghệ thông minh đã được phát triển và áp dụng vào trong cuộc sống
con người rất nhiều , đem lại những tiện nghi khi sử dụng Khóa cửa thông minh cũng vậy Là sản phẩm được áp dụng công nghệ thông minh giúp người dùng dễ dàng thực hiện các thao tác đóng mở cửa mà không cần đến chìa khóa Thay vào đó người dùng có thể thực hiện mở cửa bằng mã số , vân tay , thẻ từ , thậm chí là ứng dụng điện thoại Khóa cửa thông minh được thiết kế với công nghệ bảo mật cao giúp cho người dùng an tâm hơn khi sử dụng , đặc biệt một số mẫu khóa thông minh có chức năng theo dõi qua ứng dụng điện thoại giúp chủ nhà dễ dàng kiểm soát và theo dõi được hoạt động của ngôi nhà
*Ưu điểm:
- Tính tiện lợi: không phải mang chìa khóa , không sợ mất chìa, tiết kiệm thời gian công sức
- Tính an toàn và bảo mật cao: sử dụng vân tay , mã số , cấu tạo chắc chắn 5 chốt thay
vì 2 chốt như khóa thường, không có lỗ khóa tránh cạy phá, có chức năng báo động -Tính tiện dụng: có thể ghi lại ngày giờ , kiểm soát khu vực, quản lí người ra vào vào từng thời điểm,
-Thiết kế và mẫu mã đa dạng , phù hợp với từng nội thất của các gia đình hiện đại.
*Nhược điểm:
- Giá thành cao hơn các loại khóa truyền thống
-Thời gian lắp đặt và chi phí cao
-Nhiều sản phẩm hàng nhái kém chất lượng khó phân biệt
Nhận thấy tính thực tế, em xin được thực hiện Đề tài 8: Xây dựng một ứng dụng đóng/
mở cửa dựa trên (thẻ từ , mật khẩu ,vân tay, ) sử dụng mạch arduino
II.Nội dung
II.1 Nội dung 1:
Vẽ sơ đồ mạch điện ( trên proteus ) viết chương trình trên arduino IDE; mô phỏng mạch hiển thị “ Tên của bạn” trên màn hình LCD Hiện thị kết quả
Sơ đồ mạch:
Trang 4#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
lcd.begin(16, 2) ;
lcd.print("Nguyen Huu Thang") ;
}
void loop() {
lcd.setCursor( 0, 1) ;
lcd.print("1821050139") ;
}
Trang 5Sơ đồ mạch:
Trang 6*Các thiết bị được sử dụng:
- Mạch arduino uno
- Keypad-phone : bảng số để nhập mật mã khóa cửa
- Led-Grenn: bóng đèn báo cửa mở hoặc khóa
- LM016L : Màn hình LCD hiển thị
- Motor-PWMSERVO: động cơ Servo PWM , được sử dụng như một khóa điện
- POT: biến trở
*Nguyên tắc hoạt động
Trang 7- Khi nhập đúng , động cơ Servo sẽ quay 180 độ và cửa mở , đèn báo UNLOCK sáng và màn hình LCD hiện “ MOI VAO”
*Code:
#include "Keypad.h"
#include <LiquidCrystal.h>
#include <Servo.h>
Servo servo;
LiquidCrystal lcd (A0, A1, A2, A3, A4, A5); // khai bao cac chan ket noi lcd
const int hang = 4; // khai bao so hang
const int cot = 3; // khai bao so cot
char keys[hang][cot] = //dinh nghia cac phim
{{'1','2','3'},
{'4','5','6'},
{'7','8','9'},
{'*','0','#'}};
byte rowPins[hang] = {4, 3, 2, 1};
byte colPins[cot] = {7, 6, 5};
char* password ="5555"; // cai dat password
int pozisyon = 0; // keypad position
#define Led1 8 // den bao trang thai UNLOCK
#define Led2 9 // den bao trang thai LOCK
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, hang, cot );
void setup()
{
lcd.begin(16, 2); // thiet lap loai LCD su dung la 16 cot va 2 dong
pinMode(Led1, OUTPUT); //set OUTPUT cho Led1
pinMode(Led2, OUTPUT); //set OUTPUT cho Led2
setLocked (true); // trang thai password
servo.attach(10); // chan xuat tin hieu den Servo
}
void loop(){
char whichKey = keypad.getKey(); //dinh nghia bien lay trang thai ban phim
lcd.setCursor(0, 0);
lcd.print(" XIN CHAO ");
lcd.setCursor(0, 1);
Trang 8if(whichKey == '*'||whichKey == '#'||whichKey == '0'||whichKey == '3'||
whichKey == '4'||whichKey == '6'||whichKey == '7'||whichKey == '8'||whichKey == '9'){ // dinh nghia key khong co gia tri
pozisyon=0;
setLocked (true);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(" PASSWORD SAI ");
delay(1000);
lcd.clear();
}
if(whichKey == password [pozisyon]){
pozisyon ++;
}
if(pozisyon == 4){
setLocked ( false);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(" ***MOI VAO*** ");
delay(3000);
lcd.clear();
}
delay(100);
}
void control_servo(){
servo.write(180);
delay(1000);
servo.write(90);
delay(1000);
servo.write(0);
delay(1000);
}
void setLocked(int locked){
if(locked){
digitalWrite(Led2,HIGH);
digitalWrite(Led1,LOW);
Trang 9
}
}
III.KẾT LUẬN
Qua quá trình học tập và thực hành , em đã tiếp thu được những kiến thức bổ ích
do giáo viên bộ môn truyền đạt và vận dụng thành công trong việc làm tiểu luận Sơ đồ mạch được vẽ đầy đủ , dễ nhìn , phần code đầy đủ và chi tiết Sau thời gian học tập , em mong muốn sẽ phát triển lên những thiết bị khóa tân tiến và hiện đại hơn như sử dụng bằng vân tay hoặc sinh trắc học Đáp ứng được nhu cầu sử dụng hiện đại hơn trong tương lai
Trang 10IV.TÀI LIỆU THAM KHẢO
https://kienthuctudonghoa.com/dieu-khien-servo-bang-pwm-arduino/
http://arduino.vn/bai-viet/531-dieu-khien-lcd-bang-arduino-uno
http://arduino.vn/bai-viet/5893-khoa-dien-tu-bam-so-su-dung-keypad-4x3
https://istarhome.vn/khoa-cua-thong-minh-la-gi-uu-nhuoc-diem-khi-su-dung-khoa-cua-thong-minh/