<< Prev        Next >>

ID : 5177

ForceCtrl

Function

Switch the force control function (compliance function) to enable/disable.

Syntax

ForceCtrl enable/disable, force control number[, Mode = control mode]

Guaranteed Entry

Enable/disable
Enable/Disable the force control function by integer type data.
To enable the force control, enter On or an integer other than 0.
To disable the force control, enter Off or 0.
Force Control Number
Specify the force control number (a parameter table number for the compliance function) by integer type from 1 to 10. This item cannot be omitted if "Enable" is selected, and is disregarded if "Disable" is selected.
Control mode

Set [0: Compliance function] , [1: Compliance Function with Force Sensor] or [3 : Force Sensor Robust Compliance Control] by Integer type data.

This is omittable. If this is omitted, the same mode configured in [Force control setting] window will be set.

Description

Switch the force control function (compliance function) to enable/disable.
For force control function, refer to "FORCE CONTROL FUNCTION" of FUNCTION GUIDE.

Attention

  • 5-axis robots do not support this command.
  • If this command is executed while current limiting is enabled, error "8320152C Cannot enable force control." may occur. Execute the command after disabling current limiting. For details on disabling current limiting, refer to "CurLmt". (This is applicable only for the compliance function without force sensor.)
  • Executing this command while motor is powered off will not enable the force control function. If the motor is powered off while force control function is enabled, force control will be disabled.
  • This command must be executed with a task that has acquired the robot control authority (TakeArm). If executed without robot control authority, error "83501024 Can't take arm semaphore" may occur.
  • This command must be executed while the robot is in stationary state. Executing this command during pass motion will cause an end motion. If this command is executed while the robot is in motion, error "8150100D Command isn't executable while the robot is running." may occur. If this is the case, stop the robot with a command such as "Delay", and then retry execution. (This is applicable only for the compliance function without force sensor.)
  • If the robot moves due to external force while force control function is enabled, error "8440451* *Excessive position error" or "8440452* *Excessive position error" may occur. In such cases, change the allowable deviations. For details on changing values for allowable deviation, refer to "ErAlw".
  • In the compliance function without force sensor, the current limit value and the deviation tolerance value are temporarily rewritten during processing, and then these values are initialized when the limits are canceled.
    To set the current limit value or the deviation tolerance value back to the values that have been set before the compliance function activation, set these values again.
  • Note that the compliance function without force sensor remains active while the motor power is ON. To run a program with the compliance function being enabled, suspend the program when the motor power is ON, and then restart the program. To turn off the compliance function at the startup, execute "TakeArm Keep = 1", and then "ForceCtrlOFF".
  • Do not execute this command while any force is applied to the robot (i.e. when robot is in contact state). To enable force control function while force is applied, use the "GrvOffset" command.
  • If the posture of the robot has changed largely after enabling force control function, the robot may move in the direction of gravity due to some error present in the gravity offset compensation value. If posture changes significantly while force control function is enabled, disable and then enable the force control function again. (This is applicable only for the compliance function without force sensor.)
  • Make sure to set the internal load conditions ("Mass of payload" and "Payload center of gravity") correctly. If the value you set for "Mass of payload" differs from the actual mass of payload, the robot may fall in the direction of gravity. To prevent such fall, use the "GrvOffset" command to perform gravity offset compensation. (This is applicable only for the compliance function without force sensor.)
  • High speed motion cannot be performed while compliance function is enabled. In the compliance function without force sensor, if a motion command is executed when the product of the external speed and internal speed exceeds 50%, error "83201530 Speed limit over in force control." may occur. If this error occurs, reduce the internal speed setting.
  • If this command, with Force Sensor Robust Compliance Control selected, is executed to a robot unable to perform Force Sensor Robust Compliance Control, the error “83201524 You cannot execute a command in this robot type” occurs.

Example

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 ON,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 OFF				'Disable force control function 
					'(compliance function).
 :
 :
End Sub					'End of program.

For specific usage, please refer to "Example(Programming Example)" in "Compliance Function" in FUNCTION GUIDE.

ID : 5177

<< Prev        Next >>