How to Set Up a Strong, Streamlined Software Workflow

Plugins and add-ons are a defining feature of good robotics software. They can help you to set up a strong, streamlined software workflow. Here’s how.

Over the last year or so, we have been focusing a lot of attention on creating plugins and add-ons for RoboDK. Our latest addition is VSCode, which allows you to accelerate your coding and get the benefit of the industry’s most popular IDE for robot programming.

We have focused on interoperability for one important reason — so that RoboDK is easy to slot into your software workflow. We don’t want you to have to go through a huge learning curve to get started with robot programming. You should be able to get up and running as quickly as possible.

But, what is a software workflow?

You might never have thought about your software workflows before, but we all use them. Whenever you use any software to perform a task, there is a workflow.

The path to success with robot programming is to master your workflow from the beginning.

What is a Software Workflow for Robot Programming?

We use software workflows all the time, though we don’t always think about it. I used a software workflow to write the text of this article:

  1. I planned, researched then wrote it in my word-processing program.
  2. Then passed it to a text editor to bulk-edit the HTML.
  3. Then passed through an HTML cleaner.
  4. Then copied it to the RoboDK Content Management System.

And that’s just the text. The images passed through a more complex workflow.

Whenever we pass data between software programs, we are using a workflow.

The definition of software workflow

Here is one definition of a software workflow, adapted from a definition of a workflow from Business Process Management company PNMsoft:

“Workflow is the definition, execution, and automation of software processes where tasks, information or documents are passed from one program to another for action, according to a set of procedural rules.”

This is a bit confusing so let’s break it down into pieces:

  • “Definition, execution, and automation of software processes” — If you want a good software workflow, you need to actively design it, use it, then (where possible) automate it. Most of us just muddle through without ever formally defining our workflow.
  • “Tasks, information or documents are passed from one program to another” — If any data passed between programs, in any format, you are using a workflow.
  • “For action, according to a set of procedural rules.” — Each program will perform one or more actions on the data.

Example Workflow for Robot Machining

A robot machining project might have the following workflow:

  1. Create a product design in your favorite CAD program.
  2. Pass the CAD file to a CAM program to create the machine path.
  3. Pass the CAM path to RoboDK for robot machining.
  4. Generate the robot program in RoboDK.
  5. Pass the robot program to the robot controller to run it.

3 Types of Software Interoperability in RoboDK

The key to creating an efficient software workflow is interoperability. According to ex-IBM manager Kurt Kosanke, a lack of interoperability is becoming an increasing bottleneck in companies.

When your software “plays nicely together” you can significantly speed up your robot programming. As we’ve mentioned in the past, you don’t need to change everything in your software workflow to use robots — you can just plug in RoboDK to your existing software and soon be on your way.

Here are 3 ways that RoboDK allows for easy software integration:

1. Text Editor Agnosticism

The extremely popular programming text editor VSCode now comes packaged with RoboDK, giving you access to some very powerful features when you want to edit your robot programs.

However, one huge benefit of RoboDK is that you can use whichever text editor you like. By selecting your favorite editor, you will speed up the learning process.

2. CAD/CAM Integration

Exporting files from your CAD program can be a huge pain in the neck. That’s why we’ve worked a lot to create plug-ins for the most popular CAD/CAM packages. They allow you to export models to RoboDK at the touch of a button. At the time of writing, we now have plugins for the following:

3. File Formats

Finally, you can use a range of file formats to export and import data from RoboDK. Although this is a (very) slightly more involved process than using add-ons and plugins, it means that almost any program is compatible with RoboDK.

5 Steps to Set Up a Strong Software Workflow for Robot Programming

A good software workflow comes from great planning.

Here are 5 steps you can use to design your software workflow for robot programming:

1. Write Down Your Favorite Packages and Features You’ll Need

First, note which software packages you want to continue using and the features you will need for this application.

Where possible, you will want to keep using familiar programs rather than changing to a completely new one for the same functionality.

Examples include:

  • CAD programs you use to design products.
  • CAD/CAM programs you use to generate machine paths.
  • Text editors you use to edit code.

2. Investigate Interoperability

Find out how you can pass data between your chosen packages and RoboDK.

If you can use one of our plugins, great! If not, look at how you can export using other file types.

3. Identify the “Need to Learns”

You will probably need to learn some new functionality for your new robot application, either in RoboDK or in another package. However, you can keep these “needs to learns” to a minimum to reduce the learning curve.

Identify which functions you will need to learn from scratch. Our YouTube channel is a good place to learn RoboDK functions quickly and easily.

4. Formalize Your Workflow

When you have identified all the different components of your software workflow, take some time to draw them into a workflow diagram.

This diagram is a bit like a flowchart. It helps to formalize the process and reduces the chance that you have forgotten something. There are software tools you can use or you can just use a traditional pen and paper.

5. Use it

Your software workflow will only be useful if you actually use it!

By using your designed workflow, you can ensure that your robot programming is as efficient as possible. Every so often, check back on the workflow and see if you can make it even more efficient.

What’s your favorite software? Tell us in the comments below or join the discussion on LinkedIn, Twitter, Facebook, Instagram or in the RoboDK Forum.

Alex Owen-Hill

About Alex Owen-Hill

Alex Owen-Hill is a freelance writer and public speaker who blogs about a large range of topics, including science, presentation skills at, storytelling and (of course) robotics. He completed a PhD in Telerobotics from Universidad Politecnica de Madrid as part of the PURESAFE project, in collaboration with CERN. As a recovering academic, he maintains a firm foot in the robotics world by blogging about industrial robotics.

View all posts by Alex Owen-Hill

Leave a Reply

Your email address will not be published. Required fields are marked *