Tải bản đầy đủ (.pdf) (55 trang)

KHÓA CỬA THÔNG MINH CÓ CHỨC NĂNG ĐỔI MẬT KHẨU, THÊM XÓA VÂN TAY FULL CODE

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.54 MB, 55 trang )

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH
KHOA ĐIỆN – ĐIỆN TỬ
BỘ MƠN KỸ THUẬT MÁY TÍNH – VIỄN THƠNG

MƠN HỌC: ĐỒ ÁN 2
ĐỀ TÀI

THIẾT KẾ KHĨA CỬA THÔNG MINH DỰA
TRÊN ARDUINO MEGA 2560
NGÀNH CÔNG NGHIỆP KỸ THUẬT ĐIỆN TỬ - VIỄN THÔNG

Sinh viên: THÁI TUẤN VŨ
MSSV: 19161327
Hướng dẫn: ThS. ĐẶNG PHƯỚC HẢI TRANG

Học kì I năm học: 2022 – 2023
TP. Hồ Chí Minh, tháng 12 năm 2022

i


Sinh viên thực hiện đề tài: Thái Tuấn Vũ - 19161327

Giảng viên cho điểm:

Nhận xét của giảng viên
………………………………………………………………………
………………………………………………………………………
………………………………………………………………………
………………………………………………………………………
………………………………………………………………………


………………………………………………………………………
………………………………………………………………………
………………………………………………………………………
………………………………………………………………………
………………………………………………………………………
………………………………………………………………………
Ngày…..tháng…..năm 2022
Chữ ký của giảng viên hướng dẫn
(Ký và ghi rõ họ tên)

ii


DANH MỤC HÌNH ẢNH
Hình 2. 1 Dạng song q trình thiết bị chủ ghi dữ liệu vào thiết bị tớ ................................ 3
Hình 2. 2 Dạng sóng q trình thiết bị chủ đọc dữ liệu từ thiết bị tớ .................................. 4
Hình 2. 3 Định dạng khung dữ liệu UART 10 bit ............................................................... 5
Hình 2. 4 Quá trình nhận dữ liệu UART ............................................................................. 6
Hình 2. 5 Hình ảnh thực tế về Ardiuno Mega 2560 ............................................................ 6
Hình 2. 6 Sơ đồ chân Arduino Mega 2560 .......................................................................... 8
Hình 2. 7 Hình ảnh thực tế về cảm biến vân tay AS608 ................................................... 10
Hình 2. 8 Sơ đồ chân mô-đun cảm biến vân tay AS608 .................................................... 12
Hình 2. 9 Mơ-đun SIM800L .............................................................................................. 13
Hình 2. 10 Hình ảnh LCD 16x2 ......................................................................................... 15
Hình 2. 11 Mơ-đun giao tiếp I2C ....................................................................................... 16
Hình 3. 1 Sơ đồ khối thiết kế ............................................................................................. 17
Hình 3. 2 Mơ-đun giảm áp LM2596 .................................................................................. 18
Hình 3. 3 Mạch nguyên lý khối nguồn .............................................................................. 19
Hình 3. 4 Kết nối khối xử lý trung tâm với các khối ngoại vi ........................................... 19
Hình 3. 5 Hình ảnh bàn phím ma trận 4x4 ........................................................................ 20

Hình 3. 6 Mạch ngun lý cịi báo ..................................................................................... 21
Hình 3. 7 Mạch ngun lý đóng mở khóa cửa ................................................................... 21
Hình 3. 8 Khóa điện 12V ................................................................................................... 22
Hình 3. 9 Lưu đồ giải thuật phần 1 .................................................................................... 23
Hình 3. 10 Lưu đồ giải thuật phần 2 .................................................................................. 24
Hình 3. 11 Lưu đồ giải thuật phần 3 .................................................................................. 25
Hình 3. 12 Lưu đồ giải thuật phần 4 .................................................................................. 26
Hình 3. 13 Lưu đồ giải thuật phần 5 .................................................................................. 27
Hình 4. 1 Mạch thực tế của thiết kế ................................................................................... 28
Hình 4. 2 Giao diện khi nhập mật khẩu ............................................................................. 29
Hình 4. 3a Giao diện khi mật khẩu đúng ........................................................................... 29
Hình 4. 3b Giao diện khi mật khẩu sai .............................................................................. 29
Hình 4. 4a Giao diện khi vân tay đúng .............................................................................. 30
Hình 4. 4b Giao diện khi vân tay sai ................................................................................. 30
Hình 4. 5 Giao diện yêu cầu xác minh vân tay chủ nhà .................................................... 30
Hình 4. 6 Giao diện thêm vân tay ...................................................................................... 31
Hình 4. 7 Giao diện xóa vân tay ........................................................................................ 31
iii


DANH MỤC BẢNG
Bảng 2. 1 Thông số kỹ thuật Mô-đun cảm biến vân tay AS608 ........................................ 11
Bảng 2. 2 Chức năng các chân của mô-đun cảm biến vân tay AS608 .............................. 12
Bảng 2. 3 Chức năng các chân của mô-đun SIM800L V2 ................................................ 13

iv


CÁC TỪ VIẾT TẮT
Từ viết tắt

AT
DC
DCS
EEPROM
EGSM
FRR
FAR
GND
GPRS
GSM
ID
IDE
I2C
LCD
PCS
SCL
SDA
SIM
SMS
SPI
SRAM
UART
USB

Từ gốc
Attention command
Direct Current
Digital Cellular System
Electrically Erasable Programmable Read-Only Memory
Extended Groupe Spécial Mobile

False Rejection Rate
False Acceptance Rate
Ground
General Packet Radio Service
Groupe Spécial Mobile
Identification
Integrated Development Environment
Inter-Integrated Circuit
Liquid Crystal Display
Personal Communication Service
Serial Clock
Serial Data
Subscriber Identity Module
Short Message Service
Serial Peripheral Interface
Static Random Access Memory
Universal Asynchronous Receiver – Transmitter
Universal Serial Bus

v


MỤC LỤC
DANH MỤC HÌNH ẢNH ......................................................................................................
DANH MỤC BẢNG ..............................................................................................................
CÁC TỪ VIẾT TẮT ..............................................................................................................
Chương 1: TỔNG QUAN .................................................................................................... 1
1.1

LÝ DO CHỌN ĐỀ TÀI .......................................................................................... 1


1.2

MỤC TIÊU NGHIÊN CỨU ................................................................................... 1

1.3

GIỚI HẠN CỦA ĐỀ TÀI ....................................................................................... 2

1.4

BỐ CỤC .................................................................................................................. 2

Chương 2: CƠ SỞ LÝ THUYẾT ......................................................................................... 3
2.1

GIỚI THIỆU MỘT VÀI CHUẨN TRUYỀN THƠNG CĨ DÂY ......................... 3

2.1.1

Giới thiệu chuẩn truyền thơng I2C ................................................................... 3

2.1.2

Giới thiệu chuẩn truyền thông UART không đồng bộ ..................................... 5

2.2

GIỚI THIỆU BOARD ARDUINO MEGA 2560 ................................................... 6


2.3

GIỚI THIỆU MÔ-ĐUN CẢM BIẾN VÂN TAY AS608 .................................... 10

2.4

GIỚI THIỆU MODULE SIM800L V2 ................................................................ 13

2.5

GIỚI THIỆU MÀN HÌNH LCD 16X2 KÈM MÔ-ĐUN GIAO TIẾP I2C .......... 15

Chương 3: THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG .................................................... 17
3.1

SƠ ĐỒ KHỐI THIẾT KẾ ..................................................................................... 17

3.2

THIẾT KẾ CHI TIẾT ........................................................................................... 18

3.2.1

Khối nguồn ..................................................................................................... 18

3.2.2

Khối xử lý trung tâm ...................................................................................... 19

3.2.3


Khối cảm biến vân tay và khối mơ-đun SIM ................................................. 20

3.2.4

Khối ma trận phím ......................................................................................... 20

3.2.5

Khối hiển thị ................................................................................................... 20

3.2.6

Khối chấp hành .............................................................................................. 21

3.3

LƯU ĐỒ GIẢI THUẬT ....................................................................................... 23

Chương 4: KẾT QUẢ THỰC HIỆN .................................................................................. 28
4.1

KẾT QUẢ THỰC HIỆN PHẦN CỨNG .............................................................. 28

4.2

KẾT QUẢ THỰC HIỆN PHẦN MỀM ................................................................ 29
vi



Chương 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ....................................................... 32
5.1

KẾT LUẬN ........................................................................................................... 32

5.2

HƯỚNG PHÁT TRIỂN ........................................................................................ 32

TÀI LIỆU THAM KHẢO .................................................................................................. 33
PHỤ LỤC MÃ NGUỒN CHƯƠNG TRÌNH..................................................................... 34

vii


Chương 1: TỔNG QUAN
1.1 LÝ DO CHỌN ĐỀ TÀI
Ngày nay, với sự phát triển của công nghệ hiện đại, những chiếc khóa cửa thơng minh
dần thay thế những khóa chìa truyền thống. Khóa cửa thơng minh giúp hạn chế những nguy
cơ như: nhà bị đột nhập, mất cắp,… bảo vệ những tài sản có giá trị trong gia đình. Trong
vài năm trở lại đây, nhu cầu sử dụng khóa thơng minh ngày càng trở nên phổ biến, đặc biệt
là các khu chung cư, biệt thự cao cấp. Bên cạnh đó, việc phát triển khơng ngừng của các
dịng vi điều khiển đã cho ra đời nhiều loại sản phẩm thông minh nhỏ gọn, tích hợp nhiều
chức năng cho người dùng dễ sử dụng. Không thể không kể đến kit Arduino, một sản phẩm
được sử dụng phổ biến và có cộng đồng người dùng khá lớn. Kit Arduino có thể kết hợp
với nhiều mô-đun khác để tạo nên những ứng dụng thiết thực cho cuộc sống hiện đại ngày
nay. Với những đặc tính trên, tác giả đã quyết định thực đề tài “THIẾT KẾ CỬA THÔNG
MINH DỰA TRÊN ARDUINO MEGA 2560”, thực hiện mơ hình bao gồm Arduino, mơ-đun
cảm biến vân tay, bàn phím, mơ-đun SIM để làm bộ khóa cửa thơng minh.


1.2 MỤC TIÊU NGHIÊN CỨU
Thiết kế khóa cửa thơng minh có các chức năng sau:
-

Cho phép đóng/mở cửa bằng vân tay.

-

Cho phép đóng/mở cửa bằng mật khẩu.

-

Cho phép đóng/mở cửa từ xa bằng tin nhắn SMS.

-

Cho phép thêm ID vân tay mới, xóa ID vân tay đã có và thay đổi mật khẩu (chỉ có
chủ nhà mới dùng được các chức năng này).

-

Có màn hình hiển thị thơng tin, để giao tiếp với người dùng.

-

Có nguồn dự phịng khi mất điện.

1



1.3 GIỚI HẠN CỦA ĐỀ TÀI


Thiết kế sử dụng Arduino Mega 2560 giao tiếp với mô-đun cảm biến vân tay AS608

và mô-đun SIM 800L thông qua chuẩn truyền thông UART. Đồng thời, đề tài cũng sử dụng
chuẩn truyền thông I2C để giao tiếp giữa Arduino và màn hình LCD.


Người thiết kế sử dụng phần mềm Arduino IDE để viết và biên dịch chương trình

điều khiển, cùng với các thư viện hỗ trợ lập trình bao gồm: <Wire.h>,
<LiquidCrystal_I2C.h> và <Adafruit_Fingerprint.h>.

1.4 BỐ CỤC
Nội dung đề tài gồm 5 chương:
Chương 1: Tổng quan: Chương này trình bày lý do chọn đề tài, cũng như mục tiêu
và phạm vi nghiên cứu của đề tài.
Chương 2: Cơ sở lý thuyết: Chương này trình bày lý thuyết các chuẩn truyền thơng
có dây được sử dụng trong đề tài, cũng như giới thiệu các mô-đun, linh kiện được lựa chọn.
Chương 3: Thiết kế hệ thống: Trình bày sơ đồ khối, thiết kế sơ đồ nguyên lý cho
từng khối và xây dựng lưu đồ giải thực của hệ thống.
Chương 4: Kết quả thực hiện: Trình bày các kết quả thực hiện thiết kế.
Chương 5: Kết luận và hướng phát triển: Đưa ra kết luận và hướng phát triển của
đề tài.

2


Chương 2: CƠ SỞ LÝ THUYẾT

2.1 GIỚI THIỆU MỘT VÀI CHUẨN TRUYỀN THƠNG CĨ DÂY
2.1.1 Giới thiệu chuẩn truyền thơng I2C
I2C viết tắc của từ Inter-Integrated Circuit là một chuẩn truyền thông do hãng điện tử
Philips Semiconductor sáng lập cho phép giao tiếp một thiết bị chủ (Master) với nhiều thiết
bị tớ (Slave) thơng qua 2 đường tín hiệu: SDA (serial data) dùng để truyền tải dữ liệu và
SCL (serial clock) để truyền tải xung clock do Master phát cho Slave nhằm đồng bộ thời
gian tồn tại của các bit dữ liệu trên đường truyền. Để phân biệt giữa các Slave thì mỗi Slave
có một địa chỉ riêng 7 bit hoặc 10 bit do nhà sản xuất thiết bị có sử dụng chuẩn truyền thơng
I2C thiết lập.
Dạng sóng q trình thiết bị chủ ghi dữ liệu vào thiết bị tớ như hình 2.1: Đầu tiên thiết
bị chủ tạo trạng thái START để bắt đầu quá trình truyền dữ liệu . Tiếp đến, thiết bị chủ gửi
địa chỉ của thiết bị tớ cần giao tiếp. Trong dữ liệu 8 bit thì có 7 bit địa chỉ và 1 bit điều
khiển đọc/ghi (R/W) bit này bằng 0 để báo cho thiết bị tớ sẽ nhận byte tiếp theo. Sau đó,
thiết bị chủ chờ nhận tín hiệu bắt tay từ thiết bị tớ cần giao tiếp. Tiếp theo, thiết bị chủ tiến
hành gửi địa chỉ của ô nhớ bắt đầu cần ghi dữ liệu. Sau đó, thiết bị chủ chờ nhận tín hiệu
trả lời từ thiết bị tớ. Cuối cùng, thiết bị chủ tiến hành gửi dữ liệu để ghi vào thiết bị tớ mỗi

Hình 2. 1 Dạng song quá trình thiết bị chủ ghi dữ liệu vào thiết bị tớ
Nguồn: trang 365 tài liệu tham khảo [3]
3


lần 1 byte, sau mỗi byte gửi xong thì tiến hành chờ nhận tín hiệu trả lời từ thiết bị tớ, quá
trình thực hiện cho đến byte cuối cùng xong rồi thì thiết bị chủ chuyển sang trạng thái STOP
để chấm dứt q trình giao tiếp.
Dạng sóng q trình thiết bị chủ đọc dữ liệu từ thiết bị tớ như hình 2.2: Thiết bị chủ
tạo trạng thái START để bắt đầu quá trình truyền dữ liệu. Tiếp đến, thiết bị chủ gửi địa chỉ
của thiết bị tớ cần giao tiếp. Trong dữ liệu 8 bit thì có 7 bit địa chỉ và 1 bit điều khiển
đọc/ghi (R/W) bit này bằng 0 để báo cho thiết bị tớ sẽ nhận byte tiếp theo. Tiếp theo, thiết
bị chủ chờ nhận tín hiệu bắt tay từ thiết bị tớ. Sau đó, thiết bị chủ tiến hành gửi địa chỉ của

ô nhớ bắt đầu cần đọc dữ liệu. Kế tiếp, thiết bị chủ chờ nhận tín hiệu trả lời từ thiết bị tớ.
Sau đó, thiết bị chủ chuyển sang trạng thái STOP, bắt đầu lại trạng thái START, tiến hành
gửi địa chỉ của thiết bị và bit R/W bằng 1 để yêu cầu tớ gởi dữ liệu nội dung ô nhớ của địa
chỉ đã nhận. Cuối cùng, thiết bị chủ sau khi nhận sẽ báo tín hiệu trả lời, q trình này thực
hiện cho đến khi nhận hết dữ liệu mong muốn thì thiết bị chủ tạo tín hiệu STOP để chấm
dứt giao tiếp.

Hình 2. 2 Dạng sóng q trình thiết bị chủ đọc dữ liệu từ thiết bị tớ
Nguồn: trang 365 tài liệu tham khảo [3]

4


2.1.2 Giới thiệu chuẩn truyền thông UART không đồng bộ
UART (Universal Asynchronous Receiver – Transmitter) là một chuẩn truyền thông
nối tiếp cho phép truyền dữ liệu giữa hai thiết bị. Giao thức truyền thông này sử dụng 3
chân để truyền nhận dữ liệu, chân Tx có chức năng truyền dữ liệu, chân Rx có chức năng
nhận dữ liệu và chân GND của hai thiết bị phải được nối chung với nhau. Vì khơng có xung
clock để đồng bộ nên 2 thiết bị cần thống nhất trước tốc độ truyền nhận dữ liệu, số bit trong
1 frame cũng như bit kiểm tra lỗi. Tốc độ truyền có đơn vị bit per second (bps) cịn gọi là
Baud (số lần thay đổi tín hiệu trong 1 giây). Tốc độ baud truyền mặc định là 57600 bps và
có thể cài đặt tốc độ này trong dải từ 9600 – 115200 bps. Khi đã thống nhất tốc độ baud,
bên phát sẽ truyền dữ liệu theo khung với đúng tốc độ đã xác định trước và bên nhận sẽ xác
định thời điểm bắt đầu nhận để nhận dữ liệu.
Hình 2.3 minh họa khung dữ liệu với định dạng 10 bit truyền từ bên phát Tx sang
bên nhận Rx. Ở trạng thái không truyền dữ liệu đường tín hiệu ln ở mức logic ‘1’, để bắt
đầu truyền dữ liệu đường tín hiệu sẽ được kéo xuống mức logic ‘0’ (start bit). Sau đó, 8 bit
dữ liệu sẽ được truyền đi với bit đầu là bit có trọng số nhỏ nhất và bit cuối cùng là bit kết
thúc (stop bit) với mức logic ln là ‘1’. Khơng có bit kiểm tra (check bit).


Hình 2. 3 Định dạng khung dữ liệu UART 10 bit
Nguồn: tài liệu tham khảo [5]
Hình 2.4 mơ tả q trình nhận dữ liệu. Chân tín hiệu Rx sẽ đọc dữ liệu liên tục, khi
phát hiện có bit start, bên nhận sẽ chờ 1,5 chu kì bit để đọc bit dữ liệu đầu tiên. Từ thời
điểm đọc bit dữ liệu đầu tiên, bên nhận tiếp tục chờ 1 chu kì bit để đọc bit dữ liệu thứ 2,
tiếp tục chờ 1 chu kì bit để đọc bit dữ liệu thứ 3, tương tự như vậy cho đến khi đọc xong 8
bit dữ liệu. Ví dụ với tốc độ baud là 9600 bps nghĩa là độ rộng của tín hiệu hay 1 chu kì bit
là 104ms.
5


Hình 2. 4 Quá trình nhận dữ liệu UART
Nguồn: tài liệu tham khảo [5]

2.2 GIỚI THIỆU BOARD ARDUINO MEGA 2560
Arduino Mega 2560 (Hình 2.5) là một bo mạch vi điều khiển dựa trên ATmega2560 có
54 chân vào/ra kỹ thuật số (trong đó 14 chân có thể được sử dụng làm đầu ra PWM), 16
ngõ vào tương tự, 4 UART, SPI, I2C, bộ dao động thạch anh tần số 16 MHz, kết nối USB
sử dụng để kết nối và chuyển mã nguồn từ máy tính đến mạch Arduino Mega dựa trên phần
mềm IDE, giắc cắm nguồn DC cho mạch, đầu giắc kết nối ICSP được sử dụng để lập trình
Arduino và tải file lên từ máy tính qua phần mềm IDE và một nút reset. Bên cạnh đó,
Arduino Mega 2560 cịn có khả năng cấp nguồn DC với 2 mức điện áp 5V và 3,3V. Các
thông số kỹ thuật của Arduino Mega 2560 bao gồm:

Hình 2. 5 Hình ảnh thực tế về Ardiuno Mega 2560
Nguồn: tài liệu tham khảo [1]

6



 Chíp ATMEGA2560
 Điện áp hoạt động: 5V DC. Nguồn DC được nhà sản xuất khuyên dùng từ 712V (Giới hạn nguồn 6-20V)
 Dòng Max chân 5V : 500mA
 Dòng Max chân 3.3V: 50mA
 Dòng Max Chân I/O: 40mA
 54 Chân Digital I/O (trong đó 15 chân hỗ trợ PWM)
 16 Chân ngõ vào tín hiệu Analog
 Bộ dao động tần số 16Mhz
 Bộ Nhớ Flash: 256K
 Bộ nhớ SRAM 8 KB
 Bộ nhớ EEPROM 4 KB
Sơ đồ cũng như chức năng các chân Arduino Mega 2560 có thế thấy trên Hình 2.6.
Dưới đây là chức năng cụ thể của một vài chân:
-

Chân 5V và 3.3V : 2 chân này được sử dụng để cung cấp nguồn DC 5V và 3.3V cho
các ngoại vi.

-

Chân GND : Có 5 chân nối mass có sẵn trên board Arduino Mega, giúp dễ dàng kết
nối nếu thực hiện dự án với nhiều kết nối thiết bị ngoại vi.

-

Chân reset : Được sử dụng để thiết lập lại board mạch về lại ban đầu. Mức tích cực
LOW được thiết lập sẽ reset lại board mạch.

-


Chân Vin : Là chân điện áp đầu vào cung cấp cho mạch Arduino Mega, điện áp cấp
từ 7V đến 20V. Mặt khác điện áp được cấp bởi giắc nguồn DC có thể được lấy thơng
qua chân này. Tuy nhiên, điện áp đầu ra thông qua chân này đến mạch Arduino sẽ
được tự động thiết lập là 5V.

-

Các chân ngắt ngoài ( External Interrupts) : 6 chân được sử dụng để tạo các ngắt
ngồi đó là ngắt 0 (chân 0), ngắt 1 (chân 3), ngắt 2 (chân 21), ngắt 3 (chân 20), ngắt
4 (chân 19), ngắt 5 (chân 18). Các chân này tạo ra các ngắt bằng một số cách tức là
cung cấp giá trị LOW, tăng hoặc giảm hoặc thay đổi giá trị cho các chân ngắt.
7


Hình 2. 6 Sơ đồ chân Arduino Mega 2560
Nguồn: tài liệu tham khảo [1]

8


-

Đèn LED : Arduino Mega 2560 tích hợp đèn LED trên board mạch kết nối với chân
13. Giá trị HIGH đèn LED được bật và LOW đèn LED tắt. Giúp người lập trình
quan sát trực quan khi test, kiểm tra chương trình trên board Arduino

-

Chân AREF : Chân tạo điện áp tham chiếu cho đầu vào analogs - Các chân tương tự
(Analogs): Có 16 chân analog được tích hợp trên board Arduino có ký hiệu là A0

đến A15. Chú ý rằng tất cả các chân analog có thể được sử dụng làm chân I/O Digital.
Mỗi chân analog đi kèm với độ phân giải 10 bit. Các chân này có thể có điện áp thay
đổi từ 0V đến 5V. Tuy nhiên, giá trị điện áp có thể được thay đổi bằng cách sử dụng
hàm ISF và analogReference ().

-

Các chân truyền thông UART: RXD và TXD là các chân nối tiếp được sử dụng để
truyền và nhận dữ liệu nối tiếp, chân Rx đại diện cho việc truyền dữ liệu còn Tx
được sử dụng để nhận dữ liệu. Có tất cả 4 cổng kết nối UART, trong đó Serial 0 là
chân RX(0) và TX(1), Serial 1 là chân TX(18) và RX(19), Serial 2 là chân TX(16)
và RX(17), và Serial 3 là chân TX(14) và RX(15).

-

Các chân giao tiếp I2C : Hai chân 20 và 21 hỗ trợ giao tiếp I2C. Trong đó, chân 20
đại diện cho SDA (xung dữ liệu nối tiếp chủ yếu được sử dụng để giữ dữ liệu) và
chân 21 đại diện cho SCL (xung đồng hồ nối tiếp chủ yếu được sử dụng để cung cấp
đồng bộ hóa dữ liệu giữa các thiết bị)

-

Các chân truyền thông SPI : Được sử dụng để truyền dữ liệu giữa Arduino và các
thiết bị ngoại vi khác. Chân 50 (MISO), Chân51 (MOSI), Chân 52 (SCK), Chân 53
(SS) được sử dụng để cho phép giao tiếp SPI.

9


2.3


GIỚI THIỆU MƠ-ĐUN CẢM BIẾN VÂN TAY AS608
Hình 2.7 là hình ảnh thực tế về mơ-đun cảm biến nhận dạng vân tay AS608 giao tiếp

trực tiếp qua giao thức UART, có thể kết nối trực tiếp đến vi điều khiển hoặc qua PC adapter
Max232/USB-Serial. Người sử dụng có thể lưu trữ dữ liệu vân tay trực tiếp vào mơ-đun.
Mơ-đun có thể dễ dàng giao tiếp với các loại vi điều khiển. Cảm biến trong mơ-đun với độ
chính xác cao và có thể được nhúng vào các thiết bị như: điều khiển truy cập, két sắt, khóa
cửa nhà, khóa cửa xe…

Hình 2. 7 Hình ảnh thực tế về cảm biến vân tay AS608
Nguồn: tài liệu tham khảo[2]
Nguyên lý hoạt động của mơ-đun cảm biến vân tay cơ bản có 2 phần:
- Lấy dữ liệu hình ảnh của vân tay: Khi lấy dữ liệu, người dùng cần phải thực hiện
quét dấu vân tay hai lần thông qua cảm biến quang học. Hệ thống sẽ tiến hành thuật tốn
xử lý hình ảnh của 2 lần quét vân tay, tạo ra một khuôn mẫu của các vân tay dựa trên kết
quả xử lý và lưu trữ lại các bản mẫu.
- So sánh dấu vân tay (có thể theo chế độ 1:1 hoặc theo 1:N): Khi người dùng thực
hiện quét dấu vân tay, mô-đun sẽ chụp lại dữ liệu hình ảnh vân tay và so sánh với các mẫu
vân tay đã được lưu trữ sẵn trong thư viện. Đối với 1:1, hệ thống sẽ so sánh trực tiếp vân
tay với mẫu được chỉ định cụ thể trong mơ-đun; đối với 1:N, hoặc tìm kiếm, hệ thống sẽ
tìm kiếm trong thư viện để tìm vân tay phù hợp. Sau đó trả về kết quả đúng nếu trùng khớp
hoặc kết quả sai nếu không trùng khớp dữ liệu đã được lưu trữ.
10


Thông số kỹ thuật của mô-đun cảm biến vân tay AS608 được trình bày ở bảng 2.1.
Bảng 2. 1 Thơng số kỹ thuật Mô-đun cảm biến vân tay AS608 [2]
Thông số
Điện áp làm việc (DC)


Mô tả
3.0 ~ 3.6V. Mức điện áp 3.3V được nhà sản xuất khuyên
dùng.

Dòng điện làm việc

30 ~ 60 mA, giá trị điển hình là 40mA

Truyền thơng UART

Tốc độ truyền thông dữ liệu UART: (9600 x N) bps đó N =
1~12 (giá trị mặc định N = 6, tức là 57600 bps); cấu trúc
khung dữ liệu 8 bit, khơng có bit kiểm tra chẵn lẻ, 1 bit dừng,
mức điện áp TTL.

Giao tiếp USB

2.0FS (2.0 Full Speed)

Thời gian xử lý ảnh

< 0.4 s

Kích thước hình ảnh cảm 256x288pixel
biến
Độ trễ bật nguồn

<0.1s mô-đun cần khoảng 0.1s để khởi tạo sau khi bật nguồn


Thời gian tìm kiếm

< 0.3 s

Tỷ lệ sai từ chối (FRR)

< 1%

Tỷ lệ chấp nhận sai (FAR) <0.001%
Dung lượng lưu trữ vân 300 (ID: 0 ~ 299)
tay
Môi trường làm việc

Nhiệt độ (°C): -20~60. Độ ẩm <90% (không ngưng tụ hơi
nước)

11


Để sử dụng mô-đun cảm biến vân tay AS608, chúng ta cần tìm hiểu chức năng các
chân. Bảng 2.2 trình bày chi tiết chức năng từng chân của mô-đun này. Bên cạnh đó, Hình
2.8 thể hiện hình ảnh chi tiết các chân của AS608.
Bảng 2. 2 Chức năng các chân của mô-đun cảm biến vân tay AS608 [2]
Chức năng

Tên chân
V+

Chân cấp nguồn dương DC


TX

Chân phát dữ liệu giao tiếp UART

RX

Chân nhận dữ liệu giao tiếp UART

GND

Chân nối đất ( cấp nguồn âm DC)

TCH

Chân Output của cảm biến chạm Touch, khi chạm tay vào cảm biến
chân này sẽ xuất ra mức cao High, để sử dụng tính năng này cần
cấp nguồn 3.3VDC cho chân Va

VA

Chân cấp nguồn 3.3VDC cho Touch Sensor

D+

Chân tín hiệu USB D+

D-

Chân tín hiệu USB D-


Hình 2. 8 Sơ đồ chân mô-đun cảm biến vân tay AS608
Nguồn: tài liệu tham khảo[2]

12


2.4 GIỚI THIỆU MODULE SIM800L V2
Mô-đun SIM 800L V2 với khả năng gửi tin nhắn, thực hiện cuộc gọi thoại hoặc truyền
dữ liệu qua GPRS. Linh kiện này có thể dùng điều khiển thiết bị hoặc cảnh báo từ xa, điều
khiển dễ dàng với bộ tập lệnh và tiêu thụ năng lượng thấp. Hình 2.9 là hình ảnh thực tế và
bảng 2.3 trình bày chức năng các chân của Mơ-đun SIM. Các thông số kỹ thuật bao gồm:
Nguồn cấp: 5VDC, có thể sử dụng với nguồn dịng thấp từ 500mA trở lên, nhưng nên
dùng nguồn có dịng đủ 1A để đảm bảo mạch hoạt động ổn định.
- Khe cắm SIM: MICROSIM
- Dòng khi ở chế độ chờ: 10mA, dòng khi hoạt động: 1A hoặc hơn.
- Có hai đèn led: 1 đèn led Net và 1 đèn led RING.
- Hỗ trợ 4 băng tần: GSM 850, EGSM 900, DCS 1800, PCS 1900 MHz.
- Kích thước: 27mm x 39mm.
- Nhiệt độ hoạt động: -40 ~ 850C.

Hình 2. 9 Mơ-đun SIM800L
Nguồn: tài liệu tham khảo[6]
Bảng 2. 3 Chức năng các chân của mô-đun SIM800L V2 [6]
Chân

Chức Năng

VCC

Đầu vào cấp nguồn cho mô-đun SIM, điện áp hoạt động 4.1 ~ 5VDC


GND

Chân nối mass

VDD

Đầu vào điện áp cung cấp microController cho SIM800L

RST

Đặt lại chân cho SIM800L

RXD

Chân nhận dữ liệu giao tiếp UART

TXD

Chân phát dữ liệu giao tiếp UART

13


Để Arduino có thể giao tiếp được với mơ-đun SIM, chúng ta phải sử dụng tập lệnh
AT để lập trình. Tập lệnh AT (Attention command) chuẩn được hỗ trợ bởi hầu hết các thiết
bị di động như điện thoại di động, GSM modem có hỗ trợ gửi và nhận tin nhắn tin nhắn
dưới dạng SMS (Short Message Service) và điều khiển cuộc gọi. Sau đây là phần giới thiệu
về tập lệnh AT:
Các lệnh chung bao gồm:

 Lệnh AT<CR><LF> dùng kiểm tra đáp ứng của Module Sim 800L, nếu trả về
“OK” thì mơ-đun hoạt động.
 Lệnh ATE[x] <CR><LF>, chế độ echo là chế độ phản hồi dữ liệu truyền đến của
module Sim 800L, x = 1 bật chế độ echo, x = 0 tắt chế độ echo (nên tắt chế độ này khi giao
tiếp với vi điều khiển).
 Lệnh AT+IPR=[baud rate]<CR><LF> để cài đặt tốc độ giao tiếp dữ liệu với
Module Sim800L, chỉ cài được các tốc độ sau baud rate: 0(auto), 1200, 2400, 4800, 9600,
19200, 38400, 57600, 115200 bps.
 Lệnh AT&W<CR><LF> để lưu lại các lệnh đã cài đặt.
Các lệnh điều khiển cuộc gọi:
 Lệnh AT+CLIP=1<CR><LF> dùng hiển thị thông tin cuộc gọi đến.
 Lệnh ATD[Số_điện_thoại]; <CR><LF> để thực hiện cuộc gọi.
 Lệnh ATH<CR><LF> kết thúc cuộc gọi, hoặc cúp máy khi có cuộc gọi đến.
 Lệnh ATA<CR><LF> lệnh thực hiện chấp nhận khi có cuộc gọi đến.
Các lệnh điều khiển tin nhắn:
 Lệnh AT+CMGF=1<CR><LF> để đưa tin nhắn SMS về chế độ kí tự (Text), phải
có lệnh này mới gửi nhận tin nhắn dạng Text.
 Lệnh AT+CMGS=”Số_điện _thoại” <CR><LF> gửi tin nhắn đến số điện thoại.
 Gửi mã Ctrl+Z hay 0x1A hoặc giá trị 26 để kết thúc nội dung và gửi tin nhắn.
 Lệnh AT+CMGR=x<CR><LF> để đọc một tin nhắn vừa gửi đến, lệnh được trả về
nội dung tin nhắn, thông tin người gửi, thời gian gửi với x là địa chỉ tin nhắn cần đọc.

14


 Lệnh AT+CMGDA=”DEL ALL”<CR><LF> dung xóa tồn bộ tin nhắn trong các
hộp thư.
 Lệnh AT+CNMI=2,2 để hiển thị nội dung tin nhắn ngay khi có tin nhắn đến.

2.5 GIỚI THIỆU MÀN HÌNH LCD 16X2 KÈM MƠ-ĐUN GIAO TIẾP I2C

LCD là module dùng để hiển thị kí tự giúp giao tiếp trực tiếp với con người thơng qua
màn hình có độ bền cao, hiển thị rõ nét, dễ sử dụng và được bán rất phổ biến trên thị trường.
LCD 16X2 là LCD có 2 hàng với mỗi hàng hiển thị được 16 ký tự. Hình 2.10 là hình ảnh
thực tế của LCD 16x2 loại 16 chân.

Hình 2. 10 Hình ảnh LCD 16x2
Nguồn: Internet
Trong 16 chân của LCD được chia ra làm 4 dạng tín hiệu như sau:
Các chân cấp nguồn gồm: chân số 1 là chân nối mass (0V), chân thứ 2 là VDD nối
với nguồn +5VDC. Chân thứ 3 dùng để chỉnh tương phản thường nối với biến trở, được
dùng để chỉnh độ rõ của ký tự trên màn hình.
Các chân điều khiển: Chân số 4 là chân RS dùng để điều khiển lựa chọn thanh ghi.
Chân R/W dùng để điều khiển quá trình đọc và ghi. Chân E là chân cho phép dạng xung
chốt.
Các chân dữ liệu D7÷D0: Chân số 7 đến chân số 14 là 8 chân dùng để trao đổi dữ liệu
giữa thiết bị điều khiển và LCD. Các chân LED_A và LED_K: Chân số 15, 16 là 2 chân
dùng để cấp nguồn cho đèn nền.
15


Mặt khác, LCD có khá nhiều chân điều này gây khó khăn trong q trình đấu nối và
chiếm nhiều chân trên vi điều khiển. Vì thế, mà mơ-đun I2C LCD ra đời. Thay vì phải mất
ít nhất 6 chân ( khi truyền dữ liệu 4 bit) để kết nối giữa vi điều khiển với LCD 16×2 (RS,
EN, D7, D6, D5 và D4) thì mơ-đun I2C cho phép chúng ta dùng 2 chân (SCL, SDA) để kết
nối. Hình 2.11 là hình ảnh của mô-đun giao tiếp I2C.

2 chân cấp nguồn và
2 chân giao tiếp I2C

Các chân kết nối với LCD


Hình 2. 11 Mô-đun giao tiếp I2C
Nguồn: Internet
Mô-đun giao tiếp I2C, hoạt động với điện áp 3V-6VDC, tốc độ truyền dữ liệu lên đến
400Kbps, dữ liệu truyền nhận đảm bảo tính tồn vẹn vì sử dụng cơ chế phản hồi ACK trên
mỗi byte dữ liệu. Mơ-đun này có khả năng kết nối nhiều thiết bị với nhau. Địa chỉ mặc định
của mô-đun là 0x27, trên mạch có 3 mối hàn A0, A1, A2 để thay đổi địa chỉ của module,
có thể mắc vào bus I2C tối đa 8 mơ-đun. Có thể điều chỉnh độ tương phản màn hình LCD
bằng biến trở màu xanh trên mô-đun.

16


Chương 3: THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG
3.1 SƠ ĐỒ KHỐI THIẾT KẾ
KHỐI NGUỒN

KHỐI MÔ-ĐUN
SIM

KHỐI XỬ LÝ
TRUNG TÂM

KHỐI CẢM
BIẾN VÂN
TAY

KHỐI CHẤP
HÀNH
KHỐI HIỂN

THỊ

KHỐI MA
TRẬN PHÍM

KHỐI NGUỒN
Hình 3. 1 Sơ đồ khối thiết kế
Hình 3.1 trình bày sơ đồ khối thiết kế của hệ thống, với chức năng chi tiết của từng
khối như sau:
- Khối nguồn: Cung cấp nguồn cho toàn hệ thống, gồm nguồn chính và dự phịng.
- Khối xử lý trung tâm: nhận dữ liệu từ khối mô-đun SIM, khối cảm biến vân tay và
khối ma trận phím, sau đó xử lý và điều khiển khối chấp hành và khối hiển thị.
- Khối cảm biến vân tay: Nơi lưu trữ dấu vân tay và cho phép quét dấu vân tay để
đóng mở cửa.
- Khối Module Sim: cho phép mở cửa khi có tin nhắn (đúng cú pháp) từ số điện thoại
chủ nhà đã được cài đặt trước, gửi tin nhắn và cuộc gọi cảnh báo đến số điện thoại chủ nhà
khi có người nhập sai mật khẩu và vân tay quá số lần định trước.
- Khối ma trận phím: dùng để nhập mật khẩu và gọi các chức năng phụ.
- Khối hiển thị: hiển thị thông tin để giao tiếp với người dùng.
- Khối chấp hành: nhận lệnh từ khối xử lý trung tâm để tiến hành đóng/mở cửa và
phát âm thanh cảnh báo khi nhập sai mật khẩu quá số lần quy định.
17


3.2 THIẾT KẾ CHI TIẾT
3.2.1 Khối nguồn
Với khối nguồn, người thiết kế sử dụng 2 giắc để cắm nguồn, 1 cho nguồn 12VDC, 1
cho nguồn dự phòng (BACKUP) kết nối qua 1 relay 12V để chuyển nguồn tự động, cùng
với mô-đun giảm áp LM2596 cho phép chuyển điện áp DC từ 12V sang 5V.
Mạch giảm áp LM2596 (quan sát hình 3.1) có thể giảm áp từ 30V xuống 1.5V với hiệu

suất 92%. Điện áp đầu vào từ 3V đến 30V, điện áp đầu ra được điều chỉnh thông qua biến
trở, dịng đáp ứng tối đa 3A. Mơ-đun có 2 đầu vào IN+, IN- và 2 đầu ra OUT+, OUT-.

Hình 3. 2 Mô-đun giảm áp LM2596
Nguồn Internet
Mạch nguyên lý của khối nguồn như hình 3.2. Giắc nguồn 12VDC được kết nối với
chân cấp nguồn của relay, chân dương nguồn BACKUP nối với chân chung (COM) của
relay, chân thường đóng của relay (NC) nối với chân IN+ của LM2596. Khi khơng có nguồn
từ giắc 12VDC, nguồn từ BACKUP sẽ ni tồn bộ hệ thống. Khi có nguồn cấp vào từ giắc
12 VDC sẽ hút chân COM của relay kết nối với chân thường hở (NO) của relay, lúc này
nguồn chính sẽ ni tồn bộ hệ thống. Bên cạnh đó, đi-ốt D1 có chức năng chặn dòng từ
nguồn BACKUP quay về 2 chân cấp nguồn của relay. Hai chân OUT của LM2596 tạo ra
nguồn DC 5V để nuôi khối mô-đun SIM, khối hiển thị và 1 phần khối chấp hành.

18


×