ABB's robotic arm has a rich and diverse command system that can meet the needs of a variety of complex scenarios. The following is a detailed explanation of the common commands of ABB's robotic arm:
1. Motion command
Absolute Position Motion Command (MoveAbsJ)
Function: Move the arm and external shaft to the absolute position specified in the shaft position.
Features: Using velocity data and area data, the arm and the tool Tool0 can move along a nonlinear path to the absolute axis position.
Example: Using Speed data v1000 and region data z50, move the tool center point Tool0 of the tool to the absolute position.
Joint Motion Command (MoveJ)
Function: When the movement does not need to be in a straight line, it is used to move the robot arm rapidly from one point to another.
Features: The manipulator and the external axis move along a nonlinear path to the target position, and all axes reach the target position at the same time.
Example: Move the tool center point, Tool0, along a non-linear path to location P10 (P20) with speed data of V1000 and region data of Z50.
Linear Motion Instruction (MoveL)
Function: Used to move the center point of the tool along a straight line to a given purpose.
Feature: This command can also be used to adjust the tool orientation when the TCP remains fixed.
Example: Move the tool's center point, Tool0, in a straight line to position P10, with speed data of V1000 and region data of Z50 (Note: the description here is slightly different from the article published in 2022, but the core meaning is the same, that the MoveL instruction is used for linear motion).
Circular motion command (MoveC)
Function: Used to move the tool center point (TCP) around the circumference to a given destination.
Features: Need to specify the arc's three control points or starting point, end point and another point on the arc.
Example: Moving the center of the tool, Tool0, around the circle to position P2 has speed data of v500 and area data of z30. At the same time, you can also move the route of the tool's tool center point, Tool0, to position P10 (as the starting point) and then move along the arc.
2. Program control instruction
Procall calls program instructions
Function: Call other programs in the main program, including the main program and subroutine.
Features: Improve the flexibility and reusability of the program.
Example: Calling a subroutine named routine1 in the main program.
Stop instruction
Function: Stop the program running.
Features: Usually used at the end of the program segment, after the execution of the instruction, the robot's program will be in a stopped state until it starts again.
3. Flow control instructions
If instruction
Function: To realize the condition judgment function.
Feature: Determines whether to execute a particular block of code based on the truth or falsity of the conditional expression.
While instruction
Function: Realize the cycle function.
Feature: As long as the conditional expression is true, the code inside the loop is repeated.
For instruction
Function: To achieve limited sub-cycle function.
Features: Control the number of loops by specifying the loop variable, start value, end value, and step size.
Break instruction
Function: Exit the loop body in advance.
Features: Usually used in combination with the If instruction to jump out of the loop when certain conditions are met.
Continue instruction
Function: Skip the rest of the current loop and go straight to the next loop.
Features: Usually used in combination with the If instruction to skip the execution of some code when certain conditions are met.
4. Other instructions
Variable declaration and assignment instructions
Function: Used to declare and modify variable values in the program.
Features: Support integer, string, array and other types of variable declaration and assignment operations.
Wait instruction
Function: To achieve the suspension function of the program.
Feature: You can specify the pause time (in seconds).
Rcv and Snd instructions
Function: Used to receive and send data respectively.
Features: Rcv instruction receives data from the specified device, Snd instruction sends data to the specified device.