Robot CAD can be found at this link.
I apologize in advance as this CAD was built natively in Solidworks, and we had a bear of a time getting a clean export ready to share. There are definitely some minor issues here and there, but the good stuff is all in there.
Some of the highlights worth checking out:
The Telescoping arm includes 3d printed bearing blocks with a heavily optimized part breakup/assembly methodology. These blocks went through nearly a dozen iterations as the season progressed.
The Cable management spool, which included a mechanically synchronized spool to wind out/in the cable assembly going to the End Effector
The Ground Intake, which we eventually removed, included some really cool progression. The Deployed Roller was split across the front to allow the arm to swing through. The main arms of the Deployed Rollers were an aluminum/3d printed gear rack assembly that rode on printed bearing blocks.
The End Effector and Wrist use several printed components to help simplify, reduce size and part count
Trajectory magic found in tools/solver125.py. Inspired from 6328, creates trajectories offline which are used when going from one position to another instead of using a state machine which allows us to optimize for time while following some given constraints such as velocity, acceleration, jerk, and avoiding obstacles such as shelf or scoring peg.
Instead of pressing “Restart Robot Code” on the driver station, there is a button combination that throws a runtime extension which causes a crash making the code restart.
Orchestra plays music using talons when a button is pressed and automatically cancels when driving
Automatically switching arm position for cone/cube for scoring based on which is intaked(intooked?) latest and a button to switch between the positions on the single station
Button to switch between coast and brake mode on all arm motors when disabled.
Selecting auto based on dashboard before the match starts which is generated using PathPlanner and incorporates commands for intaking, scoring and balancing
AutoBalance Command which looks at the angle of robot and uses PID control to adjust as needed
Downloading match logs and using AdvantageScope to debug after matches
One final thank you for this season to all of the teams who helped us along the way. The NUTRONs are honored and privileged to be apart of a great FRC community.
Instead of pressing “Restart Robot Code” on the driver station, there is a button combination that throws a runtime extension which causes a crash making the code restart.
Truly the innovation we need in 2023 FRCFIRST Robotics Competition
I saw that in your CAD you squeezed your PDH in between the center bars of the drive base, did this work in the real world? If so would you recommend that way?
The holes in the frame are obviously necessary for this to work, but ultimately this worked very well for us. The side of the PDH facing the front of the robot was filled with front half of swerve and the intake functions. The opposite side had the back half of swerve plus all the arm functions. We have little printed snap in grommets that keep the wires from being cut on the aluminum.
How this came to be really is just simple optimization of space. We placed high requirements on low CG and balanced CG, so battery in the center was a hard constraint. We debated putting the electronics on a brain pan but ultimately that would force us into a higher CG. Turning the PDH sideways let us fit everything front to back in that middle section.
The biggest thing that is inspiring me from your robot this year is the 3D printed bearing blocks for the telescoping arm. When looking at the cad there seems to be a bunch of different versions of your top 3D-printed bearing blocks. Do you know which one is the most recent version? Also, were these FDM printed or SLS? If FDM what supports did you use dissolvable supports?
Big thanks to everyone on 125, students and mentors alike, for helping out 2713 so much this year. From prints and broken printers to moving in for a week to borderline throwing a Rio against the wall, you guys all saved our butts more than once this year. Super happy to have you guys as our closest neighbors and looking forward to future seasons with y’all.
We were psyched to see your Einstein run and that at least one of us made it out of Daly; next year we’ll just do the Einstein run together.
Really cool seeing this robot evolve from Week 0 to Einstein! One thing I admire greatly about the Nutrons is the willingness to scrap what’s working decently to get something that eventually works great.
Who knew the Greater Boston trendline would keep going:
I’ll create a package that has our all of the final blocks in one file. As I mentioned above, they went through several iterations, some being major and others being small adjustments to optimize fits.
These were all printed on FDM printers, the final parts being printed on Markforged Onyx Ones. One of the most critical aspects is getting the fit just right. Small differences, even in the raw extrusion used for the arm can make a sloppy fit. We ended up essentially building up an entire arm, powdercoating the arm stages, putting it all together, assessing the fit, measuring any slop, and then shifting the bearings in the blocks and reprinting on the same exact printer to make it perfect.