Hello we cannot get an auton to work because one side of our drivetrain is starting a split second before the other side and it turns slightly when trying to drive straight. We have replaced all of our motors and we also have an inertial sensor but we can’t figure it out. Any ideas why this isn’t working?
You likely have a friction problem, also make sure you’re coding your autonomous using motor rotations instead of timing.
What type of code do you use (blocks, Python, C++)?
can we see the code segment?
If one side is significantly heavier, the additional traction might have it lead the other side slightly. Or friction as was said earlier.
Or the slow side could have a wheel, gear or sprocket with a worn/rounded hub. The slop would show up as a delayed start.
For my code, I am using drive in a certain number of inches. How would you code in rotations or is that the same thing as moving a certain number of inches? By the way, I am using block code.
Also for those asking for the code segment, I don’t have any segment, I can’t get past a drive forward block without it misturning and messing up.
Could you please post screenshots of your code so we can help you further?
Right now I have nothing, I have a set drive velocity block with a set turn velocity, then followed for a drive froward for x amount of inches block, but when it drives forward it messes up and slightly drives at an angle. I haven’t gotten any further because I need it as consistent as possible to do well in auton.
There are numerous Drivetrains being used by teams in the forums so it’s not likely to be a software issue if you are using the generic blocks drivetrain (example below).
It the left and right are driving differently then I would think there is a problem in the chassis. I would flip the robot over at check for friction (without powering the motors) doing the following:
- that each wheel spins easily
- that each wheel driven by a motor has the same amount of friction. One wheel isn’t tighter or slower than the others.
- that the wheels aren’t rubbing against anything.
- that an axle hasn’t popped out of the motor.
- that the axles are straight and spin easily inside of the black bearings.
Then I would run all of the chassis motors at the same power to see if they look like they are spinning at the same speed. This will identify if you have a bad motor.
Also stop all motors from top speed with coast. If any stop a lot faster, there is probably more friction.
we also have a drivetrain problem. 2 sides are not spinnig at the same time.1 side comes from after the other side. ıdk absolute reason. can ıt stem from motors?
Follow the checklist above. If all of the motors perform equally then post a copy of your code.
When you place the robot (this is assuming it starts moving FORWARD when the code runs), BACK the robot into starting position. This will push ALL drivetrain slack out of the system (at least for the start).