top of page

PROJECTS  

Below are some of the projects I have worked on, some as part of my degree course, and many for my own satisfaction. I have linked videos of the projects working, and included detailed reports for your information.

Taurus the Hexapod Scorpion

Taurus the Hexapod Scorpion

A hexapod scorpion, programmed in Python on a Raspberry Pi 3. It has tail mounted camera, multiple gait cycles, dynamic leg trajectories, roll, pitch and yaw control, a speaker, RGB eyes and was controlled over Bluetooth via a PS3 controller.

Variable Compliance Robotic Hand

Variable Compliance Robotic Hand

A 3D printed variable compliance robotic hand. Each finger was individually controlled with an arrangement of three motor driven tendons, which allowed for positional control of the metacarpal and proximal joints as well as control of the finger’s stiffness.

Strawberry Harvesting Robot

Strawberry Harvesting Robot

A robotic arm with a custom designed end effector to grip strawberries and cut the stems, it has a custom built stereo camera mounted on it. The OpenCV libraries were used for the machine vision to locate the strawberries and for path planning.

5 Axis 3D Printed Robot Arm

5 Axis 3D Printed Robot Arm

I modelled and 3D printed a 5-axis robot arm. It was actuated by servos and controlled using an Arduino Uno. I developed and coded all the control algorithms and kinematics. A second arm was also built with potentiometers in place of the servos so it could be used to puppeteer the first arm.

2.5W Laser Gun

2.5W Laser Gun

I modelled and 3D printed casing for a 2.5W laser module, battery and custom circuit to make a laser gun capable of burning and igniting things. It has 4 different firing modes and an LED to indicate the mode and battery level. The laser gun was controlled by an ATtiny85 microcontroller.

LED Cube With 3D Snake Game

LED Cube With 3D Snake Game

A 5x5x5 LED cube. It is controlled by the Arm Cortex-M4 STM32F407 Discovery development board and programmed in C. I developed various animations and a 3D version of the game Snake.

RGB Time Fountain

RGB Time Fountain

This is the RGB LED Time Fountain I designed and built. It uses RGB LEDs to strobe a stream of water drops to make them appear as if they are levitating. By strobing the different colours out of phase with each other some incredible effects can be created. It is controlled by an Arduino Uno microcontroller and communicates via Bluetooth with a mobile app to change the settings.

Laser Engraver (2500mW)

Laser Engraver (2500mW)

I built a EleksMaker ElekLaser-A3 Pro 2500mW laser engraver kit and have been experimenting with its capabilities. I also constructed a case for it with extractor fans, internal LED strip lighting and a laser safe viewing window.

Colour Tracking Tentacle

Colour Tracking Tentacle

This is a colour tracking robot tentacle. It is tendon driven and actuated via pulleys mounted on servos. Colour tracking is achieved by utilising the OpenCV libraries for machine vision.

My First Robot Arm

My First Robot Arm

This was the first proper robot I built. It was a 5 axis arm controlled with an Arduino Uno and servo driver board. I implemented inverse kinematics, joint and linear interpolation movements and manual control of the arm with a PS2 controller and also an IMU.

Time Frame

Time Frame

The Time Frame uses an electromagnet to vibrate an object, and a strobe light to make the object appear to be moving in slow motion due to the stroboscopic effect.

LED Audio Visualizer

LED Audio Visualizer

I used an Arduino Nano to read an audio signal and to control LED strip lights via a transistor. The LED strip lights in my desk had their brightness set proportional to the amplitude of an input audio signal. The maximum brightness was dynamically set corresponding to maximum amplitude of the current input signal.

Drake Robot (Walking/Line following)

Drake Robot (Walking/Line following)

The Drake robot required its gait parameters to be configured for bipedal walking and a line following algorithm implemented utilising its built in camera and OpenCV.

VHDL Buggy

VHDL Buggy

The project was to design a toy based on the Plymouth NanoBots using the on-board FPGA and program it in the Quartus design environment with VHDL and schematic design.

Nao Robot Home Assistant

Nao Robot Home Assistant

Using the Choregraphe suite we programmed the Nao robot using Python and flow diagram boxes, to perform various functions such as; answer basic questions, play word games, give the time, give weather reports, do basic calculations and set timers.

LED Matrix with Bluetooth

LED Matrix with Bluetooth

I made an 24x8 LED matrix that displays scrolling text which can be set via Bluetooth. The matrix is controlled by an Arduino Nano utilising shift registers. A 3D printed case contains all the components and a battery that is rechargeable via a micro USB.

Binary Clock Widget (Android)

Binary Clock Widget (Android)

A binary clock widget I developed for Android. It was programmed in Java in Android Studio. The widget reads the system time then converts the hours, minutes and seconds into binary strings to displays them. It updates every second.

Line Following Buggy

Line Following Buggy

A line following buggy using an STM32F4 Discovery board. It would follow a line using opto sensors that fedback to the STM board. Different algorithms were needed to search for and detect a line in a 30cm radius and then follow it.

Pizza Value Calculator App (Android)

Pizza Value Calculator App (Android)

I created an app to calculate the value of a pizza based on its price and size. It has a variety of sorting modes, currency options and units.

Custom Stereo Camera

Custom Stereo Camera

2 web cameras were held in parallel by a 3D printed mount to form a cheap stereo camera. This was then used for depth mapping and object detection on my masters project.

Magic Mirror

Magic Mirror

The Magic Mirror is a two way mirror with a LCD and webcam behind it. They are connected to a Raspberry Pi 2. It appears as a normal mirror while the display is black, however when something is displayed it will be visible. The Raspberry Pi was setup as a web server with a PHP/HTML page that would allow users to display stored images or text they enter.

Prusa i3 3D Printer

Prusa i3 3D Printer

This is the 3D printer kit I bought assembled. It has been an essential asset in the design of many of my projects.

Custom PCB

Custom PCB

For a university project I was required to design a PCB for use on a line following buggy. It was designed in the ISIS design suite and accommodated a variety of components.

Infinity Mirror

Infinity Mirror

The Infinity Mirror's LEDs are animated to fade in and out. This is controlled by a ATtiny85 microcontroller.

Laser Cut Halloween Mask

Laser Cut Halloween Mask

A Halloween mask I designed from scratch. Starting with a paper pattern which was then scanned and converted to vector graphics so that it could be laser cut out of leather. The LEDs are held in a custom 3D printed mount and they are powered via a USB power bank.

bottom of page