Resolution
2023-2024 Center Stage
Gracious Professionalism Award - Colorado State Championship
Finalist Alliance Captain - Colorado State Championship
Up-A-Creek’s 2023-2024 Center Stage robot, Resolution, is built around an active intake and continuous slide lift on a Mecanum drive base. After testing Center Stage with our turret robot, we decided that the game called for a robot redesign. The whole robot is under 12 inches to fit under the stage door and truss. The robot is also equipped with april tag odometry resets and vision based auto deliveries.
Resolution - Colorado States
Resolution - MTI
Hardware
Base
Our base continues to use our standard Mecanum drive with two wheel odometry, sandwiched between four custom machined aluminum side panels. This year, we tried to free up the center of the robot to make room for intakes.
Lift
The first lift was a two stage continuous system, however the second stage was based off of carbon fiber and linear bearings. This allowed it to go all the way up and down without any slides sticking above the 12in limit of the stage door. We decided it was fine if the lift didn't reach over the second set line, as our team was focusing more on mosaics. The system starts vertically to fit within the 18in size limit, but flips down to a 30° angle at the beginning of the match.
This lift version was in use through both of our qualifiers, Colorado States and the Maryland Tech Invitational (MTI). However, the Chicago Robotics Invitational plays a modified version of CenterStage which requires reaching up to the third set line. We added another Misumi slide stage to accomplish this.
Depositor
Our basic depositor design uses two micro-servo controlled claws that grip pixels from the inside. That assembly can rotate around the center, allowing us to place two pixels right next to each other. It also rotates around one more degree of freedom to allow for transfers, and fits between the slides on the lift.
Intake
The intake was probably the most iterated hardware component of the robot. The day of kickoff we started prototyping active brushed intakes using two super speed servos strapped to game elements from Freight Frenzy.
The intake went through many different versions of the same basic concept: front over top brushes. However, aligning the pixels in a reliable way for transfers was a challenge. Originally, we used compliant wheels gripping pixels from the side, but eventually moved to a rubber band conveyor bed system that aligned pixels against the back. The depositor picked up from that.
This whole system was, up through Colorado States, on a servo powered four bar linkage that moved it in and out of the robot. This allowed us to change height for the pixel stacks.
However, due to the weight and leverage of the system, it was not precise enough for reliable auton pickup from the stacks. So before MTI, we redesigned the intake so only the front brushes moved. This way, it was much more precise. The pixels then continued up a rubber band ramp to a conveyor bed similar to the one in the previous version. A bar that flips down at the beginning of the match was also added as a spacer to set the distance from the wall during auton pickups.
The intake is currently on version 5.2, meaning the 3rd version of the 5th complete redesign.
Four Bar Intake (above) and Built In Intake (below)
Hang
The hang is made of aluminum extrusions and is biased upward with springs. There are kevlar strings connecting the hang to spools on two core hex motors. This allows for a quick hang at the end of the match.
Drone Launcher
The drone launcher is mounted on the hang, and gets angled correctly for launch before hanging. The drone launcher is powered by a constant force spring instead of a rubber band. The reason for this is that contact force springs don't wear out as quickly and they have, well, constant force.
The hardware on our robot has gone through many iterations to best optimize it for Center Stage, and to best optimize it to work with our software.
Software
This season, we aimed to automate as much of the competition as possible, with our final robot being able to score mosaics in only two button presses. We used a combination of odometry, color sensors, and vision to automatically pick up and score pixels. Intaking was done until the color sensors in our intake registered two pixels, then our robot would immediately transfer the pixels to the claws while storing the color of each pixel. Then once we arrive at the backdrop our drivers could start a delivery and by using the color of the pixels we are placing, the AprilTags for backdrop relative localization, and the actual contents of the backdrop, our robot would read out the current backdrop, calculate the optimal scoring location, then automatically drive to complete the placement within one sixteenth of an inch.
All of these actions were managed by a set of three state machines (drive, tele-op, and endgame) which each managed their respective set up subsystems as entirely independent of the other two. The use of state machines and Kotlin coroutines (our primary programming language is Kotlin) allowed for multithreading all of our robot processes, something vital to high complexity automation. Additionally, the vision was done using the FTC vision portal with an AprilTag detections processor alongside several OpenCV processors.