Skip to main content

Servo Float Function

Normally a robot axis is position controlled: if something pushes it, the motor produces as much torque as needed to stay on the commanded point. With servo float, torque is limited so that an external force can push the robot along. It is used where a machine pushes on the robot – for example a die-casting ejector cylinder pushing a part out while the robot grips it.

Two variants​

VariantHow torque is limitedGood for
Link servo floatIndependently on each axisGeneral use; choose this if you get oscillation (a growling motor noise and high-frequency vibration) or unsteady motion
Linear servo floatAlong one direction in Cartesian spaceLong extraction strokes, pushing/polishing in one defined direction

In linear mode only the U-arm tip moves in a straight line; the R, B and T axes behave as in link mode.

How it runs in a job​

MOVL V=100.0
FLOATON FL#(1)
MOVL V=100.0
MOVL V=100.0
FLOATOF

Here the robot reaches step 1 normally, FLOATON FL#(1) starts servo float using condition file 1, steps 2 and 3 run with limited torque, and FLOATOF returns to normal position control.

  • Servo float stays active from FLOATON until FLOATOF, or until a jog, cursor move followed by FWD/BWD, job call/select/edit, or servo re-ON.
  • A move instruction is considered complete when the command reaches the target, even if the arm was blocked. Example: a 5-second move blocked after 3 seconds waits the remaining 2 seconds, then continues to the next step.
  • TIMER and WAIT instructions also run under torque control, so the arm can be pushed while waiting.
  • Torque limits are set per axis in a servo float condition file.

Critical: tool load data​

The controller compensates gravity in real time while torque is limited. If the tool mass, centre of gravity and inertia are wrong, an axis can drop or rise unexpectedly. Set tool load data correctly before using servo float.


Source: Based on YASKAWA manual HW1483399.