V5 Autonomous issues, inconsistent

so i am having a lot of problems with my robot being inconsistent during minute auto. what are some solutions of fixing these proplems

Hello, hate to ask, but could you maybe state what the problems are? That way others can think about how they can solve the problems rather than what those problems are.

yea the problems are that the robot will turn to much or to little with no changes of the code and the flywheel will be stronger or weaker every run with no change of code what couid be causing these problems

Controlling mechanical systems is hard. Motors change temperature, backlash through gear trains will change, many other variables, you need better control loops.


Both of these problems can be solved with control algorithms that can adapt to live feed back. A common solution would be a PID controller which you can find many resources for here on the forum. This is mainly used for autonomous drive control but can also be used for flywheel velocity control to large success.

Several things…

It all starts when you build a robot. There are many ways to unintentionally introduce slop into a system, and many other ways, such as wheel locking, to mitigate this issue. Any tolerances on your physical robot that aren’t close to perfect will make your auton just that much more inconsistent.

Lining up your auton can also be an error introducing factor. Making a jig to help with alignment will reduce total error, which only builds up over time.

If your robot doesn’t have fresh batteries and cooled motors, your system will be different, possibly causing errors.

In short, remember chaos theory. Any small change or selection of seemingly meaningless changes can cause your auton to fail. As mentioned above, open loop programming (using sensor data to adapt to environmental changes) should significantly improve your auton. Closed loop programming will always carry certain risks at the only benefit of being easy to program.

Good luck. Please research the root cause of your errors and find ways in which you can adapt your program to solve them.