Additive manufacturing and robotics markets are emerging into a new phase of growth and this growth is being driven by new levels of controls that allow robots to “come out of the cage” and exist next to humans. Robots of these types are frequently referred to as collaborative robots. Robots have been traditionally used to assemble, weld, paint, and shift heavy payloads and needed enormous, complex, and expensive systems to guarantee system safety. Collaborative robots are entering into the human environment, where they are assisting operators by performing a part of the heavy lifting tasks, supporting in precision movements, and substituting regular repeatable tasks with more consistency and accuracy.
A unique combination of sensing and software controls is needed to make robots more collaborative. With the introduction of collaborative controls technology, designers are encountering performance restrictions in the robot’s mechanical design, commonly in the motorized robot joints. These performance restrictions will not only decrease robot throughput but also increase cycle times. The chief goal of this article is to discover the mechanical attributes of the robot joint that limit collaborative abilities and develop an alternative design that will allow the controls group to handle these robot joints in a better manner.
Multiple motorized robot joints are employed by Selective Compliance Articulated Robot Arm (SCARA) robots, with each robot joint containing a gear system, an encoder, and a drive motor. Highly integrated designs are being stimulated by the universal quest for decreasing size, weight and complexity. These high-density robot joints are fitted with precision encoders, direct drive motors kits, and low profile zero backlash gearing. However, there are a number of challenges when it comes to decreasing size and increasing accuracy. Lack of internal stiffness is one of the main disadvantages in the mechanical area.
Mechanical stiffness, or lack of stiffness, directly impacts the dynamic performance and accuracy of any structure, and the issue is compounded when cantilevered extensions are joined to a motorized joint. With each robot pose, the load can vary significantly. The joint’s output may move if there is no movement at the input (motor) side of the joint.
Furthermore, this torsional windup will impact both dynamic performance and accuracy and the lack of stiffness will also limit how “collaborative” a robot can really be. This article looks at the source of poor stiffness, showing how information can be attained about this phenomenon and providing a solution that is a natural development of robot joint technology.
This solution uses dual encoders as well as a real-time software algorithm for active feedback and correction. With this technique, collaborative robots can challenge their non-collaborative counterparts in terms of agility and speed. Eventually, all robots can have collaborative elements that decrease the risk and improve safety in all applications.
Robot Joint Design
Design decisions usually start with some end application in mind. Today, robotics has progressed from handling heavy loads while substituting repetitive motion with more accurate motion, to movements that are more precise and decision making via the use of artificial intelligence algorithms. Usually, a highly integrated robot joint design uses a direct drive motor, (large diameter and short length) which is attached to gearing.
As the output speed is moderately low, usually 50-500 rpm, the gear set is a commendable trade off to shift the power peak to the operating point and boost the torque density. The paramount solution for torque and size is a direct drive motor attached to a high ratio low profile gear system — which also tends to be the standard in the industry. Note: direct drive methods are available that compete for this path, but only for very low weight, light payload systems such as semiconductor wafer processing.
Backlash is the typical limitation with gearing in precision applications. The position of each joint directly relies on all of the other joints before it. Consequently, zero backlash is considered to be the unsurpassed gearing solution. Zero backlash attributes are provided by cycloidal and harmonic gearing solutions. Cycloidal drives are typically used in large industrial robots for this exclusive purpose.
In the case of smaller robots, harmonic gear solutions are becoming the ideal alternative because of their light weight and low profile. Ratios in the range of 100-150:1 are frequently used; however, higher ratios (up to 300:1) are also available. One key issue with harmonic gearing solutions is that they are based on a flexure that is intended to transmit the motion between the output and the input. While this flexure is beneficial to prevent backlash, it adds to low rotary stiffness when compared to tooth-tooth contact of standard gears.
To improve stiffness, a designer can always choose a larger harmonic gear solution but that would result in additional size and weight. Also, the larger size gearing may be too much for the application and hence a better way is to maintain the small size and low weight and offset the stiffness. Simultaneous measurement of the output and input joint provides enough data to have a closed loop algorithm around stiffness and eliminate its negative effects.
Robot Joints in a Collaborative World
In the case of collaborative robots, the controller has to determine the difference between an external force applied to the robot and an internal reactive force caused by joint windup associated with low joint stiffness. Such low stiffness may push the control system to be conservative when making a correction, thus slowing down the throughput of the robot. As stated above, high stiffness is achieved at the expense of increased weight and size and potential accuracy if it requires gearing with backlash.
The most useful solution is a stiffness compensation algorithm that uses dual encoders. The robot joint motor requires an encoder in order to servo. Considering the gear ratio, the output joint requires an encoder that can define its specific accurate position in space and support the total robot trajectory accuracy needs. Therefore, two encoders are used by a majority of robot joints. The association between these two encoders can be tracked and used together with a math model of stiffness to improve robot performance, provided both encoders have realistic accuracy and high resolution.
The following sections talk about the stiffness equations as well as the selection of encoders that make it viable to offset stiffness.
Stiffness and Gearing
Conventional robot kinematic movements enable loads and reflected inertia to vary greatly with various kinds of robot poses. Each joint’s stiffness is a non-linear occurrence that depends on position and load. The absence of stiffness creates windup between the drive motor of the joint and the output of the joint. It is crucial that this residual loading is resolved before the motor control algorithm feedbacks signals to robot controller regarding any external forces applied on the robot arm.
Besides, understanding and modeling stiffness will significantly improve throughput, which, in turn, will contribute to the control loop corrections and improve bandwidth. The plot shown below is measured data from a harmonic gear set. Additionally, it has a piecewise linear equation that approximates the stiffness (lost angle when torque is applied) and detects an extra hysteresis deadband.
Figure 1. Torsional Stiffness as a function Torque and Angle. (Image credit: Cone Drive.)
Deadband (lost motion), torque, and stiffness can be best understood with an example.
A size 20 harmonic gear set has the following specifications.
- Hysteresis of 0.58 milliradian
- In a system with an input (motor side) encoder resolution of 20 bits (1048576 cts/rev), there are 166.9 counts per milliradian
- Rated actuator torque 34 NM
- Torsional deflection angle at 34 NM output = 2.097 milliradians (based on equation provided and using T and K values from the datasheet)
- Total torsional error of plus lost motion would lead to an error of 447 counts
The system mentioned above would have to be commanded 447 counts of movement at the input before there is any kind of movement at the output. In addition to monitoring joint output, dual encoders can also be used to resolve the limitations of robot joints with harmonic gear sets with constant measurement of both the input and output. If the output does not have an encoder, the robot accuracy would be subject to the torsional effects and lost motion.
Conversely, the stiffness motion error would be less than one count if the encoder on the input side had only 12 bits (1024 counts/rev) of position information. This would make the system uncontrollable and may cause instability.
However, if the encoder on the input side had reduced accuracy, for example 0.2 degrees, then the system will not be able to offset the milliradian variations in relative position between input and output encoders.
There are many implications to what has been learned above.
- As the robot moves about and halts at different poses, the load on each of the joints differs considerably.
- Even within the rating of the gearing, the input against output position can vary because of the load and the effects are non-linear.
- If the robot payload is employing the 34 NM of the harmonic gear set, the gearing will be deflected (wound up) as a result. If the robot attempts to move from this position, it could enter into the intermittent range for the gearing and more lost motion and defection would occur while in that range.
- A hysteresis deadband is present around each holding position and the size of this deadband alters with loading.
- When a human touches the robot arm, the resultant force on the arm may not be measured by the motor current until the torsional effects and deadband of the stiffness are overcome.
- This makes the robot very limited at internal force detection and also very non-linear in relation to algorithms. It would be a weak collaborative robot.
Dual Encoder Robot Joint Design Example
An example of a dual encoder robot joint design is illustrated below. It uses a frameless direct drive brushless permanent magnet motor with large through hole, two high-resolution absolute encoders, and a harmonic gear set. The total goal of this joint design is to exploit torque density for the smallest joint weight and size.
As seen above, the most crucial design challenge is lost motion because of deadband and stiffness in the gearing. The dual encoders are available to allow the control system to offset the angle differences between the input and output.
Another benefit of having two high-resolution encoders is the ability to offset the stiffness. The above instance uses load to overcome angle of deflection. Dual encoders make it possible to establish the deflection angle and the controller can properly approximate torque loading eventually compensating for stiffness.
In this case, dual encoders should have high resolution (20 bits or 1,000,000+ counts/revolution) and should be accurate to better than 50 arc-seconds (242 micro-radians). When a force is applied in the presence of torsional lost motion, there is a variation in relative encoder position and this variation can be used to establish that force has been applied. However, this would not be possible if there were just a position loop closed on the output of the robot joint.
Stiffness Compensation Technique Example
Compensating for stiffness and lost motion enables the servo loops to function at a higher bandwidth, thus accerlating the robot throughput. Similarly, force sensitivity to external loading would increase considerably using the variation between output and input encoder and at the same time moving together with an algorithm to perform real-time compensation and more accurately monitor the input command.
The following algorithm/observer can be incorporated into the forward path motion code by using the stiffness against angle equations illustrated in Figure 1. This assumes an encoder ratio of 100:1 – same resolution of output and input encoders – and measures the angle difference between both encoders. This approximates the torque error based on the stiffness curve of the gearing manufacturer.
- 0010 Encoder_Difference = Output encoder – input encoder/100
- 0020 Stiffness_Factor = 167 ‘this is the counts/milli-radian of error for specific gearbox
- 0030 Angle_offset = (Encoder_Difference/Stiffness_Factor) ‘radians
- 0040 Torque error = Angle_offset * K ‘where K is the 1st order slope of stiffness chart above
Within the robot controller, the Torque_error variable can be applied to factor into current monitor information so as to detect the actual external loading. The Torque_error variable can even be applied as a feed forward term during moves to offset the stiffness lag between actual joint motion and commanded motion.
Note: The Torsional Stiffness chart illustrated above offers only a piece wise linear approximation of the stiffness, but this is not required for the 1st order approximation to offset stiffness. Low-cost optical encoders are not traditionally used because of their low-resolution output, and magnetic encoders fail to match this accuracy level which additionally complicates the algorithms that detect lost motion. Hence, the encoders explained above are interpolated optical encoders with high resolution and high accuracy. Either absolute or incremental encoders can be used, but the former is favored for less wiring points and instant operation on power up mode.
Summary and Conclusions
In several cases, force detection is used to make the robot more collaborative. Any external force used on the robot (by a human, for example), is detected via motor current, allowing the controller to make a decision on an alternative response. This response may be to alter direction, decrease speed, or stop motion. In all situations, safety is highly crucial. Collaboration means working with and together with humans without causing any safety issues.
Two main techniques are available for embedded detection and measurement of force or torque – strain gages and motor torque. Strain gages can cover only certain single dimensions that need multiple sensors and they also pose a huge wiring challenge. The preferred technique is to detect motor torque variations as feedback from external forces applied, as it is the motor that offers the motion in the first place and its current levels are in direct proportion to its torque output. However, any compliance and decoupling of the robot mechanics from the motor results in errors in torque measurements.
The technique described in this article uses dual encoders to enhance joint accuracy and also to allow real-time monitoring of the stiffness/compliance in each robot joint. Using this technique, torque and joint position can be tracked simultaneously to provide information to the collaborative robot controller. With accurate torque and position monitoring, force sensing can be compensated even in the presence of compliance/stiffness.
Force input is related to power (current and voltage) input to the motor. When stiffness enters the system, there is a compliance in force and position that can disconnect the position and input force from the position and output force. This makes it a lot more difficult to detect an external force from human interaction.
Dual high-resolution encoders are predominantly effective when there is a potential friction deadband and a lack of torsional stiffness. A standard algorithm based on the stiffness model can be applied to compensate, thus allowing the robot to be more collaborative with good dynamic performance as demonstrated in the Stiffness Compensation Algorithm section above. This algorithm will allow the robot controller to make a 1st order compensation pertaining to stiffness limitations.
This information has been sourced, reviewed and adapted from materials provided by Celera Motion.
For more information on this source, please visit Celera Motion.