FRC 1072 2024 Build Thread

Welcome to Harker Robotics Team 1072’s Build Thread which encompasses our activities from the offseason in 2023 as well as our current efforts in the 2024 Build Season. This is our first year being a part of the Open Alliance, and we hope other FRC teams can find this thread to be helpful and inspiring. Currently, we aim to have posts like this one rolled out each Wednesday. We would like to also express our appreciation and gratitude to all of our generous sponsors and to the Open Alliance for providing us a platform to share our resources with other teams.

Team History and Introduction

For a brief background, FRC Team 1072 was founded in 2003 at The Harker School by our head administrative mentor, Dr. Eric R. Nelson, and aims to provide hands-on experience with robots and machines for our club members. We learn the organizational and teamwork skills required to successfully design and build robots for the FIRST competition. We perform with joy, professionalism, and excellence, while sharing our knowledge and experience with our larger community.

Regarding our team structure, Team 1072 is divided into 2 groups of subteams, technical and operational, with each subteam having 1-2 directors. Technical subteams work directly on the robot and consist of design, machining, mechanical, electrical, and software. Operational subteams cover all other aspects of the team, including media/PR, app development, scouting/strategy, and outreach. Team 1072 has over 60 active members, and most of them work across multiple subteams. We also have three co-presidents that ensure the team is functioning well and also oversee the budgeting and high-level decision-making of the team; they consist of an Executive President, a Technical President, and an Operational President. Our two mentors, Dr. Nelson and Mr. Baynes, help us with administrative work, and parent volunteers assist with field construction. However, our team is extremely student-run, and our mentors rarely work directly on technical aspects of the robot.

Links:

From 2023

Annual Harker Robotics Summer Workshop

  • In order to encourage incoming freshmen to join our team, we host a free annual summer workshop to help them develop engineering and STEM skills through robotics applications.

  • The subteams that partake in this are design, fabrication/build, electrical, programming, app development, game strategy, and outreach.

Design gearboxes

  • We fabricated simple gearboxes to train the build subteam on CNC machining and lathe. The new design members then assembled these gearboxes to get foundational mechanical training.

|220x164.9514879067063

Mini CADathon

  • Our design team challenged newer members to create their own robots in order to help them gain confidence and familiarity with Onshape.

Smoothie bike

  • Our fabrication and build team collaborated with our school’s Green Team to modify an old bike to make smoothies.
  • We attached a blender and removed the back wheel of the bike and used bike pedals to spin the blades in the blender.

West Coast Drivetrain

  • Our build team got more practice with machining and assembly by putting together a West Coast drivetrain, which we then used to train our electrical team as well.

Neo Swerve Drivetrain

  • In the summer, our programming team started experimenting with a Neo L2 MK4 swerve drive base since we are low on Falcon 500s and wanted an alternative.
  • However, our swerve modules’ rotation motors did not tune well since our Neo shaft tolerances made it such that press fit pinions weren’t press fit and the Loctite 638 did not hold the pinion, so the pinions slipped free on the steering motor.

Frisbee shooting robot

  • In order to train our new members, we opted for a cross-subteam project-based learning system.
  • This way, we were able to train our design team, our build team, our electrical team, and our programming team on one comprehensive project which members were able to drive around and play with in December.

|3-0x300

Long-Term Goals

  • By the end of Week 2, two driveable swerve drivetrains
  • By the end of Week 6, two competition-ready robots
  • Maximize driver practice at our new permanent field location
  • Create a positive environment and work culture

Offseason + Current Operations Projects

  • Outreach has started our FLL and VEX mentorship programs and has seen great attendance and success at intramurals

    • New: Expanded our VEX program to VEX IQ and VEX V5

  • We have held demonstration days at our school for Open House and Middle School transition day in addition to ones at our community (Santana Row)

  • Our app development subteam has worked extensively on updates to TPW (The Purple Warehouse)

    • Released new TPW scouting interface 16 hours after game release

  • We have made upgrades to our reach via social media like creating fun and creative Instagram Reels to highlight members of our team

  • In addition, our media subteam recorded training videos for FRC topics and uploaded our Offseason Season Recap Video

  • Served breakfast for our local kickoff: pancakes, bagels, coffee to over 200 participants

8 Likes

Great work!
The experience you gained from building a Frisbee shooting bot must have been a head start for your Crescendo season :grin:
Wish you all best of luck, and maybe we will see each other someday some regional in California.

2 Likes

Over the past week, Team 1072 has been working on prototyping various mechanisms, assembling our drivetrain, analyzing the game, and launching our outreach initiatives.

Prototypes

Our first shooter prototype was designed with a pair of worn-down side-by-side Colson wheels acting as flywheels. It had 3” of compression on the note and two sets of Colson wheels (4 total). It was powered by four drills (one for each wheel) and shot about 6 feet.

Our second iteration increased the compression on the previous prototype to 6” and used only one set of Colsons. Instead of machining a new shooter plate, we took the old shooter plate, bandsawed a chunk out of it, and gaff taped it back together. It was Falcon-powered with a 2:1 ratio on one side and a 1:1 ratio on the other. Its max range was about 8 feet.

The third iteration was the same as the second one, but we loosely attached Cat Tongue non-abrasive grip tape on the Colsons to test the effect of higher grip on the shot distance. When the shooter was activated, the tape immediately flung loose, hitting standoffs as it was spun with the wheels. The game piece suffered multiple additional lacerations because of some exposed belts and pulleys, but it shot three times farther than the previous iterations.

Our intake prototype was made with aluminum rollers and silicone tubing. We ran the prototype by hand, which helped iron out the geometry and find places the note was getting stuck. We found that it was nearly impossible to shift the notes left and right, which meant we would have to devise a centralizing mechanism. A lot of dust and dirt over about a day rendered the silicon tubing completely smooth to the touch. However, the prototype’s functionality was not affected by this; it worked just as well as before. To test top-down shooting, we attached a Falcon 500 to the prototype and ran the intake in reverse, feeding the game piece in between the rollers. With about .025” of compression, the note traveled 6 feet.

Progress

We also began assembling our drivetrains. This year we chose to make the switch from SDS MK4 to MK4i modules because they are safer for the Falcons. We bought brand new modules in May and then additional conversion kits in the fall. When putting the swerve modules on the drivetrains, we found that the holes on some of the wheel guard (bottommost) plates were drilled for 8 bolts while the holes on the pulley plate (middle one) were tapped for #10-32. We later realized that this was because MK4i modules ordered before June were fabricated for full #8-32 mounting, with alternating #10-32 holes, but everything since was designed for #10-32, and so mixing parts between swerve modules was leading to the mismatch we saw in the hole sizes. We also found out that the newer MK4i modules had a smaller corner radius than before.

Our electrical team has been hard at work building the field! We will have a finished speaker in the coming days and they will begin working on construction of the amp afterwards.

Strategy

We believe that since most teams will be able to score amp, higher seeded teams will assign amp to lower seeded teams, while scoring in the speaker themselves. Similar to 2023 and 2022, the game gets a lot harder if you don’t have ground pick up, which is important for autons (both from your wing and the centerline), and it can possibly make cycle times shorter by allowing you to pick up stray notes.

The trap will not be necessary for qualification matches however it will be critical in playoffs, especially when the majority of alliance captains already have trap ability themselves. It could end up being the make or break in close matches. Teams getting spotlit is going to be unlikely, similar to the 2022 human player, so the trap will be useful for the ranking point. Harmony and even double harmony will probably be common. During qualifications, a lot of teams won’t get the Ensemble ranking point, which will result in an overall lower ranking scores at regionals.

For our robot, we prioritized its abilities as follows:

  1. Speaker scoring from range (with align to target and move while shooting)

  2. Amp

  3. Ground pickup

  4. Centerline auton

  5. 2 Onstage climb

  6. Trap

Outreach

The outreach team kicked off Wonderbots, a 6-7 week course for middle school girls outside of our school at the start of the season. We teach introductory robotics through Lego Spike Prime kits. The first day of Wonderbots was on Jan 13. Our VEX courses (IQ and V5) are still running smoothly. This week, our outreach subteam has started on writing the Impact Award and also started teaching one of the other educational programs, named Wonderbots, that we offer to middle school girls in our community for free of charge. To go into more of the specifics, this program consists of eight classes teaching the students basic programming skills using Spike Prime robots. Here is an example of the curricula we use:

Currently, in regard to our work on the Impact Award and other awards, the outreach team is referencing our previous responses from 2023 and drafting new curated answers which are updated to include the new initiatives we developed this year. For the Dean’s List Award, the triumvirate of presidents is currently in the process of nominating someone or multiple people on our team (more detail about this will come in the next update). The presidents are also working on drafting a Woodie Flowers submission for one of our key mentors.

In parallel, our media/PR subteam is working hard on producing pins in high throughput with updated designs in preparation for competitions, so hopefully we can expect to see some of you at our regional competitions (SAC & MBR) dawning our pins!

Tangentially, the App Development subteam has been extensively working on marketing and onboarding more FRC teams to The Purple Standard and The Purple Warehouse as well as upgrading various analysis features on the scouting app! If you are interested in joining the other 150+ FRC teams around the world in having the powerful ability to share scouting data and analysis, please check out these other threads!

The Purple Warehouse

The Purple Standard

4 Likes

Design

Our robot CAD has been finalized with 4 different subsystems in the superstructure: a two-stage cascade elevator, a top-down shooter on a pivot mounted on the elevator, an over-the-bumper ground intake, and an indexer between the shooter and intake for centering and a better game piece handoff.

We considered multiple robot architectures, but because we wanted to be able to score in the Trap, we settled on our current design. The document of our compiled robot architecture comparison can be found here Robot Architectures - Google Docs.

Fabrication

We killed the spindle on our Omio and the water cooling pump broke as well. It took us a couple days to fix it and now we’re zooming! We have also started assembling our intake, we are waiting on some parts to arrive but continuing other parts of the robot in the meantime.

We also finished building and wiring our two drivetrains as pictured below.

Software

We’ve been dealing with the Phoenix 6 API changes and implemented a successful swerve drivetrain.

Due to the CANivore’s support for only CAN FD, we also found issues with our CANivore not being able to register devices with longer stub lengths, so we decided to put two CANivores on our robot for the left and right half of our drivetrain.

This year, we’ve also opted to use Limelight’s API for robot pose estimation with AprilTags. By uploading the fmap provided from here to the Limelight pipeline, we were able to successfully retrieve bot poses from the NetworkTables.

For our autonomous routine, we decided to try for a six note path following the picture below.

Outreach

Our volunteers have been consistently working hard on our Wonderbots program. So far, we have conducted 4 classes filled with middle school girls from a plethora of high schools in the Bay Area. The Outreach subteam has also been working on our team’s Impact Award submission and has completed the executive summaries portion. Speaking of awards, the three presidents have been diligently working on the Woodie Flowers and Dean’s List Award and are preparing to submit it in the near future!

In addition, our media subteam has been

The media team has also worked extremely hard on storyboarding our next video! Please look out for it on our YouTube channel.

In addition, over these two weeks, the Game Strategy subteam has assisted software with autonomous paths and reviewed recent rule changes made by FIRST. For example:

  • Sound queue added for final 20 seconds of the match
  • Robots attempting to pass NOTEs through their wing during AUTONOMOUS will have to have at least some portion of its bumpers in their wing.
  • NOTEs entered into the AMP while the amplification period is ongoing will not be counted toward the next AMP requirement.
  • Teams can score up to 4 NOTEs in the speaker during the AMP period to count for the bonus, and have 10 seconds to do so before the AMP period runs out. (AMP period ends after 10 seconds or if 4 NOTEs have been scored in the speaker with the bonus).
  • If robots score a HIGH NOTE onto the MIC, the alliance will become ineligible for the ensemble RP.
  • HIGH NOTEs must fully surround/encircle the microphone in order for it to be counted
  • Opposing alliances may coordinate with each other for deciding AUTON paths before the match (to avoid collisions), but may not deliberately discourage the other team from running their preferred AUTON path.

In accordance with our previous post, since the release of The Purple Standard, the app development subteam has been working diligently to onboard even more teams onto The Purple Warehouse, including multiple international teams! The members have also been working on implementing newer and better graphing and analysis methods for teams to easily figure out prospective alliance members in addition to making a more digestible API and increasing the efficiency of uploading data onto The Purple Standard/The Purple Warehouse.

2024 Onshape

2024 Github

3 Likes

Over the past couple weeks, Team 1072 has been hard at work finishing up our robots and beginning driver practice sessions!

CAD link: Onshape

Mechanical and Machining

Over the past weeks, we made lots of progress on our robot’s subsystems, finishing our first robot from the mechanical side.

A couple weeks ago, our Omio broke down, with the spindle stalling out upon contact with any aluminum. We verified our speeds and feeds were good and we were running sharp endmills with 6061 aluminum, eventually reaching the conclusion that we had killed the spindle somehow. We replaced the spindle and the new one lasted nine hours before the pump for spindle fluid died. We paused the job and replaced the pump, but the new spindle failed as well, with the same symptoms as the first. We tried debugging the second spindle but found no visible issues and so we swapped to a third, slightly used spindle. This one has a damaged plate which slips down as the spindle is run. The spindle also makes terrible, loud noises but it works and so we’ve been running it slowly for the past week. During the period where we were trying to get our Omio functioning again, Team 3501 (Firebots) generously helped us out and machined some plates for us, enabling us to complete our elevator and our shooter.

In addition, we were able to finish our custom 2-stage elevator, which uses ⅛” thick aluminum 2 x 1 tubing, TTB rope rigging, and a custom chain drive part, all on a 36:1 reduction for climbing (huge thanks to Team 972 (Iron Claw), who gave us several gears which we needed on the elevator). The ⅛” thick elevator tubes coupled with the massive ¼” mounting plates at the bottom helped a lot with the stability of the elevator, which was something we struggled heavily with our COTS 3-stage GreyT elevator last year, as when it was fully extended, the elevator wobbled laterally around a foot (the wobble was caused by a multitude of factors, including 16th” aluminum 2 x 1 tubing, not enough elevator support, poor tolerances on the tubes, etc.). However, the increased stability this year did come with a massive jump in the robot’s weight due to the thicker metal, and as a result, our elevator and shooter complex weighs around 50 pounds. This is causing some CoM issues with our trap and climb, which we will hopefully resolve in the coming weeks.

We also were able to finish building our indexer, and we improvised some 3D printed direction reversal gears to save time as we didn’t want to wait for shipping of the aluminum gears. Our original printed gear accidentally had a 1” hex bore instead of a .5” hex bore, so we had to 3d-print two clamping flanged hex hubs and put them inside the 1” hex bores to fix the issue.

We also were able to finish building our intake subsystem. Outside of CAD, we made a few minor changes, such as a bent poly deflection piece to prevent the note from contacting the direction reversal area and pulleys. We were able to improvise this using a 1/16” thick polycarbonate sheet and three drilled holes, two on one side for securing the polycarbonate sheet, and one for propping the other side up to achieve the bend. Initially, the NEO motor powering the intake took over 100A of current to be able to spin the system, even though the intake spun easily by hand and the motor shaft spun easily as well. We tried debugging the issue during our meeting, but didn’t find the root of the problem. The next day, we came back and tried again and it worked! We then rebuilt the intake (with some improvements to make it more structurally sound), greased the gears, and tested with the intake fully extended and rested on the ground. We had no further issues with our intake. We hypothesize that there was some mechanical binding in the gears on the intake which we didn’t find when running it by hand, but was an issue when it was being driven by the motor, due to the angle at which the intake was resting while we attempted to run it.

Our intake is now functional, but we have some consistency issues with the note getting stuck between the rollers. We plan on debugging and solving this issue today.

Our intake to indexer handoff is not consistent right now, but we plan on solving that problem today as well. Sometimes the note ends up going above the intake, and sometimes it ends up going below.

We also were able to finish assembling our shooter subsystem. We used a top-down shooter configuration with BaneBots 2-⅞” OD 30A durometer stealth wheels for our shooter flywheels, as the AndyMark 3” ones were out of stock. This left us with ⅜” of note compression for our shooter, which is still acceptable but less than the ½” inch of note compression that we designed for. Our shooter is also currently on a 1.5:1 step up, lowered from 3:1 as we realized that would give us too much speed and it would increase windup time too much. Currently, the subsystem shoots around 20 feet laterally.

We tested our ability to feed notes into our shooter and it works! Next, we will work on

There was a major CAD issue with one of the shooter mounting plates, where the pocketing on one of them was made unintentionally weak, so we had to “cheesecake” an ⅛” thick aluminum plate onto it to help support and reinforce the weakened plate.

We have also completed our second drivetrain and are working on finishing the superstructure. We decided to build two identical robots to increase the amount of driver practice and software time we could have. Having two robots allows us to perform technical fixes and improvements while driveteam practices and then swap robots and do the same. It also helps us because we have our main workshop on one of the school campuses, and our practice field at another. The two bots give us the ability to utilize both venues simultaneously.

Electrical:

The last week has been primarily dedicated to finishing the electrical setup for the robot, and debugging some of the issues that arose.

We wired our drivetrain (Falcon swerve) to be on the CANivore, but this ended up failing, with the status light flashing green and the CAN light rapidly cycling between red, orange and green. We verified that our CAN chain was intact and the CANivore was configured correctly in Phoenix, and then attempted to add one device at a time. We found that Phoenix was able to read all the devices and the CAN light flashed green until we added a tenth device. Experimenting with using a different CANivore, different combinations of the first nine devices, and different tenth devices ruled out the possibility of a faulty device. We reached the conclusion that the new CAN FD signal was of lower strength and our use of Anderson powerpole connectors for CAN was severely harming signal integrity, and the tenth device happened to be the one which made it break. To solve this problem, we decided to split our drivetrain into the left half and the right half, running a separate CANivore for each side. This works perfectly and so we will be running this setup throughout the season and we will switch to different connectors over the summer.

We also finished wiring the rest of the robot. We put the remaining subsystems (intake, indexer, elevator, shooter) on the Rio’s CANchain, which we believe should be able to handle the remainder of the devices despite the Anderson connectors because it was on CAN 2.0, which is supposed to have a stronger signal. However, to be safe, we ran a grounded core through our CAN connections on the superstructure.

Over the summer, we plan to experiment with grounded DMX cables, Molex connectors, and other alternatives to Andersons.

Software:

To get a working drivetrain, we used system identification (sysId) to tune our drivetrain with feedforward values. Although we initially ran into some issues with retrieving the robot’s sysId data from all four tests (quasistatic forward/backward and dynamic forward/backward), we ultimately used the DataLog tool from WPILib to access files from the roboRIO. With our feedforward values tuned, we started working on tuning the drivetrain’s proportional, integral, and derivative (PID) feedback values, which indicate how the robot responds to error. To expedite future autonomous tuning with a completed robot, we also tested our auton paths with only the drivetrain base. Our three-note, four-note, and six-note routines worked flawlessly, including auto-alignment to the speaker.

Instead of relying on only vision, we also use pose estimation to align our robot with the amp and speaker. With this mathematical estimation, we can make the auto-alignment more reliable and accurate. Initially, we experienced many issues with amp alignment, where the bot would consistently miss the center of the amp by a few inches. When checking our odometry, we saw the pose of the robot drift whenever we attempted to align the bot with the amp. After confirming that the measurements of our field were accurate, we knew that the issue was from the poor tuning of the pose estimator. Armed with this knowledge, we tuned the encoder and vision standard deviation values for the pose estimator to trust encoders a bit less and vision a bit more. Our efforts resulted in a significantly more accurate and precise auto-alignment of the amp and speaker.

With the robot’s intake, indexer, and shooter, we experienced issues where the note would not travel through each subsystem and would become stuck on different parts. By looking at Phoenix Tuner X and REV Hardware Client, we realized that the current limits for the respective motors were not high enough. We increased the current limits for all the motors on those three subsystems to around 80 amps, which successfully resolved the intaking issues. We faced an issue with the indexer on the pivot that restricts the note from traveling to the shooter, but after some debugging, the problem was fixed. We are currently working on tuning the shooter, as we noticed that the shooter would stop spinning too early, causing the note to not reach its needed velocity.

Outreach:

Outreach has continued to run Wonderbots, our 6-week course for middle school girls interested in STEM. To recap, our lessons are organized according to the LEGO Spike Prime “Lifehacks” and “Training Camp” lessons. So far, we’ve covered introductory tools such as variables, if-then-else statements, gyro sensors, and color sensors. We just completed lesson 5 this past weekend in which the students learned how to interact with their environment using the tools and sensors that they were taught earlier. Every lesson, we incorporate ice breakers, team bonding exercises, and a snack break, which we found help improve student retention. We’re proud of Wonderbots’ success this year with regards to the curriculum revamp that it underwent last year and student turn out. Above all, we believe that robotics is for everyone and Wonderbots is one of the ways that we strive to create an inclusive environment for girls interested in STEM.

Likewise, we’ve continued our VEX courses for middle schoolers: V5 and IQ. Our VEX V5 students recently attended their first local competition of the season, and some of the teams were able to make it into elims as middle schoolers while competing against more experienced high school teams. In our IQ program, students have been working on adding claws and other mechanisms to their drive bases and have learned to program simple autonomous programs using block code in order to navigate obstacle courses and drive their robots.

Over the past few weeks, the outreach subteam worked rigorously on the Impact Award short answers and essay. Initially, we drafted what we wanted to highlight in each question and made sure to avoid repeating content. Each member of outreach was assigned a question to draft, and at the following meeting, a different outreach member reviewed it and gave feedback. For answers that elaborate on other subteams’ work such as App Development and Scouting, we invited members from their subteams to contribute to our reviewing process. We also found that asynchronous work was useful to keep us on track. Most recently, outreach began writing the script for our Impact presentations at SAC and MBR.

App Development:

The App Development subteam has continued onboarding more teams to its collaborative scouting app, The Purple Warehouse (TPW). The app now has more than 200 teams registered, with more teams signing up daily as they prepare for upcoming competitions. Out of the 50 teams who most recently registered, 60% have joined FRC within the past two years (and more than 80% have joined FRC within the past four years), showcasing TPW’s commitment to supporting newer FRC teams and leveling the playing field through Coopertition and open-source development. The vibrant community on TPW’s Discord server has also continued to grow, hosting nearly 500 members and solidifying its place as one of the biggest scouting communities in FRC.

TPW’s powerful analysis features will be going live soon as the subteam works to refine the match predictions algorithm, rankings calculator, graphs/visualizations, and other AI-powered capabilities. Additional features for TPW are in development as the subteam constantly works to improve the app. Some upcoming advancements include a refreshed design that focuses on providing scouters with a beautiful experience, as well as exciting gamification incentives to help keep scouters engaged and having fun.

The first external integration of The Purple Standard (TPS) scouting data format has gone live in another team’s scouting app, with more scouting apps actively working to add support for TPS. The App Development subteam has been working to prepare an open-source API and SDK that enables sharing of TPS-formatted scouting data between teams through TPW’s collaborative scouting database, which can perform accuracy checks and analysis on the data. The API includes a number of carefully-designed security features which allow for scouting data to be shared safely and securely without exposing sensitive information through the API. Documentation for the API and SDK will be released within the next few days, and members of the App Development subteam will be available to assist with integration. If you are interested in joining our efforts to increase data collaboration between scouting apps, please reach out to us through our Discord server!

Media:

Our media team has been continuing to produce new designs for our pins this year as well as keeping some of our designs from last year. So far, they have made 500 pins!

3 Likes