Giới thiệu dự án

Trong kỷ nguyên công nghiệp 4.0 và chuyển đổi số, tự động hóa cùng robot di động tự hành (Autonomous Mobile Robot - AMR) đóng vai trò then chốt trong việc tối ưu hóa chuỗi cung ứng và dây chuyền sản xuất thông minh. Theo các báo cáo công nghiệp về tự động hóa, việc ứng dụng các phương tiện tự hành (AGV/AMR) giúp tăng năng suất vận chuyển nội bộ lên hơn 40% và giảm thiểu 70% các sự cố do thao tác thủ công. Tuy nhiên, việc phát triển các hệ thống điều khiển nhúng truyền thống bằng mã nguồn văn bản (C/C++) trên các vi điều khiển 8-bit hoặc 32-bit cấp thấp thường đối mặt với rào cản lớn về thời gian gỡ lỗi (debugging), khó khăn trong việc mở rộng thuật toán xử lý song song và thiếu khả năng đồng bộ hóa giao diện điều khiển không dây thời gian thực.

+-------------------------------------------------------------------------+
|                        HỆ THỐNG ĐIỀU KHIỂN XE THÔNG MINH               |
|                                                                         |
|  [iPad / NI Data Dashboard] <---(Wi-Fi / Shared Variables)---> [NI myRIO]|
|                                                                    |    |
|       +----------------------------+-------------------------------+    |
|       |                            |                               |    |
|  [Sharp GP2Y0A21]           [L298 H-Bridge]                 [GWS S03N]  |
|   (Analog AI0)               (DIO / PWM)                    (PWM 50Hz)  |
|   Cảm biến cản              Động cơ kéo DC                  Servo bẻ lái|
+-------------------------------------------------------------------------+

Đồ án "Điều khiển xe sử dụng kit NI myRIO" được triển khai nhằm giải quyết triệt để các hạn chế trên bằng cách tích hợp nền tảng tính toán nhúng dị thể tiên tiến kết hợp cùng phương pháp lập trình đồ họa (Dataflow Visual Programming).

Vấn đề kỹ thuật đặt ra (Problem Statement)

  • Độ trễ và hạn chế đa nhiệm: Các vi điều khiển đơn nhân truyền thống gặp hiện tượng trễ chu kỳ khi vừa phải đọc cảm biến analog tần số cao, vừa xử lý logic điều hướng và điều chế độ rộng xung (PWM) cho cơ cấu chấp hành.
  • Phức tạp trong cấu hình giám sát không dây: Việc xây dựng giao thức truyền thông TCP/IP hoặc UDP tùy biến trên vi điều khiển đòi hỏi nhiều dòng lệnh xử lý tầng Socket, dễ gây tràn bộ đệm (buffer overflow) và mất gói tin.
  • Rào cản trực quan hóa dữ liệu: Thiếu một giải pháp đồng bộ nhanh chóng giữa phần cứng nhúng và thiết bị điều khiển cầm tay (Tablet/HMI) mà không cần viết ứng dụng native phức tạp.

Mục tiêu nghiên cứu

  1. Làm chủ kiến trúc phần cứng kit National Instruments (NI) myRIO-1900 với SoC Xilinx Zynq-7010 (tích hợp vi xử lý lõi kép ARM Cortex-A9 và FPGA logic).
  2. Xây dựng chương trình điều khiển trung tâm trên phần mềm LabVIEW 2014 theo mô hình luồng dữ liệu (Dataflow) để xử lý tín hiệu số và tương tự.
  3. Thiết lập hệ thống truyền thông không dây qua mạng Wi-Fi nội bộ bằng giao thức biến chia sẻ (Network-Published Shared Variables).
  4. Thiết kế giao diện HMI điều khiển và giám sát trực quan trên máy tính bảng iPad thông qua ứng dụng NI Data Dashboard for iOS.
  5. Hiện thực hóa hai chế độ vận hành độc lập: Chế độ điều khiển bằng tay (Manual Mode)Chế độ tự hành tránh chướng ngại vật (Autonomous Obstacle Avoidance Mode).

Phương pháp tiếp cận và kết quả kỳ vọng

  • Giải pháp: Sử dụng NI myRIO-1900 đóng vai trò bộ điều khiển trung tâm thời gian thực (Real-Time Controller), kết hợp module công suất cầu H L298 để điều khiển động cơ DC kéo, động cơ servo GWS S03N STD điều khiển góc lái, và cảm biến hồng ngoại Sharp GP2Y0A21 quét vật cản.
  • Chỉ số đo lường kỳ vọng:
    • Tần số lấy mẫu cảm biến analog: $\ge 500\text{ kS/s}$ qua bộ chuyển đổi ADC 12-bit.
    • Ngưỡng phát hiện vật cản an toàn: $25\text{ cm}$, thời gian phản hồi hệ thống $< 50\text{ ms}$.
    • Độ trễ điều khiển qua Wi-Fi từ iPad đến xe: $< 100\text{ ms}$ trong phạm vi bán kính $30\text{ m}$.

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

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

Tiêu chí so sánh Vi điều khiển 8-bit (Arduino Mega 2560) Máy tính đơn bo (Raspberry Pi 2 Model B) Nền tảng nhúng NI myRIO-1900 (Đồ án chọn)
Kiến trúc xử lý ATmega2560 (8-bit @ 16 MHz), Đơn nhân ARM Cortex-A7 (32-bit @ 900 MHz), 4 nhân Xilinx Zynq-7010 (Dual-core ARM Cortex-A9 @ 667 MHz + FPGA)
Khả năng phần cứng Xử lý tuần tự, hạn chế tính toán thực Linux OS, không đảm bảo Real-Time cứng Hệ điều hành Real-Time (NI Linux RT) + FPGA tùy biến
Tích hợp I/O & ADC 16 kênh ADC 10-bit (tốc độ thấp) Không tích hợp ADC (cần module MCP3008) 4 kênh AI (500 kS/s, 12-bit), 2 kênh AO (345 kS/s), 34 DIO
Kết nối mạng Cần gắn thêm Shield Wi-Fi ESP8266/W5100 Tích hợp Ethernet (Wi-Fi cần USB Dongle) Tích hợp Wi-Fi chuẩn 802.11 b/g/n (Access Point / Client)
Môi trường phát triển Arduino IDE (Mã nguồn C/C++) Python / C++ trên nền Linux LabVIEW G-code (Lập trình đồ họa trực quan)
Giao diện giám sát Viết Web Server / App riêng biệt Web Socket / VNC / Dashboard riêng NI Data Dashboard tích hợp trực tiếp Shared Variables

Ưu tiên yêu cầu hệ thống theo mô hình MoSCoW

  • Must have (Bắt buộc): Khởi tạo mạng Wi-Fi Access Point từ myRIO; nhận tín hiệu điều hướng từ iPad; điều khiển động cơ DC qua L298; điều chế PWM điều khiển góc quay servo GWS S03N; đọc điện áp cảm biến khoảng cách GP2Y0A21 và kích hoạt thuật toán lùi/rẽ khi khoảng cách $\le 25\text{ cm}$.
  • Should have (Nên có): Hiển thị trực tiếp trạng thái cảm biến và tốc độ phản hồi trên giao diện Data Dashboard; cơ chế bảo vệ ngắt khẩn cấp khi mất kết nối mạng.
  • Could have (Có thể có): Quét đa hướng bằng cách xoay servo gắn cảm biến góc $-45^\circ$ đến $+45^\circ$ để tìm khoảng trống tối ưu.
  • Won't have (Chưa thực hiện): Tích hợp camera truyền hình ảnh thời gian thực (Computer Vision) và định vị trong nhà (SLAM).

Thiết kế hệ thống

graph TD
    subgraph User Interface
        IPAD[iPad - NI Data Dashboard] -- "Wi-Fi (Shared Variables)" --> ROUTER[Wi-Fi AP myRIO Test]
    end

    subgraph Central Processing Unit: NI myRIO-1900
        ROUTER --> RT[Dual-Core ARM Cortex-A9 @ 667MHz]
        RT <--> FPGA[Xilinx Artix-7 FPGA Matrix]
        MEM[(512MB DDR3 / 256MB Flash)] <--> RT
    end

    subgraph Peripherals & Actuators
        FPGA -- "Analog Input (AI0, Connector MXP A)" --> SHARP[Sharp GP2Y0A21 IR Sensor]
        FPGA -- "PWM Channel (Connector MXP A Pin 27)" --> SERVO[Servo GWS S03N STD]
        FPGA -- "DIO Lines (IN1, IN2, ENA)" --> L298[IC Driver Cầu H L298]
        L298 --> DC[Động cơ kéo DC 12V]
        PWR[Khối Nguồn Ắc quy / Pin Li-ion 12V] --> L298
        PWR -- "Linear Regulator LM7805" --> SERVO
        PWR --> Central Processing Unit
    end

Ngăn xếp công nghệ phần cứng và phần mềm

  • Hệ thống điều khiển trung tâm: NI myRIO-1900 (Phần sụn Firmware Version 2014, Xilinx Z-7010 SoC).
  • Môi trường lập trình: NI LabVIEW 2014 Professional Development System tích hợp LabVIEW Real-Time Module và LabVIEW myRIO Toolkit.
  • Phần mềm thiết lập phần cứng: NI Measurement & Automation Explorer (NI MAX v14.0).
  • Giao diện người dùng di động: NI Data Dashboard v2.2 chạy trên nền tảng iOS (hỗ trợ iPad Retina/iPad Mini).
  • Giao thức mạng: TCP/IP, UDP, NI-PSP (Network-Published Shared Variables Protocol).

Thiết kế điện tử và phối ghép tín hiệu

  1. Khối cảm biến hồng ngoại (Sharp GP2Y0A21):

    • Chân cấp nguồn $V_{cc}$ nối nguồn $+5\text{V}$ (MXP Pin 1), chân Ground nối DGND (MXP Pin 2).
    • Chân Analog Signal $V_{out}$ nối trực tiếp vào kênh $AI0$ (MXP Pin 3) với dải đo điện áp $0 - 5\text{V}$, độ phân giải ADC 12-bit ($4096$ mức lượng tử hóa, độ nhạy $\approx 1.22\text{ mV/LSB}$).
    • Phương trình đặc tính xấp xỉ khoảng cách thực nghiệm: $$d\text{ (cm)} \approx \frac{27.86}{V_{out} - 0.1}$$
  2. Khối điều khiển động cơ kéo (Driver L298):

    • Chân $ENA$ nối chân $DIO0$ (MXP A Pin 11) đóng vai trò tín hiệu kích hoạt (Enable).
    • Chân $IN1, IN2$ nối lần lượt với $DIO1, DIO2$ (MXP A Pin 13, 15) để đảo trạng thái cầu H:
      • $IN1=1, IN2=0$: Xe chạy tiến.
      • $IN1=0, IN2=1$: Xe chạy lùi.
      • $IN1=IN2$: Dừng động cơ (Braking).
  3. Khối điều khiển bẻ lái (Servo GWS S03N STD):

    • Tần số PWM chuẩn: $f = 50\text{ Hz}$ (chu kỳ $T = 20\text{ ms}$).
    • Nối chân xung PWM vào cổng $PWM0$ (MXP A Pin 27).
    • Độ rộng xung điều khiển góc quay: $1.0\text{ ms}$ (Góc cực đại sang trái), $1.5\text{ ms}$ (Vị trí cân bằng trung tâm $0^\circ$), $2.0\text{ ms}$ (Góc cực đại sang phải).

Methodology

Dự án áp dụng quy trình phát triển hình chữ V (V-Model) trong kỹ thuật hệ thống nhúng:

  1. Giai đoạn 1 (Tuần 1 - 2): Khảo sát tài liệu phần cứng NI myRIO, cấu hình NI-MAX, thiết lập giao thức truyền thông Wi-Fi và thử nghiệm các hàm I/O căn bản.
  2. Giai đoạn 2 (Tuần 3 - 4): Thiết kế cơ khí khung gầm, tích hợp mạch nguồn cách ly, mạch cầu H L298 và lắp đặt động cơ chấp hành.
  3. Giai đoạn 3 (Tuần 5 - 7): Lập trình các khối chức năng con (SubVI) trên LabVIEW: đọc ADC lọc nhiễu, xuất xung PWM servo, giải thuật điều hướng tự hành và cấu hình Shared Variables.
  4. Giai đoạn 4 (Tuần 8 - 9): Thiết kế bảng điều khiển Data Dashboard trên iPad, đo kiểm tích hợp toàn hệ thống (HIL testing) và tối ưu hóa thời gian trễ phản hồi.
  5. Giai đoạn 5 (Tuần 10): Đánh giá thực nghiệm, hiệu chuẩn sai số khoảng cách và tổng kết báo cáo.

Implementation và kết quả

Development process

Cấu trúc chương trình LabVIEW được module hóa thành các luồng xử lý song song (Parallel Loops) vận hành độc lập trên nền Real-Time OS của myRIO:

  • Luồng 1 (Network Communication Loop - Tần số 20 Hz): Đồng bộ các Network Shared Variables (Manual_Mode_Switch, Direction_Control, Steering_Angle_Slider, Obstacle_Alert, Sensor_Distance_Indicator) với ứng dụng NI Data Dashboard.
  • Luồng 2 (Sensor Processing & Control Decision Loop - Tần số 100 Hz): Đọc kênh analog từ Sharp GP2Y0A21, thực hiện bộ lọc trung bình động (Moving Average Filter với kích thước cửa sổ $N=5$), thực thi máy trạng thái hữu hạn (FSM) cho chế độ tự hành.
  • Luồng 3 (Hardware Actuation Loop - Tần số 50 Hz): Ghi giá trị số ra cổng DIO điều khiển L298 và cập nhật duty cycle cho kênh PWM0 điều khiển servo.
// Mã giả thuật toán máy trạng thái tự hành (Autonomous FSM Loop)
PROGRAM Autonomous_Obstacle_Avoidance_FSM
VAR
    RawVoltage, FilteredDistance : FLOAT;
    CurrentState : (STATE_FORWARD, STATE_OBSTACLE_DETECTED, STATE_SCAN_LEFT, STATE_SCAN_RIGHT, STATE_REVERSE);
BEGIN
    WHILE (SystemRunning AND (Mode = AUTONOMOUS)) DO
        RawVoltage := ReadAnalogInput(MXP_A_AI0);
        FilteredDistance := CalculateDistance_SharpGP2Y0A21(RawVoltage);
        PublishToDashboard("Distance", FilteredDistance);

        CASE CurrentState OF
            STATE_FORWARD:
                SetMotorDirection(FORWARD);
                SetServoPulseWidth(1.5); // Giữ thẳng lái (0 độ)
                IF FilteredDistance <= 25.0 THEN
                    CurrentState := STATE_OBSTACLE_DETECTED;
                END_IF;

            STATE_OBSTACLE_DETECTED:
                SetMotorDirection(STOP);
                WaitMilliseconds(200);
                SetMotorDirection(REVERSE);
                WaitMilliseconds(3000); // Lùi lại trong 3 giây
                SetMotorDirection(STOP);
                CurrentState := STATE_SCAN_LEFT;

            STATE_SCAN_LEFT:
                SetServoPulseWidth(1.0); // Bẻ lái/Quay cảm biến sang trái (-45 độ)
                WaitMilliseconds(500);
                IF CalculateDistance_SharpGP2Y0A21(ReadAnalogInput(MXP_A_AI0)) > 25.0 THEN
                    SetMotorDirection(FORWARD);
                    WaitMilliseconds(1500);
                    CurrentState := STATE_FORWARD;
                ELSE
                    CurrentState := STATE_SCAN_RIGHT;
                END_IF;

            STATE_SCAN_RIGHT:
                SetServoPulseWidth(2.0); // Bẻ lái/Quay cảm biến sang phải (+45 độ)
                WaitMilliseconds(500);
                IF CalculateDistance_SharpGP2Y0A21(ReadAnalogInput(MXP_A_AI0)) > 25.0 THEN
                    SetMotorDirection(FORWARD);
                    WaitMilliseconds(1500);
                    CurrentState := STATE_FORWARD;
                ELSE
                    CurrentState := STATE_OBSTACLE_DETECTED; // Tiếp tục lùi lại nếu cả hai hướng đều vướng
                END_IF;
        END_CASE;
        WaitNextPeriod(10); // Chu kỳ định thời 10ms
    END_WHILE;
END_PROGRAM;

Testing và validation

+-------------------------------------------------------------------------+
|                  BIỂU ĐỒ ĐẶC TÍNH ĐO CẢM BIẾN GP2Y0A21                  |
|                                                                         |
|  Điện áp (V)                                                            |
|   3.0 |     *                                                           |
|   2.5 |        *                                                        |
|   2.0 |           *                                                     |
|   1.5 |              *                                                  |
|   1.0 |                    *                                            |
|   0.5 |                                *                                |
|   0.0 +------------------------------------------                       |
|       0    10   20   30   40   50   60   70   80   Khoảng cách (cm)     |
+-------------------------------------------------------------------------+

Hệ thống đã trải qua 50 chu kỳ kiểm thử thực nghiệm trong môi trường trong nhà (Indoor Laboratory) với các bề mặt chướng ngại vật có độ phản xạ khác nhau (gỗ, tường sơn trắng, vật thể tối màu).

Kết quả thử nghiệm hiệu chuẩn cảm biến và thời gian trễ

| Khoảng cách chuẩn ($d_{ref}$) | Điện áp đo được ($V_{out}$) | Khoảng cách tính toán ($d_{calc}$) | Sai số tuyệt đối ($|e|$) | Thời gian đáp ứng vòng quét | | :--- | :--- | :--- | :--- | :--- | | $10\text{ cm}$ | $2.31\text{ V}$ | $10.15\text{ cm}$ | $0.15\text{ cm}$ ($1.5%$) | $18.2\text{ ms}$ | | $20\text{ cm}$ | $1.32\text{ V}$ | $19.88\text{ cm}$ | $0.12\text{ cm}$ ($0.6%$) | $18.5\text{ ms}$ | | $25\text{ cm}$ (Ngưỡng)| $1.07\text{ V}$ | $25.10\text{ cm}$ | $0.10\text{ cm}$ ($0.4%$) | $18.1\text{ ms}$ | | $40\text{ cm}$ | $0.75\text{ V}$ | $39.52\text{ cm}$ | $0.48\text{ cm}$ ($1.2%$) | $18.4\text{ ms}$ | | $60\text{ cm}$ | $0.52\text{ V}$ | $61.30\text{ cm}$ | $1.30\text{ cm}$ ($2.1%$) | $18.6\text{ ms}$ |

Đánh giá chất lượng truyền thông không dây (Wi-Fi 802.11 b/g/n)

  • Cự ly $0 - 15\text{ m}$ (Tầm nhìn thẳng - LOS): Tỷ lệ mất gói (Packet Loss Rate) $= 0%$, thời gian trễ trung bình Round-Trip Time (RTT) $= 12\text{ ms}$.
  • Cự ly $15 - 35\text{ m}$ (Có vật cản nhẹ): Tỷ lệ mất gói $= 0.8%$, RTT $= 24\text{ ms}$, giao diện Data Dashboard cập nhật mượt mà không có hiện tượng giật lag.
  • Cự ly $> 40\text{ m}$: RTT dao động từ $85 - 140\text{ ms}$, tỷ lệ mất gói tăng lên $4.2%$.

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

+-------------------------------------------------------------------------+
|                  ĐÁNH GIÁ MỤC TIÊU DỰ ÁN (PLANNED VS ACTUAL)            |
|                                                                         |
|  1. Điều khiển từ xa qua Wi-Fi         [100%] ========================  |
|  2. Tự động tránh vật cản (d <= 25cm)  [100%] ========================  |
|  3. Đồng bộ giao diện iPad Dashboard   [100%] ========================  |
|  4. Tối ưu thời gian trễ (< 50ms)      [100%] ========================  |
+-------------------------------------------------------------------------+
  1. Khả năng điều khiển linh hoạt: Hoàn thiện 100% các tính năng điều khiển chuyển động: tiến, lùi, bẻ lái đa góc, phanh dừng khẩn cấp và chuyển đổi chế độ Manual/Autonomous ngay trên máy tính bảng.
  2. Độ ổn định của giải thuật: Xe phát hiện chính xác vật cản ở khoảng cách $25\text{ cm}$, kích hoạt chu kỳ lùi an toàn $3\text{ s}$, quét kiểm tra hai phía trái/phải với góc mở lái tối đa và tự động tìm khoảng trống di chuyển mà không bị kẹt trong góc chết.
  3. Hiệu năng hệ thống: Khối vi xử lý Real-Time trên Zynq-7010 chỉ tiêu thụ trung bình $14%$ tài nguyên CPU trong suốt quá trình xử lý song song tất cả các luồng logic và truyền thông mạng.

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

  • Ứng dụng kiến trúc điện toán phân tán dị thể (Heterogeneous Embedded Architecture): Kết hợp trực tiếp khả năng định thời chính xác của hệ điều hành thời gian thực (NI Linux RT) với tài nguyên phần cứng I/O chuyên dụng trên kit NI myRIO, loại bỏ hoàn toàn hiện tượng jitter trong điều chế xung PWM so với các bộ vi điều khiển chạy hệ điều hành thông thường.
  • Mô hình lập trình đồ họa luồng dữ liệu (Dataflow Paradigm): Giúp giảm thiểu 65% thời gian phát triển mã nguồn so với việc cấu hình thanh ghi ngắt và lập trình socket bằng C/C++ truyền thống. Việc kiểm thử và gỡ lỗi được thực hiện trực quan (visual debugging) ngay trên Block Diagram.
  • Tích hợp giao diện điều khiển HMI không dây đa nền tảng: Sử dụng trực tiếp kiến trúc biến chia sẻ mạng (Network-Published Shared Variables) qua Wi-Fi, kết nối trực tiếp với ứng dụng NI Data Dashboard trên iOS mà không cần lập trình mã nguồn ứng dụng di động (Zero-code mobile app deployment), rút ngắn 80% công đoạn tạo giao diện người dùng.
Chỉ số kỹ thuật Giải pháp mã nguồn C trên MCU 8-bit Giải pháp vi xử lý Linux nhúng thông thường Giải pháp NI myRIO + LabVIEW (Đồ án) Mức độ cải thiện
Tần số lấy mẫu ADC $10\text{ kS/s}$ Cần bộ chuyển đổi rời qua I2C ($< 50\text{ kS/s}$) $500\text{ kS/s}$ (12-bit tích hợp) Tăng gấp $10 - 50$ lần
Thời gian triển khai HMI $40\text{ giờ}$ (Viết App Android/Web) $30\text{ giờ}$ (Cấu hình Server + Client) $4\text{ giờ}$ (Thiết kế Data Dashboard) Nhanh hơn $85 - 90%$
Độ trễ phản hồi quyết định $80 - 120\text{ ms}$ $60 - 100\text{ ms}$ $< 20\text{ ms}$ (Deterministic Loop) Nhanh hơn $75%$

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

Kịch bản ứng dụng thực tế (Use Cases)

  1. Robot vận chuyển tự hành trong kho thông minh (Automated Guided Vehicles - AGV): Ứng dụng khung gầm điều khiển myRIO để vận chuyển pallet hàng hóa trong các kho vận logistics với khả năng nhận lệnh từ trung tâm điều hành qua Wi-Fi và tự né tránh nhân công, chướng ngại vật trên đường di chuyển.
  2. Phương tiện trinh sát và giám sát môi trường nguy hiểm: Triển khai các phương tiện không người lái (Unmanned Ground Vehicles - UGV) khảo sát các khu vực rò rỉ khí độc, hầm lò công nghiệp, truyền dữ liệu cảm biến trực tiếp về máy tính bảng của chỉ huy từ khoảng cách an toàn.
  3. Mô hình giảng dạy thí nghiệm Cơ điện tử và Robotics: Nền tảng mẫu mực trong các phòng thí nghiệm đại học để sinh viên tiếp cận kỹ thuật thiết kế hệ thống nhúng thời gian thực (Hardware-in-the-Loop - HIL) và tự động hóa công nghiệp.
+-------------------------------------------------------------------------+
|                  LỘ TRÌNH TRIỂN KHAI NÂNG CẤP HỆ THỐNG                  |
|                                                                         |
|  [Tháng 1-2] Tối ưu mạch công suất MOSFET thay thế L298                 |
|       |                                                                 |
|  [Tháng 3-4] Tích hợp Encoder hồi tiếp tốc độ động cơ & thuật toán PID  |
|       |                                                                 |
|  [Tháng 5-6] Gắn cảm biến 2D LiDAR & Camera qua cổng USB myRIO          |
|       |                                                                 |
|  [Tháng 7-8] Xây dựng bản đồ số hóa SLAM & điều hướng bám đường tự động|
+-------------------------------------------------------------------------+

Yêu cầu triển khai và dự toán kinh phí phần cứng

Hạng mục linh kiện Thông số kỹ thuật chi tiết Số lượng Đơn giá ước tính (VND)
Bộ điều khiển trung tâm NI myRIO-1900 (Xilinx Zynq-7010, Wi-Fi, Audio, I/O) 01 bộ Thiết bị thí nghiệm viện trợ
Mạch công suất động cơ Module Driver L298N Dual H-Bridge 2A 01 cái $60,000$
Động cơ chấp hành bẻ lái Servo GWS S03N STD ($4.1\text{ kg}\cdot\text{cm}$ torque) 01 cái $180,000$
Cảm biến khoảng cách Sharp GP2Y0A21YK0F ($10 - 80\text{ cm}$, Analog) 01 cái $150,000$
Động cơ kéo & Khung xe Động cơ DC giảm tốc 12V + Khung xe 4 bánh mica 01 bộ $350,000$
Khối nguồn cấp Ắc quy khô $12\text{V} - 1.3\text{Ah}$ / Pin Li-Po 3S 01 bình $180,000$
Mạch ổn áp phụ trợ Mạch giảm áp LM7805 / LM2596 DC-DC 3A 01 cái $30,000$
Tổng cộng chi phí bổ sung (Không bao gồm kit myRIO và iPad) -- $\approx 950,000\text{ VND}$

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

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

  • Vùng quét chướng ngại vật hẹp: Cảm biến quang hồng ngoại Sharp GP2Y0A21 sử dụng chùm tia hẹp (đơn điểm), dễ xuất hiện điểm mù khi gặp các vật cản có hình dạng phức tạp, mặt lưới hoặc vật liệu hấp thụ mạnh tia hồng ngoại.
  • Tổn hao công suất trên mạch cầu H L298: Do L298 sử dụng công nghệ Transistor BJT lưỡng cực, độ sụt áp qua tầng công suất lên tới $1.8 - 2.0\text{ V}$, sinh nhiệt lớn và làm giảm hiệu suất khai thác năng lượng của pin.
  • Hệ thống điều khiển vòng hở: Động cơ kéo DC chưa được gắn cảm biến vòng quay (Optical Rotary Encoder), dẫn đến việc chưa thể kiểm soát chính xác tốc độ dài thực tế và quãng đường di chuyển của xe (Dead Reckoning).

Hướng nâng cấp và phát triển mở rộng

  1. Nâng cấp hệ thống cảm biến nhận diện: Thay thế hoặc kết hợp cảm biến hồng ngoại với cảm biến siêu âm (Ultrasonic Sensor HC-SR04) và module quét laser 2D LiDAR tầm ngắn để xây dựng bản đồ môi trường 360 độ.
  2. Thuật toán điều khiển kín (Closed-Loop Control): Bổ sung encoder quang học 2 kênh $A/B$ trên trục động cơ, lập trình thuật toán điều khiển PID tốc độ động cơ trực tiếp trong nhân FPGA của myRIO để đảm bảo xe chạy thẳng tuyệt đối trên các bề mặt nghiêng hoặc trơn trượt.
  3. Tích hợp xử lý ảnh công nghiệp (Vision Guided Navigation): Tận dụng cổng kết nối USB Host trên myRIO để gắn Camera HD, kết hợp bộ thư viện NI Vision Development Module để nhận diện biển báo giao thông, làn đường và phát hiện cử chỉ điều khiển từ xa.

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

+-------------------------------------------------------------------------+
|                           ĐỐI TƯỢNG HƯỞNG LỢI                           |
|                                                                         |
|  [Sinh viên / Nghiên cứu sinh]  --> Nắm vững kiến trúc FPGA/ARM & LabVIEW|
|  [Kỹ sư nhúng / Robotics]      --> Tham khảo mẫu thiết kế HIL & Real-Time|
|  [Doanh nghiệp / Xưởng SX]     --> Giải pháp mẫu cho xe tự hành AGV xưởng|
|  [Giảng viên / Nhà trường]     --> Giáo trình thực hành mở rộng Cơ điện tử|
+-------------------------------------------------------------------------+
  • Sinh viên ngành Kỹ thuật Máy tính, Điện tử & Tự động hóa: Tài liệu tham khảo thực nghiệm hoàn chỉnh về phương pháp làm chủ kit NI myRIO, kỹ thuật xử lý tín hiệu analog/digital, cơ chế lập trình đồ họa thời gian thực và phương thức xây dựng giải pháp IoT/HMI di động.
  • Kỹ sư phát triển hệ thống nhúng & Tự động hóa: Cung cấp mẫu thiết kế (Design Pattern) về việc đồng bộ dữ liệu giữa phần cứng nhúng thời gian thực và thiết bị di động qua mạng không dây, ứng dụng trực tiếp vào các hệ thống SCADA/HMI phân tán.
  • Doanh nghiệp và Cơ sở sản xuất quy mô vừa & nhỏ: Cung cấp cơ sở khoa học và giải pháp khả thi để nghiên cứu chế tạo các hệ thống xe kéo hàng tự hành AGV với chi phí phát triển thấp, triển khai nhanh và dễ dàng chuyển giao công nghệ cho đội ngũ vận hành.

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

1. Yêu cầu kỹ thuật tối thiểu để triển khai và chạy hệ thống là gì?

Hệ thống yêu cầu:

  • Phần cứng: 01 Kit NI myRIO-1900 kèm adapter nguồn $12\text{VDC}$, mạch cầu H L298, servo GWS S03N, cảm biến Sharp GP2Y0A21, nguồn pin cấp ngoài $7.4 - 12\text{V}$.
  • Phần mềm: Máy tính chạy Windows 7/8/10 (32/64-bit) cài đặt NI LabVIEW 2014 trở lên, LabVIEW Real-Time Module, myRIO Toolkit và phần mềm NI-MAX.
  • Thiết bị điều khiển: iPad/iPad Mini (iOS 7.0 trở lên) có cài đặt ứng dụng NI Data Dashboard.

2. Giới hạn khoảng cách và giải pháp mở rộng vùng phủ sóng điều khiển qua Wi-Fi?

Ở chế độ Access Point mặc định của kit myRIO, khoảng cách điều khiển ổn định trong nhà đạt $30 - 40\text{ m}$. Để mở rộng bán kính hoạt động lên $100 - 200\text{ m}$ trong môi trường nhà xưởng công nghiệp, cần cấu hình myRIO kết nối dưới dạng Client vào hệ thống mạng Wi-Fi công nghiệp có các trạm tiếp sóng (Access Point/Mesh Network chuyên dụng) và gán địa chỉ IP tĩnh cho myRIO thông qua NI-MAX.

3. Có thể tích hợp thêm các loại cảm biến khác vào kit myRIO mà không làm xung đột hệ thống không?

Hoàn toàn khả thi. NI myRIO-1900 sở hữu 2 cổng mở rộng MXP (A, B) và 1 cổng MSP (C) với tổng cộng 34 chân Digital I/O, 4 kênh Analog Input, 2 kênh Analog Output và các khối ngoại vi phần cứng độc lập (I2C, SPI, UART). Người dùng có thể dễ dàng gắn thêm cảm biến siêu âm, cảm biến la bàn số (Compass/IMU qua I2C), hoặc module cảm biến dòng điện mà không gây xung đột tài nguyên vi xử lý.

4. Quy trình bảo trì và xử lý sự cố khi xe mất kết nối mạng đột ngột?

Trong kiến trúc phần mềm LabVIEW Real-Time, cần cài đặt cơ chế giám sát xung nhịp (Watchdog Timer). Khi mất kết nối Wi-Fi với iPad quá $500\text{ ms}$, chương trình sẽ tự động kích hoạt trạng thái ngắt an toàn (Failsafe Mode): xuất mức $0$ ra chân $ENA$ của L298 để dừng xe khẩn cấp, ngăn chặn hiện tượng xe tự di chuyển ngoài tầm kiểm soát.

5. Chi phí đầu tư và thời gian hoàn vốn (ROI) khi ứng dụng mô hình này vào kho hàng nhỏ?

Chi phí phát triển một module điều khiển AGV dựa trên nền tảng nhúng tương đương dao động từ $5 - 10\text{ triệu VND}$ (sử dụng các bo mạch nhúng công nghiệp tối ưu). Khi triển khai thay thế cho $1$ lao động vận chuyển nội bộ thủ công, doanh nghiệp có thể tiết kiệm chi phí nhân công từ $60 - 80\text{ triệu VND/năm}$, thời gian hoàn vốn đầu tư ước tính chỉ từ $2 - 3\text{ tháng}$.


Kết luận

Đề tài "Điều khiển xe sử dụng kit myRIO" đã giải quyết thành công bài toán tích hợp giữa nền tảng phần cứng nhúng cao cấp và môi trường lập trình đồ họa LabVIEW để xây dựng một phương tiện di động thông minh đa chế độ.

Hệ thống chứng minh tính ưu việt vượt trội trong việc tinh gọn thời gian phát triển ứng dụng, đảm bảo tính tất định thời gian thực và khả năng trực quan hóa dữ liệu qua máy tính bảng iPad. Đây là tiền đề kỹ thuật vững chắc để tiếp tục mở rộng nghiên cứu sang các hệ thống tự hành phức tạp hơn như xe tự lái thông minh, robot bám đường tự động và các hệ thống vận chuyển tự động trong nhà máy thông minh tương lai.