Giới thiệu dự án

Trong kiến trúc cơ điện tử ô tô hiện đại, số lượng bộ điều khiển điện tử (Electronic Control Unit - ECU) đã tăng từ một vài đơn vị đơn lẻ lên hơn 70 đến 100 ECU trên một dòng xe cao cấp. Theo các thống kê từ Hiệp hội Kỹ sư Ô tô (SAE), nếu sử dụng phương pháp nối dây truyền thống điểm-điểm (point-to-point wiring), tổng chiều dài dây dẫn trên một chiếc xe có thể vượt quá 4.000 mét với khối lượng hơn 50 kg, làm tăng đáng kể chi phí sản xuất, mức tiêu hao nhiên liệu và nguy cơ sự cố chập cháy. Mạng truyền thông nội bộ trên xe ra đời như một giải pháp tất yếu nhằm tối ưu hóa đường truyền, giảm thiểu dây dẫn và tăng cường độ tin cậy vận hành.

+-----------------------------------------------------------------------------+
|                             KIẾN TRÚC MẠNG TRÊN Ô TÔ                        |
|                                                                             |
|  +------------------+     CAN-C (High-Speed: 500 kbps)   +---------------+  |
|  | Động cơ (ECM)    |<==================================>| Hộp số (TCM)  |  |
|  +------------------+                  ||                +---------------+  |
|                                        ||                                   |
|  +------------------+                  ||                +---------------+  |
|  | Phanh ABS / ESP  |<=================+================>| Cụm đồng hồ   |  |
|  +------------------+                  ||                | (Cluster)     |  |
|                                        ||                +---------------+  |
|                             +----------------------+                        |
|                             |   GATEWAY TRUNG TÂM  |                        |
|                             +----------------------+                        |
|                                        ||                                   |
|  +------------------+                  ||                +---------------+  |
|  | Điều hòa (HVAC)  |<=================+================>| Body (BCM)    |  |
|  +------------------+     CAN-B (Low-Speed: 125 kbps)    +---------------+  |
|                                        ||                                   |
|  +------------------+                  ||                +---------------+  |
|  | Cửa sổ / Gương   |<-----------------+---------------->| Ghế chỉnh điện|  |
|  +------------------+          LIN Bus (< 20 kbps)       +---------------+  |
|                                                                             |
|  +------------------+     MOST Bus (Quang học: 25 Mbps)  +---------------+  |
|  | Âm thanh / Video |<==================================>| Màn hình / Nav|  |
|  +------------------+                                    +---------------+  |
+-----------------------------------------------------------------------------+

Vấn đề đặt ra trong đào tạo kỹ thuật ô tô là tính trừu tượng cao của các giao thức mạng như CAN (Controller Area Network), LIN (Local Interconnect Network) và MOST (Media Oriented Systems Transport). Các thiết bị chẩn đoán chuyên dụng của các hãng sản xuất (như Vector CANoe hay dSPACE) thường có giá thành lên đến hàng chục nghìn USD, là một rào cản lớn đối với sinh viên và các phòng thí nghiệm kỹ thuật. Đồ án "Thiết kế mô hình mạng truyền thông trên ô tô" giải quyết trực tiếp bài toán này bằng cách xây dựng một hệ thống mô phỏng mạng truyền thông vật lý hoàn chỉnh, kết hợp giữa vi điều khiển nhúng chi phí thấp và cụm thiết bị chấp hành/ECU thực tế từ dòng xe thương mại Hyundai i10/i30.

Mục tiêu của đề tài

  1. Hệ thống hóa cơ sở lý thuyết về kiến trúc mạng truyền thông ô tô: mô hình tham chiếu OSI, cơ chế phân xử bus không phá hủy (non-destructive bitwise arbitration), định dạng khung dữ liệu CAN/LIN/MOST.
  2. Thiết kế và chế tạo phần cứng mô hình mạng CAN sử dụng vi điều khiển ATmega328P (Arduino Uno R3), ATmega2560 và bộ điều khiển độc lập MCP2515 kết hợp bộ thu phát TJA1050.
  3. Lập trình giao tiếp bus CAN ở tốc độ 500 kbps (High-Speed CAN-C) và 125 kbps (Low-Speed CAN-B), thực hiện gửi/nhận dữ liệu cảm biến mô phỏng (TPS, IAT, ECT) đến hộp ECU động cơ.
  4. Dò quét (sniffing), giải mã Identifier (ID) và cấu trúc dữ liệu để điều khiển trực tiếp các chỉ báo cảnh báo trên cụm đồng hồ táp-lô (Instrument Cluster) của xe Hyundai.
  5. Khảo sát thực nghiệm và đánh giá suy hao tín hiệu quang học trên mạng đa phương tiện MOST sử dụng hệ thống thiết bị UniTrain-I.

Giải pháp và phạm vi nghiên cứu

  • Phương pháp tiếp cận: Sử dụng kiến trúc module hóa kết hợp phần cứng nhúng mở, phân tách thành nút truyền (Transmitter Node), nút xử lý trung tâm (Gateway/Sensor Node) và nút hiển thị (Display/Actuator Node).
  • Chỉ số đo lường kỳ vọng: Tốc độ truyền dữ liệu mạng CAN-C đạt 500 kbps, chu kỳ làm tươi dữ liệu $\le 20\text{ ms}$, tỷ lệ mất khung hình (Frame Loss Rate) $< 0.1%$, điện áp chênh lệch $V_{diff}$ chuẩn xác ở mức Dominant ($2.0\text{V}$) và Recessive ($0.0\text{V}$).
  • Phạm vi nghiên cứu: Tập trung vào mạng CAN tốc độ cao (ISO 11898-2) điều khiển hệ thống truyền lực, mạng CAN tốc độ thấp (ISO 11898-3) điều khiển thân xe, và thí nghiệm suy hao đường truyền quang học POF (Plastic Optical Fiber) trên chuẩn MOST.

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

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

Tiêu chí kỹ thuật Đấu nối dây truyền thống (Point-to-Point) Thiết bị thí nghiệm chuyên dụng (Vector/dSPACE) Mô hình CAN-Bus Arduino nhúng (Đề tài)
Số lượng dây dẫn Rất lớn (Hàng trăm dây riêng biệt) Rút gọn theo chuẩn Bus Rút gọn tối đa (2 dây xoắn CAN_H, CAN_L)
Khả năng mở rộng Kém (Phải kéo thêm dây vật lý) Rất cao (Hỗ trợ cấu hình phần mềm) Cao (Thêm nút mạng trực tiếp vào bus)
Chống nhiễu điện từ Kém (Dễ bị ảnh hưởng bởi xung cao áp) Rất cao (Bộ lọc công nghiệp) Tốt (Nhờ tín hiệu vi sai và cặp dây xoắn)
Chi phí đầu tư Trung bình (Tốn chi phí dây và giắc nối) Rất cao ($15.000 - $30.000) Rất thấp ($80 - $150)
Mức độ trực quan Thấp (Khó chẩn đoán dạng sóng) Trung bình (Giao diện phần mềm) Rất cao (Đo kiểm trực tiếp bằng Oscilloscope)

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ó):
    • Giao tiếp CAN tốc độ 500 kbps giữa 2 vi điều khiển và cụm đồng hồ Hyundai.
    • Bộ điều khiển CAN độc lập MCP2515 giao tiếp qua chuẩn SPI với vi điều khiển ATmega328P.
    • Phân tích và hiển thị thành công tín hiệu vi sai ($V_{CAN_H} - V_{CAN_L}$) trên máy hiện sóng số (DSO).
  • Should have (Nên có):
    • Tích hợp biến trở mô phỏng các cảm biến động cơ: Cảm biến vị trí bướm ga (TPS), Cảm biến nhiệt độ nước làm mát (ECT), Cảm biến nhiệt độ khí nạp (IAT).
    • Khảo sát đặc tính vật lý của sợi quang dẫn sóng trong mạng MOST khi uốn cong, trầy xước hoặc biến dạng.
  • Could have (Có thể có):
    • Chức năng chẩn đoán OBD-II đọc mã lỗi DTC thông qua giao thức ISO 15765-4 / KWP2000.
  • Won't have (Chưa thực hiện trong giai đoạn này):
    • Tích hợp chuẩn giao tiếp CAN-FD hoặc Ethernet ô tô (BroadR-Reach).

Thiết kế hệ thống

Kiến trúc phần cứng của mô hình được thiết kế theo cấu trúc tuyến tính (Bus Topology) có hai điện trở đầu cuối $120,\Omega$ đặt tại hai điểm xa nhất của mạng nhằm triệt tiêu hiện tượng phản xạ sóng tín hiệu cao tần.

graph TD
    subgraph "Nút Cảm Biến & Giả Lập Tín Hiệu"
        Pot[Biến Trở Cảm Biến TPS / ECT / IAT] -->|Analog ADC| Mega[Arduino Mega 2560]
        Mega -->|Digital I/O| Node1[Arduino Uno R3 - Node 1]
    end

    subgraph "CAN High-Speed Bus (ISO 11898-2) - 500 kbps"
        Node1 -->|SPI Bus| MCP1[MCP2515 + TJA1050]
        R1[Điện Trở Đầu Cuối 120 Ohm] --- LineH[CAN_H]
        R1 --- LineL[CAN_L]
        MCP1 === LineH
        MCP1 === LineL
        LineH === MCP2[MCP2515 + TJA1050]
        LineL === MCP2
        LineH === Cluster[Cụm Đồng Hồ Hyundai i10]
        LineL === Cluster
        LineH === ECU[Hộp Điều Khiển ECU Động Cơ]
        LineL === ECU
        LineH === R2[Điện Trở Đầu Cuối 120 Ohm]
        LineL === R2
    end

    subgraph "Nút Điều Khiển & Giám Sát"
        MCP2 -->|SPI Bus| Uno2[Arduino Uno R3 - Node 2]
        Scope[Hantek 6022BE Oscilloscope] -.->|Kênh 1: CAN_H / Kênh 2: CAN_L| LineH
    end

Danh mục công nghệ và phiên bản phần cứng/phần mềm

  • Vi điều khiển: ATmega328P (16 MHz, 32KB Flash, 2KB SRAM) trên board Arduino Uno R3; ATmega2560 (16 MHz, 256KB Flash) trên board Arduino Mega 2560.
  • CAN Controller & Transceiver: Microchip MCP2515 (Stand-alone CAN Controller chuẩn SPI 10 MHz) + NXP TJA1050 (High-Speed CAN Transceiver).
  • Công cụ đo kiểm tín hiệu: Máy hiện sóng số Hantek 6022BE (2 kênh, băng thông 20 MHz, tốc độ lấy mẫu 48 MSa/s) chạy phần mềm Hantek DSO v1.0.8.
  • Hệ thống thí nghiệm cáp quang: Bộ thực hành Lucas-Nülle UniTrain-I kết hợp phần mềm LabSoft v7.2.
  • Phần mềm thiết kế cơ khí & lập trình: Autodesk Inventor Professional 2023, Arduino IDE v2.1.1 với thư viện mcp_can (phiên bản 1.5.0 của Cory J. Fowler).

Đặc tính điện áp vi sai lớp vật lý (Physical Layer)

Theo tiêu chuẩn ISO 11898-2:

  • Trạng thái lặn (Recessive - Logic 1): $V_{CAN_H} \approx 2.5\text{V}$, $V_{CAN_L} \approx 2.5\text{V} \implies V_{diff} = V_{CAN_H} - V_{CAN_L} \approx 0.0\text{V}$ (Ngưỡng chấp nhận: $-0.5\text{V} < V_{diff} < 0.5\text{V}$).
  • Trạng thái trội (Dominant - Logic 0): $V_{CAN_H} \approx 3.5\text{V}$, $V_{CAN_L} \approx 1.5\text{V} \implies V_{diff} = V_{CAN_H} - V_{CAN_L} \approx 2.0\text{V}$ (Ngưỡng chấp nhận: $1.5\text{V} < V_{diff} < 3.0\text{V}$).

Phương pháp nghiên cứu và quy trình thực hiện

Dự án áp dụng mô hình phát triển chữ V (V-Model) kết hợp các phân đoạn kiểm thử thực tế:

[Phân tích yêu cầu] ------------------------------> [Kiểm thử tổng thể mô hình]
        \                                                 /
    [Thiết kế kiến trúc] -----------------> [Kiểm thử truyền thông ECU/Cluster]
            \                                   /
        [Lập trình nhúng SPI/CAN] ---> [Đo kiểm xung vi sai DSO]
                    \                     /
                     [Thiết kế mạch & Hàn ráp]

Quản lý rủi ro kỹ thuật

  • Lệch trở kháng đường truyền: Sử dụng đúng 2 điện trở kết thúc $120,\Omega \pm 1%$ loại kim loại chịu nhiệt ở hai đầu bus nhằm hạn chế méo dạng xung ở tốc độ 500 kbps.
  • Nhiễu do chung mass: Thiết lập điểm tiếp địa chung (Common Ground) thống nhất giữa nguồn 12V nuôi cụm đồng hồ/ECU và nguồn 5V nuôi các board vi điều khiển.
  • Tràn bộ đệm Rx của MCP2515: Kích hoạt chế độ lọc phần cứng (Hardware Mask & Filter) trên MCP2515 để chỉ nạp các gói tin cần xử lý vào bộ đệm RxB0/RxB1, giảm tải xử lý ngắt cho ATmega328P.

Implementation và kết quả

Quy trình phát triển phần mềm nhúng

Hệ thống sử dụng bus SPI (Serial Peripheral Interface) ở tần số 10 MHz để giao tiếp giữa Arduino Uno R3 và MCP2515:

  • Chân CS (Chip Select): D10
  • Chân MOSI: D11
  • Chân MISO: D12
  • Chân SCK: D13
  • Chân INT (Ngắt nhận dữ liệu): D2
#include <SPI.h>
#include <mcp_can.h>

const int SPI_CS_PIN = 10;
const int CAN_INT_PIN = 2;
MCP_CAN CAN0(SPI_CS_PIN); // Khởi tạo đối tượng CAN với chân CS

void setup() {
    Serial.begin(115200);
    
    // Khởi tạo MCP2515: Tần số thạch anh 8MHz/16MHz, Baudrate 500 kbps
    if (CAN0.begin(MCP_ANY, CAN_500KBPS, MCP_16MHZ) == CAN_OK) {
        Serial.println("MCP2515 Initialized Successfully at 500 kbps!");
    } else {
        Serial.println("Error Initializing MCP2515...");
        while (1);
    }
    
    // Đặt chế độ hoạt động bình thường (Normal Mode)
    CAN0.setMode(MCP_NORMAL);
    pinMode(CAN_INT_PIN, INPUT);
}

// Cấu trúc khung dữ liệu điều khiển bảng đồng hồ hiển thị
void loop() {
    // Giả lập khung truyền vòng tua động cơ và tốc độ xe (ID: 0x316 chuẩn 11-bit)
    byte rpmData[8] = {0x05, 0x64, 0x1F, 0x40, 0x00, 0x00, 0x00, 0xAA};
    
    // Gửi gói tin Standard CAN Frame: ID, Standard Frame (0), Data Length (8), Data Array
    byte sendStatus = CAN0.sendMsgBuf(0x316, 0, 8, rpmData);
    
    if (sendStatus == CAN_OK) {
        Serial.println("Message 0x316 Sent Successfully!");
    } else {
        Serial.println("Error Sending Message 0x316...");
    }
    
    delay(20); // Chu kỳ gửi định kỳ 20ms
}
// Thuật toán tiếp nhận và giải mã tín hiệu cảm biến từ ECU
void receiveCanData() {
    long unsigned int rxId;
    unsigned char len = 0;
    unsigned char rxBuf[8];

    if (!digitalRead(CAN_INT_PIN)) { // Kiểm tra cờ ngắt từ MCP2515
        CAN0.readMsgBuf(&rxId, &len, rxBuf); // Đọc gói tin
        
        if (rxId == 0x329) { // ID dữ liệu cảm biến động cơ xe Hyundai i30
            // Byte 1: Tín hiệu nhiệt độ nước làm mát ECT (Engine Coolant Temp)
            int rawECT = rxBuf[1];
            float engineTemp = (rawECT * 0.75) - 48.0; // Công thức chuyển đổi tuyến tính
            
            // Byte 4: Vị trí bướm ga TPS (Throttle Position Sensor)
            int rawTPS = rxBuf[4];
            float throttlePercent = (rawTPS / 255.0) * 100.0;
            
            Serial.print("Engine Coolant Temp: ");
            Serial.print(engineTemp);
            Serial.print(" C | Throttle Opening: ");
            Serial.print(throttlePercent);
            Serial.println(" %");
        }
    }
}

Đo kiểm và đánh giá thực nghiệm

1. Khảo sát dạng sóng vi sai trên máy hiện sóng số Hantek 6022BE

  • Khi bus ở trạng thái rảnh hoặc truyền bit Recessive (Logic 1): Đo điện áp tại $CAN_H = 2.48\text{V}$, $CAN_L = 2.46\text{V}$, điện áp vi sai đo được là $V_{diff} = 0.02\text{V} \approx 0\text{V}$.
  • Khi truyền bit Dominant (Logic 0): Đo điện áp tại $CAN_H = 3.52\text{V}$, $CAN_L = 1.48\text{V}$, điện áp vi sai đo được là $V_{diff} = 2.04\text{V}$.
  • Thời gian sườn lên (Rise Time) đo được $t_r = 42\text{ ns}$, thời gian sườn xuống (Fall Time) $t_f = 48\text{ ns}$, đáp ứng yêu cầu truyền dẫn 500 kbps của chuẩn ISO 11898-2.
DẠNG SÓNG TÍN HIỆU CAN ĐO TRÊN HANTEK 6022BE

3.5V |        +-------------+        +-------+       CAN_H (Dominant: 3.5V)
     |        |             |        |       |
2.5V |--------+             +--------+       +------ Recessive Level (2.5V)
     |--------+             +--------+       +------ Recessive Level (2.5V)
1.5V |        |             |        |       |
     |        +-------------+        +-------+       CAN_L (Dominant: 1.5V)
     +--------------------------------------------------------------------> Thời gian (t)
              |<- Dominant ->|<- Rec ->|
              |   (Bit 0)    | (Bit 1) |

2. Thí nghiệm suy hao quang học trên mạng MOST (UniTrain-I)

Đánh giá mức độ suy giảm cường độ ánh sáng truyền trong ống dẫn sóng quang khi xuất hiện các khuyết tật cơ học:

Tình trạng sợi quang dẫn sóng Mức độ suy hao tín hiệu Tình trạng giao tiếp mạng MOST
Tiêu chuẩn (Nguyên bản) $0\text{ dB}$ (Chuẩn $100%$) Hoạt động bình thường ($25\text{ Mbps}$)
Uốn cong bán kính $R = 25\text{ mm}$ $-1.8\text{ dB}$ Ổn định, không xuất hiện lỗi
Uốn cong bán kính $R = 10\text{ mm}$ $-8.4\text{ dB}$ Suy giảm biên độ, méo tín hiệu
Đầu cáp trầy xước / Dính bẩn $-12.6\text{ dB}$ Xuất hiện lỗi bit (Bit Error Rate cao)
Chèn ép dập ống dẫn sóng $-18.2\text{ dB}$ Gián đoạn giao tiếp hoàn toàn (Bus Off)
Lệch trục kết nối $> 0.8\text{ mm}$ $-22.5\text{ dB}$ Không bắt được đồng bộ khung truyền

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

+--------------------------------------------------------------------------+
|                  KẾT QUẢ ĐẠT ĐƯỢC CỦA ĐỒ ÁN TỐT NGHIỆP                   |
+-----------------------------------+--------------------------------------+
| Kế hoạch đề ra ban đầu            | Kết quả thực tế đạt được             |
+-----------------------------------+--------------------------------------+
| 1. Thiết kế mô hình CAN 2 nút     | Hoàn thành mô hình 3 nút tích hợp    |
| 2. Giao tiếp vi điều khiển        | Giao tiếp Arduino Uno R3 & Mega 2560 |
| 3. Baudrate mục tiêu: 250 kbps    | Đạt chuẩn 500 kbps (High-Speed CAN)  |
| 4. Điều khiển đèn báo đồng hồ     | Giải mã ID điều khiển Check Engine,  |
|                                   | ABS, EPS, Vòng tua, Nhiệt độ nước    |
| 5. Đọc tín hiệu cảm biến ECU      | Đọc và hiển thị dữ liệu TPS, IAT, ECT|
| 6. Thí nghiệm mạng quang MOST     | Hoàn thành 5 bài đo suy hao quang    |
+-----------------------------------+--------------------------------------+
  • Độ chính xác giải mã tín hiệu: Đạt $99.8%$ trên tổng số 10.000 khung truyền thử nghiệm liên tục trong 3 giờ làm việc.
  • Thời gian trễ truyền nhận (Latency): Trung bình $3.8\text{ ms}$, thấp hơn yêu cầu hệ thống điều khiển truyền lực ($20\text{ ms}$).

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

  1. Tối ưu hóa chi phí chế tạo mô hình đào tạo: Giảm chi phí chế tạo thiết bị thực nghiệm từ mức hàng nghìn USD của các bộ kít nhập khẩu xuống còn dưới 3 triệu VNĐ, tạo điều kiện nhân rộng mô hình cho các cơ sở đào tạo chuyên ngành ô tô.
  2. Khả năng tích hợp thiết bị OEM thực tế: Không dừng lại ở việc mô phỏng giữa các vi điều khiển độc lập, đề tài đấu nối và giải mã thành công giao thức thực tế của cụm đồng hồ táp-lô và hộp ECU trên xe thương mại Hyundai, phản ánh chính xác môi trường làm việc trên xe thật.
  3. Phương pháp chẩn đoán trực quan: Kết hợp công cụ phân tích logic trên phần mềm và thiết bị đo kiểm xung vi sai trên phần cứng, giúp sinh viên làm quen trực tiếp với việc phát hiện các pan bệnh thực tế như: đứt đường CAN_H, chạm mass đường CAN_L, hoặc mất điện trở đầu cuối $120,\Omega$.
  4. Tài liệu hóa chi tiết tập lệnh Identifier: Cung cấp bảng tra cứu ID và cấu trúc Byte dữ liệu thực nghiệm cho các dòng xe phổ biến, hỗ trợ các nhóm nghiên cứu sau phát triển các thiết bị Telematics hoặc chẩn đoán nâng cao.

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

Tình huống ứng dụng thực tế

  • Phòng thí nghiệm Điện tử Ô tô: Sử dụng làm giáo cụ trực quan cho môn học "Hệ thống điều khiển tự động trên ô tô" và "Mạng truyền thông ô tô" tại Trường Đại học Sư phạm Kỹ thuật TP.HCM.
  • Thực hành chẩn đoán lỗi mạng: Giảng viên có thể cài đặt các công tắc tạo pan lỗi vật lý (ngắn mạch CAN_H với 12V, hở mạch CAN_L, sai lệch tốc độ truyền) để sinh viên rèn luyện kỹ năng phân tích lỗi bằng máy chẩn đoán và máy đo xung.
  • Nghiên cứu phát triển (R&D): Làm nền tảng thử nghiệm để phát triển các thiết bị giám sát hành trình (Fleet Management Tracking Unit), bộ hiển thị thông tin kính lái (Head-Up Display - HUD) tự chế lấy dữ liệu trực tiếp từ cổng OBD-II.
LỘ TRÌNH TRIỂN KHAI VÀ THƯƠNG MẠI HÓA

Tháng 1 - 3: Hoàn thiện mô hình mẫu (Prototype) & kiểm thử tại phòng thí nghiệm
Tháng 4 - 6: Đóng gói thành bộ KIT hoàn chỉnh kèm tài liệu hướng dẫn thực hành
Tháng 7 - 9: Triển khai thử nghiệm trong 03 lớp học phần thực tập Điện ô tô
Tháng 10+:   Chuyển giao công nghệ và nhân rộng tại các trường cao đẳng, đại học kỹ thuật

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

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

  • Băng thông xử lý của vi điều khiển 8-bit ATmega328P bị giới hạn khi mật độ gói tin trên bus tăng cao ($> 70%$ Bus Load), dẫn đến nguy cơ bỏ sót ngắt nếu không tối ưu hóa bộ lọc.
  • Mô hình hiện tại mới tập trung vào giao thức CAN 2.0B (khung dữ liệu tối đa 8 byte), chưa hỗ trợ giao thức CAN-FD (CAN with Flexible Data-Rate) với dung lượng lên đến 64 byte và tốc độ 5–8 Mbps.
  • Các thí nghiệm mạng MOST phụ thuộc vào module phần cứng UniTrain-I, chưa tự chủ được board phát tín hiệu quang riêng biệt.

Hướng nghiên cứu tiếp theo

  • Nâng cấp vi điều khiển lên kiến trúc ARM 32-bit (STM32F4 hoặc ESP32) có tích hợp sẵn bộ điều khiển phần cứng CAN/CAN-FD, nâng cao hiệu năng xử lý đa luồng.
  • Phát triển giao diện phần mềm giám sát trên máy tính (GUI bằng C# / Python) hiển thị đồ thị thời gian thực các thông số động cơ từ hộp ECU.
  • Tích hợp chuẩn giao tiếp không dây (Bluetooth/Wi-Fi) để truyền dữ liệu mạng CAN lên điện thoại thông minh, ứng dụng trong các hệ thống xe tự hành và xe kết nối (Connected Vehicles).

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

+-----------------------------------------------------------------------------+
|                            ĐỐI TƯỢNG HƯỞNG LỢI                              |
|                                                                             |
|  +------------------------+                     +------------------------+  |
|  |     SINH VIÊN KỸ THUẬT |                     |  KỸ THUẬT VIÊN SỬA CHỮA|  |
|  | Tiếp cận kiến thức mạng|                     | Nắm vững phương pháp   |  |
|  | trực quan, thực hành   |                     | đo kiểm vi sai, bắt    |  |
|  | giải mã và đo xung thật|                     | bệnh đứt/chạm bus CAN  |  |
|  +------------------------+                     +------------------------+  |
|              ^                                               ^              |
|              |                                               |              |
|  +------------------------+                     +------------------------+  |
|  |   GIẢNG VIÊN & NHÀ TRƯỜNG                    |   KỸ SƯ R&D EMBEDDED   |  |
|  | Sở hữu mô hình đào tạo |                     | Nền tảng phát triển    |  |
|  | chi phí thấp, độ bền   |                     | thiết bị ngoại vi,     |  |
|  | cao, dễ dàng bảo trì   |                     | HUD, hộp đen Telematics|  |
|  +------------------------+                     +------------------------+  |
+-----------------------------------------------------------------------------+
  • Sinh viên ngành Kỹ thuật Ô tô & Cơ điện tử: Rút ngắn $60%$ thời gian nắm bắt lý thuyết mạng CAN/LIN trừu tượng thông qua việc tự tay lập trình, đo sóng tín hiệu và giải mã dữ liệu thật.
  • Kỹ thuật viên garage ô tô: Hiểu rõ bản chất dạng sóng điện áp vi sai chuẩn, nâng cao độ chính xác khi chẩn đoán các lỗi giao tiếp mạng nội bộ phức tạp trên xe đời mới.
  • Các cơ sở đào tạo nghề: Tiết kiệm hơn $85%$ chi phí trang bị thiết bị thực hành chuyên ngành điện - điện tử ô tô so với việc nhập khẩu các bộ kit từ nước ngoài.

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

1. Yêu cầu nguồn điện và điều kiện an toàn khi vận hành mô hình là gì?

Mô hình sử dụng nguồn cấp DC kép: 12V/5A cung cấp cho hộp ECU động cơ và cụm đồng hồ táp-lô; nguồn 5V/2A ổn áp (thông qua cổng USB hoặc IC nguồn LM2596) nuôi các vi điều khiển và module MCP2515. Cần đảm bảo nối chung đường mass (GND) để điện áp vi sai đo được chính xác và tránh chênh lệch điện thế phá hỏng IC.

2. Tại sao mạng CAN lại bắt buộc phải có hai điện trở $120,\Omega$ ở hai đầu tuyến bus?

Đường truyền CAN tốc độ cao (500 kbps) truyền các xung tín hiệu điện vuông tần số cao. Khi xung tín hiệu di chuyển đến điểm cuối của đường truyền, nếu không có điện trở phối hợp trở kháng đúng bằng trở kháng đặc tính của cáp ($Z_0 \approx 120,\Omega$), sóng tín hiệu sẽ bị dội ngược lại (phản xạ sóng). Hiện tượng này gây méo dạng sóng, triệt tiêu tín hiệu hoặc tạo các xung đỉnh giả làm vi điều khiển đọc sai bit dữ liệu. Tổng trở kháng đo tĩnh giữa CAN_H và CAN_L khi ngắt nguồn phải đạt xấp xỉ $60,\Omega$ ($120,\Omega \parallel 120,\Omega$).

3. Làm thế nào để phân biệt trạng thái Dominant và Recessive khi đo bằng đồng hồ vạn năng (VOM)?

Khi đo bằng đồng hồ VOM ở thang đo điện áp một chiều (DC):

  • Đo giữa $CAN_H$ và Mass: Điện áp dao động trong khoảng $2.5\text{V} - 3.0\text{V}$.
  • Đo giữa $CAN_L$ và Mass: Điện áp dao động trong khoảng $2.0\text{V} - 2.5\text{V}$.
  • Đo trực tiếp giữa $CAN_H$ và $CAN_L$: Nếu mạng đang truyền dữ liệu, giá trị trung bình hiển thị khoảng $0.5\text{V} - 1.5\text{V}$ tùy thuộc vào mật độ bus (Bus Load). Để quan sát chính xác từng trạng thái bit Dominant ($2.0\text{V}$) và Recessive ($0\text{V}$), bắt buộc phải sử dụng máy hiện sóng số (Oscilloscope).

4. Mạng CAN xử lý như thế nào khi hai nút mạng đồng thời truyền dữ liệu lên bus?

Giao thức CAN sử dụng cơ chế phân xử theo bit không phá hủy dựa trên trường định danh (Identifier). Do bit 0 (Dominant) có mức điện áp vi sai cao hơn và có khả năng ghi đè bit 1 (Recessive), nút nào truyền ID có giá trị nhị phân nhỏ hơn (nhiều bit 0 hơn ở các trọng số cao) sẽ giành quyền ưu tiên phát tiếp. Nút có ID lớn hơn khi phát hiện bit mình gửi đi là 1 (Recessive) nhưng bus lại nhận bit 0 (Dominant) sẽ ngay lập tức dừng truyền và chuyển sang chế độ nhận mà không làm hỏng gói tin của nút ưu tiên cao.

5. Chi phí chế tạo hoàn chỉnh mô hình này là bao nhiêu?

Tổng chi phí linh kiện phần cứng để hoàn thiện mô hình ước tính khoảng 2.500.000 – 3.200.000 VNĐ (bao gồm: Board Arduino Uno/Mega, 02 module MCP2515+TJA1050, cụm đồng hồ bãi Hyundai i10, bộ nguồn DC 12V, khung giá đỡ mica/nhôm và các linh kiện phụ trợ), rẻ hơn rất nhiều so với thiết bị thương mại.


Kết luận

Đề tài tốt nghiệp "Thiết kế mô hình mạng truyền thông trên ô tô" đã hoàn thành toàn diện các mục tiêu đặt ra: làm chủ cơ sở lý thuyết mạng truyền thông ô tô, thiết kế thành công mô hình phần cứng hoạt động ổn định ở tốc độ 500 kbps, giải mã và điều khiển trực quan các hệ thống hiển thị và tiếp nhận dữ liệu cảm biến thực tế từ ECU. Công trình không chỉ khẳng định tính khả thi của việc ứng dụng các nền tảng nhúng mã nguồn mở vào kỹ thuật ô tô chuyên sâu mà còn mở ra hướng tiếp cận giáo cụ trực quan hiệu quả, chi phí thấp cho các trường đại học và cơ sở dạy nghề kỹ thuật tại Việt Nam.