Learn PLCs free
Intermediate20 min readBuilding Automation

Unitronics Structured Text for HVAC Control

Learn Structured Text programming for HVAC Control using Unitronics VisiLogic / UniLogic. Includes code examples, best practices, and step-by-step implementation guide for Building Automation applications.

πŸ’»
Platform
VisiLogic / UniLogic
πŸ“Š
Complexity
Intermediate
⏱️
Project Duration
2-4 weeks

Implementing Structured Text for HVAC Control using Unitronics VisiLogic / UniLogic requires translating theory into working code that performs reliably in production. This hands-on guide focuses on practical implementation steps, real code examples, and the pragmatic decisions that make the difference between successful and problematic HVAC Control deployments.

Unitronics's platform serves Moderate - US small-integrator market, OEM machines, building automation, providing the proven foundation for HVAC Control implementations. The VisiLogic / UniLogic environment supports 3 programming languages, with Structured Text being particularly effective for HVAC Control because complex calculations, data manipulation, advanced control algorithms, and when code reusability is important. Practical implementation requires understanding not just language syntax, but how Unitronics's execution model handles 5 sensor inputs and 5 actuator outputs in real-time.

Real HVAC Control projects in Building Automation face practical challenges including energy optimization, zone control coordination, and integration with existing systems. Success requires balancing powerful for complex logic against steeper learning curve, while meeting 2-4 weeks project timelines typical for HVAC Control implementations.

This guide provides step-by-step implementation guidance, complete working examples tested on Jazz 2, practical design patterns, and real-world troubleshooting scenarios. You'll learn the pragmatic approaches that experienced integrators use to deliver reliable HVAC Control systems on schedule and within budget.

Unitronics VisiLogic / UniLogic for HVAC Control

Unitronics takes a distinctive approach to PLC programming: every controller ships with an integrated colour touchscreen HMI, and the development tool handles PLC logic and HMI design in a single workspace. VisiLogic is the legacy tool for the Vision, Samba, and Jazz product families; UniLogic is the current-generation environment for the UniStream line. Both are free to download and include a complete built-in simulator covering PLC logic, HMI screens, alarms, recipes, and data tables β€” the sim...

Platform Strengths for HVAC Control:

  • Combined PLC + HMI in one unit reduces panel cost

  • Free VisiLogic and UniLogic IDEs

  • Built-in simulator with both PLC and HMI simulation

  • Strong US small-integrator community


Unique ${brand.software} Features:

  • Combined PLC + HMI in one unit across Jazz, Samba, Vision, and UniStream

  • Free VisiLogic (legacy) and UniLogic (current) IDEs

  • Built-in simulator covering PLC logic, HMI, alarms, data tables, and recipes

  • Integrated data sampling and trend logging without separate SCADA


Key Capabilities:

The VisiLogic / UniLogic environment excels at HVAC Control applications through its combined plc + hmi in one unit reduces panel cost. This is particularly valuable when working with the 5 sensor types typically found in HVAC Control systems, including Temperature sensors (RTD, Thermocouple), Humidity sensors, Pressure sensors.

Control Equipment for HVAC Control:

  • Air handling units (AHUs) with supply and return fans

  • Variable air volume (VAV) boxes with reheat

  • Chillers and cooling towers for central cooling

  • Boilers and heat exchangers for heating


Unitronics's controller families for HVAC Control include:

  • Jazz 2: Suitable for intermediate HVAC Control applications

  • Samba 7": Suitable for intermediate HVAC Control applications

  • Vision V350: Suitable for intermediate HVAC Control applications

  • Vision V570: Suitable for intermediate HVAC Control applications

Hardware Selection Guidance:

CPU selection across Unitronics ranges from the Jazz 2 micro series (tiny applications, basic motor control, simple process monitoring with 10-20 I/O) through Samba 7" (small machine control with touchscreen HMI), Vision V350/V570 (medium machinery with larger HMI), and UniStream 7" / 15.6" (flagship combined PLC+HMI for mid-to-high complexity applications with advanced features like UniCloud, cel...

Industry Recognition:

Moderate - US small-integrator market, OEM machines, building automation. Unitronics' combined PLC+HMI controllers are uncommon in high-volume automotive manufacturing but appear in automotive tier-2 and tier-3 supplier shops, single-machine workcells, and after-market test fixtures. The cost advantage and single-unit PLC+HMI approach makes Unitronics attractive for small...

Investment Considerations:

With $$ pricing, Unitronics positions itself in the mid-range segment. For HVAC Control projects requiring intermediate skill levels and 2-4 weeks development time, the total investment includes hardware, software licensing, training, and ongoing support.

Understanding Structured Text for HVAC Control

Structured Text (ST) is a high-level, text-based programming language defined in IEC 61131-3. It resembles Pascal and provides powerful constructs for complex algorithms, calculations, and data manipulation.

Execution Model:

Code executes sequentially from top to bottom within each program unit. Variables maintain state between scan cycles unless explicitly reset.

Core Advantages for HVAC Control:

  • Powerful for complex logic: Critical for HVAC Control when handling intermediate control logic

  • Excellent code reusability: Critical for HVAC Control when handling intermediate control logic

  • Compact code representation: Critical for HVAC Control when handling intermediate control logic

  • Good for algorithms and calculations: Critical for HVAC Control when handling intermediate control logic

  • Familiar to software developers: Critical for HVAC Control when handling intermediate control logic


Why Structured Text Fits HVAC Control:

HVAC Control systems in Building Automation typically involve:

  • Sensors: Temperature sensors (RTD, thermistors, thermocouples) for zone and supply/return monitoring, Humidity sensors (capacitive or resistive) for moisture control, CO2 sensors for demand-controlled ventilation

  • Actuators: Variable frequency drives (VFDs) for fan and pump speed control, Modulating control valves (2-way and 3-way) for heating/cooling coils, Damper actuators (0-10V or 4-20mA) for air flow control

  • Complexity: Intermediate with challenges including Tuning PID loops for slow thermal processes without causing oscillation


Control Strategies for HVAC Control:

  • zoneTemperature: Cascaded PID control where zone temperature error calculates supply air temperature setpoint, which then modulates cooling/heating valves or VAV damper position

  • supplyAirTemperature: PID control of cooling coil valve, heating coil valve, or economizer dampers to maintain supply air temperature setpoint

  • staticPressure: PID control of supply fan VFD speed to maintain duct static pressure setpoint for proper VAV box operation


Programming Fundamentals in Structured Text:

Variables:
- declaration: VAR / VAR_INPUT / VAR_OUTPUT / VAR_IN_OUT / VAR_GLOBAL sections
- initialization: Variables can be initialized at declaration: Counter : INT := 0;
- constants: VAR CONSTANT section for read-only values

Operators:
- arithmetic: + - * / MOD (modulo)
- comparison: = <> < > <= >=
- logical: AND OR XOR NOT

ControlStructures:
- if: IF condition THEN statements; ELSIF condition THEN statements; ELSE statements; END_IF;
- case: CASE selector OF value1: statements; value2: statements; ELSE statements; END_CASE;
- for: FOR index := start TO end BY step DO statements; END_FOR;

Best Practices for Structured Text:

  • Use meaningful variable names with consistent naming conventions

  • Initialize all variables at declaration to prevent undefined behavior

  • Use enumerated types for state machines instead of magic numbers

  • Break complex expressions into intermediate variables for readability

  • Use functions for reusable calculations and function blocks for stateful operations


Common Mistakes to Avoid:

  • Using = instead of := for assignment (= is comparison)

  • Forgetting semicolons at end of statements

  • Integer division truncation - use REAL for decimal results

  • Infinite loops from incorrect WHILE/REPEAT conditions


Typical Applications:

1. PID control: Directly applicable to HVAC Control
2. Recipe management: Related control patterns
3. Statistical calculations: Related control patterns
4. Data logging: Related control patterns

Understanding these fundamentals prepares you to implement effective Structured Text solutions for HVAC Control using Unitronics VisiLogic / UniLogic.

Implementing HVAC Control with Structured Text

HVAC (Heating, Ventilation, and Air Conditioning) control systems use PLCs to regulate temperature, humidity, and air quality in buildings and industrial facilities. These systems balance comfort, energy efficiency, and equipment longevity through sophisticated control algorithms.

This walkthrough demonstrates practical implementation using Unitronics VisiLogic / UniLogic and Structured Text programming.

System Requirements:

A typical HVAC Control implementation includes:

Input Devices (Sensors):
1. Temperature sensors (RTD, thermistors, thermocouples) for zone and supply/return monitoring: Critical for monitoring system state
2. Humidity sensors (capacitive or resistive) for moisture control: Critical for monitoring system state
3. CO2 sensors for demand-controlled ventilation: Critical for monitoring system state
4. Pressure sensors for duct static pressure and building pressurization: Critical for monitoring system state
5. Occupancy sensors (PIR, ultrasonic) for demand-based operation: Critical for monitoring system state

Output Devices (Actuators):
1. Variable frequency drives (VFDs) for fan and pump speed control: Primary control output
2. Modulating control valves (2-way and 3-way) for heating/cooling coils: Supporting control function
3. Damper actuators (0-10V or 4-20mA) for air flow control: Supporting control function
4. Compressor contactors and staging relays: Supporting control function
5. Humidifier and dehumidifier control outputs: Supporting control function

Control Equipment:

  • Air handling units (AHUs) with supply and return fans

  • Variable air volume (VAV) boxes with reheat

  • Chillers and cooling towers for central cooling

  • Boilers and heat exchangers for heating


Control Strategies for HVAC Control:

  • zoneTemperature: Cascaded PID control where zone temperature error calculates supply air temperature setpoint, which then modulates cooling/heating valves or VAV damper position

  • supplyAirTemperature: PID control of cooling coil valve, heating coil valve, or economizer dampers to maintain supply air temperature setpoint

  • staticPressure: PID control of supply fan VFD speed to maintain duct static pressure setpoint for proper VAV box operation


Implementation Steps:

Step 1: Document all zones with temperature requirements and occupancy schedules

In VisiLogic / UniLogic, document all zones with temperature requirements and occupancy schedules.

Step 2: Create I/O list with all sensors, actuators, and their signal types

In VisiLogic / UniLogic, create i/o list with all sensors, actuators, and their signal types.

Step 3: Define setpoints, operating limits, and alarm thresholds

In VisiLogic / UniLogic, define setpoints, operating limits, and alarm thresholds.

Step 4: Implement zone temperature control loops with anti-windup

In VisiLogic / UniLogic, implement zone temperature control loops with anti-windup.

Step 5: Program equipment sequencing with proper lead-lag rotation

In VisiLogic / UniLogic, program equipment sequencing with proper lead-lag rotation.

Step 6: Add economizer logic with lockouts for high humidity conditions

In VisiLogic / UniLogic, add economizer logic with lockouts for high humidity conditions.


Unitronics Function Design:

Function block design in Unitronics uses user-defined FBs in UniLogic (more limited in VisiLogic). Extensive vendor-provided helper FBs cover common tasks (PID, motion, communication, HMI utilities). OEM machine builders typically maintain private FB libraries for their common machine patterns, though code reuse is less mature than in mainstream PLC ecosystems.

Common Challenges and Solutions:

1. Tuning PID loops for slow thermal processes without causing oscillation

  • Solution: Structured Text addresses this through Powerful for complex logic.


2. Preventing simultaneous heating and cooling which wastes energy

  • Solution: Structured Text addresses this through Excellent code reusability.


3. Managing zone interactions in open-plan spaces

  • Solution: Structured Text addresses this through Compact code representation.


4. Balancing fresh air requirements with energy efficiency

  • Solution: Structured Text addresses this through Good for algorithms and calculations.


Safety Considerations:

  • Freeze protection for coils with low-limit thermostats and valve positioning

  • High-limit safety shutoffs for heating equipment

  • Smoke detector integration for fan shutdown and damper closure

  • Fire/smoke damper monitoring and control

  • Emergency ventilation modes for hazardous conditions


Performance Metrics:

  • Scan Time: Optimize for 5 inputs and 5 outputs

  • Memory Usage: Efficient data structures for Jazz 2 capabilities

  • Response Time: Meeting Building Automation requirements for HVAC Control

Unitronics Diagnostic Tools:

UniLogic (current) and VisiLogic (legacy) integrated debuggers with breakpoints,Built-in simulator covering PLC logic, HMI screens, alarms, recipes, and data tables,Web visualisation for UniStream β€” remote HMI viewing without additional software,SD card logging with PC-side export tools for offline trend analysis,Modbus RTU/TCP transaction logging built into the IDE,Controller status monitor β€” CPU load, scan time, memory usage,HMI event logger capturing operator actions for audit purposes,CAN bus diagnostic tools for CANopen-equipped models,Remote support tool β€” Unitronics' own screen-sharing for technical support,User community forum with active troubleshooting discussions

Unitronics's VisiLogic / UniLogic provides tools for performance monitoring and optimization, essential for achieving the 2-4 weeks development timeline while maintaining code quality.

Unitronics Structured Text Example for HVAC Control

Complete working example demonstrating Structured Text implementation for HVAC Control using Unitronics VisiLogic / UniLogic. Follows Unitronics naming conventions. Tested on Jazz 2 hardware.

(* Unitronics VisiLogic / UniLogic - HVAC Control Control *)
(* Structured Text Implementation for Building Automation *)
(* Unitronics projects use IDE-managed tag names rather than raw memory a *)

PROGRAM PRG_HVAC_CONTROL_Control

VAR
    (* State Machine Variables *)
    eState : E_HVAC_CONTROL_States := IDLE;
    bEnable : BOOL := FALSE;
    bFaultActive : BOOL := FALSE;

    (* Timers *)
    tonDebounce : TON;
    tonProcessTimeout : TON;
    tonFeedbackCheck : TON;

    (* Counters *)
    ctuCycleCounter : CTU;

    (* Process Variables *)
    rTemperaturesensorsRTDThermocouple : REAL := 0.0;
    rVariablefrequencydrivesVFDs : REAL := 0.0;
    rSetpoint : REAL := 100.0;
END_VAR

VAR CONSTANT
    (* Building Automation Process Parameters *)
    C_DEBOUNCE_TIME : TIME := T#500MS;
    C_PROCESS_TIMEOUT : TIME := T#30S;
    C_BATCH_SIZE : INT := 50;
END_VAR

(* Input Conditioning *)
tonDebounce(IN := bStartButton, PT := C_DEBOUNCE_TIME);
bEnable := tonDebounce.Q AND NOT bEmergencyStop AND bSafetyOK;

(* Main State Machine - Pattern: State machines are commonly implemented  *)
CASE eState OF
    IDLE:
        rVariablefrequencydrivesVFDs := 0.0;
        ctuCycleCounter(RESET := TRUE);
        IF bEnable AND rTemperaturesensorsRTDThermocouple > 10.0 THEN
            eState := STARTING;
        END_IF;

    STARTING:
        (* Ramp up output - Gradual start *)
        rVariablefrequencydrivesVFDs := MIN(rVariablefrequencydrivesVFDs + 5.0, rSetpoint);
        IF rVariablefrequencydrivesVFDs >= rSetpoint THEN
            eState := RUNNING;
        END_IF;

    RUNNING:
        (* HVAC Control active - HVAC (Heating, Ventilation, and Air Conditioning)  *)
        tonProcessTimeout(IN := TRUE, PT := C_PROCESS_TIMEOUT);
        ctuCycleCounter(CU := bCyclePulse, PV := C_BATCH_SIZE);

        IF ctuCycleCounter.Q THEN
            eState := COMPLETE;
        ELSIF tonProcessTimeout.Q THEN
            bFaultActive := TRUE;
            eState := FAULT;
        END_IF;

    COMPLETE:
        rVariablefrequencydrivesVFDs := 0.0;
        (* Log production data - Data logging uses UniLogic's Data Samplers β€” configured triggers (time-based or event-based) write structured records to Data Tables or SD card in CSV format. Exported files can be pushed via FTP or email. For cloud integration, UniCloud provides managed data ingestion. Simpler VisiLogic projects use HMI-triggered SD writes via custom ladder code. *)
        eState := IDLE;

    FAULT:
        rVariablefrequencydrivesVFDs := 0.0;
        (* Alarm handling uses UniLogic's built-in Alarm Manager β€” configure alarm conditions in tables with severity, message text, and logging behaviour, and the engine handles detection, acknowledgement, history, and HMI display without custom code. VisiLogic uses a simpler alarm approach via HMI event handlers. *)
        IF bFaultReset AND NOT bEmergencyStop THEN
            bFaultActive := FALSE;
            eState := IDLE;
        END_IF;
END_CASE;

(* Safety Override - Always executes *)
IF bEmergencyStop OR NOT bSafetyOK THEN
    rVariablefrequencydrivesVFDs := 0.0;
    eState := FAULT;
    bFaultActive := TRUE;
END_IF;

END_PROGRAM

Code Explanation:

  • 1.Enumerated state machine (State machines are commonly implemented in ladder with step-counter registers or in ST using CASE structures with named state constants. UniLogic's HMI graphical bindings make state-to-screen visualisation straightforward β€” a single state variable drives both logic and operator screen transitions. SFC is not a primary language on Unitronics; state logic is typically CASE or ladder.) for clear HVAC Control sequence control
  • 2.Constants define Building Automation-specific parameters: cycle time 30s, batch size
  • 3.Input conditioning with debounce timer prevents false triggers in industrial environment
  • 4.STARTING state implements soft-start ramp - prevents mechanical shock
  • 5.Process timeout detection identifies stuck conditions - critical for reliability
  • 6.Safety override section executes regardless of state - Unitronics best practice for intermediate systems

Best Practices

  • βœ“Follow Unitronics naming conventions: Unitronics projects use IDE-managed tag names rather than raw memory addressing.
  • βœ“Unitronics function design: Function block design in Unitronics uses user-defined FBs in UniLogic (more limi
  • βœ“Data organization: Unitronics uses its own tag database concept rather than IEC-standard data block
  • βœ“Structured Text: Use meaningful variable names with consistent naming conventions
  • βœ“Structured Text: Initialize all variables at declaration to prevent undefined behavior
  • βœ“Structured Text: Use enumerated types for state machines instead of magic numbers
  • βœ“HVAC Control: Use slow integral action for temperature loops to prevent hunting
  • βœ“HVAC Control: Implement anti-windup to prevent integral buildup during saturation
  • βœ“HVAC Control: Add rate limiting to outputs to prevent actuator wear
  • βœ“Debug with VisiLogic / UniLogic: Use the built-in simulator to reproduce issues before hardware visit
  • βœ“Safety: Freeze protection for coils with low-limit thermostats and valve positioning
  • βœ“Use VisiLogic / UniLogic simulation tools to test HVAC Control logic before deployment

Common Pitfalls to Avoid

  • ⚠Structured Text: Using = instead of := for assignment (= is comparison)
  • ⚠Structured Text: Forgetting semicolons at end of statements
  • ⚠Structured Text: Integer division truncation - use REAL for decimal results
  • ⚠Unitronics common error: VisiLogic-to-UniLogic migration issues β€” not all projects convert cleanly
  • ⚠HVAC Control: Tuning PID loops for slow thermal processes without causing oscillation
  • ⚠HVAC Control: Preventing simultaneous heating and cooling which wastes energy
  • ⚠Neglecting to validate Temperature sensors (RTD, thermistors, thermocouples) for zone and supply/return monitoring leads to control errors
  • ⚠Insufficient comments make Structured Text programs unmaintainable over time

Related Certifications

πŸ†Unitronics Certified Integrator
πŸ†UniLogic Developer Training
πŸ†Advanced Unitronics Programming Certification

Mastering Structured Text for HVAC Control applications using Unitronics VisiLogic / UniLogic requires understanding both the platform's capabilities and the specific demands of Building Automation. This guide has provided comprehensive coverage of implementation strategies, working code examples, best practices, and common pitfalls to help you succeed with intermediate HVAC Control projects.

Unitronics's 1% market share and moderate - us small-integrator market, oem machines, building automation demonstrate the platform's capability for demanding applications. The platform excels in Building Automation applications where HVAC Control reliability is critical.

By following the practices outlined in this guideβ€”from proper program structure and Structured Text best practices to Unitronics-specific optimizationsβ€”you can deliver reliable HVAC Control systems that meet Building Automation requirements.

Next Steps for Professional Development:

1. Certification: Pursue Unitronics Certified Integrator to validate your Unitronics expertise
2. Advanced Training: Consider UniLogic Developer Training for specialized Building Automation applications
3. Hands-on Practice: Build HVAC Control projects using Jazz 2 hardware
4. Stay Current: Follow VisiLogic / UniLogic updates and new Structured Text features

Structured Text Foundation:

Structured Text (ST) is a high-level, text-based programming language defined in IEC 61131-3. It resembles Pascal and provides powerful constructs for...

The 2-4 weeks typical timeline for HVAC Control projects will decrease as you gain experience with these patterns and techniques. Remember: Use slow integral action for temperature loops to prevent hunting

For further learning, explore related topics including Recipe management, Hospital environmental systems, and Unitronics platform-specific features for HVAC Control optimization.