Collaborative Robotics:
Programmable vs. Fixed-Function Controllers
Read the full Collaborative Robotics eBook:
By Bill Schweber for Mouser Electronics
Motion control of today’s sophisticated robotic arms, regardless of their size or power, often requires simultaneous management of multiple axes. Modern electronics—including motors, device drivers, control systems (formerly all analog, but now digital), feedback sensors, and power-switching devices such as metal-oxide semiconductor field-effect transistors (MOSFETs) and insulated-gate bipolar transistors (IGBTs)—now make achieving precise motion control easier than it was just a few years ago (Figure 1). At the same time, however, the demands on system performance have increased dramatically, so the overall project of implementing motion control is as difficult as ever.
Figure 1: A basic motion-control system for robotics includes algorithm-execution functions, motor drivers, power devices, a feedback path, mechanical linkages, a motor, sensors (in most cases), voltage and current measurement, and key-point control.
Nonetheless, there’s one unavoidable fact: Robotics is largely a mechanical function, so in reality mechanical systems must be configured into the control loop. These systems include gear backlash, mechanical tolerances, vibration, motor performance, mass inertia rotation, momentum, mechanical structure flexibility, variable loads, and more. For these reasons, it’s important to choose the type of motor that best suits the robotic operation you’re trying to achieve—usually the best choice is a brushless DC motor or stepper motor in low to moderate power situations.
Another vital decision relates to sensor-based feedback. Most robotic applications use some type of feedback sensor to accurately gauge the end-effector’s position and thus its velocity and acceleration (recall that velocity is the time integral of position, and acceleration is the time integral of velocity). This feedback transducer can be a Hall-effect sensor, a synchro/resolver, or an optical encoder. While it’s easiest to put the encoder on the motor, because of the mechanical issues noted above, placing it there may not produce sufficiently accurate data about the end-effector’s actual situation for the application. Therefore, the sensor may need to be mounted closer to the load endpoint.
Some motion-control applications operate without a sensor, which reduces the cost and mechanical complexity. Rather than using a sensor for feedback, sensorless field-oriented control (FOC, also called vector control) uses precise, synchronized readings of the current and voltage at each phase of the motor windings; FOCs then perform complicated frame-of-reference transformations and matrix calculations in real time to determine a motor’s position. Eliminating the sensor reduces the hardware cost, but it necessitates significant computational capability and more complex programming. Many robotic designs still prefer to use sensors because FOC doesn’t provide the same level of confidence, credibility, and robustness that using a direct-sensor readout offers.
Understanding Basic Robotic Configurations
While the general public may associate the term “robot” with a mobile, lifelike servant or assistant, most robotic systems in the industrial domain are stationary and use a variety of mechanical arms and configurations to perform tasks. Among the most common arrangements are:
Cartesian Robot
The Cartesian robot, which has three linear motion axes, one for each of the x-, y-, and z-planes (Figure 2). This robot is used for pick and place machine operations, sealant applications, and basic assemblies.
Cylindrical Robot
In a cylindrical robot, all motion is confined to a cylinder-shaped zone. It combines linear motion in the y-plane, linear motion in the z-plane, and rotational motion around the z-axis (Figure 3). This robotic arrangement is used for assembly, tool handling, and spot welding.
Figure 2: The Cartesian robot is the easiest to comprehend and control because it has the simplest equations and works in the x-, y-, and z-planes
Figure 3: The cylindrical robot has motion along two linear axes and around one rotational axis.
Spherical Robot
The spherical or polar robot combines two rotary joints and one linear joint, and the arm is connected to the base with a twisting joint (Figure 4). Its motion is defined by a polar coordinates system and confined to a spherical zone. This robot is found in welding, casting, and tool-handling applications.
Figure 4: The spherical or polar robot combines motion around two rotary axes and along one linear axis, and it requires numerous calculation-intensive transformations between coordinate frames of reference.
The robotic approaches cited here offer three degrees of freedom, using a combination of linear and rotary motion. However, some applications need only one or two degrees. More advanced robotic arms, or articulated robots, combine additional linear and rotary motion for almost human-like dexterity and flexibility (Figure 5). Some high-tech arms provide six, eight, or even more degrees of freedom.
Figure 5: The articulated robotic arm combines multiple rotation and linear motion modes for many degrees of freedom, but it also requires careful coordination among the actuators and arms.
Other designs use special combinations of linear and rotary motion for application-specific situations, such as the parallelogram implementation, an implementation used for precise and rapid motion over short distances (for example, to pick and place tiny components). As the number of degrees of freedom increases, achieving rapid, smooth, accurate, and synchronized control along each of these degrees grows exponentially more challenging.
Considering Trajectory Profiles
The motion-control objective in robotics seems simple enough: Have the end-effector optimally reach its target position as quickly and accurately as possible with the supported load. Of course, there are tradeoffs involved, as in all engineering decisions, depending on the priorities associated with the optimum result in the given application.
For example, is it acceptable to accelerate and decelerate quickly to rapidly reach a higher velocity if the result is overshot and if there is even possible oscillation at the endpoint? Is it worth trading accuracy for speed, and to what extent? How are the choices of acceleration, velocity, and position related to the desired transition from position A to position B? What are the priorities and parameters that define “optimum” in a particular application?
Specialists in motion control for robotics and other motion applications have developed standard trajectory profiles that provide various ways to implement the desired tradeoff solution for a given application. All choices involve significant real-time calculations based on the present situation and feedback signal, but some impose a more substantial, high-resolution computational burden. These profiles include:
The Simple Trapezoid
Where the motor accelerates at a fixed rate from zero to a target velocity, stays at that velocity, and then ramps down at a fixed rate to zero velocity at the desired position (Figure 6). Higher rates might speed up the entire positioning cycle, but they might also induce sudden changes in acceleration motion (called the jerk) that, in turn, adds inaccuracy and overshoot.
Figure 6: The simplest motion-trajectory profile is the trapezoid, which has constant acceleration to the target velocity, constant path velocity, and constant deceleration between the start and endpoints.
The S-Curve
A frequently-used enhancement to the trapezoid, where the acceleration rate ramps up from zero then decreases as the target velocity is achieved (Figure 7). As the target position is reached, the deceleration rate is ramped up and then reduced as the endpoint is near. The S-curve has seven distinct phases, in contrast to the three phases of the trapezoid.
The Contoured Motion
Where the user establishes a set of desired positions, and the motion controller directs a smooth, jerk-free transition profile through all these positions (Figure 8). This allows the ultimate flexibility and control, which is necessary for advanced-motion situations. The required control-direction calculations to achieve smooth curve-fitting are complex and must be accomplished without the loss of resolution due to rounding or truncating errors, despite the many calculations.
Figure 7: The S-curve path is more complicated than the basic trapezoid, but it eases the jerk (change in acceleration) at each transition point of the path.
Figure 8: The contoured-motion path allows the user to define a series of position-marker points between the start and endpoints, and the controller must guide the end-effector through these points in a smooth curve.
Other Profiles
There are other profiles in use, some of which are associated with specific application groups or industries. Regardless of the desired profile, it’s one thing to want it and another to make it happen. The well-known, highly effective proportional-integral-derivative (PID), closed-loop, control algorithm is the most common approach used to drive a motor and end-effector to do what one desires with a high-enough-level of accuracy and precision.
Effective control of a single axis is a manageable project, but robotic control becomes far more difficult when this control extends to two, three, or even more motors and degrees of freedom, which must be closely coordinated and synchronized, with the performance one element dependent on the status of the others.
Determining Standard vs. Custom Motion-Control Applications
For standard motion-control applications, a dedicated, fixed-function, embedded controller integrated circuit (IC) offers ease of use and rapid time-to-market. In contrast, if a nonstandard, customized profile is necessary or if the correlation between the various axes is complicated and must accommodate unusual or unique events, then the Design team may consider a fully user-programmable processor. This solution is implemented using a processor with digital-signal processor (DSP) capabilities for the computation-intensive aspects or with a field-programmable gate array (FPGA). When considering programmable devices, the vendor, third-party tools, and available software modules are factors of importance in addition to the hardware functions of the IC itself in making a specific selection.
Be aware that these controllers are generally not the same as motor drivers, which are the MOSFET/IGBT drivers and devices that control motor power. This is the case for two reasons: First, these power devices must be sized to the motor, independent of the controller. Second, the high-density, complementary, metal-oxide-semiconductor-based process technologies used for these digital controllers are very different than the processes for power devices. For smaller motors, however, it is possible to integrate a controller with a driver and power device. Despite the fundamental differences, the term “controller” often refers to the power-device functional blocks, which can lead to confusion in keyword searches.
Conclusion
Motion-control options for robotics range from basic, dedicated-function ICs to highly integrated, extremely flexible microcontroller units (MCUs) with a large array of auxiliary-processing and support functions. Although embedded devices may seem limiting, some of them allow a selection of a variety of motion profiles and the setting of critical parameters, and they are quite adequate, low in cost, and easy to use. For advanced designs with unique or extremely sophisticated requirements or for designs needing additional levels of connectivity along with control, MCUs offer effective solutions with evaluation and development kits supported by verified code packages, debug and code-development tools, and validation suites.
Bill Schweber is a contributing writer for Mouser Electronics and an electronics engineer who has written three textbooks on electronic communications systems, as well as hundreds of technical articles, opinion columns, and product features. In past roles, he worked as a technical web-site manager for multiple topic-specific sites for EE Times, as well as both the Executive Editor and Analog Editor at EDN. At Analog Devices, Inc. (a leading vendor of analog and mixed-signal ICs), Bill was in marketing communications (public relations); as a result, he has been on both sides of the technical PR function, presenting company products, stories, and messages to the media and also as the recipient of these. Prior to the MarCom role at Analog, Bill was associate editor of their respected technical journal, and also worked in their product marketing and applications engineering groups. Before those roles, Bill was at Instron Corp., doing hands-on analog- and power-circuit design and systems integration for materials-testing machine controls. He has an MSEE (Univ. of Mass) and BSEE (Columbia Univ.), is a Registered Professional Engineer, and holds an Advanced Class amateur radio license. Bill has also planned, written, and presented on-line courses on a variety of engineering topics, including MOSFET basics, ADC selection, and driving LEDs.