1. Understanding the issues with moving straight

Importance of the construction balance on the LEGO Mindstorms robot movement

The balance of the construction of the robot has a great influence on how it will move. This is especially true if you would like to move in a straight line. If the robot is slightly heavier on the right it will move to the right. Here we have two robots - a Five Minute robot and a Box Robot and we will discuss the differences in the constructions and why the box robot is much better than the Five Minute even though it is using the same parts. 

Five Minute Bot

Building instructions for a LEGO Mindstorms EV3 Robot that we call the Five Minute Bot because it could be built in Five Minutes.

Note: If the robot is making inconsistent turns due to the floor, modify the castor wheel so it is placed further back in the construction. Thus the center of mass falls more over the tires and the turns are more consistent.

LEGO Box Robot Three - with three light sensors and one Gyro

This is a real competition robot with three light sensors and a gyro.

Importance of the wheels and tires on the LEGO Mindstorms robot movement

DIfferent wheels and tires will result in different behaviour of the robot. That is actually pretty common sense. The real question is what is the influence. Would the robot make smaller deviations if it has smaller wheels or it will make larger deviations? The tires could also be quite dirty or brand new. Or the wheels could be attached in different ways. 

In this video tutorial, I would like to do a few experiments and try to find out what is the influence of the wheels and tires on the robot movement. It will not be a fully scientifically backup experiment, because we will do only a few tries, but you can continue it at home or school following the same principal. 

Size of the wheels 

Generally, the smaller the wheels the more precise and predictable the robot is. But if they are very small then we have a very slow robot. So it is a matter of balance.

Dirt on the tires

We've seen this a lot. If the tire has some dirt this could greatly change the traction and from there the robot will move slightly to one side or it will stop in a strange way. The best thing that you could do is to implement a program where the behaviour does not depend on the dirt on the tires.

Attachment of the wheels

When attaching a wheel the axle should always be attached to at least two points. It should never be only on the motor, but also on a frame on one of the side.

Importance of the caster ball on the LEGO Mindstorms robot movement

You could use the LEGO Steel Balls as a third wheel on the robot. It is a caster wheel. But this is steel and as we know from basic existence on this planet, where there is steel there is also rust. The steel ball could get quite rusty and this could have an influence on the behaviour of the robot

Rust on the steel ball

Check your steel ball. If it is very rust try to replace it or to remove the rust. If it is rusty there is more traction between the ball and the plastic "container" of the ball.

Front or Rear wheel drive for more precise LEGO Mindstorms robot movement?

Should the robot be with a Front Wheel Drive or a Rear Wheel Drive to make it more precise? The answer is - front wheel will probably give you better results, but the wheel drive is not the most important thing. In this video tutorial on the LEGO Mindstorms Robots, we will do a few experiments to discuss the influence of the wheel drive on the precision of the movement.  

A very popular construction on our platform is the Rear wheel drive construction from the FLL Robot Chassis section from the FIRST LEGO League course. So if you need an example for a construction with a Rear Wheel Drive, just check it out.

Move forward

Given our Box Robot when it moves forward it actually has a Front Wheel Drive. 

Move backwards

When our robot moves backwards it actually has a Rear Wheel Drive 

Front and Rear wheel drive or 4x4

It is possible to build a robot with front and rear wheel drive or to build a robot with 4x4, or two have a differential on the axles. But you have to decide whether it is worth it depending on the requirements for size and complexity that you have. 

Motors and motor power influence on the robot movement. Experiment with Gyro

The robot can move with different speed by applying different power to the motors. It will most of the time make smaller deviations when it moves slower. But you can't just move with a power of 10 all the time. This is a way too slow especially for competitions like FIRST LEGO League or World Robot Olympiad. In this video tutorial I would like to discuss the balance between motor power and robot movement error, how does the battery influence the power of the robot and to conduct an EV3-G experiment that will record the values of the Gyro Sensor along with the current power. 

Different deviation for different motor power

The speed of the robot has great influence on the traction between the tires and the surface. This is the first thing that you have to be careful about. It also seems that with larger motor power there are greater deviations from the straight line, probably because the motors get out of sync for longer periods. 

Influence of the battery

Value of "100" in the block for moving forward generally means that the robot is moving forward as fast as it can. As fast as the weight of the robot allows it and as fast as the battery allows it. So the LEGO Mindstorms robot is doing it's best, but this means that the robot depends on the battery. When the battery is drained the robot will have different behaviour. That is not good. You should always try to develop robots that do not depend on the battery for their precision. 

Experiment

The experiment shows a plot of the current power and the value of the gyro sensor. Try to analyse the plot. What conclusions can you make from the it. 

Find the LEGO Mindstorms motors that work best for you

The LEGO Mindstorms EV3 set comes with two LARGE motors. But even though these motors look almost the same they are not quite the same. There are always some differences in their behaviour. If you have more than two motors, because you bought them or you won them somewhere at a competition, it is worth doing an experiment to find which pair of motors works best. 

Experiment to find Compatible Motors

Take two of the motors and make the robot move forward ten times. Measure and record the difference. Then take another pair of the motors and repeat the above experiment. At the end, you should find the pair of motors that work best. 

All the motors are compatible with each other, but by finding the once that are most compatible you will have the robot move in a straighter line.