We now start the second half of the book, where it is finally time to put in practice all the math we learned in the previous chapters and build a control system for the robot. We divide the task in two main parts: the software architecture and the hardware electronics design. We talk about the software in this section and leave the hardware to the last part of the book.
Firmware: This is the core control system of the robot. It is where all the complex calculations for kinematics and dynamics take place and where the operator’s commands are transformed into actual robot’s movements. Writing the firmware is the most challenging task for a robotics developer.
Calibration: The firmware is developed as a generic piece of software and must always be parameterized and tuned to the specific robot it is controlling. This operation is called calibration and is usually performed by the robot’s manufacturer before shipping the robot to the end user.
Commissioning: Robots are versatile machines that can perform a number of different tasks. As a consequence, there are quite a few parameters and functions that need to be adjusted according to the concrete application the robot is going to work on. This operation is typically performed by the robot’s operator.
Simulation: A digital twin is a helpful companion to each deployed robot for a number of reasons: mechanical and electrical sizing during the design phase; rough pre-tuning during the commissioning phase; and offline programming, remote monitoring, and control during the application phase. All robot manufacturers develop and distribute digital twins for their robots.
Machine vision: While vision is not technically required to drive an industrial robot, the number of applications where vision-related functions find place is increasing all the time. The addition of an electronic eye gives the robot much more flexibility and awareness of its surroundings, with significant improvements in output quality, productivity, and safety.
The number of people and companies involved in the software development for a robot can vary greatly. Large robot manufacturers employ entire teams of engineers to develop their own control systems (though more often firmware than hardware), provide commissioning service, and typically also use their own robots in their production facilities.
On the other hand, small robot manufacturers tend to outsource most of the work: they build the mechanics, but they purchase control systems from automation providers (both firmware and hardware) and use system integrators to commission their robots to end users.
Ideally, you should learn to do it all by yourself: build a robot, design its electronics controller, and write the driving software. That will give you a more interdisciplinary understanding of the entire system and will make your skills much more marketable.
35.170.81.33