Thiết kế và thi công hệ thống mở cửa bằng cảm biến vân tay (Phần 1)

pdf 22 trang phuongnguyen 40
Bạn đang xem 20 trang mẫu của tài liệu "Thiết kế và thi công hệ thống mở cửa bằng cảm biến vân tay (Phần 1)", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfthiet_ke_va_thi_cong_he_thong_mo_cua_bang_cam_bien_van_tay_p.pdf

Nội dung text: Thiết kế và thi công hệ thống mở cửa bằng cảm biến vân tay (Phần 1)

  1. BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM KHOA ĐIỆN - ĐIỆN TỬ ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ - TRUYỀN THÔNG THIẾT KẾ VÀ THI CÔNG HỆ THỐNG MỞ CỬA BẰNG CẢM BIẾN VÂN TAY GVHD: ThS. NGUYỄN VIỆT HÙNG SVTH: LÊ VĂN THẢO MSSV: 12141215 SVTH: NGUYỄN QUANG TRÍ MSSV: 12141236 S K L 0 0 4 3 6 9 Tp. Hồ Chí Minh, tháng 07/2016
  2. BỘ GIÁO DỤC & ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH KHOA ĐIỆN – ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ-CÔNG NGHIỆP ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG ĐỀ TÀI: THIẾT KẾ VÀ THI CÔNG HỆ THỐNG MỞ CỬA BẰNG CẢM BIẾN VÂN TAY GVHD: ThS. Nguyễn Việt Hùng SVTH 1: Lê Văn Thảo MSSV: 12141215 SVTH 2: Nguyễn Quang Trí MSSV: 12141236 Tp. Hồ Chí Minh – 7/2016
  3. BỘ GIÁO DỤC & ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH KHOA ĐIỆN – ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ-CÔNG NGHIỆP ĐỒ ÁN TỐT NGHIỆP NGÀNH KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG ĐỀ TÀI: THIẾT KẾ VÀ THI CÔNG HỆ THỐNG MỞ CỬA BẰNG CẢM BIẾN VÂN TAY GVHD: ThS. Nguyễn Việt Hùng SVTH 1: Lê Văn Thảo MSSV: 12141215 SVTH 2: Nguyễn Quang Trí MSSV: 12141236 Tp. Hồ Chí Minh – 7/2016
  4. MỤC LỤC Nhiệm vụ đồ án i Lịch trình thực hiện đồ án tốt nghiệp iii Cam đoan iv Lời cảm ơn v Mục lục vi Liệt kê hình vẽ viii Liệt kê bảng vẽ xi Tóm tắt xii CHƯƠNG 1. TỔNG QUAN 1 1.1 ĐẶT VẤN ĐỀ 1 1.2 MỤC TIÊU 2 1.3 NỘI DUNG NGHIÊN CỨU 2 1.4 GIỚI HẠN 2 1.5. BỐ CỤC 3 CHƯƠNG 2. CƠ SỞ LÝ THUYẾT 4 2.1 TỔNG QUAN VỀ ARDUINO 4 2.2 TỔNG QUAN VỀ TIN NHẮN SMS 5 2.2.1 Sơ lược về SMS 5 2.2.2 Cấu trúc một tin nhắn SMS 5 2.3 NHẬN DẠNG VÂN TAY 6 2.3.1 Giới thiệu sơ lược về dấu vân tay và nhận dạng vân tay 6 2.3.2 Việc ứng dụng công nghệ nhận dạng vân tay hiện nay 6 2.3.3 Nguyên lý hoạt động cơ bản của nhận dạng vân tay 7 2.3.4 Các bước xử lý trong quá trình nhận dạng vân tay 7 2.4 GIỚI THIỆU PHẦN CỨNG 9 2.4.1 Arduino Mega 2560 9 2.4.2 SIM 900A 12 2.4.3 Module cảm biến vân tay R308 (Fingerprint R308) 19 2.4.4 Màng hình LCD 27 vi
  5. 2.4.5 Giới thiệu động cơ Servo SG90 9g Micro 29 2.4.6 Giới thiệu bàn phím ma trận 4x4 (Keypad 4x4) 30 CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ. 32 3.1 GIỚI THIỆU 32 3.2 TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG 32 3.2.1 Thiết kế sơ đồ khối hệ thống 32 3.2.2 Tính toán và thiết kế mạch 34 3.2.3 Sơ đồ nguyên lý của toàn mạch 43 CHƯƠNG 4. THI CÔNG HỆ THỐNG 46 4.1 GIỚI THIỆU 46 4.2 THI CÔNG HỆ THỐNG 46 4.2.1 Thi công bo mạch 46 4.2.2 Lắp ráp và kiểm tra 49 4.3 ĐÓNG GÓI VÀ THI CÔNG MÔ HÌNH 49 4.3.1 Đóng gói bộ điều khiển 49 4.3.2 Thi công mô hình 50 4.4 LẬP TRÌNH HỆ THỐNG 51 4.4.1 Lưu đồ giải thuật 51 4.4.2 Phần mềm lập trình cho vi điều khiển 58 4.5 KẾT QUẢ MÔ PHỎNG 62 4.6 VIẾT TÀI LIỆU HƯỚNG DẪN SỬ DỤNG, THAO TÁC 63 4.6.1 Viết tài liệu hướng dẫn sử dụng 63 4.6.2 Quy trình thao tác 64 CHƯƠNG 5. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ 65 5.1 KẾT QUẢ. 65 5.2 NHẬN XÉT – ĐÁNH GIÁ 72 CHƯƠNG 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN. 73 6.1 KẾT LUẬN 73 6.2 HƯỚNG PHÁT TRIỂN 74 TÀI LIỆU THAM KHẢO 75 PHỤ LỤC 76 vii
  6. LIỆT KÊ HÌNH VẼ Hình Trang Hình 2.1 Các loại Board Arduino .4 Hình 2.2 Sơ đồ quá trình xử lý ảnh .7 Hình 2.3 Sơ đồ quá trình so sánh vân tay .8 Hình 2.4 Sơ đồ các chân kết nối trên Arduino Mega 2560 10 Hình 2.5 Vị trí chân Arduino Mega 11 Hình 2.6 Vị trí chân sim 900A 13 Hình 2.7 Giao diện phần mềm Terminal 18 Hình 2.8 Mạch chuyển USB UART PL2303 18 Hình 2.9 Module cảm biến vân tay R308 20 Hình 2.10 Giao thức truyền thông của R308 23 Hình 2.11 Định nghĩa của thanh ghi 24 Hình 2.12 Định dạng gói dữ liệu 25 Hình 2.13 Màng hình LCD 16x2 27 Hình 2.14 Động cơ Servo SG90 9g Micro 29 Hình 2.15 Điều khiển và kết nối cuả động cơ Servo SG90 9g Micro 30 Hình 2.16 Sơ đồ nối dây và hình ảnh thực tế của bàn phím ma trận 4x4 30 Hình 3.1 Sơ đồ khối hệ thống 32 Hình 3.2 Sơ đồ khối hệ thống thiết bị thực tế 33 Hình 3.3 Cảm biến vân tay R308 34 Hình 3.4 Sơ đồ nguyên lý cảm biến vân tay kết nối arduino mega 35 Hình 3.5 Khối xử lý trung tâm sử dụng board arduino mega 2560 36 Hình 3.6 Động cơ servo 9g 36 Hình 3.7 Sơ đồ chân động cơ servo 9g 37 Hình 3.8 Điều chỉnh độ rộng xung PPM 38 Hình 3.9 Sim 900A thực tế 38 Hình 3.10 Sơ đồ chân Sim 900A thực tế 39 Hình 3.11 Sơ đồ nguyên lý kết nối sim 900A vào arduino mega 40 Hình 3.12 LCD 40 Hình 3.13 Sơ đồ nguyên lý kết nối arduino mega với LCD 41 Hình 3.14 Sơ đồ nối dây và hình ảnh thực tế của bàn phím ma trận 4x4 42 Hình 3.15 Adapter 9VDC 2A 43 viii
  7. Hình 3.16 adapter 5VDC 3A 43 Hình 3.17 Kết nối module ngoại vi 43 Hình 3.18 LCD và LED báo trạng thái 44 Hình 3.19 Khối nguồn 44 Hình 3.20 Shield kết nối Arduino mega 2560 45 Hình 3.21 Sơ đồ nguyên lý toàn mạch 45 Hình 4.1 Sơ đồ đi dây lớp top 46 Hình 4.2 Sơ đồ đi dây lớp bottom 46 Hình 4.3 Sơ đồ đi dây lớp bottom và top chưa phủ đồng 47 Hình 4.4 Hình dạng 3D lớp top 47 Hình 4.5 Hình dạng 3D lớp bottom 48 Hình 4.6 Sơ đồ bố trí linh kiện mặt trước mô hình 49 Hình 4.7 Hình dạng khung cửa thực tế 50 Hình 4.8 Hình dạng phía trước cửa thực tế 50 Hình 4.9 Chi tiết cơ khí ráp khung 50 Hình 4.10 Lưu đồ chính làm việc của hệ thống 52 Hình 4.11 Lưu đồ chế độ nạp vân tay 53 Hình 4.12 Lưu đồ chế độ xóa vân tay 54 Hình 4.13 Lưu đồ chế độ mở cửa bằng vân tay 55 Hình 4.14 Lưu đồ chế độ mở cửa bằng điện thoại 56 Hình 4.15 Lưu đồ chương trình ngắt 57 Hình 4.16 Quy trình làm việc của arduino 58 Hình 4.17 Giao diện lập trình arduino 58 Hình 4.18 Giao diện menu arduino IDE 59 Hình 4.19 Giao diện file menu arduino IDE 59 Hình 4.20 Giao diện Examples menu arduino IDE 59 Hình 4.21 Giao diện Sketch menu arduino IDE 60 Hình 4.22 Giao diện edit menu arduino IDE 60 Hình 4.23 Giao diện tool menu arduino IDE 61 Hình 4.24 Board Arduino sử dụng 61 Hình 4.25 Hiển thị Board và Serial Port đã kết nối 62 Hình 4.26 Arduino Toolbar 62 Hình 4.27 Xung PPM mở cửa . 62 Hình 4.28 Xung PPM đóng cửa 63 ix
  8. Hình 4.29 Quy trình thao tác 64 Hình 5.1 Chế độ đóng mở bằng vân tay 66 Hình 5.2 Chế độ đóng mở bằng cách gọi điện thoại 67 Hình 5.3 Kiểm tra trạng thái cửa 67 Hình 5.4 Mặt trên của mạch in 68 Hình 5.5 Mặt dưới của mạch in 68 Hình 5.6 Sơ đồ mạch in 68 Hình 5.7 Hình thực tế gắn linh kiện cho mặt trên 69 Hình 5.8 Hình ảnh thực tế gắn linh kiện cho mặt dưới 69 Hình 5.9 Hình ảnh hệ thống sau khi kết nối 70 Hình 5.10 Mặt bên trong mô hình cửa 70 Hình 5.11 Mặt ngoài mô hình cửa 71 Hình 5.12 Nạp vân tay 71 Hình 5.13 Xóa vân tay 71 Hình 5.14 Đóng mở cửa 71 x
  9. LIỆT KÊ BẢNG Bảng Trang Bảng 2.1: Các tính năng chính của SIM 900A 14 Bảng 2.2: Một số lệnh AT cơ bản 15 Bảng 2.3: Các chân kết nối của module R308 22 Bảng 2.4: Định dạng gói dữ liệu 26 Bảng 2.5: Các chân của LCD 28 Bảng 3.1: Chức năng chân cảm biến vân tay R308 34 Bảng 3.2: Thông số kỹ thuật arduino mega 2560 36 Bảng 3.3: Kết nối chân LCD với arduino 41 Bảng 4.1. Danh sách các linh kiện. 48 xi
  10. TÓM TẮT Hiện nay, công nghệ sinh trắc học không ngừng được phát triển và ứng dụng ngày càng rộng rãi trong nhiều lĩnh vực, đặc biệt là công nghệ nhận dạng vân tay ngày càng phổ biến được tích hợp nhiều trong các thiết bị điện tử nhờ tính bảo mật của nó. Song song đó, các ứng dụng điều khiển thiết bị qua tin nhắn điện thoại và gọi điện cũng đang được phát triển nhờ tính tiện dụng, tiết kiệm cuả nó. Với mục đích muốn tiếp cận với các công nghệ đang phát triển trên, nên nhóm thực hiện đồ án với mong muốn chế tạo ra mô hình hệ thống cửa được đóng mở bằng cách tiến hành quét vân tay hoặc sử dụng chức năng nhắn tin và gọi điện thoại để điều khiển. Mô hình sử dụng kit Arduino Mega 2560 làm vi điều khiển trung tâm để điều khiển các module mở rộng như cảm biến vân tay R308, Sim 900A Đóng mở bằng cách sử dụng động cơ Servo và công tắc hành trình. Người dùng dễ dàng tương tác sử dụng thông qua cảm biến vân tay, các nút nhấn, sử dụng tin nhắn sms và gọi điện, có hướng dẫn cách sử dụng rõ ràng. xii
  11. CHƯƠNG 1. TỔNG QUAN Chương 1. TỔNG QUAN 1.1 ĐẶT VẤN ĐỀ Trong thời đại ngày nay, sự phát triển không ngừng của khoa học kỹ thuật đã giúp cho con người thuận tiện hơn trong các công việc hằng ngày, các thiết bị và đồ dùng trong nhà ngày càng được số hóa, tự động và thông minh hơn. Nền kinh tế cũng phát triển nhanh chóng, kéo theo chất lượng cuộc sống được cải thiện rất nhiều, số lượng người giàu ngày càng tăng. Nhiều gia đình bắt đầu có điều kiện hơn và có nhu cầu mua các thiết bị công nghệ hiện đại, đồ dùng cao cấp, đắt tiền hiện nay khá cao. Tuy nhiên, tỷ lệ tội phạm trộm cắp vẫn còn rất cao, chúng thường hay nhằm vào các tài sản đắt tiền và các gia đình giàu có. Để bảo vệ an toàn cho tài sản trong nhà là vấn đề khá đau đầu của nhiều gia đình. Bẻ khóa được các cánh cửa sử dụng chìa khóa và ổ khóa thông thường hiện nay trở nên dễ dàng hơn rất nhiều cho bọn trộm vì bọn chúng ngày càng chuyên nghiệp, tinh vi. Do hệ thống cửa chính là nơi dễ đột nhập vào nhà nhất để trộm cắp tài sản. Nhận thức được tính cấp thiết đó, nhóm chúng em đã quyết định chọn đề tài “THIẾT KẾ VÀ THI CÔNG HỆ THỐNG MỞ CỬA BẰNG CẢM BIẾN VÂN TAY” nhằm tăng tính năng bảo mật và bảo vệ an toàn tài sản cho người sử dụng. Công nghệ sinh trắc [1] ra đời đáp ứng được các yêu cầu về sự bảo mật riêng tư thông tin cá nhân cũng như để nhận biết một người nào đó trong hàng tỉ người trên thế giới. Các đặc trưng sinh trắc thường được sử dụng là vân tay, gương mặt, mống mắt, tiếng nói. Trong đó, vân tay đã được biết tới với tính phân biệt (tính chất cá nhân) và ổn định theo thời gian cao nhất, vì vậy nó là đặc trưng sinh trắc được sử dụng rộng rãi nhất, được xem là một trong những kỹ thuật nhận dạng hoàn thiện và đáng tin cậy nhất. Song song đó, mạng di động ngày càng phát triển rộng rãi, gắn liền với công việc và cuộc sống hằng ngày của con người. Mặt khác, việc phát triển không ngừng của vi xử lý đã cho ra đời nhiều loại sản phẩm thông minh nhỏ gọn, các Kit nhúng xuất hiện với nhiệm vụ hỗ trợ học tập, nghiên cứu ngày càng nhiều. Trong đó kit Arduino là một sản phẩm mang tính ứng dụng cao với một cộng đồng phát triển mạnh mẽ trên quy mô BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 1
  12. CHƯƠNG 1. TỔNG QUAN toàn cầu. Và ta có thể kết hợp giữa mạng di động và Kit Arduino để điều khiển các thiết bị bằng cách nhắn tin SMS hoặc gọi điện thoại Dựa vào các công nghệ trên, mô hình Cửa thông minh của nhóm sử dụng Adruino và module cảm biến vân tay [9], module Sim 900A [12] làm hệ thống điều khiển đóng mở cửa. 1.2 MỤC TIÊU Tìm hiểu và nghiên cứu về kit Arduino, module cảm biến vân tay R308, module SIM 900A và cách kết nối giữa các module để thành mô hình hoàn thiện. Xây dựng hệ thống quét dấu vân tay để điều khiển đóng mở cửa qua cảm biến vân tay. Xây dựng hệ thống nhận tin nhắn và cuộc gọi để điều khiển đóng mở cửa qua tin nhắn SMS và cuộc gọi. 1.3 NỘI DUNG NGHIÊN CỨU NỘI DUNG 1: Tìm hiểu và nghiên cứu về cấu tạo phần cứng, nguyên lý hoạt động, tính năng của các module Arduino, Sim 900A, R308, động cơ Servo, ma trận phím NỘI DUNG 2: Các giải pháp thiết kế hệ thống, thi công mô hình cửa thông minh. NỘI DUNG 3: Thiết kế hệ thống điều khiển, lưu đồ giải thuật và chương trình điều khiển mô hình. NỘI DUNG 4: Thiết kế hoàn chỉnh mô hình thực tế. NỘI DUNG 5: Chạy thử nghiệm hệ thống cửa thông minh. NỘI DUNG 6: Cân chỉnh hệ thống. NỘI DUNG 7: Viết sách luận văn. NỘI DUNG 8: Bảo vệ đề tài tốt nghiệp 1.4 GIỚI HẠN Thiết kế mô hình cửa có kích thước dài, rộng, cao là 30 x 30 x 40 cm. Cảm biến vân tay R308 có thể quét và lưu trữ hơn 900 mẫu vân tay khác nhau. Module Sim 900A có thể dùng để gọi điện và nhắn tin. Nguổn cấp cho cảm biến vân tay và module Sim 900A sử dụng adapter 5VDC- 3A BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 2
  13. CHƯƠNG 1. TỔNG QUAN Hệ thống chỉ sử dụng được khi được cấp điện, không có nguồn điện dự phòng. Đề tài chỉ xây dựng mô hình cửa có kích thước nhỏ bằng Mica. 1.5. BỐ CỤC Chương 1: Tổng Quan Chương này trình bày về đặt vấn đề dẫn nhập lý do chọn đề tài, mục tiêu, nội dung nghiên cứu, các giới hạn thông số và bố cục đồ án. Chương 2: Cơ Sở Lý Thuyết Trong chương này trình bày về các lý thuyết có liên quan đến các vấn đề mà đề tài sẽ dùng để thực hiện thiết kế, thi công cho đề tài. Chương 3: Tính Toán Và Thiết Kế Chương này giới thiệu tổng quan về các yêu cầu của đề tài mà mình thiết kế và các tính toán, thiết kế gồm những phần nào. Như: thiết kế sơ đồ khối hệ thống, sơ đồ nguyên lý toàn mạch, tính toán thiết kế mạch. Chương 4: Thi Công Hệ Thống Chương này trình bày về quá trình vẽ mạch in lắp ráp các thiết bị, đo kiểm tra mạch, lắp ráp mô hình. Thiết kế lưu đồ giải thuật cho chương trình và viết chương trình cho hệ thống. Hướng dẫn quy trình sử dụng hệ thống. Chương 5: Kết Quả_Nhận Xét_Đánh Giá Trình bày về những kết quả đã được mục tiêu đề ra sau quá trình nghiên cứu thi công. Từ những kết quả đạt được để đánh giá quá trình hoàn thành được bao nhiêu phần trăm. Chương 6: Kết Luận Và Hướng Phát Triển Chương này trình bày về những kết quả mà đồ án đạt được, những hạn chế, từ đó rút ra kết luận và hướng phát triển để giải quyết các vấn đề tồn đọng để đồ án hoàn thiện hơn. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 3
  14. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT Chương 2. CƠ SỞ LÝ THUYẾT 2.1 TỔNG QUAN VỀ ARDUINO Hình 2.1. Các loại Board Arduino  Giới thiệu: Arduino [2] là một board mạch vi xử lý, nhằm xây dựng các ứng dụng tương tác với nhau hoặc với môi trường được thuận lợi hơn. Đi cùng với nó là một môi trường phát triển tích hợp (IDE) chạy trên các máy tính cá nhân thông thường và cho phép người dùng viết các chương trình cho Aduino bằng ngôn ngữ C hoặc C++. Trong hình 2.1 bên trên là các loại board Arduino khác nhau có trên thị trường.  Phần cứng: Phần cứng bao gồm một board mạch nguồn mở được thiết kế trên nền tảng vi xử lý AVR Atmel 8-bit, hoặc ARM Atmel 32-bit. Board Arduino sẽ đưa ra hầu hết các chân I/O của vi điều khiển để sử dụng cho những mạch ngoài. Những Model hiện tại được trang bị gồm 1 cổng giao tiếp USB, 6 chân đầu vào analog, 14 chân I/O kỹ thuật số tương thích với nhiều board mở rộng khác nhau giúp dễ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 4
  15. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT dàng lập trình và có thể mở rộng với các mạch khác, các module thêm vào có thể dễ dàng chuyển đổi, được gọi là shield. Vài shield kết nối với board Arduino trực tiếp thông qua các chân khác nhau, nhưng nhiều shield được định địa chỉ thông qua serial bus I2C, nhiều shield có thể được xếp chồng và sử dụng dưới dạng song song. Arduino chính thức thường sử dụng các dòng chip MegaAVR, đặc biệt là ATMega8, ATMega168, ATMega328, ATMega1280, và ATMega2560. Theo nguyên tắc, khi sử dụng phần mềm Arduino, tất cả các board được lập trình thông qua một kết nối RS-232, nhưng cách thức thực hiện lại tùy thuộc vào đời phần cứng. Các board Serial Arduino có chứa một mạch chuyển đổi giữa RS-232 sang TTL. Các board Arduino hiện tại được lập trình thông qua cổng USB, thực hiện thông qua chip chuyển đổi USB-to-serial như là FTDI FT232. 2.2 TỔNG QUAN VỀ TIN NHẮN SMS 2.2.1 Sơ lược về SMS SMS là từ viết tắt của Short Message Service có thể thấy được là dữ liệu có thể được lưu giữ bởi một tin nhắn SMS là rất giới hạn. Một tin nhắn SMS có thể chứa tối đa là 140 byte (1120 bit) dữ liệu. Vì vậy, một tin nhắn SMS chỉ có thể chứa được: - Gồm 160 kí tự nếu như mã hóa kí tự 7 bit được sử dụng phù hợp với chữ latin. - Gồm 70 kí tự nếu như mã hóa kí tự 16 bit Unicode UCS2 được sử dụng. Tin nhắn SMS dạng text hỗ trợ nhiều ngôn ngữ khác nhau. Nó có thể hoạt động tốt với nhiều ngôn ngữ mà có hỗ trợ mã Unicode, bao gồm cả Arabic, Trung Quốc, Nhật bản và Hàn Quốc. Các tin nhắn SMS có thể được gửi và đọc tại bất kỳ thời điểm nào. Tin nhắn SMS có thể được gửi tới các điện thoại khi tắt nguồn. Các tin nhắn SMS ít gây phiền phức trong khi ta vẫn có thể liên lạc với được người khác. 2.2.2 Cấu trúc một tin nhắn SMS Nội dung của một tin nhắn SMS khi được gửi đi sẽ được chia làm 5 phần như sau: - Instructions to air interface: chỉ thị dữ liệu kết nối với air interface (giao diện không khí) . BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 5
  16. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT - Instructions to SMSC: chỉ thị dữ liệu kết nối với trung tâm tin nhắn SMSC (short message service centre). - Instructions to handset: chỉ thị dữ liệu kết nối bắt tay. - Instructions to SIM (optional): chỉ thị dữ liệu kết nối, nhận biết SIM (Subscriber Identity Modules). - Message body: nội dung tin nhắn SMS. 2.3 NHẬN DẠNG VÂN TAY 2.3.1 Giới thiệu sơ lược về dấu vân tay và nhận dạng vân tay a. Khái niệm về dấu vân tay Vân tay [1] là do các gai da đội lớp biểu bì lên mà thành. Đó là nơi tập kết miệng các tuyến mồ hôi, tuyến bã nhờn Nó đã định hình khi con người còn là cái thai 4 tháng trong bụng mẹ. Khi đứa bé ra đời, lớn lên, vân tay được phóng đại nhưng vẫn giữ nguyên dạng cho đến khi về già. Nếu tay có bị bỏng, bị thương, bị bệnh thì khi lành, vân tay lại tái lập y hệt như cũ. Chỉ khi có tổn thương sâu huỷ hoại hoàn toàn, sẹo chằng chịt mới xoá mất vân tay. Vân tay không ai giống ai, đặc sắc nhất là vân ngón cái và ngón trỏ. b. Giới thiệu về nhận dạng vân tay Từ xa xưa, con người đã nhận ra mỗi cá nhân đều có một vân tay riêng nhưng chưa có một cơ sở khoa học nào để nghiên cứu và nhận dạng. Nhưng đến thế kỷ 16, các kỹ thuật vân tay khoa học hiện đại đã xuất hiện và từ đó các lí thuyết và chương trình mô tả, nhận dạng vân tay mới phát triển mau chóng. Năm 1888, Francis Galton giới thiệu các đặc trưng chi tiết phục vụ cho đối sánh vân tay. Nhưng đến đầu thế kỉ 20, nhận dạng vân tay chính thức được chấp nhận như một phương pháp nhận dạng cá nhân có giá trị và trở thành tiêu chuẩn trong pháp luật. Ví dụ, năm 1924 FBI đã thiết lập một cơ sở dữ liệu có 810.000 thẻ vân tay. 2.3.2 Việc ứng dụng công nghệ nhận dạng vân tay hiện nay Trên thế giới hiện nay đã xuất hiện nhiều sản phẩm công nghệ cao sử dụng phương pháp nhận dạng vân tay như khóa vân tay, máy chấm công vân tay, máy tính xách tay, điện thoại thông minh Tuy nhiên đây vẫn là vấn đề còn chưa được nghiên cứu nhiều ở Việt Nam. Ở nước ta, phương pháp này mới chỉ phổ biến ở việc quản lý nhân sự thông qua chứng minh thư nhân dân và phục vụ điều tra phá án. Các sản phẩm công nghệ cao BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 6
  17. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT nói trên chúng ta vẫn phải nhập khẩu với giá thành khá cao, do đó chúng vẫn chưa được phổ biến rộng rãi. 2.3.3 Nguyên lý hoạt động cơ bản của nhận dạng vân tay Nguyên lý hoạt động của công nghệ nhận dạng vân tay là khi đặt ngón tay lên trên một thiết bị nhận dạng dấu vân tay, ngay lập tức thiết bị này sẽ quét hình ảnh ngón tay đó và đối chiếu các đặc điểm của ngón tay đó với dữ liệu đã được lưu trữ trong hệ thống. Quá trình xử lý dữ liệu sẽ được thiết bị chuyển sang các dữ liệu số và ra thông báo rằng dấu vân tay đó là hợp lệ hay không hợp lệ để cho phép hệ thống thực hiện các chức năng tiếp theo. Hệ thống sinh trắc học sẽ ghi nhận mẫu vân tay của người dùng và lưu trữ tất cả những dữ liệu đặc biệt này thành một mẫu nhận diện được số hoá toàn phần. Có hai phương pháp để lấy dấu vân tay. Cách thứ nhất (cổ điển) là sao chép lại hình dạng vân tay (như lăn tay bằng mực, hay chạm vào một vật gì đó) thông qua máy quét ghi nhận và xử lý. Cách thứ hai, hiện tại đa số các nước đều sử dụng phần mềm hoặc thiết bị quét vân tay để nhận dạng vân tay. 2.3.4 Các bước xử lý trong quá trình nhận dạng vân tay Quá trình xử lý nhận dạng vân tay được chia làm hai quá trình lớn: quá trình xử lý ảnh và quá trình so sánh vân tay. a. Quá trình xử lý ảnh Image Enhancement Image Analysis Binarization Thinning Minutiae Extraction Hình 2.2. Sơ đồ quá trình xử lý ảnh Mục đích của quá trình này được biểu diễn qua hình 2.2 là tăng cường ảnh vân tay, sau đó, rút trích các đặc trưng vân tay từ ảnh đã được tăng cường. Quá trình này được thực hiện qua các bước nhỏ sau: BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 7
  18. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT - Tăng cường ảnh (Image Enhancement): Ảnh được lấy từ thiết bị đầu đọc vân tay sẽ được làm rõ. Do các thiết bị đầu đọc vân tay không lấy ảnh tốt hay do vân tay của người dùng trong lúc lấy bị hao mòn, dơ bẩn, hay do lực ấn ngón tay trong lúc lấy vân tay. Vì vậy, bước này là một trong các bước quan trọng nhất của quá trình này để làm rõ ảnh vân tay để rút trích các đặc trưng đúng và đầy đủ. - Phân tích ảnh (Image Analysis): Thông qua phân tích ảnh, ảnh sẽ được loại bỏ những thông tin làm nhiễu hay những thông tin không cần thiết. - Nhị phân hóa (Binarization): Nhị phân hóa ảnh vân tay thành ảnh trắng đen. Bước này phục vụ cho bước Làm mỏng vân tay. Bước này có thể có hoặc không vì phục thuộc vào thuật toán rút trích đặc trưng. - Làm mỏng (Thinning): Làm mỏng các đường vân lồi của ảnh vân tay. Bước này nhằm mục đích cho việc rút trích đặc trưng của vân tay. Bước này cũng có thể có hoặc không vì phục thuộc vào thuật toán rút trích đặc trưng. - Rút trích đặc trưng (Minutiae Extraction): Rút trích những đặc trưng cần thiết cho quá trình so sánh vân tay. b. Quá trình so sánh vân tay Minutiae Analysis Local Similarily Calculate Global Matching Score Similarily Hình 2.3. Sơ đồ quá trình so sánh vân tay Mục đích của quá trình này được biểu diễn trên hình 2.3 là so sánh vân tay dựa trên các đặc trưng đã được rút trích. Quá trình này được thực hiện qua các bước nhỏ sau: - Phân tích đặc trưng (Minutiae Analysis): Phân tích các đặc điểm cần thiết của các đặc trưng để phục vụ cho việc so sánh vân tay. - Xét độ tương tự cục bộ (Local Similarily): Thuật toán so sánh vân tay sẽ dựa vào các thông tin cục bộ của các đặc trưng (gồm: tọa độ (x, y), hướng của đặc trưng, góc BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 8
  19. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT tạo bởi tiếp tuyến của đường vân tại đặc trưng và trục ngang) của vân tay để tìm ra các cặp đặc trưng giống nhau giữa hai vân tay. - Xét độ tương tự toàn cục (Global Similarily): Từ nhưng khu vực tương tự nhau trên cục bộ, thuật toán sẽ tiếp tục mở rộng so sánh trên toàn cục. - Tính điểm so sánh (Calculate Matching Score): Tính toán tỷ lệ độ giống nhau giữa các cặp đặc trưng. Điểm so sánh này sẽ cho biết độ giống nhau của hai ảnh vân tay là bao nhiêu. 2.4 GIỚI THIỆU PHẦN CỨNG Thiết bị đầu vào: bàn phím ma trận 4x4, module cảm biến vân tay R308, module Sim 900A. Thiết bị đầu ra: led đơn, màng hình LCD 16x2, động cơ Servo SG90. Thiết bị điều khiển trung tâm: Board Arduino Mega 2560. Các chuẩn truyền dữ liệu UART. 2.4.1 Arduino Mega 2560 Arduino Mega 2560 sử dụng chip ATmega2560. Nó có 54 chân digital I/O (trong đó có 15 chân điều chế độ rộng xung PWM), 16 chân đầu vào tương tự (Analog Inputs), 4 UARTs (cổng nối tiếp phần cứng), một thạch anh dao động 16 MHz, kết nối USB, một jack cắm điện, một đầu ICSP và một nút reset. Nó chứa tất cả mọi thứ cần thiết để hỗ trợ các vi điều khiển, chỉ đơn giản là kết nối nó với một máy tính bằng cáp USB hoặc với một bộ chuyển đổi điện AC-DC hoặc có thể sử dụng pin. Board có khả năng tự động reset nhờ phần mềm thay vì đòi hỏi phải ấn nút reset trước khi tải lên. Phần mềm Arduino sử dụng khả năng này để cho phép nạp code lên chỉ cần nhấn vào nút Upload trong Arduino IDE. Điều này có nghĩa rằng bộ nạp khởi động có thể có một thời gian chờ ngắn hơn. Arduino Mega 2560 có thể bảo vệ cổng USB của máy tính khi xảy ra hiện tượng quá dòng. Mặc dù hầu hết các máy tính cung cấp bảo vệ nội bộ, các cầu chì cung cấp thêm một lớp bảo vệ. Nếu dòng cao hơn 500mA được áp dụng cho các cổng USB, cầu chì sẽ tự động phá vỡ các kết nối cho đến khi ngắt hoặc hiện tượng quá tải được khắc phục. a. Thông số kỹ thuật Arduino Mega 2560 - Chip vi điều khiển: ATmega2560. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 9
  20. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT - Điện áp cấp nguồn: 5V. - Điện áp đầu vào (kiến nghị): 7-12V. - Điện áp đầu vào (giới hạn): 6-20V. - Số chân Digital I/O: 54 (có 15 chân điều chế độ rộng xung PWM). - Số chân Analog (Input ): 16. - Dòng DC trên chân I/O: 40 mA. - Dòng DC cho chân 3.3V: 50 mA. - Flash Memory: 256KB trong đó có 8KB được sử dụng bởi bộ nạp khởi động (bootloader). - SRAM: 8 KB. - EEPROM: 4 KB. - Xung nhịp: 16 MH. - Chiều dài: 101,52 mm. - Chiều rộng: 53,3 mm. - Cân nặng: 37 g. b. Sơ đồ kết nối chân của Arduino Mega 2560 Trong hình 2.4 bên dưới là hình ảnh sơ đồ các chân kết nối trên Arduino Mega 2560 cùng với hình 2.5 là vị trí các chân của Arduino Mega 2560. Hình 2.4. Sơ đồ các chân kết nối trên Arduino Mega 2560 BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 10
  21. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT Hình 2.5. Vị trí chân Arduino Mega  USB (1): Arduino sử dụng cáp USB để giao tiếp với máy tính. Thông qua cáp USB chúng ta có thể Upload chương trình cho Arduino hoạt động, ngoài ra USB còn là nguồn cho Arduino.  Nguồn (2 và 3): Khi không sử dụng USB làm nguồn thì chúng ta có thể sử dụng nguồn ngoài thông qua jack cắm 2.1mm (cực dương ở giữa) hoặc có thể sử dụng 2 chân Vin và GND để cấp nguồn cho Arduino. Bo mạch hoạt động với nguồn ngoài ở điện áp từ 5 – 20 volt. Chúng ta có thể cấp một áp lớn hơn tuy nhiên chân 5V sẽ có mức điện áp lớn hơn 5 volt. Và nếu sử dụng nguồn lớn hơn 12 Volt thì sẽ có hiện tượng nóng và làm hỏng bo mạch. Khuyến cáo nên dùng nguồn ổn định từ 6 đến dưới 12 volt. Chân 5V và chân 3.3V (Output voltage): các chân này dùng để lấy nguồn ra từ nguồn mà chúng ta đã cung cấp cho Arduino để cấp cho các thiết bị giao tiếp khác. Lưu ý: không được cấp nguồn vào các chân này vì sẽ làm hỏng Arduino.  Ngõ vào tương tự (4): Arduino Mega 2560 có 16 ngõ vào tương tự (các chân từ A0 đến A15), mỗi ngõ vào này đều có độ phân giải 10 bit (1024 giá trị). Mặc định đo từ 0 đến 5V, có thể thiết BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 11
  22. S K L 0 0 2 1 5 4