You may recall me writing, way back in early January, that I was building an RQ-5 Paper Robot from a kit that was given to me for Christmas, but that I had run into a roadblock. To save you reading the earlier post, the issue turned out to be that there are two versions of the RQ-5 kit; one is for when you only want the paper robot itself and don’t intend to add the electronics and motor, and the other has extra paper parts intended to hold the motor in place. No prizes for guessing that I was accidentally sent the “paper only” version.
I had to wait a few weeks for the extra paper parts to be sent, and by then, as some of you know, I was in hospital with a serious infection, and as I write now in late March I’m only just getting over that, which has slowed me down quite a lot.
I actually finished building the robot a couple of weeks ago, but the problems didn’t end there.
The robot features an infrared sensor that can detect movement (and remote controls!) and a light sensor. What it’s supposed to do is, when it detects movement it moves its head from side to side, and when the light sensor is covered it plays a little tune. Well, guess what? This one did nothing like that. Every 15 seconds it would move its head from side to side, and that was it. No response to movement, and no response to light or dark.
I checked and re-checked all the connections, and they were definitely correct. (I used to build electronic kits, the type where you have to actually solder things, so this plug-together kit wasn’t exactly a challenge).
I contacted the dealer and also the manufacturer (Innovati in Taiwan). A few hours later I got a response from Innovati with a link to the source code (programming instructions) the robot uses. I should mention here, I’ve been programming computers since 1980 and did it as a living for over a decade, so I speak computer code about as fluently as I speak English (which is to say, there are some days where people have no idea what I’m saying – but I digress!)
There was such a difference between what the robot was actually doing, and what it should be doing based on the source code that there was only one possible explanation – someone had reprogrammed it before I bought it. Exactly when this happened, we’ll never know. When it was shipped to me it was sealed, so I don’t think it was the dealer. Anyway, it’s not important.
I got in touch with the dealer and explained all of this and they sold me an “EV-Writer” at a terrific discount and sent it overnight. This board plugs in via USB and lets me write and upload new software to the robot. Once I received it, I tried to copy the source code from the PDF file Innovati had sent me, but because of the formatting of the PDF file, it simply wouldn’t work, so I ended up having to type it in by hand! Talk about feeling old, I haven’t typed code in from a listing since the mid 1980’s!
Finally, with the correct code entered and transferred into the robot, it immediately started doing what it was supposed to do! I was very happy indeed!
However, the story doesn’t end there. Because I’m an experienced programmer and a sci-fi geek, I started having all sorts of ideas about ways to modify its behaviour, and what I show you today is about the fifth iteration of me messing around.
When it detects movement (or a remote control), it moves its head to one side (which side is determined randomly) and plays a bit of the Doctor Who theme while flashing its eyes in time. Why that theme? Because it can be triggered by a remote control, which in my imagination is a sonic screwdriver … OK, sure, it’s thin, but go with me on this, my other idea is better.
The light sensor is triggered when it’s covered – that is, when it goes dark. Hopefully everyone – not just fellow geeks – will get the joke of which tune it plays when that happens – but to find out what it is, you’ll have to watch the following video I made showing the construction process and the robot finally working!
Looking back, this has been both frustrating and fun. Putting the paper parts together at times required 20 fingers and four hands, and sometimes it wasn’t clear whether a fold went towards the front or the back of the piece, but since there’s only two options it’s not a big deal if you get it wrong the first time. All tabs are numbered (both the tab and the socket they fit into), so it’s easy to assemble in that sense. The instructions aren’t linear, rather they follow an almost board-game-like path around the paper, so make sure you remember what step number you’re on or you’ll get hopelessly lost.
Once up and running it’s fun, but I suspect most people would get bored with it pretty quickly. If you’re not afraid of programming (the language it uses is very similar to BASIC), you’ll want an EV-Writer so you can create your own code for it (the IDE – that is, the software in which you write the code and upload it to the robot – only runs on Windows).
The one issue I can see coming up after a short while will be, if you want to reprogram it often, every time you pull the tabs apart to get to the controller board, they get a little looser, and eventually I don’t think the paper parts of its head will stay together. However, because there really are only two inputs to play with (IR sensor and light sensor) and two outputs (two eye LEDs and a speaker), I suspect that you might have moved on to other projects by then anyway, or perhaps taken the innards out and built them into another project.
Overall, I’m really glad to have received this and have no doubt it will be the gateway drug that gets me into Arduino (*ahem*, I actually got one yesterday!) and Raspberry Pi.
Finally, I have to say many thanks to Michael at RobotEShop.com who put a lot more effort into helping me through all the glitches with this than the kit’s price tag really justifies!