Robotic arm trajectory optimization method, device, electronic equipment and storage medium
By determining and optimizing the multi-objective function in the robotic arm and optimizing the motion trajectory using the chaotic particle swarm algorithm, the impact of the change in the pose of the robotic arm on the control accuracy is solved, and more efficient energy management and more precise control is achieved.
Patent Information
- Application Number
- CN202410788385.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-06-18
- Publication Date
- 2025-02-28
- Estimated Expiration
- 2044-06-18
AI Technical Summary
Changes in the base posture of the robot arm have a great impact on the control accuracy of the end mechanism of the robot arm, and it is difficult for the prior art to effectively optimize the movement trajectory of the robot arm to reduce energy consumption.
By determining the first objective function of the robot arm (targeted with the minimum perturbation) and the second objective function (targeted with the minimum torque energy) and combining the constraints of joint angle and angular velocity information, the multi-objective function is optimized using the chaotic particle swarm algorithm to obtain the optimal motion trajectory.
The motion trajectory optimization of the robot arm base with minimum disturbance and minimum torque energy consumption is achieved, which improves the control accuracy and practical application effect of the robot arm, and reduces the impact of base posture changes on the control accuracy of the terminal mechanism.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of robotic arm technology, and in particular to a robotic arm trajectory optimization method, device, electronic device and storage medium. Background Art
[0002] With the continuous development of robotics technology, the application scenarios of robotics technology are becoming more and more extensive. As an important actuator of robots, robotic arms can effectively improve production quality and efficiency. Robotic arms include but are not limited to space robotic arms and vehicle-mounted robotic arms. In complex and changeable working scenarios, the change of the posture of the robotic arm base has a great influence on the control accuracy of the robotic arm end mechanism. Summary of the invention
[0003] The present disclosure provides a robot arm trajectory optimization method, device, electronic equipment and storage medium.
[0004] According to a first aspect of the present disclosure, a robot arm trajectory optimization method is provided, comprising:
[0005] According to the dynamic information of the robot arm, the first objective function and the second objective function of the robot arm are determined; the first objective function refers to a function that aims to minimize the disturbance to the base of the robot arm, and the second objective function refers to a function that aims to minimize the torque energy of the robot arm;
[0006] Determine the constraint condition of the robotic arm according to the joint angle information and the angular velocity information of the robotic arm; the joint angle information of the robotic arm includes the maximum value information of the joint angle and the minimum value information of the joint angle; the angular velocity information of the robotic arm includes the maximum value information of the angular velocity and the minimum value information of the angular velocity;
[0007] According to the first objective function, the second objective function and the constraint conditions, a multi-objective function is determined with minimizing the base disturbance as a high priority and minimizing the torque energy of the manipulator as a secondary priority;
[0008] Based on the chaotic particle swarm algorithm, the multi-objective function is optimized to obtain the optimal solution information of the multi-objective function;
[0009] According to the optimal solution information of the multi-objective function, the motion trajectory information of the robot arm is determined.
[0010] According to a second aspect of the present disclosure, there is provided a robot arm trajectory optimization device, comprising:
[0011] A first determination module is used to determine a first objective function and a second objective function of the robotic arm according to the dynamic information of the robotic arm; the first objective function refers to a function that aims to minimize the disturbance to the base of the robotic arm, and the second objective function refers to a function that aims to minimize the torque energy of the robotic arm;
[0012] The second determination module is used to determine the constraint condition of the robotic arm according to the joint angle information of the robotic arm and the angular velocity information of the robotic arm; the joint angle information of the robotic arm includes the maximum value information of the joint angle and the minimum value information of the joint angle; the angular velocity information of the robotic arm includes the maximum value information of the angular velocity and the minimum value information of the angular velocity;
[0013] A third determination module is used to determine a multi-objective function with minimizing the base disturbance as a high priority and minimizing the mechanical arm torque energy as a secondary priority according to the first objective function, the second objective function and the constraint condition;
[0014] The optimization module is used to optimize the multi-objective function based on the chaotic particle swarm algorithm to obtain the optimal solution information of the multi-objective function;
[0015] The fourth determination module is used to determine the motion trajectory information of the robot arm according to the optimal solution information of the multi-objective function.
[0016] According to a third aspect of the present disclosure, there is provided an electronic device, including:
[0017] at least one processor; and
[0018] a memory communicatively connected to at least one processor; wherein,
[0019] The memory stores instructions that can be executed by at least one processor, and the instructions are executed by at least one processor so that the at least one processor can execute the method of the first aspect mentioned above.
[0020] According to a fourth aspect of the present disclosure, a non-transitory computer-readable storage medium storing computer instructions is provided, wherein the computer instructions are used to enable a computer to execute the method of the first aspect.
[0021] According to a fifth aspect of an embodiment of the present disclosure, there is provided a computer program product, comprising a computer program, which implements the steps of any one of the methods in the first aspect when executed by a processor.
[0022] The technical solution provided by the embodiments of the present disclosure may include the following beneficial effects: determining the first objective function and the second objective function of the robotic arm according to the dynamic information of the robotic arm; the first objective function refers to a function with the goal of minimizing the base disturbance of the robotic arm, and the second objective function refers to a function with the goal of minimizing the torque energy of the robotic arm; determining the constraint conditions of the robotic arm according to the joint angle information of the robotic arm and the angular velocity information of the robotic arm; the joint angle information of the robotic arm includes the maximum value information of the joint angle and the minimum value information of the joint angle; the angular velocity information of the robotic arm includes the maximum value information of the angular velocity and the minimum value information of the angular velocity; determining a multi-objective function with minimizing the base disturbance as a high priority and minimizing the torque energy of the robotic arm as a secondary priority according to the first objective function, the second objective function and the constraint conditions; optimizing the multi-objective function based on the chaotic particle swarm algorithm to obtain the optimal solution information of the multi-objective function, thereby avoiding the problem of premature convergence and falling into a local optimal solution of the particle swarm algorithm, and improving the global search capability and optimization accuracy of the particle swarm algorithm for the multi-objective function with minimizing the base disturbance as a high priority and minimizing the torque energy of the robotic arm as a secondary priority. According to the optimal solution information of the multi-objective function, the motion trajectory information of the robot arm is determined. This can provide the desired trajectory with the minimum disturbance to the base of the robot arm and the minimum torque energy consumption of the robot arm for the rapid stabilization control of the robot arm, so as to improve the actual application effect of the robot arm and reduce the influence of the posture change of the robot arm base on the control accuracy of the robot arm end mechanism.
[0023] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0024] The accompanying drawings are used to better understand the present solution and do not constitute a limitation of the present disclosure.
[0025] Figure 1 is an example diagram of a robotic arm provided according to an embodiment of the present disclosure;
[0026] Figure 2 is a flow chart of a robot arm trajectory optimization method provided according to an embodiment of the present disclosure;
[0027] Figure 3 is a flow chart of a robot arm trajectory optimization method provided according to an embodiment of the present disclosure;
[0028] Figure 4 is a flow chart of a robot arm trajectory optimization method provided according to an embodiment of the present disclosure;
[0029] Figure 5 is a block diagram of a robot arm trajectory optimization device provided according to an embodiment of the present disclosure;
[0030] Figure 6 is a block diagram of an electronic device provided according to an embodiment of the present disclosure. DETAILED DESCRIPTION
[0031] The following is a description of exemplary embodiments of the present disclosure in conjunction with the accompanying drawings, including various details of the embodiments of the present disclosure to facilitate understanding, which should be considered as merely exemplary. Therefore, it should be recognized by those of ordinary skill in the art that various changes and modifications may be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. Similarly, for the sake of clarity and conciseness, descriptions of well-known functions and structures are omitted in the following description.
[0032] Figure 1 is an example diagram of a robotic arm provided according to an embodiment of the present disclosure. Figure 1 As shown, the robot arm includes but is not limited to a base, multiple connecting rods, and multiple joints. Wherein, O refers to the origin in the inertial coordinate system; O 0 is the center of mass in the base; O n Refers to the center of mass of the nth joint in the robot arm; C n is the center of mass of the nth link in the robot arm; a n Refers to the vector information from the nth joint to the nth link in the robot arm; b n Refers to the vector information from the nth link to the nth joint in the robotic arm.
[0033] Exemplarily, the vector information from the nth joint to the nth link in the robot arm can be calculated by the following formula (1):
[0034] a n =C n -O n (1)
[0035] Among them, a n Refers to the vector information from the nth joint to the nth link in the robot arm; C n It refers to the center of mass of the nth link in the robot arm; O n It refers to the center of mass of the nth joint in the robot arm; O 0 Refers to the center of mass of the base of the robot arm.
[0036] Exemplarily, the vector information from the nth link to the nth joint in the robot arm can be calculated by the following formula (2):
[0037] b n =O n+1 -C n (2)
[0038] Among them, b nRefers to the vector information from the nth link to the nth joint in the robot arm; n+1 Refers to the center of mass of the n+1th joint in the robot; C n It is the center of mass of the nth link in the robot arm.
[0039] Among them, r n Refers to the position vector information of the center of mass of the nth link in the robot arm; p e Refers to the position vector information of the end of the robot arm.
[0040] Exemplarily, the position vector information of the center of mass of the nth link in the robot arm can be calculated by the following formula (3):
[0041]
[0042] Among them, r n Refers to the position vector information of the center of mass of the nth link in the robot arm; a n Refers to the vector information from the nth joint to the nth link in the robot arm; b n It refers to the vector information from the nth link to the nth joint in the robotic arm; N refers to the number of multiple links in the robotic arm.
[0043] It should be noted that, in some embodiments, Figure 1 The robotic arm shown can be a space robotic arm, a vehicle-mounted robotic arm, or a robotic arm whose base is susceptible to disturbance. When the space robotic arm performs the task of capturing an on-orbit target, due to the free floating characteristics in space and the dynamic coupling characteristics of the base and joints of the space robotic arm, the change in the base posture has a great influence on the control accuracy of the end mechanism. It is necessary to stabilize the base of the space robotic arm during the contact process, and when performing on-orbit tasks, it is necessary to reduce the fuel consumption of the space robotic arm as much as possible. When the vehicle-mounted robotic arm performs the target operation task, since the robotic arm and the mobile chassis share a battery system, while ensuring that the disturbance error of the vehicle-mounted robotic arm base is minimized, it is also necessary to reduce the energy consumption of the robotic arm as much as possible to avoid excessive energy consumption of the vehicle-mounted robotic arm affecting the application effect of the vehicle-mounted robotic arm. Figure 2 is a flow chart of a robot arm trajectory optimization method provided according to an embodiment of the present disclosure. Figure 2 As shown, the robot arm trajectory optimization method includes but is not limited to the following steps:
[0044] In step S201 , a first objective function and a second objective function of the robotic arm are determined according to the dynamic information of the robotic arm.
[0045] It is understandable that when the robotic arm is performing a target operation task, due to the dynamic coupling characteristics between the base and each joint in the robotic arm, the change in the base posture has an impact on the control accuracy of the robotic arm's end structure, and the energy consumption of the robotic arm has a great impact on the use effect of the robotic arm.
[0046] It should be noted that, in some embodiments, the first objective function refers to a function that aims to minimize the base disturbance of the robot arm, and the second objective function refers to a function that aims to minimize the torque energy of the robot arm.
[0047] It should be noted that, in some embodiments, the robotic arm may be a vehicle-mounted robotic arm or a space robotic arm, and the present disclosure again does not make specific limitations and will not elaborate on it.
[0048] In step S202, the constraint conditions of the robotic arm are determined according to the joint angle information and the joint angular velocity information of the robotic arm.
[0049] It is understandable that there is a correlation between the angular velocity information of the robot arm and the torque energy limit of the robot arm.
[0050] It should be noted that, in some embodiments, the joint angle information of the robotic arm includes the maximum value information of the joint angle and the minimum value information of the joint angle; the angular velocity information of the robotic arm includes the maximum value information of the angular velocity and the minimum value information of the angular velocity.
[0051] Exemplarily, the constraint condition of the robot arm can be expressed by the following formula (4):
[0052]
[0053] Among them, q min Refers to the minimum value information of the joint angle of the robot arm; q max Refers to the maximum value information of the joint angle of the robot arm; Refers to the maximum angular velocity information of the robot arm; Refers to the minimum angular velocity information of the robot arm.
[0054] In step S203, based on the first objective function, the second objective function and the constraint conditions, a multi-objective function is determined with minimizing the base disturbance as a high priority and minimizing the torque energy of the robot arm as a secondary priority.
[0055] Optionally, in some embodiments, according to a preset first weight coefficient, a preset second weight coefficient, a first objective function, a second objective function and a constraint condition, a multi-objective function with a high priority of minimizing the base disturbance and a secondary priority of minimizing the mechanical arm torque energy is determined. Exemplarily, the multi-objective function with a high priority of minimizing the base disturbance and a secondary priority of minimizing the mechanical arm torque energy can be expressed by the following formula (5):
[0056]
[0057] Among them, J refers to the multi-objective function with the minimum base disturbance as the high priority and the minimum torque energy of the manipulator as the secondary priority; J d refers to the first objective function; k 1 Refers to the preset first weight coefficient; J e refers to the second objective function; k 2 refers to the preset second weight coefficient; min refers to the minimum function; q min Refers to the minimum value information of the joint angle of the robot arm; q max Refers to the maximum value information of the joint angle of the robot arm; Refers to the maximum angular velocity information of the robot arm; Refers to the minimum angular velocity information of the robot arm.
[0058] In step S204, the multi-objective function is optimized based on the chaotic particle swarm algorithm to obtain the optimal solution information of the multi-objective function.
[0059] It should be noted that the chaotic particle swarm algorithm is an algorithm that uses chaos theory to enhance the global search capability of the particle swarm optimization algorithm. Compared with the traditional particle swarm algorithm, the chaotic particle swarm algorithm can avoid the problem of premature convergence and falling into the local optimal solution, and improve the global search capability and optimization accuracy for multi-objective functions. Optionally, in some embodiments, the chaotic particle swarm algorithm is a particle swarm algorithm based on chaotic mapping; the multi-objective function is optimized using the particle swarm algorithm based on chaotic mapping to obtain the optimal solution information of the multi-objective function.
[0060] In step S205, the motion trajectory information of the robot arm is determined according to the optimal solution information of the multi-objective function.
[0061] It should be noted that, in some embodiments, the optimal solution information of the multi-objective function includes but is not limited to the optimal information of the base angle, the optimal information of the joint angle, and the optimal information of the torque energy of the robot. The optimal solution information of the multi-objective function can be used to obtain the motion trajectory information with the minimum disturbance to the base of the robot and the minimum torque energy consumption of the robot. Optionally, in some embodiments, the motion trajectory information of the robot is determined based on the optimal information of the base angle, the optimal information of the joint angle, and the optimal information of the torque energy of the robot; the motion trajectory information of the robot is the motion trajectory information with the minimum disturbance to the base of the robot and the minimum torque energy consumption of the robot.
[0062] In an embodiment of the present disclosure, a first objective function and a second objective function of the robotic arm are determined according to the dynamic information of the robotic arm; the first objective function refers to a function with the goal of minimizing the base disturbance of the robotic arm, and the second objective function refers to a function with the goal of minimizing the torque energy of the robotic arm; the constraint conditions of the robotic arm are determined according to the joint angle information of the robotic arm and the angular velocity information of the robotic arm; the joint angle information of the robotic arm includes the maximum value information of the joint angle and the minimum value information of the joint angle; the angular velocity information of the robotic arm includes the maximum value information of the angular velocity and the minimum value information of the angular velocity; according to the first objective function, the second objective function and the constraint conditions, a multi-objective function with minimizing the base disturbance as a high priority and minimizing the torque energy of the robotic arm as a secondary priority is determined; the multi-objective function is optimized based on the chaotic particle swarm algorithm to obtain the optimal solution information of the multi-objective function, which can avoid the problem of premature convergence and falling into a local optimal solution of the particle swarm algorithm, and improve the global search capability and optimization accuracy of the particle swarm algorithm for the multi-objective function with minimizing the base disturbance as a high priority and minimizing the torque energy of the robotic arm as a secondary priority. According to the optimal solution information of the multi-objective function, the motion trajectory information of the robot arm is determined. This can provide the desired trajectory with the minimum disturbance to the base of the robot arm and the minimum torque energy consumption of the robot arm for the rapid stabilization control of the robot arm, so as to improve the actual application effect of the robot arm and reduce the influence of the posture change of the robot arm base on the control accuracy of the robot arm end mechanism.
[0063] Figure 3 is a flow chart of a robot arm trajectory optimization method provided according to an embodiment of the present disclosure. Figure 3 As shown, the robot arm trajectory optimization method includes but is not limited to the following steps:
[0064] In step S301, a first objective function of the robotic arm is determined according to the dynamic information of the robotic arm.
[0065] It should be noted that, in some embodiments, the robotic arm includes multiple links; the dynamic information of the robotic arm includes the angular velocity information, moment of inertia matrix, position vector information and speed information of each link in the multiple links; the moment of inertia matrix of the link refers to the moment of inertia matrix of the link relative to the center of mass of the link, the position vector information of the link refers to the position vector information of the link relative to the center of mass of the link, and the speed information of the link refers to the speed information of the link relative to the center of mass of the link.
[0066] Optionally, in some embodiments, the functional relationship between the base attitude angular velocity information of the manipulator and the joint angular velocity information of each link is determined based on the rotational angular velocity information, the moment of inertia matrix, the position vector information, and the velocity information of each link. Exemplarily, an intermediate functional relationship is determined based on the rotational angular velocity information, the moment of inertia matrix, the position vector information, and the velocity information of each link; and the functional relationship between the base attitude angular velocity information of the manipulator and the joint angular velocity information of each link is determined based on the intermediate functional relationship.
[0067] For example, the intermediate function relationship can be expressed by the following formula (6):
[0068]
[0069] Among them, I i is the moment of inertia matrix of the nth connecting rod; ω i Refers to the rotational angular velocity information of the nth connecting rod; r i Refers to the position vector information of the nth connecting rod; It refers to the speed information of the nth link; N refers to the number of multiple links in the robot arm; const refers to a constant.
[0070] It should be noted that, in some embodiments, the joint angular velocity information of each link may be the angular velocity information of the joint corresponding to each link.
[0071] For example, the functional relationship between the base attitude angular velocity information of the robot arm and the joint angular velocity information of each link can be expressed by the following formula (7):
[0072]
[0073] Among them, L 0 It refers to the initial angular momentum of the manipulator; Refers to the angular velocity information of the base attitude of the robot arm; Refers to the joint angular velocity information of each link in the robotic arm; I s Refers to the inertia matrix of the base in the robot arm; I M Refers to the inertia matrix of each joint in the robotic arm.
[0074] It should be noted that, in some embodiments, the initial angular momentum of the robot arm is 0. Exemplarily, when the initial angular momentum of the robot arm is 0, the functional relationship between the base attitude angular velocity information of the robot arm and the joint angular velocity information of each link can be expressed by the following formula (8):
[0075]
[0076] in, Refers to the angular velocity information of the base attitude of the robot arm; Refers to the joint angular velocity information of each link in the robotic arm; I s Refers to the inertia matrix of the base in the robot arm; I M Refers to the inertia matrix of each joint in the robotic arm.
[0077] Optionally, in some embodiments, the first objective function of the robotic arm is determined based on the functional relationship between the base attitude angular velocity information of the robotic arm and the joint angular velocity information of each link.
[0078] Optionally, in some embodiments, based on the functional relationship between the base attitude angular velocity information of the robot arm and the joint angular velocity information of each link, the change in the base attitude angular velocity information of the robot arm related to each link within the first time period is determined; based on the change in the base attitude angular velocity information of the robot arm related to each link within the first time period, the first objective function of the robot arm is determined.
[0079] For example, the change in the base attitude angular velocity information of the robot arm during the first time period related to each link can be expressed by the following formula (9):
[0080]
[0081] Among them, S n It refers to the change in the base attitude angular velocity information of the manipulator related to the nth link in the first time period; t f Refers to the end time point of the first time period; t 0 It refers to the starting time point of the first time period; It refers to the joint angular velocity information of the nth link in the robotic arm; N refers to the number of multiple links in the robotic arm.
[0082] For example, the first objective function of the robot arm can be expressed by the following formula (10):
[0083]
[0084] Among them, J d Refers to the first objective function of the robot; S nIt refers to the change in the base attitude angular velocity information of the manipulator related to the nth link in the first time period; It refers to the transposed matrix of the change amount related to the nth link in the base attitude angular velocity information of the robot arm in the first time period; N refers to the number information of multiple links in the robot arm; sqrt refers to the square root function.
[0085] In step S302, a second objective function of the robotic arm is determined according to the dynamic information of the robotic arm.
[0086] Optionally, in some embodiments, the control torque matrix is transposed to obtain a transposed matrix of the control torque matrix; and the second objective function of the robot arm is determined based on the control torque matrix and the transposed matrix of the control torque matrix.
[0087] For example, the second objective function of the robot arm can be expressed by the following formula (11):
[0088]
[0089] Among them, J e refers to the second objective function of the robot; τ refers to the control torque matrix; τ T is the transposed matrix of the control moment matrix; t f Refers to the end time point of the first time period; t 0 Refers to the initial time point of the first time point.
[0090] In step S303, the constraint conditions of the robotic arm are determined according to the joint angle information and the angular velocity information of the robotic arm.
[0091] In the embodiments of the present disclosure, step S303 may be implemented in any manner in the embodiments of the present disclosure, and the embodiments of the present disclosure do not limit this and will not be described in detail.
[0092] In step S304, a multi-objective function is determined based on the first objective function, the second objective function and the constraint conditions, with minimizing the base disturbance as a high priority and minimizing the torque energy of the robot arm as a secondary priority.
[0093] In the embodiments of the present disclosure, step S304 may be implemented in any manner in the embodiments of the present disclosure, and the embodiments of the present disclosure do not limit this and will not be described in detail.
[0094] In step S305, the multi-objective function is optimized based on the chaotic particle swarm algorithm to obtain the optimal solution information of the multi-objective function.
[0095] In the embodiments of the present disclosure, step S305 may be implemented in any manner in the embodiments of the present disclosure, and the embodiments of the present disclosure do not limit this and will not be described in detail.
[0096] In step S306, the motion trajectory information of the robot arm is determined according to the optimal solution information of the multi-objective function.
[0097] In the embodiments of the present disclosure, step S306 may be implemented in any manner in the embodiments of the present disclosure, and the embodiments of the present disclosure do not limit this and will not be described in detail.
[0098] In an embodiment of the present disclosure, the functional relationship between the base attitude angular velocity information of the manipulator and the joint angular velocity information of each connecting rod is determined based on the rotational angular velocity information, moment of inertia matrix, position vector information and velocity information of each connecting rod. The first objective function of the manipulator is determined based on the functional relationship between the base attitude angular velocity information of the manipulator and the joint angular velocity information of each connecting rod. The control torque matrix is transposed to obtain the transposed matrix of the control torque matrix; the second objective function of the manipulator is determined based on the control torque matrix and the transposed matrix of the control torque matrix, so that a multi-objective function with the minimum base disturbance as the high priority and the minimum manipulator torque energy as the secondary priority can be determined, so as to optimize the operation trajectory of the manipulator.
[0099] Figure 4 is a flow chart of a robot arm trajectory optimization method provided according to an embodiment of the present disclosure. Figure 4 As shown, the robot arm trajectory optimization method includes but is not limited to the following steps:
[0100] In step S401 , a first objective function and a second objective function of the robotic arm are determined according to the dynamic information of the robotic arm.
[0101] In the embodiments of the present disclosure, step S401 may be implemented in any manner in the embodiments of the present disclosure, and the embodiments of the present disclosure do not limit this and will not be described in detail.
[0102] In step S402, the constraint conditions of the robotic arm are determined according to the joint angle information and the angular velocity information of the robotic arm.
[0103] In the embodiments of the present disclosure, step S402 may be implemented in any manner in the embodiments of the present disclosure, and the embodiments of the present disclosure do not limit this and will not be described in detail.
[0104] In step S403, a multi-objective function is determined based on the first objective function, the second objective function and the constraint conditions, with minimizing the base disturbance as a high priority and minimizing the torque energy of the robot arm as a secondary priority.
[0105] In the embodiments of the present disclosure, step S403 may be implemented in any manner in the embodiments of the present disclosure, and the embodiments of the present disclosure do not limit this and will not be described in detail.
[0106] In step S404, the first particle group is initialized.
[0107] It should be noted that, in some embodiments, the first particle group includes a plurality of first particles.
[0108] It should be noted that, in some embodiments, each of the plurality of first particles includes position vector information. Optionally, in some embodiments, the dimension information of the first particle group is determined according to a multi-objective function with minimum base disturbance as a high priority and minimum mechanical arm torque energy as a secondary priority. Each first particle is initialized according to the dimension information of the first particle group.
[0109] Exemplarily, based on a multi-objective function with minimizing base disturbance as a high priority and minimizing robot arm torque energy as a secondary priority, variable information of the multi-objective function is determined; based on the variable information of the multi-objective function, dimensional information of each particle in the first particle group is determined.
[0110] Exemplarily, a multi-objective function with minimizing the torque energy of the robotic arm as the second priority, the variable information of which includes but is not limited to the base attitude angular velocity information, the joint angular velocity information of each link, and the control torque matrix of the robotic arm; the dimensional information of the base attitude angular velocity information is three-dimensional; the dimensional information of the control torque matrix of the robotic arm is three-dimensional; according to the degree of freedom information of the robotic arm, the dimensional information of the joint angular velocity information of each link is determined; the dimensional information of the base attitude angular velocity information, the dimensional information of the joint angular velocity information of each link, and the dimensional information of the control torque matrix of the robotic arm are summed to obtain the dimensional information of each particle in the first particle group.
[0111] For example, the degree of freedom information of the robot arm is three degrees of freedom; the dimension information of the base attitude angular velocity information is three-dimensional; the dimension information of the control torque matrix of the robot arm is three-dimensional; the dimension information of the base attitude angular velocity information, the dimension information of the joint angular velocity information of each link and the dimension information of the control torque matrix of the robot arm are summed to determine that the dimension information of each particle in the first particle group is 9.
[0112] Exemplarily, the position vector information of each first particle can be expressed as in, refers to the i-th first particle of the first particle swarm in the t-th iteration; d refers to the dimensional information of each particle in the first particle swarm.
[0113] It should be noted that, in some embodiments, the first particle swarm may be initialized based on a chaotic sequence or a Gaussian distribution, which is not specifically limited in the present disclosure and will not be described in detail.
[0114] In step S405, the fitness information of each first particle in the first particle group is determined according to the position vector information of each first particle and the multi-objective function.
[0115] Optionally, in some embodiments, the position vector information of each first particle in the first particle group is brought into the multi-objective function as a variable of the multi-objective function to obtain the fitness information of each first particle.
[0116] In step S406, individual extreme value information of each first particle is determined according to the fitness information of each first particle among the plurality of first particles.
[0117] Optionally, in some embodiments, when the number of iterations of the chaotic particle swarm algorithm is one, the fitness information of each first particle among the multiple first particles is determined as the individual extreme value information of each first particle.
[0118] Optionally, in some embodiments, when the number of iterations of the chaotic particle swarm algorithm is multiple, individual extreme value information of each first particle among multiple first particles is determined; when the fitness information of the first particle is less than the individual extreme value information of the first particle, the fitness information of the first particle is determined as the individual extreme value information of the first particle.
[0119] In step S407 , the global extreme value information of the first particle group is determined according to the individual extreme value information of each first particle among the plurality of first particles.
[0120] Optionally, in some embodiments, the minimum value of the individual extreme value information of each first particle in the plurality of first particles is determined as the global extreme value information of the first particle group.
[0121] In step S408, a chaotic search is performed on the global extreme value information of the first particle swarm based on the chaotic sequence to obtain a second particle swarm.
[0122] It should be noted that, in some embodiments, the chaotic sequence is a sequence with chaotic characteristics generated by a chaotic model. Optionally, in some embodiments, the quantity information of the chaotic sequence is determined according to the dimension information of each particle in the first particle group; and multiple chaotic sequences are generated according to the preset particle quantity information, the quantity information of the chaotic sequence and the Logistics equation. Exemplarily, multiple chaotic sequences can be expressed by the following formula (12):
[0123]
[0124] Among them, Z i+1,j refers to the i+1th parameter in the jth chaotic sequence; Z i,j refers to the i-th parameter in the j-th chaotic sequence; Z 0,j refers to the initial value parameter in the jth chaotic sequence, Z 0 The value range of μ is greater than 0 and less than 1; j It refers to the first control variable of the jth chaotic sequence. When the value of the first control variable is 4, the chaotic sequence is in a completely chaotic state.
[0125] It should be noted that, in some embodiments, the second particle group includes a plurality of second particles; each of the plurality of second particles includes position vector information.
[0126] Optionally, in some embodiments, multiple chaotic particles are generated according to multiple chaotic sequences. Exemplarily, the multiple chaotic particles can be calculated by the following formula (13):
[0127]
[0128] Among them, P cj refers to the jth chaotic particle among multiple chaotic particles; P cij refers to the i-th parameter of the j-th chaotic particle; N refers to the preset number of particles; d refers to the dimension information of each first particle in the first particle group; a i refers to the lower limit information of the i-th parameter; b i Refers to the upper limit information of the i-th parameter.
[0129] Optionally, in some embodiments, a second particle group is generated based on the global extreme value information of the plurality of chaotic particles and the first particle group. Exemplarily, each second particle in the second particle group can be calculated by the following formula (14):
[0130]
[0131] Among them, P gcj refers to the jth second particle in the second particle group; P bg refers to the global extreme value information of the first particle group; P cj refers to the jth chaotic particle among multiple chaotic particles; μ iter refers to the preset second control variable; k 1 Refers to the preset maximum number of iterations; is the update factor.
[0132] Optionally, in some embodiments, the fitness information of each second particle is determined based on the position vector information of each second particle in the second particle swarm and the multi-objective function; the individual extreme value information of each second particle is determined based on the fitness information of each second particle; the global extreme value information of the second particle swarm is determined based on the individual extreme value information of each second particle; and each second particle in the second particle swarm is updated based on the velocity vector information of each first particle, the position vector information of each second particle, the individual extreme value information of each second particle, and the global extreme value information of the second particle swarm.
[0133] Optionally, in some embodiments, the position vector information of each first particle in the first particle group is updated based on the velocity vector information of each first particle in the first particle group. Exemplarily, when the number of iterations of the chaotic particle swarm algorithm is t, the position vector information of each first particle in the first particle group of the tth iteration is updated based on the velocity vector information of each first particle in the first particle group of the tth iteration, and the position vector information of each first particle in the first particle group of the t+1th iteration is obtained. For example, the position vector information of each first particle in the tth iteration is updated by the following formula (15):
[0134]
[0135] in, It refers to the position vector information of the i-th first particle in the first particle group of the t+1th iteration; It refers to the position vector information of the i-th first particle in the first particle group of the t-th iteration; It refers to the velocity vector information of the i-th first particle in the first particle group of the t-th iteration.
[0136] Optionally, in some embodiments, the velocity vector information of each second particle in the second particle swarm is updated according to the individual extreme value information of each second particle and the global extreme value information of the second particle swarm. Exemplarily, when the number of iterations of the chaotic particle swarm algorithm is t, the velocity vector information of each second particle in the second particle swarm in the first particle swarm of the tth iteration is updated according to the individual extreme value information of each second particle in the first particle swarm of the tth iteration and the global extreme value information of the second particle swarm of the tth iteration, and the velocity vector information of each second particle in the second particle swarm in the first particle swarm of the t+1th iteration is obtained.
[0137] For example, the velocity vector information of each first particle is updated by the following formula (16):
[0138]
[0139] in, It refers to the velocity vector information of the i-th first particle in the first particle group of the t+1th iteration; It refers to the velocity vector information of the i-th first particle in the first particle group of the t-th iteration; It refers to the individual extreme value information of each second particle in the tth iteration; refers to the global extreme value information of each second particle in the tth iteration; c 0 refers to a custom non-negative constant; c 1 is the first acceleration constant, for example, c 1 =1;c 2 is the second acceleration constant, for example, c 2 =2; r 1 refers to the first random function, for example, r 1 The value range of can be greater than or equal to 0 and less than or equal to 1; r 2 refers to the second random function, for example, r 2 The value range of can be greater than or equal to 0 and less than or equal to 1.
[0140] In step S409, it is determined whether the chaotic particle swarm algorithm satisfies the first condition.
[0141] Optionally, in some embodiments, when it is determined that the chaotic particle swarm algorithm satisfies the first condition, step S411 is executed; or, when it is determined that the chaotic particle swarm algorithm does not satisfy the first condition, step S410 is executed.
[0142] Optionally, in some embodiments, the first condition is that the number of iterations of the chaotic particle swarm algorithm is greater than or equal to a preset maximum number of iterations. Exemplarily, when the number of iterations of the chaotic particle swarm algorithm is greater than or equal to the preset maximum number of iterations, it is determined that the chaotic particle swarm algorithm meets the first condition, and step S411 is executed. When the number of iterations of the chaotic particle swarm algorithm is less than the preset maximum number of iterations, it is determined that the chaotic particle swarm algorithm does not meet the first condition, and step S410 is executed.
[0143] Optionally, in some embodiments, the first condition is that the global extreme value information of the second particle swarm is less than or equal to the preset optimal fitness value. Exemplarily, when the global extreme value information of the second particle swarm is less than or equal to the preset optimal fitness value, it is determined that the chaotic particle swarm algorithm meets the first condition, and step S411 is executed. When the global extreme value information of the second particle swarm is greater than the preset optimal fitness value, it is determined that the chaotic particle swarm algorithm does not meet the first condition, and step S410 is executed.
[0144] In step S410, the second particle group is determined as a new first particle group.
[0145] It should be noted that, in some embodiments, step S410 is optional.
[0146] It should be noted that, in some embodiments, a second particle swarm obtained by performing a chaotic search on the global extreme value information of the first particle swarm based on the chaotic sequence is determined as a new first particle swarm.
[0147] Optionally, in some embodiments, a second particle swarm obtained by performing a chaotic search on the global extreme value information of the first particle swarm based on the chaotic sequence is determined as a new first particle swarm, and the process returns to execute step S407.
[0148] In step S411, the optimal solution information of the multi-objective function is determined according to the global extreme value information of the second particle swarm.
[0149] Optionally, in some embodiments, based on the global extreme value information of the second particle group, the second particle corresponding to the global extreme value information of the second particle group is determined; and the position vector information of the second particle corresponding to the global extreme value information of the second particle group is determined as the optimal solution information of the multi-objective function.
[0150] In step S412, the motion trajectory information of the robot arm is determined according to the optimal solution information of the multi-objective function.
[0151] In the embodiments of the present disclosure, step S412 may be implemented in any manner in the embodiments of the present disclosure, and the embodiments of the present disclosure do not limit this and will not be described in detail.
[0152] In an embodiment of the present disclosure, a first particle swarm is initialized. According to the position vector information and multi-objective function of each first particle in the first particle swarm, the fitness information of each first particle is determined. According to the fitness information of each first particle in a plurality of first particles, the individual extreme value information of each first particle is determined. According to the individual extreme value information of each first particle in a plurality of first particles, the global extreme value information of the first particle swarm is determined. A chaotic search is performed on the global extreme value information of the first particle swarm based on a chaotic sequence to obtain a second particle swarm, and the second particle swarm is determined as a new first particle swarm, and the step of determining the fitness information of each first particle according to the position vector information and multi-objective function of each first particle in the first particle swarm is returned to execute until the first condition is met, and the optimal solution information of the multi-objective function is determined according to the global extreme value information of the second particle swarm, so that a chaotic search can be performed around the global extreme value information of the first particle swarm based on the chaotic sequence to avoid the particle swarm from falling into a local optimal position, thereby improving the global search capability of the chaotic particle swarm algorithm.
[0153] Figure 5 is a block diagram of a robot arm trajectory optimization device provided according to an embodiment of the present disclosure. Figure 5As shown, the robot arm trajectory optimization device includes but is not limited to a first determination module 501 , a second determination module 502 , a third determination module 503 , an optimization module 504 , and a fourth determination module 505 .
[0154] The first determination module 501 is used to determine the first objective function and the second objective function of the robot arm according to the dynamic information of the robot arm; the first objective function refers to a function that aims to minimize the base disturbance of the robot arm, and the second objective function refers to a function that aims to minimize the torque energy of the robot arm;
[0155] The second determination module 502 is used to determine the constraint condition of the robot arm according to the joint angle information of the robot arm and the angular velocity information of the robot arm; the joint angle information of the robot arm includes the maximum value information of the joint angle and the minimum value information of the joint angle; the angular velocity information of the robot arm includes the maximum value information of the angular velocity and the minimum value information of the angular velocity;
[0156] The third determination module 503 is used to determine a multi-objective function with minimizing the base disturbance as a high priority and minimizing the mechanical arm torque energy as a secondary priority according to the first objective function, the second objective function and the constraint condition;
[0157] An optimization module 504 is used to optimize the multi-objective function based on a chaotic particle swarm algorithm to obtain the optimal solution information of the multi-objective function;
[0158] The fourth determination module 505 is used to determine the motion trajectory information of the robot arm according to the optimal solution information of the multi-objective function.
[0159] As an example, the robotic arm in the first determination module 501 includes multiple links; the dynamic information of the robotic arm in the first determination module 501 includes angular velocity information, moment of inertia matrix, position vector information and speed information of each link in the multiple links; the moment of inertia matrix of the link refers to the moment of inertia matrix of the link relative to the center of mass of the link, the position vector information of the link refers to the position vector information of the link relative to the center of mass of the link, and the speed information of the link refers to the speed information of the link relative to the center of mass of the link.
[0160] As an example, the first determination module 501 is also used to determine the functional relationship between the base attitude angular velocity information of the robotic arm and the joint angular velocity information of each link based on the rotational angular velocity information, moment of inertia matrix, position vector information and velocity information of each link; and determine the first objective function of the robotic arm based on the functional relationship between the base attitude angular velocity information of the robotic arm and the joint angular velocity information of each link.
[0161] As an example, the first determination module 501 is also used to transpose the control torque matrix to obtain a transposed matrix of the control torque matrix; and determine the second objective function of the robot arm according to the control torque matrix and the transposed matrix of the control torque matrix.
[0162] As an example, the optimization module 504 is also used to initialize a first particle group; the first particle group includes multiple first particles; each first particle in the multiple first particles includes position vector information; according to the position vector information of each first particle in the first particle group and the multi-objective function, the fitness information of each first particle is determined; according to the fitness information of each first particle in the multiple first particles, the individual extreme value information of each first particle is determined; according to the individual extreme value information of each first particle in the multiple first particles, the global extreme value information of the first particle group is determined; based on the chaotic sequence, a chaotic search is performed on the global extreme value information of the first particle group to obtain a second particle group, and the second particle group is determined as a new first particle group, and the step of determining the fitness information of each first particle according to the position vector information and the multi-objective function of each first particle in the first particle group is returned to execute until the first condition is met, and the optimal solution information of the multi-objective function is determined according to the global extreme value information of the second particle group.
[0163] As an example, the optimization module 504 is also used to generate multiple chaotic particles based on the chaotic sequence and the global extreme value information of the first particle group; generate a second particle group based on the multiple chaotic particles and the global extreme value information of the first particle group; the second particle group includes multiple second particles; each of the multiple second particles includes position vector information.
[0164] As an example, each of the multiple first particles in the optimization module 504 includes velocity vector information; the optimization module 504 is also used to determine the fitness information of each second particle according to the position vector information of each second particle in the second particle group and the multi-objective function; determine the individual extreme value information of each second particle according to the fitness information of each second particle; determine the global extreme value information of the second particle group according to the individual extreme value information of each second particle; update each second particle in the second particle group according to the velocity vector information of each first particle, the position vector information of each second particle, the individual extreme value information of each second particle and the global extreme value information of the second particle group.
[0165] As an example, the optimization module 504 is also used to determine the second particle corresponding to the global extreme value information of the second particle group according to the global extreme value information of the second particle group; and determine the position vector information of the second particle corresponding to the global extreme value information of the second particle group as the optimal solution information of the multi-objective function.
[0166] Regarding the device in the above embodiment, the specific manner in which each module performs operations has been described in detail in the embodiment of the method, and will not be elaborated here.
[0167] According to an embodiment of the present disclosure, the present disclosure also provides an electronic device, a storage medium, and a computer program product.
[0168] like Figure 6 , is a block diagram of an electronic device provided according to an embodiment of the present disclosure. 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 may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, 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 disclosure described and / or required herein.
[0169] like Figure 6 As shown, the electronic device includes: one or more processors 601, a memory 602, and interfaces for connecting various components, including high-speed interfaces and low-speed interfaces. The various components are interconnected using different buses and can be installed on a common mainboard or installed in other ways as needed. The processor can process instructions executed in the electronic device, including instructions stored in or on the memory to display the graphical information of the GUI on an external input / output device (such as a display device coupled to the interface). In other embodiments, if necessary, multiple processors and / or multiple buses can be used together with multiple memories and multiple memories. Similarly, multiple electronic devices can be connected, and each device provides some necessary operations (for example, as a server array, a group of blade servers, or a multi-processor system). Figure 6 A processor 601 is taken as an example.
[0170] The memory 602 is a non-transitory computer-readable storage medium provided by the present disclosure. The memory stores instructions executable by at least one processor to enable the at least one processor to perform the robot arm trajectory optimization method provided by the present disclosure. The non-transitory computer-readable storage medium of the present disclosure stores computer instructions, which are used to enable a computer to perform the robot arm trajectory optimization method provided by the present disclosure.
[0171] The memory 602 is a non-transient computer-readable storage medium that can be used to store non-transient software programs, non-transient computer executable programs and modules, such as program instructions / modules corresponding to the robot arm trajectory optimization method in the embodiment of the present disclosure (for example, the attached Figure 5 The processor 601 executes various functional applications and data processing of the server by running the non-transient software programs, instructions and modules stored in the memory 602, that is, the robot arm trajectory optimization method in the above method embodiment is implemented.
[0172] The memory 602 may include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function; the data storage area may store data created according to the use of the electronic device, etc. In addition, the memory 602 may include a high-speed random access memory, and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some embodiments, the memory 602 may optionally include a memory remotely arranged relative to the processor 601, and these remote memories may be connected to the electronic device via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0173] The electronic device may further include: an input device 603 and an output device 604. The processor 601, the memory 602, the input device 603 and the output device 604 may be connected via a bus or other means. Figure 6 The example of connecting through bus is taken in the following.
[0174] The input device 603 can receive input digital or character information, and generate key signal input related to user settings and function control of the electronic device, such as a touch screen, a keypad, a mouse, a track pad, a touch pad, an indicator bar, one or more mouse buttons, a trackball, a joystick and other input devices. The output device 604 may include a display device, an auxiliary lighting device (e.g., an LED) and a tactile feedback device (e.g., a vibration motor), etc. The display device may include, but is not limited to, a liquid crystal display (LCD), a light emitting diode (LED) display and a plasma display. In some embodiments, the display device may be a touch screen.
[0175] Optionally, in some embodiments, a computer program product is also provided, including a computer program, which can implement the robot arm trajectory optimization method provided in the embodiment of the present disclosure when executed by one or more processors 601.
[0176] Various implementations of the systems and techniques described herein can be realized in digital electronic circuit systems, integrated circuit systems, dedicated ASICs (application specific integrated circuits), 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.
[0177] These computer programs (also referred to as programs, software, software applications, or code) include machine instructions for programmable processors and can be implemented using high-level procedural and / or object-oriented programming languages, and / or assembly / machine languages. As used herein, the terms "machine-readable medium" and "computer-readable medium" refer to any computer program product, device, and / or means (e.g., disk, optical disk, memory, programmable logic device (PLD)) for providing machine instructions and / or data to a programmable processor, including a machine-readable medium that receives machine instructions as a machine-readable signal. The term "machine-readable signal" refers to any signal for providing machine instructions and / or data to a programmable processor.
[0178] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer 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 pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).
[0179] The systems and techniques described herein can 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 can 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), the Internet, and a blockchain network.
[0180] A computer 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 relationship between the client and the server 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 ("Virtual Private Server", or "VPS" for short). The server may also be a server of a distributed system, or a server combined with a blockchain.
[0181] 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 recorded in this disclosure can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved, and this document does not limit this.
[0182] The above specific implementations do not constitute a limitation on the protection scope of the present disclosure. 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 disclosure shall be included in the protection scope of the present disclosure.
Claims
1. A robot arm trajectory optimization method, characterized in that: The mechanical arm comprises a plurality of connecting rods, and the dynamic information of the mechanical arm comprises a control torque matrix, and rotational angular velocity information, a moment of inertia matrix, position vector information and speed information of each of the plurality of connecting rods, wherein the moment of inertia matrix refers to the moment of inertia matrix of the connecting rod relative to the center of mass of the connecting rod, the position vector information refers to the position vector information of the connecting rod relative to the center of mass of the connecting rod, and the speed information refers to the speed information of the connecting rod relative to the center of mass of the connecting rod. The method comprises the following steps: According to the rotational angular velocity information, moment of inertia matrix, position vector information and velocity information of each connecting rod, the functional relationship between the base attitude angular velocity information of the manipulator and the joint angular velocity information of each connecting rod is determined; according to the functional relationship between the base attitude angular velocity information and the joint angular velocity information of each connecting rod, the first objective function of the manipulator is determined. The first objective function refers to a function that aims to minimize the disturbance to the base of the manipulator. The expression of the first objective function is: Among them, J d Refers to the first objective function of the robot; S n It refers to the change in the base attitude angular velocity information of the manipulator related to the nth link in the first time period; It refers to the transposed matrix of the change amount related to the nth link in the base attitude angular velocity information of the robot arm in the first time period; N refers to the number information of multiple links in the robot arm; sqrt refers to the square root function; The control torque matrix is transposed to obtain a transposed matrix of the control torque matrix. According to the control torque matrix and the transposed matrix of the control torque matrix, a second objective function of the manipulator is determined. The second objective function refers to a function that minimizes the torque energy of the manipulator. The expression of the second objective function is: Among them, J e refers to the second objective function of the robot; τ refers to the control torque matrix; τ T is the transposed matrix of the control moment matrix; t f refers to the end time point of the first time period; t0 refers to the initial time point of the first time period; Determine the constraint condition of the robotic arm according to the joint angle information of the robotic arm and the angular velocity information of the robotic arm; the joint angle information of the robotic arm includes the maximum value information of the joint angle and the minimum value information of the joint angle; the joint angular velocity information of the robotic arm includes the maximum value information of the angular velocity and the minimum value information of the angular velocity; According to the first objective function, the second objective function and the constraint condition, a multi-objective function is determined with minimizing the base disturbance as a high priority and minimizing the mechanical arm torque energy as a secondary priority. The expression of the multi-objective function is: Among them, J refers to the multi-objective function with the minimum base disturbance as the high priority and the minimum torque energy of the manipulator as the secondary priority; J d refers to the first objective function; k1 refers to the preset first weight coefficient; J e refers to the second objective function; k2 refers to the preset second weight coefficient; min refers to the minimum value function; q min Refers to the minimum value information of the joint angle of the robot arm; q max Refers to the maximum value information of the joint angle of the robot arm; Refers to the maximum angular velocity information of the robot arm; Refers to the minimum angular velocity information of the robot arm; The multi-objective function is optimized based on a chaotic particle swarm algorithm to obtain the optimal solution information of the multi-objective function; wherein: a first particle swarm is initialized, the first particle swarm includes a plurality of first particles, each of the plurality of first particles includes position vector information, and the optimal solution information of the multi-objective function is determined by the following formula: the fitness information of each first particle in the first particle swarm is determined according to the position vector information of each first particle in the first particle swarm and the multi-objective function; the individual extreme value information of each first particle is determined according to the fitness information of each first particle in the plurality of first particles; the global extreme value information of the first particle swarm is determined according to the individual extreme value information of each first particle in the plurality of first particles; a chaotic search is performed on the global extreme value information of the first particle swarm based on a chaotic sequence to obtain a second particle swarm, and the second particle swarm is determined as a new first particle swarm, and the step of determining the fitness information of each first particle according to the position vector information of each first particle in the first particle swarm and the multi-objective function is returned to execute until the first condition is met, and the optimal solution information of the multi-objective function is determined according to the global extreme value information of the second particle swarm; The motion trajectory information of the robotic arm is determined according to the optimal solution information of the multi-objective function.
2. The method according to claim 1, characterized in that: The method of performing a chaotic search on the global extreme value information of the first particle swarm based on the chaotic sequence to obtain a second particle swarm includes: generating a plurality of chaotic particles according to the chaotic sequence and the global extreme value information of the first particle group; A second particle group is generated according to the global extreme value information of the multiple chaotic particles and the first particle group; the second particle group includes multiple second particles; each of the multiple second particles includes position vector information.
3. The method according to claim 2, characterized in that Each of the plurality of first particles includes velocity vector information; after generating a second particle group according to the plurality of chaotic particles and the global extreme value information of the first particle group, the method further includes: Determining the fitness information of each second particle in the second particle group according to the position vector information of each second particle and the multi-objective function; Determining individual extreme value information of each second particle according to the fitness information of each second particle; Determining global extreme value information of the second particle group according to the individual extreme value information of each second particle; Each of the second particles in the second particle group is updated according to the velocity vector information of each of the first particles, the position vector information of each of the second particles, the individual extreme value information of each of the second particles, and the global extreme value information of the second particle group.
4. The method according to claim 1, characterized in that: The step of determining the optimal solution information of the multi-objective function according to the global extreme value information of the second particle swarm includes: According to the global extreme value information of the second particle group, determining the second particle corresponding to the global extreme value information of the second particle group; The position vector information of the second particle corresponding to the global extreme value information of the second particle group is determined as the optimal solution information of the multi-objective function.
5. A robot arm trajectory optimization device, characterized in that: The mechanical arm comprises a plurality of connecting rods, and the dynamic information of the mechanical arm comprises a control torque matrix, and rotational angular velocity information, a moment of inertia matrix, position vector information and speed information of each of the plurality of connecting rods, wherein the moment of inertia matrix refers to the moment of inertia matrix of the connecting rod relative to the center of mass of the connecting rod, the position vector information refers to the position vector information of the connecting rod relative to the center of mass of the connecting rod, and the speed information refers to the speed information of the connecting rod relative to the center of mass of the connecting rod, and the device comprises: The first determination module is used to determine the functional relationship between the base attitude angular velocity information of the manipulator and the joint angular velocity information of each of the connecting rods according to the rotational angular velocity information, the moment of inertia matrix, the position vector information and the velocity information of each of the connecting rods, and determine the first objective function of the manipulator according to the functional relationship between the base attitude angular velocity information and the joint angular velocity information of each of the connecting rods. The first objective function refers to a function that aims to minimize the disturbance to the base of the manipulator. The expression of the first objective function is: Among them, J d Refers to the first objective function of the robot; S n It refers to the change in the base attitude angular velocity information of the manipulator related to the nth link in the first time period; It refers to the transposed matrix of the change amount related to the nth link in the base attitude angular velocity information of the robot arm in the first time period; N refers to the number information of multiple links in the robot arm; sqrt refers to the square root function; The control torque matrix is transposed to obtain a transposed matrix of the control torque matrix. According to the control torque matrix and the transposed matrix of the control torque matrix, a second objective function of the manipulator is determined. The second objective function refers to a function that minimizes the torque energy of the manipulator. The expression of the second objective function is: Among them, J e refers to the second objective function of the robot; τ refers to the control torque matrix; τ T is the transposed matrix of the control moment matrix; t f refers to the end time point of the first time period; t0 refers to the initial time point of the first time period; A second determination module is used to determine the constraint condition of the robotic arm according to the joint angle information of the robotic arm and the angular velocity information of the robotic arm; the joint angle information of the robotic arm includes the maximum value information of the joint angle and the minimum value information of the joint angle; the angular velocity information of the robotic arm includes the maximum value information of the angular velocity and the minimum value information of the angular velocity; The third determination module is used to determine, according to the first objective function, the second objective function and the constraint condition, a multi-objective function with minimizing the base disturbance as a high priority and minimizing the mechanical arm torque energy as a secondary priority, wherein the expression of the multi-objective function is: Among them, J refers to the multi-objective function with the minimum base disturbance as the high priority and the minimum torque energy of the manipulator as the secondary priority; J d refers to the first objective function; k1 refers to the preset first weight coefficient; J e refers to the second objective function; k2 refers to the preset second weight coefficient; min refers to the minimum value function; q min Refers to the minimum value information of the joint angle of the robot arm; q max Refers to the maximum value information of the joint angle of the robot arm; Refers to the maximum angular velocity information of the robot arm; Refers to the minimum angular velocity information of the robot arm; an optimization module, configured to optimize the multi-objective function based on a chaotic particle swarm algorithm to obtain the optimal solution information of the multi-objective function; wherein: a first particle swarm is initialized, the first particle swarm includes a plurality of first particles, each of the plurality of first particles includes position vector information, and the optimal solution information of the multi-objective function is determined by the following formula: the fitness information of each first particle in the first particle swarm is determined according to the position vector information of each first particle in the first particle swarm and the multi-objective function; the individual extreme value information of each first particle in the plurality of first particles is determined according to the fitness information of each first particle in the plurality of first particles; the global extreme value information of the first particle swarm is determined according to the individual extreme value information of each first particle in the plurality of first particles; a chaotic search is performed on the global extreme value information of the first particle swarm based on a chaotic sequence to obtain a second particle swarm, and the second particle swarm is determined as a new first particle swarm, and the step of determining the fitness information of each first particle in the first particle swarm according to the position vector information of each first particle in the first particle swarm and the multi-objective function is returned to be executed until the first condition is met, and the optimal solution information of the multi-objective function is determined according to the global extreme value information of the second particle swarm; The fourth determination module is used to determine the motion trajectory information of the robotic arm according to the optimal solution information of the multi-objective function.
6. An electronic device, characterized in that: include: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 4.
7. A non-transitory computer-readable storage medium storing computer instructions, characterized in that: The computer instructions are used to cause the computer to execute the method according to any one of claims 1 to 4.
Citation Information
Patent Citations
Multi-object optimized space manipulator trajectory planning method
CN108326852A
Mechanical arm space trajectory optimization method for optimal time under multiple constraint conditions
CN108656117A
Method and apparatus for continuously cover coverage points of high-energy-efficiency unmanned aerial vehicle
CN109275094A