<< Prev        Next >>

Eralw

Function

Set the value of deviation tolerance. Switch the status of the deviation tolerance function True/False.

Syntax

ErAlw True/False, axis number, setting value

Guaranteed entry

True/False
Enable/Disable the servo lock by an integer type data.
To enable this command, enter True or an integer other than 0.
To disable this command, enter False or 0.
Axis number
Designate an axis number by Integer Type data. If the argument True/False is set to False, you can use "0" to specify all axes as target.
Setting value
Designate a deviation tolerance setting value by single precision real number type data. The unit is "degree" if the axis is a rotation axis, or "mm" if a linear motion axis. The setting value have to be 0 or larger. In case of "False," no designation is needed.

Description

This command sets the deviation tolerance value as well as switches the status of the deviation tolerance function True/False.

To execute this command, the task must acquire target axis control.

The deviation tolerance value is not disabled even after release of axis control or task termination. Enable it only if necessary.

Attention

  • Setting a small value in the argument setting value will cause frequent errors. In addition, any negative value cannot be set.
  • Execution of this command during machine lock is ignored.
  • Unlike RC7 controller, the deviation tolerance value is not initialized when the current limit is cancelled.
  • 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 cancelled.
    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.

Example

'!TITLE "<DENSO Robot Program>"
Sub Sample_Eralw

  TakeArm Keep = 1

  ErAlw 1, 1, 0.0001
  ErAlw 1, 2, 2
  ErAlw 1, 3, 3.5
  ErAlw 1, 4, 40
  ErAlw 1, 5, 500
  ErAlw 1, 6, 6000
  ErAlw 1, 1, ( 3.402823E+38 )
  ErAlw 1, 2, 0

  ErAlw 0, 3
  ErAlw 0, 1
  ErAlw 0, 0
  ErAlw 0, 1

End Sub
'!TITLE "Setting of Current Limiting Function"
' True/False of the current limiting function
Sub Sample_CurLmt

  Dim aaa As Joint
  Dim bbb As Joint
  
  aaa = J( 0, 0, 0, 0, 0, 0 )
  bbb = J( 90, 0, 0, 0, 0, 0 )

  TakeArm Keep = 1

  Motor True

  ' Set the external speed to 100
  ExtSpeed 100

  ' Move from the current position to the aaa coordinate position
  Move P, @0 aaa

  ' Set position deviation tolerance to 52.27
  ErAlw True, 1, 52.27

  ' Set dead weight compensation function to be enabled
  GrvCtrl True 

  ' Set current limiting function to 50%
  CurLmt True, 1, 50 

  'Clear the servo logs
  Syslog.Servo.Clear 

  'Start recording servo logs
  Syslog.Servo.Start 

  ' Move from the current position to the bbb coordinate position
  Move P, @0 bbb

 'Stop recording servo logs 
  Syslog.Servo.Stop

  ' Set current limiting function to be disabled
  CurLmt False, 1 

  ' Set dead weight compensation function to be disabled 
  GrvCtrl False 

  ' Set position deviation tolerance to be disabled
  ErAlw False, 1 

End Sub

<< Prev        Next >>