Various robotic tasks require different types of robot movements. Some robotic tasks such as manipulation or spot welding require point by point movements (PTP movements), while some other tasks require movements along mathematically defined paths (Continuous Path, Controlled Path, CP movements). These tasks are e. g. arc welding, cleaning of castings, montage, packaging, polishing, etc.

 

PTP movements and approximate PTP movements

 

PTP movements

Point-to-point movement (PTP movement) is time optimal movement between two given points in 3D space. Robot axes are moving synchronically from the current point  (M1) to the target point (M2),which results in curved trajectory of the end-effector. PTP movements are used for quick positioning followed by some specific operation or by controlled path motion which begin in target point (M2)

kretanje-robota-1

PTP movement

PTP movement is optimised by time as well as by the criterion of the minimal burdening of mechanical parts.

Kretanje robotaa ENG 2

Velocity profiles of robot segments during PTP movements

 

Approximate PTP movement

System for robot programming and motion control developed at the Lola Institute provides approximate PTP movements (APTP movements). By APTP movements different sets of movements are connected (several PTP movements, set of PTP movements with the set of CP movements and vice versa) without pausing and without any sudden velocity changes. Smoothing of the velocity profiles of robotic segments produces smoothing of velocity profile of the end-effector.

kretanje-robota-3

The end-effector path during set of 4 approximate PTP and one circular movement and corresponding path provided by regular PTP movements

 

Kretanje robotaa ENG 4

Velocity profiles of two robotic segments during set of four approximate PTP and one circular movement

 

Kretanje robotaa ENG 5

Joint angles values of two robotic segments during set of four approximate PTP and one circular movement

 

kretanje-robota-6

The end-effector velocity profile during set of four approximate PTP and one circular movement

 

CP movements

During Controlled Path movement, the end-effector tip moves along mathematically defined path which may be in the form of straight line, circle or parabola in 3D space.

Linear movements

Linear movements are those movements in which the tip of the end-effector moves along the straight line between two points, from current point (M1to target point (M2) in 3D space. Path is programmed by defining the coordinates of target position.

kretanje-robota-7

Linear movement

 

Circular movement

The end-effector tip moves along a circular path or a circular arc from current point (M1) to target point (M3) in 3D space. Path is programmed by defining the coordinates of mid-point (M2) and target point (M3).

kretanje-robota-8

Circular movement

 

kretanje-robota-9

Elliptical movement

 

Connecting of motions along controlled path

Two CP motions can be connected without pausing the manipulator through a uniform velocity change. To avoid the high mechanical loads due to sudden changes in the end-effector movement direction it is necessary that transitions from one movement to another CP are tangent.

 kretanje-robota-10

Example of the end-effector path during set of ten connected segments of CP motions, obtained by experiment

 

kretanje-robota-11

Velocity of the end-effector during set of ten connected segments of CP motions, obtained by experiment

 

Concept of approximate CP motions

When a change of the end-effector tip direction is such that it creates a large inertial load, CP movements have to be connected by approximate CP movements providing tangential transitions from one linear path to another. During the approximate CP movement the end-effector moves along the parabola.

Kretanje robotaa ENG 12

Approximate CP motions

 

kretanje-robota-13

Example of the end-effector path during set of six approximate CP motions, obtained by experiment

 

Kretanje robotaa ENG 14

Motion along parabola with the focus outside of or within area of approximate CP movement

 

 kretanje-robota-15

Example of the end-effector path during set of four approximate CP motions

 

kretanje-robota-16 

The end-effector tip’s velocity during set of four segments of approximate CP motions

 

Possible changes of the end-effector orientation during CP movements

During linear movement, orientation of the end-effector can be constant or it can vary uniformly with respect to the based frame or with respect to the end-effector path.

 

kretanje-robota-17

Constant orientation of the end-effector during linear movement

 

kretanje-robota-18 

Orientation of the end-effector changes uniformly during linear movement

 

Orientation of the end-effector during the circular movement can be constant or it can vary uniformly with respect to the based frame or with respect to the end-effector path.

 

 kretanje-robota-19

Constant orientation of the end-effector during circular movement

 

 kretanje-robota-20

Ravnomerno promenljiva orijentacija end-efektora u prostoru kod kružnog kretanja

 

kretanje-robota-21 

Orientation of the end-effector changes uniformly during circular movement

 

 kretanje-robota-22

Constant orientation of the end-effector with respect to the end-effector path during circular movement

 

MOVE instructions

Move instructions are statements intended for programming of PTP, linear and circular movements. There are two types of move instructions: MOVE and MOVE_INC. These two types differ in term of frame relative to which target and mid points are defined.

It is adopted that in MOVE instructions, values of geometric expressions defined in 3D Cartesian space (POSITION, ORIENTATION, POSE, ROBTARGET) are given with the respect to coordinate system attached to the user (User Coordinate System).

move ptp  ((X,Y,C),(A,B,C),(…)) Speed, Acceleration …;

move lin  ((X,Y,C),(A,B,C),(…)) Speed, Acceleration …;

move circle  MidPoint  TargetPoint Speed, Acceleration …;

It is adopted that in MOVE_INC instructions, values of geometric expressions defined in 3D Cartesian space (POSITION, ORIENTATION, POSE, ROBTARGET) are given with the respect to coordinate system attached to the end-effector (Tool Coordinate System).

move_inc ptp  ((X,Y,C),(A,B,C),(…)) Speed, Acceleration …;

move_inc lin  ((X,Y,C),(A,B,C),(…)) Speed, Acceleration …;

move_inc circle MidPoint TargetPoint Speed, Acceleration …;

For the purpose of motion programming of human centrifuge, which is modelled and developed as a three-axis manipulator with rotational axes, specific move instruction called GMOVE instructions are developed and integrated into L-IRL language. Through parameters of GMOVE instructions, it is possible to define change of acceleration forces (G load) acting on a pilot, or time in which acceleration forces are constant, in open loop flight mode of human centrifuge.

gmove time:= 4.0 bl_g:= 1.41;

gmove acc_g:= 2.0 bl_g:= 15.0 Gz := 14.1;

gmove time:= 0.7 bl_g:= 15.0 Gz := 14.1;