One of the things that spurred my current interest in electronics was a resurgence of my fascination with robots. And so, here we go with another project – a robot base vehicle that I can use for experimenting with sensors and algorithms.
(Technically, this is not a new project – it’s a new start to a years-old project, but anyhoo…)
First, a little background. Back in the early/mid-1980s I was a member of an amateur robotics group working on a project to create a domestic robot. Back then we were coding on BBC Micros and, without the benefit of easy radio technologies such as Bluetooth and wifi, all experiments involved tethered devices. I also teamed up with a friend, Doug, to build a small, wheeled robot – along the lines of the turtles that were so popular then – that was so hacked together we called it ‘Kludge’.
With memories long faded, all that remains of Kludge is one rather ropey Polaroid. It reminds me that Doug had the excellent idea of using torsion box units made of balsa for the chassis. It also appears that the motors were switched using relays, so presumably they were either on or off. The lens on the front (an expensive photographer’s loupe, which I still have) focused light on to a single photocell. There’s also a microswitch on the front for collision detection (collision avoidance wasn’t really on the cards.)
Then other stuff – life, mostly – happened and the robotics hobby fell away, at least for me. The amateur group went on to become a commercial robotics company, but that’s another story.
A few years ago I found myself with a hankering to get back into this stuff, since when I have built a few small robots – mainly to learn about the wonderful range of sensors and microcontrollers that are available now. Honestly, today’s kids are spoiled. The most ambitious machine I built, called Farfel, was reasonably successful in its own terms, but it had a design flaw.
While Farfel sported various sensors (sonar and infra-red) to help it avoid obstacles, it still had a tendency to get snarled up. And the reason was simple – sticky-out wheels.
The main body of Farfel was a sheet of 4mm thick, clear acrylic. This material is rigid and easy to work with. The shape was vaguely circular – but flattened at the sides where the wheels went and elongated slightly to the rear to provide a platform for the batteries. (Sorry, but there are no known photos of Farfel.) This shape meant the centre of gravity was well behind the two wheels. A castering tailwheel supported the back end.
The front of Farfel was curved so that, if it did hit an obstacle, it would tend to nudge itself sideways and kind of slide around the problem – until, that is, the wheel on that side hit the obstacle, at which point it was game over.
It was my intention to rebuild Farfel with the wheels inset into the side of the body. But then I had trouble finding the time and blah, blah, blah.
Then I watched a video by Andreas Spiess who runs an excellent YouTube channel. The video introduced a community-supported robotics project using a ‘tank’ as a base vehicle. ‘That’s for me,’ I thought.
The version of the T300 tank that Andreas bought from Banggood comes with an ESP8266 microcontroller. I didn’t want to use an ESP8266 because I don’t need wifi capability for the motor control. My robot is going to have a multi-processor architecture (more on that soon).
A search for ‘T300 tank’ on Banggood came up with an alternative – the same chassis and motors plus an additional top plate. (The T300 in various guises is also available from the usual suspects, including Aliexpress.) But I’m not going to be using it in that configuration. Instead, I realised I could mount the extra plate underneath the main top plate, slightly offset to the rear. This would be a handy place to put the batteries, creating a low centre of gravity in the process. It also has room for some power management/distribution boards – so all the power stuff is neatly tucked out of the way.
Some people might object that this also reduces the ground clearance of the robot, which is true but unimportant to me for a couple of reasons. First, the reduction is only 12mm, because the motors are down there already. And second, I intend this as an indoor robot, so it’s not going to be clambering over rough ground. Besides, the underslung plate actually provides protection for the motors and their wires.
The kit was easy and enjoyable to put together. Adjusting the track lengths was a tad fiddly – at least, for my arthritic hands – but I think the whole thing didn’t take more than 30 minutes.
I decided to have two separate battery packs (a concept I used on Farfel, too). One is for the motors and the other for the electronics. There’s less likelihood of electronic glitches if, for example, the robot crashes into something and the motors suddenly pull large amounts of power because they’re stalled.
I went for 18650 li-ion cells (with protection circuits) – three for the motors and two for the logic stuff. This provides a nominal 11.1V (12.6V at full charge) for the motors, which are intended to run at 9V, and a nominal 7.2V (8.4V at full charge) for the 5V electronics. Obviously, some regulation was needed.
For the electronics I happened to have a handy switching DC-DC converter from DF Robot. I’ve used these a lot because they’re very adaptable. There’s a switch that allows you to choose between 5V or variable output.
For the motor side, I hacked together a board using a variable switching regulator that I had lying around. These things aren’t cheap and, being 25W, I am a little concerned about its ability to handle the load if the motors get badly stalled. I measured the power draw on the motors by running them from my bench supply. At 9V, and with me grabbing the tracks to prevent any movement, the motor pulled a little under 3A. That, by my reckoning, is 27W – and that’s just one motor. Yikes! I’m going to be doing my best to prevent this situation ever happening, but nonetheless I have to regard this power board as just a stop-gap, to get the project going. I need a more robust solution. There’s a 5A fuse in the circuit, so hopefully that will blow before the regulator gets damaged.
What’s in a name
The next step, obviously, was to name the robot. I settled on Sheldon, the source of which shouldn’t need explaining but the reason for which is obscure, even to me.
Next step – a motor controller board. That’ll be in another post.