We're finally running full-field cycles in practice. Cone pickup from the shelf looks reliable, and Yi and Emma are working well together as a drive team. Unfortunately, the wrist belt is still killing us. At the end of the Thursday meeting we finally swapped it out for a #25 chain. Hopefully this should run more reliably.
Comp finally has a two-piece and balance auto. We're still pushing for a three-piece auto by Hueneme, but this is looking tough. We need to pull a lot of time out of the current program to make it work.
Beta's rebuild into Beta 2 (R2B2) is coming along. It will be the first robot to get the V4 Everybot intake, which should be more reliable with cubes. It also has the lower roller driven by a timing build instead of flat polycord, which will transfer torque better.
Finally, after seven long weeks of work and a lot of trial and tribulations, we finally have a single substation ramp. Go Citrus!
The long weekend at the end of build season is always a well-appreciated opportunity to push hard to get things done. Even with it, we're nervous for the upcoming event.
Intake Testing (Pinball Wizard)
Ajay pulled out the old Pinball Wizard intake on Saturday (which is miraculously still together) and did some testing with the intake angled down at about 60 degrees. It worked, but it wasn't incredibly inspiring. We probably won't be playing with this much more before Port Hueneme.
Intake Troubles (Comp)
The latest rev of the Everybot intake picks up cones well enough, and we could make it work for cubes with some good driving. We also fixed the "vertical acquisition zone" problem of the old one by adding a strut that rides on the ground to keep the height of the cone rollers consistent. What doesn't work is the wrist. The belt that runs the wrist skips a few teeth every time it's retracted, eventually running the inline tensioner back into the gearbox. Re-tensioning is a 20 minute operation, and it needs to be done all the time. This is unsustainable, and will probably kill us at Port Hueneme if we don't get it fixed.
One of the things we changed from Beta to comp was reducing the reduction on the arm. The original arm had enough torque to do serious damage to itself, so we removed a MaxPlanetary stage from it. It has plenty of torque to lift game pieces and do its curl... or so we thought.
Because the arm pivot is further into the robot than the wheels are, when it climbs the wheels get pushed into the ground. This pushes the robot, forks, and partner robot up a bit (and scoots our robot in towards the platform). The original arm had enough torque to push through all this, but the new one doesn't. We can make it work by climbing with a gap between the bumpers and the charge station, but this defeats the purpose of a last-second partner climb.
Compounding this, there was a week zero competition over the weekend, which showed that triple balancing with random unpracticed partners is... actually pretty easy. We might not even need the forks week one. It's possible that we leave the arm as-is and ignore the fork climb at Port Hueneme. As with everything, this is TBD.
A silver Lining
With all this bad news, the mood is a little grim around the shop. The good news is that we weighed in at 79 pounds, which is completely bonkers.
I was out sick for a week, so this will be a summary update for Week 6
Mike has been on a tear coming up with new intake concepts lately. The direction has changed a few times, but the new settled course is that we are setting the 111 French Fry intake aside, and bringing back the Pinball Wizard from a few weeks ago. Because we have a wrist now, we think can attack game pieces at a downwards angle, reacting against the floor to help keep the game piece stable enough to intake.
We will be testing the Pinball Wizard again this weekend to see if it can fill our needs. One downside of this design is that the rollers spin perpendicular to the wrist, so we can't power it from the base of the carriage like the Everybot intake (below).
Comp is almost completely assembled. This is still missing the climb forks (about a pound) and a 7 pound steel bellypan that we had cut at Fabworks by our friends at 4414. The Rev 3 Everybot intake is also 2 pounds lighter than the Rev 2. With all that, we should still be weighing in at just around 90 pounds. We should still be fast, light, and low!
Now that Beta is working well enough to score points, we're finally making some autos. First up is a single game piece and balance. We're able to do this consistently.
With Beta's intake working unreliably and Software Robot programming autos (and with Yi being both the head of Software Robot and the driver 🙃), there has been very drive practice done this week. The log sheet for our short cycles at least includes cones now.
Today was our first earnest day of drive practice, and week 6 starts tomorrow. Yikes.
Prior to the meeting, Taye reversed the problematic pulleys in the intake. It now runs slow enough to pick up game pieces reliably, but too slow to pick up game pieces with the robot at full speed. The Markforged print was made with a 1/2" hex bore, but it turns out the shaft is 3/8" round. We quickly printed and installed a PLA pulley instead.
The goal of today's practice session was to get good at positioning and scoring. The original plan was to run batches of 6 cones, 6 cubes, and then get in position for a climb. We decided against playing with cones today, and were running cube-only cycles. This is the log sheet for the day.
Here are some videos from today's session.
It has been a long time since 1678 was this far away from having a competitive machine at this point in build season. Looking at last season's practice results, we ran 134 cycles on February 12th, 2022. Today we ran 31, with 6 of our 9 practice runs ending in mechanical failure. We're all nervous about our competitive prospects right now, but it's important to remember that all of the subsystems giving us problems already have improvements in place for comp.
The silver lining on today is that we're finally driving and finally learning our failure modes. The lingering question is whether we can keep failing and recovering fast enough to succeed in 20 days when we load-in to Port Hueneme.
Beta's First Cycles
We ran our first few cycles with Beta today, which immediately exposed some flaws.
The biggest problem is the intake. In an effort to only use the belts we have on-hand, we ended up running a belt stage as 24:18 instead of 24:24 as planned. This "upduction" is causing the intake to hit its 40 amp limit while idling. It also takes about 5 seconds to get up to speed under a current limit, and browns out the robot. We drained our first battery in just four cycles. We're printing a new pulley tonight to swap the reduction from 24:18 to 18:24. That should allow us to cycle normally, but probably not to grab game pieces at full speed - we can live with that until Comp is ready.
The second problem is our weight distribution, as previously mentioned. With a heavy intake and solid aluminum climb forks, the inertia of snapping the arm down while moving causes the robot to wheelie dramatically as it backs out from scoring position. Comp will have a lower CG and a lighter intake, but that might not be enough to solve the problem. Getting the Software Robot team to slow down the arm lowering should help as well. It could move downwards at 20% its current speed without slowing our cycling.
We also backed out the screws that hold the plate onto the middle stage of the elevator, which will need loctite.
"Steal from the best, invent the rest," right?
Wildstang (111) has been doing an open build this year (one of the best of the season, and my personal favorite robot so far - check it out if you aren't already familiar). They posted their intake on CD on Saturday, and this thing is too good not to build one ourselves. Ours will have a few twists, of course. The 111 intake has to work both directions, which means it has to be symmetric. Ours doesn't.
One of the easiest changes we can make to the 111 "french fry" to intake mitigate that issue is to extend the upper half of the belts. We will also be changing the intake to be full-width with polycarbonate dead axle rollers instead of hex shafts, and figure-eight belts instead of gears to keep the weight down. Our wrist will pivot from above the centerline of the intake to keep cones from stabbing into the pivot point, and to help it package easier. Comp will get the modified Everybot intake for now, and when Beta evolves into R2B2 it will get the French Fry (Wildfry? French...stang?) intake to compare against.
Rohan, Aunish, Hiroshi, and Raf got Beta wired up and into the Software Robot teams' hands. Yi got all of the individual degrees of freedom working, along with a first pass at set points for the elevator, arm, and intake. On Sunday, Beta made its first complete climb. There are still some minor mechanical parts to install, but this is nearly complete. We're also not excited about the string wrap onto the drum (it overlaps itself sometimes), so we might make Comp's drum larger diameter.
We spent some time playing with the intake. Note that the perspective on this video is a little confusing. The intake is in its "tucked" position with the elevator up, so it's upside down from its usual orientation. The climb forks have pool noodles on them to keep anyone from injuring themselves on them.
By the end of Sunday we were able to score our first game pieces. This means that we can start programming autos and running drive practice in earnest. By this point last year we had dozens of hours of drive practice, and this year we have none. We have the same driver this year as last year, but our operator Emma will be behind the glass for the first time at Hueneme, and this is a hard robot to operate.
The Hardware Design and Fabrication teams got Comp's drivebase built, and Hardware Electrical started getting it wired up. We hope to have it built next weekend.
How does this happen every year? Kickoff happens, then you spend a few hours looking at plywood prototypes and then suddenly it's February and you're behind schedule. We should be running cycles right now, but instead we're still building Beta. I've gotten behind on updates, so today's will be short while I catch up.
Beta Beta Beta
This week we got Beta mostly assembled, and ready to wire up and string the elevator. The limelight mounts still need to be designed and printed along with a few other small details, but the robot is mechanically functional.
Highly important™ long intake maneuver.
The goal of today's meeting is to have a mechanically complete Beta so that Rohan and the Hardware Electrical team can get it wired tomorrow and off to Software Robot for some code on Thursday. We got the elevator mounted, which Rohan and the electrical team got to work on. The intake has some issues with serviceability and ease of assembly, so Soren and Emma spent 3 hours hitting axles with a mallet to add and remove pieces.
Sunday's meeting showed us that while we're doing great on overall weight, the weight we have isn't distributed where we want it. Right now the intake is heavier than the elevator, which is going to make the robot less stable and harder to control than we want it. We need to pull some weight out of it. Below are Mike's notes on lightening the assembly.
1. We're not only concerned with total weight, but with the distribution of weight. By moving everything as far back as possible on the elevator, the whole assembly gets easier to move and control.
2. A steel chain has some non-negligible weight, as do the aluminum sprockets that it interfaces with. By moving to belts with 3D printed pulleys, we can remove metal from the assembly in a few places.
1. In a typical intake for a spherical game piece, the game piece is squished between the ground and a top roller as it moves. A roller underneath the ball isn't typically needed. To that end, the roller closest to the pivot probably isn't needed to pick up a cube. By replacing that axle with a carbon fiber rod we can add rigidity to the system and remove the weight of the shaft, bearings, compliant rollers, a pulley, and a belt.
2-4. By re-working the wrist to use a dead axle running between the 2x1 bars, we can remove the two aluminum brackets that hold the axle.
5. Running two figure-eight polycord belts (one on each side) should provide enough torque to the front rollers to keep the cone intake working well, and removes the weight of the gears and aluminum pulleys that currently run between the two shafts.
2. Surprisingly, thinner material is lighter than thicker material. By dropping all of these plates to 1/8" thick and selectively reinforcing the parts with bearings in them, we can keep the structure sturdy while dropping the weight further.
3. Some 3D printed tube mounts will keep the CF structure in-place.
I haven't been posting updates from Software Robot often, but they have been working all season. (Note from the editor: I might go back and edit in some software updates for posterity.) Yi and the Software Robot team got Alpha running some auto paths (slowly), which we should be able to speed up for Beta. Cameron also worked to speed up our auto-leveling routine, which is now about 2 seconds from scoring position to level.
Localization using Apriltags and the Limelight has been a struggle, but Mehul made some serious progress this weekend. Here are some problems and solutions that we ran into:
The Hardware Design and Hardware Fabrication teams are hard at work to build Beta. Beta will be our platform for development and drive practice until Epsilon and Comp are finished. By the end of Sunday we finished fabrication on a majority of Beta's parts, and assembly is well underway. We were far enough into the process that we could get our first weight check.
Chassis and Drivetrain: 49.3 lbs
Elevator: 17.2 lbs
Intake: 19lbs (!!!)
We clearly need to do something about the intake weight, but 85 pounds so far isn't a pad place to be at.
Brendan and the Hardware Design team pulled a late night in Onshape on Saturday to bring Epsilon to life as quickly as possible. As of Sunday morning is has a drivetrain and half an elevator.
In the harsh light of day on Sunday we looked at our resource loading, the state of Beta, and the timetable of bringing Epsilon to life. Ultimately, our design team is already pushed to their limits bringing Beta across the finish line. Doing a total architecture change starting in week 4 (with a competition in week 1) just isn't feasible. We'll be better served by optimizing Beta as much as possible and driving the wheels off of it. Hopefully we'll be able to bring Epsilon to Madtown Throwdown in November :).
Beta 2? (R2B2)
Just because we're setting Epsilon aside doesn't mean we're done with architecture changes. The biggest problem with Beta is that it has to keep the arm up high in protected zones or under defense. When we designed Beta we were using the Pinball Wizard intake, which is fixed to the elevator and has a reach of about 5 inches past the end of the elevator. Now that we're using the Everybot intake we have a wrist and extend over a foot past the elevator bar.
This means that we can shorten the elevator by 3.5" per stage, and that we can pull the wrist back to tuck fully into the frame perimeter with the elevator down. Beta still has one more degree of freedom than we'd like, but it's going to be easier to deal with the extra DOF than it will be to design a whole new robot.
Besides, Beta can do the highly important secret sauce long intake maneuver. What else do you need from a robot?
Are we building the wrong thing?
Mike and Dave sat down and looked at our architecture, and started to confront the idea that in order to keep inside our frame perimeter, we have to keep the arm up. 1678's design principles are focused on being low and fast, but Beta's design means we can never cross into an opponent's protected zone, and have to have a game piece (and mechanism) held outside the frame perimeter in order to keep low. We can solve these by putting the intake on a wrist, but that means putting a rotating DOF on our linear DOF on a rotating DOF. There's a lot of room for failure there. Those are major red flags for us.
We're looking at a new architecture for an Epsilon robot. Mike drew up a layout sketch, Brendan made a Crayola CAD robot, and it looks like a more solid architecture than Beta. We did this same type of redesign last year, but this change is more dramatic.
This is Epsilon's architecture. It only has two DOFs, stays within its frame perimeter while moving around the field, and should keep a lower CG than Beta while scoring on the high peg.
Epsilon is a cascade elevator with a four-bar intake. The rear forks will have to be separately powered (which is a downside), but both motors on the intake can be placed in a "backpack" on the first stage of the elevator, with powered belted out to the intake using a similar system to CoreXY 3D printers. Open Alliance teams 2713 and 3847 are both working with similar designs, which gives us some reassurance that it's a reasonable idea.
Even though we're moving forward with Epsilon, progress isn't stopping with Beta. Beta will still be needed for serious drive practice and autonomous programming. Alpha hasn't been all that helpful with either task, thanks to its floppy, ungainly arm.
Beta's elevator is getting better detailed out (it has ropes and a beefy axle setup using lessons learned from 2016), Big J got the clamping blocks for the endgame forks made and mated in place, and Kina and Taye started making a less prototype-y version of the Everybot intake.
Stephen and the fabrication team have been working on producing parts for Beta, and are starting to get some subassemblies together.
Seeing a new robot come together is the most exciting part of the year, but needing to pull a complete architecture switch in a week or two is going to be a very hard lift for Brendan and the design team. There are going to be some long days and late nights in the coming weeks.