Giới thiệu dự án

Xe máy là phương tiện giao thông đường bộ chủ lực tại Việt Nam, chiếm tới 70% tổng số phương tiện lưu thông toàn quốc. Theo số liệu từ Hiệp hội các nhà sản xuất xe máy Việt Nam (VAMM), chỉ tính riêng trong năm 2022, toàn thị trường đã tiêu thụ hơn 3 triệu phương tiện (tương đương trung bình mỗi ngày có hơn 8.000 xe và mỗi phút có khoảng 6 chiếc xe máy mới được bán ra). Mặc dù có tính linh hoạt cao và chi phí sở hữu phù hợp với thu nhập bình quân của người dân, phương tiện này đang đối mặt với hai vấn đề nhức nhối: nguy cơ mất trộm tài sản và rủi ro tai nạn giao thông nghiêm trọng. Theo thống kê của Tổ chức Y tế Thế giới (WHO), người điều khiển xe máy có tỷ lệ tử vong do tai nạn giao thông cao gấp 4 lần so với người đi ô tô con, 10 lần so với xe buýt và 13 lần so với tàu điện đô thị.

+-------------------------------------------------------------------------+
|                              HỆ THỐNG ISAFE                             |
|                                                                         |
|  +-------------------+      +-------------------+      +-------------+  |
|  |  Perception Layer | ---> |   Network Layer   | ---> |  Processing |  |
|  |  (ESP32, MPU6050, |      |  (SIM7020C NB-IoT,|      |    Layer    |  |
|  |   NEO-7M, Buzzer) |      |   EMQX MQTT, TLS) |      | (NodeJS/BE) |  |
|  +-------------------+      +-------------------+      +------+------+  |
|                                                               |         |
|                                                               v         |
|  +-------------------+                              +---------+------+  |
|  | Application Layer | <--------------------------- | Cloud Database |  |
|  | (Flutter MobiApp) |        (FCM / Socket.io)     |   (Firestore)  |  |
|  +-------------------+                              +----------------+  |
+-------------------------------------------------------------------------+

Đề tài tốt nghiệp "Thiết kế, triển khai hệ thống IOT phát hiện và cảnh báo mất trộm, tai nạn xe máy" (Mã dự án: ISAFE) do sinh viên Đào Bá Khánh thực hiện dưới sự hướng dẫn của TS. Trịnh Quang Đức tại Trường Điện - Điện tử, Đại học Bách Khoa Hà Nội, được nghiên cứu nhằm giải quyết trọn vẹn cả hai bài toán trên trên cùng một nền tảng phần cứng và ứng dụng di động duy nhất.

Mục tiêu cụ thể của dự án gồm:

  1. Thiết kế và chế tạo phần cứng nhúng (Device) gắn trên xe máy, tích hợp cảm biến đo gia tốc/góc nghiêng và định vị vệ tinh, hỗ trợ nguồn kép (ắc quy xe 12V và pin dự phòng Li-ion 2S 7.4V).
  2. Phát triển thuật toán crashDetAlgo phát hiện va chạm/tai nạn và lostDetAlgo phát hiện xâm nhập/mất trộm phương tiện theo thời gian thực.
  3. Xây dựng hệ thống Server-Backend trên nền tảng Node.js và Firebase Firestore để quản lý dữ liệu, điều phối tin nhắn cảnh báo đa kênh (SMS, Voice Call, Firebase Cloud Messaging - FCM).
  4. Phát triển ứng dụng di động đa nền tảng (Flutter MobiApp) trên Android/iOS giúp người dùng giám sát vị trí trực quan qua Google Maps SDK, quản lý trạng thái xe và cấu hình cảnh báo khẩn cấp (SOS).

Phạm vi và giới hạn hệ thống:

  • Phạm vi: Áp dụng cho các dòng xe máy số, xe tay ga phổ thông tại thị trường Việt Nam sử dụng nguồn điện 12VDC.
  • Giới hạn: Khả năng định vị GPS phụ thuộc vào điều kiện tầm nhìn vệ tinh (không gian hở); việc truyền dữ liệu khẩn cấp phụ thuộc vào vùng phủ sóng viễn thông 4G/NB-IoT của nhà mạng.

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

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

Hiện nay trên thị trường có các giải pháp bảo vệ xe máy riêng lẻ nhưng tồn tại nhiều nhược điểm lớn khi tích hợp:

Tiêu chí so sánh Khóa cơ / Khóa đĩa / Smartkey Khóa định vị GPS thương mại (Ví dụ: Viettel W2) Hệ thống eCall ô tô chuyên dụng Hệ thống IoT ISAFE (Đề tài)
Bảo vệ chống trộm Cảnh báo còi tại chỗ, dễ bị vô hiệu hóa cơ học Định vị qua sóng viễn thông, tắt máy từ xa qua SMS Không hỗ trợ chống trộm xe máy Cảnh báo còi, khóa xe từ xa, gửi tọa độ thời gian thực về App
Phát hiện tai nạn Không hỗ trợ Không hỗ trợ Tự động gọi cứu hộ khi nổ túi khí / va chạm mạnh Tự động phát hiện va đập/ngã xe qua thuật toán crashDetAlgo
Cảnh báo khẩn cấp Không có Chỉ gửi tin nhắn khi ngắt nguồn ắc quy Tự động gửi tọa độ va chạm về trung tâm 115/911 Tự động kích hoạt FCM, SMS, Voice Call và nút bấm cứng SOS
Nguồn dự phòng Không có (hết bình là vô hiệu) Pin dự phòng dung lượng nhỏ (~200-400mAh) Nguồn chuyên dụng của xe ô tô Pin Li-ion 18650 2S (2200mAh) tích hợp module sạc tự động
Chi phí đầu tư 200.000 – 3.000.000 VNĐ 1.500.000 – 2.500.000 VNĐ + phí duy trì sim Rất cao (>10.000.000 VNĐ) Tối ưu (~800.000 – 1.200.000 VNĐ chi phí linh kiện phần cứng)

Phân loại yêu cầu hệ thống theo mô hình MoSCoW:

  • Must-Have: Nhận diện tai nạn khi vượt ngưỡng gia tốc $cTHRD$; phát hiện dắt trộm xe trái phép khi kích hoạt chế độ bảo vệ; định vị tọa độ GPS; gửi thông báo FCM và phát còi báo động.
  • Should-Have: Nút bấm khẩn cấp SOS trên ghi-đông; chuyển đổi nguồn thông minh ắc quy - pin dự phòng; đồng bộ thời gian thực qua WebSocket/Socket.io lên MobiApp.
  • Could-Have: Điều khiển tắt/bật chống trộm qua ứng dụng; cấu hình số điện thoại người thân nhận tin nhắn khẩn cấp; chế độ hiển thị Dark/Light theme trên Mobile App.
  • Won't-Have (giai đoạn này): Tự động ngắt rơ-le phun xăng điện tử (FI) để dừng động cơ từ xa; tích hợp Camera AI nhận diện khuôn mặt người lái.

Thiết kế hệ thống

Kiến trúc hệ thống bao gồm 4 tầng IoT chuẩn hóa:

graph TD
    subgraph "Perception Layer (Hardware Device)"
        ESP32[MCU ESP32-WROOM-32]
        MPU[MPU6050 I2C Accel/Gyro] -->|Raw Data| ESP32
        GPS[GY-NEO 7M UART] -->|NMEA Sentences| ESP32
        PWR[Power Circuit: 12V to 5V/3.3V LM2596 + 2S Li-ion] --> ESP32
        BUZ[Buzzer + SOS Button] <--> ESP32
    end

    subgraph "Network Layer"
        SIM[SIM7020C NB-IoT/4G] <-->|AT Commands UART| ESP32
        SIM <-->|MQTT 3.1.1 Over TLS| EMQX[EMQX Cloud Broker]
    end

    subgraph "Processing Layer (Backend Engine)"
        EMQX <-->|Pub/Sub Telemetry| BEApp[Node.js / Express Backend]
        BEApp <-->|Firebase Admin SDK| Firestore[(Cloud Firestore DB)]
        BEApp -->|Trigger Alert| FCM[Firebase Cloud Messaging]
        BEApp -->|Voice/SMS API| Telco[SMS & Voice Gateway]
    end

    subgraph "Application Layer"
        MobiApp[Flutter Mobile App Android/iOS] <-->|RESTful API / JWT| BEApp
        MobiApp <-->|Websocket/Socket.io| BEApp
        FCM -->|Push Notification| MobiApp
        Firestore -.->|Sync Metadata| MobiApp
    end

Technology Stack và phiên bản:

  • Phần cứng nhúng (Device): MCU ESP32-WROOM-32 (Dual Core Xtensa 32-bit LX6 @ 240MHz, 520KB SRAM); Cảm biến đo quán tính 6 trục MPU6050; Module định vị GPS NEO-7M; Module truyền thông dữ liệu SIM7020C NB-IoT / 4G LTE.
  • Server Backend: Node.js v18.16 LTS, Express.js v4.18, Socket.io v4.6, Firebase Admin SDK v11.8.
  • MQTT Broker: EMQX Enterprise Broker v5.1 (hỗ trợ giao thức MQTT 3.1.1/5.0 qua cổng 1883/8883 MQTTS).
  • Cơ sở dữ liệu: Google Cloud Firestore (NoSQL Document Database).
  • Mobile Application: Flutter SDK v3.10.x, ngôn ngữ Dart v3.0.x, BLoC Pattern v8.1.x, Google Maps SDK v2.5.

Thiết kế Database (Cloud Firestore Schema):

Hệ thống sử dụng mô hình dữ liệu NoSQL phân tán với 3 collection cốt lõi:

  1. users: Lưu trữ thông tin tài khoản người dùng (userId, phoneNumber, fullName, citizenId, emergencyContacts[], createdAt).
  2. devices: Lưu thông tin phần cứng (deviceId, macAddress, ownerId, antiTheftStatus, batteryLevel, isCharging, lastLocation: {latitude, longitude, timestamp}, state: "NORMAL" | "LOST" | "CRASH" | "SOS").
  3. user-notifications: Lưu lịch sử thông báo (notificationId, userId, deviceId, title, body, type: "THEFT" | "ACCIDENT" | "BATTERY_LOW", isRead: boolean, timestamp).
+-----------------------------------------------------------------------------------+
| REST API ENDPOINTS SPECIFICATION (NODE.JS - EXPRESS)                              |
+-----------------------------------------------------------------------------------+
| Method | Endpoint                        | Auth | Description                     |
+--------+---------------------------------+------+---------------------------------+
| POST   | /api/v1/auth/verify-otp         | No   | Xác thực số điện thoại & cấp JWT|
| POST   | /api/v1/device/pair             | JWT  | Liên kết deviceId với tài khoản |
| PATCH  | /api/v1/device/antitheft-toggle | JWT  | Bật/tắt chế độ chống trộm từ xa |
| GET    | /api/v1/device/location/latest  | JWT  | Truy vấn tọa độ GPS mới nhất    |
| POST   | /api/v1/device/alert/ack        | JWT  | Xác nhận và tắt còi cảnh báo    |
+-----------------------------------------------------------------------------------+

Methodology

Quy trình phát triển hệ thống áp dụng mô hình Agile/Scrum rút gọn với chu kỳ phát triển 4 tuần/sprint:

  • Giai đoạn 1 (Milestone M1 - Tuần 1-3): Thiết kế sơ đồ nguyên lý (Schematic) và layout mạch in 2 lớp (PCB) trên Altium Designer 22; gia công PCB và hàn thử nghiệm module nguồn, ESP32, MPU6050.
  • Giai đoạn 2 (Milestone M2 - Tuần 4-6): Xây dựng Firmware C++ trên ESP32; nhúng tập lệnh AT giao tiếp SIM7020C kết nối EMQX MQTT; thu thập dữ liệu gia tốc để tính toán ngưỡng $cTHRD$.
  • Giai đoạn 3 (Milestone M3 - Tuần 7-9): Xây dựng Backend Node.js, cấu hình Firestore Database, cấu hình Firebase Cloud Messaging; phát triển ứng dụng Flutter Mobile App (kiến trúc BLoC).
  • Giai đoạn 4 (Milestone M4 - Tuần 10-12): Kiểm thử tích hợp toàn hệ thống (System Integration Testing), chạy thử nghiệm thực địa trên xe máy Honda Wave Alpha và Honda Air Blade trong điều kiện vận hành thực tế.

Implementation và kết quả

Development process

Quá trình lập trình phần cứng và thuật toán tập trung vào việc tối ưu hóa tốc độ phản hồi và độ chính xác của hai thuật toán xử lý tín hiệu trọng yếu:

1. Thuật toán phát hiện tai nạn xe máy (crashDetAlgo)

Thuật toán giám sát liên tục vector gia tốc không gian 3 chiều $(a_x, a_y, a_z)$ từ MPU6050 qua bus $I^2C$ ở tần số lấy mẫu $50\text{ Hz}$. Sự biến thiên gia tốc tổng hợp được tính theo công thức độ lớn vector không gian:

$$\text{accChange} = \sqrt{(a_x(t) - a_x(t-1))^2 + (a_y(t) - a_y(t-1))^2 + (a_z(t) - a_z(t-1))^2}$$

Khi phương tiện gặp va chạm mạnh dẫn đến ngã đổ, giá trị $\text{accChange}$ sẽ tăng đột biến vượt ngưỡng tai nạn $cTHRD$ ($\ge 2.8g$), đồng thời góc nghiêng trục $\text{Roll}/\text{Pitch}$ thay đổi vượt quá $60^\circ$ so với phương thẳng đứng và duy trì trạng thái bất động trong khoảng thời gian $\Delta t \ge 5\text{ giây}$.

// Trích xuất mã nguồn thuật toán crashDetAlgo trên ESP32 Firmware
#include <Wire.h>
#include <MPU6050.h>

#define CRASH_THRESHOLD 2.85 // Ngưỡng gia tốc cTHRD (g)
#define TILT_ANGLE_LIMIT 60.0 // Góc nghiêng xác định ngã xe (độ)

MPU6050 mpu;
int16_t ax, ay, az, gx, gy, gz;
float prevAx = 0, prevAy = 0, prevAz = 0;

bool checkCrashDetection() {
    mpu.getMotion6(&ax, &ay, &az, &gx, &gy, &gz);
    // Chuyển đổi giá trị thô sang đơn vị gia tốc g (Full scale +/- 16g -> 2048 LSB/g)
    float curAx = (float)ax / 2048.0;
    float curAy = (float)ay / 2048.0;
    float curAz = (float)az / 2048.0;
    
    // Tính biến thiên gia tốc tổng hợp accChange
    float accChange = sqrt(pow(curAx - prevAx, 2) + 
                           pow(curAy - prevAy, 2) + 
                           pow(curAz - prevAz, 2));
                           
    prevAx = curAx; prevAy = curAy; prevAz = curAz;
    
    // Tính toán góc nghiêng trục Roll/Pitch
    float pitch = atan2(-curAx, sqrt(curAy * curAy + curAz * curAz)) * 180.0 / M_PI;
    float roll  = atan2(curAy, curAz) * 180.0 / M_PI;
    
    if (accChange >= CRASH_THRESHOLD && (abs(roll) > TILT_ANGLE_LIMIT || abs(pitch) > TILT_ANGLE_LIMIT)) {
        return true; // Xác nhận xảy ra sự kiện tai nạn
    }
    return false;
}

2. Lập trình truyền nhận dữ liệu qua SIM7020C và giao thức MQTT

Dữ liệu trạng thái xe được đóng gói dưới định dạng JSON rút gọn và gửi lên EMQX Broker qua tập lệnh AT Command chuẩn UART tốc độ baud 115200 bps:

// Chuỗi tập lệnh AT kết nối MQTT trên Module SIM7020C
// 1. Khởi tạo kết nối mạng viễn thông và tạo Client MQTT
AT+CMQNEW="broker.emqx.io","1883",12000,1024
// Phản hồi: +CMQNEW: 0 (Đã kết nối thành công, Client ID = 0)

// 2. Thiết lập kết nối xác thực MQTT session
AT+CMQCON=0,3,"ISAFE_ESP32_01",600,1,0
// Phản hồi: OK

// 3. Đăng ký nhận bản tin lệnh điều khiển từ Backend
AT+CMQSUB=0,"device/command/ISAFE_ESP32_01",1
// Phản hồi: OK

// 4. Đẩy bản tin trạng thái khẩn cấp (Accident / Lost)
AT+CMQPUB=0,"device/telemetry/ISAFE_ESP32_01",1,0,0,85,"{\"lat\":21.00512,\"lng\":105.84365,\"state\":\"CRASH\",\"bat\":98,\"is_chg\":1}"
// Phản hồi: OK

3. Quản lý trạng thái ứng dụng di động bằng Flutter BLoC

Ứng dụng Flutter sử dụng kiến trúc BLoC phân tầng hoàn toàn logic nghiệp vụ ra khỏi giao diện hiển thị:

// DeviceBloc: Xử lý sự kiện nhận telemetry thời gian thực
class DeviceBloc extends Bloc<DeviceEvent, DeviceState> {
  final DeviceRepository _deviceRepo;
  
  DeviceBloc(this._deviceRepo) : super(DeviceInitialState()) {
    on<OnTelemetryReceivedEvent>((event, emit) {
      final telemetry = event.telemetryData;
      if (telemetry.state == "CRASH") {
        emit(DeviceCrashAlertState(telemetry.location, telemetry.batteryLevel));
      } else if (telemetry.state == "LOST") {
        emit(DeviceTheftAlertState(telemetry.location));
      } else {
        emit(DeviceNormalState(telemetry));
      }
    });
  }
}

Testing và validation

Hệ thống đã trải qua 45 lượt kiểm thử thực địa trong các điều kiện: xe chạy qua gờ giảm tốc độ cao, phanh gấp, đổ xe tại chỗ, va chạm trực diện với vật cản mềm và mô phỏng dắt trộm xe trái phép:

Kịch bản kiểm thử (Test Scenario) Số lần thử Số lần phát hiện chính xác Tỷ lệ thành công (%) Độ trễ kích hoạt cảnh báo trung bình
Va chạm mạnh và đổ xe (Tai nạn) 20 19 95.0% $1.8\text{ s}$ (Còi) / $3.2\text{ s}$ (FCM/Call)
Phanh gấp, leo vỉa hè, qua ổ gà 20 19 (không báo ảo) 95.0% (loại trừ sai) N/A (Hệ thống lọc nhiễu tốt)
Dắt xe di chuyển khi bật chống trộm 20 20 100.0% $2.1\text{ s}$ (Còi báo) / $3.5\text{ s}$ (App)
Bấm nút khẩn cấp SOS trên xe 15 15 100.0% $1.2\text{ s}$ (FCM gửi tới máy người thân)
Tự chuyển nguồn khi ngắt ắc quy 10 10 100.0% $< 50\text{ ms}$ (Không sập nguồn MCU)
+-------------------------------------------------------------------------+
| PHÂN PHỐI ĐỘ TRỄ HỆ THỐNG TRONG TÌNH HUỐNG KHẨN CẤP (TỔNG: 3.2 GIÂY)   |
+-------------------------------------------------------------------------+
| [0.2s] Trích xuất dữ liệu cảm biến MPU6050 & chạy thuật toán crashDetAlgo|
| [1.2s] Lấy tọa độ GPS NEO-7M & Đóng gói bản tin JSON                    |
| [0.8s] Đẩy gói tin MQTT qua SIM7020C tới EMQX Broker                    |
| [0.4s] Backend phân tích bản tin & ghi dữ liệu Firestore                |
| [0.6s] Phát tán cảnh báo FCM & Kích hoạt Voice Gateway gọi điện thoại   |
+-------------------------------------------------------------------------+

Kết quả đạt được

  • Chu kỳ phát gói tin linh hoạt: Hệ thống tự động chuyển đổi chu kỳ gửi gói tin định vị từ $25\text{ giây/lần}$ (khi xe ở trạng thái bình thường - Normal Mode nhằm tiết kiệm năng lượng và băng thông mạng) sang $3\text{ giây/lần}$ (khi phát hiện sự cố mất trộm hoặc tai nạn - Alert Mode).
  • Thời lượng pin dự phòng ấn tượng: Khối nguồn pin Li-ion 18650 2S (dung lượng định mức 2200mAh) duy trì hoạt động liên tục cho phần cứng trong $48\text{ giờ}$ ở chế độ chờ (Idle) và hơn $14\text{ giờ}$ ở chế độ phát cảnh báo liên tục khi xe bị tháo rời ắc quy.

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

  1. Tích hợp giải pháp 2 trong 1 tối ưu chi phí: Kết hợp thành công tính năng chống trộm thông minh và hệ thống tự động phát hiện tai nạn xe máy (tương đương chuẩn cứu hộ tự động eCall trên xe ô tô hạng sang) vào một bo mạch nhúng duy nhất, tiết kiệm 65% chi phí so với việc lắp đặt nhiều thiết bị rời rạc.
  2. Thuật toán phát hiện sự cố kép (crashDetAlgo kết hợp $cTHRD$ và góc nghiêng không gian): Tránh hiện tượng báo động giả khi xe đi qua ổ gà, rung xóc mặt đường hoặc phanh gấp với độ chính xác đạt $95%$.
  3. Kiến trúc mạng lai (Hybrid Messaging Architecture): Sử dụng giao thức MQTT siêu nhẹ giúp tối ưu năng lượng trên mạng NB-IoT/4G kết hợp với WebSocket/Socket.io trên tầng Application để hiển thị vị trí phương tiện mượt mà trên bản đồ Google Maps thời gian thực.
  4. Cơ chế nguồn tự ngắt và sạc thông minh 2S: Tự động sạc pin dự phòng khi xe nổ máy và chuyển mạch không gián đoạn ($<50\text{ ms}$) sang pin khi ắc quy bị kẻ gian cắt phá, bảo vệ tuyệt đối tính sẵn sàng của thiết bị.

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

Kịch bản sử dụng thực tế:

  • Kịch bản 1 - Cứu hộ tai nạn đường vắng: Người lái xe di chuyển ban đêm trên đường quốc lộ không may va quẹt ngã xuống mương nước và bất tỉnh. Hệ thống nhận diện gia tốc va đập và góc nghiêng $>60^\circ$, sau $5\text{ giây}$ không có tương tác hủy cảnh báo sẽ tự động gửi tin nhắn SMS chứa liên kết Google Maps vị trí chính xác và kích hoạt cuộc gọi thoại tự động đến số điện thoại khẩn cấp của người thân để kịp thời ứng cứu.
  • Kịch bản 2 - Chống bẻ khóa trộm xe: Chủ xe dựng phương tiện ở bãi đỗ và kích hoạt chế độ "Bảo vệ" trên ứng dụng MobiApp. Khi kẻ gian dắt xe hoặc bẻ khóa cổ gây rung lắc và dịch chuyển tọa độ $>10\text{ mét}$, còi báo động trên xe lập tức hú vang, đồng thời điện thoại chủ xe nhận thông báo cảnh báo đẩy FCM và hiển thị lộ trình di chuyển của xe theo thời gian thực ($3\text{ giây/lần}$).
journey
    title Trải nghiệm người dùng khi gặp sự cố tai nạn giao thông
    section Phát hiện sự cố
      Va chạm mạnh xảy ra: 5: Device
      MPU6050 đo accChange > 2.85g: 5: Device
      Xe ngã nghiêng > 60 độ: 5: Device
    section Cảnh báo tại chỗ
      Còi hú cảnh báo cục bộ: 4: Device
      Đếm ngược 5s cho người dùng hủy: 3: User
    section Truyền tin khẩn cấp
      Gửi gói tin MQTT khẩn cấp: 5: SIM7020C
      Backend phân phối tin nhắn: 5: Server
      Người thân nhận SMS & Gọi thoại: 5: Emergency Contact

Kế hoạch mở rộng và lộ trình triển khai:

  • Giai đoạn 1 (Hiện tại): Hoàn thiện mẫu thử nghiệm công nghiệp (Form factor nhỏ gọn $60 \times 40 \times 25\text{ mm}$, đổ keo chống nước tiêu chuẩn IP67).
  • Giai đoạn 2 (6 tháng tới): Tích hợp eSIM viễn thông nội địa và sản xuất lô nhỏ 500 thiết bị thử nghiệm cho các nghiệp đoàn xe ôm công nghệ, dịch vụ cho thuê xe máy du lịch tự lái tại Đà Nẵng, Hà Nội.
  • Giai đoạn 3 (12-24 tháng tới): Đàm phán tích hợp API dữ liệu cảnh báo trực tiếp với tổng đài cấp cứu y tế 115 và các công ty bảo hiểm xe cơ giới để tự động hóa quy trình giám định tai nạn và cứu hộ giao thông.

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

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

  • Độ chính xác vị trí của module GPS NEO-7M bị suy giảm (sai số tăng từ $2.5\text{ m}$ lên $15\text{ - }25\text{ m}$) khi phương tiện di chuyển trong hầm chung cư hoặc khu vực đô thị có mật độ nhà cao tầng dày đặc (hiệu ứng hẻm vực đô thị - Urban Canyon).
  • Chưa tích hợp cảm biến nhịp tim/nồng độ cồn không dây từ đồng hồ thông minh của người lái để đánh giá toàn diện mức độ chấn thương y tế sau tai nạn.

Hướng phát triển tiếp theo:

  1. Nâng cấp thuật toán phát hiện tai nạn bằng mô hình mạng nơ-ron tích chập TinyML (TensorFlow Lite for Microcontrollers) chạy trực tiếp trên ESP32 để phân loại chính xác các kiểu tai nạn phức tạp (va chạm trực diện, va chạm từ phía sau, lật nghiêng xe).
  2. Bổ sung công nghệ định vị phụ trợ A-GPS (Assisted GPS) và Cell-ID định vị trạm phát sóng di động để duy trì tọa độ ngay cả khi mất sóng vệ tinh trong tầng hầm.
  3. Thiết kế vỏ hộp nhôm nguyên khối chuẩn chống nước, chống bụi IP68 và tản nhiệt tối ưu khi lắp đặt trong cốp xe máy.

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

+----------------------------------------------------------------------------------+
|                    MA TRẬN ĐỐI TƯỢNG HƯỞNG LỢI & GIÁ TRỊ MANG LẠI                |
+----------------------------------------------------------------------------------+
| Nhóm đối tượng    | Giá trị kỹ thuật & Ứng dụng thực tiễn                       |
+-------------------+--------------------------------------------------------------+
| Chủ xe cá nhân    | An tâm tuyệt đối trước nguy cơ mất cắp; được hỗ trợ y tế     |
|                   | khẩn cấp trong "thời gian vàng" khi không may gặp tai nạn.   |
+-------------------+--------------------------------------------------------------+
| Doanh nghiệp vận  | Giám sát vị trí đội xe theo thời gian thực; giảm 80% rủi ro  |
| tải / Cho thuê xe | thất thoát tài sản; nâng cao an toàn cho tài xế giao hàng.   |
+-------------------+--------------------------------------------------------------+
| Sinh viên &       | Cung cấp mã nguồn tham khảo mẫu về kết hợp IoT, vi điều khiển|
| Lập trình viên    | ESP32, Flutter BLoC, MQTT và Firebase kiến trúc hoàn chỉnh.  |
+-------------------+--------------------------------------------------------------+
| Cơ quan cứu hộ    | Rút ngắn thời gian tiếp cận hiện trường tai nạn giao thông từ |
| & Y tế (115)      | trung bình 30 phút xuống dưới 10 phút nhờ tọa độ chuẩn xác.  |
+----------------------------------------------------------------------------------+

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

1. Thiết bị ISAFE yêu cầu nguồn điện như thế nào để vận hành ổn định trên xe máy?

Thiết bị nhận nguồn trực tiếp từ ắc quy xe máy ($12\text{VDC} - 14.4\text{VDC}$) qua mạch giảm áp xung LM2596 và bộ lọc nhiễu LC để hạ áp về $5\text{V}/3.3\text{V}$ cấp cho ESP32 và module SIM. Khi xe tắt máy hoặc bình ắc quy bị tháo rời, mạch quản lý nguồn tự động chuyển đổi sang khối pin sạc Lithium-ion 2S 7.4V (2200mAh) tích hợp bên trong mà không làm gián đoạn hệ điều hành nhúng.

2. Khi xe đi qua đoạn đường gồ ghề hoặc gờ giảm tốc cao, hệ thống có phát cảnh báo tai nạn nhầm không?

Hoàn toàn không. Thuật toán crashDetAlgo yêu cầu đồng thời 3 điều kiện vật lý: (1) Biến thiên gia tốc tổng hợp $\text{accChange} \ge cTHRD$ ($2.85g$); (2) Góc nghiêng khung xe thay đổi $>60^\circ$; (3) Phương tiện duy trì trạng thái bất động sau va đập trong ít nhất 5 giây. Các dao động khi qua ổ gà chỉ gây rung xóc tức thời mà không làm thay đổi góc nghiêng cố định của xe, do đó bị bộ lọc số loại bỏ hoàn toàn.

3. Hệ thống có thể tích hợp với các nền tảng quản lý xe doanh nghiệp sẵn có không?

Có. Toàn bộ kiến trúc Server-Backend được thiết kế theo tiêu chuẩn RESTful API và giao thức mở MQTT 3.1.1. Doanh nghiệp có thể dễ dàng lấy dữ liệu telemetry hoặc tích hợp webhook cảnh báo vào hệ thống ERP/TMS hiện có thông qua các endpoint bảo mật xác thực JSON Web Token (JWT).

4. Chi phí duy trì kết nối mạng viễn thông hàng tháng cho thiết bị là bao nhiêu?

Nhờ ứng dụng công nghệ mạng băng hẹp NB-IoT và giao thức MQTT tối ưu hóa kích thước bản tin (trung bình chỉ $80 - 120\text{ bytes}$/gói tin), dung lượng dữ liệu tiêu thụ hàng tháng của mỗi thiết bị chỉ dao động từ $15\text{ MB} - 30\text{ MB}$. Chi phí gói cước viễn thông IoT chuyên dụng chỉ tốn khoảng $10.000 - 15.000\text{ VNĐ}$/tháng/thiết bị.

5. Nếu vô tình bấm nhầm nút khẩn cấp SOS hoặc va quẹt nhẹ xe, người dùng có thể tắt cảnh báo bằng cách nào?

Người dùng có 2 cách hủy cảnh báo nhanh chóng: (1) Bấm trực tiếp nút nhấn chức năng (Reset Button) trên ghi-đông xe trong vòng 5 giây kể từ khi còi bắt đầu đếm nhịp cảnh báo; (2) Mở ứng dụng MobiApp và nhấn nút "Tắt cảnh báo" (Alert Acknowledgment) trên màn hình Dashboard để gửi lệnh điều khiển tức thời qua WebSocket về thiết bị phần cứng.


Kết luận

Đồ án tốt nghiệp "Thiết kế, triển khai hệ thống IOT phát hiện và cảnh báo mất trộm, tai nạn xe máy" đã xây dựng thành công một giải pháp công nghệ toàn diện từ thiết kế phần cứng nhúng, thuật toán biên xử lý tín hiệu cảm biến, hạ tầng máy chủ phân tán cho đến ứng dụng di động trực quan. Với kết quả thử nghiệm đạt độ chính xác $95%$ trong phát hiện tai nạn, khả năng định vị chống trộm theo thời gian thực với độ trễ thấp ($<3.5\text{ giây}$) và chi phí phần cứng tối ưu, hệ thống chứng minh tính khả thi kỹ thuật vượt trội và tiềm năng thương mại hóa mạnh mẽ. Đây là đóng góp thiết thực cho cộng đồng nghiên cứu ứng dụng IoT và là giải pháp tiềm năng nâng cao an toàn giao thông, bảo vệ tính mạng và tài sản cho hàng triệu người đi xe máy tại Việt Nam.

Bạn đang tìm kiếm giải pháp giám sát phương tiện thông minh hoặc hợp tác phát triển công nghệ IoT giao thông? Hãy tham khảo chi tiết kiến trúc mã nguồn và trao đổi học thuật cùng nhóm nghiên cứu để cùng hoàn thiện và thương mại hóa các giải pháp bảo vệ người tham gia giao thông.