The Power of Practice

I hear the question asked frequently, and in many different ways, “How can my team take the next step?” In FRC, to take the next step towards being more competitive, I believe there is a “right answer” that is universally true for all teams in the program. It’s no secret, and it’s commonly stated, but maximizing your time spent practicing with your robot is the single biggest factor for your team’s competitive success. Not your budget, not the size of your team, not the number of years of experience you have… but practice - something within the control of each and every team.

I wanted to share 6045’s story for this season as a testament to the power of practice. Historically 6045 had a winning % of .310, meaning from 2016 to 2022, the team won roughly 31% of its matches. By all accounts the team was reflective of a lot of teams in the Regional system in FRC. Attended a single event, was lucky to make playoffs every few years, rarely/never made it out of quarter finals.

The students wanted to change that this season, and build a truly competitive robot for the first time in team history. On our season strategy paper last edited January 8th, 2023, you can see how we defined our priorities:

As you can see from our strategy paper, 6045’s goal this season essentially boiled down to: “Keep it simple, get done early”.

This philosophy enabled the following timeline for driver practice:

February 1st: 25 days after kickoff, our robot came to life for the first time with all mechanisms built and functioning at the most basic level.

February 3rd: Practice 1 9 game pieces from the ground delivered to the grid with open loop controls and nobody else on the “field”.

February 7th: Practice 2, 6 full field cycles from the double substation and a balance with closed loop controls on the arm.

February 9th: Practice 4, 7 full field cycles with Cubes and Cones from the double substation with a balance. Nobody else on the field.

February 13th: Practice 5, 7 full field cycles (again), but playing around with different methods for intaking Cones.

Februrary 18th: Week 0, 9 cycle match with one in auto. More robots on the field, more similar to real game action. Used our drive practice to have a solid Week 0 performance. Learned it was illegal to steal cubes from the opponent loading zone… We also ran our first 2 Piece Auto this day

February 22nd: 2+Balance Auto, we first ran what would essentially become the only auto mode that we would run until champs shortly before our first event.

It should be noted that one of the most valuable elements of our drive practices was the time spent not driving. We drove so much before our first event that I’d estimate we broke our robot more than 1,000 times. The pit crew got to see what was failing, address the underlying issues, and repeat that process. By the time we got to our first event we weren’t finding any notable mechanical or electrical failures.

March 1st-4th: Lake Superior Regional, averaged 7.2 game pieces scored per match on the way to winning our team’s first ever Regional as the first overall pick.

Not a lot of practice time between our week 1 and week 2 events, but we made the decision to transition to the Single Substation after watching 2052 use it successfully in Week 1.

March 8th-11th: Great Northern Regional, averaged 8.0 game pieces per match on our way to seeding 1st and making it to the finals. Won the autonomous award for our 2+Balance Auto. Had an 11 game piece match (9 teleop) for the first time.

At the Great Northern Regional we learned about fatigue failures… failures that occur after an extremely high number of cycles. Fatigue failures are something that needs to be managed when a team drives their robot for a significant amount of time… Unfortunately our fatigue failures made an appearance in both of our Finals matches! This is something we’re learning from for next season!

Between Week 2 and Champs, we practiced every Monday, Tuesday, Thursday, and Saturday, with all of that time being spent on either driver practice, or autos.

March 29th: First 3 Piece Auto, and 13 cycles on our practice field.

April 3rd: First 3 Piece Bump Side Auto

April 16th: Polishing skills in our final practice before champs

April 19-22: Johnson Division averaged 9.6 game pieces scored per match on our way to being the 10th overall pick on our field. 3 piece bump auto was among the best on our field statistically which likely proved to be a big part of our value.

May 6th: MN State Championship, the event that we defined as our stated goal to qualfiy for… we ranked 2nd at the event averaging 10.7 game pieces per match.

6045 far surpassed our season goals, and we accomplished everything we did because we massively prioritized drive practice over anything else. We went from 7.2 game pieces per match to 10.7 without any dramatic changes to the robot design.

We accumulated more than double the number of wins this season than the team has had in the previous 6 seasons combined. We won our first award, first event, qualfied for Champs, and got drafted at Champs for the first time. We ranked 2nd at our state tournament… it was an amazing season that was all started from a very clear and simple directive. It’s a formula that I believe will work for every FRC team out there.

56 Likes

Now that you’ve done it, do you have a recommendation to make “a significant amount” more quantitative?

image

When my team started down a similar path several years ago, practice time was harder for us to arrange – needed to set up the practice area, carpet and game elements, in a shared space. So our plan was just “as much as we can do”, and that target has increased steadily for several years.

10 Likes

Cannot stress enough how important the getting done early and getting drive practice and software dev time is. I feel that was one of the biggest factors in our jump in performance in 2022 and 2023 from prior seasons. In addition to getting driver practice, it allows for iteration on the robot and allows you to find out what’s wrong with the robot faster. V1 of our 2023 robot looked very different from the version that played at competitions, and we had more in development on the side.

Not OP but what we do is set a deadline of end of week 4 of build season is when the robot needs to be moving (not necessarily effectively). We try and complete it earlier (2022 the robot was moving end of week 3), but basically any non-autonomous programming can get done in our shop at that point, and we then get real driver practice and auto development as much as we can when other teams will graciously allow us to practice at their build space - this allowed us to have plenty of drive practice and both a bump side and flat side 2 piece before our week 1 event and a 3 piece both sides before our week 5 competition. This drives our design and we do not build a robot that we feel cannot be done in that timeframe.

7 Likes

Thanks for the write-up Ryan! Would you be willing to share the following pieces of info?

  • When did you commit to the concept of a two-jointed arm-wrist combo?
  • When did you decide that the everybot style intake was the right choice for your team?
  • How often did your team meet during the build season?
  • How much CAD did you use and when was your first CAD iteration of the entire bot done?

We were super inspired by 6045’s readiness and build timeline this year, especially after losing to you in Duluth and realizing our robot was just not anywhere near as ready as our top competition.

We didn’t settle on our final concept until Saturday of week 2 and finished our first full CAD on Saturday of week 4, which clearly will not cut it if we’re going to be going head to head with 6045 in the future!

2 Likes

We estimate around 15 hours of real stick time (robot moving around on the field). Teams almost always do less drive practice than they think they do. “Drive Practice” in most cases includes very little actual driving. Most of the time is spent fixing the robot. If we were to account for all of that time, my estimate would be 120 hours.

For reference, teams typically get less than an hour of stick time at any given event.

January 7th around midnight…

About 15 seconds after watching the Everybot reveal. (Plus a little CAD time to make sure we could fit it into our design).

We had required build meetings from 3:30-6:30PM on Monday, Tuesday, Thursday each week. We had optional build days on Saturdays that we would typically have about 40% attendance at. We ended up meeting all except for 2 Saturdays in some capacity. We met a ton immediately following kickoff to get a bit of a headstart.

Our robot CAD is probably representative of about 80-85% of the final robot design. There were a lot of small details that we figured out on the actual robot. Things like limelight mounts, electrical mounts, chain guards etc.

Our robot CAD was “done” to the point where we were ordering parts on January 11th. We did a design review with the entire team that evening and approved it. I’d say the version of the CAD that was complete on Janurary 11th is probably 70% still intact on our final robot we have today. When the eveybot intake came out we retrofit that into our design and threw away our original intake concept.

4 Likes

My team played 63 official matches this year. Kinda average for a Michigan team. We also got some practice matches at two District events, DCMP, and even one(?) at our CMP division. So maybe 16 practice matches. At 2.25 minutes per match, that’s 177.75 minutes, or 2.96 hours, of stick time for our driver at four events. So about 3/4 of an hour per event.

I agree that stick time is the key to competitiveness. 15 hours of stick time in practice seems like a good target.

1 Like

What changes did you have to make to the team to get a robot out that fast?

100% agree. Team 6658 in SoCal here. We have been a lower third type team for our 7 year history. In prior years we had very limited functionality before our first competition. This year we had ~1.5 weeks of basic functioning to drive and sort out the issues before our first comp. And for the first time we attended a second competition. We had time between competition to make major upgrades and drive time. Fri morning at the 2nd competition we spent 2 hrs solid simply running laps on the practice field grabbing cubes from the solo station and delivering to the grid. That was amazing. Our driver team really developed confidence to drive that bot and push it. While previous years it was driven slowly and carefully. We went on to rank 6th while previous years being in the 30’s. This was a massive change. Absolutely night and day. We had a simple bot. It moved cubes only to first and second level. We had a low CG so it drove well. And lots of drive time made it very effective. We didn’t have near the performance level of OP but drive time is king. There is no question in my mind that a simple minimal bot with a couple weeks drive time will be a strong competitor.

2 Likes

Hey Ryan! Good stuff - I especially find the timeline help!

Based on your videos, it doesn’t look like your team has a dedicated practice space so much as a hallway! Did you find the difference between tile/carpet to be significant?

Did you have to set up your “field” every time? If so, how much needed to be set up and how long did that take to put up/tear down? I see the charge port is taped out - was that redone every practice session?

These next two questions are basically asking about the critical field geometry. My team has immediate access to a longish skinnier area (hallway) or a squarish space (library) and I’m wondering if there is one to prioritize:

I could see a world where my team uses a hallway to similar effect but we wouldn’t have the side view that you had in your videos - how valuable do you think that perspective was?

This might not be a question you can really answer and I know it’s game-specific, but do you think having your driver practice running (similar to) the full length of the field for elements was critical?

1 Like

I always tell people that the minimum to be competitive at a week 1 event is 15 hours. I think that anything less, your drivers are still figuring out your robot, let alone how to strategically/efficiently optimize the timing for proper game-flow. Once your drivers understand how to properly drive your robot and optimize it a little, they can adjust to driving on the field rather than the shop much faster. If you finish your robot in week 4, you can very easily hit 25-30 hours before a week 1 regional.

9 Likes

Additionally, it can be extremely helpful to over-estimate the time you set aside for practice, at a meeting yesterday, a mentor of mine jokingly pointed out that what we were showing to visitors was a perfect representation of robotics: 3 hours of driver practice = 15 minutes of robot driving.

1 Like

Oh I 100% agree. What I meant by 15 hours, I mean of the drivers with the robot. Not necessarily playing matches, but it could be moving around, testing intaking, scoring, etc. It’s a counter, not set schedule time. So don’t set aside 15 hours; if you don’t have 15 hours, you need to make extra time for your drivers until you do.

4 Likes

Great write up!

My only addition to what you’ve stated here is that I highly recommend teams practice early with bumpers on their robots. Bumper geometry can sometimes change some things teams didn’t fully flesh out in CAD, or they can add some challenges to otherwise easy tasks like driving up an incline.

10 Likes

QFT.

Also, this is not as bad as it sounds. Practice hours can give your driver stick time much more efficiently that event hours. The whole team needs to stay engaged in maximizing that efficiency.

A related note: programmers need stick time, too. Even though they never touch the stick, they still need to test auton routines. Pit crews who focus on giving stick time to their drivers and programmers will get plenty of experience fixing the robot, and plenty of opportunity to streamline pit operations and layout while drive team and programmers have the robot. Stick time as a goal works to motivate more than just the drive team.

Another related note: anyone not actively engaged in the quest for stick time (see above) should be video scouting, rehearsing what to say when Judges visit, making spare parts, making buttons, sweeping the floor, etc. etc. My personal favorite is vacuuming chips from the workspace, so they can’t end up in the electronics.

9 Likes

Getting off topic, but would you be willing to share more about what went into this decision? We considered making the switch after our week 2 event but decided loading directing from the single station wasn’t the optimal solution (at least for us). I wonder if we missed any considerations.

Fantastic Question. It started with defining our team objectives, which helped us get our priorities figured out.

Once we defined our build season philosophy as “keep it simple, get done early”, we made sure every subsequent decision aligned with that philosophy. Here’s a summary of some of those decisions for reference:

  • Ignoring tipped cones
  • Buying COTS components as early in the build season as possible to avoid potential OOS issues that we anticipated going into the season
  • Spending a relatively small amount of time conceiving our robot design to get something “good enough” rather than trying to perfect anything in CAD before shipping it
  • Ignoring small, inconsequential fabrication mistakes on final robot components – this aspect is actually critical and merits more discussion at some point… but essentially if we drilled a hole wrong on a part, but it ultimately didn’t impact the performance, we just kept forging ahead. We embraced the ugliness of our machine
  • Spending our time perfecting a single powerful autonomous mode vs trying to develop 10 separate modes
  • Etc.

Correct! We just have a 16’ wide hallway that happens to have high ceilings and a “Learning Stairs” beside is. If you watch some of the early practice videos you’ll see we’re driving on tile. Some of the middle videos we’re driving on a small patch of carpet. The later videos have us driving on essentially a “full field” of carpet. From a drive practice perspective, I really don’t think it hurt us much to run on tile. It actually saved our wheel wear quite a bit! The only crappy part about it in the context of this game with aligning to the single substation as we had a tendency to drift past it. Additionally, autonomous testing required carpet… so we weren’t able to develop any autos until after we got our small patch of carpet in late February.

Yes, we needed to set up every element on our field every single time we used it. Setup was easy… probably took 10 minutes with all team members helping. We would leave tape marks on our carpet so we knew where to align everything each time. We went through 10 rolls of duct tape this season though somehow… Tear down was brutal as it was frequently me and the drive team rolling up carpet and moving field elements alone long after the bulk of the team left. Tear down probably took 30 minutes (including sweeping up after the carpet sheds cancerous dust).

For 2023, I think long and skinny was critical. For 2022 I would’ve preferred a wider squarish space even if it weren’t super long. That’s just due to the layout of those fields and nature of the gameplay in each respective game. The side view from our learning stairs is nice for filming and assessing areas for improvement during our cycles, but I think it’s far from necessary. In most games I believe the long and skinny practice area would be better suited than a shorter square space.

We literally tried it for the first time at our Week 2 event… went to the practice field to create the set point, and then tried it in our first practice match. From the limited testing we did during our practice matches it seemed faster so we just shipped it for competition… Maybe not a highly recommended way to do things, but it proved to be good enough for us to rank 1st at that event with a statistically improved performance from the Double Sub in week 1.

If we qualify for IRI, we’re actually looking at potentially moving back to the double sub using tipped cones like 359… Our process will be similar… we’ll practice a bit with it, determine if it’s faster, and then choose the best path forward based on that!

6 Likes

FWIW, we found that, in our case, this “dust” was actually the carpet sanding down the wax covering on our floor. Just mentioning this as something to bear in mind and maybe to check early on, for awareness.

We were joking that the carpet was breaking the law of conservation of matter with how much it sheds. We ultimately determined the same thing that it was the wax from the floor… I’m only partially joking about the dust being cancerous, I can’t imagine it’s super good for you!

However, I’m choosing to live in denial about this reality so if my school ever comes back and asks me why the floor is messed up I have plausible deniability.

1 Like

While I agree that good practice is a key factor to on the field success, I think there needs to be elaboration on what makes good practice vs bad practice. This year we had a good amount of driver practice time leading up to our first event, but we barely improved across the course of these practices. Following our first event, we’ve improved some aspects of our practicing and our performance has improved as well.

I’d love to hear more tips on how to improve what practice time we do have.

For us, it was as simple as less distance, ground pickup (didn’t need to raise arm), allowed for us to partner with a double station only robot, and our human player would always be the one giving us game pieces (including cube running). We realized that the drop was surprisingly easy and reliable so we decided to stick with it.