FRC 3481 | 2024 Build Thread | Open Alliance

Welcome to the 3481 Bronc Botz 2024 build thread, presented by #openalliance .

About 3481 Bronc Botz

Bronc Botz is a FIRST team out of San Antonio, TX located at Louis D. Brandeis High School. We strive to teach our students core STEM knowledge that can advance them in the workforce like team work, CAD, and safety among others. We instill cooperation and gracious professionalism in our students.

We’re working to build the FIRST community in San Antonio & South Texas through partnerships with other FRC teams, FTC teams, and school districts who are advancing FLL and FTC programs. We also work with a variety of community organizations to advance STEM Education and FIRST to San Antonio students.

We made the decision to join the Open Alliance after the close of the 2022 FRC season, and have spent the summer and off-season working on a ton of projects. These projects have included revamping parts of our pit, working on programming a different swerve drive gear ratio, and working toward developing more sustainable training resources, like resources.broncbotz.org! We’ve worked hard to prepare for this next season. Truly amazing to see so many teams supporting the Open Alliance this season and starting their own build thread.

Competitive Goals for 2024

Our goal is to be one of the top 4 alliance captains at district qualifier events, and to be in elimination matches at district champs. We’ll be playing at Waco (week 1) and Houston (week 4).

We’re excited for 2024 and love to share it with you all! Stay tuned for updates on our ongoing projects!

If you have any questions, feel free to ask them in the thread, through DMs or on Discord.

6 Likes

11/28/23 Build Thread Update

Hello, FRC community!

We’re excited to share our latest updates and preparations for the 2024 FRC season. Here’s a quick rundown of our progress and important links:

2024 Events:

Currently, we are signed up to participate in the following events:

  • FRC – Waco District Event

  • FRC – Houston District Event

Important Links:

Off-Season Projects:

  1. Practice Swerve Drive Train:

We’ve embarked on building a practice swerve drive train to test our code, teach wiring techniques, and practice basic manufacturing. This project aims to address issues we encountered with our swerve drive last season. Your feedback and insights are invaluable as we work through this.

  1. New Battery Cart:

In a bid to optimize pit space and enhance storage, we’re designing and assembling a new battery cart. This project provides our team with the opportunity to practice CAD and manufacturing. We have begun the manufacturing process and have built the wood component of the battery cart.

  1. New Robot Cart and Driver Station:

We’re retiring our old dolly with a wooden plug for transporting the robot during competitions. Instead, we’re designing a more robust cart with storage space and a driver station. Simultaneously, we’re creating a driver station using HDPE material. here

We have began the CNC process of the metal. We are cutting lightening holes in the metal and gussets for the robot cart.

Programming Update:

In the realm of programming, we’ve kicked off the development of our 2024 Base Code in Java for the upcoming season. You can find our repository on GitHub here. We’ll be utilizing YAGSL (Yet Another Generic Swerve Library) for our base swerve code.

Our programming team is actively testing our code on a test bot drivetrain constructed using our old swerve modules from last year. Additionally, we’re in the process of building our new prototype drivetrain to test the new Swerve modules we’ve acquired - the MK4 variants from Swerve Drive Specialties. This season, we’ve opted for the L3 variants, which offer a bit more speed compared to the L2 variants used last year. While this provides increased speed it also outputs less torque necessitating adjustments to PID values.

For more information on the swerve modules we’re using, you can visit Swerve Drive Specialties, where you’ll find details on gear ratios and drive speeds in the product description of the MK4 Module page.

We’re eager to collaborate, learn, and grow with the FRC community as we prepare for the 2024 season. Your insights and support are greatly appreciated. Stay tuned for more updates, and feel free to reach out with any questions or suggestions!

Best of luck,
BroncBotz
3481

Happy Kickoff!!!

After seeing the game, we started with a strategy organization method, need want dream.

Need Want Dream
Auto - Leave - Score Note (both amp and speaker) - Multi-note auto
Driver Operated - Score notes - both amp and speaker- wall intake - long shot into speaker- floor & wall intake
End Game - Park & spotlight attempt - on stage- harmony (skinny bot) - trap

From this, we worked on a 6 part strategy - District Event Quals, District Event Elims, District Champs Quals, District Champs Elims, World Champs Quals, and World Champs Elims.

We transitioned to robot design. We started by deciding on our drivetrain size (28” x 28”) and doing swerve, and quickly added that to the cad.

Next step was deciding on subsystems - floor intake, index (which includes a flywheel shooter), and climber.

Following that was crayola cad (which is essentially drawing in CAD, but to scale). This helped us visualize the angles and sizes relative to each other.

We have generally settled on a design and have started to CAD, updates to come.

Mechanical Updates
Working off our initial “need-want-dream” and strategy session we have begun the CAD process on our 2024 machine. We have increased our drivetrain size to 30” x 30” and chosen three primary subsystems to focus on: intake, index/shooter, and climber. We are planning to primarily intake pieces through our shooter through the human player station, however we have designed a floor intake to be able to take fallen pieces and score more pieces during autonomous. We are using two linear actuators to move the shooter to have multiple positions. Our climber will be able to extend to the highest point of the chain to be able to hang from most places on the chain.

Drivetrain -
Our drivetrain is 30” by 30” and is run with four SDS MK4 L3 modules. We have added 3D Printed caps for the swerve modules to avoid damage to the gearing. We plan on adding eye-bolts to clip handles to, which will make transporting the robot on and off the field easier.

Floor Intake -
The floor intake was inspired from the concept Ri3D cranberry alarm robot. We utilize the thriftybot poly belts on top of surgical tubing and rollers to create a “sandwich” in which the note is theoretically sucked into the feeder mechanism. We take advantage of the flexibility of the notes and speed of the motors to effectively pull off the transition. We are excited to test this design and look forward to the OA community for feedback and comments.

Feeder -
Our feeder moves the game piece from the intake to the shooter. It is powered by one 775pro and is belted and geared to convert the direction of motion. There are several lexan pieces that will assist in guiding the game element from the intake to the feeder. We will have a beam break sensor to detect where the game piece is in the feeder, and stop it before it gets to the shooter.

Shooter -
The shooter is positioned at the top of the feeder mechanism, and is powered by 2 NEO 1.1 motors. We plan on using 2 rows of ballasted 3” stealth wheels. We plan to mostly intake pieces through the shooter from the source, depositing the note into the feeder before redirecting the feeder back into the shooter.

Climber -
The preliminary climber is a basic andymark climber in a box. To lift the robot we have two neos with 125:1 versa planetary gearbox. The regular mounts for the gear boxes don’t fit so we mounted them to the internal frame and linked the two with a chain.

Programmming Updates
As we continue to gear up for the 2024 season, our programming team at BroncBotz (Team 3481) is thrilled to share our latest innovation: SuperStructure styled coding. Here’s an overview of this exciting new development and our progress so far:

SuperStructure Styled Coding: A Game-Changer

What is It? SuperStructure styled coding is a novel approach we’re experimenting with this year. Its goal is to significantly enhance precision during autonomous (Auto) modes and automate many of our teleoperated (TeleOp) functions. This method focuses on creating a modular, efficient, and adaptable codebase.

Current Progress: We have set up a test repository and are currently laying down a comprehensive base file structure. Our immediate goal is to complete all subsystems and command files by the end of this week.

Collaboration and Knowledge Sharing:

We remain committed to collaborating with the Open Alliance community. Sharing our journey, learning from others, and contributing our findings are core to our team’s ethos.

Stay Connected:

Follow our progress and share your thoughts through our Team Website, Instagram, Twitter, and on The Blue Alliance.

We’re excited about the potential of SuperStructure styled coding and believe it will be a significant asset for our team this season. Your support, feedback, and insights are always invaluable to us.

Best,

BroncBotz Programming Team

Team 3481

can you post a picture of your intake design?

Sure! Here is a screenshot of our current intake design.

I’m also throwing the link to our OnShape here.

Still iterating upon our drop down mechanism. It will be actuated with pistons but we are still playing the with the angle and size of the piston.

Hello everyone,

We’re excited to share the latest developments from our programming team at Bronc Botz 3481 as we gear up for the 2024 season.

Programming -

Base Code Completion: We’re thrilled to announce that we’ve successfully created all the foundational code required for our robot. This accomplishment lays a solid groundwork for our upcoming work.

Superstructure Focus: A part of our programming team is dedicating their efforts to the superstructure aspect of our robot. This will enhance precision during autonomous (Auto) modes and automate several teleoperated (TeleOp) functions, contributing to a more efficient and adaptable codebase.

PhotonVision and AprilTags: Our team is actively researching and exploring PhotonVision and AprilTags, two exciting technologies that can significantly impact our robot’s performance and capabilities. Stay tuned for updates on how these innovations integrate into our code.

YAGSL Library Update: We’re currently working on updating our YAGSL (Yet Another Great Swerve Library) to ensure it aligns perfectly with our robot’s needs. The library is an essential part of our codebase, and we want it to be in top shape for the upcoming challenges.

Transition to runOnce Function: As part of our code optimization efforts, we’ve made the transition to using the runOnce function for all our commands. This will enhance the efficiency and control of our robot’s movements.

Looking Forward: We are eagerly awaiting YAGSL’s official 1.0 release, and once it’s available, we’ll seamlessly integrate it into our code to leverage the latest enhancements and features.

Mechanical -

We have finished the CAD process and begun the manufacturing and assembly of our robot.

Finishing CAD - We had many issues with our intake drop down design. We had to take into account strength of materials, the amount of piston force working directly tangent to the path of the intake, and the amount of torque required to lift our intake. After calculations, we came to the two ⅝” bore pistons with 6 inch stroke to drop down the intake. This was one of the final steps of the CAD process and transition to manufacturing.

Manufacturing - This week, we have begun the manufacturing process and hit the ground running cutting extrusion, hex shaft, sheet metal, and lexan. We had multiple subteams handling each step of the manufacturing process, scribing, cutting, scribing again, and drilling. We have currently finished all of the cutting of extrusion and are currently in the drilling process.

Assembly - This week we popped the first rivet, and began the assembly of the robot. We have begun assembling the drive train and will continue in this following week as we finish all drilling and our HDPE begins to come in.

Hello everyone,

We’re excited to share the latest updates from our 2024 build season.

Mechanical -

This week we finished manufacturing and assembling our final drivetrain to continue testing and improving our swerve drive code. We have also begun assembly on many subsystems including our feeder, shooter, and intake. Many of our subsystems are made out of HDPE (high density polyethylene), a material we receive from our sponsorship with Frank’s Manufacturing. After receiving all of our pieces, we got quickly to work, assembling what we could and customizing several pieces with creative painting as seen below:

Offseason Project Update -

During the offseason, we started several projects including a new robot cart, battery cart, and driver station, as detailed in earlier posts. Over the offseason, we assembled the structure and base of many of these projects and designed HDPE to be cut and used on each project. After receiving the HDPE pieces, we got to work assembling each project and have now finished our robot cart and driver station, shown below.

|266x354.98179599585427

Programming Update:

We’re here with an update from the programming team. This week has been an eventful one as we’ve made significant progress and encountered an intriguing challenge.

Superstructure Styled Code: We’re excited to announce that we have successfully completed our superstructure styled code, incorporating all the robot subsystems and features we aimed to implement for the 2024 season. This achievement positions us well for the upcoming challenges.

Autonomous Path Challenge: While we’re making great strides in our tele-operated (TeleOp) code, we’ve encountered an interesting issue in our autonomous routines. This year, we’ve continued to adopt YAGSL (Yet Another Generic Swerve Library) for our swerve code, and our tele-op runs smoothly. However, our autonomous mode seems to behave unexpectedly, continuously speeding up in one direction until manually stopped.

Pathplanner Integration: Our autonomous routines rely on Pathplanner, which we’ve successfully used in the past. However, with the new version of Pathplanner, we’ve encountered compatibility issues when interacting with YAGSL, or vice versa. We suspect that the problem may lie in our motor inversions within the code, as all our drive motors are inverted. This may be causing Pathplanner to receive incorrect Pose information, leading to unintended movements and an increasing proportional term (kP) trying to correct the error.

Out of Phase Hypothesis: We believe that our motors may be “out of phase” due to these inversion settings, resulting in the continuous speed-up behavior observed in autonomous mode. However, it’s worth noting that when we ran an older path generated with a previous version of Pathplanner alongside our current code, it worked as intended.

We are actively investigating this issue and exploring potential solutions. If anyone has encountered similar challenges or has insights into this matter, your input would be greatly appreciated.

We remain committed to finding a resolution and ensuring the reliability of our autonomous routines. Stay tuned for updates on our progress, and as always, your support, feedback, and suggestions are invaluable to us.

Thank you for being part of our journey.

Sincerely,
BroncBotz 3481