All projects

Analytical Robotics · 2020

Autonomous robot prototypes

Two mobile robot prototypes I worked on at Analytical Robotics, across autonomy software, electronics, and practical hardware changes.

A test with the robot prototypes.

Project overviewWhat I worked on

At Analytical Robotics, I helped develop working prototypes for a multi-robot system. The work covered the full software stack for autonomy—localisation, perception, planning, and control—alongside the electronics and mechanical iteration needed to make those systems useful on real hardware.

The robots brought together encoders, sensors, power systems, motor drivers, mechanical parts, and communications. Much of the work was getting those pieces to behave reliably together.

VersionsTwo generations of the robot

First version

The first platform proved the basic architecture. Stepper motors, time-of-flight sensors, and Decawave UWB boards provided the foundations for movement, proximity sensing, and localisation. Its open frame kept every system reachable while the design was still changing.

Second version

The second generation moved to a larger, purpose-cut aluminium frame and four 250W DC motors. It offered more space, power, and robustness—but also made cable routing, serviceability, component placement, and weight much more consequential.

The first robot prototype complete, with its open frame and exposed electronics
The first version, complete and driveable.
Black aluminium frame for the second robot prototype during assembly
The second version during frame assembly.
The first and second robot prototypes side by side on the floor
First and second versions side by side.

ElectronicsHardware and software integration

I used breadboards while individual components were still being tested. As the design settled, the wiring moved toward clearer groups, stronger connections, and components positioned so they could still be reached and replaced.

The system brought together motor drivers, an RS-485 interface for AMT shaft encoders, a four-channel DAC, a Teensy 4.1, and an NVIDIA Jetson Nano. That mix made the robot a useful test bed for both low-level control and higher-level autonomy.

Breadboards, controller boards, and an NVIDIA Jetson Nano wired together during development
The breadboard stage, with the Jetson Nano and controller boards.
Robot prototype electronics, motor drivers, controller boards, and colour-coded wiring
Electronics being fitted to the second version.
  • Leaving the electronics accessible made early changes much easier.
  • Labelling and grouping the wiring saved time when something failed.
  • A mechanical change often needed a matching change in software or electronics.

TestingWorking with several robots

Testing several robots on the same task introduced another set of problems: relative position, timing, repeatability, collision avoidance, load handling, and recovery when one unit behaved differently from the rest.

Four autonomous robots positioned around a wooden pallet during a multi-robot test
Four robots positioned around a pallet during a test.
Three autonomous robot prototypes with exposed electronics and black aluminium frames
Three prototypes during development, with the electronics left exposed.

NotesWhat I took from the project

These were development platforms rather than finished products. They gave the team something concrete to test, change, and use in early customer conversations.

My main lesson was practical: tidy structure and accessible hardware made each test, repair, and design change quicker.