Amazon Web Services (AWS), MassRobotics
Adaptive reprogramming of industrial robots and toolpath validation
Running the HAL Robotics Framework in a serverless cloud infrastructure allowed this design validation application to run hundreds of simulations in parallel and ensure the manufacturability of different design options in minutes.
From automotive to surfboards through kitchen cabinetry and aerospace componentry, manufacturing companies are having to deal with increasing product variation in their pipelines. This could be because they’re starting to automate tasks which have been done manually until now or because they’re offering more customisation and specialisation to their customers. This variability in production is not accommodated by “traditional” automation techniques and that’s where adaptive reprogramming comes into play.
By generating toolpaths for robots based on data rather than manual programming, we can inherently handle variation. That data can come in the form of geometric CAD models, text in a database or anything else as long as the data’s consumer can process it properly and generate a toolpath from it.
Where Industry 4.0 has focused primarily on the connectivity of devices and data acquisition monitoring, error detection and predictive maintenance, this approach expands on that to enable new command and control paradigms leading to improved productivity, demand-based manufacturing and mass customisation. Whether it’s through a truly made-to-measure service or modular assemblies, this flexibility in automation is key to retaining economies of scale as we continue moving towards more human-centric, Industry 5.0 manufacturing, removing dull, dirty and dangerous jobs from humans and lowering the barrier to entry for robot use.
For all the benefits of adaptive robot reprogramming to be realised we still need to ensure that whatever process we run is feasible, safe and efficient. There are two different ways to handle this. Either we can manually set safe parameters, like the robot’s working area, speeds and tool selection, for all parts, or we can fine tune our process for each new part that comes through the pipeline. Simulation can validate variants without needing to use a real robot, but testing different parameters and configurations on a part-by-part basis is time consuming and, if done manually, defeats the purpose of adaptive programming.
This is where being able to run a full robotics programming and simulation stack in the cloud pays dividends.
By leveraging the compute power of the cloud to run high-performance simulations on digital twin snapshots, we can test different options in parallel and make informed, automated decisions about how a part should be processed. These decisions could be as broad as which robot cell can handle the part all the way down to the subtleties of toolpath generation strategy. For example, in a robot cell with a large and a small sander, we can determine whether, for a specific part, it is more efficient to use the larger sander wherever possible and change to the smaller one only for the details, or whether the cost of changing tools outweigh the benefits of covering larger areas with the larger tool.
We have developed a solution based on AWS services which creates a closed loop between designing parts and validating its efficient producibility in the cloud. This is demonstrated with a simplified polishing process for a car door.
The workflow begins with a designer making changes to the part they want to produce in a CAD software. Once they are happy with this version of their part, they commit these changes to a change tracking system along with a set of parameters required for the production of the part. In the demonstration these parameters include polishing force range, pattern options and the robot cells on which the part could be processed. In a real-world scenario, the design data and production parameters could come from two different people or the design data could even come directly from a customer with little to no knowledge of the production process.
Once the design and parameters have been pushed, to an Amazon S3 bucket and DynamoDB respectively, the client calls an API to start the validation of the process. This triggers an AWS Step Function which creates a batch of parameter configurations which need to be tested. In turn, this launches a Fargate task for each configuration which pulls a Container Image loaded with the HAL Robotics Framework and some custom code to generate a toolpath from the incoming parameters and geometric part data.
This Image generates a toolpath for a specific robot cell based on its digital twin and solves the toolpath to ensure feasibility, identify any potential issues and calculate a number of metrics, e.g. duration or energy usage, which can be used to score different valid options. These metrics are then pushed to the DynamoDB alongside the parameters used, any errors, and a simulation of the process in the digital twin.
The user can log in to a portal to view their validation runs, drill into the metrics and download the simulation which can be viewed in an interactive 3D viewer on their computer.
Through this workflow the designer has gone from making design changes in their software of choice, all the way to ensuring the producibility of their new design and knowing how it can be optimally processed without ever needing to touch a line of robot code, manually tweak parameters or wait for any simulations to run.
The solution proposed here is a powerful tool to support design changes and examine their impact on production processes. It can improve productivity further, however, when combined with the rest of the HAL Robotics stack to create an end-to-end workflow from design to efficient, variable production. For example, a 3D printing company could allow users to upload their models to a website with a few user-accessible parameters which would trigger the validation workflow we have discussed above and then push the optimal result to an HMI for an operator to simply press play, leveraging the HAL Robotics Framework’s ability to generate native robot code for almost any robot setup.
Taking this one step further, this can be run in the production loop. There are a number of processes we deal with at HAL Robotics where the parts coming into the cell aren’t known ahead of time. In those cases, we use sensors like 3D scanners to capture information about the part and generate toolpaths on the edge based on that data. Whilst always functional and safe, those processes trade a small amount of efficiency for that flexibility.
With the power of the cloud and parallelisation able to generate and validate 10s or 100s of different toolpaths in the same amount of time, any efficiency sacrificed can drop all the way to zero. This workflow is becoming particularly prevalent in incremental manufacturing lines which combine sensors and multiple processes to fix defects in the loop or create extremely complex parts by layering processes on top of each other e.g. additive manufacturing and machining in alternating passes.
Whilst the HAL Robotics Framework has been enabling adaptive automation for years, by demonstrating its portability into elastic cloud services, we can unlock the new, scalable workflows needed to add flexibility to even the most demanding manufacturing systems.
Looking to get your robots do incredible things?