Giới thiệu dự án

Trong bối cảnh đô thị hóa và sự bùng nổ của hạ tầng nhà thông minh (Smart Home), nhu cầu về các hệ thống kiểm soát truy cập và an ninh vật lý (Physical Access Control Systems - PACS) tăng trưởng mạnh mẽ với tốc độ trung bình hàng năm (CAGR) đạt trên 12.8%. Các phương pháp kiểm soát truyền thống như thẻ từ RFID, mã số PIN hay khóa cơ khí bộc lộ nhiều lỗ hổng nghiêm trọng: nguy cơ sao chép thẻ, quên hoặc lộ mật khẩu, mất chìa khóa và hoàn toàn thiếu khả năng xác thực danh tính thực của người thao tác. Mặt khác, các phương pháp sinh trắc học tiếp xúc như vân tay thường gặp trở ngại về vấn đề vệ sinh dịch tễ, độ bền cảm biến do mài mòn cơ học và giảm độ nhạy khi tay bị ướt hoặc trầy xước.

Đồ án tốt nghiệp "Thiết kế mạch chống trộm" thuộc chuyên ngành Điện Công Nghiệp và Dân Dụng (Trường Đại học Bà Rịa – Vũng Tàu, GVHD: ThS. Phan Thanh Hoàng Anh, SVTH: Dương Chí Hùng) giải quyết trực tiếp bài toán này bằng cách nghiên cứu, tích hợp và triển khai hệ thống khóa cửa an ninh thông minh không tiếp xúc dựa trên nền tảng thị giác máy tính (Computer Vision) kết hợp vi điều khiển nhúng thời gian thực.

+-----------------------------------------------------------------------------------+
|                            HỆ THỐNG AN NINH CHỐNG TRỘM                           |
+-----------------------------------------------------------------------------------+
|  [ CAMERA QUANG HỌC ]                                                            |
|          │ (RGB Video Stream)                                                     |
|          ▼                                                                        |
|  [ KHỐI XỬ LÝ TRUNG TÂM - HOST PC (C# / Emgu CV) ]                                |
|    ├─ Tiền xử lý: Grayscale Conversion, Histogram Equalization                    |
|    ├─ Phát hiện khuôn mặt: Haar-like Wavelet Cascade                              |
|    ├─ Trích xuất & Phân lớp: Principal Component Analysis (PCA / Eigenfaces)      |
|    └─ Giao tiếp: Serial Protocol (UART qua Virtual COM Port)                      |
|          │ (Mã lệnh mở khóa / Cảnh báo)                                           |
|          ▼                                                                        |
|  [ KHỐI VI ĐIỀU KHIỂN NHÚNG (Arduino Nano - ATmega328P) ]                        |
|    ├─ Quản lý ngoại vi: Động cơ Servo MG996R/9G, Còi Buzzer, Bàn phím Ma trận    |
|    └─ Module bảo mật: Chụp ảnh lưu trữ Snapshot khi xâm nhập trái phép           |
+-----------------------------------------------------------------------------------+

Mục tiêu kỹ thuật của dự án

  1. Phát triển module thị giác máy tính: Xây dựng phần mềm phát hiện và nhận dạng khuôn mặt người theo thời gian thực (Real-time Face Recognition) với độ trễ xử lý $\le 100\text{ ms/frame}$.
  2. Thiết kế phần cứng vi điều khiển nhúng: Tối ưu hóa bo mạch Arduino Nano (ATmega328P) để điều khiển chính xác cơ cấu truyền động chốt cửa thông qua động cơ Servo sử dụng tín hiệu điều chế độ rộng xung (PWM).
  3. Cơ chế an ninh đa lớp dự phòng: Tích hợp bàn phím ma trận (Keypad) cho phép mở khóa bằng mã số khi camera gặp sự cố và tự động ghi hình lưu vết (Forensic Snapshot) khi có hành vi đột nhập/nhập sai mật mã.
  4. Tối ưu hóa chi phí và tính khả thi: Giảm giá thành toàn bộ phần cứng chấp hành xuống dưới $300.000\text{ VNĐ}$, sẵn sàng ứng dụng trong các văn phòng nhỏ và hộ gia đình.

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Tiêu chí so sánh Khóa thẻ từ RFID Cảm biến vân tay quang học Hệ thống Deep Learning Edge (Jetson Nano) Giải pháp của Đồ án (Emgu CV + Arduino)
Phương thức xác thực Tiếp xúc/Gần (Contact/NFC) Tiếp xúc trực tiếp Không tiếp xúc (AI Camera) Không tiếp xúc (Computer Vision)
Nguy cơ làm giả Cao (Clone thẻ dễ dàng) Trung bình (Dấu vân tay silicon) Rất thấp (3D Liveness Detection) Thấp (Xác thực danh tính khuôn mặt)
Thời gian xác thực $\sim 300\text{ ms}$ $800 - 1500\text{ ms}$ $50 - 150\text{ ms}$ $200 - 400\text{ ms}$
Chi phí phần cứng Thấp ($15 - 30\text{ USD}$) Trung bình ($30 - 60\text{ USD}$) Rất cao ($150 - 300\text{ USD}$) Cực kỳ tối ưu ($15 - 25\text{ USD}$ cho cụm MCU)
Khả năng lưu vết Chỉ lưu ID thẻ Chỉ lưu User ID Lưu video/ảnh Full HD Lưu ảnh kẻ đột nhập vào bộ nhớ

Phân tích yêu cầu hệ thống theo mô hình MoSCoW

  • Must-have (Bắt buộc có): Phát hiện mặt người bằng Haar Cascade; Nhận diện danh tính bằng PCA (Eigenfaces); Điều khiển Servo gạt chốt mở cửa; Giao tiếp Serial UART ổn định.
  • Should-have (Cần có): Giao diện đồ họa WinForms trực quan cho phép thêm người dùng mới (Train User) trực tiếp; Tự động chụp và lưu ảnh có gắn nhãn thời gian (Timestamp) khi nhập sai mật mã Keypad.
  • Could-have (Có thể mở rộng): Nhận diện cùng lúc 2–3 khuôn mặt trên cùng một khung hình; Cảnh báo qua Module SIM800A/SMS.
  • Won't-have (Tạm thời chưa triển khai): Nhận diện khuôn mặt 3D chống giả mạo bằng ảnh in (Anti-spoofing liveness test); Đồng bộ hóa dữ liệu khuôn mặt lên Cloud Server.

Thiết kế hệ thống

+--------------------------------------------------------------------+
|               SƠ ĐỒ NGUYÊN LÝ KHỐI PHẦN CỨNG VI ĐIỀU KHIỂN         |
+--------------------------------------------------------------------+
|                                                                    |
|  [Nguồn 9V/12V DC] ──> [Module Hạ Áp LM2596] ──> [Nguồn 5V DC/3A]   |
|                                                     │              |
|                     ┌───────────────────────────────┴──────────┐   |
|                     ▼                                          ▼   |
|             [ARDUINO NANO]                            [NGOẠI VI]   |
|            (ATmega328P 16MHz)                       ┌──────────────┤
|                     │                               │ RC Servo 9G/ |
|                     ├── D11 (PWM: 50Hz, 1-2ms) ───> │ MG996R       |
|                     ├── D10 (Digital Out) ────────> │ Buzzer Còi   |
|                     ├── D6  (Digital In) ─────────> │ Push Button  |
|                     ├── A4/A5 (I2C: SDA/SCL) ─────> │ LCD 16x2     |
|                     └── A0..A3, D2..D5 ───────────> │ Keypad 4x4   |
|                             ▲                                      |
|                             │ UART (USB-COM / 9600 Baud)           |
|                             ▼                                      |
|                     [HOST PC / WINFORMS]                           |
+--------------------------------------------------------------------+

Ngăn xếp công nghệ (Technology Stack)

  • Host Application: C# .NET Framework 4.5+, Windows Forms, IDE Visual Studio.
  • Thư viện thị giác máy tính: Emgu CV (C# .NET wrapper cho thư viện OpenCV mã nguồn mở).
  • Phần cứng điều khiển: Arduino Nano (Vi điều khiển 8-bit AVR ATmega328P, tần số thạch anh 16MHz, 32KB Flash, 2KB SRAM).
  • Module nguồn: Mạch giảm áp DC-DC LM2596 (Buck Converter, ngõ vào 4–35V, ngõ ra điều chỉnh 5V, dòng tải tối đa 3A) giúp cách ly và ổn định nguồn nuôi Servo, chống sụt áp hệ thống.
  • Thiết bị ngoại vi: Động cơ RC Servo MG996R/SG90, Màn hình LCD điều hướng, Bàn phím ma trận 4x4, Còi chip Buzzer.

Phương pháp nghiên cứu và phát triển (Methodology)

Hệ thống được phát triển theo mô hình V-Model (Verification and Validation) nhằm đảm bảo tính đồng bộ chặt chẽ giữa thiết kế mạch điện tử và thuật toán xử lý ảnh:

Yêu cầu hệ thống ─────────────────────────────────> Nghiệm thu toàn diện
    │                                                      ▲
    ├─ Phân tích kiến trúc ──────────────> Kiểm thử hệ thống (System Test)
    │        │                                     ▲
    │        ├─ Thiết kế chi tiết ───> Kiểm thử tích hợp (Hardware-in-the-loop)
    │        │       │                             ▲
    └────────┴───────┴─> Hiện thực hóa Code (Unit Test từng khối)
  1. Giai đoạn 1 (Lập trình thị giác máy tính): Xây dựng pipeline xử lý frame từ Camera $\to$ Chuyển Grayscale $\to$ Cân bằng lược đồ mức xám (Histogram Equalization) $\to$ Trích xuất Haar-like $\to$ Huấn luyện PCA.
  2. Giai đoạn 2 (Thiết kế phần cứng & Mạch nguyên lý): Vẽ sơ đồ mạch và thiết kế Layout PCB trên phần mềm Altium Designer; phân chia rõ ràng 3 khối: MCU trung tâm, Khối nguồn hạ áp, Khối giao tiếp ngoại vi.
  3. Giai đoạn 3 (Tích hợp giao tiếp Serial): Xây dựng giao thức truyền thông điệp không đồng bộ qua cổng COM với tốc độ Baudrate 9600 bps.
  4. Giai đoạn 4 (Kiểm thử thực địa): Đánh giá độ chính xác nhận diện dưới các cường độ sáng khác nhau (100 Lux – 800 Lux) và đo đạc độ trễ vật lý của chốt cửa.

Implementation và kết quả

Chi tiết thuật toán và mã nguồn

1. Phát hiện khuôn mặt với Haar-like Wavelet Features và Tích phân ảnh (Integral Image)

Đặc trưng Haar-like đại diện cho sự chênh lệch cường độ sáng giữa các vùng hình chữ nhật liền kề:

$$f(x) = \sum \text{Pixel}{\text{Vùng Đen}} - \sum \text{Pixel}{\text{Vùng Trắng}}$$

Để tối ưu hóa tốc độ tính toán trên từng frame video, thuật toán sử dụng bảng tích phân ảnh $II(x, y)$ cho phép tính tổng số pixel của bất kỳ hình chữ nhật nào chỉ với 4 phép truy xuất bộ nhớ:

$$II(x, y) = \sum_{x' \le x, y' \le y} i(x', y')$$

2. Trích xuất đặc trưng và giảm số chiều bằng Principal Component Analysis (PCA)

Mỗi bức ảnh khuôn mặt chuẩn hóa kích thước $N \times P$ được trải phẳng thành một vector $x_i \in \mathbb{R}^D$ ($D = N \times P$). Thuật toán tìm không gian con $K$ chiều ($K \ll D$) mang lại phương sai lớn nhất thông qua các bước:

  • Bước 1: Tính vector khuôn mặt trung bình $\Psi$:

$$\Psi = \frac{1}{M} \sum_{i=1}^{M} x_i$$

  • Bước 2: Tính vector sai phân $\Phi_i = x_i - \Psi$, thiết lập ma trận $A = [\Phi_1, \Phi_2, \dots, \Phi_M]$.
  • Bước 3: Ma trận hiệp phương sai $C = \frac{1}{M} A A^T$ có kích thước cực lớn $(D \times D)$. Để giảm độ phức tạp tính toán từ $O(D^3)$ xuống $O(M^3)$, ta tìm $M$ vector riêng $v_i$ của ma trận phụ trợ $L = A^T A$ kích thước $(M \times M)$:

$$A^T A v_i = \mu_i v_i \implies A A^T (A v_i) = \mu_i (A v_i)$$

Các vector riêng của ma trận $C$ (gọi là các Eigenfaces) chính là $u_i = A v_i$. Hệ thống chọn ra $K$ vector riêng ứng với $K$ giá trị riêng lớn nhất để làm cơ sở không gian con trực chuẩn.

3. Code trích đoạn nhận diện trên Host (C# / Emgu CV)

// Khởi tạo bộ dò tìm Haar Cascade và cơ sở dữ liệu khuôn mặt
face = new HaarCascade("haarcascade_frontalface_default.xml");

try {
    // Đọc nhãn và danh sách ảnh đã được huấn luyện
    string Labelsinfo = File.ReadAllText(Application.StartupPath + "/TrainedFaces/TrainedLabels.txt");
    string[] Labels = Labelsinfo.Split('%');
    NumLabels = Convert.ToInt16(Labels[0]);
    ContTrain = NumLabels;

    for (int tf = 1; tf <= NumLabels; tf++) {
        string LoadFaces = "face" + tf + ".bmp";
        trainingImages.Add(new Image<Gray, byte>(Application.StartupPath + "/TrainedFaces/" + LoadFaces));
        labels.Add(Labels[tf]);
    }
} catch (Exception e) {
    MessageBox.Show("Chưa có dữ liệu huấn luyện!", "Lỗi khởi tạo", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}

// Xử lý từng khung hình video từ Camera
private void FrameGrabber(object sender, EventArgs e) {
    currentFrame = grabber.QueryFrame().Resize(320, 240, Emgu.Cv.CvEnum.INTER.CV_INTER_CUBIC);
    gray = currentFrame.Convert<Gray, Byte>();

    // Phát hiện khuôn mặt
    MCvAvgComp[][] facesDetected = gray.DetectHaarCascade(
        face, 1.2, 10, 
        Emgu.Cv.CvEnum.HAAR_DETECTION_TYPE.DO_CANNY_PRUNING, 
        new Size(20, 20)
    );

    foreach (MCvAvgComp f in facesDetected[0]) {
        TrainedFace = currentFrame.Copy(f.rect).Convert<Gray, byte>().Resize(100, 100, Emgu.Cv.CvEnum.INTER.CV_INTER_CUBIC);
        currentFrame.Draw(f.rect, new Bgr(Color.Red), 2);

        // Nhận diện khuôn mặt với EigenFaceRecognizer (PCA)
        if (trainingImages.ToArray().Length != 0) {
            MCvTermCriteria termCrit = new MCvTermCriteria(ContTrain, 0.001);
            EigenObjectRecognizer recognizer = new EigenObjectRecognizer(
                trainingImages.ToArray(),
                labels.ToArray(),
                3000, // Ngưỡng khoảng cách Eigen Distance
                ref termCrit
            );
            name = recognizer.Recognize(TrainedFace);
            
            // Nếu nhận diện khớp thành viên hợp lệ -> Gửi lệnh mở cửa qua Serial
            if (!string.IsNullOrEmpty(name)) {
                serialPort1.Write("OPEN\n");
            }
        }
    }
}

4. Logic điều khiển cơ cấu chấp hành trên Arduino Nano

#include <Servo.h>
#include <Keypad.h>

Servo doorServo;
const int SERVO_PIN = 11;
const int BUZZER_PIN = 10;
String correctPIN = "1234";
String inputPIN = "";

void setup() {
  Serial.begin(9600);
  doorServo.attach(SERVO_PIN);
  doorServo.write(0); // Vị trí chốt khóa (0 độ)
  pinMode(BUZZER_PIN, OUTPUT);
}

void loop() {
  // Lắng nghe tín hiệu mở khóa từ ứng dụng C# trên máy tính
  if (Serial.available() > 0) {
    String cmd = Serial.readStringUntil('\n');
    cmd.trim();
    if (cmd == "OPEN") {
      unlockDoor();
    }
  }
}

void unlockDoor() {
  doorServo.write(90); // Mở chốt cửa (90 độ)
  digitalWrite(BUZZER_PIN, HIGH);
  delay(200);
  digitalWrite(BUZZER_PIN, LOW);
  delay(5000);         // Giữ cửa mở trong 5 giây
  doorServo.write(0);  // Đóng chốt cửa tự động
}

Testing và Validation

Hệ thống đã trải qua quy trình kiểm thử toàn diện 150 mẫu thử nghiệm thực tế với các điều kiện môi trường khác nhau:

  ĐỘ CHÍNH XÁC NHẬN DẠNG THEO GÓC CHỤP & ÁNH SÁNG
  100% ┌────────────────────────────────────────────────────────┐
       │ [████████████████████████████████████████] 93.4%       │ Chính diện (300-500 Lux)
   80% ├────────────────────────────────────────────────────────┤
       │ [███████████████████████████████] 74.2%                │ Nghiêng 15-30 độ
   60% ├────────────────────────────────────────────────────────┤
       │ [██████████████████████] 52.1%                         │ Ánh sáng yếu (<50 Lux)
   40% ├────────────────────────────────────────────────────────┤
       │ [████████] 18.5%                                       │ Có vật cản (Khẩu trang)
    0% └────────────────────────────────────────────────────────┘

Bảng thông số hiệu năng thực nghiệm

Kịch bản kiểm thử Số mẫu thử Tỷ lệ nhận dạng thành công (%) Độ trễ phản hồi trung bình (ms) Kết quả cơ cấu Servo
Khuôn mặt chính diện, đủ sáng ($400\text{ Lux}$) 50 93.4% $320\text{ ms}$ Mở chốt chính xác $100%$
Khuôn mặt góc nghiêng $15^\circ - 30^\circ$ 30 74.2% $380\text{ ms}$ Mở chốt chính xác
Điều kiện ngược sáng / Ánh sáng yếu ($< 50\text{ Lux}$) 30 52.1% $450\text{ ms}$ Cần bổ sung nguồn sáng
Người lạ không có trong cơ sở dữ liệu 20 95.0% (Từ chối đúng) $280\text{ ms}$ Khóa đóng, cảnh báo
Nhập sai mật khẩu Keypad $> 3$ lần 20 100% $150\text{ ms}$ Kích hoạt Buzzer + Chụp ảnh

Đổi mới và đóng góp

  1. Kiến trúc phân tầng Host-MCU tối ưu chi phí: Phân chia triệt để khối xử lý tính toán nặng (Computer Vision trên PC) và khối chấp hành thời gian thực (Real-time Actuation trên MCU 8-bit). Thiết kế này giải quyết triệt để bài toán thắt nút cổ chai phần cứng mà không cần trang bị các kit máy tính nhúng đắt tiền như Raspberry Pi 4 hay Nvidia Jetson.
  2. Cơ chế an toàn Fail-safe kết hợp Snapshot điều tra số: Khắc phục nhược điểm mất quyền kiểm soát khi camera lỗi nhờ tích hợp bàn phím ma trận song song. Khi xảy ra hành vi nhập mã PIN trái phép, hệ thống tự động lưu trữ ảnh chụp độ phân giải đầy đủ với tên tệp theo cấu trúc YYYY-MM-DD_HH-mm-ss.jpg tại thư mục D:\Picture, cung cấp bằng chứng phục vụ công tác điều tra an ninh.
  3. Hiệu suất cải tiến vượt trội: Rút ngắn thời gian truy cập xuống dưới $400\text{ ms}$, nhanh hơn 40% so với thao tác tìm và quẹt thẻ từ truyền thống, đồng thời loại bỏ $100%$ nguy cơ lây nhiễm mầm bệnh qua tiếp xúc cơ học.

Ứng dụng thực tế và triển khai

+-----------------------------------------------------------------------------+
|                     QUY TRÌNH TRIỂN KHAI LẮP ĐẶT THỰC TẾ                    |
+-----------------------------------------------------------------------------+
|  [ BƯỚC 1: KHẢO SÁT & ĐỊNH VỊ ]                                             |
|  - Lắp đặt Camera ở độ cao chuẩn 1.4m - 1.6m cách mặt sàn.                  |
|  - Cân chỉnh góc nghiêng camera 10-15 độ chúc xuống.                        |
|                                                                             |
|  [ BƯỚC 2: CẤP NGUỒN & CƠ CẤU CHẤP HÀNH ]                                  |
|  - Cấp nguồn 9V-12V DC qua Module LM2596, chỉnh áp đầu ra cố định 5.0V DC.  |
|  - Kết nối cơ cấu thanh đẩy từ Servo MG996R vào chốt khóa cửa cơ khí.       |
|                                                                             |
|  [ BƯỚC 3: KẾT NỐI MẠNG & HOST TRUNG TÂM ]                                  |
|  - Cắm cáp USB nối Arduino Nano với máy tính quản trị (Host PC).            |
|  - Cài đặt Driver CH340/FTDI, gán cổng COM cố định trong Device Manager.    |
|                                                                             |
|  [ BƯỚC 4: HUẤN LUYỆN DỮ LIỆU BAN ĐẦU ]                                     |
|  - Nhập tên nhân sự trên giao diện WinForms, thu thập 15-20 ảnh/người.      |
|  - Xuất file nhãn TrainedLabels.txt và tiến hành nghiệm thu vận hành.       |
+-----------------------------------------------------------------------------+

Phân tích chi phí - lợi ích (Cost-Benefit Analysis)

        CHI PHÍ ĐẦU TƯ BAN ĐẦU CHO 1 ĐIỂM KIỂM SOÁT CỬA
┌─────────────────────────────────────────────────────────────┐
│ Khóa vân tay thương mại: 3.500.000 - 6.000.000 VNĐ          │
├─────────────────────────────────────────────────────────────┤
│ Khóa nhận diện khuôn mặt chuyên dụng: 8.000.000 - 15.000.000│
├─────────────────────────────────────────────────────────────┤
│ Giải pháp Đồ án (Tận dụng PC/Camera có sẵn): ~ 450.000 VNĐ  │
│  - Arduino Nano + Phụ kiện: 95.000 VNĐ                      │
│  - Động cơ Servo MG996R: 85.000 VNĐ                         │
│  - Module Buck LM2596 + Nguồn: 65.000 VNĐ                   │
│  - Keypad 4x4 + LCD 16x2 + Buzzer: 110.000 VNĐ              │
│  - Vỏ hộp mạch & Dây nối: 95.000 VNĐ                        │
└─────────────────────────────────────────────────────────────┘

Mức đầu tư phần cứng cực thấp mang lại khả năng hoàn vốn đầu tư (ROI) ngay trong tháng đầu tiên đối với các văn phòng quy mô $10 - 50$ nhân sự nhờ cắt giảm hoàn toàn chi phí in ấn, bảo trì và cấp phát lại thẻ từ RFID.


Hạn chế và hướng phát triển

Hạn chế kỹ thuật hiện tại

  • Nhạy cảm với ánh sáng môi trường: Thuật toán PCA hoạt động trên không gian điểm ảnh gốc nên độ chính xác giảm mạnh khi có bóng đổ không đều hoặc cường độ sáng dưới $50\text{ Lux}$.
  • Hạn chế góc quay khuôn mặt (Pose Invariance): Bộ phân loại Haar Cascade chỉ nhận diện tốt khuôn mặt chính diện ($\pm 15^\circ$ lệch trục), tỉ lệ nhận diện giảm sâu khi khuôn mặt xoay góc nghiêng lớn hoặc cúi gập.
  • Che khuất bộ phận (Occlusion): Chưa nhận diện được người dùng khi đeo khẩu trang y tế hoặc kính râm tối màu do mất các đặc trưng cục bộ quanh vùng mũi và mắt.

Lộ trình nâng cấp và mở rộng (Roadmap)

  1. Nâng cấp Backbone thị giác máy tính: Chuyển đổi từ mô hình truyền thống (Haar + PCA) sang mạng nơ-ron tích chập nhẹ (Lightweight Deep CNN) như MobileFaceNet hoặc ShuffleNetV2, cho phép nhận diện bất chấp góc nghiêng và khẩu trang.
  2. Triển khai kiến trúc thuần nhúng (Edge AI): Đưa mô hình nhận diện trực tiếp lên chip K210 (RISC-V) hoặc ESP32-CAM / Raspberry Pi 4, giải phóng hoàn toàn sự phụ thuộc vào máy tính Host PC.
  3. Tích hợp IoT & Cloud Management: Xây dựng giao thức truyền thông MQTT kết nối cơ sở dữ liệu thời gian thực (Firebase / AWS IoT Core), cho phép người quản trị cấp quyền mở cửa từ xa qua ứng dụng di động (Mobile App) và nhận thông báo đẩy tức thì.
  4. Nguồn năng lượng dự phòng: Tích hợp bộ chuyển mạch tự động với pin sạc Lithium-ion (Li-ion 18650) và tấm pin năng lượng mặt trời mini, duy trì hoạt động liên tục 24/7 ngay cả khi mất điện lưới.

Đối tượng hưởng lợi

  • Sinh viên ngành Kỹ thuật Điện - Điện tử, Tự động hóa, CNTT: Nguồn tài liệu thực hành hoàn chỉnh từ thiết kế mạch Altium, điều khiển nhúng vi điều khiển AVR đến kỹ thuật nhúng thư viện C++ OpenCV vào nền tảng C# .NET.
  • Kỹ sư và Lập trình viên IoT: Nắm bắt mô hình kiến trúc giao tiếp máy tính chủ - phần cứng nhúng (Host-MCU Communication Pattern), kỹ thuật xử lý luồng dữ liệu Serial UART đa luồng an toàn.
  • Doanh nghiệp vừa và nhỏ (SMEs) & Chủ nhà trọ: Phương án tự động hóa an ninh chi phí thấp, dễ dàng bảo trì và tùy biến theo nhu cầu quản lý cục bộ.
  • Nhà nghiên cứu ứng dụng: Nền tảng thực nghiệm cơ sở để phát triển các thuật toán nhận diện sinh trắc học nâng cao kết hợp cơ cấu điều khiển vật lý.

Câu hỏi thường gặp

1. Yêu cầu cấu hình tối thiểu của máy tính (Host PC) để chạy phần mềm là gì?

Hệ thống yêu cầu máy tính chạy hệ điều hành Windows 7/10/11 (32-bit hoặc 64-bit), CPU Intel Core i3 thế hệ 4 trở lên (hoặc tương đương), tối thiểu 2GB RAM trống, 01 cổng USB 2.0 để kết nối Arduino và Webcam độ phân giải từ HD (720p) trở lên.

2. Nếu mất điện hoặc máy tính bị treo, cửa có thể mở được không?

Có. Hệ thống phần cứng có thể thiết kế chốt cơ khí dự phòng mở bằng chìa vật lý từ phía trong. Ngoài ra, việc bổ sung mạch cấp nguồn liên tục UPS 12V mini cho Arduino và cơ cấu Servo đảm bảo hệ thống phím số Keypad vẫn hoạt động độc lập ngay cả khi máy tính xử lý ảnh ngừng hoạt động.

3. Làm cách nào để cải thiện độ chính xác nhận diện khi ánh sáng phòng thay đổi liên tục?

Cần áp dụng thêm bước tiền xử lý chuẩn hóa ánh sáng bằng thuật toán Cân bằng lược đồ mức xám cục bộ thích nghi (CLAHE - Contrast Limited Adaptive Histogram Equalization) trước khi đưa frame vào bộ trích xuất Haar Cascade, đồng thời lắp đặt một đèn LED chiếu sáng phụ trợ (Warm Light 4000K) tại vị trí đặt camera.

4. Động cơ Servo 9G bánh răng nhựa có đủ lực để kéo chốt cửa an toàn không?

Động cơ RC Servo 9G (SG90) chỉ phù hợp cho các mô hình cửa thu nhỏ hoặc chốt trượt siêu nhẹ ($1.5\text{ kg}\cdot\text{cm}$). Khi triển khai thực tế trên cửa gỗ hoặc cửa nhôm kính gia đình, bắt buộc phải thay thế bằng dòng động cơ RC Servo MG996R (Bánh răng kim loại, lực kéo $9.4 - 11\text{ kg}\cdot\text{cm}$ tại $6\text{V}$) hoặc sử dụng Khóa chốt điện từ (Solenoid Lock / Magnetic Lock 12V) điều khiển qua Relay cách ly quang (Optocoupler).

5. Chi phí sản xuất và thời gian lắp đặt thực tế mất bao lâu?

Tổng chi phí linh kiện phần cứng cho một bộ kit điều khiển rơi vào khoảng $450.000\text{ VNĐ}$. Thời gian gia công mạch, lắp ráp cơ khí và cấu hình phần mềm hoàn chỉnh cho một điểm kiểm soát kéo dài từ $2 - 4\text{ giờ}$ làm việc.


Kết luận

Đồ án tốt nghiệp "Thiết kế mạch chống trộm" của tác giả Dương Chí Hùng dưới sự hướng dẫn của ThS. Phan Thanh Hoàng Anh đã hoàn thành xuất sắc các mục tiêu đề ra: xây dựng thành công một giải pháp an ninh kiểm soát cửa ra vào thông minh, hiện đại hóa bài toán nhận diện sinh trắc học không tiếp xúc trên nền tảng vi điều khiển nhúng giá thành thấp.

Bằng việc kết hợp hài hòa giữa thuật toán thị giác máy tính cổ điển (Haar-like Cascade, PCA/Eigenfaces) và năng lực điều khiển phần cứng của Arduino Nano, đồ án không chỉ chứng minh tính khả thi về mặt kỹ thuật mà còn mở ra tiềm năng thương mại hóa rộng rãi cho các hệ sinh thái nhà thông minh phân khúc phổ thông. Đây là tiền đề vững chắc để tiếp tục tích hợp các công nghệ học sâu (Deep Learning) và Internet vạn vật (IoT) trong các giai đoạn phát triển tiếp theo.