The above classification is based on the application object. In addition, there are more general-purpose motion controllers on the market, that is, those that control non-standard equipment.
1 Controller underlying scheme
1.1 Robotic Arm
The controller of the robotic arm has developed earlier and is relatively mature. Let’s take a look at the underlying solutions of the existing control system.
1.2 Mobile Robot Class
The controller of mobile robots belongs to a relatively new direction. Industrial mobile robots are in the form of AGV, unmanned construction machinery, etc. The underlying scheme of the control system is as follows:
1.3 Comparison
Robotic arms have high requirements on accuracy and motion stability, so they have a large amount of calculation and a short cycle, which is generally 1 to 2 orders of magnitude higher than that of mobile robots.Mobile robots generally do not require high synchronization accuracy, and their configuration is relatively low.
The robotic arm generally works in a fixed area, and its controller is usually placed in the chassis, so the protection level is not high, generally IP20.
Because mobile robots need to move frequently, especially outdoor construction machinery, waterproof and dustproof should be considered, and their protection level is relatively high, generally IP67.
2 Introduction to CoDeSys
2.1 Composition of CoDeSys
You will find that a lot of Robot control software is realized with the help of CoDeSys, so what is CoDeSys?
CoDeSys is a paid soft PLC development software. In short, it consists of two parts:Development System and Runtime System.Development System is the software interface used for programming (like Visual Studio, Eclipse and other software, also known as IDE),Designing, debugging, and compiling PLC programs are all carried out in the IDE, and this part is often dealt with by users;
After the PLC program is written, it is necessary to transfer it to the hardware device to run.But the PLC program generated at this time cannot be run by itself, and it can only work in a certain software environment. This environment is the Runtime System, and this part is invisible to the user.
The installation locations of the two are usually different. The IDE is generally installed on the development computer, and the Runtime System is located on the controlling hardware device. The two are generally connected by a network cable, and the program is downloaded to the Runtime through the network cable to run.
CoDeSys is not well-known in China, but has a long-standing reputation in Europe, especially in the field of industrial control. Many of the robot companies we mentioned above use its products, such as KEBA, Beckhoff, Gogo, and almost all mobile robot controller manufacturers.
The 3S company that designed CoDeSys only sells software, not hardware.The hardware circuit needs to be designed by the user, and 3S is responsible for transplanting the Runtime System to the customer’s hardware.The Runtime System can run naked on the hardware, but generally it runs on the operating system, and configuring the operating system is also the customer’s job.
If the customer requests, the IDE of CoDeSys can be customized and replaced with the customer’s logo and appearance, which is why you will find that the development platforms of different manufacturers look different, but the styles are relatively similar.
Of course, users can also use other IDEs. For example, Beckhoff uses Microsoft’s Visual Studio, while the compiler and other cores and function libraries behind it still use the CoDeSys solution.
The Runtime of CoDeSys has strong adaptability and supports most operating systems and hardware chip architectures.
2.2 Principle of CoDeSys Runtime
The IDE part of CoDeSys is free, and you can download the experience from its official website.The real charge is the Runtime System.
At the beginning of the design, CoDeSys divided the functions into several component modules, such as bus protocol stack, visual interface, motion control, safety control, etc. Users can purchase the necessary modules like building blocks to build their own system, and finally form a customized An integrated control software platform.
Some users who are new to soft PLC may be unfamiliar with this part, but in fact this design method is very common.To name a few, MATLAB SimulInk’s real-time toolbox (Real-Time) is just such a way of working, the user in SimulIn the graphical interface of ink, the control program is designed by dragging and dropping, and then downloaded to the real hardware to run, you can learn about it here.
There is also a way of using Beckhoff. Users program in the TwinCAT IDE, and then download it to the Beckhoff controller. In fact, a Runtime has been pre-installed in the controller.Siemens’ STEP7 is also an IDE, and there is also a supporting Runtime in its PLC.
The PLC program written by the user is like the application program in our computer, it runs on the Runtime System, and the Runtime System runs on the operating system.
The Runtime System sits between the application and the operating system.So it can be called middleware (Middleware).In the robot software, there are ROS, OROCOS (Real-Time Toolkit) and so on in the same position.
control of robots, likeCNC machineIn the same way, there are requirements for real-time performance, so the operating system we choose is preferably a real-time operating system (RTOS).Sadly, none of the operating systems we often use are real-time, such as Windows and Linux.But fortunately, someone revamped them by adding live patches.
Common real-time operating systems are:VxWorks, QNX, Windows RTX, Xenomai, RT Linux, Linux RTAI, WinCE, μC/OS, SylixOs, and more.Considering that there are many users of the two operating systems, Windows and Linux, CoDeSys has launched the corresponding real-time patch (RTE) to save users the trouble of transformation.
2.3 Disadvantages of CoDeSys
CoDeSys brings convenience for us to develop controllers and saves the trouble of starting from scratch, but there are also many disadvantages to relying on commercial software such as CoDeSys to develop our own controller products:
1) The underlying algorithm is not public
The motion control components and bus protocol stacks integrated by CoDeSys are all packaged, and users cannot understand their internal details, nor can they customize and optimize them for their specific needs, but can only simply call them.Users can only rely on the CoDeSys platform, and it is difficult to form their own core technology.
2) Limited functions and difficult to expand
Nowadays, new technologies represented by machine vision, artificial intelligence, and autonomous driving are advancing by leaps and bounds, while many technologies in industrial control are still stuck 20 years ago.Taking the navigation scene in the mobile robot as an example, the navigation method based on vision or laser needs to collect a large amount of data and process it, which involves quite a lot of matrix calculations.
The Links: SGDS-08A12A 3HAC037682-001