Diagnose and resolve common logic errors, sequence deadlocks, timer stalls, and PLC compiler warnings in AutomationView.
| Symptom | Root Cause | Resolution |
|---|---|---|
| Step remains active, never advances | Upstream condition evaluates to FALSE or sensor polarity inverted (NO vs NC) |
Check live condition in Variables sidebar; verify physical sensor wiring (e.g. bSensor vs NOT bSensor). |
| Emulation fails to start (F5) | Missing initial step (StepType.INITIAL) in .seq file |
Press I on canvas or declare StepType.INITIAL on the starting step. |
| Multiple steps active unexpectedly | Simultaneous convergence (AND) entered without matching simultaneous divergence | Ensure parallel branches are enclosed between double horizontal lines (=). |
| Output stays energized after step turns off | Action configured with S (Set) qualifier without a downstream R (Reset) action |
Attach an R action to the appropriate deactivation step, or change to N (Non-stored). |
Timer .Q never turns TRUE |
Step is deactivating before timer duration completes, resetting the TON timer |
Use a latched qualifier or ensure the step remains active for the full duration. |
| Diagnostic Code / Error | Meaning | How to Fix |
|---|---|---|
ERR_DUPLICATE_ADDRESS |
Two variables mapped to the same physical bit address (e.g. %IX0.0) |
Run AutomationView: Assign Addresses Automatically or manually resolve address collision in Variables panel. |
ERR_UNASSIGNED_IO |
Variable declared as INPUT or OUTPUT has no assigned channel |
Assign address manually or configure additional I/O modules in machine.machine. |
WARN_UNREACHABLE_STEP |
Step has no incoming transitions from an initial step | Connect an incoming transition or delete the orphan step. |
WARN_UNCLOSED_BRANCH |
Alternative OR divergence branches do not converge before end of sequence | Connect branch paths to a common downstream convergence transition. |
| Target Platform | Error Symptom | Fix |
|---|---|---|
| Siemens TIA Portal | SCL compilation error: "Block already exists" | In TIA Portal, delete existing DB instance before generating blocks from updated .scl source. |
| Rockwell Studio 5000 | L5X import error: "Duplicate tag name" | Verify controller tags vs program tags scope in AutomationView before exporting .L5X. |
| CODESYS V3.5 | PLCopen XML schema validation failed | Update the CODESYS extension to the latest version and verify all compound datatypes. |