NL2026115B1 - Ethercat-based control system for high efficiency and real-time performance of single leg of robot - Google Patents

Ethercat-based control system for high efficiency and real-time performance of single leg of robot Download PDF

Info

Publication number
NL2026115B1
NL2026115B1 NL2026115A NL2026115A NL2026115B1 NL 2026115 B1 NL2026115 B1 NL 2026115B1 NL 2026115 A NL2026115 A NL 2026115A NL 2026115 A NL2026115 A NL 2026115A NL 2026115 B1 NL2026115 B1 NL 2026115B1
Authority
NL
Netherlands
Prior art keywords
ethercat
robot
master
real
leg
Prior art date
Application number
NL2026115A
Other languages
Dutch (nl)
Other versions
NL2026115A (en
Inventor
Chai Hui
Zhou Lelai
Shao Shuai
Li Tianfa
Rong Xuewen
Li Yibin
Original Assignee
Univ Shandong
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Univ Shandong filed Critical Univ Shandong
Publication of NL2026115A publication Critical patent/NL2026115A/en
Application granted granted Critical
Publication of NL2026115B1 publication Critical patent/NL2026115B1/en

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62DMOTOR VEHICLES; TRAILERS
    • B62D57/00Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track
    • B62D57/02Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members
    • B62D57/032Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members with alternately or sequentially lifted supporting base and legs; with alternately or sequentially lifted feet or skid
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25257Microcontroller
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40403Master for walk through, slave uses data for motion control and simulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

An Ethernet for control automation technology (EtherCAT)-b ased control system for high efficiency and real-time performance of a single leg of a robot includes: a host 5 computer, an industrial computer, drives, and encoders, where the industrial computer and the host computer transmit data through a network, the industrial computer serves as a master and is connected to the drives through EtherCAT buses, the drives serve as slaves and are connected to the encoders, the industrial computer runs a control algorithm to obtain an output torque of each joint of the legged robot, convert it into a 10 current value, and transmit the current value to the drives through EtherCAT, and the drives implement the output torque through a built-in current loop to drive a single leg to move. According to the present invention, in a synchronization mode, the single-leg forward jump algorithm is run. The single-leg robot has good real-time performance and flexibility. A bus topology and a ring structure are used in the single-leg robot, 15 which reduces compleX hardware wiring, ensures the real-time performance and reliability of the control system for the electrically-driven single-leg robot, and improves the control stability and precision.

Description

-1- ETHERCAT-BASED CONTROL SYSTEM FOR HIGH EFFICIENCY AND REAL-TIME PERFORMANCE OF SINGLE LEG OF ROBOT
TECHNICAL FIELD The present invention relates to an Ethernet for control automation technology (EtherCAT)-based control system for high efficiency and real-time performance of a single leg of an electrically-driven legged robot, and pertains to the fields of industrial Ethernet and quadruped robot control.
BACKGROUND EtherCAT is a real-time industrial Ethernet technology that has been widely used in many fields in recent years.
In the field of legged robots, the build-up of real-time control systems has always been a core issue. At present, there are many real-time system solutions. For example, MIT's Cheetah 2 uses a real-time system based on the RS-422 controller provided by NI, and ETH Zurich's StarlETH uses a real-time system based on the ROS robot system. Some companies adopt their mature solutions or build up real-time systems based on the robot system. However, without professional real-time systems, the electrically-driven legged robots only show moderate real-time performance, and some aspects still need to be improved.
To complete various complex tasks, a legged robot requires more sensors and joint drives. This requires the system to synchronously obtain information of the sensors of the robot and send control information to each drive of the robot. Boston Dynamics’ BigDog robot, for example, has as many as 69 sensors. A multi-DOF legged robot control system needs to have real-time control capability to achieve ideal motion performance.
In terms of the non-real-time communication problem of legged robots, there is a growing trend of applying the EtherCAT communication technology to control systems. The existing legged robot control systems mostly use CAN buses or RS485 buses. Despite the stable communication and good anti-interference performance, these buses cannot meet the real-time and reliability requirements of the control systems. In addition, the CAN buses and RS485 buses have poor scalability and complex wiring. Compared with the traditional Ethernet packet transmission method, EtherCAT does
2.
not need to receive Ethernet packets, but directly decodes and copies the packets to each device, which minimizes the delay to microseconds and greatly improves the transmission efficiency. EtherCAT achieves a high data compression by using one Ethernet frame for multiple pieces of device data. Compared with the ordinary 100 MBit/s Ethernet, EtherCAT can obtain an effective data rate greater than 2 x 100 MBit/s x 90% with full duplex mode. All communications can be completed by using a controller in a slave of EtherCAT. With a fast communication speed and a short underlying response time, EtherCAT removes the communication bottlenecks of traditional field bus systems and can greatly improve the system performance.
EtherCAT has great advantages in topology, clock synchronization, data transmission speed, and construction cost. It also supports linear nodes and redundant cables. EtherCAT supports almost all topology structures, including tree, star, and bus topologies. The EtherCAT bus protocol can reduce the number of cables and improve the anti-interference capability.
At present, more and more EtherCAT-based robot control systems have been invented. For example, Chinese patent CN108942932A discloses an industrial robot control system and method based on EtherCAT bus. In this system, an integrated controller is used as a master, including a CoDeSys control module and a dynamic link library. A motion module and a bus I/O module share the EtherCAT bus, which reduces the control cost. Chinese patent CN108687776A discloses a robot control system, in which communication is implemented through the EtherCAT bus. A master sends a control command to a slave through the EtherCAT bus according to feedback information. The slave receives the command and controls a mechanical axis module to work according to the command. This reduces hardware connections and improves the real-time performance of the control system.
The existing electrically-driven legged robots still have the following key issues: higher requirements on the real-time performance, response speed, and communication bandwidth of the control system; lack of the real real-time systems; and relatively poor anti-interference capability.
SUMMARY The present invention provides an EtherCAT-based control system for high efficiency and real-time performance of a single leg of a robot to solve the insufficient
-3- real-time performance and efficiency of the existing electrically-driven legged robot control systems.
The EtherCAT-based control system for high efficiency and real-time performance of a single leg of a robot according to the present invention adopts the following solution: The control system includes a host computer, an industrial computer, drives, and encoders. The industrial computer and the host computer transmit data through a network. The industrial computer serves as a master and is connected to the drivers through EtherCAT buses. The drives serve as slaves and are connected to the encoders.
The drives include a thigh drive and a shank drive. The thigh drive and the shank drive serve as a first slave and a second slave, respectively. A thigh joint motor and a shank Joint motor of a robot are respectively connected to the thigh drive and the shank drive. Encoders are installed on the thigh joint motor and the shank joint motor, and are connected to the drives through signal lines. The industrial computer runs a control algorithm to obtain an output torque of each joint of the legged robot, converts it into a current value, and transmits the current value to the drive through EtherCAT. The drive implements the output torque through a built-in current loop to drive the single leg to move.
The industrial computer as the master sends control information to the slave (drive). The information is transmitted to the first slave as an Ethernet frame. The first slave (thigh drive) extracts data from a data frame or inserts data into the data frame, and then transmits the frame to the second slave (shank drive). The second slave sends back the processed data frame, and the first slave transmits the processed data frame to the master (industrial computer) as a response. To build a network topology for an electrically-driven quadruped robot, more slaves can be added, and a bus topology and aring structure can be used.
The drive is configured to convert the control information into a drive motor command to control a position and a torque of the motor, convert a joint angle of the motor into position information, perform analog-to-digital conversion on the torque, and send the torque to the master.
The master uses QNX real-time operating system, and implements a master protocol stack in the real-time operating system. The slave uses torque servo control,
-4- and implements single-leg compliance control and forward jump algorithms through the built-in current loop.
The encoder is configured to detect an angular displacement of the joint motor, a pulse quantity and a reduction ratio of a joint reducer are measured by the encoder, and rotation angles of the joints are calculated. The drive obtains the pulse quantity uploaded by the encoder, and then uploads a filtered pulse value to the industrial computer. In the control algorithm, a foot position in a base coordinate system is calculated according to positive kinematics, and an instantaneous speed is calculated based on a known control frequency.
The industrial computer and the host computer transmit data over TCP/IP. The host computer provides a human-robot interaction interface. During the movement of the robot, a user can send a control command to the robot through the host computer, such as forward or jump.
The EtherCAT communication system architecture is as follows: By binding a real-time core, a periodic thread of the master reaches a level of an external hard timer. A synchronization mode is enabled, to transmit periodic data through a process image, and call the control algorithm in a master cycle. A log thread is enabled to store experimental data to a disk. Template metaprogramming is used to add, save, and output error information of the robot. Mailbox CoE is used to access an object dictionary and its objects for initialization. The control algorithm includes the single- leg compliance control and forward jump algorithms.
In the synchronization mode, all tasks that require hard real-time performance need to be completed in a process image periodic update thread, with the highest priority, and process image update 1s completed in a periodic thread of the master. In the process image periodic update thread, the jump control algorithm is implemented by calling a process task (callback function) in each master cycle. Process image data 1s written and read through an active buffer and a shadow buffer, avoiding a conflict between a main program and the control algorithm. Through frame scheduling and NIC driver modules, data is read and written between the master and the EtherCAT bus. When the master needs to read or write data, the process task calls a start read/write function to copy data from the shadow buffer to the active buffer. Before the periodic update of the master, the buffer keeps original data. When a read/write complete function is called, the active buffer is ready to send the data to the bus. When
-5- the periodic update time of the master is reached, the updated data of the active buffer is copied to the shadow buffer. The shadow buffer completes data exchange between the master and the EtherCAT bus. Update is performed when the periodic update time is reached.
Like the periodic thread of the master, a mailbox update thread is also implemented through a timer-based semaphore atomic operation. This thread has a lower priority than PI update. In the present invention, mailbox CoE is used to access the object dictionary and its objects for initialization, A CoE read/write operation is performed, a torque operation mode is set to 0x04, and control words 0x0006, 0x0007, and Ox000F are set in sequence to complete motor enable.
The log thread is used to record the experimental data, store the data in a disk file, store data types in a queue according to the first-in first-out principle through template metaprogramming, and sequentially add error information of the robot during the experiment to the disk file.
The control algorithm is a compliant algorithm based on a virtual model and joint force control, to realize single-leg forward jump and flexible control. Through virtual model creation, the robot's foot 1s virtualized into a stiffness-damping system along a direction of a trunk coordinate system, to obtain a calculation formula of the foot force: f= kPa — P)- Ka ‘Bs In the above formula, a position of the foot is obtained from the joint angle through the positive kinematics of the single leg, P, is a true position, P is an expected position, k, is the stiffness, and k is the damping.
An expected torque of each joint is obtained according to the following formula: r={JY¥f , where f is the foot force, and WT is the transpose of a Jacobian matrix.
The expected torque is converted into a current value and transferred to the drive through EtherCAT. The drive enables the motor to output the given torque through the built-in current loop. If it is detected that the robot's foot touches the ground, a control model changes from a spring-damper model to a spring-mass model, and the foot force in the fall and rise phases is as follows:
-6- fi = k{Py— FB) fay = kPa P)-Mg The foregoing formulas are calculation formulas after a mass is added, Mg is the gravity of the mass, and f(z) is the foot force in a vertical direction.
To make the leg jump forward, a forward position is given during the rise phase of the leg. During the forward jump, a state during the landing bounce 1s determined based on a speed of the body, and the stiffness and damping of the corresponding phase are changed.
In the present invention, a master cycle reaches the level of the external hard timer, achieving high real-time performance of the control system. In the synchronization mode, the single-leg forward jump algorithm is run. Experimental results show that the single-leg robot has good real-time performance and compliance performance. The control system according to the present invention has a flexible and efficient network topology. The bus topology and the ring structure are used in the single-leg robot, which reduces complex hardware wiring, ensures the real-time performance and reliability of the control system for the electrically-driven single-leg robot, and improves the control stability and precision.
BRIEF DESCRIPTION OF DRAWINGS FIG. 11s a network topology diagram of an electrically-driven legged robot system according to the present invention. FIG. 2 is a block diagram of an electrically-driven single-leg control system according to the present invention. FIG. 3 is an architecture block diagram of an EtherCAT master. FIG. 4 is a schematic diagram of an operation mode of an EtherC AT master. FIG. 5 is an input process mapping diagram of a master. FIG. 6 is an initialization flowchart of a master. FIG. 7 is a schematic diagram of kinematics modeling for a single-leg structure of an electrically-driven legged robot.
DETAILED DESCRIPTION
-7- An EtherCAT-based electrically-driven single-leg robot in the present invention has two slaves. More slaves can be added to build a network topology of a quadruped robot, as shown in FIG. 1. An EtherCAT network has a bus topology in a ring structure, where one cable has two channels to implement full-duplex mode. Each device has two communication channels to achieve cable redundancy, and only requires one Ethernet interface. Channel switching can be implemented through hot swapping. An industrial computer using QNX real-time operating system serves as a master, and Elmo DC servo drives serve as slaves. The Elmo drives are connected to the industrial computer through the ring structure.
The control system for high efficiency and real-time performance of a single leg of a robot according to the present invention is based on EtherCAT. As shown in FIG. 2, the control system includes a host computer, an EtherCAT master, EtherCAT slaves, encoders, and motors. An industrial computer and the host computer transmit data over TCP/IP. The industrial computer serves as the EtherCAT master, and drives serve as the EtherCAT slaves. The industrial computer and the drives are connected through EtherCAT buses to transmit information. The encoders are connected to the drives through signal lines, and fixed at the thigh and shank joint motors of the robot. The host computer provides a human-robot interaction interface. During the movement of the robot, a user can send a control command to the robot through the host computer, such as forward or jump.
The drives include a thigh drive and a shank drive. The thigh drive and the shank drive serve as a first slave and a second slave, respectively. The thigh joint motor and the lower joint motor of the robot are respectively connected to the thigh drive and the shank drive. An encoder is installed on each of the thigh joint motor and the shank joint motor.
The encoder is a Renishaw's relative encoder with an accuracy of 8192, that is, the encoder collects 8192 pulses per motor revolution. The encoder has the advantages of high accuracy and small size, and is very suitable for motor angle detection. Based on a pulse quantity detected by the encoder, rotation angles 84, 8, of joints can be obtained according to the following formula: RE * 2TT * De, where Ni is the pulse quantity detected by the encoder, and De is a reduction ratio of a reducer. In a control algorithm, a foot position in a base coordinate system is calculated according to
-8- positive kinematics, and an instantaneous speed 1s calculated based on a known control frequency.
An EtherCAT-based system architecture is implemented through C++ programming language. The master uses QNX microkernel real-time operating system, and implements a master protocol stack in the real-time operating system. The slave uses torque servo control and controls a torque through a built-in current loop, to implement single-leg compliance control and forward jump algorithms. By binding a real-time core, a periodic thread of the master (industrial computer) reaches a level of an external hard timer. A synchronization mode is enabled, to transmit periodic data through a process image, and call the control algorithm in a master cycle. A log thread is enabled to store experimental data to a disk. Template metaprogramming is used to add, save, and output error information of the robot. Mailbox CoE is used to access an object dictionary and its objects for initialization. The control algorithm includes single-leg compliance control and forward jump algorithms.
As the slave, the drive uses the prior-art torque servo control and controls the torque through the built-in current loop, to implement the single-leg compliance control and forward jump algorithms. The industrial computer runs the control algorithm in the present invention, to obtain an output torque of each joint of the legged robot, convert it into a current value, and transmit it to the drive through EtherCAT. The drive enables the motor to output the given torque through the built-in current loop.
As the master, the industrial computer uses QNX6.5 microkernel real-time operating system. The real-time operating system features hard real-time performance, high priority, thread preemption, and extremely short interrupt response time and context switching time. It can minimize the response time through embedded hardware. Kontron's embedded quad-core industrial computer is used, with a main frequency up to 2.90 GHz. The Intel® Core processors are used. Through binding of real-time cores, four cores and four threads are implemented, preventing process preemption and interference from external interrupts. The industrial computer supports DDR3L memory, with 3xGb/s Ethernet interfaces, two Intel I210-AT Ethernet controllers that can quickly realize EtherCAT communication, and Intel 1218-LM Gigabit network cards. FIG. 3 shows a framework of the master. The master protocol stack is implemented in the QNX real-time operating system. The industrial computer
29.
as the master sends control information to the drive. The information is transmitted to the first slave as an Ethernet frame. The slave extracts data from a data frame or inserts data into the data frame, and then transmits the frame to the next slave. In this way, the frame 1s transmitted to a last slave. The last slave sends back the processed data frame, which is ultimately transferred by the first slave to the master as a response. To build a network topology for an electrically-driven quadruped robot, more slaves can be added, and a bus topology and a ring structure can be used.
For a periodic thread of the master, QNX is used to ensure the stability of the timer. The timer of the QNX system can reach the ns level. In the present invention, to meet the experiment requirements, a semaphore atomic operation is performed to set the timer to 1 ms as the master cycle. For optimization purpose, the periodic thread of the master is bound to CPU3, and finally the external hard timer level is reached.
In the synchronization mode, all tasks that require hard real-time performance need to be completed in a process image periodic update thread, with the highest priority, and process image update is completed in the periodic thread of the master, as shown in FIG. 4. In the process image periodic update thread, the jump control algorithm is implemented by calling a process task (callback function) in each master cycle. Process image data is written and read through an active buffer and a shadow buffer, avoiding a conflict between a main program and the control algorithm. Through frame scheduling and NIC driver modules, data is read and written between the master and the EtherCAT bus. When the master needs to read or write data, a process task calls a start read/write function to copy data from the shadow buffer to the active buffer. Before the periodic update of the master, the buffer keeps original data. When a read/write complete function is called, the active buffer is ready to send the data to the bus. When the periodic update time of the master 1s reached, the updated data of the active buffer 1s copied to the shadow buffer. The shadow buffer completes data exchange between the master and the EtherCAT bus. Update is performed when the periodic update time is reached. FIG. 5 shows master-input process data mapping modified on the host computer.
Like the periodic thread of the master, a mailbox update thread is also implemented through a timer-based semaphore atomic operation. This thread has a lower priority than PI update. In the present invention, mailbox CoE is used to access the object dictionary and its objects for initialization. A CoE read/write operation is
-10 - performed, a torque operation mode is set to 0x04, and control words 0x0006, 0x0007, and OxO00F are set in sequence to complete motor enable.
The log thread is bound to CPUO and separately encapsulated as a class. The log thread is used to record experimental data and store the data in a disk file. Data types are stored in a queue according to the first-in first-out principle through template metaprogramming, and error information of the robot during the experiment is sequentially added to the disk file.
The industrial computer and the host computer transmit data over TCP/IP. The master and the slaves are configured by using host computer software. An ESL file of the slave is loaded, PDO mapping and parameters of the master and slaves, such as the master cycle and mailbox update cycle, are modified. Then an XML file is exported, which includes configuration information of the entire EtherCAT network and is loaded when the master protocol stack runs. Then a .h file is exported, which includes macro definitions of all configured process data, and can be used for programming of the master protocol stack. FIG. 6 is an initialization flowchart of the master.
An EtherCAT-based system architecture is implemented through C++ programming language. An industrial computer with embedded quad-cores is used as the master. It adopts QNX micro-kernel system, and implements four cores and four threads by binding the real-time core. The master uses the synchronization mode to enable the electrically-driven single-leg robot to complete complex hard real-time tasks, and implement the single-leg compliance control and forward jump algorithms. The experiment has been successfully completed on an electrically-driven single-leg robot experiment platform. The experiment shows that the control system implements efficient and real-time communication and a feasible network topology, which reduces hardware wiring and greatly improves system performance.
The control algorithm in the present invention is called in the synchronization mode, and is a compliant algorithm based on a virtual model and joint force control. The algorithm realizes single-leg forward jump. FIG. 7 shows a single-leg structure of an electrically-driven quadruped robot. In the present invention, through virtual model creation, the robot's foot is virtualized into a stiffness-damping system along a direction of a trunk coordinate system, to obtain a calculation formula of the foot force f of a single leg: f= k(Pa- B)- ka Br
S11 - In the above formula, a position of the foot is obtained from a joint angle through the positive kinematics of the single leg, P. is a true position, P is an expected position, k, is the stiffness, and kg is the damping.
An expected torque of each joint is obtained according to the following formula: r={JT fF where f is the foot force, and WY is the transpose of a Jacobian matrix.
The expected torque is converted into a current value and transferred to the drive through EtherCAT. The drive enables the motor to output the given torque through the built-in current loop. If it is detected that the robot's foot touches the ground, a control model changes from a spring-damper model to a spring-mass model, and the foot force in the fall and rise phases is as follows: fiz = kPa FB) fi = ks(Pa - P) — Mg The foregoing formulas are calculation formulas after a mass is added. Mg is the gravity of the mass, and f(z) is the foot force in a z-axis of the base coordinate system.
To make the leg jump forward, a forward position is given during the rise phase of the leg. During the forward jump, a state during the landing bounce is determined based on a speed of the body, and the stiffness and damping of the corresponding phase are changed.
The foregoing control algorithm mainly realizes the compliant control of the forward jump of the electrically-driven single-leg robot. The results on the experiment platform show that after the foregoing algorithm is used, the single-leg robot has good compliance performance, and the real-time performance and reliability of the control system are improved.

Claims (9)

S12 - Conclusies l. Ethernet voor een op besturingsautomatiseringstechnologie (“Ethernet for control automation technology”, EtherCAT) gebaseerd besturingssysteem voor hoge efficiéntie en real-time prestatie van een enkel been van een robot, dat het volgende omvat: een hostcomputer, een bedrijfscomputer, aandrijvingen en codeerapparaten, waarbij de bedrijfscomputer en de hostcomputer data via een netwerk uitzenden; waarbij de bedrijfscomputer als een meester dient en verbonden is met de aandrijvingen via EtherCAT-bussen; waarbij de aandrijvingen als slaven dienen en verbonden zijn met de codeerapparaten; waarbij de aandrijvingen elk een bovenbeenaandrijving en een onderbeenaandrijving omvatten, waarbij de bovenbeenaandrijving en de onderbeenaandrijving respectievelijk als een eerste slaaf en een tweede slaaf dienen; waarbij een bovenbeenverbindingsmotor en een onderbeenverbindingsmotor van de robot respectievelijk verbonden zijn met de bovenbeenaandrijving en de onderbeenaandrijving, waarbij de codeerapparaten op de bovenbeenverbindingsmotor en de onderbeenverbindingsmotor geïnstalleerd zijn, en met de aandrijvingen via signaallijnen verbonden zijn; waarbij de bedrijfscomputer een besturingsalgoritme draait om een uitvoerkoppel van elke verbinding van de van benen voorziene robot te verkrijgen, deze tot een stroomwaarde omzet, en de stroomwaarde naar de aandrijvingen via EtherCAT-communicatie uitzendt; en waarbij de aandrijvingen het uitvoerkoppel via een ingebouwde stroomlus implementeren om een enkel been tot beweging aan te drijven.S12 - Conclusions l. Ethernet for control automation technology (EtherCAT) based control system for high efficiency and real-time performance of a single leg of a robot, comprising: a host computer, a business computer, drives and encoders, wherein the corporate computer and the host computer broadcast data over a network; wherein the enterprise computer serves as a master and is connected to the drives via EtherCAT buses; wherein the drives are slaves and connected to the encoders; the drives each comprising an upper leg drive and a lower leg drive, the upper leg drive and the lower leg drive serving as a first slave and a second slave, respectively; wherein an upper leg link motor and a lower leg link motor of the robot are respectively connected to the upper leg drive and the lower leg drive, the encoders are installed on the upper leg link motor and the lower leg link motor, and are connected to the drives through signal lines; wherein the operating computer runs a control algorithm to obtain an output torque from each link of the legged robot, converts it to a current value, and transmits the current value to the drives via EtherCAT communication; and wherein the drives implement the output torque via a built-in current loop to drive a single leg into motion. 2. EtherCAT-gebaseerd besturingssysteem voor hoge efficiëntie en real-time prestatie van een enkel been van een robot volgens conclusie 1, waarbij de bedrijfscomputer als de meester besturingsinformatie verzendt naar de slaaf, waarbij de informatie uitgezonden wordt naar de eerste slaaf als een Ethernet-frame; waarbij de eerste slaaf data uit een dataframe extraheert of data in het dataframe invoegt, en vervolgens het frame naar de tweede slaaf uitzendt, waarbij de tweede slaaf het verwerkte dataframe terugzendt, en de eerste slaaf het verwerkte dataframe als reactie naar de meester uitzendt.The EtherCAT-based control system for high efficiency and real-time performance of a single leg of a robot according to claim 1, wherein the operating computer as the master sends control information to the slave, the information is broadcast to the first slave as an Ethernet frame; wherein the first slave extracts data from a data frame or inserts data into the data frame, and then transmits the frame to the second slave, the second slave returns the processed data frame, and the first slave transmits the processed data frame in response to the master. 3. EtherCAT-gebaseerd besturingssysteem voor hoge efficiëntie en real-time3. EtherCAT-based operating system for high efficiency and real-time S13 - prestatie van een enkel been van een robot volgens conclusie 1, waarbij de aandrijving geconfigureerd is om de besturingsinformatie om te zetten tot een aandrijvingsmotoropdracht om een positie en een koppel van de motor te besturen, een verbindingshoek van de motor tot positie-informatie om te zetten, analoog-naar- digitaalomzetting op het koppel uit te voeren en de koppel naar de meester te verzenden.S13 - robot single leg performance according to claim 1, wherein the drive is configured to convert the control information into a drive motor command to control a position and a torque of the motor, a connection angle of the motor to position information to convert, perform analog-to-digital conversion on the torque, and send the torque to the master. 4. EtherCAT-gebaseerd besturingssysteem voor hoge efficiëntie en real-time prestatie van een enkel been van een robot volgens conclusie 1, waarbij de meester een QNX-real-timebesturingssysteem gebruikt, en een meesterprotocolstapel in het real- time besturingssysteem implementeert, en waarbij de slaaf koppelservobesturing gebruikt, en compliantiebesturing en voorwaartsesprongalgoritmes voor een enkel been via een ingebouwde stroomlus implementeert.The EtherCAT-based operating system for high efficiency and real-time performance of a single leg of a robot according to claim 1, wherein the master uses a QNX real-time operating system, and implements a master protocol stack in the real-time operating system, and wherein the uses slave torque servo control, and implements single leg compliance control and forward jump algorithms via a built-in current loop. 5. EtherCAT-gebaseerd besturingssysteem voor hoge efficiéntie en real-time prestatie van een enkel been van een robot volgens conclusie 1, waarbij het codeerapparaat geconfigureerd is om een hoekverplaatsing van de verbindingsmotor te detecteren, waarbij een pulskwantiteit en een reductieverhouding van een verbindingsreductor gemeten worden door het codeerapparaat, en rotatiehoeken van de verbindingen berekend worden; en waarbij de aandrijving de pulskwantiteit verkrijgt die geüpload 1s door het codeerapparaat, en vervolgens een gefilterde puls naar de bedrijfscomputer uploadt.The EtherCAT-based control system for high efficiency and real-time performance of a single leg of a robot according to claim 1, wherein the encoder is configured to detect an angular displacement of the link motor, wherein a pulse quantity and a reduction ratio of a link reducer are measured. by the encoder, and rotational angles of the connections are calculated; and wherein the driver obtains the pulse quantity uploaded by the encoder, and then uploads a filtered pulse to the operating computer. 6. EtherCAT-gebaseerd besturingssysteem voor hoge efficiëntie en real-time prestatie van een enkel been van een robot volgens conclusie 1, waarbij een EtherCAT- communicatiesysteemarchitectuur als volgt 1s: door het binden van een real-time kern, bereikt een periodieke thread van de meester een niveau van een externe hard timer; waarbij een synchronisatiemodus ingeschakeld wordt, om periodieke data uit te zenden via een verwerkingsbeeld, en het besturingsalgoritme in een meestercy clus op te roepen; waarbij een log thread ingeschakeld wordt om experimentele data op te slaan op een schijf; waarbij sjabloonmetaprogrammering gebruikt wordt om foutinformatie van de robot toe te voegen, op te slaan en uit te voeren; waarbij Mailbox CoE gebruikt wordt om een objectwoordenboek en de objecten ervan voor initialisatie te benaderen; en waarbij het besturingsalgoritme compliantiebesturing en voorwaartsesprongalgoritmesThe EtherCAT-based operating system for high efficiency and real-time performance of a single leg of a robot according to claim 1, wherein an EtherCAT communication system architecture 1s as follows: by binding a real-time core, a periodic thread of the master a level from an external hard timer; wherein a synchronization mode is turned on, to transmit periodic data through a processing image, and call the control algorithm in a master cycle; enabling a log thread to store experimental data on a disk; using template metaprogramming to add, store and execute error information from the robot; where Mailbox CoE is used to access an object dictionary and its objects for initialization; and wherein the control algorithm is compliance control and forward jump algorithms -14- voor een enkel been omvat.-14- for a single leg includes. 7. EtherCAT-gebaseerd besturingssysteem voor hoge efficiéntie en real-time prestatie van een enkel been van een robot volgens conclusie 6, waarbij in de synchronisatiemodus alle taken die harde real-time prestatie vereisen, voltooid moeten worden in een verwerkingsbeeldperiodieke-bijwerkingsthread, met de hoogste prioriteit, en waarbij verwerkingsbeeldbijwerking voltooid wordt in een periodieke thread van de meester, waarbij in de verwerkingsbeeldperiodieke-bijwerkingsthread het sprongbesturingsalgoritme geïmplementeerd wordt door een verwerkingstaak op te roepen in elke meestercyclus; waarbij verwerkingsbeelddata via een actieve buffer en een schaduwbuffer geschreven en gelezen wordt, waarmee een conflict vermeden wordt tussen een hoofdprogramma en het besturingsalgoritme; waarbij via frameplanning en NIC-aandrijvingsmodules data gelezen en geschreven wordt tussen de meester en de EtherCAT-bus; waarbij de verwerkingstaak een lees-/schrijfstartfunctie oproept om data te kopiëren vanaf de schaduwbuffer naar de actieve buffer wanneer de meesterdata dient te lezen of te schrijven; waarbij vóór de periodieke bijwerking van de meester, de buffer originele data behoudt, waarbij de actieve buffer gereed is om data naar de bus te verzenden wanneer een lees-/schrijfvoltooifunctie opgeroepen wordt, waarbij de bijgewerkte data van de actieve buffer naar de schaduwbuffer gekopieerd wordt wanneer de periodieke-bijwerkingstijd van de meester bereikt is; waarbij de schaduwbuffer data- uitwisseling tussen de meester en de EtherCAT-bus voltooit; en waarbij bijwerking uitgevoerd wordt wanneer de periodieke-bijwerkingstijd bereikt wordt.The EtherCAT-based operating system for high efficiency and real-time performance of a single leg of a robot according to claim 6, wherein in the synchronization mode all tasks requiring hard real-time performance are to be completed in a processing frame periodic update thread, with the highest priority, and wherein processing image updating is completed in a periodic thread of the master, wherein in the processing image periodic updating thread the branch control algorithm is implemented by invoking a processing task in each master cycle; wherein processing image data is written and read via an active buffer and a shadow buffer, thereby avoiding a conflict between a main program and the control algorithm; wherein data is read and written between the master and the EtherCAT bus via frame planning and NIC drive modules; wherein the processing task calls a read/write start function to copy data from the shadow buffer to the active buffer when the master data is to be read or written; wherein before the periodic update of the master, the buffer retains original data, the active buffer is ready to send data to the bus when a read/write completion function is called, copying the updated data from the active buffer to the shadow buffer when the master periodic update time is reached; wherein the shadow buffer completes data exchange between the master and the EtherCAT bus; and wherein updating is performed when the periodic updating time is reached. 8. EtherCAT-gebaseerd besturingssysteem voor hoge efficiëntie en real-time prestatie van een enkel been van een robot volgens conclusie 1, waarbij een log-thread gebruikt wordt om experimentele data op te nemen, om de data op te slaan in een schijfbestand, de datatypen op te slaan in een wachtrij volgens het eerst-in-eerst-uit- principe via sjabloonmetaprogrammering, en om sequentieel foutinformatie van de robot gedurende het experiment aan het schijfbestand toe te voegen.The EtherCAT-based operating system for high efficiency and real-time performance of a single leg of a robot according to claim 1, wherein a log thread is used to record experimental data, to store the data in a disk file, the queue data types on a first-in-first-out basis via template metaprogramming, and sequentially append robot error information to the disk file during the experiment. 9. EtherCAT-gebaseerd besturingssysteem voor hoge efficiëntie en real-time prestatie van een enkel been van een robot volgens conclusie 1, waarbij het besturingsalgoritme een compliantie-algoritme is op basis van een virtueel model enThe EtherCAT-based control system for high efficiency and real-time performance of a single leg of a robot according to claim 1, wherein the control algorithm is a compliance algorithm based on a virtual model and - 15 - verbindingskrachtbesturing, om voorwaartsesprong- en flexibele besturing van een enkel been te realiseren; waarbij via virtueelmodelcreatie de voet van de robot gevirtualiseerd wordt tot een stijfheidsdempsysteem langs een richting van een hoofdcoördinatensysteem, om een berekeningsformule te verkrijgen van de voetkracht: Fo iB B) beb : waarbij een positie van de voet verkregen wordt vanaf een verbindingshoek via de positieve kinematica van het enkele been, Peen ware positie is, Ps een verwachte positie is. ks de stijfheid is, en ks de demping is; waarbij een verwachte koppel van elke verbinding verkregen wordt volgens de volgende formule: waarbij f de voetkracht, en [J]! de omzetting van een Jacobiaanmatrix is; waarbij het verwachte koppel omgezet tot een stroomwaarde en overgedragen naar de aandrijving via EtherCAT wordt; waarbij de aandrijving de motor inschakelt om het gegeven koppel via de ingebouwde stroomlus uit te voeren; waarbij een besturingsmodel van een veer-demper-model in een veer-massa-model verandert indien gedetecteerd wordt dat de robot de grond raakt, en waarbij de voetkracht in de daal- en stijgfases als volgt is: kes KP 8) Ins Bg Bj Mg waarbij de voorgaande formules berekeningsformules zijn nadat een massa toegevoegd is, Mg de zwaartekracht van de massa is, en fiz; de voetkracht in een verticale richting is; waarbij om het been voorwaarts te laten springen, een voorwaartse positie gegeven wordt gedurende de stijgfase van het been; waarbij gedurende de voorwaartse sprong, een toestand gedurende de landingsvering bepaald wordt op basis van een snelheid van het lichaam, en de stijfheid en demping van de overeenkomstige fase veranderd worden.- 15 - connection force control, to realize single leg forward jump and flexible control; whereby through virtual model creation the foot of the robot is virtualized into a stiffness damping system along a direction of a principal coordinate system, to obtain a calculation formula of the foot force: Fo iB B) beb : where a position of the foot is obtained from a connection angle via the positive kinematics of the single leg, Peen is true position, Ps is an expected position. ks is the stiffness, and ks is the damping; where an expected torque of each connection is obtained according to the following formula: where f is the foot force, and [J]! is the conversion of a Jacobian matrix; wherein the expected torque is converted to a current value and transferred to the drive via EtherCAT; wherein the drive engages the motor to output the given torque through the built-in current loop; wherein a control model changes from a spring-damper model to a spring-mass model when the robot is detected to hit the ground, and wherein the foot force in the descending and ascent phases is as follows: kes KP 8) Ins Bg Bj Mg wherein the foregoing formulas are calculation formulas after a mass is added, Mg is the gravity of the mass, and fiz; the foot force is in a vertical direction; wherein to make the leg jump forward, a forward position is given during the leg ascent phase; wherein during the forward jump, a state during the landing suspension is determined based on a speed of the body, and the stiffness and damping of the corresponding phase are changed.
NL2026115A 2019-08-09 2020-07-22 Ethercat-based control system for high efficiency and real-time performance of single leg of robot NL2026115B1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910734157.XA CN110412921B (en) 2019-08-09 2019-08-09 Robot single-leg high-real-time control system based on EtherCAT

Publications (2)

Publication Number Publication Date
NL2026115A NL2026115A (en) 2021-02-16
NL2026115B1 true NL2026115B1 (en) 2022-01-11

Family

ID=68366969

Family Applications (1)

Application Number Title Priority Date Filing Date
NL2026115A NL2026115B1 (en) 2019-08-09 2020-07-22 Ethercat-based control system for high efficiency and real-time performance of single leg of robot

Country Status (2)

Country Link
CN (1) CN110412921B (en)
NL (1) NL2026115B1 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111267098B (en) * 2020-02-19 2021-05-28 清华大学 Robot joint layer control method and system
CN111497964B (en) * 2020-04-27 2021-11-02 山东大学 Distributed control system of electrically-driven quadruped robot
CN111687846B (en) * 2020-06-24 2021-09-24 山东大学 Distributed high-real-time control system and method for four-footed robot
CN112235172B (en) * 2020-09-27 2022-01-18 深圳市微秒控制技术有限公司 EtherCAT bus position compensation method
CN112527708B (en) * 2020-12-07 2023-03-31 上海智能制造功能平台有限公司 Device and method for realizing universal servo drive bus interface
CN115686630A (en) * 2022-10-28 2023-02-03 龙芯中科(南京)技术有限公司 Control method and system of controlled assembly, electronic device and readable medium

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6481513B2 (en) * 2000-03-16 2002-11-19 Mcgill University Single actuator per leg robotic hexapod
CN103425106B (en) * 2013-08-08 2015-12-23 华南理工大学 The master/slave station control system of a kind of EtherCAT based on Linux and method
CN105700465A (en) * 2014-11-26 2016-06-22 中国科学院沈阳自动化研究所 Robot compliance control system and method based on EtherCAT bus
CN105242677B (en) * 2015-07-31 2018-01-19 中国人民解放军国防科学技术大学 Quadruped robot biped supports phase force-location mix control method
CN106406227B (en) * 2016-09-19 2019-02-26 中电和瑞科技有限公司 A kind of digital control system interpolating method and digital control system
CN106730629B (en) * 2016-12-15 2019-03-26 中国科学院自动化研究所 Lower limb robot and the control method that active movement is carried out using the robot
CN108687776A (en) 2017-04-05 2018-10-23 大族激光科技产业集团股份有限公司 A kind of robot control system
CN107168351B (en) * 2017-05-26 2022-07-19 中国北方车辆研究所 Compliant control method and device for foot type robot
CN207216330U (en) * 2017-06-13 2018-04-10 华南理工大学 A kind of multi-axis synchronized control device based on EtherCAT
CN208276909U (en) * 2018-04-17 2018-12-25 中国科学院宁波材料技术与工程研究所 A kind of articulated robot of hollow cabling
CN108621161B (en) * 2018-05-08 2021-03-02 中国人民解放军国防科技大学 Method for estimating body state of foot type robot based on multi-sensor information fusion
CN108942932B (en) 2018-07-19 2021-10-08 深圳市智能机器人研究院 Industrial robot control system and method based on EtherCAT bus
CN109946974B (en) * 2019-04-12 2022-07-01 山东大学 Control system of electrically-driven quadruped robot

Also Published As

Publication number Publication date
CN110412921A (en) 2019-11-05
CN110412921B (en) 2021-07-27
NL2026115A (en) 2021-02-16

Similar Documents

Publication Publication Date Title
NL2026115B1 (en) Ethercat-based control system for high efficiency and real-time performance of single leg of robot
CN105278940B (en) A kind of robot hybrid system application framework based on multi-core processor framework
WO2016004587A1 (en) Robotic hybrid system application framework based on multi-core processor architecture
CN109347884B (en) Method and device for converting real-time Ethernet to field bus and storage medium
Gauthier et al. Interprocess communication for distributed robotics
CN104699122A (en) Robot motion control system
WO2013131457A1 (en) Dual-system assembly type industrial robot controller
CN101592951A (en) Common distributed control system for humanoid robot
CN105700465A (en) Robot compliance control system and method based on EtherCAT bus
CN104820403A (en) EtherCAT bus-based eight-shaft robot control system
Gu et al. Design of a distributed multiaxis motion control system using the IEEE-1394 bus
JP2010020650A (en) Information processing system and information processing method, control system and control method of robot, and computer program
CN113510720B (en) Real-time distributed cooperative robot control system
WO2023115758A1 (en) Multi-thread controller of parallel robot
Delgado et al. An EtherCAT-based real-time motion control system in mobile robot application
Traub et al. An object-oriented realtime framework for distributed control systems
CN112867998A (en) Operation accelerator, exchanger, task scheduling method and processing system
Lau et al. Implementation of position–force and position–position teleoperator controllers with cable-driven mechanisms
Sarker et al. Development of a network-based real-time robot control system over IEEE 1394: using open source software platform
CN204515479U (en) A kind of 8 axle robot control systems based on EtherCAT bus
Brinkman et al. Fastcat: an open-source library for composable EtherCAT control systems
KR20120026744A (en) Multi-processor distributed real-time control software architecture for intelligent robots
Tao et al. Research of universal modular cooperation robot control system
Zhang et al. An USB-based software CNC system
Lofaro et al. Extending the life of legacy robots: Mds-ach, a real-time, process based, networked, secure middleware based on the x-ach methodology

Legal Events

Date Code Title Description
MM Lapsed because of non-payment of the annual fee

Effective date: 20230801