![]() If the points have not been hit, the code will adjust accordingly. After that, the RamseteCommand is generated and executed in RobotContainer.java, where it will receive inputs from the drivebase controller and gyroscope to confirm that each point has been reached. The selected path is taken from the GUI at game start. Public TrajectorySequence (Drivebase drivetrain, String. ![]() You can do this by putting every possible Command you want to run as an autonomous into a SendableChooser and then put it into the SmartDashboard to have a. For instance, you may wish to be able to select between multiple autonomous modes. TrajectorySequence.java takes in those generated path files, combines it with our drivebase PID constants into a completed RamseteCommand. The SendableChooser class is a useful tool for presenting a selection of options to the SmartDashboard. ![]() Using PathWeaver with path + splines as inputs, the desired path is turned into JSON which is machine readable to become a RamseteCommand.Ģ. We designed this path with high velocities and high angle turns which was made possible by our highly refined PID loops. We were able to put this to the test on our robot, giving us the ability to create many different paths and adapt to unpredictable situations.įig 4.6: One of our three-ball autonomous routines. This allowed us to gain experience with the process in creating and tuning robust autonomous paths. We tested the pipeline of characterization (to determine necessary controllers and constants), generating and compiling a drawn path, and executing the path on Romis. We used the WPILib toolsuite for designing and running autonomous paths with trajectories using Ramsete controllers, odometry, and the Pathweaver drawing app. This year, we did more research and we were able to get ahead of the curve before we started development. We had tried this in 2020, but had great difficulty in getting off the ground. One of the goals we set during the offseason was to upgrade our current autonomous pathing through the use of motion profiling.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |