Robot rod position perception method, device, electronic equipment and storage medium

Through real-time acquisition and matching calculation, the reference template database is used to determine the rod position of the upper limb assisted exoskeleton robot, which solves the problem of inaccurate perception of the rod position in the prior art, and realizes accurate perception and coordinated control under different working conditions.

CN116766205BActive Publication Date: 2025-06-06JIANGMEN POWER SUPPLY BUREAU OF GUANGDONG POWER GRID CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310944896.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-07-28
Publication Date
2025-06-06
Estimated Expiration
2043-07-28

AI Technical Summary

Technical Problem

In the prior art, the upper limb-assisted exoskeleton robot cannot accurately sense the position of the rod when carrying out lifting the rod, and is greatly affected by human factors.

Method used

By collecting the left and right arm forces to be tested by the robot in real time and matching with the reference pose mapping set in the reference template database that has been processed by iterative optimization, the reference pose mapping set with the smallest mean square error value is determined as the target pose mapping set, thereby determining the target pose of the rod member.

Benefits of technology

The upper limb exoskeleton robot realizes the perception of the rod position under different working conditions, provides important coordinated control parameters, and improves the accuracy and efficiency of the operation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116766205B_ABST
    Figure CN116766205B_ABST
Patent Text Reader

Abstract

The present invention discloses a robot rod posture perception method, device, electronic device and storage medium, which are used to solve the technical problem in the existing related technology that when the upper limb assist exoskeleton robot performs a lifting rod operation, the rod posture cannot be accurately perceived. The method includes: real-time acquisition of the robot's left and right arm forces to be measured, obtaining a reference template database that has been iteratively optimized, wherein the reference template database includes multiple groups of reference posture mapping sets, and each reference posture mapping set includes reference posture mappings of different left and right arm forces under a specific rod posture; matching and calculating the left and right arm forces to be measured with each reference posture mapping set, determining the reference posture mapping set with the smallest mean square error value as the target posture mapping set; and using the specific rod posture corresponding to the target posture mapping set as the target rod posture of the left and right arm forces to be measured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of robot perception and recognition technology, and in particular to a robot rod position perception method, device, electronic equipment and storage medium. Background Art

[0002] With the continuous development of artificial intelligence, more and more people choose to use robots to complete various tasks, such as controlling robots to move in various terrains or environments for data collection, such as controlling robots to explore unknown areas, perform dangerous tasks or conduct rescue work, etc. At the same time, with the rapid development of modern technology, the upper limb assisted exoskeleton robot technology has also made rapid progress in response to complex industrial needs. Among them, the upper limb assisted exoskeleton robot technology refers to the wearer wearing an upper limb assisted exoskeleton to perform active operations, and the exoskeleton provides the wearer with the necessary assistance.

[0003] Upper limb assisted exoskeletons are generally dual-operation terminals. When performing lifting pole operations, they are required to be able to sense the position of the pole, thereby providing support for the collaborative control of the upper limb exoskeleton robot. However, in existing related technologies, the position of the pole is generally adjusted based on the wearer's own work experience, which is greatly affected by human factors and cannot accurately sense the position of the pole during actual operations. Summary of the invention

[0004] The present invention provides a robot rod posture perception method, device, electronic device and storage medium, which are used to solve or partially solve the technical problem in the existing related technology that when an upper limb assisted exoskeleton robot performs a lifting rod operation, it is unable to accurately perceive the rod posture.

[0005] The present invention provides a robot rod position perception method, which is applied to an upper limb power-assisted exoskeleton robot with dual operating terminals, and comprises:

[0006] Collect the left and right arm forces to be measured of the robot in real time, and obtain a reference template database that has been iteratively optimized, wherein the reference template database includes a plurality of reference posture mapping sets, and each of the reference posture mapping sets includes reference posture mappings of different left and right arm forces under a specific rod posture;

[0007] Matching and calculating the left and right arm forces to be measured with each of the reference posture mapping sets, and determining the reference posture mapping set with the smallest mean square error value as the target posture mapping set;

[0008] The specific rod posture corresponding to the target posture mapping set is used as the target rod posture of the left and right arm forces to be measured.

[0009] Optionally, before obtaining the reference template database that has been iteratively optimized, the method further includes:

[0010] Step S1: constructing an initial template database, wherein the initial template database includes a plurality of sets of initial posture mapping sets under different working scenarios, and each of the initial posture mapping sets includes initial posture mappings of different left and right arm forces under a specific rod posture;

[0011] Step S2: for each of the initial posture mapping sets, randomly selecting a preset number of left and right arm strength data in the initial posture mapping set, and calculating a reference posture mapping set corresponding to the initial posture mapping set based on the preset number of left and right arm strength data, and using the multiple groups of reference posture mapping sets obtained by calculation as a reference template database;

[0012] Step S3: Initializing a plurality of optimized populations corresponding to the plurality of initial pose mapping sets and the plurality of reference pose mapping sets, and calculating an initial fitness value corresponding to each of the optimized populations, and setting the current number of iterations to 1;

[0013] Step S4: selecting the optimal population corresponding to the minimum initial fitness value from the plurality of optimized populations;

[0014] Step S5: for any of the initial pose mapping sets, the plurality of optimized populations are updated based on the optimal population to obtain corresponding plurality of updated populations, and an updated fitness value corresponding to each of the updated populations is calculated with reference to the calculation method in step S3;

[0015] Step S6: for any of the updated populations, if the updated fitness value of the updated population is greater than the initial fitness value before the update, a random number is generated within a preset interval. If the random number is a negative number, step S7 is executed followed by step S8. If the random number is a non-negative number, step S8 is directly executed.

[0016] Step S7: performing a secondary update on each of the update populations to obtain the corresponding secondary update populations, and calculating the secondary update fitness value corresponding to each of the secondary update populations by referring to the calculation method in step S3;

[0017] Step S8: Repeat steps S5 to S7 to comprehensively update the optimized population and the fitness value corresponding to the optimized population, and after each update, refer to step S4 to re-screen the optimal population corresponding to the minimum initial fitness value, and control the number of iterations to increase by 1 each time it is updated;

[0018] Step S9: Repeat step S8, and if it is detected that the number of iterations is greater than the maximum number of searches, stop the iteration, output the final optimized population corresponding to the initial pose mapping set, and use the final optimized population to update the reference pose mapping set;

[0019] Step S10: Repeat step S9 to update each set of reference pose mapping sets, and use the updated multiple sets of reference pose mapping sets as the final reference template database, wherein each set of reference pose mapping sets represents a direct mapping of a specific rod pose.

[0020] Optionally, the constructing an initial template database includes:

[0021] Obtain the original data, which includes the left and right arm forces and their corresponding rod positions in different working scenarios:

[0022]

[0023] θ=[θ x θ y θ z ]

[0024] The following formula is used to perform normalization constraint processing on the original data:

[0025]

[0026] According to the left and right arm forces and their corresponding bar positions obtained after normalized constraint processing, the initial template database is constructed:

[0027] M=[M 1 M 2 ......M i ]

[0028] M i ={F θ |θ=targetmode},l=length(M i )

[0029] Among them, F is the force of the left and right arms in the xyz three axes, θ is the angle posture of the rod in the xyz three axes, x i represents the original data, x max For x i The maximum value, x min For x i The minimum value of y i is the data obtained after normalization, y max for y i The maximum value of y min for y i The minimum value of M is the initial template database, M i For a specific member position θ = all F θ The set of initial pose mappings, l is M i Medium Fθ , that is, the number of mapping groups corresponding to the same rod position θ mapped by different left and right arm forces.

[0030] Optionally, the randomly selecting a preset number of left and right arm strength data from the initial pose mapping set, and calculating a reference pose mapping set corresponding to the initial pose mapping set based on the preset number of left and right arm strength data, comprises:

[0031] 70% of the left and right arm strength data in the initial pose mapping set are randomly selected, and the reference pose mapping set corresponding to the initial pose mapping set is calculated by the following formula:

[0032]

[0033]

[0034] The expression of the reference template database is:

[0035]

[0036] Where n is the randomly selected F θ The number of θ_i is the i-th F θ , is the i-th reference pose mapping set, The reference pose mapping set includes the left and right arm forces in the xyz axes. A reference template database.

[0037] Optionally, the initializing a plurality of optimized populations corresponding to the multiple sets of initial pose mapping sets and the multiple sets of reference pose mapping sets, and calculating an initial fitness value corresponding to each of the optimized populations, includes:

[0038] Initialize several optimized populations using the following formula:

[0039] P={P k |1≤k≤N}

[0040]

[0041] t=rand(-1,1)*max(M i )

[0042] Among them, P is the optimized population, N is the number of optimized populations, here P k For M i An initial solution for optimization, t is a random number in the interval (-1,1) generated by the random number generator rand(-1,1) and max(M i), max(M i ) is M i The maximum force value in , without distinguishing between left and right or xyz dimensions;

[0043] The initial fitness value corresponding to each optimized population is calculated by the following formula:

[0044]

[0045] V={V k |1≤k≤N}

[0046] Among them, V k is the initial solution P k The corresponding initial fitness value, V is the set of initial fitness values, and fitness(*) is the mean square error function.

[0047] Optionally, selecting the optimal population corresponding to the minimum initial fitness value from the plurality of optimized populations includes:

[0048] The optimal population corresponding to the minimum initial fitness value is selected from the several optimized populations by the following formula:

[0049] V best =min(V)

[0050] P best =P k ,V k =V best

[0051] Here, V best is the minimum initial fitness value in the initial fitness value set V, min(*) means to find the minimum value, here P best is the optimal population.

[0052] Optionally, the updating the plurality of optimized populations based on the optimal population to obtain a plurality of corresponding updated populations includes:

[0053] Based on the optimal population, the several optimized populations are updated by the following formula to obtain the corresponding several updated populations:

[0054]

[0055] p = rand(0,1)

[0056] p+q=1

[0057]

[0058]

[0059] C = rand(0,2)

[0060] Among them, P k-new The updated P k , p and q are both random numbers in the interval (0,1), A is a dimension and P k A consistent random number matrix, where the values ​​of any dimension are random numbers in the interval (-a, a). It means that A and abs(*) are directly multiplied by each dimension of the formula in the bracket to get a new value. a is a non-negative constant whose value is determined by the current number of iterations gen. Max_gen is the maximum number of searches. C is a random number in the interval (0,2). abs(*) means that the absolute value of all dimensions of the formula in the bracket is calculated. The specific calculation formula is as follows:

[0061]

[0062] A and B are both matrices with i rows and j columns, and both A and B are random sample matrices.

[0063] Optionally, performing a secondary update on each of the update populations to obtain the corresponding secondary update populations includes:

[0064] Each of the update populations is updated twice using the following formula to obtain the corresponding secondary update populations:

[0065] P k-new =abs(P best -P k )*e b*L *cos(2π*L)+P best

[0066] b=1

[0067] L = rand(-1,1)

[0068] Among them, L is a random number in the interval (-1,1), e * is the exponential function, b is the base coefficient of the exponential function, and cos(*) is the cosine calculation.

[0069] Optionally, the adopting the final optimized population to update the reference pose mapping set includes:

[0070] Based on the final optimized population, the reference pose mapping set is updated using the following formula:

[0071]

[0072] Then the final reference template database expression is:

[0073]

[0074] Here P best For M i After iterative optimization, the solution corresponding to the final optimized population is output.

[0075] The present invention also provides a robot rod position perception device, which is applied to an upper limb power-assisted exoskeleton robot with dual operating terminals, and the device comprises:

[0076] The left and right arm force acquisition module to be measured is used to collect the left and right arm forces to be measured of the robot in real time, and obtain a reference template database that has been iteratively optimized, wherein the reference template database includes multiple groups of reference posture mapping sets, and each of the reference posture mapping sets includes reference posture mappings of different left and right arm forces under a specific rod posture;

[0077] A reference posture mapping matching calculation module is used to match and calculate the left and right arm forces to be measured with each of the reference posture mapping sets, and determine the reference posture mapping set with the smallest mean square error value as the target posture mapping set;

[0078] The target rod position and posture determination module is used to use the specific rod position and posture corresponding to the target position and posture mapping set as the target rod position and posture of the left and right arm forces to be measured.

[0079] The present invention also provides an electronic device, the device comprising a processor and a memory:

[0080] The memory is used to store program code and transmit the program code to the processor;

[0081] The processor is used to execute the robot rod position perception method as described in any one of the above items according to the instructions in the program code.

[0082] The present invention also provides a computer-readable storage medium, wherein the computer-readable storage medium is used to store program codes, and the program codes are used to execute the robot rod position perception method as described in any one of the above items.

[0083] It can be seen from the above technical scheme that the present invention has the following advantages: in view of the problem that the posture of rods is difficult to obtain directly under actual working conditions, a rod posture perception method of an upper limb exoskeleton robot with dual operating terminals is provided based on the human-computer interaction force of the left and right operating terminals. The left and right arm forces of the left and right hands can be obtained as known parameters through the multi-dimensional force sensors on the exoskeleton, and the unknown rod posture can be solved in combination with the reference template database that has been iteratively optimized and the left and right arm forces, thereby solving the problem of the upper limb exoskeleton's perception of the posture of rods under different working conditions and providing important parameters for the collaborative control of the upper limb exoskeleton. BRIEF DESCRIPTION OF THE DRAWINGS

[0084] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative labor.

[0085] Figure 1 A schematic diagram of the structure of human-machine interaction of the left and right arm operation terminals of an upper limb assisted exoskeleton robot provided by an embodiment of the present invention;

[0086] Figure 2 A flowchart of a method for sensing the position and posture of a robot rod provided by an embodiment of the present invention;

[0087] Figure 3 A schematic diagram of the overall process of a robot rod position and posture perception method provided by an embodiment of the present invention;

[0088] Figure 4 A structural block diagram of a robot rod position and posture sensing device provided in an embodiment of the present invention. DETAILED DESCRIPTION

[0089] The embodiments of the present invention provide a robot rod posture perception method, device, electronic device and storage medium, which are used to solve or partially solve the technical problem in the existing related technology that when the upper limb assisted exoskeleton robot performs a lifting rod operation, it is unable to accurately perceive the rod posture.

[0090] In order to make the purpose, features and advantages of the present invention more obvious and easy to understand, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the embodiments described below are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0091] As an example, with the rapid development of modern technology, upper limb assisted exoskeleton robot technology has also made rapid progress in response to complex industrial needs. Among them, upper limb assisted exoskeleton robot technology refers to the wearer wearing an upper limb assisted exoskeleton to perform active work, and the exoskeleton provides the necessary assistance to the wearer.

[0092] Upper limb assisted exoskeletons are generally dual-operation terminals. When performing lifting pole operations, they are required to be able to sense the position of the pole, thereby providing support for the collaborative control of the upper limb exoskeleton robot. However, in existing related technologies, the position of the pole is generally adjusted based on the wearer's own work experience, which is greatly affected by human factors and cannot accurately sense the position of the pole during actual operations.

[0093] Therefore, one of the core inventive points of the embodiments of the present invention is: in view of the problem that the posture of rods is difficult to obtain directly under actual working conditions, a rod posture perception method for an upper limb exoskeleton robot with dual operating terminals is provided based on the human-computer interaction force of the left and right hand operating terminals. The left and right arm forces of the left and right hands can be obtained as known parameters through the multi-dimensional force sensors on the exoskeleton, and the unknown rod posture can be solved in combination with the reference template database that has been iteratively optimized and the left and right arm forces, thereby solving the problem of the upper limb exoskeleton's perception of the posture of rods under different working conditions and providing important parameters for the collaborative control of the upper limb exoskeleton.

[0094] Reference Figure 1 , showing a structural schematic diagram of human-computer interaction of left and right arm operation terminals of an upper limb assisted exoskeleton robot provided by an embodiment of the present invention.

[0095] Taking one of the arms of the upper limb assisted exoskeleton robot as an example, it can be seen from the figure that when performing operations, the structure for realizing human-computer interaction of the operating terminal can mainly include a multi-dimensional force sensor 11, a rod 12, a forearm 13 of the upper limb assisted exoskeleton robot, a clamp 14 and a handle 15, wherein the multi-dimensional force sensor 11 is used to collect the arm force data of the forearm 13 in real time, including the component force data of the left and right and the xyz axis dimensions, the rod 12 can be regarded as a solid mechanical object connecting two joints, the posture of the rod 12 is one of the important parameters for collaborative control of correct operation, the clamp 14 is used to fix the rod 12, and the handle 15 can be used to manually adjust the position of the rod 12.

[0096] For further explanation, see Figure 2 , shows a flowchart of the steps of a robot rod position perception method provided by an embodiment of the present invention, the method is applied to an upper limb power-assisted exoskeleton robot with dual operating terminals, and the method may specifically include the following steps:

[0097] Step 201, collecting the left and right arm forces to be measured of the robot in real time, and obtaining a reference template database that has been iteratively optimized, wherein the reference template database includes a plurality of reference posture mapping sets, and each of the reference posture mapping sets includes reference posture mappings of different left and right arm forces under a specific rod posture;

[0098] In practical applications, when it is necessary to determine the rod posture of the upper limb assisted exoskeleton robot with dual operating terminals for operation, the current left and right arm forces of the robot can be collected in real time through a multi-dimensional force sensor as the left and right arm forces to be measured, and then a pre-built reference template database that has been iteratively optimized can be obtained as a matching object database for the left and right arm forces to be measured, wherein the reference template database mainly includes multiple groups of reference posture mapping sets, and each reference posture mapping set includes reference posture mappings of different left and right arm forces under a specific rod posture. For example, a set of reference posture mapping sets can correspond to a specific rod posture θ. Assume that under the specific rod posture θ, the left and right arm force data corresponding to 10 classic operation scenarios are recorded, which are F 1 ,F 2 ,...,F 10 , then there are 10 sets of reference pose mapping relationships, namely θ→F 1 ,θ→F 2 ,...,θ→F 10 It should be understood that the present invention is not limited to this.

[0099] Therefore, before obtaining the reference template database that has been iteratively optimized, the following steps may also be included:

[0100] Step S1: constructing an initial template database, wherein the initial template database includes multiple sets of initial posture mapping sets under different working scenarios, and each initial posture mapping set includes initial posture mappings of different left and right arm forces under a specific rod posture;

[0101] Constructing the initial template database requires a large amount of experimental data as training data or iterative initial data. Specifically, you can first wear an exoskeleton robot for upper limb assistance in a laboratory environment, then use the exoskeleton's multi-dimensional force sensor to collect the left and right arm forces F of the left and right hands, and at the same time stick marking points to the rods. Use the three-dimensional motion capture system to collect the position θ of the rods, and obtain data under different working conditions or different classic working scenarios to form an initial template database M, in which the left and right arm forces F of the robot's left and right hands correspond one-to-one to the rod position θ.

[0102] In a specific implementation, the steps of constructing an initial template database may include:

[0103] First, the original data is obtained, where the original data includes the left and right arm forces and their corresponding rod positions in different classic working scenarios, as follows:

[0104]

[0105] θ=[θ x θ y θ z ]

[0106] Among them, F is the left and right arm force including the left and right arms in the xyz three axes, l represents the left arm, r represents the right arm, and F l_x represents the force of the left arm in the x-axis direction, F l_y represents the arm force of the left arm in the y-axis direction, F l_z Indicates the arm force of the left arm in the z-axis direction, F r_x represents the arm force of the right arm in the x-axis direction, F r_y represents the arm force of the right arm in the y-axis direction, F r_z represents the arm force of the right arm in the z-axis direction, θ is the angle posture of the rod in the xyz three-axis, θ x is the angular attitude of the rod on the x-axis, θ y is the angular attitude of the rod on the y-axis, θ z is the angular attitude of the rod on the z-axis.

[0107] Since the inevitable errors may occur in the measurement process, resulting in problems such as point loss and pulse interference in the original data, the original time series needs to be processed by median average filtering before the actual optimization iteration to ensure the continuity and smoothness of the data.

[0108] Therefore, the following formula can be used to normalize the original data:

[0109]

[0110] Among them, x i represents the original data, x max For x i The maximum value, x min For x i The minimum value of y i is the data obtained after normalization, y max for y i The maximum value of y min for y i The minimum value of .

[0111] Then, based on the left and right arm forces and their corresponding bar positions obtained after normalized constraint processing, the initial template database is constructed:

[0112] M=[M 1 M 2 ......M i ]

[0113] M i ={F θ |θ=targetmode},l=length(M i )

[0114] Among them, M is the initial template database, M i For a specific member position θ = all F in target mode θ The set of initial pose mappings, l is M i Medium F θ The number of mapping groups, that is, the number of mapping groups corresponding to the same rod posture θ mapped by different left and right arm forces. When the deviation between the rod postures θ is less than 1°, it is determined to be the same rod posture θ.

[0115] Step S2: for each initial posture mapping set, randomly select a preset number of left and right arm strength data in the initial posture mapping set, and calculate a reference posture mapping set corresponding to the initial posture mapping set based on the preset number of left and right arm strength data, and use the multiple groups of reference posture mapping sets obtained by calculation as a reference template database;

[0116] Then, it is necessary to perform data screening and calculation on each set of initial pose mapping sets in the initial template database to obtain the corresponding reference pose mapping set.

[0117] In a specific implementation, a preset number of left and right arm strength data in the initial pose mapping set is randomly selected, and based on the preset number of left and right arm strength data, a reference pose mapping set corresponding to the initial pose mapping set is calculated. This can be: randomly selecting 70% of the left and right arm strength data in the initial pose mapping set, and calculating the reference pose mapping set corresponding to the initial pose mapping set by the following formula:

[0118]

[0119]

[0120] The expression of the reference template database is:

[0121]

[0122] Where n is the randomly selected F θ The number of θ_i is the i-th F θ , is the i-th reference pose mapping set, The reference pose mapping set includes the left and right arm forces in the xyz axes. A reference template database.

[0123] Step S3: Initialize multiple groups of initial pose mapping sets and multiple groups of reference pose mapping sets corresponding to several optimized populations, calculate the initial fitness value corresponding to each optimized population, and set the current number of iterations to 1;

[0124] When initializing a plurality of optimization populations corresponding to a plurality of initial pose mapping sets and a plurality of reference pose mapping sets, the maximum search times Max_gen may also be initialized at the same time to serve as a criterion for determining whether the optimization iteration of the population has reached the iteration times.

[0125] Further, the step of initializing a plurality of optimization populations corresponding to the plurality of initial pose mapping sets and the plurality of reference pose mapping sets, and calculating the initial fitness value corresponding to each optimization population may include:

[0126] First, initialize several optimized populations using the following formula:

[0127] P={P k |1≤k≤N}

[0128]

[0129] t=rand(-1,1)*max(M i )

[0130] Among them, P is the optimized population, N is the number of optimized populations, here P k For M i An initial solution for optimization, t is a random number in the interval (-1,1) generated by the random number generator rand(-1,1) and max(M i ), max(M i ) is M i The maximum force value in , without distinguishing between left and right or xyz dimensions;

[0131] Then the initial fitness value corresponding to each optimized population is calculated by the following formula:

[0132]

[0133] V={V k |1≤k≤N}

[0134] Among them, V k is the initial solution P k The corresponding initial fitness value, V is the set of initial fitness values, and fitness(*) is the mean square error function.

[0135] Mean-Square Error (MSE) is a measure of the difference between the estimator and the estimated quantity. The larger the mean-square error, the greater the difference between the estimator and the estimated quantity. The smaller the mean-square error, the smaller the difference between the estimator and the estimated quantity. The closer the estimator and the estimated quantity are, V k For P kThe fitness solution function listed in the embodiment of the present invention can be regarded as an objective function based on the mean square error, so the fitness value V k The smaller the value, the better the solution P corresponding to the optimized population. k The better, the closer to the optimal solution.

[0136] Step S4: Select the optimal population corresponding to the minimum initial fitness value from a number of optimized populations;

[0137] Furthermore, the optimal population corresponding to the minimum initial fitness value is selected from several optimized populations, which can be: for the initial pose mapping set M i And the reference pose mapping set The optimal population corresponding to the minimum initial fitness value can be selected from several optimized populations by the following formula:

[0138] V best =min(V)

[0139] P best =P k ,V k =V best

[0140] Here, V best is the minimum initial fitness value in the initial fitness value set V, min(*) means to find the minimum value, here P best is the optimal population.

[0141] Step S5: for any initial pose mapping set, a plurality of optimized populations are updated based on the optimal population to obtain a plurality of corresponding updated populations, and an updated fitness value corresponding to each updated population is calculated by referring to the calculation method in step S3;

[0142] Specifically, based on the optimal population, several optimized populations are updated to obtain corresponding several updated populations. Based on the optimal population, several optimized populations are updated by the following formula to obtain corresponding several updated populations:

[0143]

[0144] p = rand(0,1)

[0145] p+q=1

[0146]

[0147]

[0148] C = rand(0,2)

[0149] Among them, Pk-new The updated P k , p and q are both random numbers in the interval (0,1), A is a dimension and P k A consistent random number matrix, where the values ​​of any dimension are random numbers in the interval (-a, a). It means that A and abs(*) are directly multiplied by each dimension of the formula in the bracket to get a new value. a is a non-negative constant whose value is determined by the current number of iterations gen. Max_gen is the maximum number of searches. C is a random number in the interval (0,2). abs(*) means that the absolute value of all dimensions of the formula in the bracket is calculated. The specific calculation formula is as follows:

[0150]

[0151] Among them, A and B are matrices with i rows and j columns, and A and B are random sample matrices. Matrix parameters such as i parameter and j parameter have no practical meaning and do not have the same meaning as the symbols of the same name in other formulas.

[0152] Step S6: For any updated population, if the updated fitness value of the updated population is greater than the initial fitness value before the update, a random number is generated within a preset interval. If the random number is a negative number, step S7 is executed followed by step S8. If the random number is a non-negative number, step S8 is directly executed.

[0153] Assume that the updated fitness value is recorded as V k_new , the initial fitness value before updating is recorded as V k , if the fitness value V is updated k_new > Initial fitness value V k , that is, after updating P k_new If the corresponding fitness value does not decrease, a random number D can be generated in the interval (-1,2), D=rand(-1,2). If the random number D is a negative number, it means that in order to further improve the iteration accuracy, the updated population needs to be updated twice before entering the next iteration process. Then, step S7 is executed and then step S8 is executed. If the random number D is a non-negative number, it means that the next iteration process can be directly entered at this time. Then, step S8 is executed directly. That is to say, when the random number D is a negative number, one more iteration is performed than when the random number D is a positive number or 0, so as to ensure that the updated population output is closer to the optimal solution.

[0154] In another case, if the fitness value V is updated k_new ≤ initial fitness value V k , then directly execute step S8.

[0155] Step S7: performing a secondary update on each update population to obtain the corresponding secondary update populations, and calculating the secondary update fitness value corresponding to each secondary update population by referring to the calculation method in step S3;

[0156] In a specific implementation, each updated population is updated twice to obtain the corresponding secondary updated population, which can be: for the initial pose mapping set M i , use the following formula to update each updated population twice to obtain the corresponding secondary updated population:

[0157] P k-new =abs(P best -P k )*e b*L *cos(2π*L)+P best

[0158] b=1

[0159] L = rand(-1,1)

[0160] Among them, L is a random number in the interval (-1,1), e * is the exponential function, b is the base coefficient of the exponential function, and cos(*) is the cosine calculation.

[0161] Step S8: Repeat steps S5 to S7 to comprehensively update the optimized population and the fitness value corresponding to the optimized population, and after each update, refer to step S4 to re-screen the optimal population corresponding to the minimum initial fitness value, and control the number of iterations to increase by 1 each time it is updated;

[0162] After completing one iteration process by executing step S5 to step S7, the population may be continuously iteratively updated by repeatedly executing step S5 to step S7.

[0163] Step S9: Repeat step S8. If it is detected that the number of iterations is greater than the maximum number of searches, the iteration is stopped, the final optimized population corresponding to the initial pose mapping set is output, and the reference pose mapping set is updated using the final optimized population;

[0164] When the number of iterations is greater than the maximum search number, that is, the maximum number of iterations, the iteration can be stopped, and the final optimized population for updating the reference pose mapping set is output.

[0165] Furthermore, the reference pose mapping set is updated by using the final optimized population. The reference pose mapping set can be updated by using the following formula based on the final optimized population:

[0166]

[0167] Then the final reference template database expression can be:

[0168]

[0169] Here P best For M i After iterative optimization, the solution corresponding to the final optimized population is output.

[0170] Step S10: Repeat step S9 to update each set of reference pose mapping sets, and use the updated multiple sets of reference pose mapping sets as the final reference template database, wherein each set of reference pose mapping sets represents a direct mapping of a specific rod pose.

[0171] Each set of reference pose mapping sets may be updated with reference to step S9. After all reference pose mapping sets are updated, the updated multiple sets of reference pose mapping sets may be used as the final reference template database.

[0172] Step 202, matching and calculating the left and right arm forces to be measured with each of the reference posture mapping sets, and determining the reference posture mapping set with the smallest mean square error value as the target posture mapping set;

[0173] Referring to the above content, it can be seen that when the upper limb assisted exoskeleton robot with dual operating terminals is used for actual operation, the left and right arm forces F of the left and right hands can be collected in real time through the multi-dimensional force sensor of the exoskeleton. new and compare it to the reference template database The set of all reference pose mappings in Perform matching calculations, specifically calculate the mean square error (MSE) formula, and select the reference pose mapping set with the smallest mean square error calculation result value As a set of target pose maps.

[0174] Step 203: taking the specific rod posture corresponding to the target posture mapping set as the target rod posture of the left and right arm forces to be measured.

[0175] Then, the specific rod pose θ corresponding to the target pose mapping set can be determined as the left and right arm forces F of the left and right hands of the upper limb assistive exoskeleton robot. new The corresponding target rod position is used to control the upper limb assist exoskeleton robot at the current left and right arm forces F new In this case, the operation is performed with the target rod position.

[0176] In an embodiment of the present invention, in order to solve the problem that the posture of rods is difficult to directly obtain under actual working conditions, a rod posture perception method for an upper limb exoskeleton robot with dual operating terminals is provided based on the human-computer interaction force of the left and right operating terminals. In practical applications, the left and right arm forces of the left and right hands can be obtained through the multi-dimensional force sensors on the exoskeleton as known parameters, and the unknown rod posture can be solved in combination with the reference template database that has been iteratively optimized and the left and right arm forces, thereby solving the problem of the upper limb exoskeleton's perception of the posture of rods under different working conditions and providing important parameters for the collaborative control of the upper limb exoskeleton.

[0177] For better explanation, refer to Figure 3 , showing an overall process diagram of a robot rod posture perception method provided by an embodiment of the present invention. It should be noted that the embodiment of the present invention only briefly describes the overall key process of the robot rod posture perception method. The detailed steps of each process can refer to the relevant content in the aforementioned embodiment. It can be understood that the present invention is not limited to this.

[0178] As can be seen from the figure, the whole process can be roughly divided into two parts. One part is the data collection and database construction process completed in the laboratory environment, and the other part is to put the database into practical application. In practical applications, based on the real-time collected left and right arm forces F_new, the mean square error matching calculation is combined with the database to determine the rod position process corresponding to F_new.

[0179] Firstly, in a laboratory environment, a three-dimensional motion capture system combined with an exoskeleton multi-dimensional force sensor is used to collect the original data of the upper limb assisted exoskeleton robot with dual operating terminals in different classic working scenarios. After normalization and constraint processing of the original data, multiple sets of rod pose θ and left and right arm force F data are obtained. According to the multiple sets of rod pose θ and left and right arm force F data, multiple sets of initial pose mapping sets are established, and an initial template database is constructed based on the multiple sets of initial pose mapping sets. Then, the initial template database is iteratively optimized to obtain a reference template database for practical application.

[0180] In practical applications, a three-dimensional motion capture system can also be used in combination with an exoskeleton multi-dimensional force sensor to collect the left and right arm forces F_new (including left and right and xyz axis force data) of the upper limb assisted exoskeleton robot of the dual operating terminal in real time. Then, the left and right arm forces F_new are matched with each set of reference pose mapping sets in the reference template database for mean square error matching calculation, and the reference pose mapping set with the smallest mean square error calculation result is selected as the target reference pose mapping set. The rod pose θ corresponding to the target reference pose mapping set is determined as the target rod pose, wherein the target rod pose θ contains the angular pose of the xyz axis dimension. Finally, the rods of the upper limb assisted exoskeleton robot can be controlled to operate with the target rod pose θ.

[0181] Reference Figure 4 , shows a structural block diagram of a robot rod position perception device provided by an embodiment of the present invention, the device is applied to an upper limb power-assisted exoskeleton robot with dual operating terminals, and the device may specifically include:

[0182] The left and right arm force acquisition module 401 to be measured is used to collect the left and right arm forces to be measured of the robot in real time, and obtain a reference template database that has been iteratively optimized, wherein the reference template database includes multiple groups of reference posture mapping sets, and each of the reference posture mapping sets includes reference posture mappings of different left and right arm forces under a specific rod posture;

[0183] A reference posture mapping matching calculation module 402 is used to match the left and right arm forces to be measured with each of the reference posture mapping sets, and determine the reference posture mapping set with the smallest mean square error value as the target posture mapping set;

[0184] The target rod posture determination module 403 is used to use the specific rod posture corresponding to the target posture mapping set as the target rod posture of the left and right arm forces to be measured.

[0185] Optionally, the device further comprises:

[0186] An initial template database construction module is used to execute step S1: construct an initial template database, wherein the initial template database includes a plurality of sets of initial posture mapping sets under different working scenarios, and each of the initial posture mapping sets includes initial posture mappings of different left and right arm forces under a specific rod posture;

[0187] The reference posture mapping set calculation module is used to execute step S2: for each of the initial posture mapping sets, randomly select a preset number of left and right arm strength data in the initial posture mapping set, and calculate a reference posture mapping set corresponding to the initial posture mapping set based on the preset number of left and right arm strength data, and use the multiple groups of reference posture mapping sets obtained by calculation as a reference template database;

[0188] An initial fitness value calculation module is used to execute step S3: initialize a plurality of optimization populations corresponding to the plurality of initial pose mapping sets and the plurality of reference pose mapping sets, calculate an initial fitness value corresponding to each of the optimization populations, and set the current number of iterations to 1;

[0189] The optimal population screening module is used to execute step S4: screening the optimal population corresponding to the minimum initial fitness value from the plurality of optimized populations;

[0190] A population updating module is used to execute step S5: for any of the initial pose mapping sets, the plurality of optimized populations are updated based on the optimal population to obtain corresponding plurality of updated populations, and an updated fitness value corresponding to each of the updated populations is calculated with reference to the calculation method in step S3;

[0191] The updating fitness value judgment module is used to execute step S6: for any of the updating populations, if the updating fitness value of the updating population is greater than the initial fitness value before the update, a random number is generated within a preset interval, and if the random number is a negative number, step S7 is executed before step S8, and if the random number is a non-negative number, step S8 is directly executed;

[0192] The population secondary updating module is used to execute step S7: perform secondary updating on each of the update populations to obtain the corresponding secondary updated populations, and calculate the secondary updated fitness value corresponding to each of the secondary updated populations according to the calculation method in step S3;

[0193] The population comprehensive update module is used to execute step S8: repeatedly execute steps S5 to S7, comprehensively update the optimized population and the fitness value corresponding to the optimized population, and after each update, refer to step S4 to re-screen the optimal population corresponding to the minimum initial fitness value, and control the number of iterations to increase by 1 each time it is updated;

[0194] The final optimized population determination module is used to execute step S9: repeatedly execute step S8, and if it is detected that the number of iterations is greater than the maximum number of searches, stop the iteration, output the final optimized population corresponding to the initial pose mapping set, and use the final optimized population to update the reference pose mapping set;

[0195] The reference pose mapping set updating module is used to execute step S10: repeatedly execute step S9, update each set of reference pose mapping sets, and use the updated multiple sets of reference pose mapping sets as the final reference template database, wherein each set of reference pose mapping sets represents a direct mapping of a specific rod pose.

[0196] Optionally, the initial template database construction module includes:

[0197] The raw data acquisition module is used to acquire raw data, including the left and right arm forces and their corresponding rod positions in different working scenarios:

[0198]

[0199] θ=[θ x θ y θ z ]

[0200] The normalization constraint processing module is used to perform normalization constraint processing on the original data using the following formula:

[0201]

[0202] The initial template database construction submodule is used to construct the initial template database based on the left and right arm forces and their corresponding rod positions obtained after normalized constraint processing:

[0203] M=[M 1 M 2 ……M i ]

[0204] M i ={F θ |θ=targetmode},l=length(M i )

[0205] Among them, F is the force of the left and right arms in the xyz three axes, θ is the angle posture of the rod in the xyz three axes, x i represents the original data, x max For x i The maximum value, x min For x i The minimum value of y i is the data obtained after normalization, y max for y i The maximum value of y min for y i The minimum value of M is the initial template database, M i For a specific member position θ = all F θ The set of initial pose mappings, l is M i Medium F θ , that is, the number of mapping groups corresponding to the same rod position θ mapped by different left and right arm forces.

[0206] Optionally, the reference pose mapping set calculation module is specifically used for:

[0207] 70% of the left and right arm strength data in the initial pose mapping set are randomly selected, and the reference pose mapping set corresponding to the initial pose mapping set is calculated by the following formula:

[0208]

[0209]

[0210] The expression of the reference template database is:

[0211]

[0212] Where n is the randomly selected F θ The number of θ_i is the i-th F θ , is the i-th reference pose mapping set, The reference pose mapping set includes the left and right arm forces in the xyz axes. A reference template database.

[0213] Optionally, the initial fitness value calculation module includes:

[0214] The optimization population initialization module is used to initialize several optimization populations using the following formula:

[0215] P={P k |1≤k≤N}

[0216]

[0217] r=rand(-1,1)*max(M i )

[0218] Among them, P is the optimized population, N is the number of optimized populations, here P k For M i An initial solution for optimization, r is a random number in the interval (-1,1) generated by the random number generator rand(-1,1) and max(M i ), max(M i ) is M i The maximum force value in , without distinguishing between left and right or xyz dimensions;

[0219] The initial fitness value calculation submodule is used to calculate the initial fitness value corresponding to each optimized population by the following formula:

[0220]

[0221] V={V k |1≤k≤N}

[0222] Among them, V k is the initial solution P k The corresponding initial fitness value, V is the set of initial fitness values, and fitness(*) is the mean square error function.

[0223] Optionally, the optimal population screening module is specifically used for:

[0224] The optimal population corresponding to the minimum initial fitness value is selected from the several optimized populations by the following formula:

[0225] V best =min(V)

[0226] P best =P k ,V k =V best

[0227] Here, V best is the minimum initial fitness value in the initial fitness value set V, min(*) means to find the minimum value, here P best is the optimal population.

[0228] Optionally, the population updating module is specifically used for:

[0229] Based on the optimal population, the several optimized populations are updated by the following formula to obtain the corresponding several updated populations:

[0230]

[0231] p = rand(0,1)

[0232] p+q=1

[0233]

[0234]

[0235] C = rand(0,2)

[0236] Among them, P k-new The updated P k , p and q are both random numbers in the interval (0,1), A is a dimension and P k A consistent random number matrix, where the values ​​of any dimension are random numbers in the interval (-a, a). It means that A and abs(*) are directly multiplied by each dimension of the formula in the bracket to get a new value. a is a non-negative constant whose value is determined by the current number of iterations gen. Max_gen is the maximum number of searches. C is a random number in the interval (0,2). abs(*) means that the absolute value of all dimensions of the formula in the bracket is calculated. The specific calculation formula is as follows:

[0237]

[0238] A and B are both matrices with i rows and j columns, and both A and B are random sample matrices.

[0239] Optionally, the population secondary updating module is specifically used for:

[0240] Each of the update populations is updated twice using the following formula to obtain the corresponding secondary update populations:

[0241] P k-new =abs(P best -P k )*e b*L *cos(2π*L)+P best

[0242] b=1

[0243] L = rand(-1,1)

[0244] Among them, L is a random number in the interval (-1,1), e * is the exponential function, b is the base coefficient of the exponential function, and cos(*) is the cosine calculation.

[0245] Optionally, the final optimized population determination module includes:

[0246] The reference pose mapping set updating submodule is used to update the reference pose mapping set based on the final optimized population using the following formula:

[0247]

[0248] Then the final reference template database expression is:

[0249]

[0250] Among them, here P best For M i After iterative optimization, the solution corresponding to the final optimized population is output.

[0251] As for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the aforementioned method embodiment.

[0252] An embodiment of the present invention further provides an electronic device, the device comprising a processor and a memory:

[0253] The memory is used to store program codes and transmit the program codes to the processor;

[0254] The processor is used to execute the robot rod position and posture perception method of any embodiment of the present invention according to the instructions in the program code.

[0255] An embodiment of the present invention further provides a computer-readable storage medium, which is used to store program codes, and the program codes are used to execute the robot rod position perception method of any embodiment of the present invention.

[0256] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0257] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.

[0258] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0259] In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0260] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a storage medium, including several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk and other media that can store program codes.

[0261] As described above, the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features thereof may be replaced by equivalents. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A robot rod position perception method, It is characterized in that An upper limb power-assisted exoskeleton robot applied to a dual-operation terminal, the method comprising: Collect the left and right arm forces to be measured of the robot in real time, and obtain a reference template database that has been iteratively optimized, wherein the reference template database includes a plurality of reference posture mapping sets, and each of the reference posture mapping sets includes reference posture mappings of different left and right arm forces under a specific rod posture; Matching and calculating the left and right arm forces to be measured with each of the reference posture mapping sets, and determining the reference posture mapping set with the smallest mean square error value as the target posture mapping set; Using the specific rod posture corresponding to the target posture mapping set as the target rod posture of the left and right arm forces to be measured; Wherein, before obtaining the reference template database that has been iteratively optimized, the method further includes: Step S1: constructing an initial template database, wherein the initial template database includes a plurality of sets of initial posture mapping sets under different working scenarios, and each of the initial posture mapping sets includes initial posture mappings of different left and right arm forces under a specific rod posture; Step S2: for each of the initial posture mapping sets, randomly selecting a preset number of left and right arm strength data in the initial posture mapping set, and calculating a reference posture mapping set corresponding to the initial posture mapping set based on the preset number of left and right arm strength data, and using the multiple groups of reference posture mapping sets obtained by calculation as a reference template database; Step S3: Initializing a plurality of optimized populations corresponding to the plurality of initial pose mapping sets and the plurality of reference pose mapping sets, and calculating an initial fitness value corresponding to each of the optimized populations, and setting the current number of iterations to 1; Step S4: selecting the optimal population corresponding to the minimum initial fitness value from the plurality of optimized populations; Step S5: for any of the initial pose mapping sets, the plurality of optimized populations are updated based on the optimal population to obtain corresponding plurality of updated populations, and an updated fitness value corresponding to each of the updated populations is calculated with reference to the calculation method in step S3; Step S6: for any of the updated populations, if the updated fitness value of the updated population is greater than the initial fitness value before the update, a random number is generated within a preset interval. If the random number is a negative number, step S7 is executed followed by step S8. If the random number is a non-negative number, step S8 is directly executed. Step S7: performing a secondary update on each of the update populations to obtain the corresponding secondary update populations, and calculating the secondary update fitness value corresponding to each of the secondary update populations by referring to the calculation method in step S3; Step S8: Repeat steps S5 to S7 to comprehensively update the optimized population and the fitness value corresponding to the optimized population, and after each update, refer to step S4 to re-screen the optimal population corresponding to the minimum initial fitness value, and control the number of iterations to increase by 1 each time it is updated; Step S9: Repeat step S8, and if it is detected that the number of iterations is greater than the maximum number of searches, stop the iteration, output the final optimized population corresponding to the initial pose mapping set, and use the final optimized population to update the reference pose mapping set; Step S10: Repeat step S9 to update each set of reference pose mapping sets, and use the updated multiple sets of reference pose mapping sets as the final reference template database, wherein each set of reference pose mapping sets represents a direct mapping of a specific rod pose.

2. The robot rod position perception method according to claim 1, It is characterized in that The constructing of the initial template database comprises: Obtain the original data, which includes the left and right arm forces and their corresponding rod positions in different working scenarios: ; ; The following formula is used to perform normalization constraint processing on the original data: ; According to the left and right arm forces and their corresponding bar positions obtained after normalized constraint processing, the initial template database is constructed: ; ; Among them, F is the force of the left and right arms in the xyz three axes, θ is the angle posture of the rod in the xyz three axes, x i represents the original data, x max For x i The maximum value, x min For x i The minimum value of y i is the data obtained after normalization, y max for y i The maximum value of y min for y i The minimum value of M is the initial template database, M i For a specific member position θ = target mode, all F θ The set of initial pose mappings, l is M i Medium F θ , that is, the number of mapping groups corresponding to the same rod position θ mapped by different left and right arm forces.

3. The robot rod position perception method according to claim 2, It is characterized in that The randomly selecting a preset number of left and right arm strength data from the initial pose mapping set, and calculating a reference pose mapping set corresponding to the initial pose mapping set based on the preset number of left and right arm strength data, comprises: 70% of the left and right arm strength data in the initial pose mapping set are randomly selected, and the reference pose mapping set corresponding to the initial pose mapping set is calculated by the following formula: ; ; The expression of the reference template database is: ; Where n is the randomly selected F θ The number of θ_i is the i-th F θ , is the i-th reference pose mapping set, The reference pose mapping set includes the left and right arm forces in the xyz axes. A reference template database.

4. The robot rod position perception method according to claim 3, It is characterized in that Initializing the multiple groups of initial pose mapping sets and the multiple groups of optimization populations corresponding to the multiple groups of reference pose mapping sets, and calculating the initial fitness value corresponding to each of the optimization populations, includes: Initialize several optimized populations using the following formula: ; ; ; Among them, P is the optimized population, N is the number of optimized populations, here P k For M i An initial solution for optimization, t is a random number in the interval (-1,1) generated by the random number generator rand (-1,1) and max (M i ), max(M i ) is M i The maximum force value in , without distinguishing between left and right or xyz dimensions; The initial fitness value corresponding to each optimized population is calculated by the following formula: ; ; Among them, V k is the initial solution P k The corresponding initial fitness value, V is the set of initial fitness values, and fitness (*) is the mean square error function.

5. The robot rod position perception method according to claim 4, It is characterized in that The step of selecting the optimal population corresponding to the minimum initial fitness value from the plurality of optimized populations includes: The optimal population corresponding to the minimum initial fitness value is selected from the several optimized populations by the following formula: ; ; Here, V best is the minimum initial fitness value in the initial fitness value set V. Min (*) means to find the minimum value. Here P best is the optimal population.

6. The robot rod position perception method according to claim 5, It is characterized in that The updating of the plurality of optimized populations based on the optimal population to obtain a plurality of corresponding updated populations includes: Based on the optimal population, the several optimized populations are updated by the following formula to obtain the corresponding several updated populations: ; ; ; ; ; ; Among them, P k-new The updated P k , p and q are both random numbers in the interval (0,1), A is a dimension and P k A consistent random number matrix, the values ​​of any dimension of which are random numbers in the interval (-a, a), Indicates A and The dimensions of the formula in the brackets are directly multiplied to get the new value. a is a non-negative constant whose value is determined by the current number of iterations gen. Max_gen is the maximum number of searches. C is a random number in the interval (0,2). It means to find the absolute value of all dimensions of the formula in the brackets, where: The specific calculation formula is as follows: ; A and B are both matrices with i rows and j columns, and both A and B are random sample matrices.

7. The robot rod position perception method according to claim 6, It is characterized in that The performing a secondary update on each of the update populations to obtain the corresponding secondary update populations comprises: Each of the update populations is updated twice using the following formula to obtain the corresponding secondary update populations: ; ; ; Among them, L is a random number in the interval (-1,1), e * is the exponential function, b is the base coefficient of the exponential function, and cos(*) is the cosine calculation.

8. The robot rod position perception method according to claim 7, It is characterized in that The updating of the reference pose mapping set by using the final optimized population includes: Based on the final optimized population, the reference pose mapping set is updated using the following formula: ; Then the final reference template database expression is: ; Here P best For M i After iterative optimization, the solution corresponding to the final optimized population is output.

9. A robot rod position perception device, It is characterized in that An upper limb power-assisted exoskeleton robot applied to a dual-operation terminal, the device comprising: The left and right arm force acquisition module to be measured is used to collect the left and right arm forces to be measured of the robot in real time, and obtain a reference template database that has been iteratively optimized, wherein the reference template database includes multiple groups of reference posture mapping sets, and each of the reference posture mapping sets includes reference posture mappings of different left and right arm forces under a specific rod posture; A reference posture mapping matching calculation module is used to match and calculate the left and right arm forces to be measured with each of the reference posture mapping sets, and determine the reference posture mapping set with the smallest mean square error value as the target posture mapping set; A target rod position and posture determination module, used for taking the specific rod position and posture corresponding to the target position and posture mapping set as the target rod position and posture of the left and right arm forces to be measured; Wherein, the device further comprises: An initial template database construction module is used in step S1: constructing an initial template database, wherein the initial template database includes a plurality of sets of initial posture mapping sets under different working scenarios, and each of the initial posture mapping sets includes initial posture mappings of different left and right arm forces under a specific rod posture; The reference posture mapping set calculation module is used in step S2: for each of the initial posture mapping sets, randomly select a preset number of left and right arm strength data in the initial posture mapping set, and calculate a reference posture mapping set corresponding to the initial posture mapping set based on the preset number of left and right arm strength data, and use the multiple groups of reference posture mapping sets obtained by calculation as a reference template database; An initial fitness value calculation module, used in step S3: initializing the multiple groups of initial pose mapping sets and the multiple groups of reference pose mapping sets corresponding to a number of optimization populations, and calculating the initial fitness value corresponding to each of the optimization populations, and setting the current number of iterations to 1; The optimal population screening module is used in step S4: screening the optimal population corresponding to the minimum initial fitness value from the plurality of optimized populations; A population updating module, used in step S5: for any of the initial pose mapping sets, updating the plurality of optimized populations based on the optimal population to obtain a plurality of corresponding updated populations, and calculating an updated fitness value corresponding to each of the updated populations with reference to the calculation method in step S3; The updating fitness value judgment module is used in step S6: for any of the updating populations, if the updating fitness value of the updating population is greater than the initial fitness value before the update, a random number is generated within a preset interval, and if the random number is a negative number, step S7 is executed before step S8, and if the random number is a non-negative number, step S8 is directly executed; The population secondary updating module is used in step S7: performing secondary updating on each of the updated populations to obtain the corresponding secondary updated populations, and calculating the secondary updated fitness value corresponding to each of the secondary updated populations by referring to the calculation method in step S3; The population comprehensive update module is used in step S8: repeatedly executing steps S5 to S7, comprehensively updating the optimized population and the fitness value corresponding to the optimized population, and after each update, re-screening the optimal population corresponding to the minimum initial fitness value with reference to step S4, and controlling the number of iterations to increase by 1 each time it is updated; The final optimized population determination module is used in step S9: repeatedly executing step S8, if it is detected that the number of iterations is greater than the maximum number of searches, then stopping the iteration, outputting the final optimized population corresponding to the initial pose mapping set, and using the final optimized population to update the reference pose mapping set; The reference pose mapping set updating module is used in step S10: repeating step S9 to update each set of reference pose mapping sets, and using the updated multiple sets of reference pose mapping sets as the final reference template database, wherein each set of reference pose mapping sets represents a direct mapping of a specific rod pose.

10. An electronic device, It is characterized in that The device comprises a processor and a memory: The memory is used to store program codes and transmit the program codes to the processor; The processor is used to execute the robot rod position perception method according to any one of claims 1-8 according to the instructions in the program code.

11. A computer-readable storage medium, It is characterized in that The computer-readable storage medium is used to store program codes, and the program codes are used to execute the robot rod position perception method according to any one of claims 1 to 8.

Citation Information

Patent Citations

  • Mechanical arm, control method of mechanical arm and surgical robot

    CN108145713A

  • Mechanical arm control method, mechanical arm control device, computing equipment and system

    CN113119104A