The word programming means the process of creating instructions (or code) for a machine to execute, in order to perform automated tasks. Programs are also called sequences, routines or modules.
Programming in the simplest form can be like this: Select wash cycle -> Change temperature -> Set drying time, and voila you’ve just created a program ready to start cleaning, though operating a washer dryer doesn’t exactly make one feel like a programmer. If we have to make an analogy, a programmer is typically whoever programs the robot vacuum to correctly hoover the floors!
Industrial robots like any automation machine are programmed to perform recurring tasks, and a robot programmer is a skilled job which requires technical knowledge and analytical expertise.
Types of Robot Programming
Manual Programming
- Teach Pendant Programming: Even in 2024, this is still considered as the standard method for programming robots and the most popular. Programmers/operators use a handheld pendant (control box) to drive a robot to the required positions, recording each movement. The robot is then ‘taught’ after this process as its controller stores the program for running repeatedly in production.
- Hand-Guiding Programming: We mentioned this type of programming when we first covered cobots. Instead of driving the robot with a teach pendant, some robots (especially cobots) allow users to get hold of them and physically move to the required positions. Hand-guiding is considered more straight-forward than using a teach pendant, as skills for correctly manoeuvring a robot may not be necessary.

Disadvantages of Manual Programming
Manual programming methods may be simple and intuitive, but they have certain drawbacks. Robots are made for automated tasks but with manual programming, the automation only starts after the programming process!
Traditionally, stakeholders ask this question when considering whether deploying a robot is worth the investment: Will the task change frequently? If the answer is yes, they take into account the programming process itself, which leads to:
- System Downtime: Manual programming is also referred to as ‘online programming’, as opposed to offline programming which we’ll explain in the next section. This means the robot has to be present when being programmed and cannot be used in production. The amount of programming time, be it an hour or a few days, is taken from productivity and brings down equipment efficiency.
- Human ‘Down’ Time: Repetitive manual work is a burden to humans (and this is what robots are made for). Ironically in some scenarios, a skilled programmer/operator has to program similar robot positions repeatedly. For example, if a task is to drill 100 holes in a metal sheet, the idea of hand moving a robot to 100 positions one by one is daunting! Modern robot manufacturers try to simplify this, by allowing editing positions with distance offsets. But for more complex tasks like holes in a sphere, which requires tool orientation or even motion, this type of ‘once and for all’ programming method only makes sense if high volume productions. A programmer/operator skilled in the particular application is also essential.

Offline Programming
Offline programming does not require real robot movements. The process is through specialised PC software in a virtual environment mimicking a real robotic cell. This doesn’t interrupt production and offers more software features such as logic loops, conditions and mathematical tools. This is particular useful for creating more complex robot paths, and it also means path data can be imported directly from CAD models.
Simulating robot applications in a virtual environment provides benefits of path optimisation, validation and collision detection. Offline programming software can also offer a wider range of options such as whole system design, presenting a digital twin, and the robotic cell development can be future integrated with MRP/MES systems.
Most robots allow import of external programs. This means executable programs created by offline programming software can be deployed on the robot controller. Manual touch-ups/validations are usually required to make sure the virtual and real robotic cells align, which should only take a minimal amount of time. Offline programming makes robot automation viable even for low volume productions.
Adaptive Programming
The fast development of sensor hardware and machine learning algorithms means that they are readily available for integrating with robotic systems. Vision and radar sensors can help robots be aware of and learn from the environment, in order to adapt their behaviour. Robots will be safer to work around humans too. This type of adaptive programming also makes deploying offline programs to real systems easier, when it’s used to align virtual and real robotic cells.

Backed by the advancements in AI algorithms, robots can be trained for object recognition, trajectory planning, and decision making. From offline programming to adaptive programming, the usability of robots can increase more than ever, making them perform better, more flexible and cost-effective. Robots are not made to replace jobs, but to promote growth and create more skilled jobs humans enjoy doing. Think about computers when they first came out.
Robot Programming Skills
The skills within the area of industrial robotics can be pretty specific. For example, a skilled FANUC welding robot programmer may not be able to program an ABB robot for machine tending. This is because different robot manufacturers often use proprietary languages and their own programming structures, software platforms, and interfaces, making the skills non-transferable between systems. As a result, a programmer who is proficient with one system may need to be retrained to work with another.
Generic offline programming software can help mitigate this issue. It allows programmers to create, test, and simulate programs in a virtual environment while supporting multiple robot brands within the same interface. This significantly reduces the learning curve and improves efficiency in multi-robot environments. It offers even greater flexibility for productions lines that require a diverse range of robotic systems.



You must be logged in to post a comment.