G’Day Chief Delphi!
Thank you all for patiently waiting for our daily recap posts.
Due to this game being so hard, and maybe us overscoping a tad…, we unfortunately had very little time during the 3 days to write them, but I hope it was worth the wait.
Apologies in advance for the absolute tidal wave that this post is, but I hope it’s all valuable and interesting to read.
Day 1:
The day began with us visiting the 5985 workshop at midnight to set up our work space and get everything ready for game release at 4am AEDT.
Once the time came, we gathered around a projector and watched the game reveal video, along with all the other teams at the Wollongong Kickoff.
We first read through the game manual, writing down important dimensions of scoring positions, point distributions, and rules that we were required to keep in mind while designing and building our robots.
We then reconvened as a team and discussed potential strategy options for our robot and the direction that we wanted .
Strategy:
Starting off our strategy talk, we wrote down each scoring action a robot could achieve alongside the points value associated with it on a whiteboard, as well as the ranking points and how they are achieved.
We then began the more in depth strategy discussion, where we covered a number of topics and different ideas. The main questions that were discussed are listed below, followed by our thinking and then our answer to the question:
1. Is scoring into the processor even worth it? If so, when?
- Scoring an ALGAE into the PROCESSOR grants your alliance 6 points, however, it is then in possession of the opposing alliance’s human player, who can throw it up into the NET for 4 points. This means that scoring into the PROCESSOR only nets your team 2 points.
- We theorised that once the NET starts filling up with ALGAE, it will be increasingly difficult for the HUMAN PLAYER to make their shots. As a result, they’ll be more likely to reintroduce the ALGAE into the field for you to score again, as the match progresses. (The below table and chart are used to illustrate this point, without having an actual net, it’s hard to get an accurate picture of how this will go).
- By bypassing the PROCESSOR, and scoring the ALGAE directly into the NET, you grant your alliance 4 points, and the opposing alliance 0 points.
2. Is a CORAL only bot viable?
- Not removing the ALGAE from the REEF reduces the number of scoring locations by 18 total (6 locations on LEVEL 3 and all 12 locations on LEVEL 3). This means that, for the CORAL RP (assuming the coopertition bonus has been achieved), you must either remove a low and a high ALGAE such that you can then score on LEVEL 3, or score all the way up at LEVEL 4. If the coopertition bonus has not been achieved, these actions must be taken regardless.
- Scoring only CORAL can contribute to both the AUTO RP and the CORAL RP, making it a good game piece to specialise in.
- The two game pieces require different lines of thinking from designers: CORAL cycles require more lineup, or at least designing with the mindset of reducing lineup time, while ALGAE cycles are limited by gamepieces, and have multiple positions to intake from (REEF, staged on CORAL, floor (as the match progresses))
- Intaking CORAL from the CORAL STATION only, means that you can design an intake that receives from a known single location and direction, and therefore simplify your design. The downside to this is that it increases your cycle time by forcing you to traverse the entire distance between the REEF and the CORAL STATION twice per cycle.
- Intaking CORAL from the ground can speed up your cycle times, as the CORAL can roll towards the REEF from the CORAL STATION. The downsides of this is that 1) the CORAL may be oriented in random manners, and 2) the defense bot on your side of the field can potentially steal the CORAL though this is nullified by the amount of CORAL available for human players to drop.
3. Is an ALGAE only bot viable?
- Removing ALGAE from the REEF opens up more scoring locations for your alliance partners to score on by 18, as discussed in 2a. This allows for 66 more points to be earned in TELEOP. ALGAE can also be scored directly into the NET for 4 points, or into the PROCESSOR for 2-6 points (see #1).
- Scoring ALGAE contributes to the CORAL RP via the Coopertition Bonus. If both alliances each score 2 ALGAE into their PROCESSOR, the Coopertition Bonus is reduced from 5 CORAL on 4 LEVELS to 5 CORAL on 3 LEVELS. This reduces the RP requirement by 5 cycles.
- Assuming cycle times of the same speed, ALGAE only bots that score into the NET directly, will outscore CORAL only bots that can only deliver to LEVEL 1 and 2 of the REEF, LEVEL 3 CORAL cycles score the same as ALGAE NET cycles, and LEVEL 4 CORAL cycles will outscore ALGAE NET cycles.
That being said, there are more CORAL scoring opportunities than ALGAE - For an ALGAE only bot, intaking game pieces from the ground is extremely important, as those unable to score ALGAE, but are able to remove them from the REEF, will be depositing them onto the ground. It is also easy to score the ALGAE into the PROCESSOR with the same mechanism if you can pick them up off of the ground.
4. What is the most efficient way to cycle both game pieces at once?
- Being able to pick up CORAL from one side of the robot, and score it on the other is the quickest way, as you do not need to spend time rotating your robot.
- The most optimal design would allow a robot to remove an ALGAE from the REEF and then score a CORAL on the newly opened scoring location at the same time.
- Combining these designs would allow for a robot to pick up CORAL on one side of the robot and then, from the other side of the robot, remove ALGAE from the REEF and score CORAL on the REEF without changing the robots position.
5. Should we climb?
- A shallow climb is worth 6 points, while a deep climb is worth 12 points. A deep climb is the equivalent of 6x L1 cycles, or 3x L3 cycles, AND it contributes greatly to a RANKING POINT - you just need an alliance partner to park.
- For most teams, this combination of points and (almost) guaranteed ranking point is very worth it, to the extent of reducing your scope in other aspects in order to accommodate this into your design. Make sure to be realistic about your team’s capabilities when deciding priorities - this should be quite high.
By answering these questions, we decided on building two robots:
The ‘Low Cycle Robot’ (Wooper), which is the robot that best meets the teams goals of a simple yet still competitive design that is accessible to lower resourced teams, and our ‘High Cycle Robot’ (Quaxly), which is more an exploration into the most efficient way of handling both game pieces for higher resourced teams to develop their ideas around.
Before we made any decisions on what these robots looked like though, we needed to figure out some geometry. We split off into groups to focus on each design before coming back as a group to discuss their pros and cons. This is how we spent the majority of day 1.
Overall Robot Architecture Design:
Quaxly:
With this robot design, as we wanted to explore the most efficient way to cycle both game pieces at once, we primarily looked at the different configurations of an ALGAE remover and CORAL scorer, positioned such that we can do both actions from one spot, without moving our chassis, while being centered on any AprilTag on the reef.
This led to us deciding to use an elevator, as it allowed for the most efficient double cycle possible either via a passthrough or by rotating the intake/scoring mechanism. Luckily for us, AndyMark had sent us the SDS elevator kit, which we’ve been very excited to use. From this, we then started looking at what mechanism we would be putting onto the carriage of our elevator to hold our ALGAE remover and CORAL scorer mechanisms.
The three primary designs that we discussed were:
- The Elevarm
- The Dual Coral Elevator
- The Sideways Elevator with Rotating Scoring Mech
The Elevarm:
This design was inspired by 2471’s 2018 robot that had an elevator with an arm on the carriage that could reach over the top of the robot to score on the opposite side the game piece was picked up on. Unfortunately this was scrapped after CAD sketches showed that the geometry would not work to be able to score in all locations from both sides of the robot.
However, we did conceptualise a mechanism that was ‘CORAL only’ using a similar idea. It had a single stage lift with an arm on the carriage and a static ramp that was fed through the CORAL STATION. The CORAL would slide down the ramp into the CORAL end effector, and then the elevator would lift up, and the arm would rotate to score on the REEF.
The Dual Coral Elevator:
This design was inspired by 254 2018, with an up and down pivot on the end of a cantilevered elevator. It would receive CORAL from the CORAL STATION using a passive ramp on one side that would allow for the CORAL to slide through the elevator into the CORAL scoring mechanism on the carriage.
This design implemented a CORAL scoring mechanism either side of the ALGAE removal mechanism at the correct spacing so that lining up directly with the apriltag on the REEF would align all 3 mechanisms.
This would be used to remove ALGAE by pivoting up the mechanism which, in the rotated position, would have the CORAL mechanisms aligned with the REEF without repositioning the chassis of the robot.
This design was scrapped due to the end effector being physically too large to fit in a way that would achieve our goals.
The Sideways Elevator with Rotating Scoring Mech:
This design allows for the robot to pick up and score game pieces from either side of the robot while still having only one degree of freedom on the carriage. It maintains the offset CORAL scoring mechanism that allows for the removal of ALGAE and the scoring of CORAL without moving the robot’s chassis. To reduce weight and balance the rotating arm, there is only a single CORAL scoring mech offset from the ALGAE removal mech towards the elevator.
This means that for one half of the REEF, our scoring will be on the “front” of the robot, and for the other half of the REEF our scoring will be on the “back” of our robot. So theoretically, we would only need to flip the front and back of the robot once during a match.
This is the design that we decided to pursue as it allowed for dual sided scoring capabilities and the ability to remove ALGAE and score CORAL from the same location without the need to move the robots chassis, which are both required for efficient cycling of both game pieces.
This decision was made after lunch on Day 1, and so 20 hours into Ri3D, we finally locked down our robot architecture. Now we just had to get it off of the whiteboard and into CAD so that we could begin cutting tubes for the elevator and start on some intake prototypes.
Prototypes:
For the CORAL intake and scoring mechanism, a prototype was made with 2 wooden walls, a wheel on the top, and a polycarbonate bottom for the CORAL to slide along. This worked surprisingly well to intake and hold the CORAL until we wanted to score it on the REEF.
For the ALGAE removal and scoring mechanism, a prototype was made from wood to see how much compression would be required to intake and hold onto the ALGAE such that it wouldn’t fall out during a collision. This saw quick success, and a CAD model was designed to be machined on the morning of day 2.
For the elevator, the geometry had to be worked out in CAD, and so no prototyping of an elevator was done. On day 1, the basic design of the elevator and rigging was completed. It used a 2 stage SDS Elevator Kit from our generous sponsor AndyMark, and #35 chain to drive the first stage and also to cascade the carriage.
We initially decided to drive the elevator with a Sport Gearbox and using the Servo Powered Ratchet given to us by our sponsor Andymark to hold it’s position, however, our carriage unfortunately ended up being too heavy for the 12:1 Sport Gearbox, which was unfortunately the only ratio that we had in our workshop
Integrating the sideways elevator to the KoP chassis in CAD was a difficult task that took all of the afternoon of Day 1 to complete. This was primarily due to the fact that we were using scrap lengths of metric aluminium RHS with predrilled M5 holes on a metric 12.5mm spacing.
Not being able to position the elevator exactly where we wanted it led to it being unstable as well, due to not being able to fit any supporting structure around it nicely.
There was talk of using steel cable and turnbuckles, similar to 3005 in 2023, to support the arm, but we didn’t find the time to get out to the local hardware store to purchase the necessary parts.
The position of the motor and gearbox to power the elevator was also difficult with the KoP drive gearboxes sitting nicely in the way.
Our CAD workflow on Day 1 was very much:
- Start to CAD
- Realise there was an issue
- Fix the issue
- Find new issues
- Repeat
We may have had less issues if we designed purely custom solutions, however we wanted to keep our design as accessible as possible, and so we decided to use only COTS gearboxes and #35 chain in our design.
For Quaxly at the end of Day 1, 15 hours post game reveal, we had:
-
An intake prototype for both ALGAE and CORAL
-
A combined ALGAE remover and CORAL intake/scorer design ready to be machined on the morning of Day 2
-
A finished cascading elevator design, with the motor and gearbox to power it floating in space, and
-
Sleep deprivation from being up for about 27 hours, yeah, we could have slept, but we had to take apart Quagsire and prep our workspace
Wooper:
Wooper was a concept that came up around lunch, and whose design is predicated on the assumption that the net will become increasingly difficult for human players to score into.
This robot emerged from a different line of thinking - is Quaxly’s design actually accessible for every team? We realised that the answer to that question was a big fat ‘No’, and so we decided to build Wooper, a competitive low cycle robot that is much more friendly to low resource teams as it doesn’t require the cost or relative precise machining requirements of an elevator.
This robot would be designed for maximising ranking points:
- Deep Climb (only requires a park for ranking point)
- Auto Leave + preload coral (only requires both alliance partners to LEAVE for RP)
- Cycle Processor (coopertition point + supports alliance partners by reducing coral level requirement for RP)
- Remove Algae (in order to cycle processor)
We started by investigating the deep climb and geometry for interacting game pieces, as well as getting a drivebase ready for use.
Climber:
These sketches help to visualise the robot and cage system in order to select an appropriate pivot point for the arm. The pivot point is the only thing which matters despite the common misconception that grabbing high on the cage helps you climb higher.
From this sketch we can see that moving the pivot up simply lowers the robots final hang position, we also see that moving the pivot further from the cage increases the distance from the cage in the climbed position (also detrimental) therefore a pivot as low and close to the cage as practical is chosen.
The circle represents the ground plane rotated around the pivot point of the cage. It helps to visualize which parts of the robot would touch the ground if the robot were to rotate due to gravity (note that the combined CG of the robot and cage will of course swing to below the center of the circle).
We also investigated the geometry needed to remove ALGAE.
Hear more from our team members here
You may notice that there is not as much written about the low cycle robot for day 1 - This is because:
- this design was started halfway throughout the day, and
- half the people working on this were not around for day 1
We ended at 7pm due to everyone being exhausted from the early start to the day.
Day 2:
Day two started at 7:30AM with most subteams building their prototypes, and a continuation of elevator CAD.
Project Bucephalus went on an adventure to find the correct size pipe for the CORAL for us, which proved to be a challenge in itself. (Oh the joys of being an international team!) They did eventually find it from our local electrical wholesaler!
For the Australian teams following us, the correct size pipe is type ‘11750’ on HERE. So go check out your local electrical wholesaler to see if they have it or can get it in for you!
Quaxly:
Intake:
Our first mission for the day was to machine the combined ALGAE remover/ground intake and CORAL intake/scorer to test its effectiveness. Once machined, it was assembled and tested using power guns (drills with the motor removed and electrical connectors in its place to power brushed motors), which showed that both mechanisms were quite effective, and that the offset was correct to allow for ALGAE removal and CORAL scoring without having to move the chassis.
Elevator:
For the elevator, we continued to play with the carriage geometry, and the position of the end effector on the carriage to score on LEVEL 2 and LEVEL 3 of the REEF from both sides of the robot. It just happened to be a bonus that we could also score CORAL onto LEVEL 4 of the REEF and score ALGAE into the net, by designing our elevator to the starting configuration height limit.
One thing that we neglected, however, was that, to fit into the starting configuration and not be phasing through the ground, the carriage had to either:
- Start halfway up the lift, losing us a chunk off of our max height due to being a cascading system, or
- Have the end effector offset vertically by a bunch on the carriage, adding a lot of weight to it.
To maintain vertical reach and keep weight down, we decided to redesign the elevator rigging system to be continuous. This took up a majority of Day 2 and proved to be a challenge, as the goal of using KoP chassis, COTS parts, and #35 chain made the positioning of things tough as you will see when the CAD is released in the coming days.
Climb:
We also decided to try to add a deep climb to Quaxly using an idea we originally dismissed on Day 1, but came back to after seeing it implemented by Ri3D RustHOUNDS.
This climber was prototyped using wood for the structure and ½” steel hex, with cut up inner tube ziptied to them for grip, as the sticks to grab the cage. It was powered by a CIM with a 45:1 VP reduction with a big washer and a shaft collar on the output hex to act as a winch.
Elec Planning:
The electronics planning spreadsheet acts as a central source of truth for both Software and Mechanical teams to reference. It is the Controls / Software / Electrical team’s duty to inform the Mechanical Design team on sensor placement and electronics size allocation. This short amount of planning saves time and prevents costly mistakes. We highly recommend all teams do something similar to this.
The wiring harness to hold all of the cables going to the carriage was also assembled.
By the end of Day 2, we had:
- Assembled and tested the combined ALGAE remover and CORAL intake/scorer
- Assembled the 2 Stage SDS Elevator Kit sent to us by our sponsor Andymark!
- Finished the CAD of the carriage and connection between it and the rotating arm
- Had a prototype deep climb
- Made the electrical harness to carry the power and signal wires to the carriage from the base of the robot
Wooper:
Intake:
After some exploration of intake designs and geometry, we expanded the scope to cover coral floor pickup, as we:
- Found that it could be added to the design without much additional effort or changing any other functionality.
- Realised how quickly coral could be cycled and believe it to be an effective source of points for teams, especially depending on the make up of the alliance.
This scope expansion allows Wooper to be a much more effective and desirable alliance partner that plays a supporting role as it can clean up CORAL dropped by other teams which would be used when there is a lull in the amount of available ALGAE on the field.
We want to emphasise that scope expansion should not be done impulsively.
This design worked with our existing robot architecture, and so the scope expansion was part of our iterative process, we got one thing done first and then add functionality.
Climber:
Wooden hooks with rubber contacts were used with a ratchet strap to test climb geometry and rough center of mass and arm pivot location requirements
Arm and Structure:
CAD for the superstructure of the robot and the arms length and position were finalised and so we could move to begin fabrication and assembly! We first fabricated all of the necessary components and gathered up all COTS parts required, before assembling and installing Wooper’s main A frame structure and the first iteration of the ALGAE remover, which unfortunately had to be taken off as it intersected with the ARM, oops.
This led us to explore the potential of a lightweight single position ALGAE remover that would use the existing wheels on the CORAL ground intake.
Watch this video where we first test the single position ALGAE remover design.
Day 3:
Day 3 started the same as day 2, with subteams working on their separate tasks.
Quaxly:
For Quaxly, we were focused on finishing the last of prototyping the climber, before moving on to final robot assembly.
Intake:
The intake was connected to the now completed carriage.
We decided to bring in a luggage scale to weigh the combined intake and carriage. The intake weighed in at 5kg, or 11lbs for the imperial users, and when installed onto the carriage with the motor, the combined assembly weighed in at a whopping 13kg (28.6 lbs).Nothing to report, it sat off to the side until we could install it onto the carriage.
After this, it sat to the side, waiting to be installed onto the bot after the elevator’s base stage was secured.
Elevator:
Final assembly of the elevator itself was a breeze, but mounting it to the KoP chassis proved to be a nightmarish task, as the metric pattern on the scrap tubing we were using was cut off-center to the hole pattern, causing it to not line up even more then first initially thought. Mounting the base stage to the chassis took us just over an hour of mucking around.
Once the base stage was on, the carriage and intake were slotted on, and the brace to prevent the base stage from splaying was installed.
We then realised we had to swap which side the elec board was on because, in starting configuration, the ALGAE remover would be phasing through it.
After that was done, the continuous chain for the rigging and the wiring harness were both installed in parallel, as well as investigating the best way to add a supporting structure to make the elevator more rigid. Unfortunately, we could not find a quick way to make the elevator structure more rigid, and so we just had to roll with it being a little bit wobbly. We will, however, be providing solutions for making it more rigid in our technical binder.
Once the elevator was on and the rigging was complete, delayed a little by the plate to pin the chain to the carriage no longer protruding from the carriage far enough, it was handed off for final wiring and then programming for robot bring up.
After bring up, we conducted initial systems tests, in which we decided to change the elevator gear ratio from 60:1 to 35:1 to speed it up for faster cycles.
After we ensured that everything was functional again, we started to film for our robot reveal with just over 2 hours to go!
Wooper:
Wooper was focused on the final climber iterations and testing, as the last piece of functionality on the robot. This went up until just after lunch, where we moved on to programming the robot and running systems tests. After the initial systems tests, we spent a few hours tuning everything to be the best it could be, and started filming for the robot reveal with 10 hours to spare.
After filming the required shots for the reveal video, and having some dinner, we wanted to get a working autonomous path running. Once this was achieved around 10pm, the team working on Wooper went home early for a well deserved nap.
Final thoughts / Notes:
In all honesty, our design process should be taken as a big lesson on scope setting. While you see the final product as something we’re genuinely proud of accomplishing, you can also see that Quaxly’s controls and movements were unpolished in comparison. This was because we had underestimated the amount of time that the robot would mechanically need, and ended up giving software only ~6 hours with the robot.
Every team is going to have different amounts of resources (whether it be in terms of people, money, machine shop, knowledge, time, or otherwise), and it is up to you all to set an appropriate and realistic scope for your team based on your capabilities.
Don’t be scared to low-ball it and allow yourself to later expand on your scope as resources become available, it’s much better to set a limited scope that can be expanded, than to set a large scope that you cannot accomplish.
We are very lucky to have such amazing support behind us:
- 5985 for providing us with a space (and field, and materials, and tools, and !! so much!!),
- Our lovely sponsors; AndyMark for providing us with mission critical mechanical components; Redux Robotics for their amazing sensors; and WARES for their perfectly machined plates.
- Various parents of local team members for giving us a place to stay, keeping us fueled, and helping keep morale high
- And last but not least, our own team member Rui, for winning 6kg of gummy bears to fuel us with sugar over the 3 days.
Our crazy ideas would not have been possible without their support, and it goes to show how much goes into the FRC season beyond just planning around building a robot.