Marshall Floyd, Developer in Salt Lake City, UT, United States
Marshall is available for hire
Hire Marshall

Marshall Floyd

Verified Expert  in Engineering

Robotics Developer

Location
Salt Lake City, UT, United States
Toptal Member Since
March 7, 2024

Marshall has over 10 years of experience in gait design, simulation, robotic design, and leading robotics projects. With a PhD in robotics, he's intimately familiar with robotics motion, including kinematics and forward and inverse system dynamics using fundamental equations and simulation software. Marshall is also confident in controls, software, mechanical, electrical, and mechatronic systems, always considering the big picture and implementing detailed groundwork to make solutions happen.

Portfolio

Sarcos Robotics
C++, Python, MATLAB, Simulink, Robotics, Helix, Jira, Git, GitLab, Mathematica...
Sarcos Robotics
MATLAB, Simulink, MATLAB Parallel Computing Toolbox...
Sarcos Robotics
MATLAB, Simulink, Octave, C, Robotics, Mathematica, Git, SOLIDWORKS...

Experience

Availability

Full-time

Preferred Environment

Windows, MATLAB, Mathematica, Git

The most amazing...

...analysis I've done was safety analysis for the Guardian XO exoskeleton, linking mechanical design, actuators, sensors, software, controls, and human behavior.

Work Experience

Principal Product Engineer

2022 - 2024
Sarcos Robotics
  • Led the technical development of the Guardian XO exoskeleton. I created a plan for data-driven and risk-based decision-making to guide the technical roadmap.
  • Directed OKRs for software, mechanical, electrical, controls, simulation, test, and safety teams, which included 15 to 25 team members assigned to exoskeleton development.
  • Collaborated with the product and program managers to ensure that technical solutions met product requirements, program schedule, and budget.
  • Performed safety analysis to achieve a full-body, fully-actuated exoskeleton. I also conducted system theoretic process analysis (STPA), guided development, and implemented mitigations to address the highest safety risks.
  • Developed and implemented an algorithm for autonomous baggage stacking to aid baggage handling robotics solutions. I performed algorithm development in C++, Python, and MATLAB.
Technologies: C++, Python, MATLAB, Simulink, Robotics, Helix, Jira, Git, GitLab, Mathematica, Visual Studio Code (VS Code), Optimization

Simulation and Analysis Team Lead and Senior Manager

2019 - 2022
Sarcos Robotics
  • Managed and grew a diverse team with controls, simulation, motion analysis, structural, thermal analysis, and biomechanics backgrounds. I supported simulation for mechanical, electrical, controls, and software teams across all projects.
  • Trained and guided the team in MATLAB, Simulink, Altair solutions, and AnyBody to perform kinematics, forward dynamics, inverse dynamics, and mixed hybrid dynamics for predicting actuator and structural requirements.
  • Designed tests and post-processed experimental data for incident analysis, model calibration, and model verification and validation.
  • Collaborated closely with the systems team to develop product and system requirements, determine their feasibility, translate them to engineering requirements, and verify and validate them.
  • Led the development of a process for applying motion capture and ideal motions to simulations for developing kinematic and dynamic requirements for exoskeletons and teleoperated and autonomous robot arms.
  • Implemented AnyBody for predicting muscle effort and correlating it to the measured electromyography and predicted or experimental exoskeleton performance.
  • Worked closely with biomechanics consultants and the safety team to create state-of-the-art simulations to predict and quantify human injury potential in the exoskeleton, championing solutions that increased safety.
Technologies: MATLAB, Simulink, MATLAB Parallel Computing Toolbox, Simulink Simscape Multibody, Altair Compose, Octave, SOLIDWORKS, SOLIDWORKS API, Altair Activate, AnyBody, Git, Subversion (SVN), GitLab, Bitbucket, Jira, Helix, C, Eclipse, Visual Studio Code (VS Code), VMware, VirtualBox, Ubuntu Linux, Windows, Motor Control, Kinematics, Inverse Kinematics, Inverse Dynamics, Hybrid Dynamics, Field-oriented Control, Mechatronics, Validation, Mathematica, Linux, Finite Elements, Optimization, Robot Controls, Robotics

Robotics Engineer

2016 - 2019
Sarcos Robotics
  • Developed actuator controls and optimal actuation algorithms for parallel active spring motor systems and solved problems to identify the fundamental physics-based causes of abnormal response characteristics.
  • Simulated joint exoskeleton kinematics and dynamics, including actuator dynamics and modeling.
  • Performed safety analysis of code dependencies and rewrote code to support new safety features.
  • Implemented the simultaneous localization and mapping library for the Guardian S mobile robot.
  • Mentored colleagues in exoskeleton gait identification, user assistance, and energy use optimization.
Technologies: MATLAB, Simulink, Octave, C, Robotics, Mathematica, Git, SOLIDWORKS, SOLIDWORKS API, Windows, Linux, VMware, Optimization, Field-oriented Control, Kinematics, Inverse Kinematics, Inverse Dynamics, Motor Control, Simultaneous Localization & Mapping (SLAM), Robot Controls, Ubuntu Linux, Eclipse, Mechatronics, Advanced Mechanics of Materials, Robot Operating System (ROS)

Experimental Robotics Lead

2014 - 2016
Kairos Autonomi
  • Participated as co-team in the DARPA Robotics Challenge with a hexapod robot. I developed all walking and manipulation behaviors and a new user interface from scratch, supervising two interns on the hardware team in modifying joint design.
  • Developed simulation and behaviors for several systems, including a hexapod robot, a robot that drives a vehicle from the driver's seat without modifying the vehicle, and multiple arms and manipulators.
  • Integrated hardware for hardware-in-the-loop and software-in-the-loop remote human operation of simulated robots and control of real robots from simulation software.
Technologies: MATLAB, V-REP, C#, Lua, Git, Bitbucket, Mathematica, Inverse Kinematics, Kinematics, Mechatronics, Robot Controls, Robotics

Research Associate

2013 - 2014
Institute for Human and Machine Cognition (IHMC)
  • Implemented recovery behaviors in Java for the Atlas humanoid during the DARPA Virtual Robotics Challenge (VRC). Recovery behaviors included standing up after a fall, rolling over, crawling, and situational awareness discovery. IHMC took 1st place.
  • Helped integrate the iRobot hand control C API with Java for the DARPA Robotics Challenge (DRC). IHMC took 2nd place and was the top US team.
  • Added a footstep planning algorithm in Java for the Atlas humanoid that enabled simultaneous translation and turning. I also added UI elements to give intuitive control of the new translation and turning capabilities.
Technologies: Java, C, Linux, Kinematics, Ubuntu Linux, Eclipse, Git, Robot Controls, Robotics, Robot Operating System (ROS)

Sarcos Guardian XO Exoskeleton

https://www.sarcos.com/products/guardian-xo-powered-exoskeleton/
The Guardian XO is a fully electric battery-powered full-body exoskeleton that a person can wear to help lift 200 pounds without feeling the weight.
I helped with motor controls, optimal control of energy engagement storage springs parallel to the actuators, firmware, field-oriented controls, high-level control algorithms, software and mechanical safety analysis, operator safety simulations, and full-robot safety analysis through STPA. I handled the root cause analysis for several unexpected behaviors and developed theories that modeled the issues.

This project led the simulation and analysis team to model all Sarcos' robots (not just the exoskeletons) to quantify specific characteristics and behaviors and help predict needed joint torque, speed and power requirements, and structural requirements for new robots.

Chiron Hexapod for the DARPA Robotics Challenge

Chiron is a hexapod robot with 18 joints for walking over rubble and manipulating things such as a valve. I was the co-team lead in the development of Chiron for the DARPA Robotics Challenge (DRC). I developed all the walking and manipulation behaviors and a new user interface. The robot simulations and user interface were built in the V-REP simulator with additional Lua scripts. In addition, I supervised the hardware team in modifying the joint design, including cycloidal gear.

Kairos Uomo

https://www.kairosautonomi.com/pronto4-uomo.php
Kairos Uomo is a robot that can teleoperate or autonomously drive a vehicle by placing it in the driver's seat without any vehicle modifications. Kairos Uomo can drive the vehicle using its gas and brake pedals, steering wheel, and gear shift manipulator, and it can be controlled autonomously or remotely via a handheld controller.

I simulated Kairos Uomo driving a vehicle in V-REP and developed controls for an arm mounted outside the vehicle. I connected the physical remote control to drive the virtual Uomo, with real-time physics simulation of the vehicle and contact dynamics.

DARPA Robotics Challenge (DRC) and Virtual Robotics Challenge (VRC) with IHMC

https://robots.ihmc.us/drc/vrc-images
IHMC was the top US team in the DRC and VRC, taking first place in the VRC and second place in the DRC trials and finals. IHMC controlled the humanoid Atlas robot to perform various tasks such as walking across rough terrain, opening doors, driving a vehicle, and manipulating hoses and valves.

For the VRC, I was on the special operations team developing behaviors to get the virtual Atlas robot to stand back up if it fell. I developed behaviors for sitting up, looking around, rolling over, crawling, and standing up from supine and prone poses. The ability to stand up from a fall was used multiple times during the VRC competition. This helped us score a few more points, besides helping calm the operator's nerves, knowing falling wasn't the end—which probably prevented some falls as well.

For the DRC, I helped operate the physical Atlas robot and helped with controls for the iRobot hands. The hand controls required Java and C to interface with the hands. I also implemented a footstep planning code and UI changes to allow Atlas to walk in any direction, combining simultaneous turning and translation.

Languages

Simulink, Octave, C, C++, Python, C#, Lua, Java

Tools

Robot Controls, MATLAB, Simulink Simscape Multibody, Jira, Git, GitLab, MATLAB Parallel Computing Toolbox, Mathematica, Helix, SOLIDWORKS, Subversion (SVN), Bitbucket, VMware, VirtualBox, Wireshark, Atlassian, Gazebo Simulator, LabVIEW

Paradigms

System Dynamics

Platforms

Windows, Altair Activate, Arduino, AnyBody, Eclipse, Visual Studio Code (VS Code), Ubuntu Linux, Linux

Other

Robotics, Mechatronics, Simulink Simscape, Altair Compose, Motor Control, Kinematics, Inverse Kinematics, Inverse Dynamics, Hybrid Dynamics, System Identification, Robot Mobility and Manipulation, Optimization, STPA, Field-oriented Control, V-REP, Non-linear Controls, Optimal Controls, Motion Planning, Artificial Intelligence (AI), Machine Learning, Computer Vision, Advanced Mechanics of Materials, Finite Elements, Thermodynamics, Fluid Mechanics, PIC Firmware, Validation, Simultaneous Localization & Mapping (SLAM), Vicon, dSPACE, Interactive C, Robot Operating System (ROS)

Libraries/APIs

SOLIDWORKS API

2008 - 2017

PhD in Mechanical Engineering with a Robotics Track

University of Utah - Salt Lake City, UT, USA

2006 - 2008

Bachelor's Degree in Mechanical Engineering

University of Utah - Salt Lake City, UT, USA

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring