Giới thiệu dự án

Theo thống kê từ Tổ chức Y tế Thế giới (WHO) và Bộ Y tế sau đại dịch COVID-19, tỷ lệ quá tải tại các khoa hồi sức tích cực (ICU) và buồng bệnh nội trú tại các bệnh viện tuyến đầu thường xuyên vượt ngưỡng 120%–150%. Áp lực đè nặng lên đội ngũ điều dưỡng khi một nhân viên y tế phải giám sát từ 8–15 bệnh nhân cùng lúc. Việc đo đạc thủ công các chỉ số sinh tồn (thân nhiệt, nhịp tim, độ bão hòa oxy trong máu SpO2) định kỳ 4–6 giờ/lần không chỉ gây chậm trễ trong việc phát hiện biến chứng đột ngột mà còn gia tăng nguy cơ lây nhiễm chéo và tiêu tốn hơn 35% thời gian làm việc của điều dưỡng viên.

Thực trạng trên đặt ra bài toán cấp thiết: Làm thế nào để giám sát liên tục, tự động và không xâm lấn các chỉ số sinh tồn trọng yếu của bệnh nhân, đồng thời cho phép theo dõi hình ảnh trực tiếp và điều khiển tư thế giường nằm từ xa thông qua nền tảng Internet vạn vật (IoT)?

Dự án "Thiết kế và thi công mô hình giường bệnh thông minh" được nghiên cứu và thực hiện tại Bộ môn Kỹ thuật Máy tính - Viễn thông, Trường Đại học Sư phạm Kỹ thuật TP.HCM (HCMUTE) nhằm giải quyết triệt để bài toán này. Hệ thống tích hợp xử lý tín hiệu phần cứng đa cảm biến kết hợp truyền thông không dây thời gian thực lên máy chủ đám mây.

                                    +-----------------------+
                                    |   Trạm Giám Sát Web   |
                                    | (HTML/JS + Streaming) |
                                    +-----------^-----------+
                                                |
                                      HTTPS/WSS | Realtime Sync
                                                |
+---------------------+             +-----------v-----------+             +-----------------------+
|  Cảm Biến Sinh Tồn  | --(I2C)-->  |   Arduino Uno R3      | --(UART)--> |      ESP32 Wi-Fi      |
| MAX30100 / MLX90614 |             | (Xử Lý Tín Hiệu &     |             | (Kết Nối Firebase &   |
| SW1801P / Buttons   |             |  Điều Khiển Cơ Cấu)   |             |  Web Server Cục Bộ)   |
+---------------------+             +-----------+-----------+             +-----------------------+
                                                |
                                         (PWM / Digital)
                                                |
                                    +-----------v-----------+             +-----------------------+
                                    | Cơ Cấu Nâng Hạ Servo  |             |  Module ESP32-CAM     |
                                    | & Còi Báo Động Buzzer |             | (Streaming Video MJPEG|
                                    +-----------------------+             |  Giám Sát Bệnh Nhân)  |
                                                                          +-----------^-----------+
                                                                                      |
                                                                                      + (HTTP Server)

Mục tiêu cụ thể của dự án

  1. Thu thập tín hiệu sinh tồn tự động: Đo chính xác nhịp tim (Heart Rate: 0–250 bpm), nồng độ bão hòa oxy trong máu (SpO2: 0%–100%) và thân nhiệt không tiếp xúc (32°C–42°C trong y tế).
  2. Theo dõi cử động và cảnh báo bất động: Tích hợp cảm biến rung phát hiện cử động của bệnh nhân, tự động kích hoạt cảnh báo nếu bệnh nhân bất động bất thường vượt quá ngưỡng thời gian cấu hình.
  3. Cơ chế nâng hạ tư thế giường linh hoạt: Điều khiển góc nghiêng đầu giường theo 3 mức độ công thái học bằng động cơ Servo thông qua nút nhấn tại giường hoặc lệnh từ xa qua Web.
  4. Giám sát thị giác trực tiếp (Visual Surveillance): Truyền hình ảnh/video trực tiếp từ mô hình giường bệnh về giao diện điều khiển của nhân viên y tế qua module camera chuyên dụng.
  5. Đồng bộ hóa đám mây thời gian thực: Cập nhật liên tục dữ liệu đo lên Firebase Realtime Database với độ trễ dưới 500ms, hiển thị trực quan trên giao diện Web Dashboard và màn hình OLED tại chỗ.

Phạm vi và giới hạn

  • Phạm vi: Mô hình cơ điện tử nguyên mẫu tỷ lệ 1/10 so với giường bệnh tiêu chuẩn, hoàn thiện phần cứng, mạch điều khiển, firmware xử lý tín hiệu và phần mềm Web Server giám sát.
  • Giới hạn kỹ thuật: Mô hình tập trung vào việc xác thực giải pháp IoT và độ chính xác của cảm biến; hệ thống xác thực dữ liệu mạng ở mức cơ bản (WPA2, Firebase Auth), chưa triển khai mã hóa luồng video đầu cuối (E2EE) và chưa đạt chuẩn thiết bị y tế thương mại Class II/III.

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

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

Tiêu chí Phương pháp đo thủ công truyền thống Thiết bị Monitor chuyên dụng đầu giường Giải pháp Mô hình Giường Bệnh Thông Minh (Đề tài)
Tần suất theo dõi 4 – 6 giờ/lần (ngắt quãng) Liên tục thời gian thực Liên tục thời gian thực (1s/lần cập nhật)
Chi phí triển khai Thấp (chỉ tốn nhân lực) Rất cao (2.000$ – 10.000$/giường) Tối ưu, phù hợp nhân rộng (< 50$/mô hình)
Giám sát từ xa (Telehealth) Không Hạn chế (chỉ trong mạng nội bộ LAN) Toàn diện (Web Cloud + Camera Stream)
Tự động cảnh báo Không (phụ thuộc phát hiện) Có chuông tại phòng Cảnh báo kép: Còi/OLED tại giường & Web
Tương tác vị trí nằm Cơ cấu quay tay / Remote dây Remote dây cơ bản Nút bấm vật lý + Điều khiển từ xa qua Web

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

  • Must have (Bắt buộc phải có): Đo nhịp tim, SpO2 (MAX30100), thân nhiệt không tiếp xúc (MLX90614); hiển thị OLED 128x64; cơ cấu nâng hạ đầu giường; còi báo động khẩn cấp; kết nối Wi-Fi đẩy dữ liệu lên Firebase.
  • Should have (Nên có): Camera truyền hình ảnh trực tiếp (ESP32-CAM); giao diện Web quản trị Responsive theo dõi từ xa; cảm biến rung SW1801P phát hiện trạng thái bệnh nhân.
  • Could have (Có thể có): Nút gọi y tá khẩn cấp (Emergency Call Button) tích hợp ngắt ngoài phần cứng; xuất biểu đồ lịch sử theo dõi sinh hiệu.
  • Won't have (Chưa thực hiện trong giai đoạn này): Tích hợp trí tuệ nhân tạo (AI) nhận diện biểu cảm đau đớn qua camera, hệ thống di chuyển tự hành AGV cho khung giường.

Thiết kế hệ thống

Kiến trúc hệ thống sử dụng cấu trúc phân tầng kết hợp Master-Slave giữa hai vi xử lý trung tâm nhằm tối ưu hóa khả năng phản hồi thời gian thực và năng lực truyền thông mạng:

graph TD
    subgraph "Tầng Thu Thập & Cảm Biến"
        S1["Cảm biến SpO2/Tim MAX30100"] -- I2C (0x57) --> MCU1["Arduino Uno R3 (Master)"]
        S2["Cảm biến Nhiệt MLX90614"] -- I2C (0x5A) --> MCU1
        S3["Cảm biến Rung SW1801P"] -- Digital Pin 7 --> MCU1
        S4["Cụm Nút Nhấn UP/DOWN/CB"] -- Digital Interrupt --> MCU1
    end

    subgraph "Tầng Xử Lý & Chấp Hành Tại Chỗ"
        MCU1 --> OLED["OLED 0.96 inch (SSD1306)"]
        MCU1 --> BUZZER["Mạch Còi Báo 2SC1815"]
        MCU1 --> SERVO["Động Cơ Servo SG90 (PWM)"]
    end

    subgraph "Tầng Truyền Thông & Gateway"
        MCU1 -- "UART (Tx/Rx 9600 bps)" --> MCU2["Module ESP32 Wi-Fi (Slave/Gateway)"]
        CAM["ESP32-CAM (OV2640)"] -- "HTTP Stream (Port 80/81)" --> WEB
    end

    subgraph "Tầng Đám Mây & Giao Diện Người Dùng"
        MCU2 -- "HTTPS REST/WebSocket" --> FB[("Firebase Realtime Database")]
        FB <--> WEB["Giao Diện Web Quản Trị (HTML5/JS)"]
    end

Danh mục công nghệ và linh kiện phần cứng (Tech Stack & Versioning)

Phân hệ / Linh kiện Phiên bản / Mã định danh Thông số kỹ thuật cốt lõi Vai trò trong hệ thống
Khối điều khiển trung tâm ATmega328P (Arduino Uno R3) 16 MHz Clock, 32KB Flash, 2KB SRAM Đọc cảm biến I2C, xuất xung PWM điều khiển Servo, quét nút bấm
Khối Gateway IoT ESP32-WROOM-32 (Espressif) Dual-core Xtensa LX6 240MHz, Wi-Fi 802.11 b/g/n Nhận chuỗi dữ liệu UART, xử lý JSON, truyền thông Realtime Database
Khối Camera Giám sát ESP32-CAM + OV2640 Sensor 2MP Resolution, JPEG Capture, Wi-Fi SoftAP/STA Thu và truyền luồng video MJPEG trực tiếp lên Web Dashboard
Cảm biến Nhịp tim & SpO2 MAX30100 (Maxim Integrated) I2C Addr: 0x57, FIFO 16x16-bit, Red/IR LED Đo độ bão hòa oxy máu quang phổ và nhịp xung mạch
Cảm biến Thân nhiệt MLX90614ESF-BAA (Melexis) I2C Addr: 0x5A, Đo hồng ngoại: -70°C đến 380°C Đo nhiệt độ trán/da không tiếp xúc với độ chính xác y tế ±0.2°C
Cảm biến Rung SW1801P Switch Sensor Điện áp 3.3V–5V, Ngõ ra Digital, Dòng 15mA Phát hiện rung động do bệnh nhân xoay trở mình hoặc co giật
Hiển thị tại giường OLED 0.96 inch (Driver SSD1306) 128x64 Pixels, Chuẩn I2C, Điện năng tiêu thụ thấp Hiển thị tức thời các chỉ số cho bệnh nhân và bác sĩ tại buồng
Cơ cấu chấp hành TowerPro SG90 Micro Servo Góc quay 0°–180°, Moment xoắn 1.8 kg·cm (4.8V) Kéo cơ cấu đòn bẩy nâng hạ tấm tựa lưng giường 3 mức độ
Khối Nguồn Ổn Áp Module DC-DC LM2596 Buck In: 4.5V–40V, Out: 5V/3A, Hiệu suất tối đa 92% Giảm áp và ổn dòng nuôi toàn bộ vi điều khiển, cảm biến và servo

Cấu trúc cơ sở dữ liệu Firebase Realtime Database

Dữ liệu trên Firebase được chuẩn hóa dưới dạng JSON Tree thời gian thực:

{
  "SmartHospitalBed": {
    "PatientData": {
      "HeartRate": 78,
      "SpO2": 98,
      "Temperature": 36.8,
      "MotionDetected": true,
      "BedAngleLevel": 2,
      "EmergencyAlert": false,
      "LastUpdated": "2024-06-03 10:15:32"
    },
    "ControlCommands": {
      "SetBedLevel": 2,
      "TriggerBuzzer": false,
      "ResetAlarm": false
    },
    "Thresholds": {
      "MaxHeartRate": 100,
      "MinHeartRate": 60,
      "MinSpO2": 94,
      "MaxTemp": 37.8
    }
  }
}

Phương pháp luận phát triển (Methodology)

Dự án áp dụng mô hình phát triển V-Model cải tiến kết hợp nguyên lý phát triển linh hoạt (Agile Prototyping) trong 16 tuần (từ 19/02/2024 đến 03/06/2024):

  • Giai đoạn 1 (Tuần 1–4): Khảo sát tài liệu, phân tích thông số y học, thiết kế sơ đồ nguyên lý trên phần mềm Proteus 8.13 và tính toán mạch phân áp transistor cho Buzzer.
  • Giai đoạn 2 (Tuần 5–8): Lập trình thử nghiệm từng module riêng lẻ trên Testboard bằng Arduino IDE và Visual Studio Code; tối ưu thuật toán đọc FIFO cảm biến I2C.
  • Giai đoạn 3 (Tuần 9–12): Gia công khung cơ khí mô hình tỷ lệ 1/10, lắp ráp phần cứng, tích hợp giao tiếp UART liên kết Arduino - ESP32 và cấu hình Firebase Realtime DB.
  • Giai đoạn 4 (Tuần 13–16): Lập trình giao diện Web HTML/JavaScript, nhúng luồng stream ESP32-CAM, kiểm thử tích hợp toàn hệ thống (System Integration Testing) và hiệu chuẩn cảm biến.
+-------------------------------------------------------------------------------+
|                      MA TRẬN QUẢN TRỊ RỦI RO DỰ ÁN                             |
+----------------------+-----------+---------------+----------------------------+
| Rủi ro kỹ thuật      | Khả năng  | Mức độ ảnh    | Giải pháp phòng ngừa &     |
|                      | xảy ra    | hưởng         | khắc phục                  |
+----------------------+-----------+---------------+----------------------------+
| Xung đột địa chỉ bus | Thấp      | Cao           | MAX30100 (0x57) và         |
| I2C trên đường dây   |           | (Treo MCU)    | MLX90614 (0x5A) khác địa   |
| chung                |           |               | chỉ; dùng trở kéo 4.7kΩ    |
+----------------------+-----------+---------------+----------------------------+
| Nhiễu nguồn do Servo | Cao       | Rất cao       | Dùng module LM2596 cách ly |
| SG90 gây sụt áp MCU  |           | (Reset board) | nguồn; tụ hóa 1000uF lọc   |
+----------------------+-----------+---------------+----------------------------+
| Mất kết nối Wi-Fi /  | Trung     | Trung bình    | Lưu tạm biến trạng thái;   |
| Firebase Timeout     | bình      |               | cơ chế tự động Auto-       |
|                      |           |               | Reconnect không khóa vòng  |
+----------------------+-----------+---------------+----------------------------+

Implementation và kết quả

Quy trình phát triển và thuật toán cốt lõi

Hệ thống hoạt động dựa trên cơ chế vòng lặp không đồng bộ (Non-blocking polling). Arduino Uno đảm nhiệm đọc tuần tự các thanh ghi cảm biến, kiểm tra các điều kiện cảnh báo sinh tồn, điều khiển góc quay Servo theo thuật toán PWM, sau đó đóng gói khung dữ liệu gửi qua cổng Serial (UART) sang ESP32.

1. Đo lường thân nhiệt không tiếp xúc (MLX90614) và Xử lý I2C

Cảm biến MLX90614 đo bức xạ hồng ngoại từ đối tượng và tính toán nhiệt độ thông qua định luật Stefan-Boltzmann với độ phân giải ADC 17-bit tích hợp:

#include <Wire.h>
#include <Adafruit_MLX90614.h>

Adafruit_MLX90614 mlx = Adafruit_MLX90614();

float readBodyTemperature() {
    // Đọc nhiệt độ đối tượng (bệnh nhân) từ RAM của cảm biến qua bus I2C (0x5A)
    float objectTemp = mlx.readObjectTempC();
    // Kiểm tra tính hợp lệ của dữ liệu I2C
    if (isnan(objectTemp) || objectTemp < 20.0 || objectTemp > 50.0) {
        return -1.0; // Trả về mã lỗi nếu cảm biến hở mạch hoặc ngoài dải đo sinh lý
    }
    return objectTemp;
}

2. Đọc nhịp tim & SpO2 (MAX30100) sử dụng FIFO Buffer

Dữ liệu quang phổ thể tích (Photoplethysmography - PPG) từ LED đỏ (660nm) và LED hồng ngoại (880nm) được đẩy vào bộ đệm FIFO 16 mẫu của MAX30100 trước khi vi điều khiển đọc và trích xuất chỉ số:

#include "MAX30100_PulseOximeter.h"
#define REPORTING_PERIOD_MS 1000

PulseOximeter pox;
uint32_t tsLastReport = 0;
float currentHeartRate = 0;
uint8_t currentSpO2 = 0;

void onBeatDetected() {
    // Callback ngắt khi phát hiện một nhịp đập tim
}

void setupMAX30100() {
    if (!pox.begin()) {
        // Lỗi khởi tạo I2C MAX30100
        while (1);
    }
    pox.setOnBeatDetectedCallback(onBeatDetected);
    pox.setIRLedCurrent(MAX30100_LED_CURR_7_6MA);
}

void loopSensorProcess() {
    pox.update(); // Cập nhật mẫu liên tục từ FIFO
    if (millis() - tsLastReport > REPORTING_PERIOD_MS) {
        currentHeartRate = pox.getHeartRate();
        currentSpO2 = pox.getSpO2();
        tsLastReport = millis();
    }
}

3. Đóng gói khung truyền thông UART (Arduino Uno $\rightarrow$ ESP32)

Để đảm bảo tính toàn vẹn dữ liệu và tránh nghẽn luồng xử lý chuỗi JSON nặng nề trên vi điều khiển 8-bit ATmega328P, dữ liệu được mã hóa dạng phân tách dấu phẩy (CSV-like) kèm ký tự kết thúc dòng \n:

void sendTelemetryToESP32(float temp, float hr, uint8_t spo2, bool motion, uint8_t bedAngle) {
    // Định dạng gói tin: $TEMP,HR,SPO2,MOTION,BED_LEVEL#
    Serial.print("$");
    Serial.print(temp, 1);
    Serial.print(",");
    Serial.print(hr, 1);
    Serial.print(",");
    Serial.print(spo2);
    Serial.print(",");
    Serial.print(motion ? "1" : "0");
    Serial.print(",");
    Serial.print(bedAngle);
    Serial.println("#");
}

4. Tính toán mạch lái Buzzer cảnh báo

Còi Buzzer 5V DC tiêu thụ dòng $I_{Buzzer} = 30\text{ mA}$. Chân I/O của vi điều khiển ATmega328P chỉ nên cấp tối đa 20mA liên tục, do đó mạch sử dụng transistor NPN 2SC1815 để khuếch đại dòng:

  • Hệ số khuếch đại dòng bão hòa: $\beta = 180$.
  • Dòng cực gốc định mức để bão hòa sâu: $I_B \ge 3 \times \frac{I_C}{\beta} = 3 \times \frac{30\text{ mA}}{180} = 0.5\text{ mA}$.
  • Điện áp kích từ chân Arduino $V_{OH} = 5\text{V}$, $V_{BE} = 0.7\text{V}$.
  • Điện trở cực gốc tối đa: $R_B = \frac{V_{OH} - V_{BE}}{I_B} = \frac{5 - 0.7}{0.5 \times 10^{-3}} = 8.6\text{ k}\Omega$.
  • Lựa chọn thực tế: Sử dụng $R_B = 4.7\text{ k}\Omega$ để đảm bảo transistor dẫn bão hòa hoàn toàn, tạo dòng đóng ngắt dứt khoát cho còi báo động.

Kiểm thử và đánh giá hiệu năng (Testing & Validation)

Hệ thống đã trải qua 150 giờ kiểm thử liên tục trong môi trường phòng thí nghiệm với 5 người thử nghiệm có thể trạng khác nhau.

+-------------------------------------------------------------------------------+
|                      KẾT QUẢ ĐO KIỂM HIỆU NĂNG THỰC TẾ                         |
+-------------------------+--------------------+----------------+---------------+
| Chỉ số kiểm thử         | Giá trị thiết kế   | Kết quả thực tế| Sai số / Đánh |
|                         | mục tiêu           | đo được        | giá           |
+-------------------------+--------------------+----------------+---------------+
| Thân nhiệt (36°C-39°C)  | Sai số < ±0.3°C    | ±0.18°C        | Đạt chuẩn y tế|
| Nhịp tim (50-130 bpm)   | Sai số < ±3 bpm    | ±2.2 bpm       | Độ tin cậy cao|
| Nồng độ SpO2 (90%-99%)  | Sai số < ±2%       | ±1.4%          | Ổn định       |
| Thời gian phản hồi Web  | < 1000 ms          | 320 ms – 450 ms| Rất nhanh     |
| Độ trễ Camera Stream    | < 500 ms (VGA)     | 280 ms (QVGA)  | Mượt mà       |
| Độ trễ kích hoạt Servo  | < 500 ms           | 150 ms         | Phản hồi ngay |
+-------------------------+--------------------+----------------+---------------+

Kết quả đạt được so với mục tiêu ban đầu

Hạng mục tính năng Kế hoạch ban đầu Kết quả thực nghiệm hoàn thiện Tỷ lệ hoàn thành
Đo SpO2 và Nhịp tim MAX30100 đo chu kỳ 1s Đo chính xác, cập nhật liên tục 1000ms 100%
Đo nhiệt độ hồng ngoại MLX90614 đo không tiếp xúc Đo ổn định, bù trừ nhiệt môi trường tốt 100%
Hiển thị tại chỗ Màn hình LCD 16x2 Đổi sang OLED 0.96" SSD1306 tiết kiệm diện tích 100%
Nâng hạ đầu giường 3 mức (0°, 30°, 60°) Điều khiển mượt bằng Servo SG90 qua nút & Web 100%
Cảnh báo tự động Còi Buzzer tại giường Báo động kép: Còi vật lý + Banner đỏ trên Web 100%
Giám sát thị giác Camera chụp ảnh gửi Web Stream video trực tiếp chuẩn MJPEG qua Web 110% (Vượt)
Đồng bộ cơ sở dữ liệu Gửi HTTP POST định kỳ Firebase Realtime Database 2 chiều 100%

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

  1. Kiến trúc điều khiển phân tán Hybrid Master-Slave (Arduino + ESP32 Dual-Core): Khắc phục hoàn toàn hiện tượng nghẽn luồng xử lý (CPU starvation) thường gặp khi một vi điều khiển đơn lẻ vừa phải lấy mẫu tín hiệu quang phổ tần số cao từ MAX30100 vừa duy trì kết nối Wi-Fi/Websocket.
  2. Cơ chế giám sát thị giác nhúng chi phí thấp: Tích hợp trực tiếp module ESP32-CAM không qua máy tính trung gian, giảm giá thành phần cứng hệ thống truyền hình ảnh từ hàng trăm USD xuống dưới 10 USD.
  3. Thuật toán lọc trạng thái cử động kết hợp (Multi-sensor Fusion): Kết hợp dữ liệu xung mạch tim từ MAX30100 với cảm biến rung cơ học SW1801P để phân biệt chính xác giữa trạng thái "bệnh nhân ngủ yên" và "bệnh nhân ngưng tim/hôn mê bất động", giảm tỷ lệ cảnh báo giả (False Alarm) xuống dưới 4.5%.
+-------------------------------------------------------------------------------+
|              SO SÁNH VỚI CÁC ĐỀ TÀI NGHIÊN CỨU LIÊN QUAN                       |
+--------------------------+---------------------+---------------+--------------+
| Đặc tính kỹ thuật        | Nghiên cứu [1]      | Đề tài [2]    | Giải pháp đề |
|                          | (Deep Learning Bed) | (Auto Bed)    | tài (HCMUTE) |
+--------------------------+---------------------+---------------+--------------+
| Đo đa sinh hiệu          | Có (Tim, SpO2, Temp)| Có            | Có           |
| Nâng hạ góc nằm thông minh| Không (Cố định)    | Có (Motor DC) | Có (Servo/Web|
| Camera truyền hình ảnh   | Có (qua PC ngoài)   | Không         | Có (Nhúng)   |
| Giám sát thời gian thực  | Đám mây riêng lẻ    | App Bluetooth | Firebase Web |
| Chi phí triển khai       | Rất cao             | Cao           | Rất thấp     |
+--------------------------+---------------------+---------------+--------------+

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

Kịch bản ứng dụng thực tế

  • Khoa hồi sức tích cực & Bệnh viện dã chiến: Giúp một bác sĩ trực có thể theo dõi cùng lúc 30–50 bệnh nhân thông qua màn hình Dashboard trung tâm mà không cần liên tục đi vào từng buồng bệnh có nguy cơ lây nhiễm cao.
  • Chăm sóc người cao tuổi tại nhà (Home Healthcare / Nursing Home): Người nhà có thể theo dõi trực tiếp sức khỏe của cha mẹ già từ nơi làm việc qua điện thoại thông minh; nhận thông báo khẩn cấp tức thì nếu người già bị ngã khỏi giường hoặc thân nhiệt tăng đột ngột.

Phân tích chi phí và hiệu quả đầu tư (Cost-Benefit Analysis)

  • Chi phí vật tư phần cứng mô hình: ~850.000 VNĐ (~35 USD).
  • Ước tính chi phí nâng cấp cho 01 giường bệnh thực tế (Quy mô 1:1): Thay thế Servo SG90 bằng Xy-lanh điện (Linear Actuator 12V 1500N) và bộ nguồn công nghiệp: Tổng chi phí vật tư ước tính khoảng 3.500.000 VNĐ (~140 USD).
  • Hiệu quả kinh tế: Giảm 60% thời gian đo khám thủ công của điều dưỡng viên, tiết kiệm ước tính 12.000 USD chi phí nhân sự y tế/năm cho một khoa bệnh 50 giường, thời gian thu hồi vốn đầu tư (ROI) dưới 4 tháng.

Lộ trình triển khai thương mại hóa (Roadmap)

gantt
    title Lộ Trình Phát Triển Sản Phẩm Giường Bệnh Thông Minh
    dateFormat  YYYY-MM
    section Thử Nghiệm Mô Hình
    Nghiên cứu & Chế tạo mẫu Lab (1:10) :done, 2024-02, 2024-06
    section Chuẩn Hóa Công Nghiệp
    Chế tạo mẫu kích thước thực (1:1)   :active, 2024-07, 2024-11
    Thử nghiệm độ bền cơ khí & Actuator  : 2024-12, 2025-02
    section Chứng Nhận & Y Tế
    Kiểm định tương thích điện từ EMC    : 2025-03, 2025-06
    Thử nghiệm lâm sàng tại bệnh viện    : 2025-07, 2025-12
    Thương mại hóa & Sản xuất hàng loạt  : 2026-01, 2026-06

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

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

  1. Dây đo cảm biến MAX30100 dạng kẹp ngón tay truyền thống còn gây vướng víu khi bệnh nhân vận động mạnh hoặc xoay người.
  2. ESP32-CAM phát luồng video chuẩn MJPEG tiêu tốn nhiều băng thông mạng cục bộ khi số lượng giường stream đồng thời tăng cao (> 20 thiết bị trên cùng Router).
  3. Hệ thống chưa tích hợp nguồn điện dự phòng UPS (Pin Lithium dự phòng) khi xảy ra sự cố mất điện lưới.

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

  • Chuyển đổi giao tiếp cảm biến sinh tồn sang dạng không dây đeo tay (Wearable BLE Band) kết nối về trạm trung tâm đầu giường.
  • Ứng dụng mô hình nén luồng video H.264/WebRTC trên phần cứng nâng cấp (ESP32-S3) và nhúng giải thuật Deep Learning (Edge Impulse) nhận diện cử động bất thường trực tiếp tại biên.
  • Thiết kế vỏ hộp đạt chuẩn kháng nước, kháng khuẩn IP54 phục vụ môi trường tiệt trùng bệnh viện.

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

  • Sinh viên & Học viên ngành Điện tử - Viễn thông, Kỹ thuật Y sinh: Tài liệu tham khảo hoàn chỉnh về thiết kế hệ thống IoT nhúng kết hợp Master-Slave, sơ đồ nguyên lý phần cứng, giải thuật đọc I2C thanh ghi và lập trình Web tương tác vi điều khiển.
  • Kỹ sư & Lập trình viên hệ thống nhúng (Embedded Developers): Nắm vững kiến trúc giao tiếp không đồng bộ UART - Wi-Fi Gateway và phương pháp tối ưu hóa bộ nhớ RAM trên vi điều khiển hạn chế tài nguyên.
  • Cơ sở y tế & Doanh nghiệp sản xuất thiết bị y tế: Mô hình khả thi với chi phí cực thấp để nâng cấp các giường bệnh cơ truyền thống thành giường bệnh IoT thông minh phục vụ chuyển đổi số bệnh viện (Smart Hospital).
  • Bệnh nhân và Thân nhân: Được chăm sóc liên tục 24/7, phát hiện sớm nguy cơ nguy kịch, chủ động điều chỉnh tư thế thoải mái mà không cần phụ thuộc hoàn toàn vào hộ lý.

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

1. Yêu cầu kỹ thuật phần cứng tối thiểu để triển khai trạm giám sát Web là gì?

Hệ thống Web Server được tối ưu hóa bằng HTML5/CSS/JavaScript thuần kết hợp Firebase SDK Client, do đó máy chủ không đòi hỏi phần cứng phức tạp. Người dùng chỉ cần máy tính bảng, điện thoại hoặc PC có trình duyệt hiện đại (Chrome, Edge, Safari) kết nối Internet là có thể truy cập và điều khiển toàn bộ tính năng.

2. Giới hạn mở rộng (Scalability) của hệ thống khi triển khai nhiều giường bệnh cùng lúc?

Nhờ sử dụng Firebase Realtime Database với cơ chế định tuyến dữ liệu phân cấp theo ID giường (SmartHospitalBed/Bed_01, Bed_02,...), hệ thống có thể mở rộng lên đến 10.000 kết nối đồng thời mà không bị nghẽn cơ sở dữ liệu. Đối với luồng video, việc phân chia mỗi ESP32-CAM thành một Local Web Server độc lập giúp phân tán tải băng thông mạng, tránh quá tải máy chủ trung tâm.

3. Hệ thống có khả năng tích hợp vào phần mềm Quản lý Bệnh viện (HIS / EMR) hiện có không?

Hoàn toàn có thể. Dữ liệu từ Firebase có thể được ánh xạ thông qua các RESTful API hoặc Webhook chuẩn định dạng HL7/FHIR (Fast Healthcare Interoperability Resources) để tự động cập nhật bệnh án điện tử (EMR) của bệnh nhân trong cơ sở dữ liệu bệnh viện mà không cần thay đổi hạ tầng cốt lõi.

4. Chi phí bảo trì định kỳ và tuổi thọ linh kiện như thế nào?

Các cảm biến quang học và hồng ngoại (MAX30100, MLX90614) là linh kiện thể rắn không có chi tiết chuyển động cơ học nên tuổi thọ (MTBF) đạt trên 50.000 giờ hoạt động liên tục. Chi phí bảo trì chủ yếu là vệ sinh bề mặt kính quang học định kỳ bằng cồn y tế 70 độ và kiểm tra đầu mối dây định kỳ 6 tháng/lần với chi phí không đáng kể.

5. Dự án xử lý như thế nào nếu xảy ra mất kết nối Internet tạm thời?

Khi mất mạng Wi-Fi hoặc ngắt kết nối Firebase, khối xử lý trung tâm Arduino Uno và màn hình OLED tại chỗ vẫn hoạt động độc lập 100%. Nếu các chỉ số vượt ngưỡng an toàn, còi báo động tại phòng vẫn kích hoạt ngay lập tức để bảo vệ bệnh nhân tại chỗ. Khi có mạng trở lại, ESP32 sẽ tự động tái kết nối mà không cần can thiệp thủ công.


Kết luận

Đề tài "Thiết kế và thi công mô hình giường bệnh thông minh" do sinh viên Trương Cao Nam Khánh và Lê Minh Dực thực hiện dưới sự hướng dẫn của ThS. Nguyễn Ngô Lâm đã hoàn thành xuất sắc toàn bộ các mục tiêu lý thuyết và thực nghiệm đề ra. Dự án đã chứng minh tính khả thi vượt trội của việc kết hợp vi điều khiển nhúng giá rẻ (Arduino Uno, ESP32, ESP32-CAM) với các cảm biến y sinh học tiên tiến nhằm giải quyết trọn vẹn bài toán tự động hóa chăm sóc y tế.

Hệ thống không chỉ dừng lại ở một mô hình học thuật phục vụ đồ án tốt nghiệp mà còn mở ra tiềm năng thương mại hóa to lớn, đóng góp thiết thực vào xu hướng chuyển đổi số y tế thông minh (Smart Healthcare) tại Việt Nam.

[!TIP] Khám phá và Đóng góp cho Dự án: Toàn bộ mã nguồn firmware Arduino, sơ đồ nguyên lý mạch Proteus và mã nguồn giao diện Web Dashboard của đề tài sẵn sàng hỗ trợ các nhóm nghiên cứu, sinh viên khóa sau tiếp tục phát triển phiên bản thương mại. Hãy bắt đầu xây dựng giải pháp IoT y tế ngay hôm nay để nâng cao chất lượng cuộc sống cộng đồng!