Error code: SRVO-050 · Category: Servo · Controllers: LR Mate 200iD, SR-6iA, R-30iB, R-30iB Plus, CRX-10iA
The robot stops mid-cycle. The screen says SRVO-050 Collision Detect on G1 A1. The operator swears nothing hit anything. You walk the tool path, look at the fixturing, find no marks, no rubbing, no part out of place, and the alarm clears on reset. Then it happens again twenty cycles later. SRVO-050 is one of the most misunderstood servo alarms in the FANUC catalogue, and the fix almost never lives where the operator wants to look. We see this weekly at Probot Systems on R-30iB Plus cells running payload schedules that drifted out of sync with reality.
This post is written for technicians and integrators chasing SRVO-050 on LR Mate 200iD, SR-6iA, R-30iB, R-30iB Plus, and CRX cobot cells. The diagnostic logic carries across cabinets, though CRX adds a contact-stop wrinkle worth knowing about.
SRVO-050 is the Collision Detect alarm. The PNT1-114 echo on page 1028 of the FANUC error code manual makes the path explicit: “PNT1-114 Collision alarm Cause: This alarm is echoed to the PLC when a SRVO-050 SERVO Collision Detect alarm (G:%d A:%d) is posted. Refer to the Teach Pendant alarm screen for the group and axis number. Refer to SRVO-050 for the cause.” That is FANUC’s way of telling you the controller has a Collision Guard threshold on each joint, and the disturbance torque it observed exceeded that threshold.
Mechanically, the controller estimates what torque each joint should need to follow the path. It uses the payload schedule, the motion model, and the friction model to do that. Then it compares estimated torque to measured torque. If the difference exceeds the Collision Guard sensitivity for that joint, SRVO-050 fires. So you can hit something for real, or you can give the controller a wrong model and watch it call a phantom collision.
In order of how often we land on each one on a service call:
Step 1. Note the group and axis on the alarm screen. SRVO-050 always names G: A:. Take it to the program.
Step 2. Single-step the move that fires the alarm. The exact point along the path tells you where to look. If it always trips at the same line, you have a payload or program issue at that point. If it trips at random points, lean toward friction or sensitivity.
Step 3. Open MENU > SYSTEM > Motion > Payload. Confirm the active payload schedule. Check mass, CoG, and inertia against the real tooling. If anything is off, fix payload first.
Step 4. Run PAYLOAD ID with the actual tooling installed. PAYLOAD ID measures dynamic response and is far more accurate than typing in numbers from a CAD model.
Step 5. Bump Collision Guard sensitivity up ten to twenty percent temporarily and run the program. If the alarm goes away, the payload model is the problem and you should not leave the sensitivity loose. Tighten back up after fixing payload.
Step 6. Inspect the path for harness snagging, dress-pack interference, or fixture contact. Anything physical resisting the motion will read as collision torque (reference thread).
Step 7. If SRVO-050 only fires on the first cycle of the shift, add a slow warm-up program before production. Cold-cycle trips are a classic pattern.
Match the fix to what you found.
If payload data was wrong: run PAYLOAD ID with the current tooling installed, save the result to the correct schedule, and call SELECT PAYLOAD[n] from any program that swaps tools. Maintain a payload schedule per tool, do not overwrite payload 1 every time. Then run a full-speed test cycle to confirm.
If Collision Guard sensitivity was too tight: open MENU > SYSTEM > Motion > Coll Guard for the affected joint. Increase sensitivity in small steps (5 to 10 percent at a time) until SRVO-050 stops, then verify the cell still detects real crashes by simulating a low-speed contact with a soft target. Do not just disable Collision Guard.
If cold-start is the pattern: add a slow warm-up program at start of shift that exercises every joint through its working range. Two to three minutes of low-speed motion is usually enough.
If a mechanical bind is the cause: fix the physical problem, then run the diagnostic again. Do not raise sensitivity to mask a real bind.
If motor, encoder, or reducer is the suspect: this is service-call territory on a production cell. Mastering data has to be backed up, the part has to be ordered correctly for the arm variant, and the swap has to be planned around production. The Fanuc subreddit user reached this conclusion only after ruling out everything cheaper (Fanuc subreddit).
Call us when payload is correct, sensitivity is tuned for the cycle, no mechanical bind is present, and SRVO-050 still drops on the same joint. At that point you are looking at motor, encoder, or reducer work, all of which want mastering preserved and a known-good replacement part ordered for the right arm variant.
Same goes for CRX cobots throwing SRVO-050 around contact-stop tuning. The collision detect logic interacts with the contact stop function on CRX, and changing one without understanding the other has put more than one CRX cell into a confusing state.
contact us for a service intervention, or set up a maintenance preventive contract so payload schedules, dress packs, and Collision Guard sensitivities are audited before SRVO-050 starts dropping at 11pm on a Sunday.
Probot Systems is a FANUC integrator based in Lévis, Quebec. We commission and maintain LR Mate, SR-6iA, R-30iB Plus, and CRX cells across Canada and the US, and SRVO-050 is one of the alarms our preventive maintenance contracts are designed to keep off the floor. If you want a payload and sensitivity audit before the next product change, that is a contact us conversation.
Remplissez le formulaire ci-dessous et nous vous contacterons dans les plus brefs délais.
Fill out the form below, and we will be in touch shortly.