As the Communications Specialist at Agile Robots, I regularly write about our robots. Writing is my craft, languages my hobby: I speak Spanish, English and German. Programming languages are not part of my repertoire. Before I immersed myself in the world of robotics, I mainly thought of Python as an Australian constrictor.
That has since changed - although I am still not able to write programs or read code. Thanks to hard-working developers, I rely on intuitive user interfaces that make my everyday life easie instead. Much like using Google Maps instead of cartography.
Some time ago, I took part in a training course to familiarize myself with the Yu 5 Industrial lightweight robot. At the end of the day, I was able to implement several industrial applications on my own.
The keyword here was also "intuitive". The word comes from the Latin "intueri" and means something like "to look at" or "to consider", meaning that things can be understood based on a visual understanding. A comprehensive analysis is not necessary.
After a brief introduction, I set about programming my first task: to move the robot so that it navigates to a specific point, opens the gripper there, picks up an object and places it back on the other side of the table.
Simple manual guidance
Thanks to a mixture of hand guidance and an intuitive user interface, I succeeded after just a few minutes. I grasped the "head" of the Yu 5 Industrial, positioned it directly above the object to be gripped, and saved my first position.
All it took was a quick click in the user interface. I then moved the head further down until it was just a few millimeters above the object and saved the position. Then I closed the gripper and saved the action again. To guarantee that the object was picked up straight, I had it lifted at a 90° angle.
I then moved the robot arm to the other side of the table and repeated the movement in a mirrored sequence. I had programmed my first simple machine loading task - in less than 5 minutes.
We then learned about the blending function, which further optimizes the process. Instead of moving to the various positions individually and stopping each time as soon as the position is reached, the robot optimizes the paths independently, creates smooth transitions and moves directly to the position (see image below).
Recognition through AgileTags
We were then shown the AgileTags. AgileTags are QR-codes that refer to a coordinate system that the robot uses for orientation. They act as reference points for a designated workspace and refer to important information about an object or task.
In the next task, we took a closer look at the robot's intelligent 2D camera. To do this, I placed the AgileTag in the robot's field of vision, which immediately recognized the QR-code. I then saved the desired motion sequence. By using the AgileTag, all subsequent actions are saved relative to the AgileTag.
As the Yu 5 Industrial recognizes its own position in relation to the coordinate system, I could now freely maneuver the lightweight robot. Regardless of the starting position, it recognized the objects to be gripped independently and carried out the task reliably.
The added value is obvious: the AgileTags give the Yu 5 Industrial a high degree of flexibility. They allow both the robot and the workspace to be positioned almost anywhere. This means that the robot can be used at different stations, while the workspace no longer has to follow a predictable pattern. The latter is particularly advantageous for loose parts such as screws.
Intelligent sorting
The Yu 5 Industrial's smart camera is also able to classify objects by texture or color. This is particularly useful for quality inspection or sorting tasks.
As part of the training, we were given three different colored blocks to place in three different boxes. This process also began with me training the robot independently. To do this, I alternately placed the blocks in the robot's field of vision, classified the color and took several pictures. After a few photos, which I took in less than 20 seconds, the robot knew that it was looking at a green block. I then classified the other two colors the same way.
Then I started to program and save the movement sequence: the robot looks at the blocks, classifies them, picks up the desired block and places it in the box provided. Without delay, all the building blocks were in the right boxes.
My training partner and I were also able to complete this task in just a few minutes. Less than 2 hours had passed since the start of the training, and we had already gained a comprehensive understanding of the robot and its user interface.
Programming with Python
Even those who favor direct code access over the intuitive user interface are taken care of, since the Yu 5 Industrial can also be programmed via Python. This option offers even more in-depth programming options for the user.
As already mentioned, I have no previous programming knowledge. Thanks to detailed instructions and various example commands, I was still able to use Python. I simply copied the necessary commands out of the skill library, adjusted the variables, and tried out various things. In the end, the robot picked up the right object and placed it in the designated position.
At the end of the day, I was able to program several tasks independently, even though I don't know any programming language. Thanks to the user-friendly interface, I was able to do this in just a few minutes.
My conclusion
I did not become a programmer during the course - but the intuitive use of the Yu 5 Industrial proved that it wasn't necessary either.
By the end of the course, I had successfully programmed and executed several industrial applications. Both the pick and place and the sorting tasks can also be found in industrial production.
What I learned in a very short time can help to relieve existing employees in production, fill permanently unoccupied positions and generally increase productivity.
If I can program a robot, so can you.
Find out more about our robotic solutions or contact or our experts for a quote.