Mechanical arm moving method, device, equipment and storage medium

By acquiring the joint probability distribution model of the reference path of the robotic arm and constructing the target path using nucleated motion primitives, the problem of the robotic arm being unable to continue working after a collision was solved, enabling automatic obstacle avoidance and continued operation, thus improving work efficiency.

CN118418110BActive Publication Date: 2026-02-06GUANGZHOU SHIYUAN ELECTRONICS CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310078470.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-02-01
Publication Date
2026-02-06
Estimated Expiration
2043-02-01

AI Technical Summary

Technical Problem

The robotic arm is unable to plan a safe path in time after colliding with an obstacle, causing the operation to be interrupted and affecting the efficiency of the operation.

Method used

By obtaining the joint probability distribution model of multiple reference paths, a target path model is constructed, and obstacle bypass points are determined upon collision, and obstacle bypass paths are planned to continue the operation.

Benefits of technology

This technology enables the robotic arm to automatically bypass obstacles and return to its work path after colliding with them, thus avoiding work interruptions and improving work efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118418110B_ABST
    Figure CN118418110B_ABST
Patent Text Reader

Abstract

The application discloses a mechanical arm obstacle-avoiding moving method and device, equipment and a storage medium, and relates to the technical field of mechanical arms. The technical scheme provided by the application comprises the following steps: acquiring a plurality of first reference paths, determining a joint probability distribution model of the plurality of first reference paths, and determining a second reference path through the joint probability distribution model; constructing a target path model through a kernelized motion primitive based on the second reference path; in the case that the mechanical arm collides with an obstacle, determining an obstacle-avoiding point according to a preset obstacle-avoiding distance, calculating the target path model based on each path point in the second reference path and the obstacle-avoiding point to obtain a first target path, and controlling the mechanical arm to move according to the first target path. Through the above technical means, the problem that the mechanical arm cannot continue working after collision in the prior art is solved, and the working efficiency of the mechanical arm is improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of mechanical arms, and in particular to a mechanical arm obstacle-avoiding moving method, device, equipment and storage medium. BACKGROUND

[0002] With the rapid development of mechanical arm obstacle-avoiding technology, the mechanical arm can perceive the obstacles in the working environment by means of a visual sensor, and then plan a safe path that can avoid the obstacles according to an obstacle-avoiding algorithm. However, in practice, due to the perception error or the temporary sudden appearance of obstacles, the mechanical arm cannot plan a safe path in time or accurately, which leads to the collision of the mechanical arm with the obstacles.

[0003] In the prior art, the mechanical arm is provided with a collision protection device, which is triggered to protect the mechanical arm when the mechanical arm collides, so as to ensure the safety in the collision. After the collision protection is triggered, the mechanical arm switches to an abnormal mode and cannot continue working, and the mechanical arm can continue working only after being manually reset, which takes a long time and affects the working efficiency of the mechanical arm. SUMMARY

[0004] The present application provides a mechanical arm obstacle-avoiding moving method, device, equipment and storage medium to solve the problem that the mechanical arm cannot continue working after collision in the prior art, and improve the working efficiency of the mechanical arm.

[0005] In a first aspect, the present application provides a mechanical arm obstacle-avoiding moving method, comprising:

[0006] obtaining a plurality of first reference paths, determining a joint probability distribution model of the plurality of first reference paths, and determining a second reference path through the joint probability distribution model;

[0007] constructing a target path model based on the second reference path through a kernelized motion primitive;

[0008] In the case that the mechanical arm collides with an obstacle, a barrier-avoiding point is determined according to a preset barrier-avoiding distance, the target path model is calculated based on each path point in the second reference path and the barrier-avoiding point to obtain a first target path, and the mechanical arm is controlled to move according to the first target path.

[0009] In a second aspect, the present application provides a mechanical arm obstacle-avoiding moving device, comprising:

[0010] a reference path determination module configured to obtain a plurality of first reference paths, determine a joint probability distribution model of the plurality of first reference paths, and determine a second reference path through the joint probability distribution model;

[0011] a path model construction module configured to construct a target path model based on the second reference path by a kernelized motion primitive;

[0012] a first target path determination module configured to, in a case where the robot arm collides with the obstacle, determine an obstacle-avoiding point according to a preset obstacle-avoiding distance, calculate the target path model based on each path point in the second reference path and the obstacle-avoiding point to obtain a first target path, and control the robot arm to move according to the first target path.

[0013] In a third aspect, the present application provides a robot arm obstacle-avoiding moving device, comprising:

[0014] one or more processors; and a storage device storing one or more programs, when the one or more programs are executed by the one or more processors, the one or more processors implement the robot arm obstacle-avoiding moving method according to the first aspect.

[0015] In a fourth aspect, the present application provides a storage medium containing computer executable instructions for executing the robot arm obstacle-avoiding moving method according to the first aspect when executed by a computer processor.

[0016] In the present application, a plurality of first reference paths are obtained, a joint probability distribution model of the plurality of first reference paths is determined, a second reference path is determined through the joint probability distribution model, a target path model is constructed based on the second reference path by a kernelized motion primitive, in a case where the robot arm collides with the obstacle, an obstacle-avoiding point is determined according to a preset obstacle-avoiding distance, the target path model is calculated based on each path point in the second reference path and the obstacle-avoiding point to obtain a first target path, and the robot arm is controlled to move according to the first target path. Through the above technical means, the joint probability distribution model of the plurality of first reference paths which can all complete the work task is learned to reproduce a stable convergent expected work path, each expected path point in the expected work path and the corresponding input parameter are learned through the kernelized motion primitive to determine the target path model, the target path model can learn an extended path to obtain an adaptive path passing through each expected path point. When the robot arm collides with the obstacle, the corresponding obstacle-avoiding point is determined, the obstacle-avoiding point is taken as a point on the extended path to plan the first target path passing through the obstacle-avoiding point and capable of returning to the work path through the target path model, and the robot arm is controlled to move according to the first target path, so that the robot arm can return to the expected work path to continue work after avoiding the obstacle, the work task is not interrupted while automatically avoiding the obstacle, and the work efficiency of the robot arm is effectively improved. BRIEF DESCRIPTION OF DRAWINGS

[0017] Figure 1 is a flowchart of a robot arm obstacle-avoiding moving method provided by an embodiment of the present application;

[0018] Figure 2 is a schematic diagram of a first reference path provided by an embodiment of the present application;

[0019] Figure 3 is a flowchart of determining a second reference path provided by an embodiment of the present application;

[0020] Figure 4 is a flowchart of constructing a target path model provided by an embodiment of the present application;

[0021] Figure 5 is a flowchart of controlling the movement of the robot arm provided by an embodiment of the present application;

[0022] Figure 6 is a schematic diagram of the robot arm colliding with an obstacle provided by an embodiment of the present application;

[0023] Figure 7 is a flowchart of determining the pose parameters of the obstacle point provided by an embodiment of the present application;

[0024] Figure 8 is a structural schematic diagram of a robot arm obstacle moving device provided by an embodiment of the present application;

[0025] Figure 9 is a structural schematic diagram of a robot arm obstacle moving device provided by an embodiment of the present application. DETAILED DESCRIPTION

[0026] In order to make the objects, technical solutions and advantages of the present application clearer, the following further describes specific embodiments of the present application with reference to the drawings. It should be understood that the specific embodiments described herein are only used to explain the present application and not to limit the present application. In addition, it should be noted that, for the convenience of description, only parts related to the present application are shown in the drawings, but not all. Before discussing the example embodiments in more detail, it should be mentioned that some example embodiments are described as processes or methods depicted as flowcharts. Although the flowcharts describe each operation (or step) as a sequential process, many of the operations can be implemented in parallel, concurrently or simultaneously. In addition, the order of the operations can be rearranged. The process can be terminated when its operations are completed, but can also have additional steps not included in the drawings. The process can correspond to a method, function, procedure, subroutine, subprogram, etc.

[0027] The terms "first", "second", and the like in the description and in the claims of the present application are used to distinguish similar objects, and are not used to describe a particular sequential or chronological order. It should be understood that the data thus used can be interchanged, where appropriate, so that the embodiments of the present application can be carried out in other than the order illustrated or described herein, and that the objects distinguished by "first", "second", and the like are generally of a class and are not limited in number, for example, the first object can be one or more. In addition, "and / or" in the specification and claims means at least one of the connected objects, and the character " / ", generally means that the front and rear associated objects are in an "or" relationship.

[0028] The mechanical arm obstacle-avoiding moving method provided in the embodiment can be executed by a mechanical arm obstacle-avoiding moving device, which can be implemented in the form of software and / or hardware, and can be composed of two or more physical entities or one physical entity. For example, the mechanical arm obstacle-avoiding moving device can be a mechanical arm or a processor of the mechanical arm.

[0029] The mechanical arm obstacle-avoiding moving device is installed with at least one operating system, which includes but is not limited to an Android system, a Linux system, and a Windows system. The mechanical arm obstacle-avoiding moving device can install at least one application program based on the operating system, which can be an application program provided by the operating system or downloaded from a third-party device or server. In the embodiment, the mechanical arm obstacle-avoiding moving device has at least one application program that can execute the mechanical arm obstacle-avoiding moving method.

[0030] For ease of understanding, the mechanical arm is taken as an example to describe the embodiment of the mechanical arm obstacle-avoiding moving method.

[0031] In an embodiment, when the mechanical arm moves along a pre-planned work path, the mechanical arm perceives an obstacle on the work path through a visual sensor, and then plans a safe path to avoid the obstacle through an obstacle-avoiding algorithm, and then returns to the work path to continue moving after avoiding the obstacle. However, if the visual sensor has a perception error or the obstacle suddenly appears, the mechanical arm cannot accurately or timely plan a safe path, and the mechanical arm will collide with the obstacle with a high probability. After the collision between the mechanical arm and the obstacle, the collision protection device of the mechanical arm is triggered to protect the safety of the mechanical arm. After the collision, to avoid the mechanical arm colliding with the obstacle again, the mechanical arm switches to an abnormal mode and stops moving in place, the work task of the mechanical arm is interrupted, and manual reset is required to continue the work. However, the time consumed in the reset process is relatively long, which greatly reduces the work efficiency of the mechanical arm.

[0032] To solve the above problems, the embodiment provides a mechanical arm obstacle-avoiding moving method to control the mechanical arm to avoid the obstacle after colliding with the obstacle and return to the work path to continue moving, so as to ensure the work efficiency of the mechanical arm.

[0033] Figure 1 A flowchart of the mechanical arm obstacle-avoiding moving method provided by the embodiment is given. Referring to Figure 1 , the mechanical arm obstacle-avoiding moving method specifically includes:

[0034] S110, a plurality of first reference paths are acquired, and a joint probability distribution model of the plurality of first reference paths is determined, and a second reference path is determined through the joint probability distribution model.

[0035] The first reference path refers to a path that can complete a work task. Figure 2 is a schematic diagram of the first reference path provided by the embodiment. As Figure 2 shown, it is assumed that the work task of the mechanical arm is to carry the goods from point A to point B, and the mechanical arm can complete the work task according to the first path 11, the second path 12 or the third path 13, so the first path 11, the second path 12 or the third path 13 can be used as the first reference path.

[0036] In the embodiment, the first reference path includes a plurality of path points, and the pose parameters of the path points are the position and attitude angle of the end of the mechanical arm in the world coordinate system. Each path point corresponds to an input parameter, which can be time, position or other external state. The embodiment takes time as an example for description.

[0037] In an embodiment, the first reference path can be obtained by planning according to the work environment, for example, the map information of the work area, and the pose parameters and time points of each path point passed through by the mechanical arm when moving from point A to point B are planned by a planning algorithm or manually to obtain the corresponding first reference path. In another embodiment, the first reference path from point A to point B can also be determined by teaching, for example, a worker controls the mechanical arm to move from point A to point B, and records the pose parameters and time points of each path point passed through by the mechanical arm when moving from point A to point B to obtain the corresponding first reference path.

[0038] In the embodiment, the first reference path can be regarded as a training sample, and the mechanical arm learns a plurality of first reference paths to determine a work path that can move from point A to point B and complete the work. However, when learning the first reference path, the differences between different first reference paths need to be considered, and Figure 2The path points of different first reference paths are different. For the difference problem of the plurality of first reference paths, a joint probability distribution model of the plurality of first reference paths can be learned to reproduce a stable convergence expected operation path. The joint probability distribution model can be regarded as a joint distribution function of the pose parameters and time of the path points as two-dimensional random variables. The second reference path is an operation path generated by learning the joint probability distribution model.

[0039] In an embodiment, Figure 3 is a flowchart for determining a second reference path provided by the embodiments of the present application.

[0040] As Figure 3 shown, the step of determining a second reference path specifically includes S1101-S1102:

[0041] S1101, modeling a plurality of first reference paths by a Gaussian mixture model or a Gaussian process to obtain a joint probability distribution model, and generating a conditional probability distribution model based on the joint probability distribution model.

[0042] S1102, based on a Gaussian mixture regression strategy or a Gaussian process regression strategy, solving the conditional probability distribution model by a preset first input parameter to obtain the pose parameters and covariance parameters of each path point in the second reference path.

[0043] In the present embodiment, the preset first input parameter is generally a first time point at which the robot arm passes through each expected path point set by a person, for example, to obtain a second reference path within 5 seconds, the first time point can be 0s, 0.05s, 0.1s, …, 5s.

[0044] Illustratively, the pose parameters and time of all path points in the plurality of first reference paths are divided into a data set, the joint probability distribution model of the pose parameters and time coordinates of the path points in the data set is modeled by a Gaussian mixture model (GMM, Gaussian Mixture Model), and then the parameters of the Gaussian mixture model are iteratively optimized by an expectation-maximization (Expectation-maximization, EM) algorithm. After determining the parameters of the Gaussian mixture model, the joint probability distribution model can be determined. For the first time point, the conditional probability distribution model of the corresponding pose parameters can be determined from the joint probability distribution model by a Gaussian mixture regression strategy (Gaussian Mixture Regression, GMR), and the first time point and the pose parameters are determined as the time point and the pose parameters of the path points on the second reference path based on the conditional probability distribution model.

[0045] In another embodiment, a joint probability distribution model of the pose parameters and time points of the path points in the dataset is modeled by a Gaussian Process (GP). After the joint probability distribution model is constructed, for a first time point, a conditional probability distribution model of its corresponding pose parameter is determined from the joint probability distribution model by Gaussian Process Regression (GPR), and based on the conditional probability distribution model, the first time point and the corresponding pose parameter are determined as the time point and pose parameter of a path point on the second reference path.

[0046] Further, after the pose parameters of each path point on the second reference path are determined, a covariance matrix corresponding to the pose parameter is also obtained, which is the covariance parameter of the corresponding path point, representing the difference degree of the corresponding path point from the path points in the dataset. Each path point on the second reference path is represented by a Gaussian distribution wherein, is the time point of the nth path point on the second reference path; are the pose parameters of the nth path point on the second reference path; is the covariance matrix of the nth path point on the second reference path.

[0047] S120, constructing a target path model based on the second reference path by a kernelized movement primitive.

[0048] The kernelized movement primitive (KMP) is an algorithm for mimetic learning of a movement trajectory of a robot arm, which obtains a non-parametric skill learning model by minimizing the Kullback-Leibler divergence between a parameterized trajectory and a sample trajectory, and introducing a kernel trick. For example, the second reference path is modeled by the kernelized movement primitive to determine a parameterized model of the second reference path, which is the target path model. It can be understood that after the robot arm collides with an obstacle, the robot arm needs to pass through an extended path different from the expected work path to bypass the obstacle, but after bypassing the obstacle, the robot arm needs to return to the expected work path to continue work. The kernelized movement primitive can learn the second reference path so that the robot arm can pass through each expected path point on the expected work path, and can also learn a new extended path to pass through an expected path point that deviates from the teaching area or the planning area, so that the robot arm can return to the expected work path after bypassing the obstacle to continue work.

[0049] In an embodiment, Figure 4 is a flowchart of constructing a target path model provided by the embodiment of the present application.

[0050] As shown in Figure 4 , the step of constructing a target path model specifically includes S1201-S1203:

[0051] S1201, determining a first mapping vector of each first input parameter based on a preset kernel function, and determining a first coefficient matrix according to the product of the transpose of any one first mapping vector and any one first mapping vector.

[0052] S1202, determining a second mapping vector of a preset second input parameter based on the kernel function, and multiplying the product of the transpose of the second mapping vector and any one first mapping vector to determine a second coefficient.

[0053] S1203, generating a target path model according to the first coefficient matrix and the second coefficient.

[0054] Wherein, the second input parameter is a second time point set artificially, and the second input parameter can be the same as the first input parameter or different.

[0055] Exemplarily, the kernelized motion primitive adopts the following parameterized model:

[0056] ξ(s)=Θ(s) T w

[0057] Wherein, s is a time point, ξ is a pose parameter, w is a weight coefficient, is a kernel function of B dimensions, and a Gaussian kernel function can be selected, a i and σ i respectively represent the mean and variance of the i-th dimension kernel function. After the input s and the kernel function form are given, Θ(s) can be obtained.

[0058] Suppose the weight coefficient w obeys a Gaussian distribution The expression of the expected weight coefficient is as follows:

[0059]

[0060] Wherein, Substituting the first time point of each path point on the second reference path, the pose parameter and the covariance matrix into the expression of the expected weight coefficient , the expected weight coefficient can be obtained

[0061] the desired weight coefficient Substitute the weight coefficient W into the above parameterized model, and substitute Θ(s) into the above parameterized model, so as to determine the target path model.

[0062] In this embodiment, based on the expression of Θ(s) and , the parameterized model can be converted into:

[0063]

[0064]

[0065] wherein s * is a second time point, k * is a second coefficient of the target path model, λ is a regularization coefficient, K is a first coefficient matrix of the target path model, is a time point s i of the i th path point on the second reference path, and is a second mapping vector corresponding to the second time point, and substituting the time s i into a preset kernel function can obtain the first mapping vector. As can be seen from the expression of the first coefficient matrix, the product of the transpose of the first mapping vector corresponding to the i th desired path point and the first mapping vector corresponding to the j th desired path point is taken as the element value of the i th row and the j th column in the first coefficient matrix, so as to obtain the first coefficient matrix. As can be seen from the expression of the second coefficient, the product of the transpose of the second mapping vector and each first mapping vector is determined, and each first mapping vector is multiplied to obtain the second coefficient. After the first coefficient and the second coefficient are determined, substituting the first coefficient and the second coefficient into , the target path model can be obtained.

[0066] After the target path model is determined, the robot arm can determine a second target path adopted when actually moving according to the target path model, so as to control the robot arm to move according to the second target path. Figure 5 is a flowchart of controlling the robot arm to move provided by the embodiments of the present application. As Figure 5 shown, the steps of controlling the robot arm to move specifically include S1401-S1402:

[0067] S1401, according to the pose parameters and covariance parameters of each path point in the second reference path, solving a target path model to obtain the pose parameters of each path point in the second target path.

[0068] Exemplarily, the pose parameters of each desired path point in the second reference path are substituted into the target path model, and the covariance parameters of each desired path point in the second reference path are substituted into the target path model, so as to obtain the pose parameters of each path point in the second target path. Substitute the expression Calculate μ. Substitute the covariance matrix of each expected path point in the second reference path into the expression Substitute the expression Calculate ∑. Substitute ∑ and μ into the target path model Get the pose parameters corresponding to the second time point. Take the second time point and the corresponding pose parameters as the time points and pose parameters of each path point in the second target path.

[0069] S1402, in the case where the mechanical arm does not collide with the obstacle, controlling the movement of the mechanical arm according to the pose parameters of each path point in the second target path.

[0070] Exemplarily, before the mechanical arm collides with the obstacle, the movement of the end of the mechanical arm is controlled according to the pose parameters of each path point in the second target path. It should be noted that the movement trajectories of the second target path and the second reference path are substantially the same, that is, when the mechanical arm moves according to the second reference path and the second target path, the work tasks can be sequentially completed, that is, the second reference path and the second target path can be regarded as stable and convergent expected work paths.

[0071] S130, in the case where the mechanical arm collides with the obstacle, determining the obstacle-avoiding point according to the preset obstacle-avoiding distance, solving the target path model based on each path point in the second reference path and the obstacle-avoiding point to get the first target path, and controlling the movement of the mechanical arm according to the first target path.

[0072] Figure 6 is a schematic diagram of the collision of the mechanical arm with the obstacle provided by the embodiment of the present application. As shown in Figure 6 , the mechanical arm moves along the second target path 14 as the expected work path, at this time, the mechanical arm collides with the O point of the obstacle, and the torque sensor at the end of the mechanical arm can detect that the direction of the collision force is The obstacle-avoiding distance is a linear distance set by the embodiment and spaced apart from the collision point O along the direction of the collision force, and the obstacle-avoiding point can be determined according to the obstacle-avoiding distance and the direction of the collision force. In this embodiment, Figure 7 is a flowchart for determining the pose parameters of the obstacle-avoiding point provided by the embodiment of the present application. As shown in Figure 7 , the step of determining the pose parameters of the obstacle-avoiding point specifically includes S1301-S1302:

[0073] S1301, detecting the direction of the collision force when the end of the mechanical arm collides with the obstacle through the torque sensor installed at the end of the mechanical arm.

[0074] S1302, determining the pose parameters of the obstacle-avoiding point according to the direction of the collision force, the motion direction of the mechanical arm, the obstacle-avoiding distance, and the preset retreat distance.

[0075] ReferenceFigure 6 , the motion reverse direction of the robot arm is The retreat distance is a linear distance along the motion reverse direction of the robot arm and spaced from the collision point O. It can be understood that if the E point spaced from the collision point O along the collision force direction and the obstacle distance is taken as the obstacle avoidance point, in the case of a large obstacle height, the robot arm may still collide with the obstacle, affecting the work efficiency and safety of the robot arm. Therefore, the retreat distance can be used to keep a certain lateral distance between the robot arm and the obstacle to avoid the robot arm colliding with the obstacle again. In this embodiment, assuming that the obstacle distance is β and the retreat distance is α, then wherein is the vector from the collision point O to the obstacle avoidance point C, is the unit vector of the motion reverse direction, is the vector of the collision force direction, after the unit vector from the collision point O to the obstacle avoidance point C is determined, the pose parameters of the obstacle avoidance point C can be calculated according to the pose parameters of the collision point O.

[0076] Assuming that the pose parameters of the obstacle avoidance point C still conform to the Gaussian distribution, the obstacle avoidance point C is represented by the Gaussian distribution , wherein are the pose parameters of the obstacle avoidance point C, is the pre-set covariance matrix of the obstacle avoidance point C, is the time point passing through the obstacle avoidance point C. Since the obstacle avoidance path is required to be as close to the obstacle avoidance point C as possible, the will be set to be relatively small.

[0077] In this embodiment, according to the pose parameters and covariance parameters of each path point in the second reference path and the pose parameters and covariance parameters of the obstacle avoidance point, the target path model is solved to obtain the pose parameters of each path point in the first target path. Exemplarily, the obstacle avoidance point C is taken as a path point in the second reference path, and the covariance matrices of all path points in the second reference path and are substituted into the expression to obtain ∑; the pose parameters of all path points in the second reference path and are substituted into the expression to obtain μ. μ and ∑ are substituted into the target path model to obtain the pose parameters corresponding to the second time point. The second time point and the corresponding pose parameters are taken as the time point and the pose parameters of each path point in the first target path.

[0078] Reference Figure 6The first target path includes the obstacle-avoiding path 15 passing through the obstacle-avoiding point C and the latter operation path 16 of the second target path 14. The obstacle-avoiding path 15 is an extended path learned by the target path model from the obstacle-avoiding point C. When the robot arm moves according to the first target path, it first avoids the obstacle through the obstacle-avoiding path 15, and then returns to the latter operation path 16 to continue the operation task, so as to avoid the interruption of the operation task due to the collision with the obstacle and ensure the operation efficiency of the robot arm.

[0079] It should be noted that the obstacle-avoiding distance and the back-off distance are set according to actual conditions or experience in this embodiment. If the obstacle is large, the obstacle-avoiding path cannot always ensure that the obstacle can be avoided, and the robot arm may collide with the obstacle again in this case. In this embodiment, a new obstacle-avoiding point is determined according to the obstacle-avoiding distance when the robot arm collides with the obstacle again, a target path model is calculated based on the new obstacle-avoiding point and each path point in the second reference path, a third target path is obtained, and the robot arm is controlled to move according to the third target path. For example, when the obstacle collides with the robot arm again, a new obstacle-avoiding point is determined to generate a new first target path, and the robot arm moves to the end point to complete the operation task. The third target path is the new first target path.

[0080] In summary, the robot arm obstacle-avoiding moving method provided in the embodiments of the present application acquires a plurality of first reference paths, determines a joint probability distribution model of the plurality of first reference paths, determines a second reference path based on the joint probability distribution model, constructs a target path model based on the second reference path through a kernelized motion primitive, determines an obstacle-avoiding point according to a preset obstacle-avoiding distance when the robot arm collides with the obstacle, calculates a target path model based on the obstacle-avoiding point and each path point in the second reference path, and controls the robot arm to move according to the first target path. Through the above technical means, the joint probability distribution model of the plurality of first reference paths that can complete the operation task is learned to reproduce a stable and convergent expected operation path. The target path model is determined by learning each expected path point in the expected operation path and the corresponding input parameter through the kernelized motion primitive. The target path model can learn an extended path to obtain an adaptive path passing through each expected path point. When the robot arm collides with the obstacle, a corresponding obstacle-avoiding point is determined, the obstacle-avoiding point is taken as a point on the extended path to plan a first target path passing through the obstacle-avoiding point and capable of returning to the operation path through the target path model, and the robot arm is controlled to move according to the first target path. The robot arm can continue the operation on the expected operation path after avoiding the obstacle, realizes the automatic obstacle avoidance without interrupting the operation task, and effectively improves the operation efficiency of the robot arm.

[0081] On the basis of the above embodiments, Figure 8A structural schematic diagram of a mechanical arm obstacle-avoiding moving device is provided for an embodiment of the present application. Refer to Figure 8 The mechanical arm obstacle-avoiding moving device provided in the embodiment specifically comprises a reference path determination module 21, a path model construction module 22 and a first target path determination module 23.

[0082] The reference path determination module is configured to acquire a plurality of first reference paths and determine a joint probability distribution model of the plurality of first reference paths, and determine a second reference path through the joint probability distribution model.

[0083] The path model construction module is configured to construct a target path model through a kernelized motion primitive based on the second reference path.

[0084] The first target path determination module is configured to determine an obstacle-avoiding point according to a preset obstacle-avoiding distance in the case that the mechanical arm collides with an obstacle, solve a target path model based on each path point in the second reference path and the obstacle-avoiding point, obtain a first target path, and control the mechanical arm to move according to the first target path.

[0085] On the basis of the above-mentioned embodiment, the reference path determination module comprises a first modeling unit configured to model the plurality of first reference paths through a Gaussian mixture model or a Gaussian process to obtain a joint probability distribution model and generate a conditional probability distribution model based on the joint probability distribution model; and a second reference path determination unit configured to solve the conditional probability distribution model based on a Gaussian mixture regression strategy or a Gaussian process regression strategy through a preset first input parameter to obtain pose parameters and covariance parameters of each path point in the second reference path.

[0086] On the basis of the above-mentioned embodiment, the path model construction module comprises a first coefficient determination unit configured to determine a first mapping vector of each first input parameter based on a preset kernel function and determine a first coefficient matrix according to the product of the transpose of any one first mapping vector and any one first mapping vector; a second coefficient determination unit configured to determine a second mapping vector of a preset second input parameter based on the kernel function and multiply the product of the transpose of the second mapping vector and any one first mapping vector to determine a second coefficient; and a second modeling unit configured to generate a target path model according to the first coefficient matrix and the second coefficient.

[0087] On the basis of the above-mentioned embodiments, the obstacle-encircling moving device of the robot arm further comprises a second target path determining module configured to, after determining the target path model based on the second reference path through the kernel motion primitive, calculate the target path model according to the pose parameters and covariance parameters of each path point in the second reference path to obtain the pose parameters of each path point in the second target path; and a work moving module configured to, in the case that the robot arm does not collide with the obstacle, control the robot arm to move according to the pose parameters of each path point in the second target path.

[0088] On the basis of the above-mentioned embodiments, the first target path determining module comprises a detection unit configured to detect the collision force direction when the robot arm end collides with the obstacle through the torque sensor installed at the robot arm end; and an obstacle-encircling point determining unit configured to determine the pose parameters of the obstacle-encircling point according to the collision force direction, the motion reverse direction of the robot arm, the obstacle-encircling distance and the preset retreat distance.

[0089] On the basis of the above-mentioned embodiments, the first target path determining module comprises a first target path determining unit configured to calculate the target path model according to the pose parameters and covariance parameters of each path point in the second reference path and the pose parameters and covariance parameters of the obstacle-encircling point to obtain the pose parameters of each path point in the first target path.

[0090] On the basis of the above-mentioned embodiments, the obstacle-encircling moving device of the robot arm further comprises a third target path determining module configured to, after controlling the robot arm to move according to the first target path, in the case that the robot arm collides with the obstacle again, determine a new obstacle-encircling point according to the obstacle-encircling distance, calculate the target path model based on each path point in the second reference path and the new obstacle-encircling point to obtain a third target path, and control the robot arm to move according to the third target path.

[0091] According to the above, the mechanical arm obstacle-avoiding moving device provided by the embodiment of the application obtains a plurality of first reference paths, determines a joint probability distribution model of the plurality of first reference paths, determines a second reference path based on the joint probability distribution model, constructs a target path model based on the second reference path and the kernel motion primitive, determines an obstacle-avoiding point based on a preset obstacle-avoiding distance when the mechanical arm collides with an obstacle, calculates the target path model based on each path point in the second reference path and the obstacle-avoiding point to obtain a first target path, and controls the mechanical arm to move according to the first target path. Through the above technical means, the joint probability distribution model of the plurality of first reference paths that can all complete a work task is learned to reproduce a stable and convergent expected work path. The kernel motion primitive is used to learn each expected path point in the expected work path and the corresponding input parameter to determine the target path model. The target path model can learn an extended path to obtain an adaptive path passing through each expected path point. When the mechanical arm collides with the obstacle, the corresponding obstacle-avoiding point is determined. The obstacle-avoiding point is used as a point on the extended path to plan the first target path passing through the obstacle-avoiding point and capable of returning to the work path by using the target path model, so that the mechanical arm moves according to the first target path, and the mechanical arm can return to the expected work path to continue work after avoiding the obstacle, thereby realizing automatic obstacle avoidance without interrupting the work task and effectively improving the work efficiency of the mechanical arm.

[0092] The mechanical arm obstacle-avoiding moving device provided by the embodiment of the application can be used to execute the mechanical arm obstacle-avoiding moving method provided by the above embodiment, has the corresponding functions and beneficial effects.

[0093] Figure 9 FIG. 1 is a structural schematic diagram of a mechanical arm obstacle-avoiding moving device provided by an embodiment of the application, referring to Figure 9 The mechanical arm obstacle-avoiding moving device includes a processor 31, a memory 32, a communication device 33, an input device 34, and an output device 35. The number of processors 31 in the mechanical arm obstacle-avoiding moving device can be one or more, and the number of memories 32 in the mechanical arm obstacle-avoiding moving device can be one or more. The processor 31, the memory 32, the communication device 33, the input device 34, and the output device 35 of the mechanical arm obstacle-avoiding moving device can be connected through a bus or other means.

[0094] The memory 32, as a computer readable storage medium, can be used to store software programs, computer executable programs and modules, such as program instructions / modules corresponding to the mechanical arm obstacle moving method of any embodiment of the present application (for example, the reference path determination module 21, the path model construction module 22 and the first target path determination module 23 in the mechanical arm obstacle moving device). The memory 32 can mainly include a program storage area and a data storage area, wherein the program storage area can store an operating system and application programs required by at least one function; the data storage area can store data created according to the use of the device, etc. In addition, the memory 32 can include a high-speed random access memory, and can also include a non-volatile memory, such as at least one magnetic disk storage device, a flash memory device, or other non-volatile solid-state memory device. In some examples, the memory can further include a memory remotely arranged with respect to the processor, which can be connected to the device through a network. Examples of the above network include but are not limited to the Internet, an intranet, a local area network, a mobile communication network and a combination thereof.

[0095] The communication device 33 is used for data transmission.

[0096] The processor 31 executes various function applications and data processing of the device by running the software programs, instructions and modules stored in the memory 32, that is, implements the above-mentioned mechanical arm obstacle moving method.

[0097] The input device 34 can be used to receive input digital or character information, and generate key signal input related to user settings and function control of the device. The output device 35 can include a display device such as a display screen.

[0098] The mechanical arm obstacle moving device provided above can be used to execute the mechanical arm obstacle moving method provided by the above-mentioned embodiments, and has corresponding functions and advantages.

[0099] The embodiment of the present application also provides a storage medium containing computer executable instructions, which are used to execute a mechanical arm obstacle moving method when executed by a computer processor. The mechanical arm obstacle moving method comprises the following steps: acquiring a plurality of first reference paths, and determining a joint probability distribution model of the plurality of first reference paths; determining a second reference path through the joint probability distribution model; constructing a target path model through a kernelized motion primitive based on the second reference path; in the case that the mechanical arm collides with an obstacle, determining an obstacle avoidance point according to a preset obstacle avoidance distance, calculating the target path model based on each path point in the second reference path and the obstacle avoidance point to obtain a first target path, and controlling the mechanical arm to move according to the first target path.

[0100] Storage medium - any one or more storage devices and / or media in which data or instructions can be stored. The storage medium can include memory installed in a computing device such as computer system 100 or a random access memory, such as a DRAM, DDR RAM, SRAM, EDO RAM, Rambus RAM, etc.; read-only memory; flash memory devices; disks, tapes, optical storage, such as CD-ROM, DVD, etc.; and so forth. The storage medium can also include two or more of the same or different types of memory or storage. The storage medium can be located in a first computer system that can be used to execute programs, according to the instructions contained in the storage medium, or can be located at a second computer system that is connected to the first computer system by a network, such as a LAN or a WAN, for example. The second computer system can provide information to the first computer system for execution via the storage medium. The term "storage medium" can also include a collection of two or more storage media that can be used to store data or instructions for execution by one or more processors. The storage medium can store program instructions, such as computer program, that can be executed by one or more processors.

[0101] Of course, the storage medium provided by the embodiments of the present application includes computer executable instructions, and the computer executable instructions are not limited to the above-mentioned obstacle-avoiding moving method of the mechanical arm, and can also execute the related operations in the obstacle-avoiding moving method of the mechanical arm provided by any of the embodiments of the present application.

[0102] The obstacle-avoiding moving device of the mechanical arm, the storage medium and the obstacle-avoiding moving equipment provided in the above embodiments can execute the obstacle-avoiding moving method of the mechanical arm provided by any of the embodiments of the present application, and the technical details not described in detail in the above embodiments can be referred to the obstacle-avoiding moving method of the mechanical arm provided by any of the embodiments of the present application.

[0103] The above are only the preferred embodiments of the present application and the technical principles applied. The present application is not limited to the specific embodiments herein, and various obvious changes, re-adjustments and replacements made by those skilled in the art will not deviate from the protection scope of the present application. Therefore, although the present application has been described in more detail through the above embodiments, the present application is not limited to the above embodiments, and can include more other equivalent embodiments without deviating from the concept of the present application, and the scope of the present application is determined by the scope of the claims.

Claims

1. A method for a robotic arm to move around obstacles, characterized in that, include: Obtain multiple first reference paths, determine the joint probability distribution model of the multiple first reference paths, and determine the second reference path through the joint probability distribution model; This includes: modeling the pose parameters of multiple path points in the multiple first reference paths using a Gaussian mixture model or a Gaussian process to obtain a joint probability distribution model; generating a conditional probability distribution model based on the joint probability distribution model; and solving the conditional probability distribution model using a Gaussian mixture regression strategy or a Gaussian process regression strategy with preset first input parameters to obtain the pose parameters and covariance parameters of each path point in the second reference path. Constructing a target path model based on the second reference path using kernelized motion primitives includes: determining a first mapping vector for each first input parameter based on a preset kernel function; determining a first coefficient matrix by multiplying the transpose of any first mapping vector with any first mapping vector; determining a second mapping vector for a preset second input parameter based on the kernel function; multiplying the transpose of the second mapping vector with the product of any first mapping vector to determine a second coefficient; and generating a target path model based on the first coefficient matrix and the second coefficient. When the robotic arm collides with an obstacle, the obstacle avoidance point is determined according to the preset obstacle avoidance distance. The target path model is calculated based on each path point in the second reference path and the obstacle avoidance point to obtain the first target path. The robotic arm is then controlled to move according to the first target path.

2. The method for obstacle-avoiding movement of a robotic arm according to claim 1, characterized in that, After determining the target path model based on the second reference path using kernelized motion primitives, the method further includes: Based on the pose parameters and covariance parameters of each path point in the second reference path, the target path model is solved to obtain the pose parameters of each path point in the second target path; If the robotic arm does not collide with an obstacle, the movement of the robotic arm is controlled according to the pose parameters of each path point in the second target path.

3. The method for obstacle-avoiding movement of a robotic arm according to claim 1, characterized in that, The step of determining the obstacle avoidance point based on the preset obstacle avoidance distance includes: The direction of the collision force when the end of the robotic arm collides with the obstacle is detected by a torque sensor installed at the end of the robotic arm. The pose parameters of the obstacle avoidance point are determined based on the direction of the collision force, the opposite direction of the movement of the robotic arm, the obstacle avoidance distance, and the preset retraction distance.

4. The method for obstacle-avoiding movement of a robotic arm according to claim 1, characterized in that, The step of solving the target path model based on each path point in the second reference path and the obstacle avoidance point to obtain the first target path includes: Based on the pose parameters and covariance parameters of each path point in the second reference path, as well as the pose parameters and covariance parameters of the obstacle avoidance point, the target path model is solved to obtain the pose parameters of each path point in the first target path.

5. The method for obstacle-avoiding movement of a robotic arm according to claim 1, characterized in that, After controlling the movement of the robotic arm according to the first target path, the method further includes: If the robotic arm collides with an obstacle again, a new obstacle avoidance point is determined based on the obstacle avoidance distance. The target path model is calculated based on each path point in the second reference path and the new obstacle avoidance point to obtain a third target path. The robotic arm is then controlled to move according to the third target path.

6. A robotic arm obstacle-avoiding movement device, characterized in that, include: A reference path determination module is configured to acquire multiple first reference paths, determine a joint probability distribution model of the multiple first reference paths, and determine a second reference path through the joint probability distribution model; wherein, the reference path determination module includes: a first modeling unit configured to model the pose parameters of multiple path points in the multiple first reference paths through a Gaussian mixture model or a Gaussian process to obtain a joint probability distribution model, and generate a conditional probability distribution model based on the joint probability distribution model; and a second reference path determination unit configured to solve the conditional probability distribution model through a Gaussian mixture regression strategy or a Gaussian process regression strategy using preset first input parameters to obtain the pose parameters and covariance parameters of each path point in the second reference path; A path model construction module is configured to construct a target path model based on the second reference path using kernelized motion primitives; wherein, the path model construction module includes: a first coefficient determination unit, configured to determine a first mapping vector for each first input parameter based on a preset kernel function, and determine a first coefficient matrix by multiplying the transpose of any first mapping vector with any first mapping vector; a second coefficient determination unit, configured to determine a second mapping vector for a preset second input parameter based on the kernel function, and determine a second coefficient by multiplying the transpose of the second mapping vector with the product of any first mapping vector; and a second modeling unit, configured to generate a target path model based on the first coefficient matrix and the second coefficients; The first target path determination module is configured to determine the obstacle avoidance point based on a preset obstacle avoidance distance when the robotic arm collides with an obstacle, calculate the target path model based on each path point in the second reference path and the obstacle avoidance point to obtain the first target path, and control the movement of the robotic arm according to the first target path.

7. A robotic arm obstacle-avoiding mobile device, characterized in that, include: One or more processors; A storage device for storing one or more programs that, when executed by one or more processors, cause the one or more processors to implement the obstacle-avoiding movement method of the robotic arm as described in any one of claims 1-5.

8. A storage medium containing computer-executable instructions, characterized in that, The computer-executable instructions, when executed by a computer processor, are used to perform the obstacle-avoidance movement method of the robotic arm as described in any one of claims 1-5.

Citation Information

Patent Citations

  • A domestic service robot path programming method based on a walking trajectory

    CN106774314A

  • Active obstacle avoidance method based on dynamic window method

    CN109976343A