4. Basic Knowledge of Robot
4.1 Introduction to this chapter
This chapter introduces the basic knowledge of the robot. Familiarity with the contents of this chapter will help to better understand and master the use of the control system and robot.
4.2 Frame
Any object (tool, work object, etc.) in space has six degrees of freedom (DOF): three translational degrees of freedom and three rotational degrees of freedom. The three translational degrees of freedom constitute the position; the three rotational degrees of freedom constitute the orientation; and these six degrees of freedom are collectively referred to as pose. The pose of an object can be described by the frame attached to it, generally using the Cartesian frame (hereinafter referred to as the "frame"). The robot is a mechanism with multiple degrees of freedom. Its typical operation mode is to use a tool attached to the flange to execute the movements relative to external work objects. This mode of operation can be described through the frame and its relative motion. The frames currently used in the xCore system are shown below.
4.3 Singularity
There are a few special poses in the robot's working space that the robot can arrive at using a myriad of different joint configurations. Such poses are called singularities. Singularities may cause problems to the control system when calculating joint angles based on Cartesian space pose.
There are no singularity problems when the robot performs joint motion. When the robot executes a Cartesian space trajectory near a singular point, the speed of some joints may be very fast, potentially leading to an error report and subsequent cessation of the robot's operation.
4.3.1 Typical singular positions of robots
Robots with different configurations have different singular positions. Typical singular positions of some robot configurations are described below.
4.3.1.1 Singular position of the six-axis industrial robot
4.3.1.2 Singular position of ER PRO collaborative robot
The singularity of ER RPO collaborative robot can be divided into the following cases:
4.3.2 Singularity avoidance
The singularity problems stem from the robot configuration and cannot be completely avoided. In practical task programming, if the robot must pass through the vicinity of the singularities, it can be considered to reduce some constraints (such as orientation or path accuracy) to make the robot pass through the singularities smoothly. xCore Control System also provides a variety of singularity avoidance methods:
Note:
⚫ Near singularities, the movement amplitude of a robot's joints tends to be significant. Therefore, you need to confirm whether it is necessary to use a singularity avoidance command. It is preferred to avoid singularities by altering the trajectory points.
⚫ When using a singularity avoidance command, it is recommended to first confirm that the robot's trajectory with the singularity avoidance command enabled satisfies the operational requirements before performing the official operation.
⚫ Near singularities, the movement amplitude of a robot's joints tends to be significant, so you need to confirm the surrounding environment before using it.
⚫ In view of the above reasons, if the robot operating point or program run logic is affected by external signals, it is recommended to carefully confirm the program logic and trajectory before use.
The specific characteristics of the above three singularity avoidance methods are as follows:
4.4 Turning zone
The motion of a robot typically involves sequentially executing multiple trajectories programmed and set by the user. Usually, these trajectories are not smoothly connected, and there are various "spikes" between them. The presence of these "spikes" forces the robot to first stop at the end of a trajectory before starting the next trajectory. To enable continuous motion between trajectories, it is necessary to eliminate such "spikes", and different trajectories can be smoothly connected by generating turning zones. See the following figure:
The turning zone type includes Cartesian space turning zone and joint space turning zone. For the detailed definition and specific parameters of the turning zone, please refer to the section below, "RL Command"-"zone".
4.5 Lookahead mechanism
Lookahead means that the control system handles the subsequent program commands in advance when the robot is executing the current command during robot movement.
The introduction of the lookahead mechanism can be advantageous in the following aspects:
⚫ Obtain the speed of the front trajectory, the acceleration requirements, and the constraints of the robot itself, so as to plan the control strategy for optimal performance;
⚫ Plan the turning trajectory of the turning zone according to the settings of the programmed turning zone;
⚫ Acquire an abnormal state near the soft limit/boundary and singular points, etc., so that it can be handled in advance;
For a more detailed introduction to the lookahead mechanism, refer to the section below, "Programming"-"About RL program"-" RL program debugging".
4.6 Force control
4.6.1 Introduction to force control
The robot force control is a process of interaction between the robot end-effector and forces in the external environment. During non-contact robot motion control, only the position control process (velocity and accuracy) is considered. When there is contact with the environment, pure position control requires very high accuracy of the robot and the environment to avoid damage to the robot and the environment caused by contact forces resulting from positional deviations. Unlike pure position control, robot force control introduces a force/torque feedback loop when interacting with the environment. The loop is used to change the motion characteristics of the robot, which enables dynamic interaction with the external environment. When there is deviation or uncertainty between the robot and the external environment, the force control will intelligently adjust the preset position trajectory to eliminate the internal force caused by the position deviation and ensure a smooth and safe interaction process
4.6.2 Impedance control
Compared with traditional industrial robots, xMate collaborative robot is equipped with torque sensors in its joints, which enable it to sense joint torque precisely. The joint torque information allows the xMate collaborative robot to achieve force control through impedance, making the robot have compliant interactive behaviors. This means the interaction between the robot and the environment is like a virtual spring stiffness and damping system. At this point, the robot is sensitive to external forces, which can cause the robot to deviate from a predetermined trajectory. When the external forces disappear, the robot can rebound to some extent.
In the process of impedance motion, the actual position of the robot will deviate from the desired position when affected by the external forces in the environment. The deviation depends on the impedance stiffness and the external forces, and it can be calculated through the ratio between the external force and the impedance stiffness. As shown above, in the impedance control mode, with impedance stiffness set to K and under the action of external force Fext, the robot's current position Pcur will deviate from the desired position Pdes, and the position deviation is Δx. The impedance force caused by this deviation and the external force will eventually reach an equilibrium.
The impedance stiffness in each direction can be set individually, and the impedance force in each direction is the product of the impedance stiffness and the position deviation in this direction. The impedance forces in all directions are ultimately combined to form the total impedance force. In the figure below, the robot's current position Pcur deviates from the desired position Pdes due to the action of external forces in the impedance mode. In the X and Y directions, the deviations are Δx and Δy, the impedance stiffnesses are Kx and Ky, and the impedance forces are Fx and Fy, respectively. The total impedance force F = Fx + Fy
4.6.3 Force control search
When assembling work objects, humans can feel the change in force by hand. If an obstruction (a work object is stuck) is detected, humans will try shaking to ensure a smooth installation. Force control allows the robot to do the same thing, i.e. overlay. The robot supports sine overlay rotating around an axis and Lissajous overlay within a plane. Overlay is an additional movement superimposed on the robot's predetermined motion. Overlay allows the robot to exhibit a certain degree of shake, enabling it to better overcome obstacles during assembly. Below is a sine overlay:
Lissajous overlay refers to the application of sine search motions in two perpendicular directions within a plane, and the frequencies of the two overlays are often proportional. For example, below shows the Lissajous overlay in the XY plane, where the frequency ratio of x- and y-direction overlay are 2:1. The center point Pstart is the desired pose, Xamp is the amplitude of the x-direction overlay, and Yamp is the amplitude of the y-direction overlay
4.6.4 Force control application
The application scenarios of force control for industrial robots can roughly be divided into two categories: constant force tracking and force-controlled assembly.
4.6.4.1 Constant force tracking
Below is a constant force tracking scenario. The robot ensures a constant contact force Fdes with the surface, while the robot can conform to the surface curve. Main applications of constant force tracking include grinding and deburring.
4.6.4.2 Force-controlled assembly
If pure position control is used during the assembly, the robot may easily collide with the work object due to position and modeling errors, which can cause damage to the work object or the robot. But with force control, the robot will try to overlay (shake) to overcome the obstruction when it senses an external force over the limit (work object jamming), thus allowing smooth work object installation. As shown below, the position control on the left results in a collision during assembly, while the force control on the right pushes the robot into the assembly hole through the desired force Fdes, and the jamming is prevented through overlay Foverlay















