You are on page 1of 22

Servofloat function

MOTOMAN-NX100
Upon receipt of this product and prior to initial operation, read these instructions thoroughly, and retain for future reference.

2006 MOTOMAN Robotics Europe AB Reg No.: MRS6022EN.0.U

Reference list

This manual is a revised version of the YEC document: HW0482018


Revision

2006-12-13 First release of this manual.

Page 2

Revised: 06-12-13

Controller_front.fm

Servofloat function

1.

Servofloat function

Link servofloat function ...............................................................................5 Linear servofloat function ............................................................................5 Using the link servofloat function and the linear servofloat function ........................................................................................6

2.

The servofloat function

Moving with the move instruction ..............................................................7 Moving with the TIMER and WAIT instructions .....................................8 Operation check ............................................................................................8 When an alarm occurs .................................................................................8 Display during servofloat operation ...........................................................8 Turning servo ON again during servofloat operation ...............................8

3.

Servofloat condition files

Link servofloat condition file ........................... 9 Linear servofloat condition file ......................... 10

4.

Instructions for the servofloat function

11

FLOATON instruction ...............................................................................11 FLOATOF instruction ...............................................................................11 SPDL Tag ....................................................................................................11

5.

Registration of instruction

13

FLOATON instruction ...............................................................................13 FLOATOF instruction ............................... 15 Addition of SPDL tag to a move instruction ............................................15

6.

Application example of the servofloat function

17

Movement example .....................................................................................17 Job example .................................................................................................19 A setting example in the linear servofloat condition file .........................20 A setting example for the link servofloat condition file ..........................20

MRS6022EN.0.UTOC.fm

Revised: 06-12-13

Page 3

Servofloat function

Page 4

Revised: 06-12-13

MRS6022EN.0.UTOC.fm

Servofloat function

1. Servofloat function
The servofloat function of the NX100 consists of the link servofloat function and the linear servofloat function. The link servofloat function controls the torque independently for each axis; and the linear servofloat function controls the torque on the Cartesian coordinates. Select these two functions by setting the servofloat instructions accordingly.

1.1 Link servofloat function


The link servofloat function works in combination with the position control and the torque control, whereas an ordinary control is a position control that generates torque to keep the taught position regardless of the applied external force. Torque control keeps the taught position only by using the torque against the gravitational and frictional forces. Therefore, a robot moved by an external force will not return to its original position. With the servofloat function, external force moves the robot since the torque control has priority over the position control. For example, when removing a workpiece from the die-casting machine, a large external force is applied to the robot by the extruding cylinder when a workpiece is grasped and pulled out. The servofloat function is used to protect the robot from excessive external force, and the robot moves according to the force applied from the die-casting machine. Note that the robot does not move exactly to the taught position or along the taught path, because complete position control is not performed during execution of the servofloat function.

1.2 Linear servofloat function


When a robot pushes a workpiece or visa-versa, a movement to one predetermined direction may be desirable. With the link servofloat function, a servofloat motion in one direction is not possible since torque control is performed independently for each axis. This function can specify the control of force in one direction within a space.*1 When unloading a die-casting machine, this function is useful for considerably long ejection distances or when polishing or grinding. 1) When external force is applied, the R, B, and T-axes move the same as in the link servo-float function. Only the end of the U-axis moves in a linear motion.

MRS6022EN-ch1.fm

Revised: 06-12-13

Page 5

Servofloat function

1.3 Using the link servofloat function and the linear servofloat function
Use the link servofloat function when high-ferquency noise, motor vibration or unsteady robot motion occur depending on the robot posture, speed and movement direction.

Information!
Tool load information setting The servofloat function compensates for gravity in real-time in order to prevent the arms from dropping due to gravity even when the generated torque is limited. For this purpose, the tool load information used for gravity compensation must be set correctly. Otherwise, the servofloat function cannot be performed properly and the arms may drop down or rise up. For the tool load infomation, refer to Section 9.11.3 Tool Load Information Setting in the NX100 INSTRUCTIONS (manual number: RE-CTO-A211) to correctly set the tool load information.

Page 6

Revised: 06-12-13

MRS6022EN-ch1.fm

Servofloat function

2. The servofloat function


Enable the servofloat function with the servofloat function start instruction FLOATON. It remains enabled until one of the following conditions is established.
! ! ! !

Performing the a servofloat function end instruction FLOATOF Performing the FWD/BWD key operation, jogging or a job startup after the cursor is moved Performing the FWD/BWD key operation, jogging or a job startup after a job call, job selection or job editing Turning the servo ON again after an emergency stop

When the function is enabled, the robot generates only the torque that is less that the value set to the servofloat condition file. The robot uses the torque to operate and keep the position. If a large external force is applied, the robot moves according to this force.

2.1 Moving with the move instruction


If an external force prevents robot operation, the robot does not reach the taught position when the servofloat function is enabled. Even though the robot does not actually reach the taught position, the instruction that would be activated at that position are nonetheless enabled, so the move instruction terminated. Therefore, when the robot cannot reach the taught position because of an external force, the robot performs the next instruction. The following figure shows an example where the operation time is 5 seconds from STEP 1 to STEP 2. If the robot hits an obstruction 3 seconds after STEP 1 and stops there, it remains stopped at the position for the remaining 2 seconds, and then moves to STEP 3 without moving to STEP 2 when moving with the torque control.

5 seconds 3 seconds Obstruction STEP 2 STEP 1

STEP 1 MOVL V=100.0 FLOATON FL#(1) STEP 2 MOVL V=100.0 STEP 3 MOVL V=100.0 FLOATOF

The robot hits an obstruction and stops for 2 seconds until the MOVE instruction to STEP 2 is completed. After completion of discharging, it moves to STEP 3 in torque controlled status.

STEP 3

MRS6022EN-ch2.fm

Revised: 06-12-13

Page 7

Servofloat function

2.2 Moving with the TIMER and WAIT instructions


When the servofloat function is enabled, torque control can be performed even during the TIMER and WAIT instructions. These instructions end when time is up or when a condition described in page 2-1 is established. For example, in the following figure, the robot reaches STEP 1 and the FLOATON instruction enables the servofloat function. Then the robot waits for the input of IN#1 by the WAIT instruction. In this state, if an external force is applied to the robot, the robot moves to the point P and stops. If the FLOATOF instruction is performed at this point, the servofloat function is disabled and the robot moves from point P to STEP 2.
Application of external force

STEP 1

Taught path

STEP 2

Movement by external force

STEP 1 Actual path STEP 2 Point P

MOVL V=100.0 FLOATON FL#(1) WAIT IN#(1)=ON FLOATOF MOVL V=100.0

2.3 Operation check


When the servofloat function is enabled, the soft limit, cube interference and the S-axis interference are checked at the actual position of the robot even though external force moved the robot.

2.4 When an alarm occurs


If an alarm occurs when the servofloat function is enabled, the servofloat function may remain effective depending on the type of alarm. To disable the servofloat during an alarm, enter external emergency stop or servo OFF signal during the alarm occurrence signal output. This turns OFF the servo power supply and applies the brakes.

2.5 Display during servofloat operation


When the servofloat function is enabled, the message Servo float activated appears at the bottom of the programming pendant display and the specific output 50274 SERVOFLOAT ON R1 is output.

2.6 Turning servo ON again during servofloat operation


When the servo power has been turned OFF due to an emergency stop during servofloat operation and turns ON again, press the [SERVO ON READY] on the playback panel until this servo recognizes that the power supply is turned ON. If the button is not pressed for a long enough time, the message depress servo power ON appears and the servo power cannot be turned ON.

Page 8

Revised: 06-12-13

MRS6022EN-ch2.fm

Servofloat function

3. Servofloat condition files

Warning!
!

If the values for the maximum force and maximum torque are set too low, gravity may cause an arm to drop. The arm drop may cause an accident or damage to the devices.

There are two kinds of servofloat condition files: the link servofloat condition file specified for the link servofloat function and the linear servofloat condition file specified for the linear servofloat function.

3.1 Link servofloat condition file


Operation 1 Select {ROBOT} from the main menu The link servofloat window appears.
DATA

Explanation

EDIT

DISPLAY

UTILITY

LINK SERVOFLOAT COND NO. : 1 / 8 FUNC R1 : S L U R B T

+MAX.TORQUE(%) 30 40 50 100 100 100

-MAX.TORQUE(%) -30 -40 -50 -100 -100 -100

&
2 Select {LINK SERVOFLOAT}
MRESET

PAGE Short Cut


Turn on servo power

Main Menu

# FUNC
Enables/Disables the link servofloat function for each axis. $ indicates that the function is enabled; % indicates that the function is disabled. Pressing [SELECT] switches between $ and %. & (+) MAX. TORQUE / (-) MAX. TORQUE Limits the amount of torque generated for keeping control of the position of each axis. Set the value for each axis using the ratios (%) of the positive and negative sides of the motor to the motor rated torque. The smaller the value is set, the more easily the robot can be moved by an external force. 3 Select an item to be set and set the value The display enters the number input status. Enter a value for MAX. TORQUE by pressing the numeric keys. Then, press [ENTER].

MRS6022EN-ch3.fm

Revised: 06-12-13

Page 9

Servofloat function

3.2 Linear servofloat condition file


Operation 1 Select {ROBOT} from the main menu The linear servofloat window appears.
DATA

Explanation

EDIT

DISPLAY

UTILITY

LINEAR SERVOFLOAT COND NO. : 1 / 8

# &

ROBOT COORDINATE TOOL ORIENT'N OFF FUNC +MAX.FORCE 30 kgf R1 : X 40 kgf Y 50 kgf Z FUNC R1 : R B T MRESET +MAX.TORQUE 30 % 40 % 50 %

-MAX.FORCE -30 kgf -40 kgf -50 kgf -MAX.TORQUE -30 % -40 % -50 %

' (

PAGE Short Cut


Turn on servo power

Main Menu

#COORDINATE
2 Select {LNR. SERVOFLOAT} Sets a coordinate system for the linear servofloat function. Select the ROBOT coordinates, BASE coordinates, USER coordinates or TOOL coordinates. The selection dialog box appears by pressing [SELECT]. Select a coordinate system to be set. &FUNC Enables/Disables the linear servofloat function for each axis. $ indicates that the function is enabled; % indicates that the function is disabled. Pressing [SELECT] switches between $ and %. '(+) MAX. FORCE / (-) MAX. FORCE Limits the amount of force generated for keeping control of the position of each axis. When the linear servofloat is enabled, a force bigger than this set value is not generated. The smaller the value is set, the more easily a set coordinate axis can be moved by an external force. However, if the set value is less than the robot friction, the robot may not move. ((+) MAX. TORQUE / (-) MAX. TORQUE Limits the amount of torque generated for keeping control of the position of R-, B- and T-axes. Set the value for each axis using the ratios (%) of the positive and negative sides of the motor to the motor rated torque. The smaller the value is set, the more easily an axis can be moved by an external force. The display enters the number input status. Enter a value for MAX. TORQUE by pressing the numeric keys. Then, press [ENTER].

Select an item to be set and set the value

Page 10

Revised: 06-12-13

MRS6022EN-ch3.fm

Servofloat function

4. Instructions for the servofloat function


4.1 FLOATON instruction
FLOATON is an instruction to enable and start the link servofloat function or the linear servofloat function. Additional items for the FLOATON instruction are as follows:

FLOATON

# &

FL#(1 to 8) LFL#(1 to 8)

# FL# ( ) (Setting range: 1 to 8)


Sets the link servofloat condition file number.

& LFL# ( ) (Setting range: 1 to 8)


Sets the linear servofloat condition file number.

4.2 FLOATOF instruction


FLOATOF is an instruction to disable and end the link servofloat function or the linear servofloat function. The servofloat function can be also disabled by performing servo OFF.

4.3 SPDL Tag


The SPDL tag is a stop confirmation tag with which a motion is completed when the number of speed feedback pulses of all the axes becomes less than a constant value. Use an SPDL tag to confirm the end of a motion caused by an external force. Add it to the move instruction immediately before the FLOATOF instruction. If the move instruction is completed with a SPDL tag added, the next instruction will not be performed as long as the manipulator is being moved by an external force. Only 0 can be set for the SPDL tag. An example of an SPDL tag added to a move instruction is shown as follows: MOVJ VJ=50.00 SPDL=0

MRS6022EN-ch4.fm

Revised: 06-12-13

Page 11

Servofloat function

Page 12

Revised: 06-12-13

MRS6022EN-ch4.fm

Servofloat function

5. Registration of instruction
When in the job content display in teach mode, register an instruction with the cursor in the address area.
Operation 1 Select {JOB} from the main menu The job content window appears.
JOB

Explanation

EDIT

DISPLAY

UTILITY

JOB CONTENT JOB NAME : TEST CONTROL GROUP : R1

STEP NO : 003 TOOL : 00

Address area 2 Select {JOB CONTENT}

0000 0001 0002 0003 0004 0005 0006

NOP 'TEST JOB MOVJ VJ=50.00 MOVJ VJ=12.50 MOVL V=276 TIMER T=1.00 DOUT OT#(1) ON

Instruction area

=>

MOVJ VJ=100.00

Main Menu

Short Cut

! Turn on servo power

Move the cursor to the address area

5.1 FLOATON instruction


Operation 1 Move the cursor to the line where FLOATON is to be registered The instruction dialog box appears.
IN/OUT CONTROL DEVICE

Explanation

Press [INFORM LIST]

MOTION ARITH SHIFT FLOATON FLOATOF OTHER SAME PRIOR

The FLOATON instruction appears in the input buffer line. 3 Select FLOATON
=> FLOATON

MRS6022EN-ch5.fm

Revised: 06-12-13

Page 13

Servofloat function

Operation

Explanation < To register without change> To register the instruction displayed in the input buffer line without any changes, go to step 5. < To edit the additional items> To add an additional item, with the cursor on the instruction in the input buffer line, press [SELECT] to call the detail edit display.

JOB

EDIT

DISPLAY

UTILITY

DETAIL EDIT FLOATON SV FLOAT FILE UNUSED

=> FLOATON

Change any additional items and numerical values

Main Menu

Short Cut

Turn on servo power

With the cursor on UNUSED for the SV FLOAT FILE, press [SELECT]. The selection dialog box appears with the choices FL# ( ) or LFL# ( ). Select one.

JOB

EDIT

DISPLAY

UTILITY

DETAIL EDIT FLOATON SV FLOAT FILE FL#( ) 1

=> FLOATON FL#(1)

Main Menu

Short Cut

Turn on servo power

After adding an additional item, press [ENTER]. The detail edit display closes and the job content display reappears. 5 Press [INSERT] and [ENTER] The instruction displayed in the input buffer line is registered.

Page 14

Revised: 06-12-13

MRS6022EN-ch5.fm

Servofloat function

5.2 FLOATOF instruction


Operation 1 Move the cursor to the line where FLOATOF is to be registered The instruction dialog box appears.
IN/OUT CONTROL DEVICE MOTION

Explanation

Press [INFORM LIST]

ARITH SHIFT FLOATON FLOATOF OTHER SAME PRIOR

The FLOATOF instruction appears in the input buffer line. 3 Select FLOATOF
=> FLOATOF

Press [INSERT] and [ENTER]

The instruction displayed in the input buffer line is registered.

5.3 Addition of SPDL tag to a move instruction


When in the job content display in teach mode, add an SPDL tag to a move instruction, with the cursor in the instruction area.
Operation Select the line of the move instruction where the SPDL tag is to be added Explanation The move instruction appears in the input buffer line.
=> MOVJ VJ=50.00

MRS6022EN-ch5.fm

Revised: 06-12-13

Page 15

Servofloat function

Operation

Explanation The detail edit window appears.


JOB

EDIT

DISPLAY

UTILITY

DETAIL EDIT MOVJ JOINT SPEED POS LEVEL NWAIT VJ= 50.00 UNUSED UNUSED

=> MOVJ VJ=50.00

Main Menu

Short Cut

Turn on servo power

Press [SELECT]

With the cursor on UNUSED for the POS LEVEL, press [SELECT]. The selection dialog box appears with the choice, SPDL=.
JOB

EDIT

DISPLAY

UTILITY

DETAIL EDIT MOVJ JOINT SPEED POS LEVEL NWAIT VJ= 50.00 SPDL= 0 UNUSED

=> MOVJ VJ=50.00 SPDL=0

Main Menu

Short Cut

Turn on servo power

After adding SPDL= to the move instruction, press [ENTER]. The detail edit window closes and the job content window reappears. 3 Press [INSERT] and [ENTER] The instruction displayed in the input buffer line is registered.

Page 16

Revised: 06-12-13

MRS6022EN-ch5.fm

Servofloat function

6. Application example of the servofloat function


When removing a workpiece from a die-casting machine, a large external force is applied to the robot during extraction after grasping it. In such a case, the following example is applicable using the servofloat function.

6.1 Movement example


1.
Moves to the waiting point.

Robot coordinate Y-axis Biscuit

Robot coordinate X-axis

Tool

2. 3.

Moves to the grasping starting point and performs the TIMER instruction and then starts the servofloat function. When function enabled, the robot grasps a biscuit.

MRS6022EN-ch6.fm

Revised: 06-12-13

Page 17

Servofloat function

4. 5. 6.

After having grasped a workpiece, the start extraction instruction signal is output and the robot performs an extracting motion. The start extraction instruction signal starts the extraction operation of the die-casting machine. Thereby, the robot performs an extracting motion. The die-casting machine outputs the end extraction instruction signal when the robot reaches the completion position. The robot ends the servofloat function.

Extruding

7.

The robot returns to its normal motion and performs an extraction motion with the workpiece. Then, it returns to the home position.

Page 18

Revised: 06-12-13

MRS6022EN-ch6.fm

Servofloat function

6.2 Job example


No.*1 1 Explanation Moves to the waiting point. Moves to the workpiece grasping point. 2 Stops and waits for 0.5 seconds. Starts the linear servofloat function. Turns ON the grasping instruction signal. (general output No. 10) 3 Waits for the grasping answer signal. (general input No. 10) 4 Turns ON the start extraction instruction signal. (general output No. 11). Performs the extraction motion. Ends the motion when the end extraction instruction signal (general input No. 11) is input during the motion. Stops and waits for 0.5 seconds. 6 Completes the servofloat function. Starts the extracting. 7 Returns to the waiting point. MOVJ VJ=50.0 WAIT IN#(10)=1 Instruction MOVJ VJ=50.0 MOVL V=300.0 TIMER T=0.50 FLOATON LFL#(1) DOUT OT#(10)=1

DOUT OT#(11)=1

MOVL V=50.0 UNTIL IN#(11)

TIMER T=0.50 FLOATOF MOVL V=300.0

1. The numbers represent the procedure numbers in 6.1 Movement Example.

MRS6022EN-ch6.fm

Revised: 06-12-13

Page 19

Servofloat function

6.3 A setting example in the linear servofloat condition file


For the example described in Movement example on page 17, set the servofloat condition file as follows. In the example, the extracting direction corresponds to that of the Y-axis of the robot coordinates. If the direction does not correspond to the robot coordinates, define the extracting direction with the user coordinates and set COORDINATE to USER#01.
DATA

EDIT

DISPLAY

UTILITY

LINEAR SERVOFLOAT COND NO. : 1 / 8 USER#01 COORDINATE TOOL ORIENT'N OFF FUNC +MAX.FORCE 100 kgf R1 : X 0 kgf Y 100 kgf Z FUNC R1 : R B T MRESET +MAX.TORQUE 100 % 100 % 100 %

-MAX.FORCE -100 kgf -0 kgf -100 kgf -MAX.TORQUE -100 % -100 % -100 %

PAGE Short Cut


Turn on servo power

Main Menu

6.4 A setting example for the link servofloat condition file


For the example described in Movement example on page 17, specify the link servofloat condition file by specifying LF# as the FLOATON instruction file. In this case, a setting example is as follows. Since the S-axis moves according to the force applied by the extruding cylinder of the diecasting machine, set the MAX. TORQUEs of the S-axis to 0. Set the MAX. TORQUEs of the L- and U-axes to 30 to prevent the arms from dropping or rising up due to the load variation. To orientate the tool posture, set the MAX. TORQUEs of the R-, B- and T-axes to 100. Using the above settings as a guide, adjust the ratio of each set value according to the circumstances.

DATA

EDIT

DISPLAY

UTILITY

LINK SERVOFLOAT COND NO. : 1 / 8 FUNC R1 : S L U R B T

+MAX.TORQUE(%) 0 30 30 100 100 100

-MAX.TORQUE(%) 0 -30 -30 -100 -100 -100

MRESET

PAGE Short Cut


Turn on servo power

Main Menu

Page 20

Revised: 06-12-13

MRS6022EN-ch6.fm

Notes

MOTOMAN Group companies: AT MOTOMAN robotec GmbH


Am concorde Park 1, B6/108-110, AT-2320 Schwechat-Wien, Austria Phone +43-1-707-9324-15

SI

RISTRO d.o.o.
Lepovce 23, SI-1310 Ribnica, Slovenia Phone: +386-61-8372410

UK

MOTOMAN Robotics UK Ltd


Johnson Park, Wildmere Road, Banbury, Oxon OX16 3JU, Great Britain Phone: +44-1295-272755

CZ

MOTOMAN robotec Czech s.r.o.


Jeremiasova 1422/7b, CZ-155 00 Prague, Czech Republic Phone +420-251-618-430

DE

MOTOMAN robotec GmbH


Im Katzenforst 2, DE-61476 Kronberg/Taunus, Germany Phone: +49-6173-60-77-30

Distributors: CZ CZ CH GR HU IL IL NO PL RU TR ZA Hadyna International spol. s.r.o.


Ostrava-Marianske Hory +420 596 622 636

DK

MOTOMAN Robotics Europe AB


Anelystparken 47A, DK-8381 Tilst, Denmark Phone: +45-7022-2477

SP-Tech s.r.o.
Nymburk +420 325 515 105

ES

MOTOMAN Robotics Iberica S.L.


Avenida Marina 56, Parcela 90, ES-08830 St. Boi de Llobregat (Barcelona), Spain Phone: +34-93-6303478

Messer Schweisstechnik AG
Dllikon +41-1-8471717

Kouvalias Industrial Robots


Kallithea +30-2109589243

FI

MOTOMAN Robotics Finland OY


Messinkikatu 2, FI-20380 Turku, Finland Phone: +358-403000600

Rehm Hegesztstechnika Kft


Budapest +36-30-9510065

FR

MOTOMAN Robotics SARL


Rue Nungesser et Coli, D2A Nantes-Atlantique, FR-44860 Saint-Aignan-de-Grand-Lieu, France Phone: +33-2-40131919

KNT Engineering Ltd


Beit Shemesh +972-2-9905882

Uniweld Ltd
Yavne +972-8-9328080

IT

MOTOMAN Robotics Italia SRL


Via Emilia 1420/16, IT-41100 Modena, Italy Phone: +39-059-280496

Optimove as
Lierstranda +47-32240600

NL

MOTOMAN benelux B.V


Zinkstraat 70, NL-4823 AC Breda, Netherlands Phone: +31-76-5302305

Rywal-RHC Sp.z.o.o
Torun +48 56 66 93 800

PT

MOTOMAN Robotics Iberica S.L.


Z. Ind. Aveiro Sul, Lote 21, N. S. Ftima, PT-3810 Aveiro, Portugal Phone: +351-234 943 900

Weber Comechanics
Moscow +7 495 105 88 87

Teknodrom Robotics & Automation INC


Gebze/Kocaeli +90 262 678 8820

SE

MOTOMAN Robotics Europe AB


Box 504, SE-385 25 Torss, Sweden Phone: +46-480-417800

Robotic Systems SA PTY Ltd


Johannesburg +27-11-6083182

SI

MOTOMAN robotec d.o.o.


Lepovce 23, SI-1310 Ribnica, Slovenia Phone: +386-1-8372410

MOTOMAN Headquarters

MOTOMAN Robotics Europe AB Box 4004, SE-390 04 Kalmar, Sweden Phone: +46-480-417800, Fax: +46-480-417999 info@motoman.se www.motoman.se

MOTOMAN robotec GmbH Kammerfeldstrae 1, DE-85391 Allershausen, Germany Phone: +49-8166-90-0, Fax: +49-8166-90-103 info@motoman.de www.motoman.de

Specifications may be subject to change without notice

You might also like