Robot Code Translator: Proof of Concept
The Robot Code Translator addresses a specific gap in distributed large-scale additive manufacturing: how to execute a proven toolpath at a facility other than the one it was developed at, without re-slicing, without sharing source geometry, and without potentially requiring the receiving facility to download software it doesn't own.
This post is a technical summary. A general overview is available here: More Than Layers | LinkedIn
Onboarding
Each facility is onboarded to the Translator platform once, which involves two things. First, a template is produced from one of the facility's proven programs. The parameters to be translated (XYZ coordinates, orientation vectors, move types, speed values, IO commands) are identified and stripped, replaced with placeholder markers. What remains in the template is the facility's fixed code: start-up preamble, safety routines, anything that doesn't change between prints. Second, a facility profile is created, capturing the key parameters that were stripped from the template which define that facility's configuration: linear move syntax, build plate dimensions, work object definitions, extruder on/off commands, and any structural requirements such as file splitting thresholds. If these aren't present in the code, there is the option to add these manually.
Translation
When a file is translated, the source robot program is parsed and the translatable parameters are extracted. The XYZ coordinates are transformed from the source facility's coordinate frame to the target facility's, accounting for differences in work object definition and build plate geometry. The transformed values are then populated into the target facility's template, alongside any facility-specific requirements captured in the profile.
Output
The output is a complete, ready-to-run robot program in the target facility's native format. A visualisation presents a side-by-side comparison of the source and target setups, allowing a basic sanity check before download. No CAD data is present at any stage of this pipeline. The source facility's code is parsed only for values defined in the facility profile, and nothing else is passed through. The target facility receives only their own program format, populated with the translated motion data.