Wednesday, March 27, 2019

Competition Week 4

(Part of) the strategy collective

If our planned schedule holds, this past weekend was event 2 of our 5 events in 6 weeks of madness for 2019. The past weekend was the PNW Glacier Peak district event, historically one of the most competitive events in PNW, and 2019 was no different. Every match was a chance to gain experience, learn more about the game, and strut our robot stuff. Overall our week was roughly similar week to last week, with a few major differences in what we prepared. (And you know, showing up to competition with a working bot...)


Preparations


Sunday was a rest day. Very much needed for so many CyberKnights. (I normally am not a fan of the Thurs-Fri-Sat district events, but, I was definitely happy to get a full rest day.) The rest of the week we had 3 main focuses (foci?): software tuning/automation, drive practice, and figuring out how to get a 3 partner climb with only 5 pounds of usable robot we have left. (Ha! I know, right?)


Every unbag, every match, the robot gets a full check-up.

Our unbag was scheduled to split into 2 nights, 3 hours each night. Tuesday would be software tuning and autonomous, Wednesday would be drive practice, with a smattering of autonomous. Tuesday started with... waiting for some code. So our drivers took control and did a bunch of scoring playtime. Not really structured drills or timed practice, more, hey guys, while the robot is just sitting there how about you go score some stuff. (When the robots out of the bag, I really don't like watching it sit around...) Then the code was prepared and served up. Most of the day was spent tuning an autonomous path. Once we get the baseline cornering and distances dialed in, we can generate new spline-based paths pretty quick with minimal changes needed. Our tuning auto-run was a 2-rocket-hatch path starting on HAB level 1. By the end of the night, we started seeing the positioning and repeat-ability that we wanted in order to actually run during a competition. We bagged up, and planned out our drive practice drills for the next day.

Wednesday night we re-added some shiny LED strips to provide the drivers with more visual feedback for robot functions. We began our drills and practice routine, building up foundational skills into more complex tasks. Here's a pretty accurate approximation of what we did:

* Hatch collection (We would pick up a hatch from the loading zone, turn and drive away, then drop it and turn back around toward the loading station.)
* Hatch placement (We, er, a human, placed a hatch in our 'beak', and the team drove over and continuously scored hatches on the cargo ship.)
* Hatch cycles (I hope you can see where this is going... we collected a hatch from the loading zone, then placed it on a scoring element.)
* Rinse and repeat the above for cargo.
* Combine, and rinse and repeat hatch and cargo cycles.
* Defense practice! (We used our 2018 Minute Maid Park appearing robot, Weeble, to play <hard> defense on Chrome. Some damage may have occurred to our wooden field pieces. Some cringing may have happened when robots collided. Not once did the robot brown out or get knocked out. By the end of it, our drive team did well to simply avoid getting rammed, and spun out and away from the defending bot.)
* Match simulation (To end the night we put 2:15 on the clock, ran our autonomous mode, and tried scoring everything we could in the allotted time. We finished 2 runs, scoring 40 points both times.)


Stylish drive team

We took one piece of advice from a Chief Delphi post by a team 610 member on how to accurately model drive training. Our drivers were given headphones, and we cranked the music in the lab. Can't hear the robot anymore? Good! On the competition field, really the only feedback you have is visual, what can you see the robot doing. We make good use of our on-board camera, and added the aforementioned LED strips to give additional feedback to our drivers, so they don't need to rely on any audible cues, or visual guessing.

Outside of our planned robot access period, we had our team of design students still at work. Our robot has 5 pounds available, and our scouting and strategy shows just how valuable a level 2 or 3 climber is. This week we started building and planning out any and every idea for how to package a lightweight mechanism to get our bot lifted. Also in the pipe are thoughts on a new ground cargo intake, both for lightness and reliability. While neither of these systems are "finished", we did get a few decent days of thinking and tinkering on them. Hopefully we'll have more to come.


Glacier Peak


It's really easy to write a book about when things go wrong, but much more difficult to fill space when everything just sort of... goes (-ish. Things always do come up... In eliminations... Unexpectedly...). I could probably sum up this event as: Everyone (including the robot) did their job and performed their respective duties(-ish. Again. I'm pretty sure you all saw what happened.). We won most of our matches, competed at the high level of which we are capable, and hopefully we all had a good time (except me... for a different reason... but more on that later).

So instead of talking about the competition, I'll describe a conversation that was had just before heading out to competition this weekend. What are the actual roles and responsibilities of folks? Or really, how can we get everyone in the right mental focus to do their job best? With a team that generally performs well, plays eliminations rounds, and brings home some hardware every year, there is an immense amount of pressure on new drivers, operators, and drive captains. A very real thought and off-hand remark on our team is about "the first year we don't make it to World's". People don't want that to be their year. They don't want to be the designer, builder, or driver that year. It adds another level of stress and distraction for a number of students (and mentors!). This sparked (another...) conversation about how to make sure we are focusing on what we need to do. 

So, we started talking about things we can control, and things we can't. Our own spheres of influence. And it's all quite simple. The driver controls the physical position of the robot on the field. The operator controls the intake(s) and the elevator. Realistically, that's all there is to it. Our pit crew can check over the robot, torque down the bolts, check all the electrical connections and pneumatic fittings. We are somewhat at the mercy of the field system, the match schedule system, and the preparation of other teams and their robots. (This is actually an area I know we could handle and would like to see us get more involved in. No more alliance partners with dead batteries or unplugged motors.) Lots of things out of our control, few things in our control. Overall, our best option is to strategize the best we can, and perform to the best ability of the robot. With this discussion had (again, definitely not the first time the collective has talked about this, but every year and every drive team is different), we set a few ground rules for this competition:

1. It is not the job of the driver/operator to win the match. Their job is to execute the strategy through robot manipulation.
2. Any feedback, comments on driving, operating, or any post-match feedback does not go to the drive team. We have a team dedicated to creating and analyzing game play strategy. Talk to them, give them your feedback, and it will get brought up when/if appropriate.
3. Don't tell the drive team our rank or win-loss record. Their focus is the next match. How to drive the robot. All the things stated above. The less they need to think about or care about means they can better perform their primary job. Relaxed drive team = quality drive team.

With the competition over, did these thoughts and rules and practice and everything help? Across all our matches, we played incredibly well. OPR put us in the top 3 robots at the competition, and our qualification rank 4 further showed just how well we performed. Once again, our pit crew was outstanding, handing a robot to our drive team that functioned and ran every second of every match. The judges recognized one of our team traits and our business planning and awarded us the Entrepreneurship Award. Another good day to be a CyberKnight.

Well, the elephant in the room. I bet you think this will be a diatribe into hard defense, clean play, graciousness, and more. But this elephant is actually pretty simple. There's not too much description about the competition, the robot, and how the weekend went. It's actually all pretty vague, pretty void of pictures, and with good reason. I wasn't actually there. (This is why it was a bad day for me. Not at robots. Sad.) Anything I did see was on The Blue Alliance or heard after the fact from other students and mentors. (We also added 2 more air tanks to the robot. Three different kids told me this. Was it that important? Maybe?) Once again though, I am looking forward to our next event. Once again, it's next week. This time, Auburn will see what we can do. (Just don't tell our drivers what rank we're in.)


Quote of the Week:

<innocent looking robot sitting in our practice area>
"Enabling the robot. Watch out, it's going to spin." - software mentor
<robot suddenly turns and spears straight into the cargo ship>
"Woah! What happened!?" - everyone in the lab
"... It didn't spin" - software mentor


Robot hungry. Eat cargo ship. Beep boop.

No comments:

Post a Comment