Hướng dẫn kết nối Node-RED với SQL Server và hiển thị Dashboard chi tiết

Hướng dẫn kết nối Node-RED với SQL Server và hiển thị Dashboard chi tiết

Việc kết hợp Node-RED với SQL Server là giải pháp tối ưu cho các hệ thống giám sát dữ liệu công nghiệp (IIoT). Bài viết này sẽ hướng dẫn bạn từ cách cài đặt, cấu hình Database đến việc hiển thị dữ liệu trực quan lên Gauges Dashboard.


Bước 1: Cài đặt Node-RED và thư viện MSSQL

Đầu tiên, bạn cần cài đặt môi trường Node-RED trên máy tính Windows thông qua Command Prompt (CMD).

  1. Mở CMD với quyền Admin và chạy lệnh:Bashnpm install -g --unsafe-perm node-red
  1. Sau khi cài đặt xong, gõ lệnh node-red để khởi động server. Truy cập địa chỉ http://127.0.0.1:1880 trên trình duyệt.
  1. Để kết nối SQL Server, bạn vào Manage Palette > thẻ Install, tìm và cài đặt gói:
    • node-red-contrib-mssql-plus

Access CMD by admin & write to access node-red folder as photo

Install MSSQL by CMD Prompt

Bước 2: Cấu hình cơ sở dữ liệu SQL Server

Trước khi đẩy dữ liệu từ Node-RED, bạn cần tạo một bảng lưu trữ trong SQL Server Management Studio (SSMS).

Đoạn code tạo bảng (SQL):

SQL

USE [NORTHWND]
GO

-- Tạo bảng để lưu trữ dữ liệu từ PLC hoặc thiết bị IoT
CREATE TABLE DuLieuSanXuat (
    ID INT IDENTITY(1,1) PRIMARY KEY, -- ID tự động tăng
    ThoiGian DATETIME DEFAULT GETDATE(), -- Tự động lấy giờ hệ thống
    nhietdo REAL, -- Kiểu số thực cho nhiệt độ
    soluongcambien INT -- Kiểu số nguyên cho số lượng
);

Bạn có thể kiểm tra kết nối bằng lệnh chèn dữ liệu mẫu:

SQL

INSERT INTO DuLieuSanXuat (nhietdo, soluongcambien) VALUES (36.5, 5);
SELECT TOP (1000) * FROM DuLieuSanXuat;

Bước 3: Cấu hình kết nối MSSQL trong Node-RED

Kéo node mssql vào Flow và thực hiện cấu hình Connection:

  • Server: Tên máy chủ hoặc IP (ví dụ: localhost\SQLEXPRESS).
  • Username/Password: Tài khoản SQL Server của bạn.
  • Database: NORTHWND.

Trong phần nội dung truy vấn của node MSSQL, hãy dán đoạn code sau để thực hiện ghi dữ liệu:

SQL

INSERT INTO DuLieuSanXuat (nhietdo, soluongcambien) 
VALUES ({{{payload.nhietdo}}}, {{{payload.soluongcambien}}});

Bước 4: Sử dụng Function Node để xử lý dữ liệu

Để giả lập hoặc tách dữ liệu từ một nguồn thành nhiều nhánh hiển thị, chúng ta sử dụng Function Node.

  1. Kéo node Function ra và cấu hình Outputs là 2.
  2. Dán đoạn script sau để truyền dữ liệu cho Dashboard:

Code Function (JavaScript):

JavaScript

// Gán giá trị giả lập hoặc lấy từ thiết bị
var nhietdo = msg.payload.nhietdo || 35.5;
var soluong = msg.payload.soluongcambien || 10;

// Đầu ra 1 cho Gauge Nhiệt độ
var msg1 = { payload: nhietdo };

// Đầu ra 2 cho Gauge Số lượng
var msg2 = { payload: soluong };

return [msg1, msg2];

Bước 5: Cài đặt và thiết kế Dashboard trực quan

Để xem dữ liệu dưới dạng biểu đồ kim (Gauge), bạn cần cài đặt thư viện Dashboard.

  1. Vào Manage Palette > tìm và install: node-red-dashboard.
  1. Sau khi cài đặt, các node như gauge, chart, text sẽ xuất hiện ở cột bên trái.
  1. Kéo 2 node Gauge ra:
    • Cổng ra 1 của Function nối vào Gauge Nhiệt độ.
    • Cổng ra 2 của Function nối vào Gauge Số lượng.
  1. Nhấn Deploy ở góc trên bên phải màn hình.

Bước 6: Kiểm tra kết quả

  • Mở tab Dashboard bằng cách truy cập: http://127.0.0.1:1880/ui.
  • Nhấn vào node Inject (Timestamp) để kích hoạt luồng dữ liệu.
  • Kiểm tra cửa sổ Debug để xem thông báo trả về từ SQL Server và quan sát kim đồng hồ nhảy trên giao diện Dashboard.

Lưu ý: Nếu bạn không tìm thấy tab Dashboard, hãy nhấn vào biểu tượng mũi tên xuống ở góc phải màn hình Node-RED và chọn mục Dashboard để quản lý các Group và Tab hiển thị.


Chúc các bạn thực hiện thành công! Nếu có thắc mắc trong quá trình cấu hình, hãy để lại phản hồi phía dưới nhé.

Leave a Reply

Your email address will not be published. Required fields are marked *