Foreword
Robot inertia feedforward technology is a crucial technology for B&R, and remains at the forefront of the industry. It addresses the issue of robot jitter during movement, improving the accuracy and efficiency of robot systems. Currently, this technology is possessed by only a handful of companies in the industry.
Keywords: inertia feedforward, Euler-Lagrange equations, inertia matching
I. Inertia Matching and Torque Feedforward
For motion control, inertia matching is a crucial performance requirement. For actuators, good inertia matching is essential for better dynamic performance. In an ideal rigid connection, simply calculating the required torque is enough to drive the system and achieve high dynamic characteristics. However, due to the elastic deformation of mechanical system connections, such as reducers, belts, and couplings, truly high dynamic control characteristics cannot be achieved, leading to the inertia matching problem. During the actuator's control of the load, the current loop calculation cycle is very fast. With a large inertia matching value, the system needs to provide a very large deviation to achieve the output in PID control; however, this torque output will generate significant vibration.
B&R offers a torque feedforward control model to address this problem, achieving stable control by rapidly providing inertia. However, for robotic systems, whose joints are in multi-dimensional motion states, inertia changes in multiple dimensions. How can we achieve good inertia matching to ensure high-speed operation of the robotic system?
This is a common problem in robot systems. However, B&R's system combines modeling, algorithm design, and high-speed torque control technologies to provide a solution to this problem.
II. Problems with Robot Mechanical Vibration
The Lagrange equations describe the dynamic energy problem of a robot throughout its motion. The generation of kinetic and potential energy affects the changes in parameters such as torque and position during the robot's motion, such as the change in potential energy caused by the change in the position of the robotic arm during the robot's motion.
In robotic systems, the inertia of each joint changes as the mechanical characteristics of the robot change during movement. For example, when the robotic arm extends along the X-axis, its inertia changes from maximum to minimum during rotation along the Y-axis within the range of 0 to 90 degrees. Conversely, when the arm rotates beyond the range of 90 to 180 degrees, its inertia increases again. This change in inertia causes modulated vibrations in the entire control process of the actuator, which is a common problem in current robot control.
III. B&R Dynamic Inertia Feedforward Technology
B&R's dynamic inertia feedforward technology in motion control can effectively solve this problem. For a robot system, the change of its inertia is a dynamic process and also a mathematically modelable process. Therefore, a dynamic inertia model can be established to provide feedforward variables for the system control, as shown in Figure 1 below.
Figure 1 Feedforward Model
In this model, once the set position, set speed, and acceleration values are given, the change in inertia throughout the entire motion process is calculated based on the current values and mechanical constants. The feedforward value of the torque output is then calculated and fed to the motor. This value is superimposed on the control output in the current loop of the controller setpoint, enabling the torque output to quickly achieve steady-state adjustment, thereby reducing the deviation of the torque output.
The feedforward output needs to be provided before the deviation occurs and is refreshed continuously every 50µs. Due to its high-speed refresh, the torque output value is ensured to be high-speed and high-precision, and it can synchronously follow the changes in mechanical inertia to achieve a better control state.
IV. Feedforward Model Design Based on MATLAB/Simulink
MATLAB/Simulink is currently the most popular modeling tool. Due to its cooperation with Mathworks, B&R Control Systems has established an interface connection with MATLAB/Simulink modeling and simulation software. The controller model generated by the MATLAB/Simulink simulation tool can generate C code for the controller through code automatic generation technology. This code can be imported into the B&R controller without manual rewriting, thereby realizing in-loop testing.
Figure 2. MATLAB/Simulink robot motion simulation process
A robot can be characterized as a spatial kinematic equation established by the Euler-Lagrange equations. Using MATLAB, the static parameters of the system, such as the length, mass, and joint reduction ratio of the robotic arm, as well as the dynamic parameters, such as the rotation angle, acceleration, and starting and ending positions, are input into the model. It provides a dynamic model of the Cartesian joint operating space, reflecting the relationship between the operating force and the joint force, the relationship between the velocity and acceleration in the operating space and the joint space, and establishing the relationship between the joint input torque and the output torque.
This model is a quadratic differential equation, which can be analyzed using the Euler-Lagrange method, yielding the following values:
Inertia term; centrifugal and Coriolis terms; gravitational term
Once the model is built, we can perform the following actions:
1. Establish the identification of unknown parameters
The system establishes static parameters, defines the identification of dynamic parameters through torque tracking of AS, and calculates the basic parameters.
2. Activate feedforward control
The calculated base values are output to the B&RPLC. Using AS software, a motion model is built in the PLC. After these base values are given, the system will calculate an additional torque output value.
The additional torque is output to the driver, which will pre-determine the current value in its current loop calculation, thus realizing feedforward control. This additional value is calculated continuously by the system, with microsecond-level cycles, and provided to the driver's current loop calculation.
Figure 3. Feedforward control program in Automation Studio
Figure 3 shows the model of feedforward control in Automation Studio. TrqFF is the feedforward periodic write, and 6AxATrqFF is the feedforward implementation code segment written in C code.
V. Control Effect
Figure 4 shows the torque control process variation curve obtained by sampling the entire output using the oscilloscope function of B&R Automation Studio's axis monitoring. The blue curve represents the case where feedforward control is turned off, and it can be seen that the torque variation fluctuates greatly. The red curve, on the other hand, shows the effect of using feedforward control, which significantly improves the stability of the torque output.
Figure 4 Feedforward control effect
This technology represents the highest level of robot control technology. The designed robot system has higher precision, smoother operation, and less vibration, which is obviously superior to the design of similar robot systems.