The rapid development and wide application of computer technology have led to the rapid development of industrial robots. With the increasing integration of industrial robot controllers, discrete electronic and electrical components have been gradually replaced by more integrated programmable logic devices. This is of great benefit to the production cost, maintenance cost, stability and reliability of industrial robot controller. In this paper, some applications of FPGA in industrial robot controller are introduced in detail. Field Programmable Gate Array (FPGA), or field programmable gate array, is very flexible to achieve specific hardware logic functions, and can handle many different tasks in real time in parallel. Compared with processors such as ARM platform and x86 platform, it achieves real multi-task real-time processing, instead of using processor’s real-time operating system to process multiple tasks in time-sharing. There are abundant wiring resources, basic programmable logic units, embedded dedicated IP, embedded RAM blocks and embedded processors in the FPGA. These abundant resources enable the FPGA to handle different kinds of tasks at the same time, making the implementation of tasks more flexible and meeting the timing requirements of some high-speed interfaces. These key characteristics provide necessary preconditions for the application of FPGA in industrial robot controller.
The basic architecture of industrial robot controller generally includes: controller core processing unit, controller logic processing unit, controller teaching terminal, driver communication module and external interface. Controller Core Processing Unit: Responsible for the core control of the robot, thermostatic element such as assigning tasks, trajectory planning, human-computer interface interaction, logic unit management and external communication interface implementation. Usually implemented by the processor of ARM platform or x86 platform, and can provide very flexible and humanized upper application and interface. For example, Ethernet interface, EtherCat interface, DeviceNet interface, serial port, USB and VGA interface, etc. It is the core of the realization of the basic functions of industrial robots.
Controller Logic Processing Unit: Responsible for electrical IO and communication interface functions. For example, man-machine interface, limit signal, drive of contactor coil, execution and detection of loosening brake of motor, detection of emergency stop and safety door, temperature control management of control cabinet, storage of specific information, monitoring and recording of robot operation status, processing of safety IO and information interaction with core unit of controller. It is usually implemented by PLC or FPGA.
Compared with PLC, FPGA is much more flexible. This paper will introduce the basic logic principle of realizing the above functions by FPGA. Controller teaching terminal: In charge of field operators to teach the action of the robot, usually a new production line only needs to teach the robot once. The purpose of teaching is to enable the robot to remember every trajectory point that needs to move, and to execute the coordinates of the trajectory points in the specified order.
Driver communication module and external interface: responsible for sending the corresponding instructions to the driver, driving the robot to perform the preset actions, and through the external interface with other robots in the field. The main application of the FPGA is the logic processing unit of the controller in the industrial robot controller, which completes all the functions of the unit with the cooperation of the external executing parts and sensors.
Following is a description of the implementation of some functions one by one. Human-computer interaction interface: This function mainly completes the buttons, switches and indicator lights on the control cabinet. The user’s button request is filtered and de-jittered, and the corresponding light reminder is given when the appropriate trigger condition is generated. Limit signal: Limit is the protective measure of the actuator in the process of robot movement.
When the motion of the actuator is abnormal due to the abnormal operation of the core processing unit of the controller, it may make the actuator move to the maximum displacement without stopping. This will seriously damage the executive parts and even cause casualties. Therefore, the limit signal plays an important role in the safe operation of the robot. The application of FPGA in this area can monitor IO jump of multi-channel limit signal at the same time, and capture the state of any one-way limit signal almost without delay without considering jitter removal.
If the limit signal is triggered, the operation of the executing parts can be stopped in time according to the preset logic to ensure the safety of equipment and personnel. At the same time, the limit state is uploaded to the core processing unit of the controller. The time spent on monitoring limit signals and stopping execution components of the FPGA is much less than that needed by the processor to achieve the same function, which guarantees the safety of the robot execution devices better. Execution and detection of the loosening brake of the motor: the starting of the motor follows the order of power-on of the driver and re-movement of the loosening brake; the stopping of the motor follows the order of power-down of the loosening brake and re-drive. During the operation of the motor, the lock should be in the state of loosening, and during the period when the motor stops, the lock should be in the state of holding.
Otherwise, the rotation of the driving motor during the lock-in period will greatly reduce the life of the motor or even directly damage it. Unlocked during the stop of the motor will cause the robot to act due to gravity, which may cause casualties and very dangerous. A very short execution and detection time can be obtained by using FPGA to drive the brake actuator and detect the execution of the actuator. When the motor is about to move, the brake is released and the brake is locked when the motor stops. Communication interface: The communication interface includes communication with the core unit of the controller and with external devices. Communication with the core unit of the controller usually adopts the mode of inter-board communication such as ISA bus, PCI bus or inter-board communication such as ethernet, RS485, etc.
FPGA can directly implement the underlying protocol or driver protocol of communication, which saves the cost of some protocol chips for the system.
Because the communication is implemented in the chip of the FPGA, the bandwidth and real-time performance of the communication are also improved. Industrial robots need high precision, fast reaction time and high safety factor in application. These high standards are almost inseparable from high-speed signal processing and sensor technology. And the FPGA is very suitable for this multi-task and high real-time application. To be able to perceive and act in the shortest possible time when danger is imminent to stop the current dangerous process. FPGA is also being used in machine vision, artificial intelligence and other fields, which will provide more means for the further “intelligent” of robots. The application of FPGA in industrial robot industry will become more and more popular and play an irreplaceable role.