SACA PLC Programming and Troubleshooting 5 — Questions and Answers
Question 1: A PLC program uses a CTU (Count Up) counter with a preset of 100. After the counter reaches 100, the done bit turns ON. What happens to the accumulated count if additional pulses continue to arrive?
- The counter resets to zero automatically
- The accumulated count continues to increment beyond the preset value (Correct answer)
- The counter stops and the accumulated value stays at 100
- The counter resets to zero and starts counting again
Correct answer: The accumulated count continues to increment beyond the preset value
Most PLC CTU counters continue to accumulate beyond the preset value; the done bit remains ON but the count keeps incrementing until a reset instruction clears it.
Question 2: Which communication protocol is commonly used for deterministic, real-time control communication between a PLC and servo drives on a motion control network?
- Modbus RTU over RS-232
- EtherCAT or PROFINET IRT (Correct answer)
- HTTP over standard Ethernet
- CAN open at 250 kbps
Correct answer: EtherCAT or PROFINET IRT
EtherCAT and PROFINET IRT provide isochronous, deterministic communication with sub-millisecond cycle times required for precise motion control.
Question 3: In Allen-Bradley ControlLogix terminology, what is a 'task' and how does it affect program execution?
- A task is a single ladder rung instruction
- A task is a scheduling mechanism that determines when and how often programs within it are executed (Correct answer)
- A task is a data structure for storing I/O values
- A task is a hardware configuration element for the chassis backplane
Correct answer: A task is a scheduling mechanism that determines when and how often programs within it are executed
In ControlLogix, a task (continuous, periodic, or event) defines the execution schedule for the programs assigned to it, controlling scan rates and priorities.
Question 4: A technician notices that a PLC analog input is reading 0 mA on a 4-20 mA loop when the transmitter is powered and the field device is operational. What is the MOST likely cause?
- The PLC program has a scaling error
- An open circuit in the field wiring loop (Correct answer)
- The PLC CPU is in fault mode
- The analog module needs recalibration
Correct answer: An open circuit in the field wiring loop
A 4-20 mA loop reading 0 mA indicates an open circuit, since even a failed transmitter in a live loop would typically output at least 3.6 mA as a fault signal.
Question 5: What does the IEC 61131-3 standard define?
- Hardware specifications for PLC chassis and I/O modules
- Five standard programming languages for programmable controllers (Correct answer)
- Safety integrity levels for safety-rated PLCs
- Communication protocols for industrial Ethernet networks
Correct answer: Five standard programming languages for programmable controllers
IEC 61131-3 is the international standard that defines five PLC programming languages: Ladder Diagram, Structured Text, Function Block Diagram, Instruction List, and Sequential Function Chart.
Question 6: When using Sequential Function Chart (SFC) programming, what must be true before a transition fires and the next step becomes active?
- The current step must have been active for at least one scan cycle and the transition condition must be TRUE (Correct answer)
- The transition condition must be TRUE regardless of step timing
- All steps in the SFC must be complete before any transition fires
- The transition fires automatically after a fixed 100 ms delay
Correct answer: The current step must have been active for at least one scan cycle and the transition condition must be TRUE
An SFC transition fires when the preceding step is active (for at least one scan) and the transition condition evaluates to TRUE, then deactivates the current step and activates the next.
Question 7: A PLC program experiences a major fault with error code indicating 'stack overflow.' What programming condition MOST likely caused this?
- An output coil driven by too many input contacts in a single rung
- Excessive nested subroutine calls or a recursive call chain that exceeded the call stack depth (Correct answer)
- A timer preset value set higher than the maximum allowable value
- An arithmetic overflow in a math instruction
Correct answer: Excessive nested subroutine calls or a recursive call chain that exceeded the call stack depth
A stack overflow fault occurs when subroutine calls are nested too deeply or a recursive loop is created, exhausting the CPU's call stack memory.
A PLC program uses a CTU (Count Up) counter with a preset of 100.
After the counter reaches 100, the done bit turns ON.
What happens to the accumulated count if additional pulses continue to arrive?