Why Robot Always Go Left?

Guys, I got a problem. Recently I found my robot cannot go straight forward, no matter on driver control or on the program, the robot will always go to the left in 2 seconds, it seems the left motor is slower than the right and the same thing happens to at least 3 robots. I check the chassis, the lift side is identical with the right. So any ideas about how to fix the left issue?
IMG_0254 IMG_0253 IMG_0252
44 PM 07 PM

1 Like

Must be a program issue then, can you post your code?
Also the configuration of both drivetrain motors would be helpful
Might be because you set up the gear ratio incorrectly, etc


YES! this happens to our robot(s) as well hoping to see an answer. it is not just in proggramming but it is also in the driving, no matter how straight the control is, it doesnt go straight

Ah, so you don’t use the motor configurations?

@cheetah0606 @Owen_Magikid - We have a near identical issue (which I also posted a few days ago), we are always veering to the right after starting driving. My testing pointed to it likely being the Omni Wheels in the rear on a RWD. Obviously everyone’s scenario is different. I would strip it down to the drivetrain and base/brain and see how it handles.

Your D is exactly the same as A, and leftMotor is the same as rightMotor, so I don’t see why it would veer left. By your posts a lot of people have this issue, so it might be a bug like the gear ratio bug a few weeks back, but I’m not sure. If you’re out of Ideas you could set left motor to like 80% when right motor is 70%, or something like that…

1 Like

You need a few tests to identify your problem.

  • Are any wheels rubbing against the frame? Enough spacers?
  • When you manually turn the wheels do you notice any friction?
  • If you replace a motor does it make a difference?
  • If you flip left and right motors does the robot veer the other way?
  • If you replace your omni wheels with traction does the direction improve?
  • Does the robot track differently on different surfaces? Carpet, tile?

Thanks, Richard, can you please be more specific on the motor configuration?

I switched the left and right omni wheels this morning, unfortunately, the result is the same.

Thank you so much for the detailed solution. I checked item by item, especially the 4th and 5th, I flipped the left and right 0mni wheels, the result is the same. Then I flipped the left and right motors, still the same. So sad. :upside_down_face:

Hi Owen. You want to flip the wheels so the flat part is against the plastic frame, both the omni and regular wheels. (So not side to side, but where they are now.)

You need two spacers between the frame and the flat part of the wheels.

Your issue is that the rollers are catching on the frame of the robot.

Let us know how that works out.

1 Like

I am talking about this:
57 PM
but seems like your problem will be fixed by @Foster :slight_smile:

1 Like

Have you checked the weight distribution between left and right sides? When robots veer to one side, most likely it’s friction, but can also be weight distribution. If you have already checked that nothing on the left side is obstructed (wheels getting caught, pinched chains, gears, etc.) then check your weight distribution. On your video you have the brain on the left side… any counter balance on the right?

To be honest, @Hudsonville_Robotics had the answer first, it was number 1 in the list. I just described a way to fix it. I’ve seen this issue dozens of times.

To elaborate we need to determine what is different between the left and right side. The individual tests were to separate the problem into measurable pieces. Something on the left side of the robot is different from the right site.

You could consider the following:

  1. Motor performance - Does one motor work better than the other?
  2. Friction - Is something bent, damaged, or rubbing?
    • Bad wheels
    • Bad / bent axle
    • Is there room for the wheels to spin?
  3. Weight - Is one side heavier causing more friction?
  4. Environment - Is the field uneven causing the robot to turn to one side?
  5. Programming - is there code that makes one motor move at a different speed than the other?

Run each test, one at a time, and determine if your results are better, worse, or the same.

With test # 1 you switched the motors and said the results were the same.
@Foster brought up test #2.
@spaghetti_code has a good point in that a lot of your hardware (brain / motors) is on the left.
Go through all of them and share your results.

My instinct agrees with the others that it is most likely a physical issue and not programming.

1 Like

@Owen_Magikid - As the others have mentioned, make sure there is enough spacing so they don’t rub. From my suggestion before that, I was saying take the rear omni wheels off and test with the standard wheels instead on the rear.

Also, from the looks of your pictures of underneath, there is a large gap around the wheels, you may want to put spacers or something over the whole area or something to keep the wheel from sliding around on the driveshaft to misalign.

Thanks,Foster. I flipped the wheels, the problem is still there, please the the newly add pictures. Now the one problem I found, is that my whole tower is not in the middle, but 1 pace to the left, I will try the move it, big project. Will update.

I’m not seeing the new pictures.

IMG_0303 IMG_0302

Thanks for the pictures. Still goes to the left about the same amount?

I’m sort of stumped, you have the motors so they are not rubbing, you moved the brain so it’s more balanced. You have a 4 wheel drive so the omni’s are equally driven.

Huge wild guess, look at the rubber tires. When you assemble them there is a rubber tab that fits into a slot in the plastic wheel. Are both wheeles assembled the same?