Allen-Bradley CompactLogix Error Code 16#00A1

Allen-Bradley PLC & VFD Major Programming

Model: CompactLogix | Code: 16#00A1

Applicable Systems
MicroLogix CompactLogix ControlLogix PowerFlex

Symptoms

The controller has detected a program fault. The OK LED turns red and the controller enters a major fault state, halting all program execution.

Possible Causes

  • Watchdog timeout: the program scan time exceeded the maximum allowed duration
  • Invalid indirect addressing: an array index was out of bounds, causing a memory access violation
  • Divide by zero in a math block when the divisor tag value was zero
  • Fault routine triggered by an I/O module fault cascading to a program fault

Troubleshooting Steps

  1. Step 1: Connect to the controller with the programming software and read the major fault code
    The fault code identifies the specific error type and location
  2. Step 2: Review the fault location in the program to identify the offending logic
    Look for indirect addressing, math operations, and timer/counter blocks near the fault
  3. Step 3: Fix the program logic: add bounds checking, divide-by-zero protection, or scan-time optimization
    Download the corrected program to the controller
  4. Step 4: Clear the major fault from the programming software and return the controller to RUN mode
    Monitor the scan time to verify it stays within limits

How to Reset

Reset: Clear the major fault from the programming software or by cycling controller power. The controller returns to RUN mode after the program is corrected.

Common Replacement Parts

  • Controller memory module: 512KB-4MB, match to model (Stores project and tags)
  • Programming software license: OEM-specific (Required for program edits)

Frequently Asked Questions

  • Q: What is a watchdog timeout?

    A safety mechanism that monitors program scan time. If the scan exceeds the timeout (typically 500ms), the controller faults to prevent uncontrolled operation.

  • Q: How do I prevent divide by zero?

    Use a comparison block to check if the divisor is non-zero before the division block. Output zero or a safe value if the divisor is zero.

  • Q: What is the maximum scan time?

    Depends on the controller model. Typical: 0.1-1ms for compact PLCs, 10-50ms for large rack PLCs. Check the manual for the specific limit.

Source: OEM Technical Manual

Category: PLC & VFD