You are on page 1of 47

BỘ THÔNG TIN VÀ TRUYỀN THÔNG

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

----------

ĐỒ ÁN
TỐT NGHIỆP ĐẠI HỌC
ĐỀ TÀI: “KHÓA SỐ ĐIỆN TỬ SỬ DỤNG BÀN
PHÍM VÀ THẺ TỪ”

Giảng viên hướng dẫn : TS. Trương Trung Kiên

Sinh viên thực hiện : Trần Hợp Trình


Lớp : D14XLTH

Hệ : Chính quy

Hà Nội 2018
NHẬN XÉT, ĐÁNH GIÁ, CHO ĐIỂM

(Của giảng viên hướng dẫn)

Các thiết bị điện tử đang được áp dụng ngày càng nhiều trong cuộc sống hàng ngày để
tăng sự thuận tiện cho con người. Trong đồ án tốt nghiệp này, sinh viên Trần Hợp Trình
đã tìm hiểu nguyên lý thiết kế và chế tạo khoá điện tử dựa trên bàn phím và thẻ quét từ
dựa trên công nghệ RFID. Trên cơ sở đó, sinh viên đã thiết kế chế tạo một mô hình mẫu
thử nghiệm để minh hoạ. Mặc dù mô hình chế tạo thử nghiệm vẫn còn một số hạn
chế, sinh viên đã thể hiện được khả năng nghiên cứu lý thuyết và tích hợp hệ thống
để chế tạo thử nghiệm. Bên cạnh đó, sinh viên Trần Hợp Trình đã thể hiện sự chủ
động, chăm trong quá trình thực hiện đồ án tốt nghiệp.

Điểm: ................................. (Bằng chữ: ……………………………...….)

Đồng ý cho sinh viên bảo vệ trước hội đồng chấm đồ án tốt nghiệp.

Hà Nội, Ngày......Tháng…. Năm 2018

GIẢNG VIÊN HƯỚNG DẪN

Trương Trung Kiên


NHẬN XÉT, ĐÁNH GIÁ, CHO ĐIỂM

(Của giảng viên phản biện)

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................

..........................................................................................................................................
..........................................................................................................................................

..........................................................................................................................................

Điểm: ................................. (Bằng chữ: ……………………………...….)

Đồng ý/Không đồng ý cho sinh viên bảo vệ trước hội đồng chấm đồ án tốt nghiệp…?

Hà Nội, Ngày......Tháng…. Năm 2018

CÁN BỘ - GIẢNG VIÊN PHẢN BIỆN

(ký, họ tên)
MỤC LỤC
MỤC LỤC .......................................................................................................................i
DANH MỤC HÌNH ẢNH ........................................................................................... iii
DANH MỤC BẢNG BIỂU ...........................................................................................v
DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT .................................................vi
LỜI NÓI ĐẦU ................................................................................................................1
DẪN NHẬP ....................................................................................................................2
1. Đặt vấn đề ..............................................................................................................2
2. Yêu cầu của vấn đề ................................................................................................ 2
3. Mục đích nghiên cứu .............................................................................................2
4. Các khó khăn khi thực hiện ...................................................................................2
CHƯƠNG I: CƠ SỞ LÝ THUYẾT .............................................................................3
1.1. Giới thiệu chung .................................................................................................3
1.1.1. Các loại khóa điện tử thông dụng hiện nay ................................................3
1.1.2. Ưu nhược điểm của khóa số điện tử............................................................3
1.2. Giới thiệu linh kiện sử sụng làm khóa số mở cửa bằng bàn phím và thẻ từ ......5
1.2.1. Arduino nano ............................................................................................... 5
1.2.2. Bàn phím ma trận mềm 4x4 keypad ............................................................7
1.2.3. I2C ...............................................................................................................8
1.2.4. LCD 16x2 ....................................................................................................8
1.2.5. Servo SG90 ................................................................................................ 10
1.2.6. Khối quét thẻ từ .........................................................................................12
1.2.7. IC7805 .......................................................................................................14
1.2.8. Buzzer ........................................................................................................15
1.3. Kết luận chương ............................................................................................... 15
CHƯƠNG II: MẠCH NGUYÊN LÝ VÀ PHƯƠNG THỨC HOẠT ĐỘNG CỦA
CÁC MODULE............................................................................................................16
2.1. Mạch nguyên lý ................................................................................................ 16

SVTH: Trần Hợp Trình – D14XLTH i


2.1.1. Phần mềm thiết kế mạch Altium Designer ................................................16
2.1.2. Xây dựng mạch nguyên lý qua mô phỏng Altium Designer ......................16
2.1.3. Mạch nguyên lý .........................................................................................16
2.2. Ngôn ngữ lập trình Arduino được sử dụng trong mạch ...................................18
2.3. Nguyên lý hoạt động của các module .............................................................. 18
2.3.1. Nguyên lý quét phím của module bàn phím 4x4 .......................................18
2.3.2. Nguyên lý hoạt động của module RFID ....................................................18
2.4. Sơ đồ khối và nguyên lý hoạt động của mạch .................................................20
2.4.1. Sơ đồ khối của mạch .................................................................................20
2.4.2. Nguyên lý hoạt động của mạch .................................................................20
2.5. Giao tiếp SPI và I2C ........................................................................................22
2.5.1. Chuẩn giao tiếp SPI giữa Arduino Nano với module RFID-RC552.........22
2.5.2. Giao tiếp I2C ............................................................................................. 22
2.5.3. So sánh hai giao tiếp SPI và I2C .............................................................. 25
2.6. Kết luận chương ............................................................................................... 26
CHƯƠNG III: KẾT QUẢ ..........................................................................................27
3.1. Mạch in và mạch sau khi hoàn thành ............................................................... 27
3.1.1. Mạch PCB ................................................................................................ 27
3.1.2. Mạch sau khi đã hoàn thành .....................................................................27
3.2. Chương trình code trên arduino .......................................................................28
3.3. Kết luận chương ............................................................................................... 36
Chương IV: KẾT LUẬN............................................................................................. 37
TÀI LIỆU THAM KHẢO...........................................................................................38

SVTH: Trần Hợp Trình – D14XLTH ii


DANH MỤC HÌNH ẢNH

Hình 1.1: Ba loại khóa điện tử .........................................................................................3


Hình 1.2: Arduino Nano ..................................................................................................6
Hình 1.3: Bàn phím ma trận 4x4 .....................................................................................7
Hình 1.4: I2C ...................................................................................................................8
Hình 1.5: LCD 16x2 ........................................................................................................9
Hình 1.6: Động cơ Servo ............................................................................................... 11
Hình 1.7: Sơ đồ chân động cơ Servo .............................................................................12
Hình 1.8: Module RFID-RC522 ....................................................................................12
Hình 1.9: Thẻ nhựa NFC ............................................................................................... 13
Hình 1.10: IC7805 .........................................................................................................14
Hình 1.11: Buzzer tạo âm thanh cho khóa số ................................................................ 15

Hình 2.1: Giao diện thiết kế mạch nguyên lý trong altium designer ............................ 16
Hình 2.2: Mạch nguyên lý ............................................................................................. 17
Hình 2.3: Khối nguồn của mạch ....................................................................................17
Hình 2.4: Nguyên lý hoạt động RFID ...........................................................................19
Hình 2.5: Thẻ chíp RFID ............................................................................................... 19
Hình 2.6: Sơ đồ khối......................................................................................................20
Hình 2.7: Lưu đồ thuật toán ..........................................................................................21
Hình 2.8: Sơ đồ chân giao tiếp SPI ...............................................................................22
Hình 2.9: Sơ đồ kết nối ..................................................................................................23
Hình 2.10: Trình tự truyền bit trên đường truyền..........................................................24
Hình 2.11: Xung truyền SDA và SCL ...........................................................................24
Hình 2.12: Xung Clock ở mức cao ................................................................................25

Hình 3.1: Mạch in ..........................................................................................................27


Hình 3.2: Mạch khóa số sau khi hoàn thành .................................................................28

SVTH: Trần Hợp Trình – D14XLTH iii


SVTH: Trần Hợp Trình – D14XLTH iv
DANH MỤC BẢNG BIỂU

Bảng 1.1: Bảng sơ đồ chức năng chân LCD .................................................................10

SVTH: Trần Hợp Trình – D14XLTH v


DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT

USB Universal Serial Bus Chuẩn kết nối USB

SPI Serial Peripheral Interface Giao thức truyền thông SPI

Universal Asynchronous
UART Truyền thông nối tiếp không đồng bộ
Receiver/Transmitter

I2C Inter-Intergrated Circuit Chuẩn giao tiếp nối tiếp hai dây

RFID Radio Frequency Identification Nhận dạng qua tần số vô tuyến

NFC Near-field communication Công nghệ giao tiếp tầm ngắn

LCD Liquid-Crystal Display Màn hình tinh thể lỏng

PCB Printed Circuit Board Bảng mạch in

SVTH: Trần Hợp Trình – D14XLTH vi


LỜI NÓI ĐẦU

Trong thời đại số hóa hiện nay của thế giới, các xu hướng công nghệ đang phát triển
không ngừng và vẫn sẽ tiếp tục phát triển dài lâu. Nhiều thiết bị đã được ra đời nhằm
mục đích phục vụ cho con người có một cuộc sống tốt đẹp hơn, thoải mái hơn. Khóa
điện tử thông minh đã được ra đời trong một bối cảnh như vậy. Ngày nay nó càng lúc
càng được tăng cường thêm nhiều tính năng mới, an toàn hơn, tiện lợi hơn, bảo mật tốt
hơn và đang được nhiều gia đình cũng như doanh nghiệp trên thế giới lựa chọn. Khóa
thường sẽ chỉ sử dụng chìa khóa để mở cửa, nhưng đối với khóa cửa điện tử lại khác.
Khóa điện tử sử dụng các tính năng thông minh để giúp mở cửa. Thực sự điều này đã
thay đổi hoàn toàn thói quen dùng chìa để mở khóa trước đây của con người, bởi nếu
trước đây bạn có thể gặp phải những sự cố không đáng có như: khóa hoen gỉ tra chìa
vào nhưng mãi không mở được, quên chìa khóa ở đâu không rõ, thậm chí là không thể
tránh việc mất chìa khóa. Khóa điện tử đã khắc phục được tất cả những điều đó, thậm
chí còn mở ra một con đường mới cho dòng khóa phổ thông.

Chúng ta có thể thấy khóa điện tử là một thiết bị hiện đại không chỉ giúp đảm bảo an
ninh cho bạn và người thân đến tối đa mà còn giúp cho căn phòng của bạn trở nên sang
trọng và tiện nghi hơn rất nhiều. Chúng không chỉ là một thiết bị công nghệ nữa mà đã
trở thành một vật trang trí tuyệt vời cho cánh cửa, giúp cho ngôi nhà, căn hộ trở nên cao
cấp hơn. Trong tương lai, viễn cảnh mỗi gia đình đều sở hữu một hoặc nhiều khóa điện
tử thông minh chẳng còn là điều xa vời nữa.

SVTH: Trần Hợp Trình – D14XLTH1 1


DẪN NHẬP

1. Đặt vấn đề

Công nghệ điện tử về các thiết bị thông minh trong gia đình đang ngày càng phát
triển, nó không chỉ tiện lợi mà còn thể hiện thẩm mỹ cho ngôi nhà . Khóa số điện tử đã
ra đời thay thế cho chiếc khóa thường ngày chúng ta vẫn sử dụng, để khắc phục tình
trạng mất khóa hay bỏ quên, ổ khóa bị hoen gỉ khó mở.

Qua những tìm hiểu của mình về arduino và vận dụng những kiến thức đã học được,
em mong muốn có thể tạo ra một sản phẩm về điện tử trước khi ra trường. Những công
nghệ điện tử chúng ta được tiếp xúc hằng ngày dường như đã rất phổ biến hiện nay.
Được sự đồng ý của Giảng viên hướng dẫn và Khoa Kỹ thuật Điện tử I, em đã có ý
tưởng làm một khóa số điện tử sử dụng công nghệ RFID và phím nhấn bằng bàn phím
ma trận.

2. Yêu cầu kỹ thuật đặt ra

Mở khóa bằng bàn phím và thẻ từ quét, thiết bị tự động nên vấn đề tính sử dụng được
đặt ra là: tính bảo mật cao, nhận dạng thẻ chính xác, khó làm giả được thẻ quét, bàn
phím sử dụng ổn định.

3. Mục đích nghiên cứu

Mục đích trước hết khi thực hiện đề tài này là để hoàn tất chương trình học để đủ điều
kiện ra trường.

Đồng thời, quá trình thực hiện đề tài cũng là một cơ hội để em tự kiểm tra lại những
kiến thức trong suốt thời gian học tập. Đây cũng là dịp để em tự khẳng định mình trước
khi ra trường để trở thành một kỹ sư điện tử.

4. Các khó khăn khi thực hiện

Với thời gian ngắn cũng như trình độ chuyên môn có giới hạn em đã cố gắng hết sức
để hoàn thành đề tài này nhưng vẫn còn gặp nhiều khó khăn trong quá trình thực hiện:

- Tìm hiểu ngôn ngữ lập trình arduino.

- Thiết kế mạch in cho đề tài.

- Tìm hiểu các giao tiếp được sử dụng trong bài.

SVTH: Trần Hợp Trình – D14XLTH1 2


CHƯƠNG I: CƠ SỞ LÝ THUYẾT

1.1. Giới thiệu chung

1.1.1. Các loại khóa điện tử thông dụng hiện nay

Sự an toàn của ổ khóa điện tử đã được nhiều doanh nghiệp, gia đình chứng thực. Hiện
nay việc lắp đặt và sử dụng một trong những loại khóa điện tử có trên thị trường đã trở
nên ngày một phổ biến hơn. Khóa cửa điện tử hiện nay được biết đến với 3 loại chính
đó là: khóa cửa vân tay, khóa thẻ từ và khóa mã số, 3 loại khóa mỗi loại có đặc trưng
khác nhau về phương thức vận hành, cấu tạo khóa…

Khóa điện tử dùng chìa điện tử

Hình 1.1: Ba loại khóa điện tử

Một ổ khóa điện tử sẽ sử dụng những tín hiệu điện tử để mở và đóng cửa, nếu không
cửa sẽ luôn mở hoặc luôn đóng. Khóa điện tử không dùng chìa kim loại để mở khóa (dù
trong thiết kế của các loại khóa điện tử luôn có ổ khóa cơ dùng chìa kim loại nhưng
chúng chỉ được sử dụng trong trường hợp bất đắc dĩ) mà dùng “chìa khóa” điện tử để
xác nhận quyền ra vào nhà. Vì vậy mà khóa cửa điện tử hay còn được gọi là khóa không
cần chìa. Mỗi loại khóa sẽ có một cách xác thực khác nhau và chúng cũng có điểm mạnh,
điểm yếu của riêng nhưng đều bảo đảm an ninh tốt nhất cho các gia đình, doanh nghiệp.

1.1.2. Ưu nhược điểm của khóa số điện tử

 Ưu và nhược điểm của khóa mã số

Giống với mã Pin của thẻ ngân hàng, mật khẩu các tài khoản mạng xã hội… Khóa
mã số đúng với tên gọi của nó, sử dụng chuỗi mã số làm mật khẩu để xác nhận quyền
mở cửa nhà. Cơ chế hoạt động của khóa điện tử phổ biến trên nhiều vật dụng hiện đại

SVTH: Trần Hợp Trình – D14XLTH1 3


trong cuộc sống con người (ví dụ: két sắt) nên con người cũng không quá bỡ ngỡ khi sử
dụng sản phẩm này. Các mã số có thể là chuỗi số, chữ cái hoặc kết hợp số và chữ tùy
thuộc vào cài đặt của người dùng.

Ưu điểm:

- Hệ thống chỉ yêu cầu người dùng ghi nhớ mã số và nhập nó vào ổ khóa mỗi lần
mở cửa.
- Các mã khác nhau có thể được sử dụng cho các cửa ra vào khác nhau, cũng như
các mã chính hoạt động cho tất cả các cửa ra vào.
- Độ dài của pass không giới hạn vì vậy người dùng không cần lo lắng về việc có ai
đó hack pass của bạn.

Nhược điểm:

- Nếu không cẩn thận, mã số này có thể được nhìn thấy bởi những người khác và họ
sẽ sao chép.
- Mã số có thể bị quên bởi chính các thành viên trong gia đình hoặc doanh nghiệp
- Việc sử dụng nhiều mã tăng cơ hội của mã được đoán.
 Ưu và nhược điểm của khóa thẻ từ

Khóa cử thẻ từ sử dụng thiết bị nhận dạng tần số vô tuyến (RFID), tương tự như mã
thông báo xác thực. Sự khác biệt chính là tín hiệu có thể mở khóa từ xa hơn. Thẻ từ có
chức năng như một chiếc chìa khóa thông thường, người dùng chỉ cần đưa thẻ lại gần ô
đọc thẻ trên ổ khóa để xác nhận và cửa sẽ mở nếu đúng mã thẻ được đăng ký trên hệ
thống. Ngoài ra, một số hãng khóa thẻ từ cao cấp đã trang bị cho dòng khóa này khả
năng kết nối với điện thoại thông minh qua Bluetooth của người dùng, như vậy cửa có
thể được mở thông qua smartphone mà không cần thẻ từ.

Ưu điểm:

- Được sử dụng cho các khách sạn, doanh nghiệp với quy mô phòng lớn
- Cho phép điện thoại thông minh trở thành chìa khóa.
- Sử dụng phần mềm quản lý tối ưu, kiểm soát chặt chẽ an ninh ra vào phòng.

Nhược điểm:

SVTH: Trần Hợp Trình – D14XLTH1 4


- Trường hợp ô cảm biến quẹt thẻ bị hỏng, người dùng sẽ phải dùng đến phương
thức xác thực dự phòng để vào nhà.
- Loại khóa này khá đắt đỏ so với các dòng khóa khác.
 Ưu nhược điểm của khóa cửa vân tay

Khóa cửa vân tay hay còn gọi là khóa sinh trắc học từng chỉ xuất hiện trong các loạt
phim về gián điệp của Holywood, nhưng hiện nay loại khóa này đã tồn tại và được sử
dụng trên thị trường khá nhiều. Smartphone thông minh iPhone của hãng Apple cũng sử
dụng sinh trắc học để xác nhận mở khóa cho điện thoại cá nhân. Nhưng sinh trắc học ở
khóa cửa vân tay cao cấp có thể sẽ cao cấp hơn thế, đó bắt đầu từ việc quét mắt và võng
mạc mắt, nhận biết khuôn mặt và nhận diện giọng nói là tất cả các ví dụ tiêu chuẩn về
sinh trắc học. Còn các dòng khóa cửa vân tay hiện nay, chất lượng của ô cảm biến đọc
vân tay sẽ quyết định hiệu quả và an ninh của dòng khóa này.

Ưu điểm:

- Trường hợp làm mất thẻ từ hoặc quên mã số sẽ không bao giờ xảy ra.
- Bạn chính là “chìa khóa” để mở khóa nhà của bạn.
- Bộ lưu mã vân tay trên ổ khóa dễ cài đặt với người dùng, việc xóa mã vân tay đã
nhập hoặc thêm mã vân tay của một người khác có thể được thực hiện đơn giản.

Nhược điểm:

- Cảm biến vân tay được chia thành nhiều loại và nếu người dùng không có kiến
thức về sản phẩm này, dễ mua phải thiết bị rởm, vân tay giả của kẻ gian có thể dễ
dàng vượt qua bảo mật.

1.2. Giới thiệu linh kiện sử sụng làm khóa số mở cửa bằng bàn phím và thẻ từ

1.2.1. Arduino nano

Arduino Nano được sử dụng làm vi điều khiển chính cho mạch với tính năng gọn nhẹ
thích hợp với mạch. Đây là một bo mạch thiết kế với bộ xử lý trung tâm là vi điểu khiển
AVRAtmega328. Cấu tạo chính của Arduino Nano bao gồm các phần sau:

SVTH: Trần Hợp Trình – D14XLTH1 5


Hình 1.2: Arduino Nano

- Cổng USB: đây là loại cổng giao tiếp để ta upload code từ PC lên vi điều khiển.
Đồng thời nó cũng là giao tiếp serial để truyền dữ liệu giữa vi điều khiển và máy
tính.
- Chân giao tiếp: Có 14 chân vào/ra số đánh số thứ tự từ 0 đến 13, ngoài ra có một
chân nối đất (GND) và một chân điện áp tham chiếu (AREF).
- Vi điều khiển AVR: đây là bộ xử lí trung tâm của toàn bo mạch. Với mỗi mẫu
Arduino khác nhau thì con chip là khác nhau. Ở con Arduino Nano này thì sử dụng
ATMega328.
 Thông số kĩ thuật:
- Vi xử lý ATmega328 (phiên bản v3.0).
- Điện áp hoạt động 5 V.
- Điện áp đầu vào (khuyến nghị) 7-12 V.
- Điện áp đầu vào (giới hạn) 6-20 V.
- Chân vào/ra số 14 (6 chân có khả năng xuất ra tín hiệu PWM).
- Chân vào tương tự 8.
- Dòng điện mỗi chân vào/ra 40 mA.
- Bộ nhớ 16 KB (ATmega168), 32 KB (ATmega328) trong đó 2 KB dùng để nạp
bootloader.

SVTH: Trần Hợp Trình – D14XLTH1 6


- SRAM 1 KB (ATmega168) hoặc 2 KB (ATmega328).
- EEPROM 512 bytes (ATmega168) hoặc 1 KB (ATmega328).
- Xung nhịp 16 MHz.

1.2.2. Bàn phím ma trận mềm 4x4 keypad

Bàn phím số ma trận sử dụng làm mã bảo mật cho cửa, như một chìa khóa thông minh
tiện lợi mà không cần mang bên cạnh, bạn không còn phải lo lắng về việc quên hay mất
chìa khóa.

Dưới đây là hình ảnh sơ đồ nguyên lý của module bàn phím 4x4. Tuy có đến 16 nút
nhấn, nghĩa là nếu làm một cách thông thường (dùng chân digital) thì chúng ta phải cần
đến 16 chân Arduino để đọc. Nhưng với bàn phím này, chúng ta chỉ cần dùng 8 chân (4
chân hàng ngang (row), và 4 chân cột dọc (column)).

Hình 1.3: Bàn phím ma trận 4x4

 Thông số kỹ thuật:
- Module bàn phím ma trận 4x4 loại phím mềm.
- Độ dài cáp: 88mm.
- Nhiệt độ hoạt động 0 ~ 70oC.
- Đầu nối ra 8 chân.
- Kích thước bàn phím 77 x 69 mm.
 Tính năng:

SVTH: Trần Hợp Trình – D14XLTH1 7


- Sử dụng làm bài tập ấn nút key.
- Sử dụng trong bài tập lập trình khóa số điện tử.

1.2.3. I2C

Hình 1.4: I2C

I2C, viết tắt của từ tiếng Anh “Inter-Integrated Circuit”, là một loại bus nối tiếp được
phát triển bởi hãng sản xuất linh kiện điện tử Philips. Ban đầu, loại bus này chỉ được
dùng trong các linh kiện điện tử của Philips. Sau đó, do tính ưu việt và đơn giản của nó,
I2C đã được chuẩn hóa và được dùng rộng rãi trong các mô đun truyền thông nối tiếp
của vi mạch tích hợp ngày nay.

LCD có quá nhiều chân gây khó khăn trong quá trình kết nối và chiếm dụng nhiều
chân của vi điều khiển. Module chuyển đổi I2C cho LCD sẽ giải quyết vấn đề này , thay
vì sử dụng tối thiểu 6 chân của vi điều khiển để kết nối với LCD (RS, EN, D7, D6, D5
và D4) thì với module chuyển đổi chỉ cần sử dụng 2 chân (SCL, SDA) để kết nối. Module
chuyển đổi I2C hỗ trợ các loại LCD sử dụng driver HD44780(LCD 1602, LCD 2004,
… ), kết nối với vi điều khiển thông qua giao tiếp I2C, tương thích với hầu hết các vi
điều khiển hiện nay.

1.2.4. LCD 16x2

Thiết bị LCD được sử dụng rất nhiều trong VDK, LCD có nhiều ưu điểm so với các
dạng hiển thị khác : hiển thị kí tự đa dạng, trực quan, dễ dàng đưa vào mạch ứng dụng

SVTH: Trần Hợp Trình – D14XLTH1 8


theo giao thức giao tiếp khác nhau, tốn ít tài nguyên hệ thống. LCD như một màn hình
thông báo kết quả sau mỗi lần sử dụng khóa cửa.

Hình 1.5: LCD 16x2

 Chức năng của các chân LCD


Số thứ tự chân Tên chân Mô tả chức năng

VSS 0V
1

VDD 5V
2
Tùy chỉnh độ tương phản
của LCD 16x2, giá trị điện
V0 áp trên chân V0 tùy từng
3
loại LCD, bình thường điện
áp V0 từ 0V1V.

RS=0: Ghi mã lệnh vào


LCD.
4 RS
RS=1: Ghi dữ liệu vào
LCD.

SVTH: Trần Hợp Trình – D14XLTH1 9


Số thứ tự chân Tên chân Mô tả chức năng

RW=0: Ghi từ AVR đế


LCD.
5 RW
RW=1: Đọc từ AVR đến
LCD

EN=0: LCD không hoạt


động.
EN EN=1: LCD hoạt động.
6
EN=10 bắt đầu ghi/đọc
LCD.

Các chân ghi/đọc dữ liệu,


7-14 D0-D7
mã lệnh LCD.

Anode led sáng màn hình


15 A
LCD 5V.

Cathode sáng màn hình


16 K
LCD: 0V(GND)

Bảng 1.1: Bảng sơ đồ chức năng chân LCD

1.2.5. Servo SG90

Servo là một dạng động cơ điện đặc biệt. Không giống như động cơ thông thường cứ
cắm điện vào là quay liên tục, servo chỉ quay khi được điều khiển với góc quay nằm
trong khoảng bất kì từ 0o - 180o.

Động cơ servo được thiết kế những hệ thống hồi tiếp vòng kín. Tín hiệu ra của động
cơ được nối với một mạch điều khiển. Khi động cơ quay, vận tốc và vị trí sẽ được hồi
tiếp về arduino. Nếu có bầt kỳ lý do nào ngăn cản chuyển động quay của động cơ, cơ
cấu hồi tiếp sẽ nhận thấy tín hiệu ra chưa đạt được vị trí mong muốn. Mạch điều khiển
tiếp tục chỉnh sai lệch cho động cơ đạt được điểm chính xác.

Động cơ servo được sử dụng làm chốt cửa được điều khiển theo vòng quay.

SVTH: Trần Hợp Trình – D14XLTH1 10


Hình 1.6: Động cơ Servo

 Thông số kỹ thuật:
- Khối lượng : 9g.
- Kích thước: 22.2x11.8.32 mm.
- Momen xoắn: 1.8kg/cm.
- Tốc độ hoạt động: 60 độ trong 0.1 giây.
- Điện áp hoạt động: 4.8V(~5V).
- Nhiệt độ hoạt động: 0 ºC – 55 º.
 Điều khiển:

Kết nối dây màu đỏ với 5V, dây màu nâu với mass, dây màu cam với chân phát
xung của vi điều khiển. Ở chân xung cấp một xung từ 1ms-2ms theo để điều khiển góc
quay theo ý muốn.

SVTH: Trần Hợp Trình – D14XLTH1 11


Hình 1.7: Sơ đồ chân động cơ Servo

1.2.6. Khối quét thẻ từ

1.2.6.a. Module RFID-RC522

Sử dụng module RFID – RC522 để làm trạm quét thẻ từ. Phương thức quét thẻ là sử
dụng thẻ từ RFID. Modul thẻ từ RFID – RC522 được chuẩn hóa với module arduino
nên dễ dàng kết nối với arduino, với độ nhạy, ổn định, đặc biệt là những ứng dụng đòi
hỏi sóng vô tuyến, tính năng bảo mật cao. Được sử dụng như ổ khóa bảo về cho cửa.

Hình 1.8: Module RFID-RC522

 Thông số kỹ thuật:
- Điện áp hoạt động: 3.3V 13-26mA.

SVTH: Trần Hợp Trình – D14XLTH1 12


- Dòng tiêu thụ ở chế độ Stand by: 3.3V 10-13mA.
- Tải tối đa: 30mA.
- Tần số hoạt động: 13.56Mhz.
- Khoảng cách đọc: 0 – 60mm.
- Giao thức truyền thông: SPI.
- Tốc độ dữ liệu tối đa: 10Mbit / s.
- Kích thước: 40 x 60 mm.
- Nhiệt độ hoạt động: -20 đến 80 °C.
 Các chân kết nối:
- SDA(CS)-Chân lựa chọn chip khi giao tiếp SPI( Kích hoạt ở mức thấp)
- SCK-Chân xung trong chế độ SPI
- MOSI(SDI)-Master Data Out- Slave In trong chế độ giao tiếp SPI.
- MISO(SDO)-Master Data In- Slave Out trong chế độ giao tiếp SPI.
- IRQ – Chân ngắt.
- GND – Chân mass.
- RST – Chân reset module.
- 3V3.

1.2.6.b. Thẻ nhựa NFC

Hình 1.9: Thẻ nhựa NFC

Thẻ nhựa NFC 13.56 MHz dùng để đọc/ghi dữ liệu với tốc độ rất cao. Thẻ được sử
dụng thay thế cho chìa khóa cửa, tình năng dễ sử dụng và tính bảo mật cao. Thẻ tương
thích với module RFID RC522 13.56MHz và các module tương tự.

SVTH: Trần Hợp Trình – D14XLTH1 13


 Thông số kỹ thuật:
- Tương thích với thẻ philip S50.
- Bộ nhớ: 8Kbits, chia thành 16 vùng.
- Tần số hoạt động: 13.56 MHz.
- Khoảng cách đọc: 2.5-10 cm.
- Thời gian đọc: 1-2ms.
- Độ bền: 100.000 lần.
- Thời gian đảm bảo không mất dữ liệu: 10 năm.
- Kích thước: 0.87 × 85.5 × 54 mm (dày x dài x rộng).
- Chuẩn : ISO 14443, ISO 10536.
- Màu: trắng.

1.2.7. IC7805

Đây là IC ổn áp dùng để tạo ra dòng chuẩn 5v sử dụng cho mạch.

 Thông số kỹ thuật IC7805:


- Dòng cực đại có thể duy trì 1A.
- Dòng đỉnh 2,2A.
- Công suất tiêu tán cực đại nếu dùng tản nhiệt là 2W.
- Công suất tiêu tán cực đại nếu không dùng tản nhiệt đủ lớn 5W.

Hình 1.10: IC7805

SVTH: Trần Hợp Trình – D14XLTH1 14


1.2.8. Buzzer

Buzzer hay còn gọi là còi chíp hoặc còi xung, là thiết bị phát ra âm thanh (tiếng bíp
bíp) hay dùng trong các mạch điện tử.

Cấu tạo của Buzzer gồm 2 chân, chân dài là chân (+) và chân ngắn là chân (-). Trong
quá trình sử dụng cần chú ý mắc đúng chân để tránh làm hỏng buzzer.

Ứng dụng này sử dụng Buzzer 5V, có khả năng phát ra âm thanh có tần số tối đa
2.5kHz.

Hình 1.11: Buzzer tạo âm thanh cho khóa số

1.3. Kết luận chương

Chương I của đồ án giới thiệu về một số loại khóa điện tử được sử dụng trên thị
trường và trình bày về các linh kiện đã được sử dụng trong đồ án.

Những linh kiện này rất thông dụng trong arduino nên việc tìm hiểu và sử dụng thư
viện cũng không quá khó khăn.

Ở chương sau em sẽ giới thiệu kĩ hơn về các kết nối cũng như mạch nguyên lý của
đồ án. Nguyên lý hoạt động của các module, các phương thức giao tiếp đã được sử dụng.

SVTH: Trần Hợp Trình – D14XLTH1 15


CHƯƠNG II: MẠCH NGUYÊN LÝ VÀ PHƯƠNG THỨC HOẠT ĐỘNG CỦA
CÁC MODULE

2.1. Mạch nguyên lý

2.1.1. Phần mềm thiết kế mạch Altium Designer

Mạch được thiết kế qua mô phỏng từ những linh kiện có trong thư viện của altium
designer, giúp ta dễ dàng kết nối các linh kiện với nhau để tạo nên mạch nguyên lý.

Hình 2.1: Giao diện thiết kế mạch nguyên lý trong altium designer

2.1.2. Xây dựng mạch nguyên lý qua mô phỏng Altium Designer

2.1.3. Mạch nguyên lý

SVTH: Trần Hợp Trình – D14XLTH1 16


Hình 2.2: Mạch nguyên lý

Mạch bao gồm 3 khối:


- Khối nguồn:
+ Sử dụng nguồn vào 12v qua IC7805 để tạo nguồn 5v sử dụng cho mạch.
+ Jac DC làm đầu kết nối.
+ 2 tụ gốm 103 để chỉnh lưu dòng điện vào, hạ áp các xung điện cao.
+ 2 tụ hóa 2200uF/16V dùng làm nguồn nuôi cho 7805 và cũng có chức năng ổn
định dòng.

Hình 2.3: Khối nguồn của mạch

- Khối vi điều khiển: Chỉ gồm Arduino Nano (thư viện LIBRARY) được kết nối với
các thiết bị ngoại vi.

SVTH: Trần Hợp Trình – D14XLTH1 17


- Các thiết bị kết nối tới arduino.
+ JP3 (thư viện LIBRARY) dùng mô phỏng servo.
+ JP8 (thư viện LIBRARY) dùng mô phỏng RFID và bàn phím 4x4.
+ JP4 (thư viện LIBRARY) dùng mô phỏng I2C.
+ Speaker dùng mô phỏng thiết bị tạo âm thanh.

2.2. Ngôn ngữ lập trình Arduino được sử dụng trong mạch

Giao diện thiết kế đơn giản giúp ta dễ dàng sử dụng, chương trình được viết dựa trên
ngôn ngữ lập trình C đã được học.

Thư viện đã được viết sẵn giúp đã dễ dàng sử dụng để giao tiếp với phần cứng trong
mạch.

Arduino Nano được kết nối với máy tính qua cổng Mini - USB và sử dụng chip
CH340 để chuyển đổi USB sang UART, chương trình điều khiển được nạp vào bằng
dây cáp USB 2 đầu. Arduino sẽ lưu trữ và xử lý các lệnh đã được lập trình để điều khiển
các thiết bị ngoại vi đã được kết nối.

2.3. Nguyên lý hoạt động của các module

2.3.1. Nguyên lý quét phím của module bàn phím 4x4

Module được kết nối trực tiếp với Arduino qua các chân giao tiếp. Để kiểm tra xem
một nút đã được nhấn hay chưa, ta dùng phương pháp quét phím như sau:

- Với mỗi hàng (R1 đến R4), Chọn ra hàng Ri.


- Cấp cực âm (0v) cho hàng Ri:
+ Nếu điện áp ở chân Cj bất kì là dương => chưa nhấn.
+ Nếu điện áp ở chân Cj bất kì là âm => đang nhấn.

2.3.2. Nguyên lý hoạt động của module RFID

Radio Frequency Identification (RFID) là công nghệ nhận dạng đối tượng bằng sóng
vô tuyến. Hai thiết bị này hoạt động thu phát sóng điện từ cùng tần số với nhau. Các tần
số thường được sử dụng trong hệ thống RFID là 125Khz hoặc 900Mhz .

Cấu tạo

SVTH: Trần Hợp Trình – D14XLTH1 18


Một thiết bị hay một hệ thống RFID được cấu tạo bởi hai thành phần chính là thiết bị
đọc ( reader) và thiết bị phát mã RFID có gắn chip hay còn gọi là tag. Thiết bị đọc được
gắn antenna để thu- phát sóng điện từ, thiết bị phát mã RFID tag được gắn với vật cần
nhận dạng, mỗi thiết bị RFID tag chứa một mã số nhất định và không trùng lặp nhau.

Nguyên lý hoạt động

Hình 2.4: Nguyên lý hoạt động RFID

Thiết bị RFID reader phát ra sóng điện từ ở một tần số nhất định, khi thiết bị RFID
tag trong vùng hoạt động sẽ cảm nhận được sóng điện từ này và thu nhận năng lượng từ
đó phát lại cho thiết bị RFID Reader biết mã số của mình. Từ đó thiết bị RFID reader
nhận biết được tag nào đang trong vùng hoạt động , sau đó dữ liệu được đưa đến Arduino
và truyền về máy tính qua cổng giao tiếp.

Hình 2.5: Thẻ chíp RFID

Độ bảo mật và tin cậy

SVTH: Trần Hợp Trình – D14XLTH1 19


Thẻ chip (tag) RFID chứa rất nhiều mã nhận dạng khác nhau, thông thường là 32bit
tương ứng với hơn 4 tỷ mã số khác nhau. Ngoài ra mỗi thẻ chip RFID được gán một mã
số khác nhau . Do vậy khi một vật được gắn chip RFID thì khả năng nhận dạng nhầm
vật đó với 1 thẻ chip RFID khác là rất thấp, xác suất là 1 phần 4 tỷ.

Với ưu điểm về mặt công nghệ như vậy nên sự bảo mật và độ an toàn của các thiết bị
ứng công nghệ RFID là rất cao.

2.4. Sơ đồ khối và nguyên lý hoạt động của mạch

2.4.1. Sơ đồ khối của mạch

Hình 2.6: Sơ đồ khối

2.4.2. Nguyên lý hoạt động của mạch

Ở đề tài này, em sử dụng hai thiết bị để nhận dữ liệu đầu vào là module RFID và bàn
phím Keyboard 3x4.

SVTH: Trần Hợp Trình – D14XLTH1 20


 Cách 1: Sử dụng thẻ RFID
- Em chuẩn bị sẵn 2 thẻ RFID. Một thẻ đúng là một thẻ sai.
- Khi đưa bất cứ thẻ nào vào module RFID. Đầu đọc của module sẽ nhận mã thẻ đó.
Sau đó dữ liệu sẽ được đẩy lên và xử lý trong arduino nano.
- Nếu đúng arduino nano sẽ đẩy đi cùng lúc 2 tín hiệu điều khiển. Một tín hiệu để
điều khiển động cơ servo mở cửa và một tín hiệu điều khiển để hiển thị thông báo
mở cửa lên LCD thông qua module I2C.
 Cách 2: Sử dụng bàn phím Keyboard 3x4
- Mật khẩu là 12345678. Nếu nhập đúng arduino nano sẽ đẩy đi cùng lúc 2 tín hiệu
điều khiển. Một tín hiệu để điều khiển động cơ servo mở cửa và một tín hiệu điều
khiển để hiển thị thông báo mở cửa lên LCD thông qua module I2C.
- Nếu mã sai và nhập sai 3 lần, dữ liệu xử lý trong arduino nano sẽ gửi cảnh báo lên
màn hình LCD.
Lưu đồ thuật toán

Hình 2.7: Lưu đồ thuật toán

SVTH: Trần Hợp Trình – D14XLTH1 21


2.5. Giao tiếp SPI và I2C

2.5.1. Chuẩn giao tiếp SPI giữa Arduino Nano với module RFID-RC552

SPI (Serial Peripheral Bus) là một chuẩn truyền thông nối tiếp tốc độ cao do hãng
Motorola đề xuất. Đây là kiểu truyền thông Master-Slave, trong đó có 1 chip Master
điều phối quá trình tuyền thông và các chip Slaves được điều khiển bởi Master vì thế
truyền thông chỉ xảy ra giữa Master và Slave. SPI là một cách truyền song công (full
duplex) nghĩa là tại cùng một thời điểm quá trình truyền và nhận có thể xảy ra đồng thời.
SPI đôi khi được gọi là chuẩn truyền thông “4 dây” vì có 4 đường giao tiếp trong chuẩn
này đó là SCK (Serial Clock), MISO (Master Input Slave Output), MOSI (Master Ouput
Slave Input) và SS (Slave Select). Hình 2.7 thể hiện một kết SPI giữa một chip Master
và 3 chip Slave thông qua 4 đường.

- MISO - Mang các dữ liệu từ các thiết bị SPI về arduino.


- MOSI - Mang các dữ liệu từ Arduino đến các thiết bị SPI RFID.
- SS - Chọn thiết bị SPI cần làm việc.
- SCK - dòng đồng bộ.

Đối với Arduin Nano các chân giao tiếp SPI Lần lượt là SS-10; MOSI-11; MISO-
12; SCK-13.

Hình 2.8: Sơ đồ chân giao tiếp SPI

Dữ liệu được truyền qua lại giữa 2 đường MISO và MOSI. Điều này chỉ thực hiện
được khi Dòng SS được thiết lập ở mức thấp LOW. Nói cách khác, để giao tiếp với một
thiết bị SPI chúng ta cần thiết lập các dòng SS với thiết bị ở mức thấp LOW, sau đó giao
tiếp với nó, sau đó thiết lập các dòng SS trở lại mức cao HIGH.

2.5.2. Giao tiếp I2C

LCD có quá nhiều chân gây khó khăn trong quá trình kết nối và chiếm dụng nhiều
chân của arduino. Module chuyển đổi I2C cho LCD đã giải quyết vấn đề này , thay vì

SVTH: Trần Hợp Trình – D14XLTH1 22


sử dụng tối thiểu 6 chân của vi điều khiển để kết nối với LCD (RS, EN, D7, D6, D5 và
D4) thì với module chuyển đổi chỉ cần sử dụng 2 chân (SCL, SDA) để kết nối. Module
chuyển đổi I2C hỗ trợ các loại LCD sử dụng driver HD44780, kết nối với arduino thông
qua giao tiếp I2C.

2.5.2.a. Cấu tạo và nguyên lý hoạt động

I2C sử dụng hai đường truyền tín hiệu:

- Một đường xung nhịp đồng hồ (SCL) chỉ do Master phát đi (thông thường ở
100kHz và 400kHz. Mức cao nhất là 1Mhz và 3.4MHz).
- Một đường dữ liệu (SDA) theo 2 hướng.

Hình 2.9: Sơ đồ kết nối

Một giao tiếp I2C dựa vào quan hệ chủ/tớ. Như vậy arduino nano muốn gửi dữ liệu
đến thiết bị LCD, quá trình được thực hiện như sau:

- Thiết bị arduino nano (Chủ) xác định đúng địa chỉ của thiết bị LCD (tớ), cùng với
việc xác định địa chỉ, Arduino nano sẽ quyết định việc đọc hay ghi vào thiết bị tớ.
- Arduino gửi dữ liệu tới thiết bị LCD.
- Arduino kết thúc quá trình truyền dữ liệu.

Khi Arduino muốn nhận dữ liệu từ LCD, quá trình diễn ra như trên, chỉ khác là
Arduino sẽ nhận dữ liệu từ LCD. Trong giao tiếp này, Arduino là chủ còn LCD vẫn là
tớ. Chi tiết việc thiết lập một giao tiếp giữa hai thiết bị sẽ được mô tả chi tiết trong các
mục dưới đây:

SVTH: Trần Hợp Trình – D14XLTH1 23


Hình 2.10: Trình tự truyền bit trên đường truyền

- Thiết bị chủ tạo một điều kiện start. Điều kiện này thông báo cho thiết bị
tớ lắng nghe dữ liệu trên đường truyền.
- Thiết bị chủ gửi địa chỉ của thiết bị tớ mà thiết bị chủ muốn giao tiếp và cờ đọc/ghi
dữ liệu (nếu cờ thiết lập lên 1 byte tiếp theo được truyền từ thiết bị tớ đến thiết bị
chủ, nếu cờ thiết lập xuống 0 thì byte tiếp theo truyền từ thiết bị chủ đến thiết bị
tớ).
- Khi thiết bị tớ trên bus I2C có địa chỉ đúng với địa chỉ mà thiết bị chủ gửi sẻ phản
hồi lại bằng một xung.
- Giao tiếp giữa thiết bị chủ và tớ trên bus dữ liệu bắt đầu. Cả chủ và tớ đều có thể
nhận hoặc truyền dữ liệu tùy thuộc vào việc truyền thông là đọc hay viết. Bộ truyền
gửi 8 bit dữ liệu tới bộ nhận, Bộ nhận trả lời với một bit.
- Để kết thúc quá trình giao tiếp, thiết bị chủ tạo ra một điều kiện stop.

2.5.2.b. Điều kiện START và STOP

START và STOP là những điều kiện bắt buộc phải có khi thiết bị chủ arduino muốn
thiết lập giao tiếp với thiết bị LCD trên bus I2C. START là điều kiện khởi đầu,báo hiệu
bắt đầu của giao tiếp, còn STOP báo hiệu kết thúc một giao tiếp. Hình dưới đây mô tả
điều kiện START và STOP.

Hình 2.11: Xung truyền SDA và SCL

Ban đầu khi chưa thực hiện quá trình giao tiếp, cả hai đường SDA và SCL đều ở mức
cao (SDA = SCL = HIGH). Lúc này bus I2C được coi là rỗi (“bus free”), sẵn sàng cho

SVTH: Trần Hợp Trình – D14XLTH1 24


một giao tiếp. Hai điều kiện START và STOP là không thể thiếu trong việc giao tiếp
giữa các thiết bị I2C với nhau.

Điều kiện START: một sự chuyển đồi trạng thái từ cao xuống thấp trên đường SDA
trong khi đường SCL đang ở mức cao (cao = 1; thấp = 0) báo hiệu một điều kiện START.

Đỉều kiện STOP: Một sự chuyển đổi trạng thái từ mức thấp lên cao trên đường SDA
trong khi đường SCL đang ở mức cao. Cả hai điều kiện START và STOP đều được tạo
ra bởi thiết bị chủ. Sau tín hiệu START, bus I2C coi như đang trong trạng thái làm việc
(busy). Bus I2C sẽ rỗi, sẳn sàng cho một giao tiếp mới sau tín hiệu STOP từ phía thiết
bị chủ.

Truyền dữ liệu: Mỗi xung clock có một bit dữ liệu được truyền. Mức tín hiệu SDA
chỉ được thay đổi khi xung clock đang ở mức thấp, và ổn định khi xung clock ở mức
cao. Thiết bị tớ có thể lấy mẫu dữ liệu khi xung clock ở mức cao.

Hình 2.12: Xung Clock ở mức cao

2.5.3. So sánh hai giao tiếp SPI và I2C

- I2C sử dụng chỉ có hai tín hiệu để giao tiếp hai chiều, trong khi SPI sử dụng ba.
Bắt đầu và ngừng điều kiện được chỉ định bởi một quá trình chuyển đổi trên SDA
(dữ liệu) dòng, với CAO dòng đồng hồ. SPI không cần đó, kể từ khi đồng hồ thực
sự thay đổi dữ liệu, cả trong và ngoài của master/slave.
- I2C cho phép các địa chỉ, SPI thì không. Trong thực tế, SPI tín hiệu yêu cầu bổ
sung để chọn những slave khác nhau.
- I2C là một giao tiếp đồng bộ, bao gồm phát hiện va chạm, SPI sử dụng một tổng
thể duy nhất mà thay đổi dữ liệu vào/ra khỏi sổ đăng ký thay đổi trong tổng thể và
các slave hoạt động.
- I2C cho phép trả về xung ACK sau khi nhận dữ liệu, SPI thì không.

SVTH: Trần Hợp Trình – D14XLTH1 25


- I2C tín hiệu được mở cổng với pullups, cho phép truy cập nhiều. Trong hầu hết
trường hợp, SPI là nhanh hơn.

2.6. Kết luận chương

Ở chương này em đã đưa ra mạch nguyên lý và nêu tên các khối trong mạch. Các
phương thức giao tiếp SPI và I2C, phương thức quét phím ma trận đã được nêu ra trong
đề tài.

Ở chương sau em sẽ trình bày kết quả sau quá trình thực hiện làm mạch và chương
trình điều khiển cho mạch khóa số điện tử.

SVTH: Trần Hợp Trình – D14XLTH1 26


CHƯƠNG III: KẾT QUẢ

3.1. Mạch in và mạch sau khi hoàn thành

3.1.1. Mạch PCB

Sau khi thực hiện vẽ mạch nguyên lý ta kiểm tra lại và chuyển sang mạch PCB, thực
hiện sắp xếp linh kiện sao cho phù hợp, để quá trình thực hiện đi dây cho mạch dễ
dàng hơn. Sau quá trình sắp xếp ta thực hiện đi dây cho mạch sao cho các dây kết nối
với nhau và ít sử dụng dây hai lớp, cuối cùng ta được mạch như hình 3.1.

Hình 3.1: Mạch in

3.1.2. Mạch sau khi đã hoàn thành

SVTH: Trần Hợp Trình – D14XLTH1 27


Hình 3.2: Mạch khóa số sau khi hoàn thành

 Quá trình thực hiện làm mạch in cho sản phẩm:


+ Sau khi thực hiện xây dựng mạch PCB trên Altium Designer ta bắt đầu xuất fide
PDF và in ra giấy vàng phục vụ cho việc làm mạch.
+ Mạch được in ra phiếp đồng sao cho vừa với khuân hình mạch đã được in trong
giấy.
+ Chọn mũi khoan phù hợp để thực hiện khoan các chân đã được in ra phiếp đồng
+ Cuối cùng thực hiện lắp linh kiện và hàn mạch sao cho các chân đúng như trong
mạch in.
 Đánh giá sản phẩm: Các chức năng của sản phẩm đã hoạt động tốt, mạch ổn
định không có vấn đề chập cháy linh kiện. Các yêu cầu được đưa ra ở đề tài đồ án đã
được hoàn thành đúng.

3.2. Chương trình code trên arduino

#include <RFID.h>

#include <Servo.h>

#include <Wire.h>

SVTH: Trần Hợp Trình – D14XLTH1 28


#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27, 16, 2);

Servo myservo;

#include <SPI.h>

#include <Keypad.h>

const byte ROWS = 4;

const byte COLS = 4;

int dem=0;

String typePass = "";

char hexaKeys[ROWS][COLS] = {

{'1','2','3','A' },

{'4','5','6','B' },

{'7','8','9','C' },

{'*','0','#','D' }

};

byte rowPins[ROWS] = {8, 7, 6, 5};

byte colPins[COLS] = {A3, A2, A1, A0};

Keypad customKeypad = Keypad( makeKeymap(hexaKeys), rowPins,

colPins, ROWS, COLS);

#define SS_PIN 10

#define RST_PIN 9

RFID rfid(SS_PIN, RST_PIN);

SVTH: Trần Hợp Trình – D14XLTH1 29


unsigned char ID_Card[5];

unsigned char RDID_CODE[5] = {16, 147, 24, 25, 130};

String PASS_CODE[] = {"123456"};

unsigned char PASS[5];

boolean check_id = false;

unsigned char i;

void setup()

myservo.attach(3);

Serial.begin(9600);

lcd.init();

lcd.backlight();

lcd.display();

lcd.clear();

pinMode(2, OUTPUT);

digitalWrite(2, LOW);

lcd.setCursor(4,0);

lcd.print("hello");

delay(1000);

lcd.setCursor(2,1);

lcd.print("MOI QUET THE");

delay(1000);

SVTH: Trần Hợp Trình – D14XLTH1 30


SPI.begin();

rfid.init();

myservo.write(90);

void buzze()

digitalWrite(2, HIGH);

delay(100);

digitalWrite(2, LOW);

delay(100);

void buzze1()

digitalWrite(2, HIGH);

delay(400);

digitalWrite(2, LOW);

delay(100);

void buzze2()

digitalWrite(2, HIGH);

delay(400);

digitalWrite(2, LOW);

delay(400);

SVTH: Trần Hợp Trình – D14XLTH1 31


digitalWrite(2, HIGH);

delay(400);

digitalWrite(2, LOW);

void loop()

char password = 0;

char customKey = customKeypad.getKey();

if((customKey == 'A')||(customKey == 'B')||(customKey == 'C')||(customKey ==


'D')){

lcd.clear();

lcd.setCursor(1,0);

lcd.print("NHAP PASSWORD:");

int index = 5;

while(password != '*'){

password = customKeypad.getKey();

if(password){

lcd.setCursor(index,1);

index ++;

lcd.print("*");

SVTH: Trần Hợp Trình – D14XLTH1 32


if(password == '#'){

lcd.clear();

lcd.setCursor(1,0);

lcd.print("NHAP PASSWORD:");

typePass = "";

if((password != '*') && (password != '#'))

typePass += String(password);

for(i=0; i <6; i++){

if(typePass == PASS_CODE[i]){

check_id = true;

password=0;

typePass = "";

break;

else

check_id = false;

typePass = "";

dem++;

if(dem==3)

SVTH: Trần Hợp Trình – D14XLTH1 33


{

dem=0;

lcd.clear();

lcd.setCursor(0,0);

lcd.print("Nhap sai qua 3 lan");

buzze2();

delay(5000);

break;

check_user();

/////////////////

/////////////////

if (rfid.isCard())

if (rfid.readCardSerial())

buzze();

for(i=0; i<5; i++)

ID_Card[i] = rfid.serNum[i];

SVTH: Trần Hợp Trình – D14XLTH1 34


Serial.print(ID_Card[i]);

Serial.print(" ");

delay(200);

for(i=0; i <5; i++){

if(ID_Card[i]== RDID_CODE[i]){

check_id = true;

break;

else

check_id = false;

check_user();

rfid.halt();

void check_user(){

if(check_id){

lcd.clear();

lcd.setCursor(4,1);

lcd.print("MOI VAO ");

myservo.write(180);

SVTH: Trần Hợp Trình – D14XLTH1 35


buzze();

delay(50);

buzze();

delay(4000);

myservo.write(90);

buzze();

else {

lcd.setCursor(0,1);

lcd.print("SAI HAY THU LAI");

buzze1();

delay(1000);

lcd.clear();

lcd.setCursor(4,0);

lcd.print("XIN CHAO");

lcd.setCursor(2,1);

lcd.print("MOI QUET THE");

3.3. Kết luận chương

Ở chương III trình bày về kết quả sau khi thực hiện làm mạch in và hàn mạch ta được
mạch khóa như trên hình 3.2, chương trình được nạp cho Arduino Nano qua cổng USB.

Thiết kế và hoàn thành sản phẩm, hiểu rõ nguyên tắc hoạt động của sản phẩm, mức
độ an toàn và bảo mật cao.

SVTH: Trần Hợp Trình – D14XLTH1 36


Chương IV: KẾT LUẬN

Trải qua một thời gian nghiên cứu thực hiện đề tài, em đã hoàn thành đồ án “Khóa
số điện tử sử dụng bàn phím và thẻ từ” theo như các nội dung và yêu cầu đã đặt ra
trong bản đề cương đề tài. Trong quá trình thực hiện đã gặp nhiều vấn đề khó khăn
nhưng đồng thời cũng chính là động lực thúc đẩy để em hoàn thành đồ án tốt nghiệp
này.

Kết quả đồ án đã đạt được những nội dung sau đây:

- Tìm hiểu về các giao tiếp SPI và I2C, phương thức quét phím ma trận.
- Sử dụng Altium Designer để thiết kế mạch nguyên lý và mạch in.
- Lập trình cho vi điều khiển Arduino Nano.
- Nắm rõ hơn công nghệ RFID.

Hướng phát triển của đồ án:

- Nghiên cứu thêm các tính năng mới và hoàn thiện sản phẩm.
- Sử dụng thêm các cảm biến có tính năng thông minh hơn như đếm được số người
ra vào cửa.
- Thêm app điều khiển để đóng mở cửa từ xa thông qua Wifi hoặc Bluetooth.
- Thông báo cảnh bảo gửi về điện thoại thông qua tin nhắn.

Qua quá trình thực hiện đồ án được sự hướng dẫn tận tình của các thầy cô, em đã
được làm việc và nghiên cứu một cách khoa học hơn, hiệu quả hơn. Qua đó phần nào
thể hiện được sự đam mê với ngành kỹ thuật điện tử. Những kiến thức đạt được sau quá
trình nghiên cứu và học tập tại trường, nhất là những kiến thức tiếp thu được trong quá
trình thực hiện đồ án sẽ rất có ích cho em trong quá trình làm việc sau này.

Do kiến thức còn hạn chế nên quá trình thực hiện không tránh khỏi những thiếu sót
và việc trình bày nội dung cũng có những điểm chưa hoàn thiện. Rất mong được quý
Thầy Cô góp ý và bổ sung để đề tài nghiên cứu này được hoàn thiện hơn.

Em xin chân thành cảm ơn!

SVTH: Trần Hợp Trình – D14XLTH1 37


TÀI LIỆU THAM KHẢO

Danh mục các website tham khảo

1. http://arduino.vn
2. http:// laptrinhdieukhien.com
3. http://youtube.com

SVTH: Trần Hợp Trình – D14XLTH1 38

You might also like