Robot.Payload Property

Asserts or retrieves the last asserted value that specifies the mass of the payload being carried by the robot (as a percentage of the maximum payload).

Robot.Payload = <new_percentage>
-or-
... Robot.Payload ( robot )

Prerequisites

Parameters

robot

An optional numeric expression that specifies the robot to be accessed (1-n).  If this value is 0 or unspecified, the Selected robot will be accessed.

Remarks

This property either asserts or retrieves the last asserted value that specifies the mass of the payload being carried by the robot.  For clarity, this property does not measure the mass of the payload, it simply sets the estimated mass or reads the last set value.

For robots that have Dynamic Feedforward compensation enabled (DFF), this property will adjust the feedforward for each of the robot's axes to compensate for the mass of the payload.  If full DFF compensation is supported, changing this value will alter the gravity compensation for each affected axis and will adjust the axes servo control loops to command torques to compensate for the inertial load of each motor as well as to account  for such factors as centripetal and Coriolis forces.

For example, if a robot picks up a very heavy payload, specifying a new mass value that correctly estimates the load will improve the gravity balancing of any axis that is placed into Manual Control Free Mode.  This improved estimate will also reduce the position tracking errors of all axes during computer controlled motions.

For simplicity, the payload is specified as a percentage of the maximum mass defined by the "Dynamic feedforward mass, kg" (DataID 16067).

Since changing the payload alters the behavior of the servo loops, as a precaution, if the robot is in motion when the value of this property is altered, GPL automatically waits until the motion is completed before applying the change.  Once the payload is changed, the new value will remain in effect until the Robot.Payload is altered or the controller is powered down and restarted.  As a convenience, when the controller is restarted, the initial value of the payload is automatically set to the value specified by the "Dynamic feedforward default % payload" (DataID 16071).

Examples

Robot.Attached = 1
Robot.Payload = 50 ' 1/2 maximum payload being carried
Console.WriteLine(Robot.Payload()) ' Outputs a value of 50

See Also

Robot Class