Tag Archive: robot

2019
02/22

Category:
Teaching

TAG:

COMMENTS:
Comments Closed

Occam’s robot

So there I was lamenting the fact that I never quite got my little yellow robot properly sorted, owing in large part to the amount of time that my role as school was taking up. But then it occurred to me that I was still worrying about the wrong things – why try and force myself to keep it working with an IR receiver, on an old PiZero, when a new PiZeroW running Martin O’Hanlon’s excellent BlueDot library would achieve more than enough for what I wanted to achieve?

So that’s what I intend to do. Unsolder and then re-solder the board onto a new PiZeroW (which I can then also more easily connect to, for debugging) and use the BlueDot to control the robot.

Watch this space… Hopefully.

2016
06/26

Category:
Computing

TAG:

COMMENTS:
Comments Closed

Powering the #PiZero

Putting the robot together, it occurred to me to wonder how to power the motors and the Pi. The original robot ran on 2xAAA batteries – chances of a Raspberry Pi Zero running properly off 3v, plus then powering a motor block? Absolutely, well, zero!

So, I managed to source some AAA Lithium batteries, like these. Each is supposed to provide 3.7v, so that should give me more than enough – and, happily, the Pololu motor board also then supports their voltage regulator which means that I can provide power from the batteries to the motor board and have that power the Pi.

Next problem turned out to be that fact that the original motors in the Tamiya 70097 would very quickly burn out at more than 3v. Thankfully it turns out that Pololu (again!) have clip-in replacements that are rated up to 7v (although I think the preference is 6v), which I very quickly sourced from Proto-Pic and so that’s that quandary settled.

On with the build…

2016
06/26

Category:
Computing

TAG:

COMMENTS:
Comments Closed

The first cut is the… scariest

A status update on my little yellow robot is long overdue, sorry for the huge delay (yeah, like anyone cares, Ian…)

I am now delighted to be at the point where I can almost put it all together. I have working code (which should be in my GitHub repository, if anybody wants to take a look). This has been a big step for me as I ended up not only experimenting with GPIO Zero, but actually submitting a pull request, as the motor board I picked up (the Pololu one) had a different motor control approach than the usual, default ones supported in the current library.

The final hurdle for me, then, was the actual “maker” side things. The part where I actually have to start cutting the robot to make the new innards fit. It was scary. I dithered, procrastinated and generally put this part off… until something else came up that I needed to escape from.

So now, after diligent use of a Dremel I am all-but ready for the final assembly.

There were a few decisions to make on how, why and where to cut. First, can the new motor block be squeezed into place? Answer, just… if I first:

  • trim off the screw pillar that holds the original motor block in place
  • shave off the interior buttressing on the two corner screw pillars
  • whittle away a few unnecessary bumps from the outer faces of the motor block, and
  • cut a small chunk out of the new motor mounting brackets so the entire assembly slots neatly into place:

The last little quandary was how I going to fasten the tracks back on, now that the motor block takes up so much space? Obviously I needed to trim just enough off the mounting points that they can still clip into place and be screwed down, but so that they don’t foul on the new motor block. Yup, we’re getting there.

What about the IR sensor? A quick Google tells me that I shouldn’t expect any success if I mount it inside the device, so where to put the sensor? My initial gut reaction was to put it at the back, so it was facing you when you drive it… but then I realised that at some point you could pretty much bank on turning the robot around, so the sensor wouldn’t be facing you any more! Thus it came down to maintaining that all-important balance between how it looks, and what’s easiest.

There were two possible mounting sites, one at the rear, in a fin, the other at the front in a cluster of fake headlights. In the end, I decided that the front was the best choice for both practical and aesthetic reasons, so another hole was duly cut to allow the sensor to poke out above the light cluster with the wires available to feed down into the chassis.

The final result in this regard work out very well indeed – I’m very happy with where the sensor will sit and don’t think it will look too out of place.

The last little part of the challenge, at this stage, was to fix the little roller back in place – this sits on the underside of the chassis and ensure a smooth roll for the robot as the tractor treads don’t hold the whole thing off the floor. For this, I had to carve up the original motor housing as it served to not only encase the motor, but also pin the roller in place.

Now all that remains is to try and fit/solder the various parts together and… well… test it! I can’t wait.

2016
03/14

Category:
Computing

TAG:


COMMENTS:
Comments Closed

Robot retro-fit update

I’m excited to go to the Coding Evening in Peterborough event tomorrow, but before I go I wanted to try something out that I was struck by when I was using my old PS2 remote control with my Pi (ahead of getting the motor wired up).

Although I’ve managed to “see” the old helicopter remote control signals, I decided that it was time I heeded my own device (like I keep saying to my 12yo-maker, “start simple, then gradually add complexity”) and so put the helicopter remote side in favour of a known device like the old PlayStation 2 remote control. Which turns out to have been very sensible advice.

I spent some time finally getting my head into the lirc libraries, configuration and sample code. It all worked nicely, but I wasn’t totally satisfied as it didn’t track the key down/up events that make for a smooth motoring experience (as demoed so nicely by the new GPIO Zero library recipes).

But as I tested, I noticed that the cursor was actually moving around the IDLE console output window, and it struck me that perhaps the lirc input could be read by the Python evdev library that I’ve been playing with in school recently…

And this evening I found that indeed it can! It appears that once the lirc configuration is set, the evdev library sees it as another input and from there all is good; I can now track key up, key down (and, should I need them, key held) events which means a smooth control for the all important 4yo soak testing, to come later.

Now I can really look forward to tomorrow evening ?

2016
02/05

Category:
Computing

TAG:




COMMENTS:
Comments Closed

Robot retro-fit

RoboRover

I got a lovely friendly yellow robot (a WowWee RoboRover, as it turns out) as a leaving present from my last school. It’s lovely. But it only goes in one direction: two tractor treads, but only one motor. My 4-year-old loves playing with it, but I can’t help but feel that we could do more…

Over the Christmas break this year, I decided the time had come (particularly in light of the advent of the Raspberry Pi Zero) to upgrade the cute little critter. Tamiya 70097 Today, I finished phase 1 (it sounds better in my head if I pretend I have some kind of structured plan), and proved that the motor unit I’ve picked out will fit in the chassis of the Roborover. It’s a Tamiya 70097 geared twin motor unit, from a range of remote control vehicles (promising start…) and was, itself, rather fun to put together.

I’ve also bought an infra-red receiver, a TSOP38238, to hopefully make use of an old r/c helicopter handset, so that’s this weekend’s challenge; let’s call it phase 2 🙂

Phase 3 will be modifying the chassis to be be able to get the motor unit embedded and running. Ideally, it’ll allow me to use PWM to accurately control the robot speed and direction from the r/c handset stick.

Phase 4 will be re-fitting the body back on top (with modified eye LEDs – I’m hoping to get colour-changing ones in there that will be controlled by the spare stick on the r/c handset.

Phase 5 will be seeing (a) if my 4-year-old is still the same age(!), and (b) whether she likes it!

Wish me luck 🙂