When it’s time to program an industrial robot on the production line, the line has to stop. Because this downtime can cost upwards of thousands of dollars, offline programming (OLP) is an attractive option for many manufacturers. Using simulation software, it’s possible to digitally recreate robots, tools, fixtures, and the entire cell, then define a program complete with motions, tool commands, and logic. That program can be processed and downloaded to the robot, similar to the process of programming any CNC machine with CAM software.

Even if line stoppage isn’t a problem, however, there are still cases where designing a robot program in simulation is preferable to manual programming. For example, in a palletizing application involving dozens or even hundreds of boxes, a typical program could include hundreds of points. Teaching all these points manually would be tedious and time consuming. In these cases, OLP comes into play.

According to Heikki Aalto, founder and executive vice president of Delfoi, the ubiquity of CAD models in today’s manufacturing world means that programming in simulation can begin even before the first product rolls off the line. “When you are designing something, you have the design available for programming at a very early stage. You don’t have the car, the airplane, the product ready yet, but you can do everything based on CAD model beforehand,” he said. “Once you have your components on the shop floor, you have done your program already.”

Choosing the right robotic simulation software involves several important considerations.

Will the software be compatible with the robots and tools in use?

Is the software best suited to the process, such as arc welding or painting?

How much robot programming or CAD experience is required to use the software?

And how much will it cost?

In this article, we’ll take a look at several options in the OLP market and some of the critical factors. In the end, you should have a better idea of how to find an OLP solution that will be best for your application.

Cost

For the purposes of this article, we’ve divided cost of one seat of the product into three tiers: 0-$10,000; $10,000 - $40,000; and $40,000 and beyond.

Because this software is highly customizable, price is variable, and it's important to contact your vendor for an accurate quote. For example, a user planning to simulate one robot performing one process will need a package costing less than a package that can simulate multiple robots of different brands, with extra features like calibration or analysis.

Compatibility

Robots

Robot controllers from each vendor perform motion planning differently, so there’s no guarantee that a simulated robot will move the way a real one does. However, even if the motion of individual axes differs from the simulation, the defined motion of the TCP in cartesian space will be the same.

In general, However, whatever OLP solution you choose, it’s safe to say the robot you need to simulate will be supported. In most cases, the specific robot model you need can be added to the simulation from a library. These models are typically provided by the robot manufacturer (eg. KUKA, FANUC, etc.) If you are working with a smaller or lesser-known robot vendor, it may be more challenging.

In OLP software, programs created in simulation can be generated in the proprietary languages for the specific desired robot brand. “When you are happy with the program, you select the specific translator,” said Aalto, “For example, when it comes to KUKA or FANUC there is a pull-down menu, you just select KUKA and then it asks downloading or uploading. It’s possible to upload a program from a robot on the shop floor as well as to generate native KUKA code to download to the robot.”

Tooling

Image source: Packaging Tech Today

Tools and end effectors, such as welding guns, grippers or dispensers can be more challenging to simulate accurately. The tool’s parameters are required, as well as the offset of the TCP from the robot flange. A CAD Model of the tool can be used in many cases, but it’s not strictly required. “I could put a balloon on the end of the robot in my model but if I had the ability to control the pattern, the spray pattern and parameters that are driving the calculation of the spray application I would get the same results,” explained Mike Rouman, Senior Marketing Manager in Manufacturing Engineering Software at Siemens PLM.

As long as the tool is integrated properly into the robotic cell, I/O calls in the simulation can be done according to the I/O required by the tool manufacturer. In the simulation, an on and off command with a specific I/O can be executed, which will correlate to an arc on/arc off in welding, or plasma on/off for a plasma process, or spray on/off.

Existing Software Environments

It’s not uncommon for users of professional software in all industries to want to stick with one vendor in order to keep things simple and ensure compatibility. For example, if your company uses SolidWorks for CAD from Dassault Systemes, you may be inclined to choose Delmia, Dassault’s robot simulation software. However, several experts we interviewed for this article did not agree with this approach.

Garen Cakmak, Senior Director at Robotmaster, explained: “What does the programmer really need? If that product does not cater to exactly what the customer needs, I would caution this approach. For instance, Robotmaster is not the best product for every single robotic application and the same is true for all software solutions. When we ask the customer about their application, we sometimes actually make other recommendations because Robotmaster is very powerful for path planning and programming, but we don't cater to the markets of pick and place or palletization, For those types of applications we will make other recommendations better suited for those customers.”

Justin Glover, software accounts manager at OCTOPUZ, Inc. agreed. “There's a long list of different CAD file formats or file extensions that we can import to OCTOPUZ. Very seldom are there limitations to the models that we can bring into the environment and play around with.”

If your robot runs on the open-source Robot Operating System (ROS), you can use Gazebo, an open-source simulation tool, to develop code for it.

Calibration

When you program a robot manually, the robot is typically calibrated to a specific frame of reference, as well as being calibrated to the precise position of its joints. When teaching points, the programmer jogs the robot to a precise location in order to teach a point. The programmer can visually confirm that the programmed point is calibrated to the desired physical location. Some points can also be programmed by inputting coordinates directly. In a program designed to dispense glue along a 10mm joint, the programmer may teach the first point, then create the next point by offsetting the x coordinate position by 10mm, for example.

In simulation, the components of the work cell, such as fixtures, welding positioners or parts must be accurately located relative to each other to create a digital twin of the cell. When the program is downloaded, the robot’s frame of reference can be calibrated to align the programmed points with the corresponding real locations.

Simulation does not Translate Perfectly to Reality

When using simulation software to program a robot, it’s important to remember that no simulation will accurately represent what will really happen when you run the program with the real robot. The movement of cables and hoses is not simulated by most software environments, so it’s possible that the programmed motion may snag or stretch cables, causing failure.

“I think that dynamics and physics modeling will also help make simulations more accurate,” said Rouman. “We have started to do some of that in the design of machines in our software, but in terms of simulation, I still think there's some ground to cover. If you think about when a robot moves at high speed with a high payload, when it stops, it's not going to just stop. It's going to settle and there'll be some movement and so on. With those kinds of fine adjustments and things, we have to make some assumptions. I think that in the future we won't have to make so many assumptions. We'll be able to more closely match what the real robot will do.”

One factor that contributes to better simulation is a shift from time-based simulation to event-based simulation. “In the past, simulation developers would have to sort of guess the amount of time a given event would take,” explained Rouman. “But that's not really how these robotics systems work. They work in an event-based mode, and if we can simulate the system the way it's actually operating on the floor by having these events starting and stopping and coordinating with one another, we'll also achieve a higher level of accuracy between the simulation and the real world execution of that program model on the shop floor.”

Using sensors, some robots can make up this calibration difference. For example, a robot performing an insertion task may use a touch probe to perform a search routine to find a hole, rather than relying on a highly precise point. “The process will dictate how sensors are used,” said Cakmak. “For example, in arc welding, the robot may use touch sensing or laser seam tracking to accurately position the tool with the part. Depending on the customer’s process, these or other types of sensors can help to match the real world part to the theoretical CAD model in addition to compensating for the lack of accuracy of the robot.”

According to RoboDK CEO Albert Nubiola, it’s important to understand that a robot is not a CNC. With the right software you can make a robot behave like a 5-axis milling machine, however, robots are not as stiff or accurate as a CNC. For this reason, the real robot path may deviate more from the programmed path compared to a CNC. Keeping this in mind, there are still many applications, typically done by a CNC, that could be handled by a robot arms. Furthermore, robot calibration is another tool that can remarkably improve robot accuracy.

Brand-Specific Simulation Tools

Screenshot: ABB RobotStudio

While this article focuses on third-party simulation software, nearly every robot manufacturer offers a simulation tool as well. Why not stick with these options, such as ABB RobotStudio or FANUC Roboguide?

First, if your shop floor includes robots from more than one brand, you may not have the option to use a vendor-specific tool. Most brand-specific offerings do not support robots of other makes and models, so ensuring compatibility may be a hassle or even impossible. In addition, users of used robots may find difficulty in finding support for old controller versions within new brand-specific software.

In addition, Glover noted that OCTOPUZ aims to provide a simpler user experience within the software than what’s available from the major robot brands. “I'd say the biggest difference is that our software is built around the user and the user experience, rather than around the robot and the machine,” he explained. “That being said, we value our partnerships with each of the OEMs. Without them, we wouldn't have a product that was very useful to our customers. That close relationship allows us to build each of our robots to spec based on data we get directly from them. I like to think that we take it a step beyond and we try to make things simple as possible. Our entire line is complex made simple. That is the business that we are in.”

Siemens Process Simulate

Screenshot: Siemens Process Simulate

If you’re familiar with robotic simulation software from Siemens, you may already be familiar with Robcad, the company’s legacy OLP tool. According to Rouman, Robcad is still supported and in use today. Process Simulate, however, is the newer product. In addition, Siemens NX has capability for robotic machining.

One of the features of Process Simulate is that it can connect to Siemens Teamcenter, a PLM data repository. This allows users to tie their robot simulation into the entire product lifecycle management system, along with other types of manufacturing data, including designs and processes. However, this connection is not required to run Process Simulate for robot simulation and programming.

According to Rouman, when choosing a simulation solution that includes OLP, it’s important to look for dedicated process tools. “For example, if someone is looking to do spraying or painting with a robot and they want to use a general-purpose tool, they may struggle,” said Rouman. “If they find a solution that has dedicated tools for that particular process, they're likely to have a much higher rate of success.” Process Simulate, for example, enables users to set parameters of a spray tool within the software, and deposition of the spray is shown graphically in the simulation.

Cost

Process Simulate is currently available as a perpetual license, with options for single seats, seats shared across a network, or other deployments. According to Rouman, some customers prefer subscription-based software-as-a-service (SaaS) access, which is available in some cases.

“As far as price range goes, we're on the low end of the middle range,” said Rouman. “We are providing some additional configurations of the software for lower cost to entry. For instance, a solution that wouldn't include all of these additional process-specific tools, but is ideally suited to a more basic application such as general handling and pick and place type operations, has a much lower entry point, and then the customer can add on additional modules over time if they want to expand into different processes. Or for instance, if I want to program robots from different vendors, I have a base software price and the ability to add different interfaces for different robot vendor robot models. That would be at an additional cost. That's what gets you into that mid-range pricing with a basic seat of software, a process application and a database for one or two or more robots.”

Robotmaster

Screenshot: Robotmaster

Robotmaster features a click-and-drag interface for creating and modifying robot positions and trajectories. Like most other universal solutions, Robotmaster is robot agnostic, working with all brands and models of robots and end effectors. According to the company, Robotmaster V7, a task-based robot programming platform was built from scratch on a completely new architecture.

“Using offline programming, you can take problems that can become quite complex, whether the application is welding, cutting, milling, thermal spray painting or other processes, it creates trajectories with the proper parameters and very quickly solves for all robotic errors during the process,” said Cakmak. "Our claim to fame is our proprietary optimization feature that allows end users to create error-free robot programs with fewer mouse clicks, even for customers that have no previous robotic experience."

Cost

Robotmaster is currently available on a perpetual license, with the option for either local or network access. According to the company, the software falls into our middle tier (between $10,000 to $40,000 USD).

“Depending on the application, we consider ourselves to be in the midrange from a price standpoint, but from a functionality standpoint, we offer high-end functionality for a midrange price,” said Cakmak.

Delfoi

Delfoi runs on the Visual Components simulation platform, which includes a robot library of over 1,300 models. Delfoi provides the post-processing for each robot brand. Visual Components was acquired by KUKA in 2017. After the acquisition, KUKA made a statement affirming that Visual Components would remain a hardware neutral simulation platform, hosting models from more than 30 robot brands.

Delfoi offers three main products: Arc, Cut and Paint. Each is specifically targeted to a specific process. According to Aalto, the company aims to provide value to customers by enhancing their programming speed. “In our software, we have several automated algorithms. So, when you are defining a path to weld along a curved surface, the software will automatically detect the curve and create the complete welding arc and then you just click one button to start. We call it automated programming. This reduces the number of clicks required to create a program.”

One thing to note about Delfoi is that it cannot currently generate code for Universal Robots, though it can simulate them. According to the company, this is because UR robots are not commonly used for their main process focus areas; arc welding, metal cutting or painting.

Aalto noted that Delfoi is currently a small, growing company. While there are no Delfoi partners currently located in North America, the software is available in these regions, delivered from Europe.

Cost

According to Aalto, Delfoi Robotics tools are available on a perpetual license, with an additional fee for support and updates. The cost for one seat falls within fall within the middle tier, at €16,800 (About $20,000 USD) for the tool with a translator for one robot brand and updates. There are also more advanced versions with additional features costing up to €48,000 (about $54,000 USD).

OCTOPUZ

Screenshot: OCTOPUZ

Like Delfoi, OCTOPUZ also runs on the Visual Components simulation platform. On top of that platform, OCTOPUZ provides process-specific add-ons to teach process-specific paths and programs, such as for welding. “Once those paths are generated, we have several tools inside of our platform to allow you to analyze, and subsequently solve or manually find solutions to potential errors in your tool path. Those errors can include but are not limited to, singularity, joint limits, reach limits or acceleration limits,” said Glover.

Currently, OCTOPUZ supports 15 brands of robots. In the cases of brands that utilize two programming languages, such as KUKA (which uses KRL for its main product lines, and java for its collaborative robots) OCTOPUZ supports both. Generated code is exported to a USB stick, which is then used to upload the program to the robot controller. OCTOPUZ is UR+ certified by Universal Robots.

According to Glover, many OCTOPUZ customers use it for welding applications. “As a result of this interest in welding, we've had the opportunity to invest quite a bit of time and money into the welding-specific features inside the software because they have been driven by our customers and their experience,” he explained. “Most of the feature enhancements that occur inside the software are customer-driven. The applications that are most popular are the ones that are going to impact the most significant growth development. I think that from a product perspective, welding is probably the process OCTOPUZ is best suited to.” However, he stressed that OCTOPUZ has customers in a wide array of processes and industries, with more projects added in 2018 than ever before.

Cost

According to Glover, OCTOPUZ falls into the middle tier, with a wide range of available features and implementations. “The average investment, for our software as well as some of our competitors' software as well, ranges somewhere from $25,000 to 40,000 CAD (about $18,800 to $30,000 USD). That really depends on several options. It's going to depend on whether you want a local seat or a floating seat. It's going to depend on training and implementation. It's going to depend on the number of cells, the complexity of the parts, training and the application.”

RoboDK

Screenshot: RoboDK

RoboDK is a unique option in the market because of the 30-day free trial offered. Users can continue to experiment with the software after the trial has expired, but saving projects is disabled. According to Nubiola, while a free trial like this is unique among industrial software vendors, RoboDK believes that it gives users a better chance to try the software before making a decision. RoboDK is also UR+ certified by Universal Robots.

One interesting feature of RoboDK is the ability to import a CAM toolpath and convert it into a robot program for applications such as robot machining.

Nubiola cautioned users to carefully consider the number of software licenses they will need for robotic simulation and OLP. “Sometimes, companies buy one license and they have access to the software on one workstation, dedicated to that software, and everybody who needs to use a robot goes through that computer. So, even if the company wants to do a million things, they buy one license, and there may be 10 users using it within a week,” he explained. Consider opting for network licenses to allow users to access the software from more than one local workstation, and buy enough licenses to support capacity.

Cost

Currently, there is a trial version of RoboDK available for free, which you can download and try any time you want. According to the RoboDK website, the full version is available as a perpetual license for just under $3000 USD. This option includes 1 year of support and updates. (termed ‘maintenance’ on the website.) In addition, the Calibration and Performance Testing package includes robot calibration tools, which according to the company can increase the accuracy of a robot by a factor of ten. According to Nubiola, this calibration is especially important for robot machining operations. Because CNC milling machines have massive iron castings, the accuracy is typically much higher than an industrial robot. The package also includes dedicated support. This option costs approximately $15,000 CAD or about $12,000 USD.

Other Major Robot Simulation Options

There are dozens of robot simulation solutions available in the market, but we weren’t able to cover them all in this article. Here are some other vendors to take a look at:

· Autodesk PowerMill

· Delmia

· Energid Actin

· SprutCam Robot

· Artiminds

· Kuka.SIM

· FANUC RoboGuide

· ABB RobotStudio

· Yaskawa Motoman MotoSim EG

Choosing a Robot Simulation Software: Questions to Ask Vendors

When shopping for robot simulation and OLP solutions, here are some good questions to ask yourself and the vendor:

What robot brands and models does the software support?

What are the options for training and support?

Is this the best software solution for my process application?

How long does it take to create a typical program?

How long does it take to solve robotic errors and collisions?

How challenging will it be to translate my knowledge of a given CAD or simulation software to this new software?

Will it be possible or convenient to expand from my current process, such as welding, to another process such as palletizing or painting?

How is data handled and shared?

Will the robot show all the process details I need, not just the robot? (spray deposition, part positions, etc.)

How accurate is the software? Is an external measuring device required or is just a robot used for measuring?

For more information on all of the solutions mentioned in this article, click the links throughout to visit the product websites.

Special thanks to David McMillan for his input on this article.