Phần 7: CÁC KHỐI CHỨC NĂNG (FUNCTION BLOCKS)

Khối chức năng (Function Blocks) là các đối tượng xử lý logic cốt lõi trong Honeywell SpyderTool. Chúng nhận dữ liệu đầu vào từ các điểm vật lý, điểm phần mềm hoặc đầu ra của khối khác, thực hiện các phép tính hoặc logic, và tạo ra đầu ra để điều khiển hoặc truyền thông. Tất cả các khối chức năng đều có sẵn trong thanh Palette dưới mục honeywellSpyderTool.


7.1. Tổng quan về Function Blocks

7.1.1. Các danh mục Function Blocks

Danh mục Mô tả Ví dụ
Analog Xử lý tín hiệu tương tự, so sánh, lựa chọn Average, Compare, Select, Switch
Logic Thực hiện các phép toán logic AND, OR, XOR, OneShot
Math Thực hiện các phép tính toán học Add, Subtract, Multiply, Divide, Square Root
Control Các thuật toán điều khiển PID, AIA, Cycler, Rate Limit, Stager
DataFunction Xử lý dữ liệu, cảnh báo, đếm Alarm, Counter, Override, Runtime Accumulate
ZoneArbitration Xử lý cho các vùng điều khiển Occupancy Arbitrator, Temp Setpoint Calculator
BuiltIn Các khối tích hợp sẵn Schedule, Conventional Wall Module, S-Bus Wall Module
Utility Tiện ích Macro, Application

7.1.2. Giới hạn số lượng Function Blocks

Model Số lượng FB tối đa
Spyder I (PVL6436A, PVL6438N, PUL6438) 100
Spyder II (PVL6436AS, PVL6438NS, PUL6438S) 100
Spyder Lon Micro / BACnet Micro 200
Spyder Lon Relay / BACnet Relay 300

7.1.3. Cách thêm và cấu hình Function Block

Bước 1: Thêm khối chức năng

  1. Mở Wiresheet của ControlProgram.

  2. Trên Palette, mở rộng danh mục tương ứng.

  3. Kéo thả khối chức năng vào Wiresheet.

  4. Đặt tên cho khối và nhấp OK.

Bước 2: Cấu hình khối chức năng

  1. Nhấp chuột phải vào khối > Configure Properties.

  2. Nhập thông tin vào các trường.

  3. Nhấp OK để lưu hoặc Cancel để hủy.

Bước 3: Loại bỏ các chân không cần thiết

  • Nhấp chuột phải vào khối > Pin Slots.

  • Bỏ chọn các chân (pin) không sử dụng.

  • Nhấp OK. Khối sẽ hiển thị chỉ với các chân đã chọn.


7.2. Analog Function Blocks

7.2.1. Analog Latch

Chức năng: Chốt giá trị đầu vào X khi tín hiệu Latch chuyển từ FALSE sang TRUE.

Đầu vào Mô tả
latch Tín hiệu điều khiển chốt (FALSE→TRUE)
x Giá trị cần chốt
Y Đầu ra: giá trị đã chốt

Ứng dụng: Giữ giá trị cảm biến khi có sự kiện xảy ra.


7.2.2. Average

Chức năng: Tính trung bình của tối đa 8 đầu vào.

Cấu hình Mô tả
Ignore invalid inputs Nếu chọn, chỉ tính các đầu vào hợp lệ. Nếu không, chỉ cần một đầu vào Invalid thì đầu ra cũng Invalid.

Ứng dụng: Tính nhiệt độ trung bình của nhiều vùng.


7.2.3. Compare

Chức năng: So sánh hai đầu vào với các tùy chọn: Less Than, Greater Than, Equal To.

Đầu vào Mô tả
input1, input2 Các giá trị cần so sánh
onHyst, offHyst Độ trễ bật/tắt
Operation Chọn kiểu so sánh

Ứng dụng: Phát hiện nhiệt độ vượt ngưỡng với độ trễ.


7.2.4. Encode

Chức năng: Ánh xạ giá trị Enumeration này sang Enumeration khác.

Đầu vào Mô tả
inEnum Giá trị đầu vào (0-255)
disable Bật/tắt ánh xạ
in1…in9 Các giá trị cần so sánh
out1…out9 Các giá trị đầu ra tương ứng
fire Đầu ra báo hiệu có ánh xạ thành công

Ứng dụng: Chuyển đổi giữa các bộ Enumeration chuẩn và tùy chỉnh.


7.2.5. Hysteretic Relay

Chức năng: Đầu ra TRUE khi giá trị đầu vào lớn hơn onVal, FALSE khi nhỏ hơn offVal.

Đầu vào Mô tả
in Giá trị đầu vào
onVal, offVal Ngưỡng bật/tắt
minOn, minOff Thời gian tối thiểu duy trì trạng thái (giây)

Ứng dụng: Điều khiển máy nén, quạt với thời gian bảo vệ.


7.2.6. Maximum / Minimum

Chức năng: Tìm giá trị lớn nhất / nhỏ nhất trong tối đa 8 đầu vào.

Cấu hình Mô tả
Ignore invalid inputs Bỏ qua các đầu vào Invalid khi tính toán.

Ứng dụng: Giám sát nhiệt độ cao nhất/thấp nhất trong hệ thống.


7.2.7. Priority Select

Chức năng: Chọn đầu vào có mức ưu tiên cao nhất được kích hoạt.

Đầu vào Mô tả
enable1…enable4 Kích hoạt ưu tiên
in1…in4 Các giá trị đầu vào
In1 As Default Sử dụng Input1 làm mặc định nếu không có ưu tiên nào

Ứng dụng: Lựa chọn điểm đặt từ nhiều nguồn (cục bộ, từ xa, khẩn cấp).


7.2.8. Select

Chức năng: Chọn một trong 6 đầu vào dựa trên giá trị X.

Đầu vào Mô tả
x Giá trị chọn
offset Giá trị bù
default Giá trị mặc định
input0…input5 Các đầu vào

Công thức: Output = input(x – offset) nếu (x – offset) trong khoảng 0-5, nếu không output = default.

Ứng dụng: Chọn chế độ vận hành dựa trên giá trị số.


7.2.9. Switch

Chức năng: Chọn một trong 8 đầu ra làm TRUE dựa trên input – offset.

Đầu vào Mô tả
input Giá trị đầu vào (0-255)
offset Giá trị bù
output0…output7 8 đầu ra

Ứng dụng: Kích hoạt trạng thái tương ứng với giá trị lệnh.


7.3. Logic Function Blocks

7.3.1. AND

Chức năng: Đầu ra TRUE khi tất cả đầu vào đều TRUE.

Đầu vào Mô tả
in1…in6 Các đầu vào (có thể đảo)
trueDelay Thời gian trễ khi chuyển sang TRUE (giây)
falseDelay Thời gian trễ khi chuyển sang FALSE (giây)

Lưu ý: Đầu vào không kết nối hoặc Invalid mặc định là TRUE.


7.3.2. OR

Chức năng: Đầu ra TRUE khi ít nhất một đầu vào là TRUE.


7.3.3. XOR

Chức năng: Đầu ra TRUE khi có đúng một đầu vào là TRUE.


7.3.4. OneShot

Chức năng: Khi đầu vào X chuyển từ FALSE sang TRUE, đầu ra Y được set TRUE trong thời gian onTime giây.

Đầu vào Mô tả
x Tín hiệu kích hoạt
onTime Thời gian duy trì (0-65535 giây)
Y Đầu ra xung

Ứng dụng: Tạo xung kích hoạt cho các thiết bị.


7.4. Math Function Blocks

7.4.1. Add / Subtract / Multiply / Divide

Chức năng: Các phép tính cơ bản với tối đa 8 đầu vào cho Add.

Cấu hình Mô tả
TailOperation No ChangeAbsoluteIntegerFractional
Ignore invalid inputs Bỏ qua đầu vào Invalid khi tính toán

7.4.2. Square Root

Chức năng: Tính căn bậc hai của đầu vào.

Cấu hình Mô tả
negInvalid 0: Dùng giá trị tuyệt đối; 1: Đầu ra Invalid nếu đầu vào âm

7.4.3. Logarithm

Chức năng: Tính logarit tự nhiên hoặc cơ số 10.

Cấu hình Mô tả
eOR10 Natural (ln) hoặc Base10 (log10)

7.4.4. Limit

Chức năng: Giới hạn đầu vào trong khoảng lowLimit và hiLimit.


7.4.5. Ratio

Chức năng: Ánh xạ tuyến tính đầu vào X sang đầu ra Y dựa trên các điểm (x1,y1) và (x2,y2).

Cấu hình Mô tả
operation UnlimitedVav_Flow_BalanceEndpoint_Limited

7.4.6. Reset

Chức năng: Tính giá trị reset dựa trên cảm biến đầu vào.

Công thức: Output = input + ((sensor – zeroPct) / (hundredPct – zeroPct)) * resetAmount


7.4.7. Digital Filter

Chức năng: Lọc tín hiệu số với hằng số thời gian Tau.

Công thức: Ynew = Yold + (X – Yold) × (1 – e^(-t/Tau))

Cấu hình Mô tả
zeroInit TRUE: Khởi tạo về 0; FALSE: Khởi tạo bằng giá trị đầu vào đầu tiên

7.4.8. Enthalpy

Chức năng: Tính enthalpy (BTU/LB) dựa trên nhiệt độ (°F) và độ ẩm tương đối (%).

Giới hạn: Nhiệt độ: 0-120°F, Độ ẩm: 0-100%


7.4.9. Flow Velocity

Chức năng: Tính lưu lượng và vận tốc dòng khí dựa trên áp suất đo được và hệ số K.

Công thức: Flow = K × √(ΔP – Offset), Vel = Flow / Area


7.5. Control Function Blocks

7.5.1. PID

Chức năng: Bộ điều khiển PID chuẩn.

Đầu vào Mô tả
sensor Giá trị đo
setPt Điểm đặt
tr Dải tỷ lệ (Throttling Range)
intgTime Thời gian tích phân (giây)
dervTime Thời gian vi phân (giây)
deadBand Vùng chết
Action 0: Direct acting; 1: Reverse acting
bias Giá trị bù (0-100%)

Công thức: Output = Bias + Kp × Err + (Kp/Ti)∫Err dt + Kp × Td × dErr/dt


7.5.2. AIA (Adaptive Integral Action)

Chức năng: Bộ điều khiển thích nghi, hoạt động tốt hơn PID khi có độ trễ lớn.

Đầu vào Mô tả
tr Dải tỷ lệ
maxAOChange Thay đổi đầu ra tối đa mỗi chu kỳ
deadband Vùng chết

7.5.3. Cycler / Stager

Chức năng: Điều khiển bật/tắt các tầng (stages) dựa trên tín hiệu đầu vào 0-100%.

Cấu hình Mô tả
cph Cycles Per Hour (0 = Stager, 1-60 = Thermostat Cycler)
maxStgs Số tầng tối đa
hyst Độ trễ
minOn, minOff Thời gian tối thiểu bật/tắt
intstgOn, intstgOff Thời gian giữa các tầng

7.5.4. Flow Control

Chức năng: Điều khiển van VAV độc lập áp suất.

Đầu vào Mô tả
cmdFlowPercent Lệnh % từ PID nhiệt độ
sensedFlowVol Lưu lượng đo được
minFlowSetPt, maxFlowSetPt Điểm đặt lưu lượng min/max
ductArea Diện tích ống gió
motorSpeed Thời gian hành trình (giây/90°)

7.5.5. Rate Limit

Chức năng: Giới hạn tốc độ thay đổi của đầu ra.

Đầu vào Mô tả
upRate Tốc độ tăng tối đa
downRate Tốc độ giảm tối đa
startInterval Thời gian khởi động (giây)
startVal Giá trị khởi tạo

7.5.6. Stage Driver

Chức năng: Phân phối số lượng tầng được yêu cầu đến các đầu ra cụ thể.

Cấu hình Mô tả
leadLag LL_FOLO: First On Last Off; LL_FOFO: First On First Off; LL_RUNEQ: Runtime Equalization

7.6. Data Function Blocks

7.6.1. Alarm

Chức năng: Tạo cảnh báo khi giá trị vượt ngưỡng.

Đầu vào Mô tả
Value Giá trị cần giám sát
High Limit, Low Limit Ngưỡng cảnh báo
Preset Time Thời gian trễ trước khi kích hoạt (giây)
Post Time Thời gian duy trì cảnh báo tối thiểu (giây)

Ứng dụng: Giám sát nhiệt độ, áp suất vượt ngưỡng.


7.6.2. Counter

Chức năng: Đếm số lần chuyển trạng thái của đầu vào.

Đầu vào Mô tả
Input Tín hiệu đếm
Enable Cho phép đếm
Count Value Giá trị tăng/giảm mỗi lần đếm
Preset Đặt lại giá trị đếm
StopAtZero Dừng đếm tại 0

7.6.3. Override

Chức năng: Chọn đầu ra theo mức ưu tiên (1 là cao nhất, 6 là thấp nhất).

Đầu vào Mô tả
priority1Value…priority6Value Các giá trị ưu tiên
cntrlInput Giá trị điều khiển mặc định
defaultValue Giá trị mặc định nếu tất cả đều Invalid

7.6.4. Priority Override

Chức năng: Hỗ trợ điều khiển đầu ra với 16 mức ưu tiên (1 cao nhất, 16 thấp nhất).

Đầu ra Mô tả
PriorityOut Giá trị của mức ưu tiên cao nhất có giá trị hợp lệ

Ứng dụng: Tích hợp nhiều nguồn điều khiển cho cùng một đầu ra.


7.6.5. Runtime Accumulate

Chức năng: Tích lũy thời gian hoạt động.

Đầu ra Mô tả
RUNTIME_SEC Thời gian hoạt động (giây)
RUNTIME_MIN Thời gian hoạt động (phút)
RUNTIME_HRS Thời gian hoạt động (giờ)
RUNTIME_DAYS Thời gian hoạt động (ngày)

Ứng dụng: Theo dõi thời gian vận hành thiết bị để lập kế hoạch bảo trì.


7.7. Zone Arbitration Function Blocks

7.7.1. Occupancy Arbitrator

Chức năng: Xác định trạng thái hiện tại của vùng dựa trên lịch, cảm biến và lệnh ghi đè.

Đầu vào Mô tả
scheduleCurrentState Trạng thái từ lịch
WMOverride Lệnh ghi đè từ module tường
NetworkManOcc Lệnh ghi đè từ mạng
OccSensorState Trạng thái từ cảm biến hiện diện
Net wins / Last in wins Chiến lược xử lý ghi đè

Đầu ra: EFF_OCC_CURRENT_STATE (Occupied/Unoccupied/Standby/Bypass)


7.7.2. Temperature Setpoint Calculator

Chức năng: Tính toán điểm đặt nhiệt độ hiệu dụng dựa trên trạng thái vùng và thời gian phục hồi.

Đầu vào Mô tả
EffOccCurrentState Trạng thái vùng hiệu dụng
ScheduleNextState Trạng thái kế tiếp trong lịch
ScheduleTUNCOS Thời gian đến thay đổi trạng thái (phút)
HeatRampRate, CoolRampRate Tốc độ phục hồi (°F/giờ)
Setpoint Điểm đặt trung tâm hoặc bù

Đầu ra: EFF_HEAT_SETPTEFF_COOL_SETPT


7.7.3. General Set Point Calculator

Chức năng: Tính toán điểm đặt tổng quát có áp dụng reset.

Đầu vào Mô tả
effOccuCurrentState Trạng thái vùng
ResetInput Giá trị đầu vào để tính reset
OccupiedSetpoint, StandbySetpoint, UnoccupiedSetpoint Các điểm đặt theo trạng thái

7.7.4. Set Temperature Mode

Chức năng: Xác định chế độ điều khiển nhiệt độ hiệu dụng (Cool/Heat/Reheat/Emerg Heat/Off).

Đầu vào Mô tả
sysSwitch Công tắc hệ thống (Auto/Cool/Heat/Off)
cmdMode Lệnh chế độ từ mạng
supplyTemp, spaceTemp Nhiệt độ cấp và nhiệt độ vùng
effHeatSP, effCoolSP Điểm đặt nhiệt độ hiệu dụng
controlType 0: CVAHU, 1: VAV

7.8. BuiltIn Function Blocks

7.8.1. Schedule

Chức năng: Cấu hình lịch trình để xác định trạng thái Occupancy.

Đầu ra Mô tả
CURRENT_STATE Trạng thái hiện tại (Occupied/Unoccupied/Standby)
Schedule Next State Trạng thái tiếp theo
Schedule TUNCOS Thời gian đến thay đổi trạng thái (phút)

Cấu hình: 8 ngày (CN-T7, Holiday), 4 sự kiện mỗi ngày, tối đa 10 ngày lễ.


7.8.2. Conventional Wall Module

Chức năng: Giao tiếp với module tường 7 dây (T7770, TR20).

Cấu hình Mô tả
Override Type NORMAL_OVERRIDEBYAPSS_ONLY_OVERRIDEOVERRIDE_DISABLE
Bypass Time Source Fixed Parameter hoặc Variable Input

7.8.3. S-Bus Wall Module

Chức năng: Giao tiếp với module tường 2 dây (TR70, TR71, TR75) trên bus Sylk.

Cấu hình chính Mô tả
General Settings Block Name, Wall Module Address, Time Display Format
Categories and Parameters Định nghĩa các tham số hiển thị (nhiệt độ, độ ẩm, điểm đặt)
Home Screen Options Cấu hình màn hình chính
Occupancy and Override Cấu hình ghi đè trạng thái
Fan Command Cấu hình điều khiển quạt
System Status and Command Cấu hình trạng thái và lệnh hệ thống
Password Cấu hình bảo vệ bằng mật khẩu

Giới hạn: Tối đa 4 module tường S-Bus (cho TR71/TR75), 1 module cho TR70.


7.9. Các lưu ý quan trọng

  1. Số lượng Function Blocks: Theo dõi trong Resource Usage View để không vượt quá giới hạn của model.

  2. Đầu vào không kết nối: Hầu hết các khối logic coi đầu vào không kết nối là FALSE, nhưng AND/OR coi là TRUE (để không ảnh hưởng kết quả).

  3. Giá trị Invalid: Khi đầu vào Invalid, đầu ra thường cũng Invalid (trừ các trường hợp có cấu hình Ignore invalid inputs).

  4. Thời gian trễ (Delay): Các khối có trueDelay/falseDelay giúp tránh nhiễu và ổn định tín hiệu.

  5. Bộ nhớ: Mỗi Function Block tiêu tốn một lượng bộ nhớ nhất định (Float RAM, Byte RAM, Flash). Kiểm tra trong Resource Usage View.


Tổng kết Phần 7

Phần này đã cung cấp hướng dẫn chi tiết về các khối chức năng trong Honeywell SpyderTool. Bạn đã được làm quen với:

  • Analog Blocks: Xử lý tín hiệu tương tự, so sánh, lựa chọn.

  • Logic Blocks: Các phép toán logic cơ bản.

  • Math Blocks: Tính toán và xử lý số học.

  • Control Blocks: Các thuật toán điều khiển PID, AIA, Stager.

  • Data Blocks: Cảnh báo, đếm, tích lũy thời gian.

  • Zone Arbitration: Xử lý trạng thái vùng và điểm đặt nhiệt độ.

  • BuiltIn: Lịch trình và module tường.

Việc nắm vững từng khối chức năng giúp bạn xây dựng các ứng dụng điều khiển HVAC phức tạp, đáp ứng đa dạng yêu cầu của hệ thống thực tế.

By admin

Leave a Reply

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