Learning to implement Sequential Function Charts (SFC) for Pump Control using Bosch Rexroth's ctrlX WORKS / IndraWorks is a useful skill for PLC programmers working in Water & Wastewater. This guide walks through the fundamentals with clear explanations and an illustrative example that you can adapt to a simulator or test bench.
The example uses Bosch Rexroth terminology and references controller families such as ctrlX CORE XM21 and ctrlX CORE XM22. Confirm the exact instructions, data types, firmware requirements, and licensing in the current vendor documentation before choosing hardware or deploying a project.
The Sequential Function Charts (SFC) approach is particularly well-suited for Pump Control because batch processes, step-by-step operations, state machines, and complex sequential control. This combination allows you to leverage perfect for sequential processes while managing the typical challenges of Pump Control, including pressure regulation and pump sequencing.
Throughout this guide, you'll find step-by-step implementation guidance, an illustrative code example, and a verification checklist specific to Water & Wastewater. Whether you're programming your first Pump Control exercise or transitioning from another PLC platform, use the material as a starting point and validate it in your exact ctrlX WORKS / IndraWorks version and controller environment.
Bosch Rexroth ctrlX WORKS / IndraWorks for Pump Control
ctrlX WORKS / IndraWorks is a programming environment associated with Bosch Rexroth controller families such as ctrlX CORE XM21, ctrlX CORE XM22, ctrlX CORE XM42. This guide uses Sequential Function Charts (SFC) terminology from the supplied guide dataset, but controller capabilities and language support can change by model, firmware, software edition, and license.
Verify Before You Start:
- The selected controller supports the required Sequential Function Charts (SFC) constructs
- The project version matches the installed ctrlX WORKS / IndraWorks release
- Required communications, motion, safety, and simulation options are licensed
- Firmware and device-description files are compatible with the project
- The vendor manuals used for the design match the exact hardware revision
Application Planning:
For a Pump Control exercise, map the required inputs and outputs before writing logic. The example considers 5 sensor types, including Pressure transmitters, Flow meters, Level sensors, and 5 actuator types.
Control Equipment for Pump Control:
- Centrifugal pumps for high flow applications
- Positive displacement pumps for metering
- Submersible pumps for wet well applications
- Booster pump systems for pressure maintenance
Controller-family references used in this guide include:
- ctrlX CORE XM21: Confirm CPU, I/O, memory, communications, and Sequential Function Charts (SFC) support in the current selection guide
- ctrlX CORE XM22: Confirm CPU, I/O, memory, communications, and Sequential Function Charts (SFC) support in the current selection guide
- ctrlX CORE XM42: Confirm CPU, I/O, memory, communications, and Sequential Function Charts (SFC) support in the current selection guide
- IndraControl XM21: Confirm CPU, I/O, memory, communications, and Sequential Function Charts (SFC) support in the current selection guide
Hardware Selection Checklist:
- Count local and remote I/O, including planned expansion
- Measure the required task and communications update rates
- Identify memory, data-retention, diagnostics, and cybersecurity requirements
- Treat safety functions as a separate, standards-led design activity
- Confirm lifecycle status, regional availability, licensing, and support
Source and Validation Note:
This page does not represent a vendor certification or a hardware acceptance test. Use current Bosch Rexroth manuals, release notes, and safety documentation as the authority for product-specific behavior. Validate adapted logic in a simulator or isolated test setup before connecting it to equipment.
Investment Considerations:
For Pump Control projects, compare hardware, software licensing, training, engineering, test equipment, commissioning, spares, and ongoing support. Obtain current pricing and lifecycle information directly from the vendor or an authorized regional supplier.
Understanding Sequential Function Charts (SFC) for Pump Control
Sequential Function Chart (SFC) is a graphical language for programming sequential processes. It models systems as a series of steps connected by transitions, ideal for batch processes and machine sequences.
Execution Model:
Only active steps execute their actions. Transitions define conditions for moving between steps. Multiple steps can be active simultaneously in parallel branches.
Core Advantages for Pump Control:
- Perfect for sequential processes: Critical for Pump Control when handling intermediate control logic
- Clear visualization of process flow: Critical for Pump Control when handling intermediate control logic
- Easy to understand process steps: Critical for Pump Control when handling intermediate control logic
- Good for batch operations: Critical for Pump Control when handling intermediate control logic
- Simplifies complex sequences: Critical for Pump Control when handling intermediate control logic
Why Sequential Function Charts (SFC) Fits Pump Control:
Pump Control systems in Water & Wastewater typically involve:
- Sensors: Pressure transmitters for discharge and suction pressure, Flow meters (magnetic, ultrasonic, or vortex), Level transmitters for tank or wet well level
- Actuators: Variable frequency drives (VFDs) for speed control, Motor starters (DOL or soft start), Control valves for flow regulation
- Complexity: Intermediate with challenges including Preventing cavitation at low suction pressure
Control Strategies for Pump Control:
- constant: Maintain fixed speed or output
- pressure: PID control to maintain discharge pressure setpoint
- flow: PID control to maintain flow rate setpoint
Programming Fundamentals in Sequential Function Charts (SFC):
Steps:
- initialStep: Double-bordered box - starting point of sequence, active on program start
- normalStep: Single-bordered box - becomes active when preceding transition fires
- actions: Associated code that executes while step is active
Transitions:
- condition: Boolean expression that must be TRUE to advance
- firing: Transition fires when preceding step is active AND condition is TRUE
- priority: In selective branches, transitions are evaluated in defined order
ActionQualifiers:
- N: Non-stored - executes while step is active
- S: Set - sets output TRUE on step entry, remains TRUE
- R: Reset - sets output FALSE on step entry
Best Practices for Sequential Function Charts (SFC):
- Start with a clear process flow diagram before implementing SFC
- Use descriptive step names indicating what happens (e.g., Filling, Heating)
- Keep transition conditions simple - complex logic goes in action code
- Implement timeout transitions to prevent stuck sequences
- Always provide a path back to initial step for reset/restart
Common Mistakes to Avoid:
- Forgetting to include stop/abort transitions for emergency handling
- Creating deadlocks where no transition can fire
- Not handling the case where transition conditions never become TRUE
- Using S (Set) actions without corresponding R (Reset) actions
Typical Applications:
1. Bottle filling: Directly applicable to Pump Control
2. Assembly sequences: Related control patterns
3. Material handling: Related control patterns
4. Batch mixing: Related control patterns
Understanding these fundamentals prepares you to implement effective Sequential Function Charts (SFC) solutions for Pump Control using Bosch Rexroth ctrlX WORKS / IndraWorks.
Implementing Pump Control with Sequential Function Charts (SFC)
Pump control systems use PLCs to regulate liquid flow in industrial processes, water treatment, and building services. These systems manage pump operation, protect equipment, optimize energy use, and maintain process parameters.
This walkthrough demonstrates practical implementation using Bosch Rexroth ctrlX WORKS / IndraWorks and Sequential Function Charts (SFC) programming.
System Requirements:
A typical Pump Control implementation includes:
Input Devices (Sensors):
1. Pressure transmitters for discharge and suction pressure: Critical for monitoring system state
2. Flow meters (magnetic, ultrasonic, or vortex): Critical for monitoring system state
3. Level transmitters for tank or wet well level: Critical for monitoring system state
4. Temperature sensors for bearing and motor monitoring: Critical for monitoring system state
5. Vibration sensors for predictive maintenance: Critical for monitoring system state
Output Devices (Actuators):
1. Variable frequency drives (VFDs) for speed control: Primary control output
2. Motor starters (DOL or soft start): Supporting control function
3. Control valves for flow regulation: Supporting control function
4. Isolation valves (actuated for remote operation): Supporting control function
5. Check valves to prevent backflow: Supporting control function
Control Equipment:
- Centrifugal pumps for high flow applications
- Positive displacement pumps for metering
- Submersible pumps for wet well applications
- Booster pump systems for pressure maintenance
Control Strategies for Pump Control:
- constant: Maintain fixed speed or output
- pressure: PID control to maintain discharge pressure setpoint
- flow: PID control to maintain flow rate setpoint
- level: Control tank/wet well level within band
Implementation Steps:
Step 1: Characterize pump curve and system curve
In ctrlX WORKS / IndraWorks, characterize pump curve and system curve.
Step 2: Size VFD for application (constant torque vs. variable torque)
In ctrlX WORKS / IndraWorks, size vfd for application (constant torque vs. variable torque).
Step 3: Implement primary control loop (pressure, flow, or level)
In ctrlX WORKS / IndraWorks, implement primary control loop (pressure, flow, or level).
Step 4: Add pump protection logic (minimum flow, temperature, seal)
In ctrlX WORKS / IndraWorks, add pump protection logic (minimum flow, temperature, seal).
Step 5: Program lead/lag sequencing with alternation
In ctrlX WORKS / IndraWorks, program lead/lag sequencing with alternation.
Step 6: Implement soft start/stop ramps for smooth operation
In ctrlX WORKS / IndraWorks, implement soft start/stop ramps for smooth operation.
Bosch Rexroth Function Design:
Rexroth engineers lean heavily on reusable function blocks packaged as ctrlX libraries. The mapp-technology-equivalent SDK apps expose motion-profiled FBs, recipe-driven parameter handlers, and cockpit widgets as pre-built components. OEM machine builders maintain private app catalogues for their machine families, with versioned FBs that can be swapped between machine variants without rewiring upstream code. IEC 61131-3 OOP extensions (classes, interfaces, methods) are used in more advanced teams but are optional.
Common Challenges and Solutions:
1. Preventing cavitation at low suction pressure
- Solution: Sequential Function Charts (SFC) addresses this through Perfect for sequential processes.
2. Managing minimum flow requirements
- Solution: Sequential Function Charts (SFC) addresses this through Clear visualization of process flow.
3. Coordinating VFD speed with system pressure
- Solution: Sequential Function Charts (SFC) addresses this through Easy to understand process steps.
4. Handling pump cycling with varying demand
- Solution: Sequential Function Charts (SFC) addresses this through Good for batch operations.
Safety Considerations:
- Dry run protection using flow or level monitoring
- Overtemperature protection for motor and bearings
- Overload protection through current monitoring
- Vibration trips for mechanical failure detection
- Emergency stop with proper system depressurization
Performance Metrics:
- Task and I/O timing: Record minimum, average, and maximum values under a defined test load
- Accuracy: Define an acceptable tolerance and compare it with calibrated reference measurements
- Throughput: Count completed cycles over a fixed interval and record rejected or incomplete cycles
- Fault response: Measure detection, safe-state, alarm, and recovery behavior for each test case
- Resource use: Record memory, communications load, and diagnostic-buffer behavior
Bosch Rexroth Diagnostic Tools:
ctrlX WORKS Trace tool — multi-variable waveform logging at up to 1 ms sample rate,Data Layer Explorer — browse every runtime variable in a hierarchical tree with live values,Web-based diagnostics interface — device-level health, CPU and memory utilisation,IndraWorks MotionManager — axis commissioning, tuning plots, and envelope monitoring,ctrlX I/O Engineer — field-bus topology view with per-slave diagnostic status,Integrated Git history for project files with visual diff between versions,Wireshark integration for EtherCAT and Profinet frame capture and analysis,Linux journalctl access on ctrlX CORE for controller-side system log inspection,REST API query tools (Postman, curl) for runtime variable inspection during development,SSH access to the ctrlX controller for deep diagnostics when support escalation is required
Use the monitoring and diagnostic functions available in your ctrlX WORKS / IndraWorks version, and record the software, firmware, hardware, workload, and test procedure with every result.
Bosch Rexroth Sequential Function Charts (SFC) Example for Pump Control
Illustrative Sequential Function Charts (SFC) example for Pump Control using Bosch Rexroth terminology. Adapt the syntax to your ctrlX WORKS / IndraWorks release, compile it, and verify it in an isolated test environment before use on equipment.
// Bosch Rexroth ctrlX WORKS / IndraWorks - Pump Control Control
// Sequential Function Charts (SFC) Implementation for Water & Wastewater
// Bosch Rexroth projects in ctrlX WORKS follow IEC 61131-3 nam
// ============================================
// Variable Declarations
// ============================================
VAR
bEnable : BOOL := FALSE;
bEmergencyStop : BOOL := FALSE;
rPressuretransmitters : REAL;
rCentrifugalpumps : REAL;
END_VAR
// ============================================
// Input Conditioning - Pressure transmitters for discharge and suction pressure
// ============================================
// Standard input processing
IF rPressuretransmitters > 0.0 THEN
bEnable := TRUE;
END_IF;
// ============================================
// Safety Interlock - Dry run protection using flow or level monitoring
// ============================================
IF bEmergencyStop THEN
rCentrifugalpumps := 0.0;
bEnable := FALSE;
END_IF;
// ============================================
// Main Pump Control Control Logic
// ============================================
IF bEnable AND NOT bEmergencyStop THEN
// Pump control systems use PLCs to regulate liquid flow in ind
rCentrifugalpumps := rPressuretransmitters * 1.0; (* Illustrative scaling only *)
// Process monitoring
// Add specific control logic here
ELSE
rCentrifugalpumps := 0.0;
END_IF;Code Explanation:
- 1.Sequential Function Charts (SFC) structure organized for a Pump Control training example
- 2.Input conditioning handles Pressure transmitters for discharge and suction pressure signals
- 3.Safety interlock ensures Dry run protection using flow or level monitoring always takes priority
- 4.Main control implements Pump control systems use PLCs to regulat
- 5.Adapt the scan-cycle assumptions to the selected ctrlX CORE XM21 task configuration and verify them by measurement
Best Practices
- ✓Follow Bosch Rexroth naming conventions: Bosch Rexroth projects in ctrlX WORKS follow IEC 61131-3 naming with dot notatio
- ✓Bosch Rexroth function design: Rexroth engineers lean heavily on reusable function blocks packaged as ctrlX lib
- ✓Data organization: Rexroth projects use IEC 61131-3 global variable lists and PROGRAM VAR sections
- ✓Sequential Function Charts (SFC): Start with a clear process flow diagram before implementing SFC
- ✓Sequential Function Charts (SFC): Use descriptive step names indicating what happens (e.g., Filling, Heating)
- ✓Sequential Function Charts (SFC): Keep transition conditions simple - complex logic goes in action code
- ✓Pump Control: Use PID with derivative on PV for pressure control
- ✓Pump Control: Implement soft start ramps even with VFD (200-500ms)
- ✓Pump Control: Add flow proving before considering pump operational
- ✓Debug with ctrlX WORKS / IndraWorks: Use ctrlX WORKS debugger breakpoints in ST code rather than print-styl
- ✓Safety: Dry run protection using flow or level monitoring
- ✓Use a compatible simulator or isolated test rig to test Pump Control logic before deployment
Common Pitfalls to Avoid
- ⚠Sequential Function Charts (SFC): Forgetting to include stop/abort transitions for emergency handling
- ⚠Sequential Function Charts (SFC): Creating deadlocks where no transition can fire
- ⚠Sequential Function Charts (SFC): Not handling the case where transition conditions never become TRUE
- ⚠Bosch Rexroth common error: Data Layer path typos — paths are case-sensitive and silently return null when m
- ⚠Pump Control: Preventing cavitation at low suction pressure
- ⚠Pump Control: Managing minimum flow requirements
- ⚠Neglecting to validate Pressure transmitters for discharge and suction pressure leads to control errors
- ⚠Insufficient comments make Sequential Function Charts (SFC) programs unmaintainable over time
Related Certifications
Applying Sequential Function Charts (SFC) to Pump Control using Bosch Rexroth ctrlX WORKS / IndraWorks requires understanding the platform, the process, and the project's acceptance criteria. This guide has covered implementation structure, an illustrative code example, verification practices, and common pitfalls for a intermediate Pump Control exercise.
Use the practices outlined here to create a design that can be reviewed and tested. Define performance targets in the project requirements and confirm them with repeatable measurements.
Next Steps:
1. Check Sources: Read the current ctrlX WORKS / IndraWorks help, controller manual, release notes, and relevant standards
2. Practice Safely: Adapt the example in a simulator or isolated training setup
3. Review: Have the I/O map, state behavior, faults, and recovery steps reviewed
4. Test: Record normal, boundary, fault, restart, and communications test results
Sequential Function Charts (SFC) Foundation:
Sequential Function Chart (SFC) is a graphical language for programming sequential processes. It models systems as a series of steps connected by tran...
Project duration depends on scope, reviews, hardware availability, software and firmware versions, testing, commissioning, and site constraints. Remember: Use PID with derivative on PV for pressure control
For further learning, explore related topics including Assembly sequences, Wastewater treatment, and Bosch Rexroth platform-specific features for Pump Control optimization.