Chương 1: Tổng quan: Nếu tính cấp thiết của đề tài cũng với xu hướng và tình hình khoa học cũng như công nghệ hiện nay. Sự phát triển công nghiệp cùng với nhu cầu phục vụ đời sống hàng ngày là lý do chọn đề tài và xác định mục tiêu cho đề tài. Chương 2: Cơ sở lý thuyết: Trình bày tổng quan về thành phần, đặc tính cũng như chức năng của từng loại linh kiện ở phần cứng trong hệ thống, từ đó sẽ kết hợp lại để xây dựng nên một hệ thống hoàn chỉnh về mô hình. Chương 3: Mô phổng hệ thống: Từ yêu cầu của đề tài, thiết kế sơ đồ cho hệ thống (Sơ đồ khối, Sơ đồ nguyên lý).
Đưa ra các phương pháp xử lý rồi từ đó thiết kế nên mô hình. Chương 4: Kết quả thực hiện: Trình bày kết quả của từng khối nhỏ và kết quả hiển thị qua led 7 đoạn. Xuất ra hiển thị lập trình mong muốn. Chương 5: Kết luận và hướng phát triển: Dựa trên kết quả có được từ chương 4, đưa ra tổng quan nhất nhưng gì đã đạt được và nhưng thiết sót chưa đạt được.
Từ đó sẽ đưa ra hướng phát triển để cải thiện cho mô hình, hệ thống CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ - VIỄN THÔNG 4 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 CƠ SỞ ĐỀ TÀI Để thực hiện đồ án, nhóm đả tham khảo một số đồ án khác để hoàn chỉnh với mục đích đề ra. Cụ thể, nhóm đả tham khảo cơ chế bảo mật RFID như đồ án của Bùi Đình Cường, Lưu Văn Dương, Nguyễn Quang Anh, Đặng Huy Hoàng, 2017, với đề tài: “Thiết kế thiết bị khóa cửa bằng bảo mật và thẻ chip RFID ”[5], trong đề tài này có sử dụng RFID kết hợp với cơ chế bảo mật giúp thông tin khách hàng được hiệu quả hơn. Và để tạo ra một giao diện khách hàng để cho việc quản lí một cách tốt nhất như Đồ án môn học 2 của Xaipanya Phoutsady, 2019, với đề tài: “Phần mềm quản lý khách sạn” [7]. Bên cách tham khảo các đồ án trên, nhóm em còn tham khảo một số tính năng công nghệ mà RFID thực hiện trong việc quản lý khách sạn [6], áp dụng thêm một số quản lý, giảm sát khách để tạo ra môi trường an toàn [2].
Từ những thông tin mà nhóm tham khảo từ các nguồn. Nhóm em sẽ thực hiện hệ thống thông qua những kiến thức học tập tại trường cũng như tham khảo, tìm hiểu và nghiên cứu. Nhóm em dùng Arduino kết hợp module thu phát wifi ESP32 thông qua đường truyền internet (4G, router), kết hợp với cảm biến để mở cửa và cảnh báo. Dựa trên các thông tin trên nhóm em đề ra mục tiêu cho KLTN, đồng thời phát triển thêm khả năng tính toàn tiền, quản lý thời gian để tạo ra một trường an toàn giữa chủ và khách hàng.2 GIỚI THIỆU NGÔN NGỮ LẬP TRÌNH 2.1 Ngôn ngữ lập trình C/C++ C++ (C Plus Plus) là một ngôn ngữ lập trình đa năng và phổ biến hiện nay, là một ngôn ngữ nâng cao của C.
Ngôn ngữ C++ được thiết kế hướng đến việc lập trình máy tính và phần mềm nhúng cho các mạch xử lý vì sở hữu nhiều tính năng vượt trội, hiệu năng và tính linh hoạt cao. C ++ là một ngôn ngữ lập trình được phát triển bởi Bjarne Stroustrup vào năm 1979 tại Bell Labs. C ++ được coi là ngôn ngữ bậc trung (middle-level) như một phần mở rộng của ngôn ngữ lập trình C, hoặc “C với các lớp Class” vì nó bao gồm sự kết hợp của cả các tính năng của ngôn ngữ cấp cao và cấp thấp. CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ - VIỄN THÔNG 5 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Ngôn ngữ C++ mang đến cho người dùng tiện ích và nó mang lại lại một số điểm mạnh như: • Tính phổ biến: là một trong những ngôn ngữ phổ biến trong môi trường làm việc và trường học.
• Tính thực thi nhanh: C++ cho phép người dùng sử dụng Assembly (Hợp ngữ), Assembly (Hợp ngữ) là ngôn ngữ lập trình thấp nhất cho phần cứng của máy tính. • Thư viện đầy đủ: C++ có nhiều tài nguyên cho người lập trình sử dụng, bao gồm cả đồ họa cao như API, 2D,3D, và một số thư viện ngoại vi cho các lập trình viên, sinh viên như chip, module I2C, cảm biến, … dễ dàng cho người sử dụng. • Đa mô hình: C++ hướng đến đối tượng đa dạng tùy theo yêu cầu của lập trình viên.2 HTML HTML là viết tắt của cụm từ Hypertext Markup Language (tạm dịch là Ngôn ngữ đánh dấu siêu văn bản). HTML không phải là ngôn ngữ lập trình, nó có chức năng xác định nội dung và cấu trúc của một web.
HTML đánh dấu các nội dung khác nhau của văn bản: paragraph-đoạn văn, links-liên kết, headings-tiêu đề, image-hình ảnh, … HTML ứng dụng trong việc dựng ra các trang web, dựng giao diện cho các phần mềm và các ứng dụng (ứng dụng chạy được trình duyệt, desktop, mobile, .3 JavaScript Là 1 trong 3 ngôn ngữ lập trình web cơ bản mà một người lập trình viên cần phải học là HTML, CSS và JavaScript. JavaScript là ngôn ngữ lập trình phổ biển trong vòng 20 năm qua. JavaScript còn có tên gọi là Mocha (1995), Mona, Livescript và cuối cùng là JavaScript. CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ - VIỄN THÔNG 6 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT JavaScript có rất nhiều điểm mạnh có thể được kể đến: • Đối với lập trình viên: dễ học, dễ phát hiện và sửa các lỗi sai.
Thông qua ngon ngữ này lập trình viên có thể kiểm tra các dữ liệu đầu vào, nhằm giảm bớt các bước thủ công, ngôn ngữ còn sử dụng được ở nhiều nển tảng, trình duyệt khác nhau vì chúng có thể biên dịch bởi HTML từ trình duyệt web. • Đối với khách hàng truy cập: có thể dễ dàng truy cập và tương tác với web hiệu quả hơn. Được hỗ trở bởi tất cả các trình duyệt, miễn phí và dễ dàng truy cập. Bên cạnh điểm mạnh thì cũng có điểm yếu: • Ngôn ngữ tĩnh, không sử dụng để thiết kế các trang web động.
• Vì là một ngôn ngữ phổ biến nên việc dễ bị khai thác bởi các hacker là một điều dễ hiểu, khai thác lỗi bảo mật để đưa mã đọc vào máy tính của người dùng. • Bên cạnh những trình duyệt hỗ trợ JavaScript thì cũng có những trình duyệt không hỗ trợ làm cho trải nghiệm không thuận tiện trên thiết bị.3 GIỚI THIỆU PHẦN CỨNG 2.1 Arduino Uno R3 [11] Arduino UNO là một bo mạch vi điều khiển dựa trênATmega328P. Nó có 14 chân đầu vào/đầu ra kỹ thuật số (trong đó 6 chân có thể được sử dụng làm đầu ra PWM), 6 đầu vào analog, bộ cộng hưởng gốm 16 MHz, kết nối USB, jack cắm nguồn, đầu ICSP và nút đặt lại. Nó chứa mọi thứ cần thiết để hỗ trợ vi điều khiển; chỉ cần kết nối nó với máy tính bằng cáp USB hoặc cấp nguồn cho nó bằng bộ chuyển đổi AC-to-DC hoặc pin để bắt đầu.
Bạn có thể sửa lại UNO của mình mà không phải lo lắng quá nhiều về việc làm sai điều gì đó, trong trường hợp xấu nhất, bạn có thể thay thế con chip với một vài đô la và bắt đầu lại từ đầu. CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ - VIỄN THÔNG 7 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Hình 2. 1 Arduino Uno R3 Bảng 2. 1 Bảng các thông số kỹ thuật Arduino Uno R3 Vi điều khiển ATmega328 họ 8bit Điện áp hoạt động 5V DC (chỉ được cấp qua cổng USB) Tần số hoạt động 16 MHz Dòng tiêu thụ khoảng 30mA Điện áp vào khuyên dùng 7-12V DC Điện áp vào giới hạn 6-20V DC Số chân Digital I/O 14 (6 chân hardware PWM) Số chân Analog 6 (độ phân giải 10bit) Dòng tối đa trên mỗi chân I/O 30 mA Dòng ra tối đa (5V) 500mA Dòng ra tối đa (3.3V) 50 mA 32 KB (ATmega328) với 0.5KB dùng bởi Bộ nhớ flash bootloader SRAM 2 KB (ATmega328) EEPROM 1 KB (ATmega328) Bảng 2.
2 Bảng các thông số chân Arduino Uno R3 CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ - VIỄN THÔNG 8 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Chức Loại Miêu tả năng NC NC Không kết nối IOREF IOREF đọc điện áp vi điều khiển Reset Reset Reset +3V3 Power 3.3V 5V Power 5V GND Power Nối đất GND Power Nối đất VIN Power Đầu vào điện áp A0 Analog/GPIO Đầu vào tương tự 0 /GPIO A1 Analog/GPIO Đầu vào tương tự 1 /GPIO A2 Analog/GPIO Đầu vào tương tự 2 /GPIO A3 Analog/GPIO Đầu vào tương tự 3 /GPIO A4/SDA Analog Chân dữ liệu nối tiếp input/I2C A5/SCL Analog Chân đồng hồ nối tiếp input/I2C D0/RX Digital/GPIO Ngõ vào số 0/GPIO Được sử dụng để nhận dữ liệu (RX) D1/TX Digital/GPIO Ngõ vào số 1/GPIO Truyền dữ liệu (TX) TTL D2 Digital/GPIO Ngõ vào số 2/GPIO D3 Digital/GPIO Ngõ vào số 3/GPIO Cung cấp đầu ra xung PWM D4 Digital/GPIO Ngõ vào số 4/GPIO D5 Digital/GPIO Ngõ vào số 5/GPIO Cung cấp đầu ra xung PWM CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ - VIỄN THÔNG 9 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT D6 Digital/GPIO Ngõ vào số 6/GPIO Cung cấp đầu ra xung PWM D7 Digital/GPIO Ngõ vào số 7/GPIO D8 Digital/GPIO Ngõ vào số 8/GPIO D9 Digital/GPIO Ngõ vào số 9/GPIO Cung cấp đầu ra xung PWM SS Digital Hỗ trợ giao tiếp SPI bằng Cung cấp đầu ra xung thư viện SPI PWM MOSI Digital Cung cấp đầu ra xung PWM MISO Digital SCL Digital GND Digital Nối đất 2.2 RFID-RC522 [12][13] Về RFID có nhiều loại tần sồ và khoảng cách khác nhau như: LF RFID (134 KHz - 10 cm), HF RFID (13,56 MHz - 10 cm), UHF RFID (300 MHz đến 3 GHz - 12 met) trong UHF RFID có UHF Gen2 RFID (860 đến 960 MHz hoặc 900 đến 915 MHz - 12 met) tùy thuộc nhà sản xuất mà dao động tần số thay đổi. Nhóm UHF được quy định bởi một tiêu chuẩn toàn cầu gọi là tiêu chuẩn ECPglobal Gen2 (ISO 18000-6C) UHF. Sau khi tham khảo, nhóm em chọn HF RFID. Và tham khảo thêm các chủng loại thuộc nhóm HF RFID để thực hiện gồm có : LC522, FM17550 và RC522.
Thì nhóm em chọn RFID-RC522 để thực hiện đồ án này vì trước đó tụi em đã học, tìm hiểu nó thông qua môn Công nghệ RFID của thầy Hiệp và ứng dụng được nó trong việc thêm, xóa thẻ phù hợp với mục tiêu ban đầu đề ra. Mạch RFID NFC 13.56MHz RC522 sử dụng IC MFRC522 được sử dụng để đọc và ghi dữ liệu cho thẻ RFID / NFC tần số 13.56MHz, mạch có thiết kế nhỏ gọn CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ - VIỄN THÔNG 10 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT được sử dụng rất phổ biến hiện nay với Arduino hoặc các loại Vi điều khiển khác trong các ứng dụng cần ghi, đọc thẻ RFID / NFC. 2 RFID-RC522 Bảng 2.