Skip to main content

AI-POWERED DOCS

What do you want to know?

Gỡ Lỗi Node-RED

Hướng dẫn này cung cấp các quy trình khắc phục sự cố toàn diện cho các vấn đề Node-RED trên hệ thống camera OV80i. Sử dụng tài liệu này cho việc sửa chữa tại hiện trường, gỡ lỗi các vấn đề sản xuất và bảo trì phòng ngừa cho các flow kiểm tra.

warning

An Toàn Trước Tiên: Luôn thông báo cho bộ phận sản xuất trước khi thực hiện thay đổi trên các hệ thống kiểm tra đang hoạt động. Tạo bản sao lưu trước khi chỉnh sửa flow.

Quy Trình Khắc Phục Nhanh Khẩn Cấp

Hệ Thống Ngừng Hoạt Động Nghiêm Trọng - Hành Động Ngay Lập Tức

BướcHành ĐộngThời GianKết Quả
1Kiểm tra trạng thái đèn LED nguồn camera30 giâyXác minh phần cứng OK
2Truy cập Node-RED OV80i: http://camera-ip/recipes/<recipe-number>/ioblock1 phútXác nhận có thể truy cập editor
3Tìm các chỉ báo lỗi hình tam giác đỏ1 phútXác định các node bị lỗi
4Nhấp vào nút Deploy (Full Deploy)30 giâyReset tất cả các flow
5Kiểm tra trigger kiểm tra cơ bản2 phútXác minh hệ thống hoạt động

Khôi Phục Hệ Thống (Nếu Editor Không Tải Được)

Camera OV80i không có chế độ safe mode - khởi động lại là phương pháp khôi phục chính:

  1. Tắt nguồn camera (rút nguồn trong 10 giây)
  2. Chờ khởi động hoàn tất (cả 4 đèn LED ổn định - 2-3 phút)
  3. Truy cập Node-RED của recipe đang hoạt động thông qua URL dành riêng cho recipe
  4. Xác minh tính toàn vẹn của flow và thực hiện các sửa chữa cần thiết
  5. Deploy các thay đổi để khôi phục hoạt động bình thường
note

Định Dạng URL: http://<camera-ip>/recipes/<recipe-number>/ioblock

Ví dụ:

  • http://192.168.0.101/recipes/20/ioblock
  • http://192.168.0.105/recipes/1/ioblock

Quy Trình Gỡ Lỗi Có Hệ Thống

Bước 1: Xác Định Phạm Vi Vấn Đề

Câu Hỏi Đánh Giá Nhanh

Câu HỏiNếu CÓNếu KHÔNG
Bạn có thể truy cập giao diện Node-RED của OV80i không?Tiếp tục đến Bước 2Kiểm tra trạng thái mạng/camera
Các flow có hiển thị trong editor không?Tiếp tục đến Bước 2Tắt nguồn camera và thử lại
Bạn có thấy các tam giác lỗi trên các node không?Tập trung vào các node đó trướcKiểm tra việc thực thi flow
Kiểm tra có được trigger không?Kiểm tra đầu ra của từng nodeXác minh đầu vào trigger
note

URL Truy Cập: Sử dụng định dạng URL dành riêng cho recipe: http://<camera-ip>/recipes/<recipe-number>/ioblock

Bước 2: Bật Giám Sát Debug

Thêm Debug Node Để Khắc Phục Sự Cố

  1. Đặt các Debug node tại các điểm quan trọng trong các flow có vấn đề:
    • Sau các đầu vào trigger
    • Trước và sau các logic node
    • Tại các đầu ra cuối cùng
  2. Cấu hình Debug node để có thông tin tối đa:
    • Output: Toàn bộ message object
    • To: Debug sidebar
    • Name: Tên mô tả (ví dụ: "After Classification Logic")
  3. Bật tất cả Debug node bằng cách nhấp vào nút của chúng trong editor

Quản Lý Debug Sidebar

Truy Cập Debug Sidebar:

  • Nhấp vào tab Debug (biểu tượng con bọ) ở bảng bên phải
  • Xóa các thông báo cũ bằng biểu tượng thùng rác
  • Lọc thông báo nếu có quá nhiều node đang hoạt động

Diễn Giải Thông Báo Debug:

  • Timestamp hiển thị thời điểm thông báo xảy ra
  • Tên node hiển thị node nào đã tạo ra thông báo
  • Nội dung thông báo hiển thị cấu trúc và giá trị dữ liệu

Bước 3: Theo Dõi Quá Trình Thực Thi Flow

Theo Dõi Đường Đi Của Message

  1. Bắt đầu từ nguồn trigger (injection, timer, đầu vào bên ngoài)
  2. Xác minh mỗi node nhận được đầu vào như mong đợi
  3. Kiểm tra các chuyển đổi message tại mỗi bước
  4. Xác định vị trí flow dừng hoặc tạo ra đầu ra sai

Các Điểm Gián Đoạn Flow Thường Gặp

Loại NodeSự Cố Thường GặpKiểm Tra Nhanh
Classification LogicKhông đạt ngưỡng confidenceKiểm tra căn chỉnh ROI, huấn luyện lại model
Switch NodeLogic điều kiện saiXác minh quy tắc switch và thuộc tính message
Join NodeĐang chờ tập message chưa hoàn chỉnhKiểm tra số lượng phần của message
Function NodeLỗi JavaScriptKiểm tra browser console để tìm lỗi
HTTP RequestKết nối mạngKiểm tra endpoint thủ công

Các Sự Cố & Giải Pháp Node-RED Thường Gặp

Sự Cố Thực Thi Flow

Sự Cố: Flow Không Kích Hoạt

Triệu Chứng:

  • Không có message trong thanh bên Debug
  • Hệ thống có vẻ không hoạt động
  • Trigger bên ngoài không hoạt động

Các Bước Chẩn Đoán:

  1. Kiểm tra nguồn trigger: Inject thủ công, timer, đầu vào bên ngoài
  2. Xác minh dây nối: Đảm bảo kết nối giữa các node
  3. Kiểm tra trigger thủ công: Sử dụng node Inject để buộc flow khởi động

Giải Pháp:

Nguyên NhânGiải PhápPhòng Ngừa
Flow bị vô hiệu hóaNhấp Deploy → Full DeployDeploy thường xuyên sau khi thay đổi
Kết nối bị đứtNối lại các node đúng cáchKiểm tra trực quan trong quá trình chỉnh sửa
Cấu hình timer saiKiểm tra cài đặt thời gian của node injectGhi lại các yêu cầu về thời gian
Trigger bên ngoài lỗiXác minh dây nối và tín hiệu I/OKiểm tra I/O định kỳ

Sự Cố: Flow Chạy Nhưng Cho Kết Quả Sai

Triệu Chứng:

  • Message đang luân chuyển nhưng phân loại không chính xác
  • Logic pass/fail không hoạt động đúng
  • Kết quả không nhất quán

Quy Trình Chẩn Đoán:

  1. Thêm các node Debug trước và sau các node nghi ngờ
  2. So sánh nội dung message kỳ vọng so với thực tế
  3. Kiểm tra cấu hình node để đảm bảo tham số chính xác

Giải Pháp:

Khu Vực Sự CốKiểm TraKhắc Phục
Classification LogicCăn chỉnh ROI, huấn luyện modelHuấn luyện lại hoặc điều chỉnh ROI
Điều Kiện SwitchTên và giá trị thuộc tínhSửa logic switch
Thuộc Tính MessageKiểu dữ liệu và định dạngSử dụng node Change để sửa định dạng
Biến ContextGiá trị lưu trữ và phạm viXóa/đặt lại bộ nhớ context

Sự Cố Hiệu Năng

Sự Cố: Flow Thực Thi Chậm

Triệu Chứng:

  • Độ trễ giữa trigger và đầu ra
  • Timeout khi kiểm tra
  • Hệ thống bị lag

Chẩn Đoán Hiệu Năng:

  1. Kiểm tra timestamp Debug để xác định các node chậm
  2. Giám sát mức sử dụng CPU trên hệ thống camera
  3. Đếm số node Debug đang hoạt động (vô hiệu hóa những node không sử dụng)

Hành Động Tối Ưu Hóa:

Vấn Đề Hiệu NăngGiải PhápCải Thiện Dự Kiến
Quá nhiều node DebugVô hiệu hóa/xóa các node Debug không sử dụngTăng tốc độ 10-20%
Node Function phức tạpTối ưu hóa mã JavaScriptMức cải thiện thay đổi
Trigger tần suất caoThêm giới hạn độ trễ/tốc độNgăn hệ thống quá tải
Đối tượng message lớnGiảm kích thước payload của messageXử lý nhanh hơn

Quy Trình Bảo Trì

Kiểm Tra Sức Khỏe Hàng Ngày

Kiểm Tra Trực Quan Luồng (5 phút)

  1. Truy cập trình chỉnh sửa Node-RED
  2. Kiểm tra các chỉ báo lỗi (tam giác đỏ)
  3. Xác minh các kết nối luồng còn nguyên vẹn
  4. Xem lại các thông báo Debug gần đây để phát hiện bất thường

Kiểm Tra Thực Thi Luồng (10 phút)

  1. Kiểm tra kích hoạt thủ công sử dụng các node Inject
  2. Xác minh đầu ra mong đợi trong thanh Debug
  3. Kiểm tra logic pass/fail với các sản phẩm tốt/lỗi đã biết
  4. Xác nhận giao tiếp bên ngoài (PLC, cơ sở dữ liệu)

Tác Vụ Bảo Trì Hàng Tháng

Đánh Giá Hiệu Năng (15 phút)

Danh Sách Kiểm Tra Tối Ưu Hóa Luồng:

Tác VụHành ĐộngGhi Chú
Dọn Dẹp Node DebugVô hiệu hóa các node Debug không sử dụngChỉ giữ lại các node debug thiết yếu
Xem Xét Lưu Trữ ContextXóa các giá trị lưu trữ không cần thiếtNgăn chặn tích tụ bộ nhớ
Xem Xét Nhật Ký LỗiKiểm tra console trình duyệt để tìm lỗiGhi lại các sự cố lặp lại
Tạo Bản Sao LưuXuất các luồng sang tệp sao lưuLưu trữ kèm thông tin ngày/phiên bản

Xác Thực Cấu Hình (20 phút)

  1. So sánh các luồng hiện tại với các tiêu chuẩn đã được tài liệu hóa
  2. Xác minh tất cả các đường dẫn quan trọng có xử lý lỗi phù hợp
  3. Kiểm tra các kịch bản khôi phục lỗi
  4. Cập nhật tài liệu cho bất kỳ thay đổi nào

Bảo Trì Chuyên Sâu Hàng Tháng

Phân Tích Luồng Toàn Diện (45 phút)

Thu Thập Chỉ Số Hiệu Năng:

  • Thời gian thực thi luồng
  • Phân tích tần suất lỗi
  • Mô hình sử dụng tài nguyên
  • Độ tin cậy giao tiếp

Xem Xét Cấu Trúc Luồng:

  • Loại bỏ các node dư thừa
  • Hợp nhất logic trùng lặp
  • Cập nhật các cấu hình đã lỗi thời
  • Tối ưu hóa các node Function phức tạp

Kiểm Tra Sao Lưu và Khôi Phục (30 phút)

  1. Tạo bản xuất luồng hoàn chỉnh
  2. Kiểm tra quy trình nhập trên hệ thống sao lưu
  3. Xác minh việc khôi phục bản sao lưu duy trì được chức năng
  4. Ghi lại quy trình khôi phục

Công Cụ và Kỹ Thuật Chẩn Đoán

Công Cụ Tích Hợp Sẵn Trong Node-RED

Tính Năng Thanh Debug

Tính NăngTrường Hợp Sử DụngPhương Thức Truy Cập
Lọc Thông BáoTập trung vào các node cụ thểNút Filter trong thanh sidebar
Lịch Sử Thông BáoXem lại 100 thông báo gần đâyCuộn trong thanh Debug
Vị Trí NodeTìm nguồn của thông báo DebugNhấp vào tên node trong thông báo
Xuất Thông BáoLưu dữ liệu chẩn đoánSao chép nội dung thông báo

Trình Khám Phá Dữ Liệu Context

Truy Cập Lưu Trữ Context:

  • Mở giao diện Node-RED của OV80i (http://<camera-ip>/recipes/<recipe-number>/ioblock)
  • Đi đến tab Context Data (thanh sidebar bên phải)
  • Xem các giá trị context Node/Flow/Global

Gỡ Lỗi Context:

  • Node Context: Kiểm tra trạng thái của từng node riêng lẻ
  • Flow Context: Xác minh các biến dùng chung trong luồng
  • Global Context: Xem lại các thiết lập toàn hệ thống

Kiểm Tra Giao Tiếp Mạng

Xác Thực HTTP Request:

  1. Sử dụng các công cụ bên ngoài (Postman, curl) để kiểm tra các endpoint
  2. Xác minh định dạng phản hồi khớp với dữ liệu mong đợi
  3. Kiểm tra các điều kiện lỗi (timeout, phản hồi không hợp lệ)

Xác Minh Giao Tiếp PLC:

  1. Sử dụng phần mềm lập trình PLC để xác minh khả năng kết nối
  2. Kiểm tra truy cập thanh ghi dữ liệu một cách độc lập
  3. Xác thực việc chuyển đổi định dạng dữ liệu

Quy Trình Khôi Phục Khẩn Cấp

Khôi Phục Flow Bị Hỏng

Triệu Chứng Hỏng Hóc:

  • Giao diện Node-RED của OV80i không tải được flows
  • Flows hiển thị trống sau khi khởi động lại camera
  • Triển khai (deployment) thất bại liên tục

Các Bước Khôi Phục:

  1. Khởi động lại nguồn camera OV80i:
    • Rút nguồn trong 10 giây
    • Chờ khởi động hoàn tất (cả 4 đèn LED ổn định)
  2. Truy cập giao diện Node-RED của recipe:
    • Điều hướng đến http://<camera-ip>/recipes/<recipe-number>/ioblock
    • Nếu flows bị hỏng, nhập từ bản sao lưu
  3. Khôi phục từ bản sao lưu:
    • Sử dụng chức năng import recipe của OV80i
    • Nhập tệp sao lưu mới nhất
    • Xác minh tất cả kết nối còn nguyên vẹn
  4. Xác thực việc khôi phục:
    • Kiểm tra tất cả flows quan trọng
    • Xác minh kết nối truyền thông bên ngoài
    • Cập nhật bất kỳ thay đổi cấu hình nào

Vấn Đề Về Tài Nguyên Hệ Thống

Quá Tải Memory/CPU

Hành Động Tức Thời:

  1. Vô hiệu hóa các Debug nodes không cần thiết trong Node-RED của OV80i
  2. Loại bỏ các timer trigger tần suất cao
  3. Đơn giản hóa các Function nodes phức tạp
  4. Khởi động lại nguồn camera để khởi động lại tất cả dịch vụ

Giải Pháp Dài Hạn:

  • Tối ưu hóa thiết kế flow cho phần cứng OV80i
  • Triển khai giới hạn tần suất (rate limiting)
  • Giảm kích thước payload của message
  • Lên lịch cửa sổ bảo trì

Danh Sách Kiểm Tra Khắc Phục Sự Cố

Danh Sách Kiểm Tra Trước Bảo Trì

  • Thông báo cho bộ phận sản xuất về cửa sổ bảo trì
  • Tạo bản sao lưu flow hiện tại
  • Ghi lại trạng thái hệ thống hiện tại
  • Chuẩn bị quy trình rollback
  • Kiểm tra quy trình khôi phục bản sao lưu

Xác Thực Sau Bảo Trì

  • Tất cả flows triển khai thành công
  • Các bài kiểm tra manual trigger đạt yêu cầu
  • Truyền thông bên ngoài được xác minh
  • Các chỉ báo lỗi đã được xóa
  • Hiệu suất trong phạm vi chấp nhận được
  • Tài liệu đã được cập nhật

Danh Sách Kiểm Tra Ứng Phó Khẩn Cấp

  • Đã đánh giá tác động lên hệ thống
  • Đã thông báo cho bộ phận sản xuất
  • Đã thử khắc phục nhanh
  • Khôi phục bản sao lưu nếu cần
  • Đã xác định nguyên nhân gốc
  • Đã triển khai các biện pháp phòng ngừa

Tài Liệu và Ghi Nhật Ký

Hồ Sơ Bảo Trì

Tài Liệu Bắt Buộc:

  • Ngày/giờ bảo trì
  • Các vấn đề đã xác định và giải quyết
  • Các thay đổi cấu hình đã thực hiện
  • Các cải tiến hiệu suất đạt được
  • Khuyến nghị cho tương lai

🔗 Xem Thêm


tip

Ghi lại tất cả các thay đổi được thực hiện trong các phiên gỡ lỗi. Điều này giúp ích cho việc khắc phục sự cố trong tương lai và xây dựng kiến thức tổ chức cho nhóm của bạn.