The finish line is in sight for the hardware now.
We have hopefully gone through the last major redesign (number 7!) for this year’s robot. The new design incorporates all the lessons from the test chassis and last year’s robot. All that remains is to settle on mounting holes in the lid for the Nerf gun.
Printing has started. Here’s the back controller module…
This allows us to select the game and provides start and stop buttons. The bottom line reports the battery voltage and goes red when the battery is getting close to minimum voltage. Connection to the Pi is via a USB port.
The face plate is also printed. Assembly of the front module, which contains a lot of components (3 time-of-flight sensors, 4 LEDs with their drivers and a micro controller) can start soon.
Last year we didn’t do very well in Pi Noon as we were knocked out in the second round. We decided to try to improve that this year.
To that end we have developed a “Pi Noon Simulator”. The cylinder at the top bends when pressed and makes a connection. This lights an LED via a pulse stretcher which counts as a “POP”.
We’ve got one unit mounted on last year’s PiDrogen and another mounted on our new mecanum test chassis. We can now have unlimited games of Pi Noon without going through a shed load of balloons.
This really is a lot of fun!
Since our last blog there’s been lots of progress.
We have drilled out the centres of the mecanum wheels and printed some new hubs. This allows the gap between the motor and the wheel rim to be reduced so that the robot remains within the maximum width specification. It also allows a common attachment method between the “balloon tyre” wheels and the mecanum wheels so that a wheel swap between games is viable.
We’ve all, but particularly chief driver Nathan, been driving the test chassis with the mecanum wheels installed. We’ve been trying to imagine that we are in a PiNoon battle. We try to always face the opposition then lunge at the appropriate moment. Quite honestly it’s tricky. Last year’s machine is easier to drive although it is not as versatile. This is going to need some practice.
There’s good news though. The 3D printed chassis is definitely robust enough. This leaves us free to go through (hopefully) one last design pass and then to print the final version.
We built some electronics. This is an Arduino Beetle driving four Pololu motor drivers (which are based on MAX14870 chips). The lower board (which you can’t really see) holds a couple of DC-DC converters which convert our 4S LiPo voltage down to a nice smooth 5.2v for the Pi and the other electronic bits. The Pi can talk to the motor driver board via the USB port and direct the speed and direction of the motors. Well it should do anyway.
Unfortunately it doesn’t work. The motor drivers (which are rated at 2.5A peak) report an error (which I think means “too much current”) so the motors just buzz rather than move. On paper this should all work; the motors have a stall current of 1.4A. But unless we limit the motor current to about 800mA the drivers refuse to play ball.
I’ve heard it said that you have to massively over-specify motor drivers. Now I see that’s true.
We are not amused. This is a setback.
Since our last blog post our test chassis has transitioned from the CAD world into the real world. This chassis incorporates loads of experimental features:
- It is all 3D printed. Last year’s robot (“P19”) was mainly laser cut acrylic which turns out to be quite brittle. So we’ll see if PLA can stand Nathan (who is an enthusiastic driver) at the helm any better than acrylic.
- The chassis uses four independent motor drivers so that we can use the big balloon tyres for the obstacle course and mecanum wheels for PiNoon. There might even be a third set of wheels that permit rapid and accurate skid-steer turns for the autonomous challenges.
- Actually the motor drivers are also experimental. At the moment P20 is equipped with (rather old fashioned) L298N drivers. But we are going to try some MosFET replacements soon which shouldn’t need such large heat sinks.
- We bought new motors. These are about 50% quicker than last year’s and they’re quieter too because there’s less gearbox.
- We’re also playing with a Teensy 4.0 to replace P19’s (much larger) Arduino Due peripheral controller. This provides a USB interface which the Pi will use to control the motors and to get measurements from three time-of-flight sensors. At the moment it is also interfacing to the radio receiver so that we can drive it around.
So the plan now is to drive it around a lot to see what breaks. And we need to print some hubs so that we can try out the mecanum wheels.
Finally it feels like we have some progress!
Mecanum wheels are tricky in Fusion360. Got there in the end though.
Version 2 of the barrel lifter has now been printed and tested. The (horribly vague) cable connection between the jaws and servo of the first attempt has been replaced by a bevel gear mounted on the servo output shaft. The drive also incorporates a 2:1 reduction so that a half turn of the servo output equates to a quarter turn on each jaw.
I’m delighted to say that it works a whole lot better than it’s predecessor.
The design for the EcoDisaster barrel lifter is complete and has been tested. We’re quite pleased with how it looks, but very unhappy at how it works.
The drive from the servo to the jaws (which is via fishing line) is way too vague. As a result the barrel slips out at the slightest provocation.
There’s going to have to be a plan B.
Don’t you just love Fusion 360!
Still Dad continues with the design. As you can see the barrel grab has been worked on. It uses two micro servos, one to open and close the jaws and the other to lift the barrel (by about 10mm). We’d love to cut the jaws from aluminium (because they’d look amazing), but I guess we’ll make do with 3D printed.
We’ve added a couple of sideways facing time of flight (ToF) sensors to help with the maze. We only used a front mounted ToF last year because we could correct any turn errors by targeting the alien faces with the camera, but camera feedback looks less viable with the new maze game. Dad’s a little nervous about this; last year the ToF caused a world of problems until he dropped an arduino between it and the RPi. He never really got to the bottom of why it was unreliable, but we do at least have a work-around if we need it.
We’ve also got a rather natty camera mount. We want to be able to mount the camera high above the chassis for Eco-Disaster and Minesweeper but right on the deck for all the other games. So we’ve 3D printed a camera mount that can be unclipped, then clipped back together with an extension piece inserted. This took three versions to get right; it’s not as easy as it sounds!
Oh, and yes, we’ve managed to loose the extra length in the design that was troubling us last week. Happy days!
You may recall (from our last blog) that our first objective is to make PiDrogen smaller. To that end Dad has been busy with Fusion360 designing P20; here’s a screen capture…
The good news is that the design is well under way and it is about 20mm narrower than P19.
P19 was a mixture of 3D printed parts and laser cut acrylic, but since we now have a 3D printer, we thought we’d try 3D printing the whole thing and the design takes that into account. This is a good opportunity to try this since there’s still time to start again if we have to. Once we have the chassis components printed we will install radio control then the boys can “test” the chassis. Hopefully it will last longer than the original P19 chassis which had a broken back axle within about 10 minutes of Nathan at the controls.
As I said, that’s the good news. But there’s also bad news; the new design is currently longer than P19 (by about 20mm). Oh well, back to the drawing board, sorry, CAD.