Motion Instructions

Revision as of 23:55, 30 April 2019 by Mike138 (talk | contribs) (Fixed some details)

Motion Instructions direct the robot to perform motion tasks.

They detail where the robot should move, how it should calculate the path, where it should move, how fast, and where it should end up.


Line# Motion Type Position Type Position Number Speed Termination Type Motion Options
1 J P [1] Deg/sec Fine ACC100
2 L PR [2] 100% CNT50 EV
3 C P [3] sec Fine Offset
... PR [6:End] 110mm/s Fine Offset,PR[]
4 cm/min CNT37 Offset,PR[]
5 R[]

Motion Type:

C (Circular) - Starting point, intermediate point, endpoint

L (Linear) – Move from one point to another

J (Joint) – Move individual joints of robot arm, fastest way to move.

Position Type:

P – (position) direct position in space. Typically recorded by jogging to point and setting as position value. Each position is unique to the program it is in. P[1] in one program has no relation to P[1] in another.

PR (position register) – corresponds to predefined location where position can be found. Position registers are "global" variables that stay the same in all programs. PR[1] used in one program is the same as PR[1] in another. Modifying the contents of a position register will affect all future uses, across all programs.

P[n] = (x,y,z,w,p,r,configuration) – configuration describes axis condition at destination wrist could be N (not-flipped) or F (flipped), elbow could be U (up) or D (down), robot could be T (Front) or B (back)

Speed:

XX% - The robot will move at a percentage of its rated speed and given payload.

XXmm/s - The robot will move at a speed determined by the velocity of the tool's end.

R[X] - The robot will move at a speed determined by the contents of the register.

Termination Type:

  • Fine – When completing a motion instruction, the robot will reach each point. If the next point is at an angle relative to the path to reach the current point, the robot will accelerate and decelerate as necessary to ensure the point is actually reached. FINE instructions may take additional time.
  • Continuous (CNT) – When completing a motion instruction, the robot will decelerate as it approaches the point and "round off" the corner as it goes from point to point as a percentage. The number following the CNT option represents the percentage of speed it is allowed to slow to, to make a "best effort" to go toward the point. Continuous motion is healthier for the robot and the robots tools, as acceleration is more spread out.
    • CNT100 would mean it will maintain 100% of its calculated speed (given the speed variable and system speed settings) when executing the associated instruction. Instead of going to the point, stopping, then moving to the next instruction's point - it will make a "best effort" to reach the intermediate point without compromising speed.
    • CNT50 would mean it will choose a best path given the option of reducing to 50% of its otherwise calculated speed.
    • CNT0 is very similar to FINE but is computationally distinct, so it may result in a slight difference.

Motion Modification:

  • ACC - Acceleration. Use this to limit the acceleration of the motion instruction. Without this modifier, the robot will use normal calculations to determine acceleration and velocity (such as payload, joint limitations, speed variables)
  • COORD
  • SKIP,lbl[]
  • Offset
  • Offset,PR[] - Offset by a Position Register. Whatever is in the position register for the offset will be added with the contents of the position used for the motion instruction. The result only affects that motion instruction, the position register and position variable for the instruction will be unchanged.
    • J P[1] 100% FINE OFFSET PR[3] with 100,100,100,0,0,0 in P[1] and 10,20,30,0,0,0 in PR[3] will actually go to point 110,120,130,0,0,0