Overall dimensions of the Chinese robot motor. Rectilinear movement, turns, turn on the spot stop

Motors for the robot are part of the drives. We learned about robotics in general in step one. At the second step, we decided what kind of robot we will make. We need to install actuators that will make the robot move.

The choice of a motor for a robot directly depends on the tasks that the robot must perform. The engine (motor) can be part of the drive or separately be a drive.

An actuator can be defined as a device that converts energy (usually electrical energy in robotics) into physical motion.

The vast majority of actuators produce either rotary or linear motion. For example, a motor is a type of drive. Right choice actuators for your robot requires understanding what actuators are available. Perhaps a little fantasy, and a little math and physics.
Rotary drives are a type of drives that convert electrical energy into rotational motion.

AC motor

An alternating current (AC) motor is rarely used in mobile robots. Primarily because most of them are powered by direct current (DC) from the battery. AC motors are mainly used in industrial premises where very high torque is required. First of all, where the motors are connected to the mains.

DC motors


DC motors MotorDC motors come in a variety of shapes and sizes. Although most of them are cylindrical. They have an output shaft that spins at high speeds, typically 5,000 to 10,000 rpm. Although DC motors spin very fast, most of them are not very powerful. Such robot motors have low torque.

Reducers can be added to reduce speed and increase torque. To install the motor on the robot, you need to attach the motor housing to the robot frame. For this reason, robot motors often have mounting holes, which are usually located on the front side of the motor. Therefore, they can be installed perpendicular to the surface.

DC motors can be operated clockwise (CW) and counterclockwise. The angular movement of the shaft can be measured using encoders or potentiometers.


It is a DC motor combined with a gearbox. It works to reduce engine speed and increase torque. For example, a DC motor rotates at 10,000 rpm and achieves 0.001 Nm of torque. If we add a 100:1 downshift (one hundred to one) we will reduce the speed by a factor of 100. As a result, 10000 / 100 = 100 rpm and increase the torque by 100 times (0.001 x 100 = 0.1 N * m).

The main types of reduction gears are:

  1. gear
  2. belt
  3. planetary
  4. worm

Worm gear allows you to get a very high gear ratio with just one stage. It also prevents the output shaft from moving if the engine is not running.

Servo motor

The type of motor you use depends on the type of movement you want.

R/C or hobby servo motor


Often servos of this type can rotate up to 180 degrees. They rotate at a certain angle of rotation. And often used in more expensive models of remote control means for flight control or control.

Now they are used in various applications. The prices of these servos have dropped significantly, and the variety (different sizes, technologies and strengths) has increased. A common factor for most servos is that most only use around 180 degrees of rotation.
The R/C servo motor includes a DC motor, gearbox, electronics and a rotary potentiometer that measures the angle.

The electronics and potentiometer work in sync to control the motor and stop the output shaft at a given angle. These motors usually have three wires: ground, V, and a control pulse. The control pulse is usually taken from the servo motor controller. Hobby servomotor is new type servo. It involves continuous rotation and position feedback. All servos can rotate either to the right or to the left.

Industrial servomotors


An industrial driven servo motor drives differently than a hobby motor and is more common on very large machines. An industrial servo motor is usually three-phase and consists of an AC motor, a gearbox, and an encoder. The installed encoder provides angular position and speed feedback.

These motors are rarely used in mobile robots due to their weight, size, cost, and complexity. You can see industrial servo motors on powerful industrial manipulators. They can be used on very large robotic vehicles.

Stepper motors


A stepper motor rotates in certain “steps” (actually, specific degrees). The number of steps and step size depends on several factors. Most stepper motors do not include gears. Since these are DC motors and the torque is low.

A properly tuned stepper motor can rotate right and left and can be set to the required angular position. There are unipolar and bipolar types of stepper motors. One notable disadvantage of stepper motors is that if the motor is not running, it is difficult to be sure of the starting angle of the motor.

If you add a gear, then a stepper motor has the same effect as adding a gear to a DC motor: It increases torque and reduces angular velocity. As the speed is reduced by the gear ratio, the step size is also reduced by the same factor.

Linear drives

A linear actuator produces linear motion (movement along a single straight line) and has three main distinguishing mechanical characteristics.

  1. Minimum and maximum distance that the rod can move the shaft (in mm or inches)
  2. Their strength (in kg or pounds)
  3. Their speed (in m/s or inch/s)

DC Linear Actuator


A DC linear actuator often consists of a DC motor connected to a worm gear. When the motor is spinning, the propeller mount will either be closer or further away from the motor. Essentially, a worm gear converts rotational motion into linear motion.

Some DC linear actuators include a linear potentiometer which provides linear feedback. In order to stop the actuator from completely breaking down, many manufacturers include limit switches at both ends. Typically, to cut off the power supply of the drive when you press them. DC linear actuators come in a wide variety of sizes and types.


The solenoid consists of a coil wound around a moving core. When the coil is energized, the core is repelled by magnetic field and makes movements in one direction. Several coils or some mechanical mechanisms will be required in order to provide movement in two directions.

Solenoids are usually very small, but their speed is very high. The strength depends mainly on the size of the coil and how much current flows through it. This type of actuator is used in valves or latching systems. These systems usually do not feedback by position (the core is either fully retracted or fully extended).

Pneumatic and hydraulic drives


Pneumatic and hydraulic actuators using air or liquid (eg water or oil) serve to move linearly. These types of drives can have very long strokes, high power and high speed.

In order to be operated they require the use of a fluid compressor. This makes them more difficult to operate than conventional electric actuators. They have great power, speed and are usually large in size. And primarily used in industrial equipment.

Drive selection

It is important to note that new and innovative technologies and nothing is permanent. Also note that a single drive can perform very different tasks in different conditions. For example, with different mechanics. An actuator that produces a linear motion can be used to turn an object backwards as well (similar to car glass cleaners).

Robots with wheels or tracks


The drive motors for the robot must move the weight of the entire robot and will most likely require a reduction gear. Most robots use braking with wheels on one side. Whereas cars or trucks tend to use steering.

If you choose skid steer, DC geared motors are the perfect choice for robots with wheels or tracks. After all, they provide continuous rotation, and can have optional position feedback using optical encoders. They are very easy to program and use.

If you want to use steering you will need one drive motor and one motor to steer the front wheels. Rotation is limited to a certain angle and R/C servo can be applied.


The motor is used to lift or turn a heavy weight. Lifting a weight requires significantly more energy than moving a weight on a flat surface. Speed ​​must be sacrificed in order to gain torque.

Therefore, it is best to use a high ratio gearbox and a powerful DC motor or DC linear actuator. Consider using a system (either worm gears or clamps). This prevents the load from falling in case of loss of control.

Motor servos

Used when range is limited to 180 degrees and torque is not significant. The R/C servo motor is ideal for such tasks. Servo motors are available in various torques and sizes and provide angular position feedback.

It is better to use a potentiometer and some specialized optical encoders. R/C servos are being used more and more to build small walking robots.

Stepper motors

Used when the angle of rotation must be very precise. Robot stepper motors combined with a stepper motor controller can produce very precise angular motion. Servo motors are sometimes preferred as they provide continuous rotation. However, some professional digital servo motors use optical encoders. As a result, they have very high accuracy.

Linear drives

Linear actuators are the best for moving objects and arranging them in a straight line. They come in a variety of sizes and configurations. For very fast movement, pneumatics or solenoids can be considered. For very high powers, DC linear drives and also hydraulics can be considered.

Practical example

  • In Lesson 1, we defined the goal of our project to understand what type of mobile robot can be built on a small budget.
  • In Lesson 2 we decided that we wanted a small platform on wheels. First, let's determine the type of drive that will be required to build the robot.

To do this, you need to answer five questions:

  1. Is this drive used to move the wheeled robot?
    Yes. You need a gear motor with control by braking one side. This means that each wheel will need to be equipped with its own motor.
  2. Are robot motors used to lift or turn heavy weights?
    No, a desktop platform doesn't have to be heavy.
  3. Is the range of motion limited to 180 degrees?
    No, the wheels can keep turning.
  4. Angle must be accurate?
    No, our robot does not require positional feedback.
  5. Is it a straight line?
    No, since we want the robot to rotate and move in all directions.

All these requirements are met big motor from the LEGO MINDSTORMS Education EV3 Core Set.


EV3 Large Motor Specifications

The engine (drive, motor) is an integral part of the robot, which drives not only the robot, but also various mechanisms or manipulators that the robot is equipped with. In a word, the motor for the robot converts electrical energy into motion energy.

In robotics, there are mainly three engine type: DC motors, stepper motors, servo drives and RC type (with radio control).

What size, what power motor should be used?

What type of engine is more suitable for a particular robot? It all depends on the chosen design of the robot. For a robot with movement on wheels, you can choose several types of design:

  • two driving wheels are connected to one motor and the other two wheels turn. In a word, the robot looks like a car;
  • two driving wheels are connected to one engine and one wheel as a steering wheel;
  • two wheels are connected to two different engines and two more wheels as balancing ones ( the most common option), it turns out a tank on wheels.

If we classify the engine power, we get the following:

  • geared DC motors. The most powerful motor, can be used in almost any type of robot;
  • servo motors. Used in robots weighing less than 2.5 kg. and in types of robots with legs;
  • stepper motors. Perhaps the weakest, used in small and light robots.

Let's look at the positive and negative sides each of the engines.

DC motors

Advantages:
- Easily available on the market
– Wide range of engines
- The most powerful
- Easy to connect
- Not required for large robots

Disadvantages:
- Too fast, need a gearbox
- high consumption
- Difficult to install wheels
- More expensive

Best for:
- big robots

Servo motors:

Advantages:
- Built-in gearbox
- Diversity
- not so expensive
- Suitable power for small robots
- Easy to install
— Average energy consumption

Disadvantages:
- Not suitable for large robots
- Pretty low speed

Best for:
- small robots
- Robots with legs

Two years ago, when I first started multicopters, I had to make a small . Since the quadrocopter was conceived as a purely autonomous, all that was required from this remote control was to control the drone during testing and tuning.

In principle, the remote control coped with all the tasks assigned to it quite successfully. . But there were also serious shortcomings.

  1. Batteries did not fit into the case, so I had to tape them to the case with electrical tape :)
  2. The parameter setting was carried out on four potentiometers, which turned out to be very sensitive to temperature. In the room you set up some values, you go out into the street - and they are already different, sailed away.
  3. The Arduino Nano I used in the remote has 8 analog inputs in total. Four were occupied by tuning potentiometers. One potentiometer served as gas. Two inputs were connected to a joystick. Only one exit remained free, and there are much more parameters to configure.
  4. The only joystick was not a pilot at all. Controlling the gas with a potentiometer was also quite depressing.
  5. And the remote did not make any sounds, which is sometimes extremely useful.

To eliminate all these shortcomings, I decided to radically redo the remote control. Both hardware and software. Here's what I wanted to do:

  • Make a large case so that you can stuff everything you want into it now (including batteries), and what you want later.
  • Somehow solve the problem with the settings, not by increasing the number of potentiometers. Plus, add the ability to save parameters in the console.
  • Make two joysticks, like on normal pilot consoles. Well, put the joysticks themselves orthodox.

New building

The idea is extremely simple and effective. We cut out two plates from plexiglass or other thin material and connect them with racks. The entire contents of the case is attached to either the top or bottom plate.

Controls and menus

To control a bunch of parameters, you either need to place a bunch of potentiometers on the remote control and add an ADC, or make all the settings through the menu. As I said, setting with potentiometers is not always a good idea but it shouldn't be abandoned either. So, it was decided to leave four potentiometers in the remote control, and add a full-fledged menu.

Buttons are usually used to navigate through the menu and change parameters. Left, right, up, down. But I wanted to use an encoder instead of buttons. I got this idea from a 3D printer controller.


Of course, due to the addition of the menu, the remote control code has swelled up several times. To start, I added just three menu items: "Telemetry", "Parameters" and "Store params". The first window displays up to eight different indicators. So far I only use three: battery power, compass and altitude.

Six parameters are available in the second window: PID controller coefficients for X/Y,Z axes and accelerometer correction angles.

The third item allows you to save parameters in EEPROM.

Joysticks

I did not think about the choice of pilot joysticks for a long time. It so happened that I got the first Turnigy 9XR joystick from a colleague in the quadcopter business - Alexander Vasilyev, the owner of the notorious site alex-exe.ru. The second one I ordered directly from Hobbyking.


The first joystick was spring-loaded in both coordinates - to control yaw and pitch. The second one I took the same, then to convert it into a joystick to control thrust and rotation.

Nutrition

In the old remote I used a simple LM7805 voltage regulator fed with a bunch of 8 AA batteries. A terribly inefficient option, in which 7 volts went to heat the regulator. 8 batteries - because there was only such a compartment at hand, and LM7805 - because at that time this option seemed to me the simplest, and most importantly, the fastest.

Now I decided to be wiser and put a fairly efficient regulator on the LM2596S. And instead of 8 AA batteries, I installed a compartment for two LiIon 18650 batteries.


Result

Putting it all together, we got such a device. Inside view.


Here it is with the lid closed.


There is not enough cap on one potentiometer and caps on joysticks.

Finally, a video on how the settings are configured through the menu.


Outcome

Physically, the remote is assembled. Now I am engaged in the fact that I am finalizing the code of the remote control and the quadrocopter in order to restore their former strong friendship.

In the course of setting up the remote control, shortcomings were identified. Firstly, the lower corners of the remote control rest against my hands: (Probably I will redesign the plates a little, smooth the corners. Secondly, even a 16x4 display is not enough for a beautiful telemetry output - I have to reduce the names of the parameters to two letters. In the next version of the device, I will install a dot display , or immediately TFT matrix.

How to choose suitable motors for wheeled robot? It is not easy to answer this question exactly at the beginning of the robot design. To do this, you need to know the weight of the robot, and it has not yet been built. But, specifications and the size of the engines significantly affect the final parameters of the mobile robot. In order to obtain complete information, it is necessary to take into account torque, speed and power. For a wheeled robot, it is also necessary to select the diameter of the wheels and determine the correct gear ratio for calculating the speed of its movement.

Torque

Motor torque is the force with which it acts on a rotating axle. In order for the robot to move, it is necessary that this force exceed the weight of the robot (expressed in N/m).

Some use instead of the concept torque, term torque. Essentially, they are one and the same. Both are moments, just in engineering, torque is the load on the wheel, and torque is the load in engineering science called "Strength of Materials".

Consider a highly simplified idealized model of a wheeled robot.

In our case, the weight of the robot is 1 kg, and we want to achieve the maximum speed of its movement 1m/s with wheel radius equal to 20mm.

When moving in a straight line for a distance 1m, calculate the acceleration required to reach the speed in 1m/s.

where is the distance traveled by the robot, is its initial speed (we start from a place, therefore ),

where is the speed of the robot, is its acceleration.

Substituting the values ​​accepted in our model, we get

m/s 2

The torque required to move the robot and obtain the acceleration required to reach its maximum speed is calculated as follows:

When is the moment of inertia and is the angular acceleration, we obtain

Here m/s 2— gravitational acceleration (round up to 10), — radius of the wheel, — mass of the entire robot

Substituting the values, we get

mN m

To convert the value expressed in N m to kg cm, it is necessary to take into account that 1N \u003d 0.102 kg and 1 m \u003d 100 cm. Therefore, 50 mN m \u003d 50 0.102: 1000 * 100 \u003d 0.51 kg cm.

The resulting torque is distributed between the two motors of the robot and it still needs to be divided by the gear ratio of the gear used (you can read more about gears).

Power

To calculate the maximum power of the engines, we need the speed, which is expressed in revolutions per minute

(rpm) =

or in radians per second

(rad/s) =

through the circular frequency

Substituting the radius of the wheel, we get

rad/s

rpm.

Motor power is proportional to torque and speed:

Substituting here the formulas for torque and frequency, we get:

Using the eigenvalues, we get

Again, we got the total power for all engines, in our case there are two engines, so we need to divide the result by two and, as in the case of the torque calculation, if gears are used, divide by the gear ratio.