
axismd.ai
FANUC Robot Controller
System · Intermediate · 15-60 minutes
Fanuc Robot SYST-020 - Program not verified by PNS
SYST-020 occurs when the Program Number Select (PNS) system cannot verify a program selection made via digital inputs from the PLC. This is typically caused by improper strobe signal timing, where the PNSTROBE signal is released too quickly or the PNS input signals change before the controller completes its verification cycle. The R-30iA/iB controller requires specific timing to latch and verify the binary-coded program number inputs.
Fanuc Robot SYST-020 - Program not verified by PNS
Program not verified by PNS
The selected program has not been verified by the PNS (Program Number Select) system. The program selection via PNS inputs is not confirmed.
Root Cause Summary
SYST-020 occurs when the Program Number Select (PNS) system cannot verify a program selection made via digital inputs from the PLC. This is typically caused by improper strobe signal timing, where the PNSTROBE signal is released too quickly or the PNS input signals change before the controller completes its verification cycle. The R-30iA/iB controller requires specific timing to latch and verify the binary-coded program number inputs.
Safety
Causes and Fixes
Verify PNSTROBE signal duration
Navigate to MENU > I/O > UOP Signals and monitor signal UI[17] PNSTROBE in real-time. The strobe must remain ON for minimum 100ms plus program verification time (typically 200-500ms total depending on program size). Use a PLC timer or oscilloscope to measure actual pulse width from the PLC output.
For large programs or slow memory access, increase strobe hold time to 1 second minimum. The controller will assert PNUMOK (UO[19]) when verification is complete—this is your confirmation signal.
Check PNUMOK feedback signal timing
Monitor MENU > I/O > UOP Signals > UO[19] PNUMOK. This signal goes HIGH when program verification succeeds. Modify PLC logic to hold PNSTROBE until PNUMOK goes active, then release strobe. This handshaking prevents premature strobe release.
Implement a watchdog timer in PLC (3-5 seconds) for PNUMOK response. If timeout occurs, log the PNS inputs being sent and check if that program number exists in controller memory.
Review PLC ladder logic timing
Examine the PLC program controlling PNSTROBE. Look for edge-triggered outputs, scan-time dependent logic, or one-shot pulses that may create insufficient pulse width. Replace with latched output that holds until PNUMOK confirms, or use fixed timer (minimum 500ms).
Do not use PLC one-shot or rising-edge instructions for PNSTROBE—these typically create pulses too short for controller verification.
Verify system configuration parameter
Check MENU > SETUP > System Config > PNS Check ($SCR.$PNS_CHECK). This should be enabled (value = 1). Also verify $SCR.$PNS_MODE matches your application: 0=No PNS, 1=Standard PNS, 2=Extended PNS. Incorrect mode prevents proper verification.
Extended PNS mode (value 2) supports up to 1000 programs but requires different input wiring. Confirm your hardware matches the configured mode.
Seeing Multiple Alarms?
Seeing another alarm with this one? Enter the code.
AxisMD logs alarms against your actual machines, tracks patterns, and gives AI context your manual doesn't have.
Start freeWas this guide helpful?
Always verify with your machine manual or a certified technician before performing service procedures.