Composite robot control method, device and equipment and storage medium
Through the layered optimization control method, the joint control of the composite robot is processed using hierarchical controllers and optimization algorithms, the problem of coordinated control of the chassis and robotic arms at different time scales is solved, and the complexity and computational burden of the overall control of the composite robot are reduced. Improves its adaptability and robustness.
Patent Information
- Application Number
- CN202411673291.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-21
- Publication Date
- 2025-01-14
- Estimated Expiration
- 2044-11-21
AI Technical Summary
The existing composite robot control technology cannot effectively utilize its redundant degrees of freedom, resulting in motion disconnection and beat reduction, making it difficult to complete complex tasks. At the same time, due to the difference in control frequency of the chassis and robotic arm, it is difficult to take into account the control requirements of different time scales, resulting in overall control. The complexity and calculation burden are high.
Using a layered optimization control method, the target position information is received, the joint control information is determined, and the mechanical joints are controlled and the mechanical arm are controlled and optimized layered by the hierarchical controller and the hierarchical optimization algorithm. Information, reducing overall control complexity and computing burden.
Effectively deal with collaborative control problems at different time scales, improve the adaptability and robustness of composite robot control, and improve the operational capabilities of composite robots in complex tasks.
Smart Images

Figure CN119304883A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of robot control technology, and in particular to a composite robot control method, device, equipment and storage medium. Background Art
[0002] A composite robot is a new type of robot that integrates the functions of a mobile robot and an industrial robot. It is generally composed of an autonomous mobile chassis, a robotic arm, vision and an end effector.
[0003] Existing composite robot motion planning and control technologies can be roughly divided into two routes: 1. Individual control of the manipulator and chassis; 2. Joint control of the manipulator and chassis. Individual control splits the composite robot operation task into chassis tasks and manipulator tasks, calculates the target motion trajectory based on the kinematic / dynamic models of the two, and finally controls them separately through their respective controllers. Joint control regards the chassis and manipulator as a whole, establishes the kinematic / dynamic model of the composite robot, and then uniformly solves the target motion trajectory and control input of all joints of the manipulator and chassis in one controller to achieve integrated control.
[0004] However, individual control cannot fully utilize the redundant degrees of freedom of the composite robot, resulting in disconnected movements of the "hands and feet", decreased rhythm, and difficulty in completing complex tasks. Joint control modeling and solution are difficult and require high computing power. In addition, due to the large differences in the control frequency requirements of the chassis and the robotic arm (the robotic arm is generally at the kHz level, and the chassis is generally at the 20-50Hz level), it is difficult to take into account the time scales of the two under the same controller. It can be seen that the existing control technology cannot meet the needs of actual applications. Summary of the invention
[0005] The present invention provides a composite robot control method, device, equipment and storage medium to solve the problem of coordinated control of chassis and robotic arms through hierarchical optimization, effectively deal with technical problems of different time scales, and reduce the complexity of overall control of the composite robot and the burden of calculation.
[0006] According to one aspect of the present invention, a composite robot control method is provided. The method comprises:
[0007] Receive the target position information of the composite robot to be reached from the scheduling system;
[0008] Determine joint control information corresponding to the compound robot according to the target position information and a target controller in the compound robot, wherein the target controller includes at least one hierarchical controller, and the hierarchical controller includes a hierarchical optimization algorithm;
[0009] According to the joint control information, each mechanical joint of the compound robot is controlled and processed.
[0010] According to another aspect of the present invention, a composite robot control device is provided. The device comprises:
[0011] The target position information receiving module is used to receive the target position information to be reached by the composite robot sent by the scheduling system;
[0012] A joint control information determination module, used to determine the joint control information corresponding to the compound robot according to the target position information and a target controller in the compound robot, wherein the target controller includes at least one hierarchical controller, and the hierarchical controller includes a hierarchical optimization algorithm;
[0013] The composite robot control module is used to control and process each mechanical joint of the composite robot according to the joint control information.
[0014] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising:
[0015] at least one processor; and
[0016] a memory communicatively connected to the at least one processor; wherein,
[0017] The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the composite robot control method described in any embodiment of the present invention.
[0018] According to another aspect of the present invention, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the composite robot control method described in any embodiment of the present invention when executed.
[0019] The technical solution of the embodiment of the present invention receives the target position information of the composite robot sent by the scheduling system. According to the target position information and the target controller in the composite robot, the joint control information corresponding to the composite robot is determined. According to the joint control information, each mechanical joint of the composite robot is controlled and processed, which solves the problem of coordinated control of the chassis and the mechanical arm at different time scales, and determines the global control information of the chassis and the mechanical arm by hierarchical optimization, reduces the complexity of the overall control of the composite robot and the burden of calculation, and improves the adaptability and robustness of the composite robot control.
[0020] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present invention, nor are they intended to limit the scope of the present invention. Other features of the present invention will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0022] Figure 1 is a flow chart of a composite robot control method provided according to an embodiment of the present invention;
[0023] Figure 2 is a structural diagram of a composite robot control device provided according to an embodiment of the present invention;
[0024] Figure 3 It is a schematic diagram of the structure of an electronic device for implementing the composite robot control method according to an embodiment of the present invention. DETAILED DESCRIPTION
[0025] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.
[0026] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0027] Figure 1 This is a flow chart of a composite robot control method provided by the present invention. This embodiment is applicable to the case of accurately controlling a composite robot. The method can be executed by a composite robot control device. The composite robot control device can be implemented in the form of hardware and / or software. The composite robot control device can be configured in an electronic device. Figure 1 As shown, the method includes:
[0028] S101, receiving target position information of the composite robot to be reached from the scheduling system.
[0029] The scheduling system may refer to a host computer capable of controlling the composite robot, such as a control server, etc. The target position information may refer to the final position to be reached by the chassis and the mechanical arm of the composite robot.
[0030] Specifically, the target position information sent by the scheduling system is received according to an effective communication channel between the composite robot and the scheduling system. Exemplarily, the communication channel may include but is not limited to Wi-Fi, 4G / 5G, Bluetooth or other dedicated communication channels.
[0031] S102: Determine joint control information corresponding to the compound robot according to the target position information and a target controller in the compound robot.
[0032] Among them, the target controller includes at least one hierarchical controller, the hierarchical controller includes a hierarchical optimization algorithm, and the joint control information may refer to the control information for regulating each joint of the composite robot. Exemplarily, the joint control information may be joint torque control information or joint current control information, etc.
[0033] It should be noted that the number of hierarchical controllers in the target controller can be increased or decreased as needed, and the objective function, optimization object and constraint conditions of each hierarchical controller can be defined as needed.
[0034] Specifically, the motion planning and control problems of the composite robot are decomposed into one or more manageable levels through the target controller, and the corresponding joint control information of the composite robot is calculated through the hierarchical optimization algorithm in the hierarchical controller.
[0035] Exemplarily, the target controller can be specifically divided into an upper-layer controller, a middle-layer controller and a lower-layer controller, wherein the upper-layer controller includes an upper-layer optimization algorithm, the middle-layer controller includes a middle-layer optimization algorithm, and the lower-layer controller includes a lower-layer optimization algorithm.
[0036] Exemplarily, determining the joint control information corresponding to the composite robot according to the target position information and the target controller in the composite robot includes: sending the target position information to the upper-level controller, and obtaining the overall position-velocity matrix of the chassis and the end of the robotic arm output by the upper-level controller based on the upper-level optimization algorithm and the upper-level constraints in the upper-level controller; sending the overall position-velocity matrix of the chassis and the end of the robotic arm to the middle-level controller, and obtaining the joint position-velocity matrix of the chassis and the robotic arm output by the middle-level controller based on the middle-level optimization algorithm and the middle-level constraints in the middle-level controller; sending the joint position-velocity matrix to the lower-level controller, and obtaining the joint control information output by the lower-level controller based on the lower-level optimization algorithm and the lower-level constraints in the lower-level controller.
[0037] It should be noted that each level of optimization algorithm includes at least one constraint. The constraint of the upper optimization algorithm at least includes that the distance between the chassis of the composite robot and the obstacle is greater than or equal to the preset distance threshold, the running speed of the chassis and the mechanical arm of the composite robot is less than or equal to the preset speed threshold, and the mechanical arm finally reaches the target position; the constraint of the middle optimization algorithm at least includes that the position of each joint of the composite robot is located in the preset position interval, the running speed of each joint is located in the preset running speed interval, the distance between the chassis and the mechanical arm is located in the preset safety distance interval, and the mechanical arm is prohibited from entering a singular posture; the constraint of the lower optimization algorithm at least includes that the control input of each joint is located in the preset safety control interval, and the control stability value is greater than or equal to the minimum stability value. The constraints of each level can be used to constrain the output results of each level to ensure the safety and accuracy of the joint control information.
[0038] Among them, the overall position-velocity matrix can describe the position and velocity matrix of the chassis and the end of the manipulator in the composite robot. Exemplarily, the overall position-velocity matrix can include the output chassis position information, output chassis velocity information, output end position information, and output end velocity information output by the upper controller. The joint position-velocity matrix can describe the position and velocity matrix of each joint in the composite robot. Exemplarily, the joint position-velocity matrix includes the output joint angle information and output joint angular velocity information output by the middle controller.
[0039] Specifically, the upper-level controller is used to handle global optimization problems of larger time scales, such as path planning, energy consumption management, etc. The upper-level controller calculates the overall position-velocity matrix based on the target position information sent by the scheduling system, through the upper-level optimization algorithm and the upper-level constraints, and then sends it to the middle-level controller. The middle-level controller is used to handle the coordination problem of the chassis and the robotic arm to ensure that the control instructions sent by the upper-level controller are accurately executed. The middle-level controller receives the overall position-velocity matrix sent by the upper-level controller, and based on the kinematics and / or dynamics model of the composite robot, calculates the joint position-velocity matrix corresponding to each joint of the chassis and the robotic arm through the middle-level optimization algorithm and the middle-level constraints, and then sends it to the bottom-level controller. The lower-level controller is used to track the joint position-velocity matrix sent by the middle-level controller in real time, and obtains the joint control information of each joint through the lower-level optimization algorithm and the lower-level constraints.
[0040] Exemplarily, the upper layer optimization algorithm includes:
[0041]
[0042] Among them, J High represents the upper objective function, μ high represents the overall position-velocity matrix output by the upper controller;
[0043] Accordingly, the upper layer objective function includes:
[0044]
[0045] Where k represents the number of time steps, N high represents the total time step, x goal Indicates the target location information, x base,ref(k) represents the chassis target position output by the upper controller, x arm,ref Represents the end position of the robot arm output by the upper controller, R high represents the weight matrix corresponding to the upper control input, α1-α4 represents 4 weight coefficients, ObstacleCost() is a function describing the obstacle distance, μ high (k) represents the overall position velocity matrix output by the upper controller, x ob (k) represents the obstacle location information.
[0046] It should be noted that in the upper-level target optimization algorithm, the first and second parts reflect the deviation of the chassis and the robotic arm relative to the target position information, the third part reflects the energy consumption of the system, and the fourth part reflects the risk of collision between the robot and environmental obstacles.
[0047] For example, μ high is defined as:
[0048] μ high =(x base,ref ,x arm,ref ,v base,ref ,v arm,ref ) T ;
[0049] Among them, x base,ref represents the chassis target position output by the upper controller, x arm,ref represents the target position of the end of the robot arm output by the upper controller, v base,ref It can refer to the chassis target speed output by the upper controller, v arm,ref It can refer to the target speed of the robot arm output by the upper controller.
[0050] For example, upper-level constraints include but are not limited to:
[0051] 1) The distance between the chassis and the obstacle must not be less than a certain threshold, that is
[0052]
[0053] Among them, x base,ref(k) represents the output chassis position of the upper controller output chassis, i represents the number of the obstacle, and x_ob,i(k) represents the obstacle position information.
[0054] 2) The speed of the chassis and the robot arm must not exceed the maximum value allowed by the system, that is:
[0055] ||v base,ref (k)||≤v max,base ;||v arm,ref (k)||≤v max,arm ;
[0056] v base,ref (k) can refer to the chassis target speed output by the upper controller, v arm,ref (k) may refer to the target speed of the robot arm output by the upper-level controller.
[0057] 3) The robot arm finally reaches the target position, that is
[0058] x arm,ref (N high )=x goal ;
[0059] x arm,ref Indicates the output end position of the upper controller outputting the end of the manipulator, N high represents the total time step, x goal Indicates the target location information.
[0060] Exemplarily, the middle-level optimization algorithm includes:
[0061]
[0062] Among them, J Mid represents the middle-level objective function, μ mid Represents the joint position velocity matrix output by the middle-level controller;
[0063] Accordingly, the middle-level objective function includes:
[0064]
[0065] Where k represents the number of time steps, N mid Represents the total time step, R mid represents the weight matrix corresponding to the middle-level control input, x base Indicates the current chassis position, x arm Indicates the current end position of the robot arm, x base,ref(k) represents the chassis target position output by the upper controller, x arm,ref represents the target position of the end of the manipulator output by the upper controller, β1-β4 represent 4 weight coefficients, μ mid represents the joint position velocity matrix output by the middle-level controller, C coord () describes the coordination function between chassis and robot arm, q ref Represents the target angle of each joint output by the middle-level controller.
[0066] For example, μ mid is defined as:
[0067]
[0068] Among them, q ref represents the target angle of each joint output by the middle-level controller, It indicates that the middle-level controller outputs the output joint angular velocity of each joint.
[0069] It should be noted that in the middle-level objective function algorithm, the first and second parts reflect the deviation of the chassis and the robot arm relative to the target position information, the third part reflects the energy consumption of each joint, and the fourth part C coord () is an indicator that reflects the degree of coordination between the chassis and the robotic arm, and is related to the posture of the robotic arm and the chassis.
[0070] For example, the middle-level constraints include but are not limited to:
[0071] 1) The position and speed limits of the chassis and the joints of the robotic arm, namely:
[0072]
[0073] Where i represents the joint number, q represents the joint angle, Represents angular velocity.
[0074] 2) The distance between the chassis and the robot arm must be within a safe range and no collision can occur, that is:
[0075]
[0076] Among them, x base Indicates the current chassis position, x arm Indicates the current arm position at the end of the arm.
[0077] 3) The robot arm must not enter strange positions.
[0078] Exemplarily, the lower layer optimization algorithm includes:
[0079]
[0080] Among them, J Low represents the lower layer objective function, μ low Represents the joint control information output by the lower layer controller;
[0081] Accordingly, the lower layer objective function includes:
[0082]
[0083] Where k represents the number of time steps, N low represents the total time step, q represents the joint angle, represents the angular velocity, q ref represents the target angle of each joint output by the middle-level controller, represents the target angular velocity of each joint output by the middle-level controller, μ low represents the joint control information output by the lower-level controller, and Y1-Y3 represent three weight coefficients.
[0084] It should be noted that in the lower-level objective optimization algorithm, the first and second parts reflect the tracking errors of each joint trajectory, and the third part reflects the energy consumption of each actuator.
[0085] Exemplarily, the lower-level constraints include but are not limited to:
[0086] 1) The control input of each joint shall not exceed the maximum value allowed by the system. If the control input is torque, then:
[0087]
[0088] Where i represents the joint number, μlow Represents the joint control information output by the lower-level controller.
[0089] 2) System stability constraint, that is, the system stability threshold must be greater than its minimum value,
[0090]
[0091] For example, the overturning moment of the composite robot can be used to calculate the system stability threshold. The overturning moment refers to the moment that causes the robot to overturn along a certain axis due to changes in the center of gravity and load, acceleration / deceleration, environmental interaction forces, etc. during the operation of the composite robot. The larger the overturning moment, the worse the stability.
[0092] S103 . Perform control processing on each mechanical joint of the compound robot according to the joint control information.
[0093] Specifically, the joint control information is sent to each joint servo driver of the compound robot, and then the control processing of each mechanical joint of the compound robot is realized according to the joint control information.
[0094] The technical solution of the embodiment of the present invention receives the target position information of the composite robot sent by the scheduling system. According to the target position information and the target controller in the composite robot, the joint control information corresponding to the composite robot is determined. According to the joint control information, each mechanical joint of the composite robot is controlled and processed, which solves the problem of coordinated control of the chassis and the mechanical arm at different time scales, and determines the global control information of the chassis and the mechanical arm by hierarchical optimization, reduces the complexity of the overall control of the composite robot and the burden of calculation, and improves the adaptability and robustness of the composite robot control.
[0095] Based on the above embodiments, the method further includes:
[0096] Acquire operation parameter information of the composite robot based on the lower-layer controller, and send the operation parameter information to the middle-layer controller, wherein the operation parameter information at least includes measurement values such as joint position information, velocity information, acceleration information and torque;
[0097] Based on the operation parameter information received by the middle-level controller, determine the operation safety information of the composite robot, and send the operation safety information to the upper-level controller, wherein the operation safety information at least includes global positioning information and environmental obstacle distance information;
[0098] Based on the operation safety information received by the upper-level controller, the task execution status of the compound robot is determined, and the task execution status is fed back to the scheduling system.
[0099] That is to say, the lower-level controller collects the operating parameter information of the composite robot, such as the measured values of joint position, velocity, acceleration and torque, based on the sensor feedback, and sends the operating parameter information to the middle-level controller. The middle-level controller calculates the global positioning of the composite robot, the distance of environmental obstacles and other operating safety information based on the feedback of the lower-level controller, and returns it to the upper-level controller. The upper-level controller determines the status of task execution based on the operating safety information fed back by the middle-level controller and reports it to the scheduling system. The lower-level controller can quickly respond to interference (such as obstacles, slippage, etc.) and provide feedback to the upper-level controller, prompting it to adjust its strategy or goal to ensure that the system can operate robustly in a dynamic and uncertain environment. At the same time, the lower-level controller can detect the deviation between the actual trajectory and the target trajectory in real time, adjust the control action, and feed back these changes to the high-level controller for re-optimization, which helps to quickly correct errors.
[0100] The present invention adopts a hierarchical optimization control architecture to decompose a complex composite robot whole-body motion planning and control problem into multiple sub-problems and solve them layer by layer. The high-level controller is used to handle global optimization problems of large event scales (such as global path planning), and the low-level controller is used to handle local optimization problems of small time scales (such as joint trajectory tracking). Controllers at all levels work together, and the high-level controller provides control target values and constraints for the low-level controller, and the low-level controller provides execution result feedback to the high-level co-controller. Controllers at all levels can run at different frequencies to maximize the use of computing resources.
[0101] Figure 2 This is a schematic diagram of the structure of a composite robot control device provided by the present invention. Figure 2 As shown, the device comprises:
[0102] The target position information receiving module 301 is used to receive the target position information to be reached by the composite robot sent by the scheduling system;
[0103] A joint control information determination module 302 is used to determine the joint control information corresponding to the compound robot according to the target position information and the target controller in the compound robot, wherein the target controller includes at least one hierarchical controller, and the hierarchical controller includes a hierarchical optimization algorithm;
[0104] The compound robot control module 303 is used to control each mechanical joint of the compound robot according to the joint control information.
[0105] The technical solution of the present invention receives the target position information of the composite robot sent by the scheduling system. According to the target position information and the target controller in the composite robot, the joint control information corresponding to the composite robot is determined. According to the joint control information, each mechanical joint of the composite robot is controlled and processed, which solves the problem of different time scales of the chassis and the mechanical arm, and determines the global control information of the chassis and the mechanical arm by layered task level, reduces the complexity of the overall control of the composite robot and the burden of calculation, and improves the adaptability and robustness of the composite robot control.
[0106] Optionally, the target controller includes an upper-layer controller, a middle-layer controller and a lower-layer controller; the upper-layer controller includes an upper-layer optimization algorithm, the middle-layer controller includes a middle-layer optimization algorithm, and the lower-layer controller includes a lower-layer optimization algorithm.
[0107] Optionally, the joint control information determination module 302 is specifically configured to:
[0108] The target position information is sent to the upper-layer controller, and based on the upper-layer optimization algorithm and upper-layer constraint conditions in the upper-layer controller, the overall position speed matrix of the chassis and the end of the robotic arm output by the upper-layer controller is obtained;
[0109] The overall position velocity matrix of the chassis and the end of the robotic arm is sent to the middle-level controller, and based on the middle-level optimization algorithm and middle-level constraints in the middle-level controller, the joint position velocity matrix of the chassis and the end of the robotic arm output by the middle-level controller is obtained;
[0110] The joint position velocity matrix is sent to the lower-layer controller, and based on the lower-layer optimization algorithm and lower-layer constraint conditions in the lower-layer controller, the joint control information output by the lower-layer controller is obtained.
[0111] Optionally, the upper layer optimization algorithm includes:
[0112]
[0113] Among them, J High represents the upper objective function, μ high represents the overall position-velocity matrix output by the upper controller;
[0114] Accordingly, the upper layer objective function includes:
[0115]
[0116] Where k represents the number of time steps, N high represents the total time step, x goal Indicates the target location information, xbase,ref(k) represents the chassis target position output by the upper controller, x arm,ref Represents the end position of the robot arm output by the upper controller, R high represents the weight matrix corresponding to the upper control input, α1-α4 represents 4 weight coefficients, ObstacleCost() is a function describing the obstacle distance, μ high (k) represents the overall position velocity matrix output by the upper controller, x ob (k) represents the obstacle location information.
[0117] Optionally, the middle-level optimization algorithm includes:
[0118]
[0119] Among them, J Mid represents the middle-level objective function, μ mid Represents the joint position velocity matrix output by the middle-level controller;
[0120] Accordingly, the middle-level objective function includes:
[0121]
[0122] Where k represents the number of time steps, N mid Represents the total time step, R mid represents the weight matrix corresponding to the middle-level control input, x base Indicates the current chassis position, x arm Indicates the current end position of the robot arm, x base,ref(k) represents the chassis target position output by the upper controller, x arm,ref represents the target position of the end of the manipulator output by the upper controller, β1-β4 represent 4 weight coefficients, μ mid represents the joint position velocity matrix output by the middle-level controller, C coord () describes the coordination function between chassis and robot arm, q ref Represents the target angle of each joint output by the middle-level controller.
[0123] Optionally, the lower layer optimization algorithm includes:
[0124]
[0125] Among them, J Low represents the lower layer objective function, μ low Represents the joint control information output by the lower layer controller;
[0126] Accordingly, the lower layer objective function includes:
[0127]
[0128] Where k represents the number of time steps, N low represents the total time step, q represents the joint angle, represents the angular velocity, q ref represents the target angle of each joint output by the middle-level controller, represents the target angular velocity of each joint output by the middle-level controller, μ low represents the joint control information output by the lower-level controller, and Y1-Y3 represent three weight coefficients.
[0129] Optionally, the device further includes an information feedback module.
[0130] The information feedback module is used to:
[0131] Acquire operation parameter information of the composite robot based on the lower-layer controller, and send the operation parameter information to the middle-layer controller, wherein the operation parameter information at least includes measurement values such as joint position information, velocity information, acceleration information and torque;
[0132] Based on the operation parameter information received by the middle-level controller, determine the operation safety information of the composite robot, and send the operation safety information to the upper-level controller, wherein the operation safety information at least includes global positioning information and environmental obstacle distance information;
[0133] Based on the operation safety information received by the upper-level controller, the task execution status of the compound robot is determined, and the task execution status is fed back to the scheduling system.
[0134] The composite robot control device provided in the embodiment of the present invention can execute the composite robot control method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.
[0135] Figure 3 A schematic diagram of the structure of an electronic device 10 that can be used to implement an embodiment of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present invention described and / or required herein.
[0136] like Figure 3 As shown, the electronic device 10 includes at least one processor 11, and a memory connected to the at least one processor 11, such as a read-only memory (ROM) 12, a random access memory (RAM) 13, etc., wherein the memory stores a computer program that can be executed by at least one processor, and the processor 11 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 12 or the computer program loaded from the storage unit 18 to the random access memory (RAM) 13. In the RAM 13, various programs and data required for the operation of the electronic device 10 can also be stored. The processor 11, the ROM 12, and the RAM 13 are connected to each other through a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.
[0137] A number of components in the electronic device 10 are connected to the I / O interface 15, including: an input unit 16, such as a keyboard, a mouse, etc.; an output unit 17, such as various types of displays, speakers, etc.; a storage unit 18, such as a disk, an optical disk, etc.; and a communication unit 19, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 19 allows the electronic device 10 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.
[0138] The processor 11 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The processor 11 executes the various methods and processes described above, such as the method for complex robot control.
[0139] In some embodiments, the method compound robot control may be implemented as a computer program, which is tangibly contained in a computer-readable storage medium, such as a storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 10 via the ROM 12 and / or the communication unit 19. When the computer program is loaded into the RAM 13 and executed by the processor 11, one or more steps of the method compound robot control described above may be performed. Alternatively, in other embodiments, the processor 11 may be configured to perform the method compound robot control in any other suitable manner (e.g., by means of firmware).
[0140] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0141] Computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that when the computer program is executed by the processor, the functions / operations specified in the flow chart and / or block diagram are implemented. The computer program may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.
[0142] In the context of the present invention, a computer-readable storage medium may be a tangible medium that may contain or store a computer program for use by or in combination with an instruction execution system, device or equipment. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices or equipment, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0143] To provide interaction with a user, the systems and techniques described herein may be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or trackball) through which the user can provide input to the electronic device. Other types of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, or tactile input).
[0144] The systems and techniques described herein may be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.
[0145] A computing system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The client and server relationship is generated by computer programs running on the corresponding computers and having a client-server relationship with each other. The server may be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and VPS services.
[0146] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in the present invention can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solution of the present invention can be achieved, and this document does not limit this.
[0147] The above specific implementations do not constitute a limitation on the protection scope of the present invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims
1. A composite robot control method, characterized in that: include: Receive the target position information of the composite robot to be reached from the scheduling system; Determine joint control information corresponding to the compound robot according to the target position information and a target controller in the compound robot, wherein the target controller includes at least one hierarchical controller, and the hierarchical controller includes a hierarchical optimization algorithm; According to the joint control information, each mechanical joint of the compound robot is controlled and processed.
2. The method according to claim 1, characterized in that The target controller includes an upper-layer controller, a middle-layer controller and a lower-layer controller; the upper-layer controller includes an upper-layer optimization algorithm, the middle-layer controller includes a middle-layer optimization algorithm, and the lower-layer controller includes a lower-layer optimization algorithm.
3. The method according to claim 2, characterized in that Determining joint control information corresponding to the compound robot according to the target position information and the target controller in the compound robot includes: The target position information is sent to the upper-layer controller, and based on the upper-layer optimization algorithm and upper-layer constraint conditions in the upper-layer controller, the overall position speed matrix of the chassis and the end of the robotic arm output by the upper-layer controller is obtained; The overall position velocity matrix of the chassis and the end of the robotic arm is sent to the middle-level controller, and based on the middle-level optimization algorithm and middle-level constraints in the middle-level controller, the joint position velocity matrix of the chassis and the robotic arm output by the middle-level controller is obtained; The joint position velocity matrix is sent to the lower-layer controller, and based on the lower-layer optimization algorithm and lower-layer constraint conditions in the lower-layer controller, the joint control information output by the lower-layer controller is obtained.
4. The method according to claim 2, characterized in that: The upper layer optimization algorithm comprises: Among them, J High represents the upper objective function, μ high represents the overall position-velocity matrix output by the upper controller; Accordingly, the upper layer objective function includes: Among them, k represents the number of time steps, N high represents the total time step, x goal Indicates the target location information, x base,ref(k) represents the chassis target position output by the upper controller, x arm,ref Represents the end position of the robot arm output by the upper controller, R high represents the weight matrix corresponding to the upper control input, α1-α4 represents 4 weight coefficients, ObstacleCost() is a function describing the obstacle distance, μ high (k) represents the overall position velocity matrix output by the upper controller, x ob (k) represents the obstacle location information.
5. The method according to claim 2, characterized in that: The middle-level optimization algorithm includes: Among them, J Mid represents the middle-level objective function, μ mid Represents the joint position velocity matrix output by the middle-level controller; Accordingly, the middle-level objective function includes: Among them, k represents the number of time steps, N mid Represents the total time step, R mid represents the weight matrix corresponding to the middle-level control input, x base Indicates the current chassis position, x arm Indicates the current end position of the robot arm, x base,ref(k) represents the chassis target position output by the upper controller, x arm,ref represents the target position of the end of the manipulator output by the upper controller, β1-β4 represent 4 weight coefficients, μ mid represents the joint position velocity matrix output by the middle-level controller, C coord () describes the coordination function between chassis and robot arm, q ref Represents the target angle of each joint output by the middle-level controller.
6. The method according to claim 2, characterized in that The lower layer optimization algorithm comprises: Among them, J Low represents the lower layer objective function, μ low Represents the joint control information output by the lower layer controller; Accordingly, the lower layer objective function includes: Among them, k represents the number of time steps, N low represents the total time step, q represents the joint angle, represents the angular velocity, q ref represents the target angle of each joint output by the middle-level controller, represents the target angular velocity of each joint output by the middle-level controller, μ low represents the joint control information output by the lower-level controller, and Y1-Y3 represent three weight coefficients.
7. The method according to claim 2, characterized in that: The method further comprises: Acquire operation parameter information of the composite robot based on the lower-layer controller, and send the operation parameter information to the middle-layer controller, wherein the operation parameter information at least includes measurement values such as joint position information, velocity information, acceleration information and torque; Based on the operation parameter information received by the middle-level controller, determine the operation safety information of the composite robot, and send the operation safety information to the upper-level controller, wherein the operation safety information at least includes global positioning information and environmental obstacle distance information; Based on the operation safety information received by the upper-level controller, the task execution status of the compound robot is determined, and the task execution status is fed back to the scheduling system.
8. A composite robot control device, characterized in that: include: The target position information receiving module is used to receive the target position information to be reached by the composite robot sent by the scheduling system; A joint control information determination module, used to determine the joint control information corresponding to the compound robot according to the target position information and a target controller in the compound robot, wherein the target controller includes at least one hierarchical controller, and the hierarchical controller includes a hierarchical optimization algorithm; The composite robot control module is used to control and process each mechanical joint of the composite robot according to the joint control information.
9. An electronic device, characterized in that: The electronic device comprises: at least one processor; and a memory communicatively connected to the at least one processor; wherein, The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the composite robot control method according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the composite robot control method according to any one of claims 1 to 7 when executed.
Citation Information
Patent Citations
Mechanical arm control method and device, computing equipment and storage medium
CN115383739A
Robot control method, robot control system and robot
CN115480581A
Task-configurable full-process automatic robot pipetting system and task-configurable full-process automatic robot pipetting method
CN118046389A
Industrial mechanical arm optimal motion planning method based on hierarchical reinforcement learning
CN118514072A
Apparatus and method for learning the optimal path of a robot arm using hierarchical reinforcement learning
KR102551333B1