-
Notifications
You must be signed in to change notification settings - Fork 0
Drivetrain
Our drivetrain consists of a 6-neo, WC dropped center drive. This gives us loads of acceleration and speed. We control each of the sides of the drivetrain using the SpeedController
class
When driving in autonomous, we use REV through-bore encoders on the front wheels as well as a nav-X. We use the rev encoders instead of those built into the neo’s because the neo encoders we’re giving us weird numbers and were ridiculously imprecise.
Our team uses Shuffleboard, a cleaner and more reliable alternative to Smart Dashboard. We use it a lot, as you will see in the next few paragraphs.
We push the readings of the encoders to shuffleboard, so we can see the values we are getting and change the numbers in our autos more precisely to match what we are getting.
We have many PID’s on the robot, especially in the drivetrain. There is one to control heading, distance, and vision lineup. All of the kP’s, kI’s, and kD’s are posted to Shuffleboard so we can see what they are. However, they are also fetched from shuffleboard so we can make on-the-fly changes to them. Normally, you would have to go into the code, change a value, and then re-deploy. With shuffleboard, this is shortened to just changing the value! Because we are using shuffleboard with addPersistent
, all of the changes we make are saved to the roboRIO just as if we had re-deployed code. This saves us so much time and gives more time to the drivers to practice with the robot
Our shuffleboard also has an auto selector, so the driver can select which autonomous they want before the match starts without having to re-deploy code. This makes us able to write multiple autos that the driver can select so that we can be a very good team player. We also push the nav-X value to shuffleboard (just the Z axis) to determine which way we are facing based on where we were facing in the beginning. We also have a button on shuffleboard that allows for resetting the nav-X any time, lowering the chance of errors occurring in our autonomous