Hello! I’d like to share with you our offseason robot project
.
https://github.com/edf42001/FRC-2019-Base
This project is meant to combine everything we have learned over the past couple of years and be a starting point for our future robots. The coolest part is the new Flexible Autonomous System, which allows easy creation of file based autonomous routines (and is explained in detail in the readme). There is also a new logging system, which is much easier to work with than the one were using previously. Under the My Computer section of the Robot Project there are simulators for our Pure Pursuit path-following code, and our new DriveForDistance and TurnToAngle code, which use pure pursuit and motion profiling respectively. There is also basic teleop code and some other autonomous drive commands already implemented.
Good luck to all this season!
I can tell you put a lot of work into this project.
Why did you decide to go for a text/xml entry instead of this setup?
Thanks!
The main reason is that in the array-based setup, every column has all the parameters for every command, even if they are unused in that step of the routine. As your robot gets more complicated and you add more commands, this gets harder to read and manage. With a text based system, one line is one command and its parameters, which is easier to understand.
Hmmm, that is a good point.
Most of the robots I’ve worked with needed to have multiple things going on in auto (driving and moving manipulator). I guess one could setup their AutoCommand to be an enum and a set of generic inputs (Enum for selecting an instruction type, and the generic inputs become parameters), but if you did that the input quickly wind up getting called x and y and are not very descriptive.
I’ll have to think about how to make this better.