ID : 5176
ForceParam
Function
To set parameters for a force control function.
Syntax
For Compliance Function
ForceParam force control number, coordinates,force [, CurLmt = current limit value][, PosEralw = allowable position deviation] [, Eralw = allowable axis deviation][, Spring = compliance] [, Damp = damping][, OffSet = offset value]
For Force Sensor Compliance Control
ForceParam force control number, coordinates, force [, Rate = control rate][, PosEralw = allowable position deviation] [, Eralw = allowable axis deviation][, Damp = damping] [, SpMax = maximum translation speed][, RSpMax = maximum rotation speed]
[, Mass = inertia][, Spring = compliance]
For Force Sensor Robust Compliance Control
ForceParam force control number, coordinates, force [,Rate = control rate][,PosEralw = allowable position deviation] [,Eralw = allowable axis deviation][,SpMax = maximum translation speed][,RSpMax = maximum rotation speed]
Guaranteed Entry
For Compliance Control Function
- Force Control Number
- Select a force control number (parameter table number for compliance function) 1 to 10. Designate Integer Type data.
- Coordinates
- Select a coordinate system from "0" (base coordinates), “1" (tool coordinates), or "2" (work coordinates). Designate Integer Type data.
- Force
- Force required to control the robot. This value specifies the limit of force to be output. The smaller the value set here, the more likely the robot's motion will be affected by or follow the direction of less external force. Designate Position Type data (X,Y,Z,RX,RY,RZ).
- Current Limit Value
- Determines the current limit value. Designate Joint Type data. This can be omitted. This item is not available to extended-joints (J7 and J8) even if you enter any values.
- Allowable Position Deviation
- Determines the allowable servo deviation value for the arm end position. Designate Position Type data (X, Y, Z, RX, RY, RZ). This can be omitted.
- Allowable Axis Deviation
- Determines the allowable servo deviation value of each axis. Designate Joint Type data. This can be omitted. This item is not available to extended-joints (J7 and J8) even if you enter any values.
- Compliance
- Determines the rate of return force strength, which increases according to position. Designate Position Type data (X, Y, Z, RX, RY, RZ). This can be omitted.
- Damping
- Determines the rate of resistive force, which increases according to speed. Designate Position Type data (X, Y, Z, RX, RY, RZ). This can be omitted.
- Offset Value
- Determines the force value required to lead the robot in a specified direction. Designate Position Type data (X, Y, Z, RX, RY, RZ). This can be omitted.
Not used for Force Sensor Compliance Control.
For Force Sensor Compliance Control
- Force Control Number
- Select a force control number (parameter table number for compliance function) 1 to 10. Designate Integer Type data.
- Coordinates
- Select a coordinate system from "0" (base coordinates), "1" (tool coordinates), or "2" (work coordinates). Designate Integer Type data.
- Force
- Force required to control the robot. This value specifies the limit of force to be output. The smaller the value set here, the more likely the robot's motion will be affected by or follow the direction of less external force. Designate Position Type data (X, Y, Z, RX, RY, RZ).
- Control Rate
- Determines the control rate of X-, Y- and Z direction, and all of the rotation angle around the X- , Y- and Z axes by Position Type data (X, Y, Z, RX, RY, RZ). This is omittable.
For the direction to control the force in normal use, set 100%. For the direction not to control, set 0%.
Not used with the compliance function. - Allowable Position Deviation
- Determines the allowable servo deviation value for the arm end position. Designate Position Type data (X, Y, Z, RX, RY, RZ). This can be omitted.
- Allowable Axis Deviation
- Determines the allowable servo deviation value of each axis. Designate Joint Type data. This can be omitted. This item is not available to extended-joints (J7 and J8) even if you enter any values.
- Damping
- Determines the rate of resistive force, which increases according to speed. Designate Position Type data (X, Y, Z, RX, RY, RZ). This can be omitted.
- Maximum Translation Speed
- Determines maximum translation speed limit value [mm/s] for the tool end. To set the value, Integer Type, Single Precision Real Number Type, Double Precision Real Number Type, Variant Type and String Type are available. This is omittable. Not used with the compliance function.
- Maximum rotation speed
- Determines the rotation speed limit value [deg/s] for the tool end. To set this value, Integer Type,Single Precision Real Number Type, Double Precision Real Number Type,Variant Type and String Type are available. This is omittable. Not used with the compliance function.
- Inertia
- Determines the friction ratio (inertia ratio) which increases according to the acceleration. Designate Position Type data (X, Y, Z, RX, RY, RZ). This can be omitted. Not used with the compliance function.
- Compliance
- Determines the rate of return force strength, which increases according to position. Designate Position Type data (X, Y, Z, RX, RY, RZ). This can be omitted.
For Force Sensor Robust Compliance Control
- Force Control Number
- Select a force control number (parameter table number for Compliance Control Function) from 1 to 10. Specify by integer type data.
- Coordinate system
- Select a coordinate system from “0: Base coordinate”, “1: Tool coordinate”, “2: Work coordinate”. Specify by integer type data.
- Force
- Determines the force to control the robot. The output force will not be greater than specified. Lowering this value will cause the robot to follow the direction of a smaller external force. Specify by position type data (X, Y, Z, RX, RY, RZ).
- Control rate
- Determines the control rates for the X, Y, Z directions and the rotational directions of X-, Y-, and Z-axes. Specify by position type data (X, Y, Z, RX, RY, RZ). This is an optional value.
Basically, set the ratio to 100% for the direction of the force that you intend to control. Set the rate to 0% for the direction of the force that you do not intend to control.
This parameter is not used for Compliance Function. - Allowable positional deviation
- Determines the allowable servo deviation for the position of the tool end. Specify by position type data (X, Y, Z, RX, RY, RZ). This is an optional value.
- Allowable axis deviation
- Determines the allowable servo deviation for each axis. Specify by joint type data. This is an optional value. The parameter is invalid if specified for an auxiliary axis.
- Max trans speed
- Determines the limit value of the translation speed [mm/s] of the tool end. Specify by integer type, single precision real number type, double precision real number type, variant type, and string type. This is an optional value.
This parameter is not used for Compliance Function. - Max rot speed
- Determines the limit value of the rotational speed [deg/s] of the tool end. Specify by integer type, single precision real number type, double precision real number type, variant type, and string type. This is an optional value.
This parameter is not used for Compliance Function.
Description
Sets parameters for force control function (compliance function).
For force control function, refer to "FORCE CONTROL FUNCTION" of FUNCTION GUIDE.
For details of the parameters, refer to “Parameter List” of Compliance Function and “Parameter Settings for Force Sensor Compliance Control” of Force Sensor Compliance Control and “Parameter Settings for Force Sensor Robust Compliance Control” of Force Sensor Robust Compliance Control of FUNCTION GUIDE.
Related Terms
ForceChangeTable, ForceCtrl, ForceSensor, ForceValue, ForceWaitCondition
Attention
- 5-axis robots do not support this command.
- This command must be executed with a task that has acquired the robot control authority ("TakeArm"). If executed without robot control authority, error "83501024 Arm semaphore cannot be acquired." may occur.
- This command cannot be executed while the robot force is controlled by the compliance function without sensor. If executed while force control is enabled, error "83201535 Cannot be set while force control is enabled." may occur.
- While the robot force is controlled by Force Sensor Compliance Control, only Force parameter can be changed. To change Damping, Inertia, or Compliance parameters during force control, use ForceChangeTable command.
- When value "1" is specified to use tool coordinates, tool coordinates set when force control enabled ("ForceCtrl") will be used. Changes made with the "ChangeTool" command while force control is enabled will be reflected, but the behavior of the robot may become unstable leading to an error.
- When value "2" is specified to use work coordinates, work coordinates set when force control enabled ("ForceCtrl") will be used. Changes made with the "ChangeWork" command while force control is enabled will be reflected, but the behavior of the robot may become unstable leading to an error.
- Tool coordinates and work coordinates cannot be changed while force control is enabled.
- Note that the robot may move toward directions in which offset force and moment are applied. In such cases, reduce the settings.
- If a relatively large value is set for "CurLmt" (current limit value), the robot may present oscillation resulting in an error. If this is the case, adjust compliance control for the force control function through parameters "Spring" (compliance) and "Damp" (damping).
- If the tool tip position and posture deviation exceed the allowed values, error "8320152E Force control, arm end deviation error " may occur.
- For Damp (viscosity), do not set a value smaller than the compliance rate value set with "Spring" (compliance).
If a value smaller than the compliance rate value is set, the robot may present oscillation resulting in a halt due to error. - When adjustment of operations with the Force Sensor Compliance Control, set the Control force and Control rate first. Refer to "Adjustment Procedure" of "Force Sensor Compliance Control" in "FUNCTION GUIDE" for about adjustment method.
- When adjustment of operations with the Compliance Function, set the Control force and Current limit first. Refer to "Adjustments" of "Compliance Function" in "FUNCTION GUIDE" for about adjustment method.
- You can use a teach pendant and commands for parameter setting though, it is recommended not to use both of them at the same time. Doing so may lead to wrong settings due to confusion.
- In the force control function, if the direction of the force you intend to control matches the direction of the robot motion executed by a command such as Move command, the force cannot be controlled as specified. To prevent this, skip the robot motion command with MotionSkip when the robot moves to the point at which you intend to start the force control.
- When you use Force Sensor Robust Compliance Control, an error occurs if the specified value of “control force” is below the specified values of “contact detect force for robust compliance control” or “contact detect moment for robust compliance control”.
Example
Example 1
Sub Main 'Start the program.
Takearm keep = 1 'Get control authority for the arm group.
Move P,@E P2 'Move to P2.
ForceParam 1,1,P(100,100,0,100,100,100) 'Set force control number, coordinates,
'and threshold values for external
'forces applied on each element.
ForceCtrl True,1,0 'Enable force control function
'(compliance function).
Move L,@0 P3 'Move to P3.
:
'Call the unchuck motion.
:
Move L,@0 P2 'Move to P2.
ForceCtrl False 'Disable force control function
'(compliance function).
:
:
End Sub 'End of program.
Example 2
'Apply 10N on the Z direction of Tool coordinate system
ForceParam 1, 1, P(0, 0, 10, 0, 0, 0), Rate = P(0, 0, 100, 0, 0, 0)For specific usage, please refer to "Example(Programming Example)" in "Compliance Function" in FUNCTION GUIDE.
ID : 5176

