Design
CAD & 3D modelling
3D modelling, assemblies and production drawings in SolidWorks, from class projects through medical robotics.
- project UV Disinfection Robot
- project T-Based Precision Lathe
- project Lathe Spindle
- project Scoot Case
- project GRAC — Compliant Robotic Leg
- project Mystery Manor Reveal Effect
- project MEG-Compatible Keyboard
- project Disassembly Matrices from CAD Meshes
- research Multi-Track Elevator System for E-Commerce Fulfillment Centers
- job Senior Mechanical Design Engineer/Senior Controls Software Engineer
- job Research and Development Engineering Contingent
- job Functionality Design Intern
Machine & mechanism design
Designing the mechanisms that make a machine work: linkages, drives, bearings, couplings and exact-constraint interfaces.
- project Scoot Case
- project Mystery Manor Reveal Effect
- project Lathe Spindle
- project T-Based Precision Lathe
- research Multi-Track Elevator System for E-Commerce Fulfillment Centers
GD&T & tolerancing
Turning an error budget into drawings a machinist can hold: fits, tolerance stacks and geometric tolerancing.
Design for manufacture
Designing parts around how they will actually be made — including parts I then machined myself.
User-centred design & concept development
Shaping concepts around the people who use them: sketch models, concept reviews and user studies.
Analysis
Error budgeting & precision engineering
Apportioning a machine's allowable error across its subsystems, then checking it with homogeneous transformation matrices (HTMs) and measurement.
- project T-Based Precision Lathe
- project Lathe Spindle
- project Desktop CNC Router Assessment
- also2.77 weekly write-ups
Structural analysis & FEA
Stiffness, deflection, fatigue and finite-element analysis of load-bearing structures under the loads they will really see.
- project Scoot Case
- project Desktop CNC Router Assessment
- project Lathe Spindle
- project T-Based Precision Lathe
- job Senior Mechanical Design Engineer/Senior Controls Software Engineer
Dynamics, simulation & optimization
Dynamic models, simulation and optimization, from legged robots to optimal racing lines.
Build
Fabrication & prototyping
Building real hardware: prototyping, frame construction and assembly.
- project Scoot Case
- project UV Disinfection Robot
- project Slalom Course Robot
- project MEG-Compatible Keyboard
- research Multi-Track Elevator System for E-Commerce Fulfillment Centers
- research Precision Assembly of Heavy Objects Suspended from a Crane
- job Senior Mechanical Design Engineer/Senior Controls Software Engineer
Machining — manual & CNC
Manual and CNC machining of my own designs, held to the tolerances I set for them.
- project T-Based Precision Lathe
- project Lathe Spindle
- project Scoot Case
- project Desktop CNC Router Assessment
- also2.77 weekly write-ups
3D printing & additive manufacturing
Additive manufacturing for prototypes and test hardware: Stratasys J35 Pro (PolyJet), Formlabs (SLA) and Bambu Lab (FDM) printers at Medtronic, and Markforged composite printing in my PhD research.
Electromechanical integration
Integrating motors, actuators, drives and their controllers into working machines.
- project DrumBot
- project UV Disinfection Robot
- project Mystery Manor Reveal Effect
- project Scoot Case
- project Slalom Course Robot
- project Blizzard Rescue
- research Multi-Track Elevator System for E-Commerce Fulfillment Centers
- research Precision Assembly of Heavy Objects Suspended from a Crane
Electronics & soldering
Hand-soldered electronics and protoboard builds, on nearly all of my school robotics projects.
Controls & software
Control design
Designing controllers: impedance and admittance control, motor control and system identification.
Embedded & microcontrollers
Microcontroller interfacing and real-time I/O with Arduino and BeagleBone.
- project DrumBot
- project UV Disinfection Robot
- project MEG-Compatible Keyboard
- research Precision Assembly of Heavy Objects Suspended from a Crane
Robotics & sensing
Robotics
Robots across domains: mobile, legged, cable-driven, collaborative and surgical.
- project RAWHIDE — Robotic Assisted Wire Harness Installation
- project GRAC — Compliant Robotic Leg
- project DrumBot
- project Blizzard Rescue
- project UV Disinfection Robot
- project Equilibrium-Point Robot Arm
- research Precision Assembly of Heavy Objects Suspended from a Crane
- job Senior Mechanical Design Engineer/Senior Controls Software Engineer
- job Visiting Engineer
Sensors & machine vision
Integrating sensors and machine vision: Kinect, RealSense, OpenCV and image processing.
- project DrumBot
- project UV Disinfection Robot
- project Blizzard Rescue
- research F1 Track Curvature Extraction for Minimum-Lap-Time Optimization
- research Precision Assembly of Heavy Objects Suspended from a Crane
Test & quality
Test, verification & metrology
Designing the experiments and measurements that show what a design actually does.
Failure analysis & root cause
Tracing field and test failures back to a root cause, with the testing and reporting to back it up.
Medical devices
Medical device design & IEC 60601
Medical device design under IEC 60601 and FDA-style design controls.
Surgical robotics
Mechanical and controls engineering on Medtronic's Hugo™ robotic-assisted surgery system.
Process & communication
Requirements & functional requirements
Writing functional requirements from what a machine has to do, and tracing design decisions back to them.
- project UV Disinfection Robot
- project Lathe Spindle
- project Desktop CNC Router Assessment
- project Scoot Case
- project MEG-Compatible Keyboard
- job Senior Mechanical Design Engineer/Senior Controls Software Engineer
Agile / SAFe product ownership
Scaled Agile (SAFe) product ownership: prioritising and running a team's backlog.
Technical writing & publications
Peer-reviewed papers, theses and technical write-ups that explain the engineering behind a result.
Stack
Software & languages
SolidWorks
The CAD package behind almost every part I have designed.
- project UV Disinfection Robot
- project Lathe Spindle
- project T-Based Precision Lathe
- research Multi-Track Elevator System for E-Commerce Fulfillment Centers
- job Senior Mechanical Design Engineer/Senior Controls Software Engineer
- job Research and Development Engineering Contingent
- job Functionality Design Intern
MATLAB
Modelling, analysis, simulation and optimization.
- project Lathe Spindle
- project GRAC — Compliant Robotic Leg
- project Blizzard Rescue
- project Disassembly Matrices from CAD Meshes
- research Precision Assembly of Heavy Objects Suspended from a Crane
- research F1 Track Curvature Extraction for Minimum-Lap-Time Optimization
- job Mechanical Engineering Intern
Simulink
Control architecture and plant models for surgical robotics.
Python
Robot control, data handling and analysis.
ROS
Robot Operating System, for robot software integration.
Robot Raconteur
Middleware connecting the RAWHIDE robot software.
OpenCV
Computer vision library used for on-robot image processing.
ArUco fiducial tags
Fiducial tags tracked with OpenCV's ArUco module for peg position and orientation on the 2D rig.
AprilTag fiducial tags
AprilTag (tag36h11) fiducial tags tracked with a calibrated camera for peg position and orientation on the 3D WinchBot.
GPOPS-II
Optimal-control solver used for minimum-lap-time trajectories.
Hardware & electronics
Arduino
Microcontroller boards for sensing and real-time I/O.
ODrive
Brushless motor controllers for the three-winch prototype.
Dynamixel
Smart servo actuators used for arms and carriages.
80/20 aluminium extrusion
Modular aluminium framing for quick, stiff structures.
- project UV Disinfection Robot
- project Slalom Course Robot
Drives & mechanisms
Mecanum drive
Omnidirectional wheels that let a base translate sideways.
- project UV Disinfection Robot
Stepper drive
Stepper-driven motion for a repeatable stage effect.
- project Mystery Manor Reveal Effect
Series elastic actuation
A spring in series with the actuator, for compliant legged motion.
- project GRAC — Compliant Robotic Leg
Cable-driven systems
Manipulating a payload through cables that go slack under compression.
Rack and pinion
Tooth-driven linear motion across a rail network.
Kinematic coupling
Exact-constraint interfaces that repeat to microns.
Elastic averaging
Many compliant contacts averaging out individual errors.
Methods & domains
Ant Colony Optimization
Metaheuristic search for good disassembly sequences.
Computational geometry
Working directly on CAD meshes to reason about parts.
Collision detection
Testing whether a part can be removed without hitting others.
Assembly planning
Deriving the order in which a product can be taken apart or built.
Spline fitting
Fitting smooth curves to extract track curvature from an image.
Teaching by demonstration
A robot learning a task from a person performing it.
Equilibrium-point theory
A model of how the nervous system may command limb posture.
- project Equilibrium-Point Robot Arm
Neuromechanics
How neural control and limb mechanics combine to produce movement.
- project Equilibrium-Point Robot Arm
Legged locomotion
Gait and ground-contact dynamics for a robotic leg.
- project GRAC — Compliant Robotic Leg
Radar systems
Radar tracking and trajectory work at Lincoln Laboratory.
Decision matrices
Scoring concepts against weighted criteria to choose one.
- project Slalom Course Robot
Standards & products
IEC 60601
The safety standard for medical electrical equipment.
Hugo RAS
Medtronic's robotic-assisted surgery system.