Multi-Arm Robotic Task Sequence Execution

Robotics/Software Engineering Intern
Mission Control | Ottawa, ON

Skills TypeScript, C/C++

Task
Upgrade the existing architecture which can only manipulate one robotic arm at a time, to one that can simultaneously execute sequences on both arms.

What I did:

  • Designed and implemented a robotic control node featuring a state machine to facilitate simultaneous task sequences, efficiently parsing and distributing commands to individual robotic arms.
  • Developed a sequence schema to accommodate sequences for both robotic arms within a single entry.
  • Verified arm states prior to command transmission, ensuring synchronized multi-arm operations that simulate satellite proximity scenarios (ie. space debris removal, in-orbit servicing, etc.).
  • Developed trajectories for both arms that were representative of three in-orbit servicing missions; active debris removal, in-orbit repair & maintenance, and hazard detection using a visualization tool called RoboDK.
  • Generated sequences for each arm to follow that trajectory, enabling the ZED camera on the UR10e to collect images and ground truth labels of the satellite model.

Result
This enabled hardware-in-the-loop simulations of a satellite pose-estimation model for in-orbit servicing missions in partnership with the Canadian Space Agency.