Hey teams!
Looking back on the 2021-22 season, I thought it was a pretty good comeback from the pandemic craziness. Comps were fun to be at, teams were able to show up and compete pretty well despite having mostly new members, and most of all teams got a new batch of rookies to mold.
It seemed that most teams were able to get their rookies up to speed with regards to hardware and software, but one of the main aspects that I felt weren’t quite up to speed was driving. It’s totally understandable, it’s hard to teach someone how to competitively drive. I’d like to think I’m a pretty good driver, so I’m just going to summarize my tricks to successful driving. If anyone else has any cool tips then feel free to add!
The biggest thing: Don’t be afraid of the robot
I know it can be scary to drive a 120lbs brick of metal at 15 feet per second, but you shouldn’t be afraid of breaking it. Now, don’t go all gung ho and crash top speed into the field wall (although it’s probably the wall that would break, not the robot) but also don’t drive like an 80 year old grandma going 45 on the interstate.
That said, Respect the machine
Robotics is not a risk-free activity. Students are operating industrial production machinery, programming 120lbs death machines semi-autonomous vehicles, and competing them in very fast-paced activities. These things have the potential to seriously injure someone (just ask any mentor who’s almost been run over) or damage expensive equipment. Just don’t go too crazy with them.
To be successful: Know the rules!
To save your alliance potentially many dozens of penalty points, know the game rules! This doesn’t mean know the entire rulebook cover-to-cover, but you should have a pretty good handle on where your robot can or can’t be, or how your robot can interact with game pieces or other players.
Always be affecting the score
Nothing can kill a team’s chances like having an idle robot on the field. Obviously this can be unavoidable sometimes, like when you lose comms or a critical hardware piece, but if you can help it, try to be affecting the match score. Of course, the best way to do this is by scoring for your team, but if for some reason you are unable to do so, then you can shift to stopping the other team from scoring.
However, it’s important to note: Don’t default to playing defense! ESPECIALLY IN QUALIFIERS!!
If your robot is able to score points, then score points. At a competition, don’t expect every team to be scouting just based on W-L records. If that happens, something is going wrong. Any good team will scout based on your actual performance, not just a number. At least for scouting on 1895, the first thing we look at is the OPR (offensive power rating). The OPR is a pretty good way to get a rough estimate on how many points someone is scoring in a match. Now, if there’s some reason that you can’t play decent offense (whether it be robot limitations or hardware issues), then you shift to defense.
When playing defense know where everything is at all times!
You don’t need to know where every game piece is every second, but having a good idea on where there are big groups of them will help your decision making on who to defend against and how to do it. At one of our regular season comps, our team was picked to be in alliance because of our defensive skill. Our auto and general offense was okay, but our real power came from being able to control where the game pieces were and keeping opponents away from them.
Some helpful driving tools: A flip controls button and a quick 180 turn locked down
One of the things that separates good drivers from really good drivers is their agility. Last season, our robot had it’s intake on the rear of the chassis while the shooter was facing front. Now, a potential problem with that is if your driver isn’t totally confident with backwards driving or they are afraid of tight maneuvers. To remedy the reverse issue, I bound a flipped drive command to the left bumper of the controller (I naturally rest my index finger on the bumpers of the controller, but you should bind it in whatever way will let you use it without moving any fingers). It had the effect of switching where the front of the robot was. That way I could steer the robot going backwards with the intake down as if I were driving normally, which made picking up cargo easier. Also having a quick 180 on call (don’t bind it to a button, just have something that you can reliably do for turning around on a dime) is extremely helpful. Sometimes, a driver can waste precious seconds trying to turn around, then overshooting, then overcorrecting, and so forth. Just have a nice little 2-point turn you can quickly do and be on your way. Pivoting is also an option but In my experience I’ve found it not to be as reliable. A good time for a 180 (entrance, turn, exit) would be about a half second.
If this applies to you, it’s extremely important: A reliable vision targeting system is your best friend!
If you have a really accurate targeting system with your on-board cam, use it as much as possible! Part of why my team’s robot was so accurate (about 90-95% accuracy) was a well tuned, well executed Photonvision targeting system. We positioned the camera itself in a way that it could see the hub from pretty much anywhere on the field, as well as having a separate webcam on the intake for picking up cargo. I had buttons (I think it was A for hub, X for cargo) bound so that if I held the button, it would position the robot exactly where it needed to be. We calculated the range to the target, as well as how far off it was from the center, then steered/drove the robot so it was the perfect range and the perfect heading to land a shot.
As good as vision can be, don’t forget to get pretty good at eyeballing shots
Sometimes the vision system can be finniky at best, depending on the quality of the camera and the skill level of whoever programmed your vision subsystem. Try to figure out where your robot needs to be relative to field markings to make the right shot. Use features and lines on the ground to decide this.
That’s mostly it for me, feel free to add if you want!