Our Sites

Evolution of robot programming

We’ve come a long way since the teach pendant

A robot welds a structural flange

After being automatically programmed, a welding robot welds a component onto a structural member.

This article is adapted from “Benefits of adaptive robotics for the metallic industry,” by Louis Dicaire, general manager, and Denis Dumas, marketing and sales director, AGT Robotics, presented at the FABTECH® conference, Nov. 6-8, 2018, Atlanta. Images courtesy of AGT Robotics.

When fabricators talk of automation, the skilled labor shortage usually enters the conversation. The thing is, the most efficient and effective automation usually eliminates only very repetitive tasks.

Consider robotic welding. Long setup times make sense for long runs or when a product sequence is known. These days technicians can program robots to perform extraordinarily complex routines, but again, technicians need time to perform the setup. Moreover, parts presented to the robot need to be very consistent. The more accurate and repeatable your upstream processes are, the easier robotic welding usually is.

Because of these limitations, welders often find themselves welding one similar (but not identical) part after another. In structural fabrication, for instance, a welder might weld one structural beam after another. The parts are similar but not identical, so historically the application has been difficult to automate fully.

That said, robotic programming has advanced considerably in recent years. In certain circumstances even robot programming has become entirely automated. In many cases, once the 3D CAD file is released, a robotic welding job requires no human intervention whatsoever.

The technology doesn’t fit every robot application, but it has the potential to change the way certain shops, including structural fabricators, operate. When it comes to robot programming, we’ve come a long way from the traditional teach pendant.

Levels of Robot Programming

Say someone launches a weld shop out of his garage. For the first few years the entrepreneur spends his days welding one unique part after another. But then customers ask for jobs involving dozens, sometimes hundreds of pieces. So he rents a small building and hires four more welders, most of whom handle the higher-volume work. The founder still dons a welding helmet for the most difficult, usually low-volume or one-off work.

The shop grows some more. And more. The punches and lasers arrive along with press brakes—all modern, precision machines, which, being a welder, the founder appreciates. Consistent parts make for consistent welding.

Then a longtime customer calls with a proposal: The customer’s sales keep growing for several key product families, so can he ramp up production? The weld shop founder now has a choice: He can hire more welders or choose to automate. For competitive reasons, and considering he can’t find welders, he chooses to automate and installs a robot cell with teach-pendant programming.

He knows that welders make the best robot programmers, though, so he hires a few more to handle the programming work load. With a variety of product families flowing through the cell, the welders-turned-robot-programmers keep very busy. They build fixtures and adjust the robot’s path to accommodate part inconsistencies and design changes.

The start and end of a weld

During automated programming, the software defines what’s being welded, the start and end point, and the size of the weld bead.

For some parts, the company adopts manual teach-in, or kinetic, programming, in which an operator moves the robot end effector by hand. This simplifies programming even further, but just like teach-pendant programming, when a robot is “being taught,” it isn’t producing parts.

Going Offline

At first the welding robots handle large lot sizes and just a few dozen parts. Sure, developing programs on the teach pendant does tie up the robot, but that initial setup can be amortized over a long run. And even if the initial order size isn’t very high, robotic welding still makes sense if the part’s ordered repeatedly.

But then new customers come onboard and the variety of products grows. Eventually all that teach-pendant programming is stealing too much capacity—so the shop invests in offline simulation. Now several programmers develop and simulate programs offline, in a small office next to the robot cells. When a new program reaches the robot cell, the operator just needs to perform a quick check and only occasionally adjust the program slightly to account for differences between the virtual model and the real part. Not long after, the robot is ready to produce.

Parametric Programming

A few more years of growth go by, and another customer approaches the fabricator. This one involves a single product family of cabinets. Sizes vary, but there’s a pattern to them. Weld seams go in the same area, the joint geometry is identical, but the weld length varies—with every new cabinet. One cabinet might require a 6-in. weld, another a 12 in., the very next one 18 in., 12.125 in. the next. In fact, below a maximum length, the cabinet size is infinitely variable.

Designing a flexible fixture that could adapt to every new cabinet size would be easy enough, but what about the programming? Even with offline programming, the fabricator faces a conundrum. It would take weeks for programmers to develop a programming library to account for every cabinet variation. To process the jobs for even one shift, they’d need to spend at least an hour of tedium, tweaking each weld length per the schedule. And operators would need to make sure each program matched the cabinet assembly in front of the robot. That’s a mistake just waiting to happen.

Ultimately, the shop owner realizes that this situation is a perfect fit for parametric programming. As the name suggests, technicians build the program around specific variable parameters, in this case a weld seam of various lengths. The programmer specifies the minimum and maximum weld length, as well as other minimum and maximum dimensions as necessary. The robot then takes that program and, using a laser-based vision system, detects the location of each weld seam of every new part. The program adjusts immediately to accommodate, then the robot commences welding, with no need for a host of technicians making small, tedious changes to a program and no need for an operator to choose the right program.

Admittedly, the fabricator makes this investment for the long term, considering the cabinet is part of a long-term contract. The remaining robot cells continue to be programmed and simulated offline, simply because the part variation is too great. Parts can vary widely under parametric programming too, but that variation needs to be based around specific parameters: length, height, width, depth, or another dimension. The design can’t change completely from one part to the next.

At this point most of the fabricator’s manual welders work on complex, low-volume, nonrepeat work. The welders prefer this anyway. Whenever they don a welding helmet, they often can expect something entirely new on the worktable in front of them. Many of the company’s best welders thrive on that variety. It’s why they come to work in the morning.

Fully Automated Programming

Years pass, the fabrication business thrives, and the founder now is looking to diversify. Ultimately it buys a medium-sized structural fabrication business across town. This expands the customer base and gives the company a greater presence in the construction market, but it’s also an entirely different business. And as the business grows, it hits a wall: With the local construction market presenting many opportunities, the fabricator lacks the qualified structural steel welders it needs to take on the work.

However, the structural steel welders currently on the payroll are extremely qualified, and a few of them express interest in managing a new kind of structural steel automation, one involving a kind of robot programming that’s entirely automated.

Software simulates welding operation

The software automatically simulates each structural welding job to ensure the weld path is sound and free of collisions.

With automated robot programming, a file is exported directly from 3D CAD; in this case, SDS/2, but other platforms like Tekla would work as well. (Note that it’s also possible to generate a robot program automatically from a 3D scan, which is extremely beneficial for some applications, but for this structural fabrication application, the technology has limits when it comes to part complexity and the surface quality of parts being scanned.)

Using plug-ins designed specifically for welding shapes like beams, hollow structural sections, and angles, offline simulation software automatically simulates the weld to check for collisions and work flow—again, with no human intervention—which in turn sends data for postprocessing into a robot program (though the finished robot programs can be edited manually should the need arise).

On the floor, the robot uses vision to detect the beams and angles presented to it and finds the exact location. This accounts for the positional variation, mainly because the automated system is a fixtureless setup, but also because of expected dimensional variation between material lots. The automated system can’t use a welding fixture because of the high variety of beams and angles passing through the system.

It also uses real-time seam tracking to ensure it adapts as needed because, again, structural shapes on the floor don’t exactly match the virtual 3D model that the robot program is based on. Seam tracking technologies vary, but the fabricator’s system uses feedback from current. For instance, if the robot weaves within the joint geometry, the closer the electrode tip gets to the edge of the groove (the standoff distance), the higher the current will be. If the current variation goes outside a certain range, the robot knows the joint position has moved and can make the appropriate adjustments.

Unlike parametric programming, where a defined robot program allows the system to adjust automatically to a specific range of parameters (different heights or widths of the same product, for example), automated robot programming actually simulates and develops an entirely new welding program for every new job. But it does require specialized software and system integration designed around a range of parts, such as the beams and angles of a structural steel welding line, or a range of parts used for large-panel material handling and fabrication.

How Technology Complements Talent

Put another way, automated programming requires a defined environment, and our hypothetical fabricator adopts the technology within such an environment—that is, structural beam fabrication.

For low-volume, complex, one-off jobs, the fabricator’s best welders continue their work, not unlike what the company founder did years before. In this sense, automation technology allows the fab shop to make best use of its welding talent. They continue to work in the prototype area and tackle high-volume work only when the need arises, such as to free a bottleneck or meet a tight deadline.

Such automation allows highly skilled, hands-on employees to focus not on repetitive tasks, but on tasks in which they add the most value: in the welding booth, welding one unique or challenging piece after another.