Will AI Replace Industrial Robot Programmers?

Share

Few make the distinction between machinesrobotsservice robots, and industrial robots. And for many, artificial intelligence (AI) is a mystical technology that will eventually lead to the automation of just about anything we humans do for a living, including manufacturing.

Occasionally, I too hesitate and need to update explanations of these automation-related terms for my undergraduate course on Industrial Robotics at the ÉTS. While most are defined by the International Standards Organization (ISO), their use in industry might differ due to constant technological innovations. Add to that, the use of such terms in mainstream media is often arbitrary, especially when it comes to manufacturing.

The truth is that today manufacturing is being increasingly automated with more industrial robots, rapidly proliferating service robots (essentially mobile robots), and a profusion of bespoke machinery. Advances in AI and sensor technology, and other means of simplifying the deployment of robots will further accelerate the rate of manufacturing automation, but there is no robocalypse coming.

 

 

 

In this article, I will first clear up a few misconceptions related to the use of robots in manufacturing, and will then focus on industrial robots. I will explain why programming an industrial robot is only a small part of making the robot useful, let alone in an optimal way. I will then argue that industrial robots are automation components, and despite advances in AI, some system integration skills and a basic understanding of robotic concepts are still needed to successfully deploy industrial robots.

 

The “robots” are coming!

A decade ago, I was excited to read in my new pool contract that I was getting a complimentary “robotic pool cleaner,” only to realize later on that the said “robot” was but a plastic pool creeper with no motors, no electronics, no brain. Some of my academic colleagues might argue that this pool cleaner is an example of mechanical intelligence, where a vortex effect created by the suction of the pool pump makes the so-called  “robot” crawl around (albeit randomly) and that this cleaner is a robot. Indeed, Britannica defines a robot simply as “any automatically operated machine that replaces human effort.” But my pool cleaning was hardly effortless: I had to repeatedly dive in to reattach my “robot” to the bottom of the pool.

Britannica defines a robot as “any automatically operated machine that replaces human effort.

Other — more subtle — examples of mixed-up robot terminology come to mind too. Pepper, the ill-fated service robot that is no more, used to often illustrate articles that were actually about industrial robots. Even Boston Dynamics occasionally call their quadrupled service robot Spot an industrial robot. And in most articles on the controversial subject of “robots stealing jobs,” it is never clear if the robots in question include automated messaging systems, voice assistants, self-driving taxis, or indeed any automated machine that replaces human effort such as an ATM.

Meanwhile, China continues to deploy an impressive number of robots — industrial ones — to cope with increasing labor shortages. Some wonder “who will program these tens of thousands of robots?” But that is not the right question to ask. It takes much more to automate cell phone assembly or shoe stitching than merely programming a robot. Others speculate that industrial robots will soon learn autonomously, the way a Roomba eventually learns how to sweep your floors, in spite of your cat messing with it.

There is indeed an increasing number of start-ups delivering software solutions, many based on AI, that allow you to robotize certain processes in dynamic environments, with no coding. A recent example of this is Google’s parent company, Alphabet, who launched Intrinsic. Intrinsic will offer “software and AI tools that use sensor data from a robot’s environment so that it can sense, learn from, and quickly adapt to the real world.” These solutions are extremely useful for specific tasks such as palletizing, bin picking, welding, or even assembly. But products and their manufacturing processes are constantly evolving and some tasks take even a human being some time to master. I still struggle every time I have to unjam a printer, and I’d like to think I am not alone. So robots are not taking over. If you don’t believe me, just ask your favorite AI voice assistant.

 

 

Industrial robots as automation components

An industrial robot is defined in ISO 8373 as an “automatically controlled, reprogrammable, multipurpose manipulator, programmable in three or more axes, which can be either fixed in place or fixed to a mobile platform for use in industrial automation applications.”

Although the number of self-aware service robots for warehouse applications such as those by Boston Dynamics or 6 River Systems is rapidly increasing, the vast majority used in industrial automation, especially in manufacturing, are industrial robots. And, most of them are robotic arms like the ones we make at Mecademic Robotics, though typically much bigger. Last year, some 380,000 industrial robots were installed worldwide, nearly half of which in China, according to the International Federation of Robotics (IFR).

However, when we talk about automating manufacturing processes, we must think mainly of special-purpose machinery, such as a vial filling, capping, and labeling station. These consist of computing devices, actuators, linkages, conveyors, sensors, and various other automation components, with the occasional industrial robot here and there (see example).

Industrial robots are typically small — yet powerful — components of highly complex automated systems, generally built by system integrators.

Industrial robots are typically small — yet powerful — components of highly complex automated systems, generally built by system integrators. Equipped with various tools, industrial robots can accomplish complex tasks such as welding, assembly, and inspection, or simple pick and place tasks as machine tending, but they should always be seen as components. I generally avoid using the term robotic cell, because it suggests that everything revolves around the robot. This should not be assumed to be a rule.

 

In this example, Mecademic’s robot arm is assembling the plunger of a syringe as part of a complex automated system (image courtesy of GTE)

In this example, Mecademic’s robot arm is assembling the plunger of a syringe as part of a complex automated system (image courtesy of GTE)

 

Anatomy of an industrial robot

An industrial robot consists of linkages connected by joints. In most designs, these joints are all actuated, i.e., typically coupled to motors. According to the IFR, nearly two-thirds of industrial robots are articulated robot arms, mostly six-axis robotic arms, meaning that they consist of a series of linkages connected through six actuated joints. About a sixth of industrial robots are so-called SCARA robots, which can be thought of as a series of linkages connected through four motors. There exist other types of industrial robots too such as gantry pick-and-place robots, seven-axis robotic arms, and parallel robots but, in all cases, an industrial robot consists of an assembly of linkages, joints, and actuators, called the manipulator, and of a controller. The latter is typically a separate, bulky cabinet.

All manipulators have a base at one extremity that is to be attached to something, and a mechanical interface (a plate with threaded holes) at the other extremity to which third-party tools can be attached. Such third-party tools, called end-effectors or end-of-arm-tooling (EOAT) typically include a gripper, an electric screwdriver, a welding torch, or a gluing gun.

 

 

A six-axis robot arm (left) and a SCARA robot (right) from Mecademic, with no tools

A six-axis robot arm (left) and a SCARA robot (right) from Mecademic, with no tools

 

 

The main purpose of an industrial robot’s controller is to manage the motion of the robot actuators, so that the robot end-effector moves along a specified path with extreme precision (repeatability) and high accuracy, without shaking or vibrating. As an example, Mecademic’s robot arms can reposition a tool over and over again with no more than 5 micrometers of deviation — that’s one-tenth of the diameter of a human hair. This measure is called repeatability. They can also move their end-effectors along a path, say a circle, typically deviating no more than 200 micrometers from that perfect circular path — that’s one measure of accuracy.

An industrial robot controller can also react extremely quickly to external events, typically within a few milliseconds.

An industrial robot typically doesn’t come preinstalled with external sensors that can perceive its environment.

However, an industrial robot typically doesn’t come preinstalled with external sensors that can perceive its environment and has little if any AI embedded in its controller. Yet it is still a highly sophisticated piece of equipment containing hundreds of thousands of lines of custom-written code. Such code includes complex algorithms performing motion planning, motor control, and real-time communications.

An industrial robot is a multipurpose partly completed machinery by design, a term defined by the Machinery Directive 2006/42/EC, meaning that it is “an assembly which is almost machinery, but which cannot in itself perform a specific application.” To become useful, an industrial robot has to be programmed or guided in real-time by an external computing device such as a programmable logic controller (PLC). But it first has to be equipped with an end-effector and sensors. More importantly, it has to be installed intelligibly in conjunction with many other automation components, according to set safety standards.

Furthermore, an industrial robot controller has significantly less processing power than a typical contemporary smartphone. So if you need “augmented intelligence” such as advanced algorithms for real-time obstacle avoidance, or for handling randomly amassed parts in a bin, you need a powerful external computer with sophisticated third-party software. Without an external computer, the only algorithms that you can program into the typical industrial robot, or the typical PLC that controls it, are those based on the good-old-fashioned if-then-else commands.

 

 

 

Programming and operating an industrial robot

Most industrial robots require at least a few days of training on how to program and operate them. And, each brand is programmed and operated in a completely different manner. The underlying principles of how a robot is instructed to make movements are — surprisingly — the same, but the proprietary robot programming languages, the detailed functionalities, and the various levels of interface are completely different from one brand to another, and generally complex.

This complexity is due to the fact that many robot manufacturers have not had to reinvent their proprietary approach since the 1970s, mainly because of their large existing client bases. When they laid the bases of their programming approaches decades ago, they couldn’t foresee future products and features that are now often handled in an awkward manner. Furthermore, industrial robots have always been designed as nearly stand-alone machines. Until recently, the need for interoperability and ease of use has not been a driving force for change. 

Mecademic’s design philosophy is different: Our robots are programming-language agnostic and built to be a component of complex automation systems, by design. Similarly, most so-called collaborative robots that were introduced in the past decade are designed with simplified graphical programming interfaces and are easier to get started with than traditional industrial robots.

Learning a proprietary robot programming language is completely different from learning a general-purpose programming language.

That said, learning a proprietary robot programming language is completely different from learning a general-purpose programming language such as C++ or Python. The process is mostly about understanding the various robot-related motion commands and their multiple options and limitations. And these commands, options, and limitations are completely different from one robot brand to another because they were imagined and implemented in unique ways, at different stages of the robot firmware evolution. So, while removing the need to learn a new programming-language syntax or using a graphical interface instead of coding is a big plus, you still need to learn the details of each particular robot action.

In manufacturing, a robot’s programming may only involve a few motion commands and a bit of logic. However, the movements may need to be precise within a few micrometers and perfectly synchronized within a few microseconds with other events. Sometimes, a client might need to activate a signal exactly 0.1 seconds after the robot end-effector has started to move. Another would like the robot to come to a complete stop precisely along the initial path of motion when a signal is triggered. And a different client might need to move several robots in perfect synchrony, one mounted on a linear guide and holding the tool, the other holding the part. How would you implement solutions for all these scenarios? The answer is, there is no single recipe, no single best solution, but multiple ways to address these needs.

Nevertheless, programming an industrial robot to perform a sequence of motions is the fun part! But you also need to learn how to operate the robot, how to service it, how to master it after a crash (update its rev counters), and how to have it communicate with third-party equipment.

 

SDC, a system integrator, used three tiny six-axis robots from Mecademic and a large SCARA robot from another industrial robot manufacturer (image courtesy of SDC)

SDC, a system integrator, used three tiny six-axis robots from Mecademic and a large SCARA robot from another industrial robot manufacturer (image courtesy of SDC)

 

 

Add to that, it often isn’t enough to gain expertise in a single brand of industrial robots. That’s because each robot manufacturer offers at least a couple of robot models with unique characteristics (e.g., size, speed, precision, suitability for sensitive environments) that are not offered by anyone else. Otherwise, I and my colleagues wouldn’t have acquired dozens of industrial robots from different brands in our research lab at the ÉTS, including hexapods, Delta robots, seven-axis robot arms, and various cobots. For example, Mecademic offers by far the smallest six-axis industrial robotic arm, and similarly, only one robot manufacturer offers gigantic robot arms that can handle loads of more than 2000 kg, as well as hexapods (a type of parallel robot).

Fortunately, for common tasks (some simple, others quite complex), start-ups such as ArtiMinds, Drag&Bot, and Ready Robotics have created model-based graphical interfaces running on separate computers that allow you to program a wide variety of industrial robot brands in an identical fashion. Similarly, various companies, such as RoboDK and Visual Components, now offer off-line programming and simulation software that will work with various brands of industrial robots. Thanks to post processors, robot programs can be generated without coding.

This trend aligns with Mecademic’s philosophy, which is that industrial robots, no matter how sophisticated, should remain multi-purpose automation components, rather than stand-alone machines. We therefore intentionally design our robots so they can be easily interfaced with other computing devices and software packages that will take care of all the potential use scenarios.

But you still need to learn how to turn the robot on, connect it to other equipment, reset it after a collision, or update its firmware — tasks that can only be accomplished using the original robot’s interface. Besides, using brand-agnostic programming interfaces makes you lose access to some of the advanced features and options offered by each robot brand. Some robot manufacturers are therefore themselves offering additional simplified interfaces for the intuitive robot programming of basic tasks.

 

 

 

 

How are industrial robots used to automate manufacturing processes?

High-throughput, special-purpose machinery is unbeatable when it comes to efficiency. Such machines are custom-made and tailored to a single product with few variations, if any (see example). They can be extremely expensive, take a long time to design and develop, and are useful only for high-volume low-mix products with long product life cycles.

Often, it’s faster and more economically feasible to use an industrial robot to automate portions of a manufacturing process, even if the robot might seem like an overdesigned solution.

Often, it’s faster and more economically feasible to use an industrial robot to automate portions of a manufacturing process, even if the robot might seem like an overdesigned solution. For example, you might end up using a six-axis robotic arm, equipped with a vacuum suction cup, for the sole purpose of picking identical parts from one place and placing them in another. Having said that, many tasks such as welding, gluing, or inspecting complex-shaped parts exist that can only be automated with a six-axis robot. Also, industrial robots can be equipped with several tools and can accomplish different tasks (see example) that would otherwise require several bespoke machines.

 

A simple vibratory bowl feeder used in a watchmaking application (left, image courtesy of Horosys) and an example of 3D bin picking (right, image courtesy of CapSen Robotics)

A simple vibratory bowl feeder used in a watchmaking application (left, image courtesy of Horosys) and an example of 3D bin picking (right, image courtesy of CapSen Robotics)

 

 

A great example that illustrates the difference between fixed automation and robotics is the vibratory bowl feeder as opposed to 3D bin picking. Consider the typical automation scenario where identical parts come in bulk and must be placed one by one at a precise location, a process called singulation. The traditional approach is to use a vibratory bowl feeder (see video). The latter is typically a bowl (a hopper) that vibrates, with tracks spiraling out, and equipped with various obstacles that flip randomly oriented parts until they exit the track at a predetermined orientation. The more complex the shape of the part, the more intricate the vibratory bowl feeder. Designing feeders is almost an art and is a complex and costly process. However, such feeders can supply as many as four parts per second. Even the fastest pick-and-place robot can’t handle that many transfers per second, so such high-throughput vibratory bowl feeders are often used with some custom-designed parts transfer system.

If lower speeds can be tolerated or if a variety of parts are to be handled, you could use a 3D vision system (typically a pair of cameras and a projector of a known light pattern, such as a grid) to feed data to a six-axis industrial robot to perform the bin picking. The parts are randomly stacked in a bin, and the 3D vision system identifies the position and orientation of each part that is (at least partially) unobstructed and can then be readily picked by a six-axis robot. 

For the vibratory bowl feeder system, the lead time could be several months, but then you will have an extremely fast process. However, the moment you make a change in your product, you will have to make major modifications to your system. The 3D vision-based system is almost off-the-shelf… except for the tuning of the vision system, the installation of the gripper, the design and machining of the gripper fingers, the installation of the robot and the vision system, and so on.

Indeed, industrial robots offer flexibility and are often readily available, but they are not turnkey solutions. Frequently, even installing the simplest possible gripper on a robot requires both mechanical, electrical, and programming expertise and can take hours. But before that, you must choose your gripper among hundreds of models available on the market. Fortunately, the advent of so-called cobots has started a trend to offer plug-and-work robotic tools, but so far these tools are reserved mainly for selected cobot brands. Mecademic is quite possibly the only (non-collaborative) robot manufacturer to also offer grippers that are — naturally — plug-and-work.

Then of course you need to design and build your physical installation. Luckily, there too are start-ups that can simplify your job. For example, Vention offers cloud-based 3D design software for building machines and robot cells and Tessella Automation offers mechanical modules for building precision automation setups. But in many cases, because of limited resources (space, budget, etc.), robot installation is more than just screwing and wiring components together and requires the kind of knowledge that I dispense in my robotics course and that we offer on our website.

Space is often a scarce resource, so the optimal placement of automation components is important (image courtesy of GRITEC)

Space is often a scarce resource, so the optimal placement of automation components is important (image courtesy of GRITEC)

 

Say you designed and built a setup in which a robot must pick up parts by grasping them in a unique manner from various unpredictable locations, identified by a vision system. Well, whatever simulation or AI tool you use today, it probably won’t automatically detect the possibility that your robot can’t grab the part from certain locations due to a physical limitation called a singularity (the mathematical one, not the science-fiction one). Or, say you have to inspect a part by presenting it in front of a camera in multiple orientations. No commercially available tool will optimize the sequence of these reorientations to minimize your cycle time. No software will help you find the best installation angle for your gripper or suggest that you install three different tools on your robot. These optimizations are all feasible and we do them regularly in academia, but there are so many different-use scenarios that, if software existed for all of them, it would likely be incredibly complex to use.

 

So how is AI improving the deployment of industrial robots?

Artificial intelligence (AI) is a vague term with no widely accepted definition but, when used in relation to robotics, it often implies the use of machine learning (a branch of AI), where there is no explicit programming but learning from experience (i.e., from lots of data). Vicarious, for example, is a unique system integrator that uses machine learning to perform various types of 3D bin picking, palletizing, and packaging.

In most manufacturing applications, however, where a process needs to be automated with a robot, you don’t need machine learning. The parts are always presented in the same way, at the same place, and the environment never changes, so you can find an optimal design for your system — minimizing cycle time for example. For this kind of problem, other less popular subsets of AI are extremely useful, such as nature-inspired optimization algorithms.

Turn-key AI solutions now exist for an increasing number of popular applications. We have already discussed 3D bin picking which is becoming a mature technology, but 2D smart cameras able to directly communicate the location of a part to a robot controller have existed for decades. Today, we have AI solutions for other complex tasks too. Welding is one popular application, and Path Robotics, for example, offers complete systems consisting of a robot equipped with a welding torch, possibly a turntable, some sensors, and, most importantly, a software that uses AI to automatically program the optimal movements of the robot required for welding a complex part. Palletizing is another very common application where you can use software that automatically programs your robot, even in the case of mixed box sizes. Painting is yet another application for which we have similar solutions (e.g., Omnirobotic). For applications where real-time motion planning is required, Realtime Robotics offers sensors and a high-end controller with software for intuitive programming.

AI is undoubtedly opening new horizons for industrial robotics and automation in general, but it remains an enabler, not the complete solution.

AI is undoubtedly opening new horizons for industrial robotics and automation, but it remains an enabler, not the complete solution. You will still need to research and choose the right automation components — amongst thousands of possibilities — and find their optimal locations, then design and build adaptor plates, brackets, and framing, wire all components, and finally integrate everything according to machine safety standards.

Fortunately, current trends towards simplification and standardization will also greatly facilitate the adoption of industrial robotics and boost the importance of AI tools. (At present, these AI tools work only with selected robot brands.) The ROS Industrial Consortium, for example, provides interfaces for industrial robots, grippers, and sensors, and software packages for common tasks. But the need for education in general robotics and automation will not only remain; it will also increase dramatically. 

So don’t wait for the Singularity and start exploring robots. Industrial robots will not become turnkey multicompetent androids anytime soon, but deploying them is not rocket science and is getting increasingly easier. You will need some technical skills, for sure, but you will not be starting your application from scratch. Some three million industrial robots are already in service, and many of these installations are described in case studies and forums. Manufacturers offer various coding examples and drivers; interoperability between automation equipment is improving. A new era of industrial robotics has begun.

 

 

 

Share