Welcome to my projects page. Here you will find all the projects I have undertaken relevant to my current research. Some of these projects were carried out a long time ago, but I have included them as they are relevant to my current interests, and they provide some interesting history.
R5 Robot - A low cost Arduino based robot platform
I started designing this platform in 2013. It has speech synthesis, rudimentary speech recognition (simple commands), an audio record/playback capability, a real time clock and a wifi interface. The robot has a head with two degrees of freedom. In addition there is closed loop odometry, infrared proximity sensors, an ultrasonic range finder and a passive IR (human) detector. The original concept was to design a small low cost robot that would roam autonomously, and be able to accept simple voice commands, access information via the internet and pursue both pre-defined, and user directed/prioritised goals. An 'intelligent pet' for £400, and no need to walk it or kennel it for vacations.
At the time of design, I wondered how much functionality would be required to give the illusion of 'intelligent' interaction with humans. This of course raises the question of the difference between the illusion of intelligence, and intelligence itself. See my blog for a discussion.
Instinct - A Reactive Planner
The Instinct Planner has been a significant development project in its own right, and in order to develop and test it I have also had to develop a virtual-world test harness. The test harness may be enhanced to provide a virtual environment for learning and experimentation with reactive planning tools such as Instinct.
An open loop control strategy and implementation for robotic legs
This was my final year project at the University of Bath, undertaken in 1984/5. Although it's now very old, I have included it because there is still some work being undertaken relating to statically stable walking, and this project provided all the underlying theory.
The goal was to drive a pair of robotic legs to achieve walking. The legs were driven by stepper motors. The project involved developing a mathematical theory of statically stable walking, i.e. walking whilst maintaining the centre of gravity of the robot over the foot currently in contact with the floor. The resulting equations are non linear and transcendental, and required me to generate software to calculate tables of sequential numerical position data. A micro-controller was then programmed to take this tabular positional data and drive the stepper motors via control pulses.
Just for good measure I also had to build a terminal emulator onto the mainframe in order to be able to use the assembly language compiler!