Robotics Articles and FAQs For Table Top Robotics: Lego Education Products; EV3, Spike Prime

Practical troubleshooting tips, programming guidance and training resources for classroom robotics teams, including LEGO Education EV3 and NXT.

Why Won't My Robot Run Straight?

Start by checking the robot's wheels, construction, balance and motor behavior. These are the common causes discussed in our original troubleshooting guide.

  • USING PUFFY WHEELS:  The basic pneumatic wheels that come with the starter kits compress easily and therefore constantly change diameter. The are also lumpy on the tread area. A robot of even moderate weight will force the wheel to compress as it drives creating unpredictable and uncorrectable changes in direction. The solution: Find wheels with hard, solid treads. 
  • USING A SINGLE AXLE MOUNT: If your wheel is attached by an extended axel only (not supported on both ends) then you again, create unpredictable and uncorrectable changes in direction. Why? The LEGO axles are very flexible, and the motor drivers have play in them as well. Wheels must have a rigid, matching mount on both sides to ensure stability.
  • IMPRECISE TRACKER WHEELS OR GLIDES: Similar to "SINGLE AXLE MOUNT," if you have trailing wheels or glides (ball bearing or sliders or wheels) that are imprecise and not firmly mounted, it will wobble as you drive and respond to variations on frictional coefficient of the surface. This is particularly present in caster type wheels. 
  • NON-CALIBRATED MOTORS: The NXT and EV3 motors are all amazing, powerful, and precise. But they are not all the same. We published a very simple way to calibrate your motors. 
  • OUT OF BALANCE ROBOTS: Try to make your robots center of gravity in the center, seriously. A robot with a very heavy attachment or device on one side will cause the robot to track erratically.
  • TEST TEST TEST: After you have followed all the steps above do multiple line runs on a smooth surface twice the length of the table. Try to isolate what is causing any drift and correct with that setup. Then document it.
  • IMPLEMENT A GYRO SENSOR:  This is very difficult to do and the Gyro sensors have their own drifting issues. However, there are hundreds links on Google on how to do this.  Check them out:  https://www.google.com/search?q=using+ev3+gyro+sensors+to+run+straight

Why Master EV3 Software?

Basic movement commands can complete introductory challenges, but small changes in traction, battery charge, robot construction and competition tables can affect repeatability. The original guide recommends learning sensor feedback and more advanced programming techniques.

Start with basic commands

  • Drive for N rotation or degrees.
  • Turn with the turn function.
  • Run some other motor.

Understand the limitations

  • It is at all times unpredictable. A minor change in battery charge, change in humidity (effecting traction), a bump in the table surface, human variance/adrenaline, and more, all combine to make it hard to run repeatable missions.
  • The imprecise mechanical properties of LEGO robotics. Even if you follow all the recommended construction techniques which include axles mounted with holders on both sides, wheels that don't compress, tightly installed motors, good center of balance, it is still an imprecise system.
  • Variations in tables from event to event. Even thought all tournament directors strive to make sure the tables are competition ready and field kits are setup according to the guidelines, there are slight variations. Therefore, programming that relies on a precise positioning of the mat will fail.
  • The speeds required to complete some challenges will cause wide variations in directional performance.

Build confidence with sensors

  • Use of light sensors and all the related functionality. In particular, to capture and follow a line, follow one edge of a lines and switch edges, count objects, stop at a color or shape, measure with precision variations in color or shade, and how to calibrate them to the lighting at the event.
  • Use of touch sensors in conditional programming. They need to know how to use them to stop at an object, confirm an action.
  • Use of gyro sensors. These sensors have their own touchy issues, but they can be used effectively to keep the robot running straight and making precise turns.
  • Use of ultrasonic sensors. While these are not effective at distance, they do work well in close quarters.

Practice advanced programming

  • Conditional looping and switching.
  • Branching.
  • Parallel tasks.
  • Use Loops and Switches to avoid an obstacle
  • Navigate using Motor Rotation sensor feedback
  • Navigate using Gyro Sensor feedback
  • Simplify programs using My Blocks
  • Simplify programs using Arrays
  • Storing and transferring variable values from step to step.
  • Doing calculations based on stored values.
  • And more.
Use competition videos and sample programs to study how teams approach precision and repeatable missions.

Build Skills with Robotics Challenge Mats

For students beginning their robotics journey, start with the EV3 Introduction to Programming Mats and accompanying free curriculum. Teams with prior experience can practice with general challenge mats.

Looking for downloadable lessons? Explore robotics challenge mat curriculum →