Team Copioli shot! Check it out:
Good morning! Here’s a quick update on what happened during the late-night hours. Team Copioli is currently on the practice field, where we’ll be for most of the morning. You can follow our progress on the livestream here at BuildBlitz.com, or on twitter @TeamCopioli.
One of the issues we encountered during testing last night was that the ball kept falling out of the robot as we were driving. We’ve added some retaining devices to help.
Here are the side retainers. They’re simple, but effective – bent PVC pipe to match the shape of the ball.
We also added another retainer that’s attached to the kicker. This replaced the lexan sheet we had yesterday that kept causing issues with the travel path of our shot.
Wooden hard stops were replaced with aluminum ones, properly mounted this time.
Finally, we’ve made some changes to our code, including adding some automated sequences, to help with the launch. Now the press of one button will both launch the ball, and reset the arm.
Tonight, Team Copioli went over to the practice field at Greenville HS. The intake, launcher, and tusks were all installed and wired up, so it was time to test! It took some time to get started, as evidenced in our last post. We updated live on Twitter and on Vine, so here’s a collection of the highlights.
We started our testing with a large lexan & PVC catching net, but as the night went on it got cut down further and further as we realized just how much it affected our throw. At first, it went high, and fell short in distance. https://vine.co/v/hY09UIOJZb3 During some more troubleshooting with controls, we smelled smoke. We thought we’d burned out one of our BAG motors, but as it turned out we’d only heated up the lacquer on the wires. Phew! All good. Then the late-night giggles took a hold of the group – but Paul & Reid took charge and pushed through some of the issues we were having. (By the way – we think it’s amazing that among all these engineers & mentors building robots, we have a high school student programming for us. You rock, Reid!)
We finally hit our first high goal! It was the milestone we’d all been waiting for. The rest of the evening was focused on letting our drivers get accustomed to the robot, and figuring out how to get the results we wanted as they got a feel for the controls & the tweaks we were making in the design.
As you can see, the net was cut shorter so as not to interfere with the launch. The ‘down’ position for the intake was also adjusted until we found the right way to come down over the ball.
We continued making high goals standing still – and, yes – sometimes missed them (and hit Paul. Oops!) https://vine.co/v/hYEjv3eAvje
The team quickly realized that the ‘sweet spot’ for hitting high goals was if the robot was moving towards the goal. The flatter trajectory made things much smoother. There were definitely still improvements to be made, but we decided that since we were finally ‘in week 6’, we would be freezing the design (other than minor tweaks – no NEW additions). The drivers would be spending their time perfecting the running shot (for high goal and the truss) and we could work on adding in an autonomous mode to be ready for the judging showcase tomorrow. This would allow us to focus on getting consistent shots, and comfortable drivers.
As the drivers were practicing, they rammed a corner goal- and it didn’t sound good.
Wall: 1, Team Copioli: Zero.
Back to the shop for some fixes, and then we’ll start practicing again tomorrow morning.
(By the way – if you’re looking for a longer-form version of our on-field videos, well… this should sum up what we’re trying to do for you.)
The initial testing process for any FRC robot is a slow and tedious one. No matter how much you try and simplify your design, these robots are inherently complex with a wealth of potential failure points. Every PWM connection, crimp, fuse, and line of code could fail, leading to a debugging process that could run from mere seconds to hours. This is magnified in the initial testing phase, because by definition nothing has been tested. As such, you come to the field with big aspirations, but end up doing hours of tweaking.
That’s the point Team Copioli is at right now. We’ve had some issues with code, hard stops, positioning, and other various items. Still, the times the robot has run consistently, we’ve seen a lot of promise. The drive train is where we want it to be, while the shooter seems to be very close to being ready. We’re going to spend the next few hours trying to iron out these kinks, and hopefully we’ll be draining shots soon. Stay tuned to the stream to watch our progress, and follow us on Twitter at @TeamCopioli for live updates.
Here’s how the driver controls are going to be set up for Team Copioli. Both teams are using the VEX Cortex control system instead of the standard FRC control system, just so we can get these robots up and running quickly.
With the robot having four discrete operations (Drive, Launch, Lower Intake & Tusks, Run Intake), it was decided to utilize two drivers- one responsible for driving the robot base, and one for the other functions. However, since launching is very dependent on the position and aiming of the robot, it was decided to give the driver the launch button as well. This leaves the second driver with control of lowering the intake and running the intake roller. As it currently stands, we have the flexibility to alter the position of the intake arm (the “bat” or “leg”)
This picture shows the layout we have planned.
Hey FIRSTers! Despite it being the middle of the might, the past 6 hours have been very eventful in terms of fabrication for Team Copioli, so we wanted to give you a short update on the structure for both the intake and launcher we installed, as well as the linkage that connects them.
The intake in the lowered, active, position.
One side of the four-bar is off by about 1/16″, causing things to be misaligned. Our initial reaction this morning was that the right sidebar needed to be remade, but it turns out that by simply adjusting the position of one of the mounting brackets, we could bring the entire linkage back into alignment.
Our morning project is to get the electrical system all wired up, so we pass the robot off to the late night crew in a couple of hours, who’ll lead us in completing the launcher and intake. If you’ve got any questions, or there’s anything you’d like to see more of – be sure to get in touch with us at @TeamCopioli on Twitter!
Team Copioli put a large emphasis on acquiring balls off the floor. It was decided that the most convenient way to pick up the ball was to have it go over top of the bumper, and not have to design in any breaks in the bumper. Our past experience led us to prototype a roller claw, as they have been very effective in past FRC challenges. The prototyping was instantly successful, so we moved straight on to CAD.
Here are the final specs:
- Top roller, 12 fps linear speed
- Roller being powered by a BAG motor through a 10:1 VersaPlanetary
- Rotation of the shoulder joint powered by a Mini CIM through a 3-stage 300:1 VersaPlanetary
- Roller using 3x 3.25” VersaWheels, torque being transferred through a series of VersaHub
- 3.25” Wheels have a built in hub, also the grippiest against the ball
- Structure is made out of 1×1 VersaFrame, using stock VersaGussets, and some modified with hand tools
To get some insights into the how and why of this design, let’s talk to James Tonthat, who was the lead engineer on this subsystem.
Q:What did prototyping tell you?
Before we even started prototyping, we began with some Crayola CAD to figure out measurements that might work. Just some simple shapes in SolidWorks, but once that started working out, we started to put them together with what we had around. It took about an hour to dig parts up, but we clamped together the VersaFrame and played around with the dimensions – and when we showed it to Paul, he said it was “money in the checkmate bank”…so back to CAD we went for a more formal documentation.
Q: How did you decide on pneumatics vs motors for the actuation of the mechanism?
Usually, with a longer build season, you’re able to figure out what pneumatics you want & can order them – the lead time is long, but that’s okay when you have six weeks. Since we only have 3 days, we’re limited in what we can use- and, quite simply, we have more motors on hand. Using motors also allows us to be more flexible on where the intake arm can travel – if we haven’t completely figured out the final configuration, it makes it really easy to change around. Pneumatic systems would be more difficult to rearrange. We also, don’t want to add all the overhead of having pneumatics – extra tanks, manifolds, etc – we chose to keep it neat, tidy and light.
Q: How did you decide on the roller speed?
A rule of thumb that’s fairly popular in the FIRST community – however fast your drivetrain goes, have your intake rollers go a little bit faster than that – as fast as you can, actually, while still gripping the game object. One of the most important parts of the game is to capture the game object as quickly as possible. The faster you can do that, the quicker you can score – and the more matches you can win. By setting the linear speed of the roller faster than the drivetrain, you can guarantee that as you drive up onto a ball and capture it, it won’t roll away from you. Once you touch the object, you own it.
Q: What about this breakthrough you had with the VersaHubs?
We got to a point with our initial design where we had packaging issues – Since we’re going over the bumper, the new 20” rule makes us work in a very small space. Our initial idea became really awkward and cumbersome. We weren’t sure we were going to be able to make what we had – an axle with a belt to a gearbox – work well, so we rethought the exercise. We moved the motor & its mount, and used something creatively – the VersaHubs – and we got a much better solution. We had a lot of time invested in the original intake, but this new one made a lot more sense. It’s going to be much faster once it’s built than the first idea we’d had.
Q: How modular is this design? How will it fare in a competition environment?
Part of the Build Blitz challenge is making something that will be competition worthy. For a team that’s actually competing, anything that goes outside the frame perimeter is going to get beaten up during matches – FIRST is a contact sport. The intake is one of the most important mechanisms for this game, and so it needs to be easily fixable & replaceable. If this intake gets damaged, we could swap out pieces or even the entire mechanism during competition. Even if this particular roller design doesn’t work out, we have contingency plans – sprocket and chain, belts, pneumatics – that we can work into design if we need to. For the case of an actual FIRST team, they could also swap out and adjust the entire mechanism with only a few fasteners between events if they needed to adjust their performance.
One of the goals for Build Blitz was to give the teams with very few resources some design ideas that were very simple, yet had the potential to have a significant impact on a match. From the outset on Team Copioli, we thought we would make a priority list, and only focus on the top 3-4 items on the list. We recognized our own resource limitations (mainly time), and wanted to showcase the power of simplicity. However, as the process has gone on we’ve had very quick success with our prototypes, allowing us to pursue more of the items on our priority list. As such, while our robot is still very simple to construct, it’s definitely not as simple as it could be, or as we had initially envisioned. We didn’t want to abandon the idea of simplicity, so we’ll take this blog post to talk about what we would build, if we were going with the simplest approach.
Let’s revisit our priority list from yesterday. For full details (and the complete list) take a look at this blog post. If we chose to remain simple while still maintaining competitiveness, we would focus on only the first five items.
1. Drive. Obviously, we would need to have a driving robot.
2. EJECT! EJECT! EJECT! Being able to release a ball is a must, otherwise you run the risk of choking your own alliance.
3. Receive from the Human Player. This the most basic way to enter a ball into play, and allows you to have the potential to be part of an assist.
4. Score Low. This only requires a somewhat controlled release, and gives you the potential to convert assists into actual points.
5. Pick up off the Ground. Our final priority. This greatly increases your assist potential, as you can now pick up any ball that’s been released by an alliance partner (or their human counterparts).
Combining just these 5 relatively simple tasks, would make you a strong asset to any alliance, even at the highest level. This type of robot could be a first round pick at most Regionals, and a second or third round pick at the Championship.
Remember, it’s better to do 5 things at 8 out of 10, than 8 things at 5 out of 10. “The jack of all trades is the master of none.” Simple can win championships. In fact, I’m in the building with one of those simple World Champions right now.