III. Xác định thông số bộ điều khiển PID cho lò nhiệt độ 1 Mô hình thu thập dữ liệu
1. Mô tả chức năng
Hàm không tỉ lệ giá trị (UNSCALE) sẽ chuyển đổi một số thực (ở đầu vào IN) thành một số nguyên trong thang đo cần tính toán thiết kế được chỉ định ra giữa giá trị giới hạn dưới và giá trị giới hạn trên (LO_LIM và HI_LIM). Kết quả sẽ được ghi vào đầu ra OUT. Hàm chuyển đổi UNSCALE sử dụng phương trình sau:
OUT = [ ((IN–LO_LIM)/(HI_LIM–LO_LIM)) * (K2–K1) ] + K1
Trong đó K1 và K2 là các hằng số có giá trị phụ thuộc vào giá trị đầu vào là dạng có dấu (BIPOLAR) hay không âm (UNIPOLAR)
• BIPOLAR: Đầu ra là một số nguyên có giá trị nằm trong khoảng -27648 ÷ 27648 do đó, K1 = -27648.0 và K2 = +27648.0
• UNIPOLAR: Đầu ra là một số nguyên có giá trị nằm trong khoảng 0 ÷ 27648 do đó, K1 = 0.0 và K2 = +27648.0
Nếu giá trị đầu vào là một số thực nằm ngoài khoảng xác định của nó (BIPOLAR hoặc UNIPOLAR), thì đầu ra (OUT) sẽ vượt qua khỏi giá trị giới hạn dưới LO_LIM hoặc giá trị giới hạn trên HI_LIM, khi đó sẽ xảy ra lỗi.
2. Tham biến hình thức vào/ra của hàm FC105 (SCALE)
Tên biến Loại Kiểu Vùng nhớ Mô tả chức năng
EN IN BOOL I, Q, M, D, L Khối hàm được kích hoạt khi biến này có giá trị logic 1.
ENO OUT BOOL I, Q, M, D, L Biến này có giá trị logic 1 nếu như khối hàm thực thi không có lỗi.
IN IN REAL I, Q, M, D, L, P Số thực cần chuyển đổi thành số nguyên hoặc hằng số của thang đo cần tính toán thiết kế HI_LIM IN REAL I, Q, M, D, L, P Giới hạn trên của thang đo cần tính toán
hoặc hằng số thiết kế
LO_LIM IN REAL I, Q, M, D, L, P Giới hạn dưới của thang đo cần tính toán hoặc hằng số thiết kế
BIPOLAR IN BOOL I, Q, M, D, L Nếu giá trị vào có dạng bipolar thì biến này phải có giá trị logic 1, còn nếu có dạng unipolar thì biến này phải có giá trị logic 0 OUT OUT INT I, Q, M, D, L, P Kết quả của phép chuyển đổi tỷ lệ
RET_VAL OUT WORD I, Q, M, D, L, P Có g.trị W#16#0000 khi không lỗi
3. Lỗi chuyển đổi
Nếu giá trị đầu vào là một số thực nằm ngoài khoảng xác định của nó (BIPOLAR hoặc UNIPOLAR), thì đầu ra (OUT) sẽ vượt qua khỏi giá trị giới hạn dưới LO_LIM
hoặc giá trị giới hạn trên HI_LIM, lỗi sẽ xuất hiện. Khi đó biến ENO sẽ được gán giá trị 0 còn biến RET_VAL sẽ được gán giá trị W#16#0008.
4. Ví dụ
Trước khi chuyển đổi