Autonomous mobile robots navigating a warehouse floor

Without Intelligent Motion Control, Mobile Robots are Going Nowhere

by Rafael Marengo

As the ecosystem for autonomous mobile robots (AMRs) gets more and more complex, and as the design complexity of robotic systems also increases, efficient movement remains at the core of the architecture.

A previous blog on communications discussed how mobile robots need to perceive their environment, communicate with several internal components, and make timely decisions. These factors combine to enable intelligent motion control as summarized in Figure 1. Smarter and more efficient motor controllers allow for less energy waste, which is a key factor since mobile robots are battery operated.

 Diagram of an autonomous mobile robot (AMR) showing 3 elements of intelligent motion control.

Figure 1. Core blocks for mobile robot intelligent motion control
 

Calculating Actuator Requirements

Mobile robots can serve various applications and move different types of loads. Therefore, they vary widely in size and shape, and so do their drive systems. Usually, the design of such systems requires a few steps to be taken. Let’s walk through a simplified scenario to describe how the decision workflow could be done. Imagine you’re designing a robot that needs to move a payload of mpayload KGs with an AMR that weighs mAMR.

 Illustration of an AMR's journey around factory equipment and obstacles

Figure 2. Example scenario for AMR operation

The first step is to understand the application and constraints of the project. Since the beginning of the design is mostly mechanical, we won’t dive into the specifics here, but for the purpose of this example, the following needs to be considered:

  1. mv: The expected vehicle mass.
  2. Dw: Wheel outer diameter.
  3. mw: Wheel mass.
  4. Drive type: Differential or Omnidirectional.
  5. Number of wheels: 2 for differential, 4 for omnidirectional.
  6. Rolling friction between wheel and floor, usually hard to calculate but estimates can be made from available literature sources.
  7. vmax and vmin: Maximum and minimum speed.
  8. nsystem: System Efficiency.
  9. SF: Safety Factor.
     

Inertia Calculations

From these considerations, it is possible to calculate the motor specifications for this application, starting with the inertia for the vehicle.

 Equation for calculating inertial motor specifications

This inertial measurement is considering a drive straight out of the motor shaft, if we have a gearbox, where GR is the gear ratio. The inertia seen by the motor is called reflected inertia and can be calculated by:

 Equation for calculating reflected inertia

 
Torque Calculations

Next, we need to calculate the acceleration torque. To get to maximum speed, we need to accelerate a load as it is shown in Figure 3, which relies on the permissible inertia of the rotor.

Graph showing the speed profile of an autonomous mobile robot (AMR) motor.

Figure 3: Speed Profile of a Motor in an AMR application

 The acceleration torque can be calculated by:

 Equation for calculating acceleration torque

Where Jm is the reflected moment of inertia and A is the acceleration rate.

We then need to calculate the load torque (TL), which can be calculated using:

 Equation for calculating load torque

Then we can calculate the total torque.

 Equation for calculating total torque
  

Motor Control

There are many other parameters to calculate for a mobile robot design, but the rest are outside the scope of this blog. Next, we will consider how to control the motor. There are several methods, but one of the most efficient ways of controlling Brushless DC motors is through Field Oriented Control (FOC).

FOC leverages real-world current and rotor position information to drive electric motors using orthogonal applied current. It generates a precise amount of torque by controlling the current needed to generate the target torque and phasing the magnetic field of magnets within the rotor. Thus, FOC can manage the torque of 3-phase motors with high accuracy and bandwidth.

FOC works by calculating a vector for the orthogonal current IQ using an accurate measurement of the position of the rotor. It then uses the current ID to control the magnetic flux inside the motor. Finally, we use two proportional and integral (PI) controllers, a torque controller which controls IQ and a magnetic flux controller which controls ID. A more detailed explanation can be found here.

 

Choosing the Best Solution for Your AMR

A motor control solution needs to fit the requirements of the project—not only the motor’s power requirements but also the interface, safety requirements, efficiency, and more. The challenges could be quickly reduced by choosing solutions that will offer the flexibility needed for the design.

For example, ADI’s TMCM-2611-AGV module is a dual-axis servo drive platform for 3-phase BLDC motors running with up to 14A RMS at +48V, which has been designed for motion control in mobile robots. A few of its benefits include:

  • Hardware based FOC control: By integrating the control onto a hardware-based solution, overhead on external processors is reduced.
  • Flexible communications: Many communication protocols are integrated, allowing for flexibility in the design. It supports RS-485, CAN and USB using the TMCL protocol.
  • Feedback sensors: Supporting options such as incremental quadrature encoder and digital hall sensor.
  • Motor Brakes: The importance of this feature will be outlined in our next blog addressing mobile robot safety standards.

 Circuit diagram for an autonomous guided vehicle (AGV) application

Figure 4: TMCM-2611-AGV Block Diagram

To learn more about Analog Devices solutions for motion control, visit analog.com/intelligent_motion_control