I started this project about 2 years ago, after visiting a Maker Faire in Hannover Germany. I saw the NAO robot there, and after doing some research and thinking, realized I could try building a home brew version using a Raspberry Pi. At the time I was working as a full time language teacher here in Germany and wanted a computer test bed to work on language acquisition by computers. After some research and thinking I decided on attempting to build a general purpose robot with a cluster of raspberry pi computers to process all the various tasks. The first version I attempted was based on the MPICH and MPJ interfaces which were not useful for my ideas. it consisted of a head with two axes of movement, and some basic experiments with the camera system and a skeleton operating program. I was also working a research project for the university of Leicester at the time and decided to rework the robot, first by adding a body frame, and second by building my own message passing interface and running asynchronous programs on multiple pis that could adapt to what ever task was required. I used a 1950s Meccano set to build the head and the body; I got it on ebay.uk for about 140 Euros. Meccano is the original English version of the erector set that was popular in America back in the 50s and 60s. Meccano sets are ideally suited as a basis for a beginner home brew robotics project. There are lots of after market dealers that sell all the parts you need for building anything you need, and for about 150 Euros you can buy a big starter set that should def allow you to build something useful and play around with the parts. Since all the parts are drilled, it makes it easy to devise mounting systems for circuit boards, and other devices, and you can build a rigid, relatively light weight structure of your own design for a reasonable price.
I started by building a head, with two axes of movement, allowing the cameras to swivel up and down and left and right. I didn’t really use any formal plans, just some back of the napkin sketches: I knew I needed framework to hang the cameras and microphones on that swiveled. Eventually I hope to expand to having arms and a system of movement for basic mobility, but some kind of device to carry cameras, distance sensors, microphones and speakers is essential in any such project. It took about 3 days to come up with a suitable design that could carry one or two raspberry pis, two servos and the cameras. Later I decided to add an Arduino to control the servos and simply send short commands from one of the pi’s to the Arduino. I started developing the software, the old version of which you can find at my github site, based on a test cluster of 3 raspberry pis.
In the next part ill talk about how developing the software for the first version led to the new version.