FRC 3061 Huskie Robotics - 2023 Preseason Build Thread

Hi my name is Aayush Modi, Project Manager of Huskie Robotics Team 3061. As we aspire to join the Open Alliance organization this upcoming season, I am excited to announce the Huskie Robotics 2023 Preseason openalliance thread! We are starting with this thread to share our preseason projects in hopes to join the community this upcoming season.

About Us:

Huskie Robotics is a highschool team from Naperville North High School in Naperville, Illinois. Founded in 2009, we have been building robots, cultivating passions for STEAM, and making an impact on the community for over 14 years. Our team of 125+ members and 17 mentors is composed of students from 2 different schools within our district, as we strive to demonstrate inclusion and foster a close Huskie family. During the preseason we will meet every Wednesday from (3:30-9:00 pm). We plan to explore new projects, train new members, and further our knowledge as we prepare for the build season! We are excited to share our progress, discoveries, failures, and successes we make along the way with the FIRST community.

Goals For Open Alliance:

As an unofficial Open Alliance team, we hope to share resources with the FIRST community that expand further than the robot aspects of our team. We plan to cover our training plans, leadership workshops, various outreach events, and more!

We hope that this thread will turn into a helpful resource for everyone in the FIRST community and be a beneficial learning opportunity for us as a team!

Team Links:

14 Likes

As we continue our preseason, we are excited to post our involvement with the FLL community on our frc3061 Huskie Robotics 2023 openalliance thread!

One of the most important parts of our team is the everlasting passion we have for giving back to the FIRST community. Each season we strive to grow our FIRST impact through hosting FLL events, tournaments, and helping teams through mentoring and sharing resources. Over time we have developed a strong FIRST pipeline to provide opportunities for students to participate in FIRST, starting from FLL in 4th grade all the way to joining Huskie Robotics upon entering high school! Powered by our district’s investment in our team’s support, we have worked with the Naperville Education Foundation (NEF) and our Naperville Community Unit School District 203 to start 41 FLL teams run by district teachers and mentored by our very own Huskie Robotics members, allowing our pipeline to become ever growing.

FLL Professional Development Session

While we provide mentors from our FRC team, every year we also want to ensure each FLL team has well-prepared coaches as they embark on their season! Several weeks ago, members of our team prepared and ran an FLL Professional Development session at our school district’s office. We worked closely with the elementary and middle school teachers who have volunteered to coach their school’s team by going in depth on the many aspects of this year’s MASTERPIECE season, including the robot game, strategy, programming, the research project, and core values. Being both teachers and FLL coaches is a daunting task, but with the help of our Huskie Robotics members, they are prepared with useful information and tips to help their teams optimize success this season!"

Here we have included all of the FLL resources we provide our district teams with, as well as training materials we use with our Huskie Robotics members to prepare them as FLL mentors. The topics covered include the robot game/strategy, programming, project, core values, and mentor guidelines necessary to succeed. Whether you are looking to start FLL teams in your own community, mentor a team, or learn more about this year’s FLL season, feel free to use and share our resources with the FIRST community!

FLL Resources

5 Likes

Hello! I’m Andrea, Robot Captain of Huskie Robotics Team 3061.

Our team is split into three branches, each led by a captain. Across the three branches we have ten total subteams with expertise in different areas, led by subteam leads. Coordinating the many tasks necessary to build a robot, especially with 125+ members, is a full-time job.

To facilitate the completion of these tasks across all subteams, we have Feature Project Managers (FPMs), whose job is to manage one mechanism (“feature”). Throughout the season they work with subteam leads to delegate tasks to members and proactively identify and solve roadblocks. They also work together and with our Systems Integration Specialist (SIS) to combine the individual features into a complete working robot.

As captains, we want to introduce the four FPMs to project management, give them exposure to subteams they’re unfamiliar with, and improve their leadership skills while they build relationships with other members of the team. As a team, we also want to make improvements from last season and explore new mechanisms to grow our institutional knowledge. To accomplish both of these, we have each FPM lead a project during the preseason.

The four projects we’re doing this year are a Chain-Driven Arm, Spindexer, 4-Bar Linkage, and Swerve/Drivetrain improvements.

Why these projects

We had a somewhat unique design for our arm last year, and it served us well, but part of our decision process was not having experience with a standard chain-driven arm, so we’re experimenting this preseason with how to minimize backlash in a chain-driven arm, while also using NEOs and MAXSpline to understand our options within the REV ecosystem.

I’ve pushed the Spindexer mechanism, partly because I think they’re super cool, but it also provides us with design and CAD experience and more practice thinking about a multi-ball game, which we haven’t had in a few years. Last year, our CAD team gained valuable experience from preseason projects, which is especially critical this year because we’ve switched from Inventor to Onshape.

We did a 4-bar linkage with pneumatics for our 2022 intake, but we struggled with modifying the linkage geometry, and most of the members who worked on that design have now graduated. In addition, we enjoyed not having any pneumatics on the robot this past season, so we’d love to explore alternatives to pneumatics for intakes while building prototyping and design experience.

For our drivetrain last season, we tried out an upside-down electrical board (super accessible), MK4i swerve modules, and mounting rails on top of the drivetrain rails. We’d like to improve with standard electrical layouts and mounting locations. We’re also trying out new things (CAN redundancy, MK4i L3 gear ratio, Colson Wheels) while doing maintenance on the swerve modules.

What we’ve gotten done over the summer and first few weeks of fall:

Over the summer, we designed and CADed the Chain Driven Arm in Onshape and began fabricating and assembling these past few weeks. We used online calculators (for the motors, gear ratio, and chain length), did design reviews with captains and mentors, and refined the design to get where we are now. One of the hardest challenges was updating our complex custom gussets to be more realistically lightened and fixing motor alignment quickly enough to avoid disrupting the rest of the process.

Spindexer

Throughout the summer, we learned how to thoroughly research a completely new topic to come up with designs. We organized research to understand the advantages of different designs and then brainstormed a Spindexer design that encompasses the best qualities of each reference. This fall, the FPM for this project has gone from having no CAD knowledge and limited understanding of our design process to understanding enough CAD vocabulary and basics to effectively communicate with the two CADers working on this project. Throughout the fall, they’ll continue learning standard design procedures and the design process.

4-Bar Linkage

Over the summer, we explored the practical uses and applications of 4-bar linkages in various industries and FRC mechanisms, like arms and intakes. We’ve also learned the fundamental steps and considerations involved in creating a 4-bar linkage and discovered key design principles behind 4-bar linkages. In the past couple weeks, we’ve started sketching linkage geometry in Onshape and we’re looking into how to best convert motion from a motor to the linkage.

Swerve 2.0

We started cataloging swerve parts from both our 2022 robot, which had MK4s, and storage. We cleaned the parts with truck wash degreaser (wearing gloves) and toothbrushes. As we start to convert the MK4s to MK4is, we’re inventorying to see what parts we need to find or order. We’ve also started CADing new upside-down electrical board drivetrain layouts with REV MAXTube and 1678 bumper mounts. We’re starting with the largest size we want, which is 28.5x28.5 (28x28 + bumper mount gussets).

We plan to post an update on each of these later in the fall, but feel free to reach out with any questions or advice. Each subteam has preseason projects in addition to the FPM projects, so keep an eye out for posts on our other projects, like 3061-lib changes!

Links:

Ongoing CADs:

5 Likes

Each season Huskie Robotics takes on over 20 new members. With this, we want new members to be prepared for the season, which requires knowledge on how our team works, what FIRST is, and training in essential skills. Due to this, preseason serves as an important part of becoming the successful team we are. In this post I would like to highlight how we schedule our preseason and the important events that we run.

A normal preseason meeting for us starts with new member training from 3:30-5:00. Then from 5:00-9:00 we have what we call Robotics After Dark (RAD), where we focus on our preseason tasks. This gives us about an hour and half to train our new members each week.

Speed Dating:

Huskie Robotics has a total of eight Subteams which include, Software, Assembly, Mechanical, CNC Fabrication, Machining , Electrical, Strategy, and Business. To introduce new members to all these different Subteams, we run a speed dating meeting. At this meeting, each Subteam presents to groups of new members for five minutes on what exactly their subteam does and why new members should join. Groups cycle through the Subteams so that each new member gets an opportunity to visit each Subteam and explore what it has to offer.

Subteam Rotation:

The next three weeks, we host Subteam rotations. New members will pick three Subteams that pique their interest and participate in a training session to get an in-depth understanding of the Subteam and its responsibilities. We require students to explore a different Subteam each week, so even if they have their heart set on a specific Subteam, they explore what else we offer as a team. Some members find themselves interested in a Subteam they never knew about, and everyone gets exposure to more aspects of our team. One issue we have with Subteam rotations is balancing the number of people in each session; we see a big interest in Subteams such as software, assembly and mechanical. To resolve this we change the order we call Subteams and cap each Subteam to 5-6 people, making students spread out within the team.

Training:

After new members explore their top three Subteams, we have them select a Subteam. Once they select a Subteam they will go through a seven week training course, where they will learn skills necessary to contribute to the Subteam they joined. Each week leads will curate a lesson plan that aligns with the skills they believe are necessary for each member to know and be able to perform in order to be an asset during the build season.

Member Skills:

We dedicate one meeting in the preseason to take all members through our member skills workshop. This workshop introduces everyone to our team management resources, and we show them how they can utilize these resources to help the team stay organized. At Huskie Robotics, we use Trello to manage tasks and assign them to members, so everyone knowing how to check what’s been assigned to them or their Subteam is key to being a successful team. Along with Trello, we introduce members to Canvas, Google Chat, and Google Drive, where they can see whole team announcements, communicate with other team members, and access our team’s documentation and institutional knowledge. These resources are all important to the sustainability of such a large team.

Field Day:

New this year, we are planning on hosting a team field day! The idea behind the event is to bring our team together through fun robotics-related activities. Each year we like to host an event to bring the team closer, allowing members to learn how to work effectively and efficiently as a team to complete a specific task. In the past, we’ve done a scavenger hunt across different Subteams, but based on feedback we’re trying a Field Day to focus more on the team bonding aspect. Look for more information about this event in a future post!

Mock Kickoff:

The last event that we host in the preseason is a Mock Kickoff. The Mock Kickoff gives new members a chance to understand how kickoff works, and what to expect next January. We take a previous game and have members work through coming up with different mechanism designs, strategies for the game, and run through how a rule book analysis works, just like we would for a regular kickoff. This also helps members who are in new roles this year understand their responsibilities at kickoff.

We are looking forward to a successful preseason! As we run training and team events we will continue to share resources in this thread.

2 Likes

Calling all aspiring leaders! Every year, Huskies Robotics hosts an annual leadership workshop to equip students and mentors with the leadership knowledge they need to succeed! Our coaches and mentors host these sessions, and are meant for both on and off-the-field knowledge!

Whether you are new to FRC or have graduated already, everyone is welcome to join! Spread the word and invite anyone who may be interested.

Our sessions are held every Monday at 8 pm CDT - 9:30 PM CDT

  • 10/23: Crucial Conversations

  • 10/30: Servant and Situational Leadership

  • 11/6: Crucial Accountability & Influence

  • 11/13: Project Management and FMECA+

  • 11/20: Vision and Goals

  • 11/27: Refinement of Mission, Objectives, and Goals

Below is a Google form so we can send you the Zoom link, see you there!

3 Likes

Hi! I’m Franklin, one of the FPMs (feature project managers) on 3061 Huskie Robotics and I wanted to share a bit about our new pit structure which we just got this preseason and used at Roboteer Rumble last weekend. For reference, this was our old pit:

It was made out of 8020 extrusion and was broken down into three pieces (left upright, right upright, and crossbar) for storage in the trailer. While it didn’t have many pieces, each piece was very long, and we had problems with load-in, especially at the Midwest Regional, where we couldn’t fit them in the elevator. Thanks to a grant from the NNHS Booster Club, we now have a new structure, which is essentially a large cube.

It originally came with bolts to secure the sections together, but we purchased some metal locking pins that make it easier to assemble our pit. We use the bolts to attach the 24 sections into 14 larger sections, and then we assemble and disassemble the 14 sections at each competition using the locking pins. These 14 sections are easy to strap into our trailer and bring into competitions because all of the pieces are shorter than 10 feet. In addition, it can be set up quickly with only 5 people. It’s also super customizable and is easy to attach our pit TVs, pit table, and LED light strips. We’re reusing our old wood pit table and 8020 support, which we attach to our new pit frame with a clamp. For the LED strips, we use short looped bungee cords which allow us to easily attach the light bars to the frame. The hollow truss is also really helpful for storing our flag during competitions.

Here’s our pit assembly workflow if you’re interested, which covers the actual pit structure along with the order of putting our toolboxes, RSUs (rolling storage units) into our pit and properly assembling our area with all of the accessories.

Thank you again to the NNHS Booster club for the grant for our pit structure. It is really helpful for our team, and we look forward to using it at future competitions.

6 Likes

Your link for your pit workflow is restricted, FYI.

1 Like

Fixed, thanks

Huskie Robotics had the opportunity to attend the Roboteer Rumble off-season competition hosted in Tremont, IL, by team 2481 The Roboteers on October 28. We did spectacularly, placing second in qualifications and making it to the final elimination round with our teammates, 1706 Ratchet Rockers, 5847 Ironclad, and 8122 Mechanical Mustaches.

This was a spectacular opportunity for our whole team as it allowed us to showcase what competitions are like to newer members and enable them to work more directly with both robot and strategy.

We began preparing for this competition in September, employing several strategy techniques and changing our robot from the Charged Up Season.

To pre-scout, we used various methods to gain insight into the other teams attending. Amongst watching matches from all teams, we also cross-referenced The Blue Alliance and Statbotics. We also created a spreadsheet of all teams to pre-emptively “rank” them based on what we felt they could accomplish. In addition, we created and released an interest form to members attending this competition to gather information about who was interested in scouting. Due to our goal of this competition being a learning opportunity for newer members, we only gather interest for offseason competitions and, for the season, have a trained team of scouters. Those who showed interest received training through our mini-scouting course focused on how to use SPOT.

Last year, we also learned that we would not have wifi or cell service at the competition, making it difficult to upload our scouting data to our scouting app, SPOT. To combat this, we left the venue to sync our manual scouting schedule and upload our match data to our admin app.

From a drive team perspective, we held full field practices at our school to practice. We tried out two new Drive Coaches and opened our Human Player position to any interested member, as this allows members usually not on the drive team to see the field from a different perspective.

During the competition, we had a few mechanical issues, but they were all quickly resolved. Our intake pulley broke, so we had to drill out the end of its shaft. The rope on our arm that allows for rotation also unspooled and tangled a few times, but that was manageable between matches. The rope unspooling is an issue we have been working on fixing throughout the season and is why we are pursuing a chain driven arm during the off-season(more on that in a later post!).

We are also proud to announce that we won the Most Improved Robot award at the competition! Overall, Roboteer Rumble was another fantastic experience for our team, and we look forward to competing with the teams again.

3 Likes

In addition to the FPM projects mentioned earlier in this thread, which are cross-subteam or design-focused, there are projects each subteam can work on independently during RAD (Robotics After Dark) every week from 5 to 9 pm.

We add everything we want to get done to our Trello board for the preseason and then organize it to distinguish what we’re currently doing (Robot/Business Tasks) from what we hope to do later (Backlog). Each card is labeled with the subteam(s) needed to complete it, allowing members to use Trello’s filter feature and see the cards for their subteam. Our goal is that every card in the Robot Tasks list has a designated owner and each returning member has one card to work on from that list. If there are more cards in the list than people, we’ll reprioritize and move some to the backlog, and if there are people without cards, they can start working on a card from the backlog and move it to robot tasks.


We’ve talked about planning for the FLL Professional Development session and figuring out how to set up our new pit; these are examples of larger subteam projects, along with porting the 3061 Lib Repository to Phoenix v6. In addition to the Professional Development session, our outreach subteam has matched mentors from our team with FLL teams and our CNC subteam attached a sharpie to our shopbot to personalize clipboards for our FLL tournaments. Our electrical subteam has been working on adapting toys to be more accessible, inspired by the HuskyADAPT program at the University of Washington. Media is making every member of our team a button with their name and subteam, a tradition we’ve enjoyed the past few years. Outreach compiled a master list with how many hours of outreach everyone has done throughout their time on the team so that we can each log our hours for our school.

Here’s an overview of what each subteam is doing to prepare for next season:

Business: selecting impact award presenters with an application and interviews.
Mechanical: added parts to Onshape that we couldn’t find in MKCAD, created a customizable part with our team’s 2x1 lightening pattern, and set up a template title block for Onshape drawings. Mechanical has also designed 3D-printed inserts to better divide our Assembly RSU drawers.
Assembly: fixed our robot cart, which was slowly falling apart throughout last season, and replaced all four wheels with locking swivel wheels, which we’ve been wanting for a while. Assembly has also been organizing its RSU with the new 3D-printed inserts.
CNC & Machining: developing our fabrication workflow and prioritization process while making parts for FPM projects. CNC cut a plate to test bearing hole sizes and will continue to test with different collets/bits and on 2x1s, which we cut with a jig instead of on the spoilboard so we can flip and cut both sides accurately.
Electrical: working on better ways to wire CAN and testing which of our batteries we want to use at competitions next season.
Strategy: planning our mock kickoff so members know what to expect and how to contribute in January and working on SPOT.
Software: currently working on porting Nova’s code to Phoenix v6 and has tested and found success in a new Pit Display app that will give status updates on all of our robot systems (e.g. motor temperatures). Also, Software is working on AprilTag vision and looking into utilizing Mechanical Advantage’s NorthStar software.

In addition to preparing us for the next season or subsequent years, these projects are a valuable opportunity for returning members to gain more experience. We don’t have dedicated training for returning members, so working on projects is how they can expand their knowledge within their subteams. These also provide an opportunity for more people to gain familiarity with our task management system, allowing them to work more independently with Trello throughout the season.

5 Likes

On our Charged Up robot, Nova, we used an arm that was driven upwards by a winch and then would fall back down due to gravity. Here’s last year’s behind the bumpers if you’re interested. We had lots of issues with our rope spooling off the winch, and the arm not being stable. When the rope would fall off the winch, it would coil around the hex shaft that spun the winch, and then when we tried to lower the arm it would get stuck and unspool lots of rope into other parts of our robot leading to severe losses in cycle time. We also had lots of issues with the various rope systems failing during matches. We had problems with the pulleys, and had to 3d print at least 8 different revisions throughout the season. All of the knots in the rope would also come loose frequently. We also had some structural issues, where the base of the arm wasn’t properly supported, causing side to side wiggle. Finally, we didn’t have enough stall torque on our rotational motor, causing the arm to bounce up and down with PID loops keeping it at the correct angle. As mentioned in our previous post, one of our preseason projects this year was to create a Chain Driven Arm, where the arm can be driven in both directions, and with more power than Nova’s. Here’s the CAD link. We use 4 NEOs each with a 12:1 MAXPlanetary. Each set of two motors attached to pinions powers a large gear, which then connects to our chain system, attached to the REV MAXSpline dead axle. Throughout the lengthy design process, we thought about all of the ways that we could make our design versatile, including ways to switch around the chain. We also 3d printed lots of crush blocks, to be used if necessary. Our goal was to experiment with lots of new tools and practices we haven’t used before and improve integration (with a hypothetical robot), including:

  • Onshape, which we switched to from Inventor over the summer, and all of its accessories including MKCad, which was really helpful with all of its configurable parts and ease of use.
  • REV MAXTube, which we switched to from VersaFrame last year
    • To switch ecosystems, we also needed to purchase new rivets and cleco clips for the .201 holes instead of the .161 holes.
  • NEO v1.1 motors with MAXPlanetary and SPARK MAXes, instead of Falcon 500s
    • This requires our software subteam to work with the RevSparkMax motor controller software. Both have similar documentation but do differ in syntax, while the difficulty of the difference is negligible. The migration from Falcon to Neo was easy by viewing the code examples that RevSparkMax provides for Neos.
  • REV through-bore encoders, one on one of the bottom shafts (to judge how fast the gears are spinning) and one directly driven by the MAXSpline shaft so that we can tell how much backlash is felt by the arm.
  • REV MAXSpline dead axle assembly, with the MAXSpline shaft attached with needle bearings to the REV dead axle tube.
  • Throughout testing, we plan on implementing various methods to reduce backlash with hex shaft - driven mechanisms, such as
    • Shim Tape, following 1678’s backlash - reduction methods
    • Software control in a way that each motor is slightly fighting against each other leading to extra tightness in the arm

Here is our final assembled arm, ready for wiring and then controlled testing!

5 Likes

Huskie Robotics Olympics

This year, we decided to switch up our preseason plans and create a new team bonding activity! This was a super fun way for members of our team to meet other people and make new friends as we get closer to the start of build season. Read on to learn more about the Huskie Robotics Olympics!

The idea of the Olympics was to create robotics related activities and challenges that would allow new and returning members to test there knowledge of our team. We split up members into smaller teams and ran 3 different activities. The first activity was a Huskie Robotics Team trivia, where we asked questions about topics like our team history and past FRC games. After the trivia, we moved onto a paper airplane competition. Teams had 7 minutes to construct an effective paper airplane, and we gave points to the team that was able to send their airplane the farthest.

To round out the Olympics, we organized and ran a relay race. Teams had to complete a variety of activities in the race like swerving around Charged Up game pieces, successfully making a Huskie Robotics button, playing ring toss on cones, and drawing our team structure. At the end, the team with the most points was crowned the winner, and they all received a bag of candy, a skip the dinner line free pass, and of course, bragging rights!

This was a really fun team-bonding activity, and we’re excited to do it again next year!

3 Likes

3061-lib

One of the open source projects maintained by Huskie Robotics is 3061-lib. 3061-lib is a starter project and library focused on a swerve-based drivetrain. It supports SDS MK4/MK4i swerve modules using 2 Falcon 500 motors and a CTRE CANCoder, a CTRE Pigeon Gyro, and REV Robotics power distribution hub and pneumatics hub. However, due to the hardware abstraction layer, this code can be adapted to other motor controllers, encoders, and gyros as well as different swerve module designs.

If a team is looking for code to get swerve up and running the first time, there are more appropriate options than 3061-lib. 3061-lib is probably most appropriate for teams that are looking for some of these features in additional to swerve support:

  • multiple robots with different configurations, including a simulated robot with basic simulation of swerve modules
  • logging and replay via AdvantageKit
  • vision subsystem supporting multiple Photonvision-based cameras to update pose estimation
  • move-to-pose command that generates on-the-fly paths using a field model defined by a set of regions and transition points between regions
  • monitoring and reporting of hardware faults
  • integrated system tests
  • additional commands
    • drive-to-pose (closed-loop straight-line motion to pose)
    • rotate-to-angle (closed-loop rotational setpoint with optional driver-controlled translational motion)

3061 Lib v2023.2.0 is the last release for the 2023 software stack.

3061 Lib v2024.0.0-beta.0 is the first beta release for the 2024 software stack. We will continue to release updates to 3061-lib throughout the first few weeks of the build season before we pull it into our code base for the 2024 robot.

A major focus during the preseason was adding support for Cross The Road Electronics’ Phoenix 6 API. We wanted to leverage their SwerveDrivetrain class while continuing to support all of 3061-lib’s features. This required a bit of rework. To clarify, support for non-CTRE swerve drivetrains remains. You can still customize 3061-lib for any combination of motors, encoders, and gyros.

If you have any questions or comments, please ask!

2 Likes

We’ve started our thread for the season: 2024 Build Thread

1 Like