Robot control method and system, and electronic equipment
By using biological motion units and twin models for simulation processing in bionic robots and dynamically updating control parameters, the problem of low control precision of existing bionic robots is solved, and flexible adaptation to a variety of complex environments is achieved.
Patent Information
- Application Number
- CN202210949473.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-08-09
- Publication Date
- 2025-02-18
- Estimated Expiration
- 2042-08-09
AI Technical Summary
The existing bionic robots have low control precision and cannot flexibly adapt to a variety of complex application environments.
M biological movement units are used to obtain motion state information, simulate and process using twin models, analyze control parameters, and dynamically update the controller parameters to realize a variety of bionic and flexible motion forms of biological movement units.
It improves the control precision of the robot and can flexibly adapt to a variety of complex application environments.
Smart Images

Figure CN115437269B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of robot control technology, and in particular to a robot control method and system, and electronic equipment. Background Art
[0002] Bionic robots, which are robots that imitate living things and perform work that is characteristic of living things, have become a hot topic of research and development at home and abroad in recent years. Current bionic robots use robots with programmable appearances, which can change the characteristics of the robot during its movement by designing its appearance structure during the construction process. However, the control precision of such robots is low, so they cannot be flexibly adapted to a variety of complex application environments. Summary of the invention
[0003] The main purpose of the embodiments of the present application is to propose a robot control method and system, and electronic equipment, aiming to improve the control precision of the robot so as to flexibly adapt to a variety of complex application environments.
[0004] To achieve the above-mentioned purpose, a first aspect of an embodiment of the present application provides a control method for a robot, wherein the robot comprises M biological motion units, where M is a positive integer, and the biological motion units are motion units made of biological materials, and the method comprises:
[0005] Acquire motion state information collected from the robot; acquire first state information related to the biological motion unit from the motion state information; input the first state information into a twin model corresponding to the biological motion unit for simulation processing to obtain a simulation result, wherein the twin model is used to establish a mapping relationship between different state information of the biological motion unit; perform control parameter analysis based on the simulation result and the first state information to obtain a first control parameter; send the simulation result to the first controller, and control the first controller to work according to the first control parameter, wherein the first controller is used to control the motion form of the biological motion unit according to the simulation result.
[0006] In some embodiments, the step of inputting the first state information into the twin model corresponding to the biological motion unit for simulation processing to obtain a simulation result includes: dividing the first state information into input state information and reference state information; inputting the input state information into the twin model corresponding to the biological motion unit for simulation processing to obtain simulation state information;
[0007] The control parameter analysis is performed according to the simulation result and the first state information to obtain the first control parameter, including: generating deviation information according to the simulation state information and the reference state information; obtaining the current control parameter corresponding to the biological motion unit; and adjusting the current control parameter according to the deviation information to obtain the first control parameter.
[0008] In some embodiments, the robot further includes N electromechanical motion units, where N is a positive integer; after acquiring the motion state information collected from the robot, the method further includes:
[0009] According to the motion state information, a first control strategy is assigned to the first controller, and a second control strategy is assigned to the second controller; the first control strategy is sent to the first controller, and the first controller is also used to control the operation of the biological motion unit according to the first control strategy; the second control strategy is sent to the second controller, and the second controller is used to control the operation of the electromechanical motion unit according to the second control strategy.
[0010] In some embodiments, allocating a first control strategy to the first controller and allocating a second control strategy to the second controller according to the motion state information includes:
[0011] Generate an input set, the input set including multiple input vectors, each of the input vectors including first control information corresponding to the first controller and second control information corresponding to the second controller; calculate the loss value corresponding to each of the input vectors according to the input set, the motion state information and a preset loss function; obtain the input vector with the smallest loss value from the input set as the target vector; take the first control information included in the target vector as the first control strategy of the first controller, and take the second control information included in the target vector as the second control strategy of the second controller.
[0012] In some embodiments, the method further includes: acquiring environmental information collected from the environment in which the robot is located; performing motion planning according to the environmental information to obtain motion planning information of the robot;
[0013] The allocating a first control strategy to the first controller and a second control strategy to the second controller according to the motion state information includes: allocating a first control strategy to the first controller and a second control strategy to the second controller according to the motion state information and in combination with the motion planning information.
[0014] In some embodiments, the motion planning information includes a first driving mode corresponding to the biological motion unit, a second driving mode corresponding to the electromechanical motion unit, and motion constraints; performing motion planning according to the environmental information to obtain the motion planning information of the robot includes:
[0015] According to the environmental information, the current application scenario is analyzed; motion morphology information matching the current application scenario is acquired, wherein the motion morphology information is used to determine the target motion morphology of the robot; according to the motion morphology information, a first driving mode corresponding to the biological motion unit and a second driving mode corresponding to the electromechanical motion unit are acquired, wherein when the biological motion unit works in the first driving mode and the electromechanical motion unit works in the second driving mode, the robot moves in the target motion morphology; according to the motion morphology information, the motion constraint condition is generated.
[0016] In some embodiments, the electromechanical motion unit includes a supporting portion and a transmission portion, the supporting portion is connected to the transmission portion, the transmission portion is connected to the second controller, and the supporting portion is connected to the biological motion unit through a first base portion.
[0017] To achieve the above-mentioned purpose, a second aspect of an embodiment of the present application provides a control system for a robot, wherein the robot comprises M biological motion units, where M is a positive integer, and the biological motion units are motion units made of biological materials. The system comprises:
[0018] A collaborative controller is used to obtain motion state information collected from the robot; obtain first state information related to the biological motion unit from the motion state information; input the first state information into a twin model corresponding to the biological motion unit for simulation processing to obtain a simulation result, wherein the twin model is used to establish a mapping relationship between different state information of the biological motion unit; perform control parameter analysis based on the simulation result and the first state information to obtain a first control parameter; send the simulation result to the first controller, and control the first controller to work according to the first control parameter;
[0019] The first controller is used to control the motion form of the biological motion unit according to the simulation result.
[0020] In some embodiments, the robot further comprises N electromechanical motion units, where N is a positive integer, and the system further comprises a second controller, wherein:
[0021] The collaborative controller is further configured to allocate a first control strategy to the first controller and a second control strategy to the second controller according to the motion state information; send the first control strategy to the first controller and send the second control strategy to the second controller;
[0022] The first controller is further used to control the operation of the biological motion unit according to the first control strategy;
[0023] The second controller is used to control the operation of the electromechanical motion unit according to the second control strategy.
[0024] To achieve the above-mentioned purpose, the third aspect of an embodiment of the present application proposes an electronic device, which includes a memory, a processor, a program stored in the memory and executable on the processor, and a data bus for realizing connection and communication between the processor and the memory, and the program, when executed by the processor, implements the method described in the first aspect above.
[0025] To achieve the above-mentioned purpose, the fourth aspect of an embodiment of the present application proposes a storage medium, which is a computer-readable storage medium used for computer-readable storage, and the storage medium stores one or more programs, and the one or more programs can be executed by one or more processors to implement the method of the above-mentioned first aspect.
[0026] In the robot control method and system and electronic device proposed in the present application, the robot includes M biological motion units, and the biological motion unit is a motion unit made of biological materials. Based on this, a twin model corresponding to the biological motion unit is constructed in advance according to the biological characteristics and motion characteristics of the biological material to establish a mapping relationship between different state information of the biological motion unit. In practical applications, first state information related to the biological motion unit is obtained from the motion state information collected from the robot, and the first state information can be input into the twin model for simulation processing to obtain a simulation result, thereby analyzing the first control parameter according to the simulation result and the first state information, so as to control the operation of the first controller according to the first control parameter. Therefore, the control parameter of the first controller can be dynamically updated according to the state information actually fed back by the biological motion unit, and at the same time, the change characteristics of the biological material are applied to the specific update strategy of the control parameter, so that the first controller drives the biological motion unit to show a variety of bionic and flexible motion forms, improves the control precision of the robot, and then flexibly adapts to a variety of complex application environments. BRIEF DESCRIPTION OF THE DRAWINGS
[0027] Figure 1 It is an application schematic diagram of a control system of a robot in an embodiment of the present application;
[0028] Figure 2 It is a flowchart of a control method of a robot in an embodiment of the present application;
[0029] Figure 3 It is a flow chart of a distribution control strategy in an embodiment of the present application;
[0030] Figure 4 yes Figure 3 A specific flow chart of step S310;
[0031] Figure 5 is a schematic diagram of the structure of a control system of a robot provided in an embodiment of the present application;
[0032] Figure 6 It is a schematic diagram of the hardware structure of the electronic device provided in the embodiment of the present application. DETAILED DESCRIPTION
[0033] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0034] It should be noted that, although the functional modules are divided in the device schematic diagram and the logical order is shown in the flowchart, in some cases, the steps shown or described may be performed in a different order than the module division in the device or the order in the flowchart. The terms "first", "second", etc. in the specification, claims and the above drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence.
[0035] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art to which this application belongs. The terms used herein are only for the purpose of describing the embodiments of this application and are not intended to limit this application.
[0036] First, the nouns involved in this application are analyzed:
[0037] The twin model is used to digitally present physical objects in virtual space, that is, to create a virtual model for the physical object in a digital way to simulate its behavioral characteristics in the real environment. Generally speaking, the twin model can be constructed by building a set of input-output relationships based on biological mechanisms, and then by approximating and simplifying the input-output relationships, a simplified model applied to actual engineering can be obtained.
[0038] Bionic robots, which are robots that imitate living things and perform work that is characteristic of living things, have become a hot topic of research and development at home and abroad in recent years. Current bionic robots use robots with programmable appearances, which can change the characteristics of the robot during its movement by designing its appearance structure during the construction process. However, the control precision of such robots is low, so they cannot be flexibly adapted to a variety of complex application environments.
[0039] Based on this, the embodiments of the present application provide a robot control method and system, and electronic equipment, aiming to improve the control precision of the robot so as to flexibly adapt to a variety of complex application environments.
[0040] The robot control method, system, and electronic device provided in the embodiments of the present application are specifically described through the following embodiments. First, the robot control method in the embodiments of the present application is described.
[0041] The embodiments of the present application can acquire and process relevant data based on artificial intelligence technology. Among them, artificial intelligence (AI) is a theory, method, technology and application system that uses digital computers or machines controlled by digital computers to simulate, extend and expand human intelligence, perceive the environment, acquire knowledge and use knowledge to obtain the best results. The control method of the robot provided in the embodiments of the present application can be applied to the terminal, can also be applied to the server side, and can also be software running in the terminal or server side. In some embodiments, the terminal can be a smart phone, a tablet computer, a laptop computer, a desktop computer, etc.; the server side can be configured as an independent physical server, or a server cluster or distributed system composed of multiple physical servers, and can also be configured to provide cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, and cloud servers for basic cloud computing services such as big data and artificial intelligence platforms; the software can be an application for implementing the control method of the robot, etc., but is not limited to the above forms.
[0042] The present application can be used in many general or special computer system environments or configurations. For example: personal computers, server computers, handheld or portable devices, tablet devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments including any of the above systems or devices, etc. The present application can be described in the general context of computer executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. The present application can also be practiced in distributed computing environments, in which tasks are performed by remote processing devices connected through a communication network. In a distributed computing environment, program modules can be located in local and remote computer storage media including storage devices.
[0043] For ease of understanding, the robot applicable to the embodiment of the present application is described below. In the embodiment of the present application, the robot includes M biological motion units, where M is a positive integer. Each biological motion unit can be distributed in different areas, and the value of M can be specified and adjusted by humans, and no specific limitation is made. The biological motion unit is a motion unit using biological materials. Specifically, the biological motion unit may include a biological driver and a second base, and the biological driver is connected to the second base to drive the second base to present different motion forms in response to an external drive signal. Among them, the biological driver includes but is not limited to muscle cells, dorsal vascular tissue, muscle microtubules and other biological living cells, and the second base may include but is not limited to glass and flexible organic materials. Based on this, in practical applications, by driving each biological motion unit separately, these biological motion units distributed in different areas and presenting different motion forms work together to form a robot that moves in a specific form or gait, which can make full use of the biological characteristics and motion characteristics of biomaterials, and combine advanced processing and manufacturing technologies such as materials science and engineering to achieve a robot biomimetic effect of "originating from nature and higher than nature", thereby showing adaptability and motion ability in complex confined spaces.
[0044] In some optional embodiments, the robot may further include N electromechanical motion units, where N is a positive integer, and the value of N may be manually specified and adjusted, without limitation. The electromechanical motion unit may be a motion unit using a mechanical body, and optionally, the electromechanical motion unit includes a mechanical body and an electromechanical driver, the electromechanical driver is used to drive the mechanical body to move, and the electromechanical driver may use piezoelectric ceramics, micro-magnetic devices, and micro-motors, etc., without specific limitation. In practical applications, the biological motion unit is connected to the electromechanical motion unit according to demand, and the electromechanical motion unit is controlled to work, so that the biological motion unit and the electromechanical motion unit can work together, so that the robot can achieve more diverse motion forms.
[0045] Based on the above robot, the embodiment of the present application can be applied to a robot control system. Figure 1 , Figure 1 Schematic diagram of the application of a robot control system in an embodiment of the present application. Figure 1 As shown, the control system may include a collaborative controller and a first controller. It should be understood that this is only an example and does not limit the number and type of controllers in the control system and motion units in the robot. Among them, the collaborative controller is connected to the first controller, and the first controller is connected to the corresponding biological motion unit. The collaborative controller is used to collaboratively control the various controllers in the control system, and can also adjust the control parameters of the first controller. The first controller is used to control the motion form of the corresponding biological motion unit. Optionally, if the robot also includes an electromechanical motion unit, the control system may also include a second controller, the collaborative controller is connected to the second controller, and the collaborative controller can adjust the control parameters of the second controller, and the second controller is connected to the corresponding electromechanical motion unit to control the movement of the electromechanical motion unit.
[0046] It can be understood that in some implementations, the control system includes M first controllers and N second controllers, each first controller is connected to a different biological motion unit, and each second controller is connected to a different electromechanical motion unit.
[0047] In some optional implementations, both the first controller and the second controller may be proportional integral (PI) controllers.
[0048] In some optional embodiments, the electromechanical motion unit may include a support portion and a transmission portion, and the support portion is connected to the transmission portion. The first controller is connected to the transmission portion to control the movement of the transmission portion, so that the transmission portion drives the support portion to move. The support portion is connected to the biological motion unit through the first base portion, so that the biological motion unit and the electromechanical motion unit are coupled through a mechanical connection. Among them, the first base portion can be made of glass and flexible organic materials, etc., without specific limitation.
[0049] For control systems based on the above robots, please refer to Figure 2 , Figure 2 is a flow chart of a robot control method in an embodiment of the present application, Figure 2 The method in can be applied to the above-mentioned collaborative controller, and the control method may include but is not limited to steps S210 to S250.
[0050] Step S210: Acquire the motion state information collected from the robot.
[0051] In the embodiments of the present application, the motion state information includes but is not limited to the position, motion speed (including linear velocity and angular velocity, etc.) and force information of the robot. It can be understood that the type of information contained in the motion state information can be flexibly adjusted according to different application scenarios, and no specific limitation is made to this. Specifically, the method of collecting motion state information includes but is not limited to: using visible light, fluorescence or infrared cameras to collect images, and using machine vision recognition methods to analyze position information from the images; using an external contact force sensor provided on the robot to collect force information, using a micro acceleration sensor and an external giant magnetoimpedance sensor to collect speed information, and using an electromyography sensor and a microelectrode sensor to collect state information of biological motion units.
[0052] Based on this, in practical applications, the following steps S220 to S250 can be performed on each biological motion unit respectively.
[0053] Step S220: Acquire first state information related to the biological motion unit from the motion state information.
[0054] In an embodiment of the present application, the information type of the first state information is related to the biological material used by the biological motion unit, so as to achieve targeted feedback state analysis. For example, if the biological motion unit is a muscle motion unit (i.e., a motion unit using muscle cells), the motion speed and force information can be screened out from the motion state information.
[0055] Step S230: input the first state information into the twin model corresponding to the biological motion unit for simulation processing to obtain a simulation result.
[0056] In an embodiment of the present application, the twin model is used to establish a mapping relationship between different state information of a biological motion unit. In an optional implementation, the twin model can be constructed by obtaining multiple training samples, the training samples include a drive signal and output information, and the output information is the state information collected from the biological motion unit after the drive signal is input into the biological motion unit. It can be understood that both the drive signal and the output information can use intrinsic parameters related to the biological characteristics of the generated material. For example, for muscles, these intrinsic parameters include but are not limited to the length of the muscle contraction element (CE) when the muscle contracts and generates maximum force, and the parameters that determine the relationship curve between force and length. The initial prediction model is trained using the training samples to obtain a twin model. The initial prediction model can be based on a linear regression model, a logistic regression model, a decision tree model, or an artificial neural network, etc., without specific limitation.
[0057] Take the muscle motor unit as an example. The twin model corresponding to the muscle motor unit can adopt the tendon (MTC) model based on the Hill model. It is known that the tendon model contains muscle contraction element (CE), muscle parallel elastic element (PEE), muscle series elastic element (SEE) and muscle series damping element (SDE). There is a force balance relationship between these four elements:
[0058] F CE +F PEE =F SEE +F SDE , F CE is the force value corresponding to the muscle contraction element, F PEE is the force value corresponding to the muscle parallel elastic element, F SEE is the force value corresponding to the elastic element in series with the muscle, F SDE is the force value corresponding to the muscle series damping element.
[0059] At this time, in the process of training the twin model, the muscle activation coefficient q and the overall tendon length l corresponding to the muscle motor unit can be taken MTC and tendon velocity i MTC As the driving signal, and take F_SEE, F_PEE, F_CE, F_SDE, F_MTC, CE length l CE and CE speed i CE As output information. The muscle activation coefficient q represents the activation state of the muscle, which can be adjusted according to task requirements and actual experience, and q 0 ≤q≤1,q 0 Indicates the minimum activation coefficient corresponding to the muscle being activated. Tendon velocity i MTC is the overall length of the tendon l MTC The derivative of CE speed i CE is the CE length l CE The derivative of .
[0060] Step S240: performing control parameter analysis according to the simulation result and the first state information to obtain the first control parameter.
[0061] In the embodiment of the present application, the simulation result represents the expected motion state of the biological motion unit, and the first state information represents the actual motion state of the biological motion unit. By comparing and analyzing the simulation result and the first state information, a comparison result is obtained, and then based on the conversion relationship between the comparison result and the control parameter, the first control parameter corresponding to the comparison result is obtained to achieve adjustment of the control parameter.
[0062] Step S250: Send the simulation result to the first controller, and control the first controller to work according to the first control parameter, and the first controller is used to control the movement form of the biological movement unit according to the simulation result.
[0063] It can be seen that through the above steps S210 to S250, the control parameters of the first controller can be dynamically updated according to the status information actually fed back by the biological motion unit, and at the same time, the changing characteristics of the biomaterial are applied to the specific update strategy of the control parameters, so that the first controller drives the biological motion unit to exhibit a variety of bionic and flexible motion forms, thereby improving the control precision of the robot, and thus flexibly adapting to a variety of complex application environments.
[0064] In step S230 of some embodiments, step S230 may include but is not limited to the following steps:
[0065] First, the first state information is divided into input state information and reference state information. Among them, the input state information is used to input into the twin model for simulation processing, and the reference state information is used to compare with the state information output by the twin model. According to actual needs, the types of information respectively contained in the input state information and the reference state information can be flexibly adjusted. That is to say, if the first state information includes S0 (S0 is a positive integer) kinds of state information, the input state information may include S1 (S1 is a positive integer) kinds of state information in the first state information, and the reference state information includes the state information in the first state information except the input state information, S1<S0. Exemplarily, if the first state information includes the muscle activation coefficient q, the tendon velocity i MTC , overall tendon length l MTC , F_SEE, F_PEE, F_CE, F_SDE, F_MTC, CE length l CE and CE speed i CE , the input state information may include the muscle activation coefficient q, the overall tendon length l MTC and tendon velocity i MTC , the reference status information may include F_SEE, F_PEE, F_CE, F_SDE, F_MTC, CE length l CE and CE speed i CE .
[0066] Afterwards, the input state information is input into the twin model corresponding to the biological motion unit for simulation processing to obtain simulation state information. Accordingly, step S240 may include but is not limited to the following steps: generating deviation information according to the simulation state information and the reference state information. Obtaining the current control parameter corresponding to the biological motion unit, thereby adjusting the current control parameter according to the deviation information to obtain the first control parameter.
[0067] Specifically, the current control parameter may be a control parameter corresponding to the first controller, and the first controller may adopt a PI controller, then the control model of the first controller satisfies:
[0068] u(t) is the control information output by the first controller, and the first controller inputs the control information into the biological motion unit to drive the biological motion unit to change the motion form. The current control parameters include kp and ki, kp is the P parameter of the first controller, ki is the I parameter of the first controller, e(t) is the simulation result, and t represents time.
[0069] It can be seen that by determining the deviation between the results of the simulation of the effects of the twin model on biological tissues and the environment and the state information of the robot during actual movement, and then using the deviation to update the control parameters of the first controller, it is beneficial to reduce the steady-state error of the system, improve the control accuracy, and make the actual motion form of the robot closer to the real needs.
[0070] In some optional embodiments, the robot may further include N electromechanical motion units. Figure 3 , Figure 3 Schematic diagram of a flow chart of a distribution control strategy in an embodiment of the present application. Figure 3 As shown, after step S210, the following steps may include but are not limited to S310 to S330.
[0071] Step S310: Allocate a first control strategy to the first controller and allocate a second control strategy to the second controller according to the motion state information.
[0072] In an embodiment of the present application, the first control strategy and the second control strategy may respectively include different power control information and other control information, and the above control strategies may be conditional and nonlinear, or linear, without specific limitation. Specifically, in step S310, the second state information related to the electromechanical motion unit may be obtained from the motion state information, and then the first control strategy may be assigned to the first controller and the second control strategy may be assigned to the second controller based on the first state information and the second state information. In other words, by combining the actual state information fed back by the biological motion unit and the electromechanical motion unit, and adaptively assigning the control strategies for the biological motion unit and the electromechanical motion unit, the overall coordination of the robot during movement and its adaptability to complex environments can be improved.
[0073] In some alternative embodiments, environmental information collected from the environment where the robot is located may also be obtained, and motion planning may be performed based on the environmental information to obtain the motion planning information of the robot. Among them, the environmental information may include, but is not limited to, the position and size of obstacles, and the distance and contact force between the obstacles and the robot. Optionally, the methods for collecting environmental information include, but are not limited to: using a photographing device provided on the robot to capture an environmental image of the environment where the robot is located, and identifying the obstacles and their positions and sizes from the environmental image through image recognition technology, so as to be applicable to occasions where the robot needs to move around obstacles; using a force sensor provided on the robot to detect the contact force between the robot and the obstacles, so as to be applicable to occasions where the robot needs to push an object with a certain flexible feature.
[0074] Optionally, the environmental information may include at least one environmental parameter (such as the position and size of the above-mentioned obstacles, etc.). The methods for performing motion planning based on the environmental information may include, but are not limited to, the following steps: according to the information type of each environmental parameter, obtain the evaluation function corresponding to this information type, and the evaluation function is used to evaluate the deviation degree between the environmental parameter and the preset parameter corresponding to this information type. Then, calculate the first evaluation result corresponding to the environmental parameter according to the evaluation function, and thus generate the planning information corresponding to the environmental parameter according to the first evaluation result. It can be understood that the motion planning information includes the planning information corresponding to each environmental parameter. Exemplarily, assume that the environmental parameter is the obstacle distance A and the preset parameter is the distance B. If A < B, then specify a new forward direction for the robot in the planning information; if A > B, then specify the original forward direction for the robot in the planning information.
[0075] Based on this, in step S310, specifically, according to the motion state information and in combination with the motion planning information, a first control strategy may be assigned to the first controller and a second control strategy may be assigned to the second controller, so as to consider both the motion planning of the robot and the state information fed back when assigning the control strategy, which is beneficial to further improving the matching between the actual motion state of the robot and the control strategy for the robot.
[0076] Furthermore, in some alternative embodiments, the motion planning information includes a first driving mode corresponding to a biological motion unit, a second driving mode corresponding to an electromechanical motion unit, and motion constraint conditions. Correspondingly, performing motion planning based on the environmental information to obtain the motion planning information of the robot may specifically include, but is not limited to, the following steps:
[0077] First, analyze the current application scenario according to the environmental information. Optionally, the task instruction input to the collaborative controller may also be obtained, and the current application scenario may be analyzed in combination with the environmental information and the task instruction. For example, if the environmental information is an underwater environment and the task instruction is used to instruct the robot to perform a swinging action, then the current application scenario is underwater pose adjustment.
[0078] Afterwards, motion form information matching the current application scenario is obtained, and the motion form information is used to determine the target motion form of the robot.
[0079] Finally, on the one hand, according to the motion morphology information, a first driving mode corresponding to the biological motion unit and a second driving mode corresponding to the electromechanical motion unit are obtained, wherein when the biological motion unit works in the first driving mode and the electromechanical motion unit works in the second driving mode, the robot moves in the target motion morphology. The first driving mode is used to determine the motion posture (or a series of motion postures) taken by the biological motion unit, and the second driving mode is used to determine the motion posture (or a series of motion postures) taken by the electromechanical drive unit.
[0080] On the other hand, motion constraints are generated based on the motion morphology information, wherein the motion constraints are used to specify conditions or parameter value ranges when allocating control strategies.
[0081] It can be seen that for different application scenarios, by matching the appropriate driving modes for the biological motion unit and the electromechanical motion unit respectively and setting motion constraints adapted to the application scenario, reliable and stable motion planning and control of the robot can be achieved in a variety of complex application scenarios.
[0082] In some optional implementations, the application scenarios used in the embodiments of the present application and their corresponding motion form information, driving modes and motion constraint information may include but are not limited to the contents shown in Table 1 below.
[0083] Table 1 Correspondence table of application scenarios, motion form information, driving mode and motion constraint information
[0084]
[0085] For further optional implementations, please refer to Figure 4 , Figure 4 yes Figure 3 A specific flow chart of step S310 in FIG. Figure 4 As shown, step S310 may include but is not limited to the following steps S311 to S314:
[0086] Step S311: Generate an input set, where the input set includes multiple input vectors, each of which includes first control information corresponding to the first controller and second control information corresponding to the second controller.
[0087] Step S312: Calculate the loss value corresponding to each input vector according to the input set, motion state information and a preset loss function.
[0088] Step S313: Obtain the input vector with the smallest loss value from all input vectors as the target vector.
[0089] Step S314: taking the first control information included in the target vector as the first control strategy of the first controller, and taking the second control information included in the target vector as the second control strategy of the second controller.
[0090] In practical applications, in order to optimize policy allocation, a policy allocation model can be constructed and policy allocation can be performed based on the following policy allocation model:
[0091] u_opt=argminL({M_b},{M_m},S,E,{u}), where {M_b} is a set of control models corresponding to all first controllers, {M_m} is a set of control models corresponding to all second controllers, S represents motion state information, E represents environmental information, {u} represents input set, u_opt is the target vector, and argminL function represents selecting the input vector corresponding to the minimum loss function from the input set as the target vector. The preset loss function can be any one of 0-1 loss function, absolute value loss function, logarithmic loss function, exponential loss function and Hinge loss function, which can be selected and adjusted according to actual needs, and will not be repeated here.
[0092] Specifically, in some optional implementations, the first control strategy includes the first power of the first controller, the second control strategy includes the second power of the second controller, the motion state information includes the impedance information of the robot, the impedance information is obtained by impedance control of the robot, and the impedance information is used to represent the relationship between the difference between the end contact force of the robot and the reference force and the difference between the reference trajectory and the actual trajectory, then, the environmental rigidity can be determined according to the preset impedance-rigidity conversion relationship and the impedance information, and the first power of the first controller and the second power of the second controller are determined according to the environmental rigidity. Among them, the first power satisfies a proportional relationship with the environmental rigidity, that is, the greater the environmental rigidity, the greater the first power, otherwise, the smaller the first power, so that the robot presents more diverse biological flexibility characteristics as a whole to adapt to the rigidity of the environment. Optionally, the ratio of the first power to the second power can also satisfy a proportional relationship with the environmental rigidity, that is, the greater the environmental rigidity, the greater the ratio of the first power to the second power, otherwise, the smaller the ratio of the first power to the second power.
[0093] In some other optional implementations, the preset loss function L(t) may be:
[0094] L(t)=(y(p1(t),p2(t))-s(t)) 2, where y(p1(t), p2(t)) represents the environmental rigidity at time t, s(t) is the rigidity of the control system expected to be achieved at time t, p1(t) represents the output power of the biological motion unit at time t, p2(t) represents the output power of the electromechanical motion unit at time t, and y(p1(t), p2(t) = c1*p1(t) + c2*p2(t), c1 and c2 are system constants measured experimentally, c1>0, c2>0.
[0095] In other words, we only need to solve the minimum value of the loss function L(t) to obtain the target control input u_opt at the current moment.
[0096] Step S320: Send the first control strategy to the first controller, and the first controller is also used to control the operation of the biological motion unit according to the first control strategy.
[0097] Step S330: Send the second control strategy to the second controller, and the second controller is used to control the electromechanical motion unit to work according to the second control strategy.
[0098] See also Figure 5 The embodiment of the present application further provides a control system of a robot, wherein the robot includes a biological motion unit, the biological motion unit is a motion unit using biological materials, and the system includes a collaborative controller 501 and a first controller 502, wherein:
[0099] The collaborative controller 501 is used to obtain motion state information collected from the robot; obtain first state information related to the biological motion unit from the motion state information; input the first state information into the twin model corresponding to the biological motion unit for simulation processing to obtain a simulation result, wherein the twin model is used to establish a mapping relationship between different state information of the biological motion unit based on the biological material; perform control parameter analysis based on the simulation result and the first state information to obtain a first control parameter; and send the first control parameter to the first controller.
[0100] The first controller 502 is used to control the operation of the biological motion unit according to the first control parameter.
[0101] In some optional implementations, the system further includes a second controller 503, wherein:
[0102] The collaborative controller 501 is further used to allocate a first control strategy to the first controller and allocate a second control strategy to the second controller according to the motion state information; send the first control strategy to the first controller and send the second control strategy to the second controller;
[0103] The first controller 502 is also used to control the operation of the biological motion unit according to the first control strategy;
[0104] The second controller 503 is used to control the operation of the electromechanical motion unit according to the second control strategy.
[0105] It can be understood that the specific implementation of the control system of the robot is basically the same as the specific implementation of the control method of the above-mentioned robot, and will not be repeated here.
[0106] The embodiment of the present application also provides an electronic device, the electronic device comprising: a memory, a processor, a program stored in the memory and executable on the processor, and a data bus for realizing connection and communication between the processor and the memory, and the program is executed by the processor to realize the control method of the robot. The electronic device can be any intelligent terminal including a tablet computer, a vehicle-mounted computer, etc.
[0107] See also Figure 6 , Figure 6 The hardware structure of an electronic device of another embodiment is illustrated, and the electronic device includes:
[0108] The processor 601 may be implemented by a general-purpose CPU (central processing unit), a microprocessor, an application specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of the present application;
[0109] The memory 602 can be implemented in the form of a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM). The memory 602 can store an operating system and other application programs. When the technical solution provided in the embodiment of this specification is implemented by software or firmware, the relevant program code is stored in the memory 602, and the processor 601 calls and executes the control method of the robot in the embodiment of this application;
[0110] Input / output interface 603, used to implement information input and output;
[0111] Communication interface 604, used to realize communication interaction between the device and other devices, which can be realized by wired mode (such as USB, network cable, etc.) or wireless mode (such as mobile network, WIFI, Bluetooth, etc.);
[0112] Bus 605 , which transmits information between various components of the device (e.g., processor 601 , memory 602 , input / output interface 603 , and communication interface 604 );
[0113] The processor 601 , the memory 602 , the input / output interface 603 and the communication interface 604 are connected to each other in communication within the device via a bus 605 .
[0114] An embodiment of the present application also provides a storage medium, which is a computer-readable storage medium used for computer-readable storage. The storage medium stores one or more programs, and the one or more programs can be executed by one or more processors to implement the above-mentioned robot control method.
[0115] The embodiments described in the embodiments of the present application are intended to more clearly illustrate the technical solutions of the embodiments of the present application and do not constitute a limitation on the technical solutions provided in the embodiments of the present application. Those skilled in the art will appreciate that with the evolution of technology and the emergence of new application scenarios, the technical solutions provided in the embodiments of the present application are also applicable to similar technical problems.
[0116] It can be understood by those skilled in the art that Figure 1-6 The technical solutions shown in the figure do not constitute a limitation on the embodiments of the present application, and may include more or fewer steps than those shown in the figure, or a combination of certain steps, or different steps.
[0117] The device embodiments described above are merely illustrative, and the units described as separate components may or may not be physically separated, that is, they may be located in one place or distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0118] Those skilled in the art will appreciate that all or some of the steps in the methods disclosed above, and the functional modules / units in the systems and devices may be implemented as software, firmware, hardware, or a suitable combination thereof.
[0119] The terms "first", "second", "third", "fourth", etc. (if any) in the specification of the present application 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 interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device comprising a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0120] The preferred embodiments of the present invention are described above with reference to the accompanying drawings, but the scope of the rights of the present invention is not limited thereto. Any modification, equivalent substitution and improvement made by a person skilled in the art without departing from the scope and essence of the present invention should be within the scope of the rights of the present invention.
Claims
1. A robot control method, characterized in that: The robot comprises M biological motion units, where M is a positive integer, and the biological motion units are motion units made of biological materials. The method comprises: Acquiring motion state information collected from the robot; Acquire first state information related to the biological motion unit from the motion state information; Inputting the first state information into a twin model corresponding to the biological motion unit for simulation processing to obtain a simulation result, wherein the twin model is used to establish a mapping relationship between different state information of the biological motion unit; Perform control parameter analysis according to the simulation result and the first state information to obtain a first control parameter; Sending the simulation result to a first controller, and controlling the first controller to work according to the first control parameter, wherein the first controller is used to control the motion form of the biological motion unit according to the simulation result; The step of inputting the first state information into the twin model corresponding to the biological motion unit for simulation processing to obtain a simulation result includes: dividing the first state information into input state information and reference state information; Inputting the input state information into the twin model corresponding to the biological motion unit for simulation processing to obtain simulation state information; The performing control parameter analysis according to the simulation result and the first state information to obtain the first control parameter includes: Generate deviation information according to the simulation state information and the reference state information; obtain current control parameters corresponding to the biological motion unit; The current control parameter is adjusted according to the deviation information to obtain a first control parameter.
2. The method according to claim 1, characterized in that The robot further includes N electromechanical motion units, where N is a positive integer; after acquiring the motion state information collected from the robot, the method further includes: According to the motion state information, a first control strategy is assigned to the first controller, and a second control strategy is assigned to the second controller; Sending the first control strategy to the first controller, wherein the first controller is further used to control the biological motion unit to work according to the first control strategy; The second control strategy is sent to the second controller, and the second controller is used to control the operation of the electromechanical motion unit according to the second control strategy.
3. The method according to claim 2, characterized in that The step of allocating a first control strategy to the first controller and a second control strategy to the second controller according to the motion state information includes: Generate an input set, the input set including a plurality of input vectors, each of the input vectors including first control information corresponding to the first controller and second control information corresponding to the second controller; Calculate the loss value corresponding to each input vector according to the input set, the motion state information and a preset loss function; Obtaining an input vector with the smallest loss value from the input set as a target vector; The first control information included in the target vector is taken as the first control strategy of the first controller, and the second control information included in the target vector is taken as the second control strategy of the second controller.
4. The method according to claim 2, characterized in that: The method further comprises: Acquire environmental information collected from the environment in which the robot is located; Perform motion planning according to the environmental information to obtain motion planning information of the robot; The step of allocating a first control strategy to the first controller and a second control strategy to the second controller according to the motion state information includes: According to the motion state information and in combination with the motion planning information, a first control strategy is allocated to the first controller, and a second control strategy is allocated to the second controller.
5. The method according to claim 4, characterized in that The motion planning information includes a first driving mode corresponding to the biological motion unit, a second driving mode corresponding to the electromechanical motion unit, and motion constraints; performing motion planning according to the environmental information to obtain the motion planning information of the robot includes: analyzing a current application scenario according to the environmental information; Acquire motion form information matching the current application scenario, wherein the motion form information is used to determine a target motion form of the robot; According to the motion form information, a first driving mode corresponding to the biological motion unit and a second driving mode corresponding to the electromechanical motion unit are acquired, wherein when the biological motion unit works in the first driving mode and the electromechanical motion unit works in the second driving mode, the robot moves in the target motion form; The motion constraint condition is generated according to the motion form information.
6. The method according to any one of claims 2 to 5, characterized in that: The electromechanical motion unit includes a supporting part and a transmission part, wherein the supporting part is connected to the transmission part, the transmission part is connected to the second controller, and the supporting part is connected to the biological motion unit via a first base part.
7. A robot control system, characterized in that: The robot comprises M biological motion units, where M is a positive integer, and the biological motion units are motion units made of biological materials. The system comprises: A collaborative controller is used to obtain motion state information collected from the robot; obtain first state information related to the biological motion unit from the motion state information; input the first state information into a twin model corresponding to the biological motion unit for simulation processing to obtain a simulation result, wherein the twin model is used to establish a mapping relationship between different state information of the biological motion unit; perform control parameter analysis based on the simulation result and the first state information to obtain a first control parameter; send the simulation result to a first controller, and control the first controller to work according to the first control parameter; A first controller, used for controlling the motion form of the biological motion unit according to the simulation result; The step of inputting the first state information into the twin model corresponding to the biological motion unit for simulation processing to obtain a simulation result includes: dividing the first state information into input state information and reference state information; Inputting the input state information into the twin model corresponding to the biological motion unit for simulation processing to obtain simulation state information; The performing control parameter analysis according to the simulation result and the first state information to obtain the first control parameter includes: Generate deviation information according to the simulation state information and the reference state information; obtain current control parameters corresponding to the biological motion unit; The current control parameter is adjusted according to the deviation information to obtain a first control parameter.
8. The system according to claim 7, characterized in that The robot further comprises N electromechanical motion units, where N is a positive integer, and the system further comprises a second controller, wherein: The collaborative controller is further configured to allocate a first control strategy to the first controller and a second control strategy to the second controller according to the motion state information; send the first control strategy to the first controller and send the second control strategy to the second controller; The first controller is further used to control the operation of the biological motion unit according to the first control strategy; The second controller is used to control the operation of the electromechanical motion unit according to the second control strategy.
9. An electronic device, characterized in that: The electronic device includes a memory, a processor, a program stored in the memory and executable on the processor, and a data bus for realizing connection and communication between the processor and the memory. When the program is executed by the processor, the steps of the robot control method as described in any one of claims 1 to 6 are realized.
Citation Information
Patent Citations
Bionic joint control system and method based on multi-motor drive
CN110027002A
Industrial robot digital twinning system combined with intelligent vision and operation method thereof
CN111633644A