Cấu hình Recipe trên HMI Delta: Hướng dẫn tích hợp với PLC
SCADA và điều khiển công nghiệp27 tháng 7, 2026· 10 phút đọc · 46 lượt xem

Cấu hình Recipe trên HMI Delta: Hướng dẫn tích hợp với PLC

Hướng dẫn chi tiết cách cấu hình chức năng Recipe (lưu/gọi lại bộ thông số sản xuất) trên HMI Delta dòng DOP-100/DOP-B, liên kết với thanh ghi PLC, cùng ví dụ logic PLC và các lỗi thường gặp khi triển khai.

Chức năng Recipe trên HMI Delta cho phép lưu trữ nhiều bộ thông số vận hành (nhiệt độ, tốc độ, thời gian...) ngay trong bộ nhớ HMI, giúp người vận hành chuyển đổi nhanh giữa các cấu hình sản xuất khác nhau mà không cần nhập tay từng thông số. Bài viết này hướng dẫn cách cấu hình Recipe và liên kết dữ liệu hai chiều với thanh ghi PLC trên các dòng HMI Delta DOP-100/DOP-B.

1. Yêu cầu chuẩn bị

  • HMI Delta (dòng DOP-100 hoặc DOP-B) cùng phần mềm Screen Editor.

  • PLC có thanh ghi dữ liệu có thể ghi/đọc được (ví dụ dòng Delta DVP-SS, DVP-SA, DVP-SE).

  • Cáp truyền thông: RS-232 với dòng DVP, hoặc Ethernet với các model hỗ trợ mạng.

  • Hiểu biết cơ bản về cách đánh địa chỉ PLC (ví dụ thanh ghi D của PLC Delta).

2. Kiến trúc dữ liệu Recipe

Recipe trên HMI Delta hoạt động dựa trên 3 thành phần chính:

Thành phần

Chức năng

Vùng địa chỉ thường dùng

Bộ nhớ Recipe

Lưu giá trị thông số trong bộ nhớ HMI (không mất khi tắt nguồn)

Thanh ghi nội bộ $u hoặc $i

Nhóm Recipe (Recipe Group)

Tổ chức các thông số liên quan với nhau

Đặt tên tùy chỉnh

Thanh ghi dữ liệu PLC

Nhận/gửi giá trị từ/đến PLC

D0–D9999 (tùy model PLC)

Luồng dữ liệu: HMI (bộ nhớ Recipe dạng thanh ghi $u, lưu trữ không mất dữ liệu) ↔ PLC (thanh ghi D, bộ nhớ tạm/volatile) — dữ liệu có thể ghi từ HMI xuống PLC (Write to PLC) hoặc đọc từ PLC lên HMI để lưu (Read from PLC).

3. Các bước cấu hình chi tiết

Bước 1: Định nghĩa nhóm Recipe

  1. Mở phần mềm Screen Editor.

  2. Vào Objects → Recipe → Recipe Group.

  3. Nhấn Add để tạo nhóm recipe mới.

  4. Cấu hình các tham số:

Tham số

Giá trị ví dụ

Mô tả

Tên nhóm (Group Name)

PROD_PARAMS

Định danh do người dùng đặt

Số lượng recipe (Recipe Count)

10

Số bộ thông số có thể lưu

Số item mỗi recipe (Item Count)

5

Số thông số trong mỗi recipe

Loại bộ nhớ (Memory Type)

$u

Bộ nhớ người dùng, không mất khi tắt nguồn

Địa chỉ bắt đầu (Start Address)

u0000

Địa chỉ gốc lưu trữ

Bước 2: Cấu hình từng thông số trong Recipe

Double-click vào nhóm recipe để mở trình chỉnh sửa item, sau đó định nghĩa từng thông số, ví dụ:

STT

Tên

Kiểu dữ liệu

Địa chỉ

1

TEMP_SET

Số nguyên 16-bit

u0000

2

SPEED_SET

Số nguyên 16-bit

u0001

3

TIME_SET

Số nguyên 16-bit

u0002

4

COUNT_SET

Số nguyên 16-bit

u0003

5

MODE_SEL

Số nguyên 16-bit

u0004

Bước 3: Liên kết với thanh ghi PLC

Gán địa chỉ đích trên PLC cho từng thông số trong recipe:

Thông số

Địa chỉ HMI

Thanh ghi PLC

Chức năng

TEMP_SET

u0000

D100

Thông số nhiệt độ

SPEED_SET

u0001

D101

Tốc độ động cơ

TIME_SET

u0002

D102

Thời gian xử lý (giây)

COUNT_SET

u0003

D103

Số lượng theo mẻ

MODE_SEL

u0004

D104

Chế độ vận hành

Bước 4: Thêm nút chức năng Recipe

Đặt nút bấm trên màn hình HMI để kích hoạt thao tác đọc/ghi recipe:

  • Ghi xuống PLC (nạp Recipe): chọn hàm Recipe → PLC, chỉ định nhóm recipe, chỉ số recipe, địa chỉ nguồn (u0000), địa chỉ đích (D100), số lượng item (5).

  • Đọc từ PLC (lưu Recipe): chọn hàm PLC → Recipe, chỉ định nhóm recipe, chỉ số recipe, địa chỉ nguồn (D100), địa chỉ đích (u0000), số lượng item (5).

4. Tích hợp logic phía PLC

Cần xây dựng logic PLC để xử lý việc chuyển dữ liệu khi có tín hiệu kích hoạt từ HMI. Ví dụ minh họa dạng Structured Text cho PLC Delta DVP (đã viết lại theo cấu trúc tham khảo, không sao chép nguyên văn):

// Khi HMI kích hoạt ghi recipe xuống PLC
IF HMI_GHI_RECIPE = 1 THEN
    D100 := RECIPE_TEMP[HMI_CHI_SO];
    D101 := RECIPE_SPEED[HMI_CHI_SO];
    D102 := RECIPE_TIME[HMI_CHI_SO];
    D103 := RECIPE_COUNT[HMI_CHI_SO];
    D104 := RECIPE_MODE[HMI_CHI_SO];
    HMI_GHI_RECIPE := 0;  // reset cờ kích hoạt
END_IF;

// Khi HMI kích hoạt đọc/lưu thông số hiện tại thành recipe
IF HMI_DOC_RECIPE = 1 THEN
    RECIPE_TEMP[HMI_CHI_SO] := D100;
    RECIPE_SPEED[HMI_CHI_SO] := D101;
    RECIPE_TIME[HMI_CHI_SO] := D102;
    RECIPE_COUNT[HMI_CHI_SO] := D103;
    RECIPE_MODE[HMI_CHI_SO] := D104;
    HMI_DOC_RECIPE := 0;
END_IF;

5. Bảng tham chiếu địa chỉ

Loại địa chỉ

Định dạng

Phạm vi

Mất dữ liệu khi tắt nguồn?

Thanh ghi dữ liệu PLC

Dxxxx

D0–D9999

Có

Thanh ghi bit PLC

Mxxxx

M0–M8191

Có

Bộ nhớ người dùng HMI

u0000–u9999

u0–u9999

Không*

Thanh ghi hệ thống HMI

$u

u0–u0– u0–u9999

Không

Bộ nhớ cục bộ HMI

$i

i0–i0– i0–i9999

Có

*Lưu ý: thanh ghi $u vẫn giữ dữ liệu qua các lần tắt/mở nguồn HMI, nhưng không đảm bảo giữ được khi cập nhật firmware HMI — nên sao lưu dữ liệu recipe định kỳ.

6. Các bước kiểm tra sau khi cấu hình

  1. Kiểm tra bộ nhớ: xác nhận dữ liệu recipe vẫn còn sau khi tắt/bật lại nguồn HMI.

  2. Kiểm tra ghi: tạo recipe với giá trị đã biết trước, chuyển xuống PLC, xác nhận thanh ghi D nhận đúng giá trị.

  3. Kiểm tra đọc: ghi giá trị vào thanh ghi PLC, chuyển lên recipe, xác nhận bộ nhớ HMI lưu đúng dữ liệu.

  4. Kiểm tra chỉ số (index): xác nhận các recipe khác nhau đọc/ghi đúng vùng nhớ tương ứng, không bị lẫn lộn.

7. Các lỗi thường gặp

Lỗi

Nguyên nhân

Cách khắc phục

Dữ liệu recipe không được lưu giữ

Dùng nhầm $i thay vì $u

Đổi loại bộ nhớ sang $u (non-volatile)

Giá trị trên PLC không cập nhật

Thông số truyền thông không khớp

Kiểm tra lại station number, baud rate, giao thức có khớp với PLC

Chuyển recipe thất bại

Số lượng item nguồn/đích không khớp

Đảm bảo số item nguồn và đích bằng nhau

Load sai recipe

Thanh ghi chỉ số (index) chưa được khởi tạo

Đặt chỉ số recipe mặc định trong logic khởi động PLC

8. Nâng cao: Tự động chọn Recipe theo điều kiện

Có thể xây dựng logic PLC để tự động chọn recipe theo loại sản phẩm, thay vì để người vận hành chọn tay:

// Chọn recipe theo loại sản phẩm
CASE LOAI_SAN_PHAM OF
    1: CHI_SO_RCP := 0;  // Thông số sản phẩm A
    2: CHI_SO_RCP := 1;  // Thông số sản phẩm B
    3: CHI_SO_RCP := 2;  // Thông số sản phẩm C
END_CASE;

// Tự động nạp khi loại sản phẩm thay đổi
IF CHI_SO_RCP <> CHI_SO_RCP_TRUOC THEN
    HMI_GHI_RECIPE := 1;
    CHI_SO_RCP_TRUOC := CHI_SO_RCP;
END_IF;

9. Lưu ý về rủi ro mất dữ liệu khi mất điện đột ngột

Dù thanh ghi $u trên HMI là loại bộ nhớ không mất dữ liệu khi tắt nguồn thông thường, quá trình đang ghi/đọc recipe (thời điểm đang truyền dữ liệu giữa HMI và PLC) vẫn có thể bị gián đoạn nếu mất điện đột ngột giữa chừng — dẫn đến recipe bị ghi dở dang, dữ liệu sai lệch giữa các thông số. Với các dây chuyền sản xuất phụ thuộc nhiều vào việc chuyển đổi recipe liên tục theo lô hàng, nên cân nhắc trang bị UPS cho tủ điện điều khiển để đảm bảo quá trình đọc/ghi recipe luôn hoàn tất trọn vẹn, tránh phải cấu hình lại thủ công khi có sự cố điện.

Kết luận

Chức năng Recipe trên HMI Delta là công cụ hữu hiệu giúp chuẩn hóa và tăng tốc độ chuyển đổi thông số sản xuất giữa các lô hàng khác nhau. Việc cấu hình đúng cần chú ý: dùng đúng loại bộ nhớ $u để đảm bảo lưu trữ bền vững, khớp chính xác số lượng item giữa HMI và PLC, xây dựng cơ chế kích hoạt rõ ràng (nút bấm hoặc logic tự động), và luôn kiểm tra kỹ bằng giá trị test trước khi đưa vào vận hành thực tế.

⚡
Chưa biết chọn UPS công suất bao nhiêu?
Nhập danh sách thiết bị, công cụ sẽ tính tự động và gợi ý model phù hợp.
Tính công suất miễn phí

Cần tư vấn giải pháp UPS?

UPSsmart hỗ trợ tư vấn miễn phí, không ràng buộc.