SCALE_X
- Mô tả câu lệnh:
- Bạn có thể sử dụng hướng dẫn “SCALE_X” để chia tỷ lệ giá trị ở đầu vào VALUE bằng cách ánh xạ nó đến một phạm vi giá trị được chỉ định.
- Khi lệnh “SCALE_X” được thực thi, giá trị dấu phẩy động ở đầu vào VALUE được chia tỷ lệ thành phạm vi giá trị được xác định bởi các tham số MIN và MAX.
- Kết quả của việc chia tỷ lệ là một số nguyên, được lưu trong đầu ra OUT.
- Hình sau cho thấy một ví dụ về cách các giá trị có thể được chia tỷ lệ:
- Lệnh “SCALE_X” hoạt động với phương trình sau:
OUT = [VALUE ∗ (MAX – MIN)] + MIN
- Kích hoạt đầu ra ENO có trạng thái tín hiệu “0” nếu áp dụng một trong các điều kiện sau:
- Đầu vào kích hoạt EN có trạng thái tín hiệu “0”.
- Giá trị ở đầu vào MIN lớn hơn hoặc bằng giá trị ở đầu vào MAX.
- Giá trị của một số dấu phẩy động được chỉ định nằm ngoài phạm vi của các số chuẩn hóa theo IEEE-754.
- Xảy ra tràn dữ liệu.
- Giá trị ở đầu vào VALUE là NaN (Không phải là dạng số học hợp lệ).
Thông số khối lệnh:
Thông số | Kiểu dữ liệu | Mô tả |
EN | BOOL | Kích hoạt đầu vào |
ENO | BOOL | Trạng thái đầu ra |
MIN | Integers, floating-point numbers | Giới hạn dưới của giá trị |
VALUE | Integers, floating-point numbers | Giá trị đầu vào từ NORM_X |
MAX | Integers, floating-point numbers | Giới hạn trên của giá trị |
OUT | Floating-point numbers | Kết quả của SCALE_X |
Ví dụ:
Bảng sau đây cho thấy cách hoạt động của lệnh bằng cách sử dụng các giá trị toán hạng cụ thể:
Thông số | Toán hạng | Giá trị |
MIN | Tag_MIN | 10 |
VALUE | Tag_Value | 0.5 |
MAX | Tag_MAX | 30 |
OUT | Tag_Result | 20 |
- Mô tả:
- Nếu toán hạng “TagIn” có trạng thái tín hiệu “1”, lệnh được thực hiện.
- Giá trị ở đầu vào “Tag_Value” được chia tỷ lệ thành phạm vi giá trị được xác định bởi các giá trị ở đầu vào “Tag_MIN” và “Tag_MAX”.
- Kết quả được lưu trong đầu ra “Tag_Result”.
- Nếu lệnh được thực thi mà không có lỗi, đầu ra kích hoạt ENO có trạng thái tín hiệu “1” và đầu ra “TagOut” được đặt.