Bối cảnh và vấn đề nghiên cứu

An toàn giao thông là yếu tố cốt lõi trong việc bảo vệ tính mạng con người và ổn định kinh tế - xã hội. Trong thực tế vận hành phương tiện, tình trạng tài xế mệt mỏi, ngủ gật và chất lượng môi trường không khí bên trong khoang cabin là hai nguyên nhân lớn ảnh hưởng trực tiếp đến khả năng kiểm soát tay lái. Theo thống kê của Bộ Công an, trong năm 2023, toàn quốc xảy ra 21.880 vụ tai nạn giao thông đường bộ, trong đó khoảng 0,33% (tương đương 72 vụ) bắt nguồn trực tiếp từ việc tài xế mệt mỏi hoặc ngủ gật. Trước đó, số liệu từ Ủy ban An toàn Giao thông Quốc gia năm 2019 ghi nhận mỗi năm có hơn 6.000 người tử vong vì các vụ tai nạn liên quan đến ngủ gật khi lái xe, chiếm xấp xỉ 30% tổng số vụ tai nạn.

Bên cạnh yếu tố sinh lý, vi khí hậu trong khoang xe khép kín tác động mạnh mẽ đến hệ thần kinh của người lái. Khí $\text{CO}_2$, $\text{CO}$ và các hợp chất hữu cơ dễ bay hơi (VOCs) dễ tích tụ nếu không được thông gió hợp lý. Nồng độ $\text{CO}_2$ vượt ngưỡng 1.000 ppm bắt đầu làm suy giảm hiệu suất nhận thức, gây đau đầu, buồn ngủ và giảm phản xạ. Ngoài ra, nhiệt độ quá cao gây căng thẳng hệ thần kinh giao cảm, còn độ ẩm bất thường gây ngột ngạt hoặc kích ứng hô hấp. Các giải pháp truyền thống như dùng caffeine, nghe nhạc, hạ kính xe hay nghỉ ngơi mang tính chủ quan, hiệu quả không đồng đều và không phải lúc nào cũng khả thi trên các cung đường cao tốc dài. Từ thực tiễn đó, việc nghiên cứu một hệ thống giám sát tự động, kết hợp thị giác máy tính và cảm biến IoT trên nền tảng mạng truyền thông trên xe là yêu cầu cấp thiết.

Theo thuyết minh đồ án, các mục tiêu nghiên cứu cụ thể được xác định gồm:

  1. Tìm hiểu, thiết kế hệ thống dựa trên việc xử lý thu thập dữ liệu mạng CAN hỗ trợ điều kiện vận hành của hệ thống giám sát tình trạng tài xế.
  2. Thiết kế hệ thống cảnh báo tài xế khi xuất hiện dấu hiệu buồn ngủ.
  3. Giám sát tình trạng môi trường trong xe (nhiệt độ, độ ẩm, chất lượng không khí) và truyền dữ liệu lên thiết bị di động để người dùng theo dõi từ xa.
  4. Đảm bảo cung cấp chính xác thông tin nhiệt độ, độ ẩm và tình trạng môi trường trong xe tới tài xế theo thời gian thực.
  5. Góp phần đảm bảo an toàn giao thông và ngăn chặn kịp thời các rủi ro tai nạn.

Đối tượng nghiên cứu của đồ án bao gồm các yếu tố sinh lý biểu hiện sự mệt mỏi của tài xế (trạng thái nhắm mắt, ngáp); các thông số môi trường vật lý trong cabin (nhiệt độ, độ ẩm, nồng độ khí); và các công nghệ IoT, xử lý ảnh cùng phần cứng nhúng (Raspberry Pi 4, cảm biến DHT22, MQ-135, module PCF8591, vi điều khiển Arduino Mega 2560, module CAN MCP2515, nền tảng đám mây ThingSpeak).

Về phạm vi nghiên cứu, do giới hạn về thời gian, nhân lực và kinh phí thực hiện, đề tài giới hạn ở việc thiết kế mô hình hệ thống cảnh báo khi người lái có dấu hiệu buồn ngủ, đồng thời đo lường các chỉ số môi trường cơ bản trong cabin xe và truyền dữ liệu lên giao diện điện thoại thông minh qua Internet.


Cơ sở lý thuyết và phương pháp

Đề tài tích hợp cơ sở lý thuyết đa ngành giữa kỹ thuật ô tô, thị giác máy tính và hệ thống nhúng IoT:

  1. Cơ sở nhận diện trạng thái mệt mỏi qua khuôn mặt: Đề tài áp dụng các thuật toán trích xuất đặc trưng Histogram of Oriented Gradients (HOG) kết hợp bộ phân loại Support Vector Machine (SVM), cùng mô hình Haar Cascade để định vị vùng khuôn mặt từ luồng video của camera. Để phân tích chi tiết biểu cảm, tác giả khai thác mô hình 68 điểm đặc trưng khuôn mặt (Dlib 68 Facial Landmarks Predictor - tệp shape_predictor_68_face_landmarks.dat). Trạng thái nhắm mắt được lượng hóa qua tỉ lệ khía cạnh mắt (Eye Aspect Ratio - EAR), tính toán khoảng cách Euclidean giữa các cặp điểm mí mắt đối diện so với chiều rộng khóe mắt. Trạng thái ngáp được xác định thông qua khoảng cách môi (Lip Distance), tính bằng độ lệch trung bình trục tung giữa 8 điểm môi trên (tọa độ 50–53 và 61–64) và 8 điểm môi dưới (tọa độ 56–59 và 65–68).
  2. Lý thuyết mạng truyền thông trên ô tô (CAN Bus): Giao thức CAN do hãng Robert Bosch phát triển từ năm 1983 và chuẩn hóa theo ISO 11898 (lớp liên kết dữ liệu ISO 11898-1, lớp vật lý tốc độ cao ISO 11898-2). CAN bus truyền dữ liệu vi sai chống nhiễu, sử dụng cơ chế phân xử quyền ưu tiên tin nhắn. Trong đồ án, chuẩn kết nối OBD-II và chuẩn CAN 2.0B (mã định danh 29-bit) được sử dụng làm cơ sở để đọc tín hiệu tốc độ xe trực tiếp từ ECU phục vụ điều kiện logic kích hoạt hệ thống.
  3. Cơ sở cảm biến và môi trường: Khảo sát tác động hóa học và vật lý của các khí độc hại ($\text{CO}_2$, CO, VOCs, khói) và dải đo tương ứng của cảm biến điện hóa MQ-135 kết hợp module chuyển đổi tín hiệu tương tự sang số (ADC) 8-bit PCF8591 qua giao tiếp $I^2C$, cùng cảm biến kỹ thuật số DHT22 đo nhiệt độ và độ ẩm.

Phương pháp nghiên cứu thực tế gồm ba nhóm chính:

  • Phương pháp lý thuyết: Thu thập, phân tích tài liệu chuyên ngành về an toàn ô tô, chuẩn giao thức mạng CAN, kiến trúc thư viện xử lý ảnh (OpenCV, Dlib, SciPy, NumPy, Imutils) và cơ chế điện toán đám mây của ThingSpeak.
  • Phương pháp thực nghiệm: Lắp ráp mô hình phần cứng hoàn chỉnh, cài đặt môi trường nhúng, kết nối phần cứng với cổng chẩn đoán OBD-II của ô tô, đồng thời tiến hành các kịch bản thử nghiệm giả lập hành vi tài xế (nhắm mắt, chớp mắt dồn dập, ngáp) và kích thích nồng độ khí bằng mẫu thử thực tế.
  • Phương pháp phân tích dữ liệu: Đọc, trích xuất dữ liệu từ các khung truyền CAN, đo đạc sai số thời gian thực từ các chân tín hiệu GPIO/$I^2C$, phân tích độ trễ đồng bộ và thống kê ngưỡng kích hoạt cảnh báo hiển thị trên ThingSpeak.

Thiết kế và triển khai hệ thống

Hệ thống được thiết kế theo kiến trúc phân tầng tích hợp giữa phần cứng nhúng trên xe, mô-đun phần mềm xử lý cục bộ và dịch vụ đám mây.

Phân tầng hệ thống Thành phần phần cứng / Công nghệ Vai trò kỹ thuật chi tiết
Xử lý trung tâm Raspberry Pi 4 Model B (SoC Broadcom BCM2711, 4 nhân Cortex-A72 @ 1.5GHz, hệ điều hành Linux) Chạy thuật toán thị giác máy tính, điều phối logic cảnh báo, tiếp nhận dữ liệu từ cảm biến và đẩy dữ liệu lên IoT Cloud.
Thu nhận hình ảnh Camera Raspberry Pi V2 kết nối qua cổng cáp dẹp MIPI CSI Thu nhận luồng khung hình khuôn mặt tài xế trong khoang lái thời gian thực.
Giao tiếp CAN mạng xe Module CAN MCP2515 (giao tiếp SPI) kết hợp Arduino Mega 2560 Đọc khung dữ liệu tốc độ xe từ cổng chẩn đoán OBD-II, giải mã và gửi sang Raspberry Pi 4 qua giao tiếp nối tiếp (UART/Serial).
Cảm biến môi trường DHT22, MQ-135, IC chuyển đổi ADC 8-bit PCF8591 ($I^2C$) DHT22 đo nhiệt độ/độ ẩm kết nối trực tiếp GPIO; MQ-135 xuất tín hiệu tương tự qua PCF8591 để Raspberry Pi đọc giá trị nồng độ khí (PPM).
Cảnh báo và hiển thị Còi/loa âm thanh, màn hình hiển thị LCD/HDMI Phát chuông/giọng cảnh báo tức thời khi phát hiện buồn ngủ hoặc nồng độ khí độc vượt ngưỡng.
Nền tảng IoT Đám mây ThingSpeak (MathWorks), giao thức RESTful API / HTTP Lưu trữ các kênh dữ liệu (Channels/Fields), trực quan hóa đồ thị và đồng bộ hóa trạng thái tới ứng dụng di động của người dùng.

Quy trình xử lý phần mềm được triển khai theo các bước liên hoàn:

  • Xử lý ảnh: Mỗi khung hình từ Camera Pi V2 được thư viện OpenCV chuyển đổi sang ảnh xám (Grayscale) nhằm giảm tải tính toán. Bộ phân loại Haar Cascade định vị hộp giới hạn khuôn mặt. Mô hình Dlib 68 landmarks trích xuất tọa độ điểm.
  • Công thức EAR: Tính toán bằng thư viện SciPy dựa trên khoảng cách Euclidean giữa các điểm: $$\text{EAR} = \frac{|p_2 - p_6| + |p_3 - p_5|}{2 \cdot |p_1 - p_4|}$$ Trong đó $p_1, p_4$ là khóe mắt trong/ngoài; $p_2, p_3, p_5, p_6$ là các điểm mí trên và mí dưới. Ngưỡng quy định là $\text{EAR} < 0.3$.
  • Khoảng cách môi (Lip Distance): $$\text{Lip Distance} = \left| \frac{1}{8}\sum_{i \in \text{Top Lip}} y_i - \frac{1}{8}\sum_{j \in \text{Bottom Lip}} y_j \right|$$ Khi khoảng cách vượt ngưỡng thiết lập, hệ thống ghi nhận một trạng thái mở miệng lớn (ngáp).
  • Thu thập cảm biến và CAN: Tín hiệu tốc độ xe từ Arduino Mega 2560 truyền qua UART đóng vai trò biến điều kiện logic (khi xe thực sự lăn bánh thì hệ thống cảnh báo tập trung mới hoạt động). Dữ liệu PPM từ MQ-135 và nhiệt độ/độ ẩm từ DHT22 được đọc định kỳ, hiển thị ra màn hình và truyền qua API Key của kênh ThingSpeak.

Nội dung chính theo từng chương

Chương 1. Tổng quan về đề tài

Chương này trình bày tầm quan trọng của an toàn giao thông đường bộ đối với sự phát triển kinh tế - xã hội, viện dẫn số liệu tai nạn giao thông nghiêm trọng do tài xế mệt mỏi, ngủ gật tại Việt Nam (72 vụ năm 2023 và hơn 6.000 ca tử vong năm 2019). Phân tích chi tiết sự suy giảm nhận thức khi nồng độ $\text{CO}_2$ trong khoang lái vượt quá 1.000 ppm, cùng nguy cơ từ các khí độc tích tụ trong xe kín. Xác định 5 mục tiêu nghiên cứu, đối tượng nghiên cứu gồm trạng thái buồn ngủ, môi trường xe và công nghệ IoT, cùng phạm vi giới hạn trong việc thi công mô hình thử nghiệm gửi dữ liệu về điện thoại thông minh. Nêu rõ kết cấu đồ án gồm 5 chương chính.

Chương 2. Cơ sở lý thuyết

Nội dung chương 2 tập trung phân tích các dấu hiệu mệt mỏi sinh lý (ngáp liên tục, mắt đỏ/sưng, chớp mắt chậm, lái chệch làn) và hạn chế của các biện pháp chống buồn ngủ truyền thống. Phân tích cơ chế tác động của nhiệt độ, độ ẩm và các khí $\text{CO}_2$, VOCs lên sức khỏe người lái; nêu nguyên lý hoạt động của cảm biến DHT22 và MQ-135. Trình bày chi tiết lịch sử phát triển của mạng CAN từ năm 1983 tại Robert Bosch GmbH, thông số kỹ thuật CAN 2.0A (11-bit ID), CAN 2.0B (29-bit ID), tiêu chuẩn ISO 11898 và chuẩn cổng OBD-II bắt buộc trên ô tô. Giới thiệu chức năng của vi mạch MCP2515 giao tiếp SPI và giải pháp truyền dữ liệu giữa Arduino Mega 2560 với Raspberry Pi 4 qua giao thức nối tiếp (UART) hoặc $I^2C$. Giới thiệu nền tảng IoT ThingSpeak với kiến trúc kênh, trường dữ liệu (fields), API keys, tính năng React/TalkBack và khả năng nhúng MATLAB. Trình bày cơ sở toán học của thị giác máy tính: thư viện OpenCV, Dlib, SciPy, NumPy, Imutils, kỹ thuật trích xuất đặc trưng HOG/SVM, mô hình 68 facial landmarks, cùng công thức toán học tính EAR và Lip Distance.

Chương 3. Giới thiệu về hệ thống và các thiết bị

Chương 3 đi sâu vào thông số kỹ thuật và sơ đồ kết nối vật lý của từng thành phần phần cứng. Giới thiệu chi tiết thông số kỹ thuật của bộ xử lý Raspberry Pi 4 Model B (SoC BCM2711 64-bit, 4 nhân Cortex-A72 @ 1.5GHz, chuẩn 40 chân GPIO, nguồn USB-C 5V-3A, cổng CSI cho Camera Pi V2). Trình bày sơ đồ chân và chức năng của bo mạch mở rộng GPIO, cảm biến nhiệt độ - độ ẩm DHT22, cảm biến chất lượng không khí MQ-135, module biến đổi ADC 8-bit PCF8591 ($I^2C$), module điều khiển mạng CAN MCP2515 (thạch anh 8MHz/16MHz, giao tiếp SPI), cổng chẩn đoán chuẩn OBD-II và vi điều khiển Arduino Mega 2560. Thiết lập sơ đồ khối kết nối tổng thể và sơ đồ thực tế giữa các thiết bị ngoại vi với bộ xử lý trung tâm.

Chương 4. Thực nghiệm hệ thống trên ô tô

Nội dung chương 4 trình bày toàn bộ quy trình lắp đặt, thuật toán và kết quả thử nghiệm thực tế:

  • Lưu đồ thuật toán: Xây dựng lưu đồ tổng quát hệ thống, lưu đồ thuật toán giám sát vùng mắt và lưu đồ giám sát vùng miệng.
  • Logic phát hiện buồn ngủ:
    • Trạng thái nhắm mắt: Khi $\text{EAR} < 0.3$, nếu biến đếm nhắm mắt vượt quá 20 lần (chu kỳ khung hình) liên tiếp, hệ thống kích hoạt cảnh báo qua loa và màn hình.
    • Tần suất chớp mắt: Biến đếm ghi nhận số lần chớp mắt, nếu vượt quá 15 lần trong vòng 60 giây, hệ thống phát cảnh báo buồn ngủ; nếu sau 60 giây không vượt ngưỡng 15 lần thì biến đếm được cài đặt lại (reset).
    • Trạng thái ngáp: Tính khoảng cách môi YAWN; khi độ mở miệng vượt ngưỡng định trước, biến đếm số lần ngáp tăng lên. Nếu tài xế ngáp đủ 3 lần trong vòng 60 giây, hệ thống kích hoạt cảnh báo; nếu trong 60 giây không đạt đủ 3 lần ngáp thì biến đếm tự động reset.
  • Thực nghiệm cảm biến môi trường:
    • Môi trường bình thường: Ghi nhận nhiệt độ, độ ẩm và nồng độ khí PPM ở điều kiện ổn định, hiển thị trực quan trên giao diện ThingSpeak.
    • Thử nghiệm nhiệt độ cao: Đặt cảm biến DHT22 gần nguồn nhiệt/tản nhiệt, hệ thống ghi nhận sự tăng nhiệt độ tức thời và hiển thị cảnh báo.
    • Thử nghiệm khí độc hại: Sử dụng nguồn khí gas từ bật lửa (hột quẹt) giả lập khí độc hại, giá trị PPM từ cảm biến MQ-135 tăng vọt, hệ thống lập tức phát chuông cảnh báo nồng độ khí vượt ngưỡng; khi không khí thông thoáng trở lại, hệ thống thông báo trạng thái môi trường đã được cải thiện.
  • Giao tiếp CAN và IoT: Kết nối mạch MCP2515 với mạng CAN trên cổng OBD-II qua Arduino Mega 2560 để đọc tốc độ xe gửi về Pi 4; thiết lập kênh ThingSpeak với các Widgets, Visualizations hiển thị trên ứng dụng điện thoại di động thông qua các API keys.

Chương 5. Kết luận và hướng phát triển

Đánh giá tổng kết về hiệu suất cảnh báo theo thời gian thực, tính ổn định của phần cứng khi lắp ráp trên ô tô và khả năng mở rộng của hệ thống với các giao thức đám mây trong tương lai.


Kết quả và đóng góp

Kết quả thực nghiệm chính

Hạng mục thử nghiệm Điều kiện / Thông số kích hoạt Kết quả ghi nhận từ hệ thống
Giám sát nhắm mắt $\text{EAR} < 0.3$; biến đếm duy trì $> 20$ chu kỳ khung hình liên tiếp Nhận diện chính xác mắt nhắm, lập tức phát chuông và hiển thị thông báo cảnh báo nguy hiểm.
Tần suất chớp mắt Số lần chớp mắt vượt ngưỡng 15 lần trong khoảng thời gian 60 giây Kích hoạt cảnh báo tài xế mất tập trung/mệt mỏi; tự động reset biến đếm sau 60 giây nếu dưới ngưỡng.
Hành vi ngáp Khoảng cách môi (YAWN) mở lớn; lặp lại đủ 3 lần trong 60 giây Phát cảnh báo âm thanh yêu cầu tài xế nghỉ ngơi; tự động reset biến đếm sau 60 giây nếu dưới 3 lần.
Cảm biến nhiệt độ DHT22 Tiếp xúc nguồn nhiệt thử nghiệm Thông số nhiệt độ tăng nhanh trên đồ thị, hệ thống gửi chỉ số tức thời về màn hình và đám mây.
Cảm biến khí MQ-135 Tác động khí gas bật lửa làm nồng độ PPM tăng vọt Phát tín hiệu cảnh báo khí độc hại vượt ngưỡng; thông báo "môi trường đã được cải thiện" khi thông số giảm về mức an toàn.
Mạng CAN xe hơi Tín hiệu từ cổng OBD-II qua MCP2515 và Arduino Mega 2560 Trích xuất thành công tốc độ xe làm điều kiện phụ trợ vận hành thuật toán nhận diện.
Đồng bộ ThingSpeak Gửi dữ liệu qua RESTful API bằng kết nối Wi-Fi/Internet Trực quan hóa đầy đủ đồ thị nhiệt độ, độ ẩm, PPM và trạng thái trên giao diện web và app điện thoại.

Đề xuất và đóng góp kỹ thuật

  • Đóng góp về mặt kỹ thuật: Đồ án đã tích hợp thành công mô hình phần cứng nhúng hoàn chỉnh kết hợp giữa ba khối chức năng: đọc dữ liệu mạng CAN thực tế của xe qua cổng OBD-II, xử lý hình ảnh cục bộ nhận diện buồn ngủ thời gian thực (OpenCV, Dlib 68 landmarks) và giám sát môi trường không khí khoang cabin gửi lên nền tảng IoT ThingSpeak.
  • Giải pháp kiến nghị: Tác giả đề xuất sử dụng dữ liệu tốc độ từ mạng CAN làm điều kiện kích hoạt thuật toán phát hiện mệt mỏi nhằm tối ưu hóa tài nguyên xử lý của Raspberry Pi 4 khi xe đang thực sự lưu thông; đồng thời khuyến nghị kết hợp cảnh báo môi trường với điều khiển tự động hệ thống quạt gió/lọc khí trong xe khi nồng độ PPM tăng cao.

Hạn chế và hướng nghiên cứu tiếp

Dựa trên nội dung thuyết minh và phạm vi nghiên cứu, đề tài có các hạn chế và hướng mở rộng được xác định như sau:

  • Hạn chế kỹ thuật: Tốc độ truyền thông mạng CAN bị giới hạn bởi năng lực phần cứng của vi mạch điều khiển MCP2515 (tối đa 1 Mbps); hệ thống cần lập trình thêm các thuật toán xử lý lỗi đường truyền CAN chuyên sâu như lỗi bit (bit error) hoặc kiểm tra dư thừa tuần hoàn (CRC error). Cảm biến MQ-135 cần thời gian sấy và hiệu chuẩn môi trường để phân tách rõ ràng từng loại khí chuyên biệt ($\text{CO}_2$, CO, VOCs). Thuật toán HOG/SVM và Haar Cascade dễ bị ảnh hưởng nếu điều kiện ánh sáng trong xe thay đổi mạnh hoặc tài xế quay góc mặt quá lớn.
  • Hướng phát triển: Tác giả định hướng mở rộng khả năng xử lý của hệ thống bằng cách ứng dụng các mô hình học sâu (Deep Learning/DNN) để tăng độ chính xác phân loại trong các điều kiện môi trường ánh sáng phức tạp; tối ưu hóa thời gian trễ truyền nhận mạng đám mây; và phát triển tính năng điều khiển tự động hạ kính hoặc bật quạt lấy gió ngoài khi chất lượng không khí trong cabin suy giảm.

Giá trị tham khảo

Bản thuyết minh đồ án là tài liệu tham khảo thực nghiệm giá trị cho sinh viên và kỹ sư thuộc các chuyên ngành:

  • Công nghệ Kỹ thuật Ô tô & Cơ điện tử: Cung cấp phương pháp thực tế để giao tiếp phần cứng với cổng chẩn đoán OBD-II, thiết lập module CAN MCP2515 giao tiếp SPI với vi điều khiển Arduino Mega 2560 nhằm trích xuất thông điệp tốc độ từ bus CAN xe thật.
  • Hệ thống Nhúng & Kỹ thuật Máy tính (IoT): Cung cấp mô hình tích hợp cảm biến tương tự/số (DHT22, MQ-135 qua bộ chuyển đổi ADC $I^2C$ PCF8591) với máy tính đơn bo Raspberry Pi 4 Model B, cách thức cấu hình RESTful API, thiết lập kênh, trường dữ liệu và widget hiển thị trên nền tảng ThingSpeak.
  • Thị giác Máy tính Ứng dụng: Tham khảo mã nguồn logic toán học thực thi tính toán chỉ số EAR và khoảng cách môi từ 68 điểm đặc trưng khuôn mặt (Dlib) kết hợp thư viện SciPy, cùng cơ chế lập trình đa luồng cảnh báo theo ngưỡng thời gian thực.

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

1. Chỉ số EAR là gì và được tính toán như thế nào để phát hiện tài xế nhắm mắt?
Chỉ số EAR (Eye Aspect Ratio) là tỉ lệ khía cạnh mắt, được tính toán dựa trên khoảng cách Euclidean giữa 6 tọa độ điểm mốc của mỗi mắt ($p_1$ đến $p_6$) do thư viện Dlib trích xuất. Công thức là khoảng cách giữa 2 cặp mí mắt chia cho 2 lần chiều dài khóe mắt: $$\text{EAR} = \frac{|p_2 - p_6| + |p_3 - p_5|}{2 \cdot |p_1 - p_4|}$$ Hệ thống quy định nếu giá trị EAR nhỏ hơn 0.3 liên tiếp trong 20 chu kỳ khung hình hoặc chớp mắt quá 15 lần trong 60 giây, trạng thái buồn ngủ sẽ được xác nhận.

2. Ngưỡng cảnh báo hành vi ngáp của tài xế được xác lập ra sao trong đồ án?
Khoảng cách môi (Lip Distance / YAWN) được tính bằng độ chênh lệch trung bình tọa độ $y$ của 8 điểm môi trên (điểm 50–53, 61–64) và 8 điểm môi dưới (điểm 56–59, 65–68). Khi khoảng cách này vượt qua ngưỡng mở miệng lớn định trước và lặp lại đủ 3 lần trong vòng 60 giây, hệ thống sẽ kích hoạt chuông cảnh báo. Nếu trong 60 giây không đạt đủ 3 lần ngáp, bộ đếm tự động reset.

3. Tại sao hệ thống cần sử dụng module MCP2515 và Arduino Mega 2560 để kết nối mạng CAN?
Vi điều khiển Raspberry Pi 4 không tích hợp sẵn bộ điều khiển mạng CAN phần cứng. Do đó, module MCP2515 (giao tiếp SPI) đóng vai trò làm bộ điều khiển mạng CAN độc lập kết nối với cổng chẩn đoán OBD-II. Vi điều khiển Arduino Mega 2560 làm nhiệm vụ trung gian đọc, giải mã dữ liệu tốc độ từ MCP2515 và truyền về Raspberry Pi 4 qua giao tiếp nối tiếp UART/Serial nhằm tối ưu hóa tải xử lý cho Pi.

4. Cảm biến chất lượng không khí MQ-135 được ghép nối với Raspberry Pi 4 thông qua module nào?
Cảm biến MQ-135 xuất tín hiệu điện áp tương tự (Analog), trong khi các chân GPIO của Raspberry Pi 4 chỉ đọc tín hiệu số (Digital). Do đó, hệ thống sử dụng module chuyển đổi tín hiệu tương tự sang số (ADC) 8-bit PCF8591 giao tiếp qua giao thức $I^2C$ để Raspberry Pi đọc giá trị nồng độ khí đo được dưới dạng chỉ số PPM.

5. Nền tảng IoT nào được sử dụng để theo dõi dữ liệu từ xa và có chức năng gì?
Hệ thống sử dụng nền tảng đám mây ThingSpeak của MathWorks. Nền tảng này nhận dữ liệu từ Raspberry Pi 4 thông qua giao thức HTTP/RESTful API, lưu trữ vào các trường dữ liệu (Fields) trong Channel và hiển thị trực quan bằng đồ thị, biểu mẫu và widget trên trình duyệt web cũng như ứng dụng di động để người dùng giám sát trạng thái thời gian thực.


Kết luận

Đồ án tốt nghiệp của tác giả Trần Quang Đạt (Khoa Cơ khí Động lực, Trường Đại học Sư phạm Kỹ thuật TP.HCM) đã nghiên cứu và thi công thành công mô hình thiết bị giám sát an toàn kết hợp thị giác máy tính, mạng CAN ô tô và công nghệ IoT. Bằng việc kết hợp bộ xử lý trung tâm Raspberry Pi 4, mô hình 68 điểm đặc trưng Dlib, cảm biến môi trường DHT22, MQ-135 và mạch giao tiếp CAN MCP2515, hệ thống đã đưa ra phản hồi cảnh báo tức thời khi tài xế có biểu hiện nhắm mắt, ngáp hoặc khi nồng độ khí trong cabin vượt ngưỡng. Kết quả thử nghiệm thực tế chứng minh tính khả thi của giải pháp nhúng cục bộ kết hợp giám sát từ xa qua đám mây ThingSpeak, tạo cơ sở thực tiễn vững chắc cho các nghiên cứu phát triển hệ thống hỗ trợ lái xe an toàn trên các phương tiện vận tải hiện đại.