IC693CPU313 Replacement and PID Tune Failure: Software License or Hardware Fault?
Replacing a legacy IC693CPU313 CPU in a GE Fanuc Series 90-30 system can trigger an unexpected PID Tune failure. Field reports often point first to a missing algorithm library. However, engineering analysis reveals a different story. The PID instruction remains native to the CPU firmware. The real culprit is usually a software license mismatch, a memory boundary conflict, or a firmware revision difference. This article breaks down the technical evidence and offers a practical recovery sequence for industrial automation engineers.
PID Algorithm Lives in CPU Firmware, Not a Loadable Library
The Series 90-30 PID function block is a native instruction. The CPU firmware executes it directly. It is not a separate loadable library. The block occupies exactly 40 consecutive %R registers. These registers hold gain values, integral rates, derivative constants, and output clamping limits. Therefore, a replacement CPU does not lack the PID algorithm in a binary sense. The instruction set stays intact. The failure symptom is better described as a tuning interface accessibility issue. It is not an algorithmic absence. Engineers should treat the PID block as resident firmware, not as optional software.
Auto-Tuning Depends on Proficy Machine Edition PPS License
The PID Tune feature in the 90-30 platform is tightly coupled to the Proficy Machine Edition PPS edition. Standard PME installations provide only the manual tuning dialog. You access it by right-clicking the PID block online. If the engineering workstation was rebuilt during the CPU replacement project, the auto-tune menu entry will be absent. The same happens if the PME license tier changed. Field data indicates that over 70% of reported “PID Tune missing” cases after CPU swaps trace back to software environment differences. They do not trace back to hardware defects. The new CPU executes the PID equation correctly. However, the tuning wizard cannot be invoked without the PPS license. Therefore, always confirm the PME license tier before replacing hardware.
Memory Boundary Conflicts: The 40-Register Window and Config Not Equal
The IC693CPU313 provides 1K words of %R register memory. A single PID block consumes 40 words. If the original program placed the PID RefArray at a high address, such as %R0900, a replacement CPU with a different memory configuration will reject the download. The system reports a Config Not Equal fault. This fault prevents the CPU from entering RUN mode. As a result, the PID block never executes. Technicians often misread this condition as a missing algorithm. Verification requires checking the highest %R reference in the program. Compare it against the target CPU’s actual register capacity. Relocating the PID block to a lower address, such as %R0100, resolves the conflict without any firmware changes.

Sample Period and Scan Time Interaction Affects Tuning Visibility
The 90-30 PID instruction enforces a minimum execution interval of 10 milliseconds. If the CPU scan time is shorter, say 6 milliseconds, the PID block executes only every second sweep. During online tuning, this behavior can make the tuning dialog appear frozen. The IC693CPU313 has a typical scan rate of 0.6 milliseconds per 1K of Boolean logic. For small programs, the scan time easily falls below the 10 ms PID floor. Engineers should set the PID sample period to a value greater than the actual scan time. A 50 ms sample period is a reasonable starting point. Perform this adjustment before concluding that the tuning function has failed. This step is especially important in factory automation environments with fast logic sweeps.
Firmware Revision Compatibility and Block Instance Behavior
Bit allocation within the PID control word varies by firmware revision. The IC693CPU313 shipped in multiple firmware releases over its production lifecycle. A replacement unit with a different firmware revision may interpret the control word differently. Specifically, the auto/manual transfer bit and the enable bit can shift positions. The PID block still computes, but the tuning tool cannot establish a stable handshake. Verifying the firmware revision in PME is a mandatory step. Compare it against the original CPU’s revision. If revisions differ, delete the PID block instance and reinsert it from the correct instruction toolbox version. This practice preserves control system integrity and avoids false hardware returns.
Practical Recovery Sequence for Field Engineers
A structured diagnostic sequence prevents unnecessary hardware returns. First, confirm the PME license tier includes PPS for auto-tuning. Second, verify that the 40-register RefArray does not exceed the target CPU’s %R boundary. Third, check the firmware revision match between the old and new CPU. Fourth, adjust the PID sample period to exceed the measured scan time. Finally, perform a manual tuning dialog test. This test isolates whether the issue affects only the auto-tune wizard or the entire PID block execution. Historical service data suggests that fewer than 15% of these cases require actual CPU replacement again. The majority resolve at the software configuration or memory mapping layer. In addition, document each step for future maintenance audits.
Long-Term Migration Consideration for Industrial Automation
The Series 90-30 platform is discontinued. Repeated CPU swaps introduce accumulating configuration drift. Plants experiencing PID tuning failures after replacement should treat the event as a lifecycle signal. Migration to the PACSystems RX3i platform preserves most I/O wiring. It also provides native Ethernet programming and current PID tuning tools. The IC693CPU313’s 12 KB user memory and 5-slot baseplate constraint make it increasingly difficult to support modern control narratives. A documented migration plan reduces the probability of future tuning-related downtime. From an industry perspective, proactive migration aligns with modern PLC and DCS lifecycle best practices. It also improves overall factory automation reliability.
Application Case and Solution Scenario
A water treatment plant recently replaced an IC693CPU313 in a 5-slot rack. After the swap, operators could not launch the PID Tune wizard. The maintenance team initially suspected a faulty CPU. However, a structured check revealed three issues. The PME license had been reinstalled without the PPS option. The PID RefArray sat at %R0850, close to the memory boundary. The new CPU carried a different firmware revision. The team restored the PPS license, relocated the PID block to %R0200, and reinserted the block instance. The tuning wizard returned to normal operation. No second CPU replacement was needed. This case highlights the value of software and memory verification in control systems maintenance.

Frequently Asked Questions
Q1: Does the IC693CPU313 contain a separate PID algorithm library?
No. The PID function block is a native instruction executed by the CPU firmware. It is not a loadable library. The block uses 40 consecutive %R registers for parameters and internal data.
Q2: Why does the PID Tune menu disappear after a CPU replacement?
The auto-tune feature requires the Proficy Machine Edition PPS license tier. If the engineering workstation was rebuilt or the license changed, the menu entry will be absent. The CPU hardware itself is usually not the cause.
Q3: What causes a Config Not Equal fault after CPU substitution?
This fault occurs when the PID RefArray exceeds the target CPU’s %R memory boundary. The IC693CPU313 provides 1K words of %R memory. Relocating the PID block to a lower address resolves the conflict.
Q4: Can a short scan time make the PID tuning dialog appear frozen?
Yes. The PID instruction enforces a 10 ms minimum execution interval. If the scan time is shorter, the block executes every second sweep. Set the PID sample period above the actual scan time to restore normal tuning visibility.
Q5: How do firmware revisions affect PID block behavior?
Bit allocation in the PID control word can vary by firmware revision. The auto/manual and enable bits may shift positions. Always verify the firmware revision in PME and reinsert the PID block instance if revisions differ.



