Mechanical arm admittance control method, electronic equipment and computer readable medium

By generating dynamic admittance control parameters from static calibration data and real-time external forces, the method addresses the inflexibility and instability of existing manipulator control systems, enhancing the versatility and accuracy of robotic arm movements.

CN119159588AActive Publication Date: 2024-12-20SHANGHAI QI ZHI INSTITUTE
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202411598151.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-11
Publication Date
2024-12-20
Estimated Expiration
2044-11-11

AI Technical Summary

Technical Problem

Existing manipulator admittance control methods suffer from low flexibility and versatility due to fixed admittance control parameters, which are not universally applicable across different hardware, leading to instability in robot arm control systems.

Method used

A method involving obtaining initial static calibration data, preprocessing it to generate physical parameter matrices, and using these matrices to dynamically adjust admittance control parameters based on real-time external force information, allowing for adaptive control of robotic arm movements.

Benefits of technology

This approach enhances the flexibility and stability of manipulator movements by enabling variable admittance control parameters that adapt to real-time external forces, improving the versatility and accuracy of robot arm control systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119159588A_ABST
    Figure CN119159588A_ABST
Patent Text Reader

Abstract

The embodiment of the invention discloses a mechanical arm admittance control method, electronic equipment and a computer readable medium. A specific embodiment of the method comprises the following steps: acquiring an initial static calibration data information set; performing data preprocessing on the initial static calibration data information set to obtain a static calibration data information set; based on the static calibration data information group, generating physical parameter matrix information; generating admittance control parameter information based on the static calibration data information group and the physical parameter matrix information; acquiring external force information in real time; in response to determining that the admittance control parameter information and the external force information meet a preset threshold condition, determining the first preset state information as mechanical arm state information; in response to the fact that the admittance control parameter information and the external force information do not meet the preset threshold condition, the second preset state information is determined as mechanical arm state information; and controlling the mechanical arm to move. According to the embodiment, the universality and stability of the mechanical arm control system are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present disclosure relate to the field of computer technology, and in particular to a robot arm admittance control method, an electronic device, and a computer-readable medium. Background Art

[0002] Manipulator admittance control is a control method for controlling the dragging movement of a manipulator. The usual admittance control method is: obtaining the compensation calibration of the force sensor. Setting the admittance control parameters, where the used admittance control parameters are usually fixed. The manipulator movement is controlled by using the set admittance control parameters and the compensation calibration of the force sensor.

[0003] However, when the above method is used to control the admittance of the robot arm, the following technical problems often occur:

[0004] During the admittance control process, the admittance control parameters are fixed, resulting in low flexibility in the movement of the robot arm. Moreover, by only manually adjusting the admittance control parameters, these parameters may no longer be universal between different hardware, resulting in low versatility and stability of the robot arm control system.

[0005] The above information disclosed in this Background section is only for enhancement of understanding of the background of the inventive concept and therefore it may contain information that does not form the prior art that is already known in this country to a person of ordinary skill in the art. Summary of the invention

[0006] The content of this disclosure is used to introduce concepts in a brief form, which will be described in detail in the detailed implementation section below. The content of this disclosure is not intended to identify the key features or essential features of the technical solution claimed for protection, nor is it intended to limit the scope of the technical solution claimed for protection.

[0007] Some embodiments of the present disclosure propose a manipulator admittance control method, an electronic device, and a computer-readable medium for a manipulator to solve one or more of the technical problems mentioned in the above background technology section.

[0008] In a first aspect, some embodiments of the present disclosure provide a method for controlling the admittance of a robotic arm, the method comprising: obtaining an initial static calibration data information group set; performing data preprocessing on the initial static calibration data information group set to obtain a static calibration data information group; generating physical parameter matrix information based on the static calibration data information group; generating admittance control parameter information based on the static calibration data information group and the physical parameter matrix information; obtaining external force information in real time; in response to determining that the admittance control parameter information and the external force information meet a preset threshold condition, determining first preset state information as the robotic arm state information; in response to determining that the admittance control parameter information and the external force information do not meet the preset threshold condition, determining second preset state information as the robotic arm state information; and controlling the movement of the robotic arm based on the determined robotic arm state information, the external force information and the admittance control parameter information.

[0009] In a second aspect, some embodiments of the present disclosure provide an electronic device comprising: a robotic arm; one or more processors; and a storage device on which one or more programs are stored, wherein when the one or more programs are executed by one or more processors, the one or more processors implement the method described in any implementation manner of the above-mentioned first aspect.

[0010] In a fourth aspect, some embodiments of the present disclosure provide a computer-readable medium having a computer program stored thereon, wherein when the program is executed by a processor, the method described in any implementation manner of the above-mentioned first aspect is implemented.

[0011] The above-mentioned embodiments of the present disclosure have the following beneficial effects: through the manipulator admittance control method for a manipulator in some embodiments of the present disclosure, the flexibility of the manipulator movement and the versatility and stability of the manipulator control system are improved. Specifically, the reasons for the low flexibility of the manipulator movement and the low versatility and stability of the manipulator control system are that the admittance control parameters are fixed during the admittance control process, resulting in low flexibility of the manipulator movement, and only by manually adjusting the admittance control parameters, these parameters may no longer be universal between different hardware, thereby making the versatility and stability of the manipulator control system low. Based on this, the manipulator admittance control method for a manipulator in some embodiments of the present disclosure, first, obtains an initial static calibration data information group set. Thus, the initial static calibration data group of the manipulator at each manipulator angle can be obtained. Then, the above initial static calibration data information group set is preprocessed to obtain a static calibration data information group. Thus, the initial static calibration data information group set can be processed to obtain a processed static calibration data information group. Then, based on the above static calibration data information group, physical parameter matrix information is generated. Thus, the physical parameter matrix information of the manipulator can be obtained. Secondly, based on the above-mentioned static calibration data information group and the above-mentioned physical parameter matrix information, the admittance control parameter information is generated. Thus, the admittance control information group for controlling the movement of the robotic arm can be obtained. Then, the external force information is obtained in real time. Thus, the external force information can be obtained in real time for the subsequent admittance control of the robotic arm. Then, in response to determining that the above-mentioned admittance control parameter information and the above-mentioned external force information meet the preset threshold condition, the first preset state information is determined as the robotic arm state information. Thus, the state information of the robotic arm can be determined. Secondly, in response to determining that the above-mentioned admittance control parameter information and the above-mentioned external force information do not meet the above-mentioned preset threshold condition, the second preset state information is determined as the robotic arm state information. Thus, the state information of the robotic arm can be determined. Finally, based on the determined robotic arm state information, the above-mentioned external force information and the above-mentioned admittance control parameter information, the movement of the above-mentioned robotic arm is controlled. Thus, the robotic arm can be controlled to move. Also, because the admittance control parameter information is generated through static calibration data information groups and physical parameter matrix information, the generated admittance control parameter information is variable, so the flexibility of the robot arm movement can be improved. And because the above-mentioned robot arm movement is controlled by external force information and admittance control parameter information obtained in real time, the admittance control parameters will change in real time, thereby improving the versatility and stability of the robot arm control system. BRIEF DESCRIPTION OF THE DRAWINGS

[0012] The above and other features, advantages and aspects of the embodiments of the present disclosure will become more apparent with reference to the following detailed description in conjunction with the accompanying drawings. Throughout the accompanying drawings, the same or similar reference numerals represent the same or similar elements. It should be understood that the drawings are schematic and that components and elements are not necessarily drawn to scale.

[0013] Figure 1 A flowchart of some embodiments of a manipulator admittance control method for a manipulator according to the present disclosure is shown;

[0014] Figure 2 is a schematic diagram of the structure of an electronic device suitable for implementing some embodiments of the present disclosure;

[0015] Figure 3 is a dragging schematic diagram of a target person dragging a mechanical arm according to some embodiments of the present disclosure;

[0016] Figure 4 is a flow chart of admittance control of a mechanical part admittance control method according to some embodiments of the present disclosure. DETAILED DESCRIPTION

[0017] Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although certain embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as being limited to the embodiments set forth herein. On the contrary, these embodiments are provided to provide a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are only for exemplary purposes and are not intended to limit the scope of protection of the present disclosure.

[0018] It should also be noted that, for ease of description, only the parts related to the invention are shown in the drawings. In the absence of conflict, the embodiments and features in the embodiments of the present disclosure can be combined with each other.

[0019] It should be noted that the concepts such as "first" and "second" mentioned in the present disclosure are only used to distinguish different devices, modules or units, and are not used to limit the order or interdependence of the functions performed by these devices, modules or units.

[0020] It should be noted that the modifications of "one" and "plurality" mentioned in the present disclosure are illustrative rather than restrictive, and those skilled in the art should understand that unless otherwise clearly indicated in the context, it should be understood as "one or more".

[0021] The names of the messages or information exchanged between multiple devices in the embodiments of the present disclosure are only used for illustrative purposes and are not used to limit the scope of these messages or information.

[0022] The present disclosure will be described in detail below with reference to the accompanying drawings and in conjunction with embodiments.

[0023] Figure 1 A process 100 of some embodiments of a manipulator admittance control method for a manipulator according to the present disclosure is shown. The manipulator admittance control method for a manipulator comprises the following steps:

[0024] Step 101, obtaining an initial static calibration data information set.

[0025] In some embodiments, the execution subject (e.g., computing device) of the manipulator admittance control method may obtain an initial static calibration data information set. The manipulator may include various joint encoders, one or more force sensors, a manipulator base, various manipulator rods, and a manipulator end effector. The manipulator may refer to Figure 3 . Each initial static calibration data information group in the above-mentioned initial static calibration data information group set may be used to characterize various data information obtained when the robot arm is at different robot arm angles. The above-mentioned robot arm angle may be used to characterize the angle information of each joint when the robot arm end effector and the robot arm base remain in the same position in the sensor coordinate system. Each initial static calibration data information in the above-mentioned initial static calibration data information group may include spatial three-dimensional posture information and force sensor information. The above-mentioned spatial three-dimensional posture information may be digital information used to characterize the three-dimensional spatial posture of each robot arm rod in the sensor coordinate system. The above-mentioned sensor coordinate system may be a coordinate system established based on the robot arm base. The coordinate origin, X-axis, Y-axis, and Z-axis of the above-mentioned sensor coordinate system may be pre-set, and are not limited here. The above-mentioned spatial three-dimensional posture information may be obtained through the various joint encoders of the robot arm. The above-mentioned force sensor information may be digital information obtained by the force sensor included in the robot arm end effector. The above-mentioned execution subject may be a server for managing and scheduling data information related to the robot arm.

[0026] Figure 3 It is a dragging schematic diagram of a target person dragging a robotic arm according to some embodiments of the present disclosure. Among them, the external force information obtained in real time is the external force information generated by the force sensor when the target person drags the end effector of the robotic arm. The robotic arm includes various joint encoders, one or more force sensors, a robotic arm base, and a robotic arm end effector. Among them, each of the above-mentioned joint encoders can be an encoder motor for controlling the rotation of each joint. The one or more force sensors can be sensors for detecting force. The above-mentioned robotic arm base can be a base for fixing the robotic arm. The material of the above-mentioned base can be acrylic or metal. The above-mentioned robotic arm end effector can be an actuator for physically interacting with the environment.

[0027] In some optional implementations of some embodiments, the execution subject may obtain the initial static calibration data information set through the following steps:

[0028] In the first step, for each piece of pre-stored robot arm angle information, the following steps are performed:

[0029] The first sub-step is to control the above-mentioned robot arm to rotate to a corresponding angle based on the above-mentioned robot arm angle information. Among them, each of the above-mentioned robot arm angle information can be a digital signal used to characterize the angle of each joint of the robot arm. The above-mentioned robot arm angle information can include each joint angle information. The above-mentioned joint angle information can be the angle to which each joint needs to rotate. In practice, the above-mentioned execution subject can control each joint of the robot arm to rotate to the angle corresponding to each joint angle information included in the above-mentioned robot arm angle.

[0030] The second sub-step is to obtain the initial static calibration data information group of the above-mentioned mechanical arm. Among them, each initial static calibration data information in the above-mentioned initial static calibration data information group includes spatial three-dimensional posture information and force sensor information. In practice, first, the above-mentioned execution subject can obtain spatial three-dimensional posture information from each joint encoder of the mechanical arm. Then, the above-mentioned execution subject can obtain force sensor information from the force sensor included in the end effector of the mechanical arm. Among them, the above-mentioned force sensor information includes three-dimensional force information and three-dimensional torque information. The above-mentioned three-dimensional force information can be used to characterize the force in the three-dimensional direction obtained by the force sensor. The above-mentioned three-dimensional torque information can be used to characterize the torque in the three-dimensional direction obtained by the force sensor. The above-mentioned three-dimensional direction can be the X-axis direction, the Y-axis direction, and the Z-axis direction in the above-mentioned sensor coordinate system. Then, the above-mentioned execution subject can combine the above-mentioned spatial three-dimensional posture information and the above-mentioned force sensor information into initial static calibration data information. Finally, the above-mentioned execution subject can determine the obtained multiple initial static calibration data information as an initial static calibration data information group.

[0031] In the second step, each of the obtained initial static calibration data information groups is determined as an initial static calibration data information group set.

[0032] Step 102, performing data preprocessing on the initial static calibration data information group set to obtain a static calibration data information group.

[0033] In some embodiments, the execution subject may perform data preprocessing on the initial static calibration data information set to obtain a static calibration data information set, wherein the static calibration data information set may be the initial static calibration data information set after data preprocessing.

[0034] In some optional implementations of some embodiments, the execution subject may perform data preprocessing on the initial static calibration data information group set through the following steps to obtain a static calibration data information group:

[0035] The first step is to generate various static average information based on the above-mentioned initial static calibration data information group set. Among them, each static average information in the above-mentioned various static average information can be the average value of each spatial three-dimensional posture information and each force sensor information included in each initial static calibration data information group in the above-mentioned initial static calibration data information group set. Each static average information in the above-mentioned various static average information includes average spatial three-dimensional posture information and average force sensor information. The above-mentioned average spatial three-dimensional posture information can be the average value of each spatial three-dimensional posture information included in the above-mentioned initial static calibration data information group. The above-mentioned average force sensor information can be the average value of each force sensor information included in the above-mentioned initial static calibration data information group. The above-mentioned average force sensor information includes average three-dimensional force information and average three-dimensional torque information. In practice, first, the above-mentioned execution subject can perform the following steps for each initial static calibration data information group in the above-mentioned initial static calibration data information group set: determine the spatial three-dimensional posture information included in each initial static calibration data information in the above-mentioned initial static calibration data information group as the spatial three-dimensional posture information to be averaged, and obtain each spatial three-dimensional posture information to be averaged. Then, the execution subject may determine the average value of each of the above-mentioned three-dimensional posture information to be averaged as the average three-dimensional posture information in space. Then, the execution subject may determine the force sensor information included in each of the initial static calibration data information in the initial static calibration data information group as the force sensor information to be averaged, and obtain each of the force sensor information to be averaged. Secondly, the execution subject may determine the average value of each of the force sensor information to be averaged as the average force sensor information. Finally, the execution subject may combine the average three-dimensional posture information in space and the average force sensor information into static average value information.

[0036] The second step is to generate various static standard deviation information based on the above-mentioned initial static calibration data information group set, wherein each static standard deviation information in the above-mentioned various static standard deviation information can be the standard deviation of each spatial three-dimensional posture information and each force sensor information included in each initial static calibration data information group in the above-mentioned initial static calibration data information group set. Each static standard deviation information in the above-mentioned various static standard deviation information includes spatial three-dimensional posture standard deviation information and force sensor standard deviation information. The above-mentioned spatial three-dimensional posture standard deviation information can be the standard deviation of each spatial three-dimensional posture information included in the above-mentioned initial static calibration data information group. The above-mentioned force sensor standard deviation information can be the standard deviation of each force sensor information included in the above-mentioned initial static calibration data information group. The generation method of the above-mentioned spatial three-dimensional posture standard deviation information and the above-mentioned force sensor standard deviation information can refer to the generation method of the above-mentioned average spatial three-dimensional posture information and the above-mentioned average force sensor information.

[0037] The third step is to integrate and process the above-mentioned static average value information and the above-mentioned static standard deviation information to obtain a static calibration data information group. Among them, each static calibration data information in the above-mentioned static calibration data information group includes static average value information and static standard deviation information. In practice, first, the above-mentioned execution subject can combine the static average value information and static standard deviation information generated by the same initial static calibration data information group into static calibration data information. Then, the above-mentioned execution subject can determine each static calibration data information as a static calibration data information group.

[0038] Step 103: Generate physical parameter matrix information based on the static calibration data information group.

[0039] In some embodiments, the execution subject may generate physical parameter matrix information based on the static calibration data information group. The physical parameter matrix information may be a matrix for characterizing various physical property parameters of the robotic arm. The various physical property parameters of the robotic arm may include, but are not limited to, parameters characterizing three-dimensional force bias, parameters characterizing three-dimensional torque bias, parameters characterizing gravity, and parameters characterizing gravity components. As an example: when the parameters characterizing three-dimensional force bias are "(Fx0, Fy0, Fz0)", the parameters characterizing three-dimensional torque bias are "(Mx0, My0, Mz0)", the parameters characterizing gravity are "mg_z", and the parameters characterizing gravity components are "(mg_z·r_x, mg_z·r_y, mg_z·r_z)", the physical parameter matrix information may be the transpose of [Fx0, Fy0, Fz0, Mx0, My0, Mz0, mg_z, mg_z·r_x, mg_z·r_y, mg_z·r_z]. The above physical parameter matrix information may be a 10*1 matrix.

[0040] In some optional implementations of some embodiments, the execution subject may generate physical parameter matrix information based on the static calibration data information group through the following steps:

[0041] In the first step, for each static calibration data information in the static calibration data information group, the following steps are performed:

[0042] The first sub-step is to generate an initial force matrix based on the average force sensor information included in the above-mentioned static calibration data information. The above-mentioned initial force matrix can be a matrix composed of the average force sensing information included in the above-mentioned static calibration data information. The above-mentioned initial force matrix can be a 6*1 matrix. In practice, the above-mentioned execution entity can combine the average three-dimensional force information and the average three-dimensional torque information included in the above-mentioned average force sensor information into an initial force matrix. As an example: when the above-mentioned average force sensor information is "(Fx, Fy, Fz), (Mx, My, Mz)", the combined initial force matrix can be the transpose of [Fx, Fy, Fz, Mx, My, Mz].

[0043] The second sub-step is to obtain the angle rotation matrix of the robot arm angle corresponding to the static calibration data information. The angle rotation matrix can be the rotation matrix of the robot arm end effector in the world coordinate system. In practice, the execution subject can obtain the angle rotation matrix of the robot arm angle corresponding to the static calibration data information from a database. The database can be a database for storing robot arm related data.

[0044] The third sub-step is to generate a rotation parameter matrix based on the angle rotation matrix. The rotation parameter matrix may be a processed angle rotation matrix. The rotation parameter matrix may be a 6*10 matrix. In practice, the execution subject may input the angle rotation matrix into the first preset formula to obtain the rotation parameter matrix. The angle rotation matrix may be R i is the i-th angle rotation matrix. 11i is the parameter of the first row and first column in the i-th angle rotation matrix. 13i is the parameter of the 1st row and 3rd column in the i-th angle rotation matrix. The other parameters are deduced in the same way. The above first preset formula can be X i is the i-th rotation parameter matrix. 31i The parameter of the 3rd row and 1st column in the i-th angle rotation matrix. 32i It is the negative number of the parameter in the 3rd row and 2nd column of the i-th angle rotation matrix. The other parameters are deduced in the same way.

[0045] The second step is to generate physical parameter matrix information based on the generated initial force matrices and the generated rotation parameter matrices. The physical parameter matrix information may include force sensor bias information, gravity parameter information and gravity component information. The physical parameter matrix information may be a 10*1 matrix. The force sensor bias information may be the zero drift of the force sensor when the mass of the end effector is 0. The gravity parameter information may be the gravity of the end effector of the robotic arm. The gravity component information may be the torque of gravity in the direction of each sensor executed by the end of the robotic arm. In practice, first, the execution subject may combine the rotation parameter matrices into a rotation parameter matrix group. Then, the execution subject may combine the initial force matrices into an initial force matrix group. Then, the execution subject may input the rotation parameter matrix group and the initial force matrix group into a second preset formula to obtain the physical parameter matrix information. The second preset formula may be θ=(A T A) -1 A T B. Among them, θ is the physical parameter matrix information. A is the rotation parameter matrix group. A T is the transpose of the rotation parameter matrix group. (A T A) -1 is the inverse of the matrix. B is the initial force matrix group information. As an example: when the above-mentioned rotation parameter matrices are 6*10 matrices and the above-mentioned initial force matrices are 6*1 matrices, there are n rotation parameter matrices and n initial force matrices. Then the combined rotation parameter matrix group is a 6n*10 matrix. The combined initial force matrix group information is a 6n*1 matrix. Therefore, after calculation by the second preset formula, a 10*1 physical parameter matrix information is obtained.

[0046] Step 104: Generate admittance control parameter information based on the static calibration data information group and the physical parameter matrix information.

[0047] In some embodiments, the execution subject may generate admittance control parameter information based on the static calibration data information group and the physical parameter matrix information, wherein the admittance control parameter information may be relevant parameter information for admittance control of the manipulator.

[0048] In the process of adopting technical solutions to solve the above technical problems, the following problems are often accompanied:

[0049] The calibration process and the admittance control process are two different robot arm states. The admittance control parameters in the admittance control process are independent of the parameters obtained in the calibration process, resulting in low accuracy and versatility in robot arm control.

[0050] Faced with the above technical problems, we decided to adopt the following solutions:

[0051] In some optional implementations of some embodiments, the execution subject may generate the admittance control parameter information based on the static calibration data information group and the physical parameter matrix information through the following steps:

[0052] The first step is to generate a force matrix information group based on the above-mentioned physical parameter matrix information and the above-mentioned static calibration data information group. Each force matrix information in the above-mentioned force matrix information group can be a simulation data information used to characterize the force sensor. In practice, first, the above-mentioned execution subject can perform the following steps on each static calibration data information in the above-mentioned static calibration data information group: input the physical property matrix information corresponding to the above-mentioned static calibration data information and the above-mentioned physical parameter matrix information into the third preset formula to obtain each force matrix information. Then, the above-mentioned execution subject can determine the above-mentioned each force matrix information as a force matrix information group. Among them, the above-mentioned third preset formula can be D′=C·θ. D′ is a force matrix information. C is the physical property matrix information corresponding to a static calibration data information. θ is the physical parameter matrix information.

[0053] The second step is to generate a force deviation information group based on the force matrix information group and the static calibration data information group. Each force deviation information in the force deviation information group can be a difference between an initial force matrix corresponding to the static calibration data information and a force matrix information corresponding to the static calibration data information. In practice, first, the execution subject can perform the following steps for each static calibration data information in the static calibration data information group: the execution subject can determine the difference between the force matrix information corresponding to the static calibration data information and the initial force matrix corresponding to the static calibration data information as force deviation information. Then, the execution subject can determine each force deviation information as a force deviation information group.

[0054] The third step is to generate a drag state switching information group based on the force deviation information group. Among them, each drag state switching information in the drag state switching information group can be a threshold information for characterizing the switching between the drag state and the static state of the robotic arm in a predetermined direction. The predetermined direction can be the X-axis direction, the Y-axis direction or the Z-axis direction in the sensor coordinate system. In practice, the execution subject can determine the force deviation with the largest absolute value corresponding to the X-axis direction of each force deviation information in the force deviation information group as the X-axis maximum force deviation. The execution subject can determine the force deviation with the largest absolute value corresponding to the Y-axis direction of each force deviation information in the force deviation information group as the Y-axis maximum force deviation. The execution subject can determine the force deviation with the largest absolute value corresponding to the Z-axis direction of each force deviation information in the force deviation information group as the Z-axis maximum force deviation. Then, the execution subject can determine the torque deviation with the largest absolute value corresponding to the X-axis direction of each force deviation information in the force deviation information group as the X-axis maximum torque deviation. The above-mentioned execution entity may determine the torque deviation with the largest absolute value corresponding to the Y-axis direction of each force deviation information in the above-mentioned force deviation information group as the Y-axis maximum torque deviation. The above-mentioned execution entity may determine the torque deviation with the largest absolute value corresponding to the Z-axis direction of each force deviation information in the above-mentioned force deviation information group as the Z-axis maximum torque deviation. Then, the above-mentioned execution entity may combine the above-mentioned X-axis maximum force deviation, Y-axis maximum force deviation, Z-axis maximum force deviation, X-axis maximum torque deviation, Y-axis maximum torque deviation and Z-axis maximum torque deviation into maximum deviation information. Secondly, the above-mentioned execution entity may input each information in the above-mentioned maximum deviation information into the fourth preset formula to obtain the drag state switching information corresponding to each information. Among them, the above-mentioned fourth preset formula may be Fe θ = p·Fe max .Fe θ Corresponding to Fe max The drag state switching information. p is a preset conservative coefficient. Here, the specific value of the above conservative coefficient is not limited. max It is any one of the above-mentioned X-axis maximum force deviation, Y-axis maximum force deviation, Z-axis maximum force deviation, X-axis maximum moment deviation, Y-axis maximum moment deviation and Z-axis maximum moment deviation.

[0055] The fourth step is to determine the static average value information included in each static calibration data information in the above static calibration data information group as each piece of average value information to be processed.

[0056] In the fifth step, the average force sensor information included in each of the above-mentioned average value information to be processed is determined as each initial force sensor information.

[0057] The sixth step is to generate the terminal mass parameter information based on the above-mentioned initial force sensor information and the above-mentioned physical parameter matrix information. The above-mentioned terminal mass parameter information can be the simulated mass information used to characterize the end effector of the robotic arm. In practice, the above-mentioned execution subject can input the initial force sensor information and the above-mentioned physical parameter matrix information into the robotic arm simulation analysis software to obtain the terminal mass parameter information. The above-mentioned robotic arm simulation analysis software can be Deneb, MATLAB / Simulink, ADAMS. In practice, the above-mentioned execution subject can determine the quotient of the gravity parameter information included in the above-mentioned physical parameter matrix information and the gravity acceleration as the terminal mass parameter information.

[0058] Step 7: Generate maximum damping information based on the terminal quality parameter information. The maximum damping information may be parameter information used to characterize the maximum damping. In practice, the execution subject may input the terminal quality parameter information into the fifth preset formula to obtain the maximum damping information. The fifth preset formula may be D max is the maximum damping information. max is the preset maximum damping value when M is 1 kg, and the preset maximum damping value can be a preset value, which is not limited here. M is the terminal mass parameter information.

[0059] Step 8: Generate minimum damping information based on the terminal quality parameter information. The maximum damping information may be parameter information for characterizing the minimum damping. In practice, the execution subject may input the terminal quality parameter information into the sixth preset formula to obtain the minimum damping information. The sixth preset formula may be D min is the minimum damping information. Ds min is the preset minimum damping value when M is 1 kg, and the preset minimum damping value can be a preset value, which is not limited here. M is the terminal mass parameter information.

[0060] The ninth step is to integrate the force matrix information group, the force deviation information group, the drag state switching information group, the terminal mass parameter information, the maximum damping information and the minimum damping information to obtain the admittance control parameter information. The admittance control parameter information may be parameter information for performing admittance control on the robot arm. In practice, the execution entity may combine the force matrix information group, the force deviation information group, the drag state switching information group, the terminal mass parameter information, the maximum damping information and the minimum damping information into the admittance control parameter information.

[0061] The above technical solution and its related contents, as an inventive point of the embodiment of the present disclosure, solve the problem that "the calibration process and the admittance control process are two different robot arm states, and the admittance control parameters in the admittance control process are irrelevant to the parameters obtained in the calibration process, resulting in low accuracy and versatility in robot arm control". The factors that lead to low accuracy and versatility in robot arm control are often as follows: the original calibration process is not related to some parameters in the admittance control process, and the control process is only controlled by manually adjusted admittance control parameters, resulting in low accuracy and versatility in robot arm control. If the above factors are solved, the accuracy and versatility in robot arm control can be improved. In order to achieve this effect, the present disclosure first generates a force matrix information group based on the above physical parameter matrix information and the above static calibration data information group. Thus, the force matrix information group corresponding to the static calibration data information group can be obtained. Then, based on the above force matrix information group and the above static calibration data information group, a force deviation information group is generated. Thus, the difference between the force matrix information group and the static calibration data information group can be obtained. Then, based on the above force deviation information group, a drag state switching information group is generated. Thus, the threshold information when the robot arm switches state can be obtained. Secondly, the static average value information included in each static calibration data information in the above-mentioned static calibration data information group is determined as each average value information to be processed. Thus, each average value information to be processed can be obtained. Then, the average force sensor information included in each average value information to be processed in the above-mentioned average value information to be processed is determined as each initial force sensor information. Thus, each initial force sensor information can be obtained. Then, based on the above-mentioned initial force sensor information and the above-mentioned physical parameter matrix information, the end mass parameter information is generated. Thus, the mass information of the end effector can be obtained. Secondly, based on the above-mentioned end mass parameter information, the maximum damping information is generated. Thus, the maximum damping information of the robot arm can be obtained. Then, based on the above-mentioned end mass parameter information, the minimum damping information is generated. Thus, the minimum damping information of the robot arm can be obtained. Finally, the above-mentioned force matrix information group, the above-mentioned force deviation information group, the above-mentioned drag state switching information group, the above-mentioned end mass parameter information, the above-mentioned maximum damping information and the above-mentioned minimum damping information are integrated and processed to obtain the admittance control parameter information. Thus, the admittance control parameter information can be obtained. Also, because the admittance control parameter information is generated by the information in the static calibration data information group obtained in the calibration process, the parameters obtained in the calibration process are associated with the admittance control parameters. Also, because the manipulator is controlled by the associated admittance control parameter information, the accuracy and versatility of the manipulator control can be improved.

[0062] Step 105: Acquire external force information in real time.

[0063] In some embodiments, the execution subject can obtain external force information in real time. The external force information can be digital information obtained by a force sensor included in the end effector of the robot arm. The external force information includes three-dimensional external force information and three-dimensional external torque information. In practice, the execution subject can obtain external force information in real time through the force sensor of the robot arm.

[0064] Step 106: In response to determining that the admittance control parameter information and the external force information meet a preset threshold condition, determine the first preset state information as the robot arm state information.

[0065] In some embodiments, the execution subject may determine the first preset state information as the robot state information in response to determining that the admittance control parameter information and the external force information meet a preset threshold condition. The preset threshold condition may be that the three-dimensional external force information and the three-dimensional external torque information included in the external force information are both less than the drag state switching information of the corresponding element in the drag state switching information group included in the admittance control parameter information. The first preset state information may be text information used to characterize the motion state of the robot. The first preset state information may be "robot stationary state". The robot state information may be text information used to characterize the motion state of the robot.

[0066] Step 107: in response to determining that the admittance control parameter information and the external force information do not satisfy the preset threshold condition, determine the second preset state information as the robot arm state information.

[0067] In some embodiments, the execution subject may determine the second preset state information as the robot state information in response to determining that the admittance control parameter information and the external force information do not meet the preset threshold condition. The second preset state information may be text information used to characterize the motion state of the robot. The second preset state information may be "robot dragging state".

[0068] Step 108 , controlling the movement of the robotic arm based on the determined robotic arm state information, external force information, and admittance control parameter information.

[0069] In some embodiments, the execution entity may control the movement of the robotic arm based on the determined robotic arm state information, external force information, and the admittance control parameter information.

[0070] In some optional implementations of some embodiments, the execution subject may control the movement of the robotic arm based on the determined robotic arm state information, the external force information, and the admittance control parameter information through the following steps:

[0071] In the first step, in response to determining that the above-mentioned robot arm state information meets the preset dragging condition, the following steps are performed:

[0072] The first sub-step is to generate the first damping parameter information based on the external force information and the admittance control parameter information. The preset dragging condition may be that the robot state information is "robot dragging state". The first damping parameter information may be a damping parameter for real-time movement of the robot. In practice, the execution subject may input the drag state switching information group, the maximum damping information and the minimum damping information included in the external force information and the admittance control parameter information into the seventh preset formula to obtain the first damping parameter information. The seventh preset formula may be d(F ext ) is F ext The first damping parameter information. min is the minimum damping parameter information. max is the maximum damping parameter information. min() is the minimum function. F ext is the external force information. max The maximum force information of the robot arm is preset, and the preset maximum force information of the robot arm can be pre-set, which is not limited here. θ Each drag state switching information in the drag state switching information group.

[0073] The second sub-step is to generate the first acceleration information based on the external force information and the first damping parameter information. The first acceleration information may be a Cartesian acceleration used to characterize the movement of the end effector of the robot arm. In practice, the execution subject may input the external force information, the end mass parameter information included in the admittance control parameter information, the first damping parameter information and the previous robot arm cycle speed information into the eighth preset formula to obtain the first acceleration information. The robot arm cycle may be a time period used to characterize the control frequency of the robot arm. The specific value of the robot arm cycle may be pre-set and is not limited here. The speed information may be a Cartesian speed used to characterize the movement of the end effector of the robot arm. The eighth preset formula may be F ext =Mx″+D(F ext )x′. F ext is the external force information. M is the terminal mass parameter information. x″ is the first acceleration information. D(F ext ) is the external force information F ext The first damping parameter information at time . X' is the speed information.

[0074] The third sub-step is to generate first velocity information based on the first acceleration information. The first velocity information may be a Cartesian velocity used to characterize the movement of the end effector of the robot arm. In practice, the execution subject may integrate the first acceleration information according to a robot arm cycle to obtain the first velocity information.

[0075] The fourth sub-step is to generate the expected speed of each first joint based on the first speed information. The expected speed of each first joint can be the speed of the encoder for characterizing each joint of the robotic arm. In practice, the execution subject can input the first speed information into the robotic arm simulation analysis software to obtain the expected speed of each first joint.

[0076] The fifth sub-step is to control the movement of the robotic arm based on the desired speeds of the first joints. In practice, the execution subject can control the joints of the robotic arm to reach the desired speeds of the first joints and thus control the movement of the robotic arm. Figure 3 The above process of controlling the movement of the robot arm can be referred to Figure 4 Admittance control flow chart.

[0077] Figure 3 It is a dragging schematic diagram of a target person dragging a robotic arm according to some embodiments of the present disclosure. Among them, the external force information obtained in real time is the external force information generated by the force sensor when the target person drags the end effector of the robotic arm. The robotic arm includes various joint encoders, one or more force sensors, a robotic arm base, and a robotic arm end effector. Among them, each of the above-mentioned joint encoders can be an encoder motor for controlling the rotation of each joint. The one or more force sensors can be sensors for detecting force. The above-mentioned robotic arm base can be a base for fixing the robotic arm. The material of the above-mentioned base can be acrylic or metal. The above-mentioned robotic arm end effector can be an actuator for physically interacting with the environment.

[0078] Figure 4 The following is a flow chart of the admittance control of the mechanical part admittance control method according to some embodiments of the present disclosure. The following is a control flow chart between the static calibration of the mechanical arm and the admittance control. The static calibration system in the calibration process can be a system for obtaining an initial static calibration data information set. The above-mentioned static calibration system corresponds to Figure 4 The control parameters generated by the static calibration system can be sent to the admittance controller. The control parameters can be values ​​used for control by the admittance controller. The compensation parameters generated by the static calibration system can be sent to the terminal compensation system. The compensation parameters can be values ​​used for the terminal compensation system. The terminal compensation system corresponds to Figure 4 The target person in the control process can drag the robot arm to generate external force, and dragging the robot arm will also cause the position of the robot arm end to change, which will be fed back to the target person. The above target person corresponds to Figure 4The "human" in the text. The above-mentioned robotic arm can apply external force to the force sensor in real time, and then the above-mentioned force sensor can generate an external force reading. The above-mentioned external force reading can be a numerical value obtained in the force sensor for characterizing the external force. The above-mentioned force sensor can send the generated external force reading to the end compensation system. The above-mentioned robotic arm can send the real-time speed information of the robotic arm to the admittance controller. The above-mentioned end compensation system can receive the external force reading sent by the force sensor and the compensation parameters generated by the static calibration system to generate a compensated external force. The above-mentioned compensated external force can be a numerical value generated after the external force reading passes through the end compensation system for characterizing the external force reading. Then the above-mentioned end compensation system can send the above-mentioned compensated external force to the parameter adaptive system and the admittance controller. The above-mentioned parameter adaptive system corresponds to Figure 4 "Parameter Adaptation" in. The above-mentioned parameter adaptive system can receive the above-mentioned compensated external force and generate state information and damping information. The above-mentioned state information can be information used to characterize the state of the robot arm. The above-mentioned damping information can be a numerical value used to characterize the damping of the robot arm. The above-mentioned parameter adaptive system can send the state information and damping information to the admittance controller. The above-mentioned admittance controller can receive the control parameters sent by the above-mentioned static calibration system, the real-time speed information sent by the above-mentioned robot arm, the compensated external force sent by the above-mentioned end compensation system, and the state information and damping information sent by the above-mentioned parameter adaptive system to generate the expected speed information. The above-mentioned expected speed information can be a numerical value used to characterize the expected speed. Then the above-mentioned admittance controller can send the above-mentioned expected speed information to the speed control loop. The above-mentioned speed control loop can receive the above-mentioned expected speed information and generate a control instruction. Then the above-mentioned control instruction can control the movement of the robot arm.

[0079] In the process of adopting technical solutions to solve the above technical problems, the following problems are often accompanied:

[0080] During the admittance control process, after the robot arm enters a stationary state, it is still continuously controlled by the encoders of each joint of the robot arm to maintain the stationary state of the robot arm, resulting in a large power consumption of each joint encoder when the robot arm remains in a stationary state.

[0081] Faced with the above technical problems, we decided to adopt the following solutions:

[0082] In some optional implementations of some embodiments, the execution subject may control the movement of the robotic arm based on the determined robotic arm state information, the external force information, and the admittance control parameter information through the following steps:

[0083] In the first step, in response to determining that the above-mentioned robot arm state information meets the preset static condition, the following steps are performed:

[0084] The first sub-step is to determine the preset external force information as the external force information. The preset static condition may be that the robot state information is "robot static state". The preset external force information may be pre-set external force information. The specific value of the preset external force information may be pre-set, which is not limited here. The preset external force information may be "0".

[0085] The second sub-step is to generate second damping parameter information based on the external force information and the admittance control parameter information. The second damping parameter information may be a damping parameter for real-time motion of the robot arm. The method for generating the second damping parameter information may refer to the specific implementation method for generating the first damping parameter information, which will not be described in detail here.

[0086] The third sub-step is to generate second acceleration information based on the external force information and the second damping parameter information. The second acceleration information may be a Cartesian acceleration used to characterize the movement of the end effector of the manipulator. The method for generating the second acceleration information may refer to the specific implementation method for generating the first acceleration information, which will not be described in detail here.

[0087] The fourth sub-step is to generate second velocity information based on the second acceleration information. The second velocity information may be a Cartesian velocity used to characterize the movement of the end effector of the robot arm. In practice, the execution subject may integrate the second acceleration information according to a robot arm cycle to obtain the second velocity information.

[0088] The fifth sub-step is to generate the expected speed of each second joint based on the second speed information. The expected speed of each second joint can be the speed of the encoder for characterizing each joint of the robotic arm. In practice, the execution subject can input the second speed information into the robotic arm simulation analysis software to obtain the expected speed of each second joint.

[0089] The sixth sub-step is to control the robot arm to stop moving based on the expected speeds of the above-mentioned second joints. In practice, first, the execution subject can control the joints of the robot arm to reach the expected speeds of the second joints and then control the robot arm to stop moving. Then, in response to the robot arm stopping moving to meet the preset stop time condition, the auxiliary static device is controlled to keep the robot arm still. Among them, the preset stop time condition can be that the time when the robot arm stops moving is greater than the preset stop time. The preset stop time can be a time preset by the target person. For example, the preset stop time can be "1 minute". The auxiliary static device can be a physical device for assisting the robot arm to be still. The auxiliary static device can be a locking structure that locks the movement of each joint encoder.

[0090] The above technical solution and its related contents, as an inventive point of an embodiment of the present disclosure, solve the problem that "in the process of admittance control, after the robot arm enters the static state, it is still continuously controlled by each joint encoder of the robot arm to maintain the static state of the robot arm, resulting in a large power consumption of each joint encoder when the robot arm is in a static state". The factors that lead to the large power consumption of each joint encoder when the robot arm is in a static state are often as follows: each joint encoder still needs to continue to work when the robot arm is in a static state. If the above factors are solved, the power consumption of each joint encoder when the robot arm is in a static state can be reduced. In order to achieve this effect, the present disclosure first, in response to determining that the above robot arm state information meets the preset static condition, performs the following steps: determining the preset external force information as the external force information. Thus, the preset external force information can be used as the external force information. Then, based on the above external force information and the above admittance control parameter information, the second damping parameter information is generated. Then, based on the above external force information and the above second damping parameter information, the second acceleration information is generated. Secondly, based on the above second acceleration information, the second velocity information is generated. Then, based on the above second velocity information, the expected velocity of each second joint is generated. Thus, the desired speeds of each second joint for controlling the robot arm to stop moving can be generated by the external force information determined by the preset external force information. Finally, based on the above-mentioned desired speeds of each second joint, the above-mentioned robot arm is controlled to stop moving. Thus, the robot arm can be controlled to stop moving. Also, because the desired speeds of each second joint are generated by the preset external force information, the robot arm can be stopped. Also, because the auxiliary static device is used when controlling the robot arm to stop moving, the power consumption required for the encoders of each joint of the robot arm to maintain operation is reduced, so the power consumption of each joint encoder when the robot arm remains in a static state can be reduced.

[0091] The above-mentioned embodiments of the present disclosure have the following beneficial effects: through the manipulator admittance control method for a manipulator in some embodiments of the present disclosure, the flexibility of the manipulator movement and the versatility and stability of the manipulator control system are improved. Specifically, the reasons for the low flexibility of the manipulator movement and the low versatility and stability of the manipulator control system are that the admittance control parameters are fixed during the admittance control process, resulting in low flexibility of the manipulator movement, and only by manually adjusting the admittance control parameters, these parameters may no longer be universal between different hardware, thereby making the versatility and stability of the manipulator control system low. Based on this, the manipulator admittance control method for a manipulator in some embodiments of the present disclosure, first, obtains an initial static calibration data information group set. Thus, the initial static calibration data group of the manipulator at each manipulator angle can be obtained. Then, the above initial static calibration data information group set is preprocessed to obtain a static calibration data information group. Thus, the initial static calibration data information group set can be processed to obtain a processed static calibration data information group. Then, based on the above static calibration data information group, physical parameter matrix information is generated. Thus, the physical parameter matrix information of the manipulator can be obtained. Secondly, based on the above-mentioned static calibration data information group and the above-mentioned physical parameter matrix information, the admittance control parameter information is generated. Thus, the admittance control information group for controlling the movement of the robotic arm can be obtained. Then, the external force information is obtained in real time. Thus, the external force information can be obtained in real time for the subsequent admittance control of the robotic arm. Then, in response to determining that the above-mentioned admittance control parameter information and the above-mentioned external force information meet the preset threshold condition, the first preset state information is determined as the robotic arm state information. Thus, the state information of the robotic arm can be determined. Secondly, in response to determining that the above-mentioned admittance control parameter information and the above-mentioned external force information do not meet the above-mentioned preset threshold condition, the second preset state information is determined as the robotic arm state information. Thus, the state information of the robotic arm can be determined. Finally, based on the determined robotic arm state information, the above-mentioned external force information and the above-mentioned admittance control parameter information, the movement of the above-mentioned robotic arm is controlled. Thus, the robotic arm can be controlled to move. Also, because the admittance control parameter information is generated through static calibration data information groups and physical parameter matrix information, the generated admittance control parameter information is variable, so the flexibility of the robot arm movement can be improved. And because the above-mentioned robot arm movement is controlled by external force information and admittance control parameter information obtained in real time, the admittance control parameters will change in real time, thereby improving the versatility and stability of the robot arm control system.

[0092] Reference below Figure 2 , which shows a structural schematic diagram of an electronic device 200 suitable for implementing some embodiments of the present disclosure. Figure 2 The electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.

[0093] like Figure 2 As shown, the electronic device 200 may include a processing device (e.g., a central processing unit, a graphics processing unit, etc.) 201, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 202 or a program loaded from a storage device 208 to a random access memory (RAM) 203. In the RAM 203, various programs and data required for the operation of the electronic device 200 are also stored. The processing device 201, the ROM 202, and the RAM 203 are connected to each other via a bus 204. An input / output (I / O) interface 205 is also connected to the bus 204.

[0094] Typically, the following devices may be connected to the I / O interface 205: an input device 206 including, for example, a touch screen, a touch pad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output device 207 including, for example, a mechanical arm, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a storage device 208 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 209. The communication device 209 may allow the electronic device 200 to communicate with other devices wirelessly or by wire to exchange data. Although Figure 2 The electronic device 200 is shown with various devices, but it should be understood that it is not required to implement or possess all the devices shown. More or fewer devices may be implemented or possessed instead. Figure 2 Each block shown in the figure may represent one device, or may represent multiple devices as required.

[0095] In particular, according to some embodiments of the present disclosure, the process described above with reference to the flowchart can be implemented as a computer software program. For example, some embodiments of the present disclosure include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program contains program code for executing the method shown in the flowchart. In some such embodiments, the computer program can be downloaded and installed from the network through the communication device 209, or installed from the storage device 208, or installed from the ROM 202. When the computer program is executed by the processing device 201, the above-mentioned functions defined in the method of some embodiments of the present disclosure are executed.

[0096] It should be noted that the computer-readable medium recorded in some embodiments of the present disclosure may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In some embodiments of the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, device or device. In some embodiments of the present disclosure, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, which carries a computer-readable program code. This propagated data signal may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. The computer readable signal medium may also be any computer readable medium other than a computer readable storage medium, which may send, propagate or transmit a program for use by or in conjunction with an instruction execution system, apparatus or device. The program code contained on the computer readable medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (radio frequency), etc., or any suitable combination of the above.

[0097] In some embodiments, the client and the server may communicate using any currently known or future developed network protocol such as HTTP (HyperText Transfer Protocol), and may be interconnected with any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), an internet (e.g., the Internet), and a peer-to-peer network (e.g., an ad hoc peer-to-peer network), as well as any currently known or future developed network.

[0098] The computer-readable medium may be included in the electronic device; or it may exist independently without being assembled into the electronic device. The computer-readable medium carries one or more programs. When the one or more programs are executed by the electronic device, the electronic device: obtains an initial static calibration data information group set; performs data preprocessing on the initial static calibration data information group set to obtain a static calibration data information group; generates physical parameter matrix information based on the static calibration data information group; generates admittance control parameter information based on the static calibration data information group and the physical parameter matrix information; obtains external force information in real time; in response to determining that the admittance control parameter information and the external force information meet a preset threshold condition, determines the first preset state information as the manipulator state information; in response to determining that the admittance control parameter information and the external force information do not meet the preset threshold condition, determines the second preset state information as the manipulator state information; and controls the movement of the manipulator based on the determined manipulator state information, the external force information and the admittance control parameter information.

[0099] Computer program code for performing the operations of some embodiments of the present disclosure may be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, C++, and conventional procedural programming languages ​​such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0100] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present disclosure. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some implementations as replacements, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0101] The functions described above herein may be performed at least in part by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), complex programmable logic devices (CPLDs), and the like.

[0102] The above descriptions are only some preferred embodiments of the present disclosure and an explanation of the technical principles used. Those skilled in the art should understand that the scope of the invention involved in the embodiments of the present disclosure is not limited to the technical solutions formed by a specific combination of the above-mentioned technical features, but should also cover other technical solutions formed by any combination of the above-mentioned technical features or their equivalent features without departing from the above-mentioned inventive concept. For example, the above-mentioned features are replaced with the technical features with similar functions disclosed in the embodiments of the present disclosure (but not limited to) and the technical solutions formed.

Claims

1. A method for controlling the admittance of a robot arm, comprising: Obtaining an initial static calibration data information set; Performing data preprocessing on the initial static calibration data information group set to obtain a static calibration data information group; Based on the static calibration data information group, generating physical parameter matrix information; Generate admittance control parameter information based on the static calibration data information group and the physical parameter matrix information; Obtain external force information in real time; In response to determining that the admittance control parameter information and the external force information meet a preset threshold condition, determining the first preset state information as the robot arm state information; In response to determining that the admittance control parameter information and the external force information do not satisfy the preset threshold condition, determining the second preset state information as the robot arm state information; The movement of the robotic arm is controlled based on the determined robotic arm state information, the external force information and the admittance control parameter information.

2. The method according to claim 1, wherein: The step of obtaining an initial static calibration data information set includes: For each piece of pre-stored robot arm angle information, perform the following steps: Based on the angle information of the robotic arm, controlling the robotic arm to rotate to a corresponding angle; Acquire an initial static calibration data information group of the robotic arm, wherein each initial static calibration data information in the initial static calibration data information group includes spatial three-dimensional posture information and force sensor information; The obtained initial static calibration data information groups are determined as an initial static calibration data information group set.

3. The method according to claim 1, wherein: The data preprocessing of the initial static calibration data information group set to obtain the static calibration data information group includes: Based on the initial static calibration data information set, generating each static average value information, wherein each static average value information in the each static average value information includes average spatial three-dimensional posture information and average force sensor information; Based on the initial static calibration data information set, generating each static standard deviation information, wherein each static standard deviation information in the each static standard deviation information includes spatial three-dimensional posture standard deviation information and force sensor standard deviation information; The various static average value information and the various static standard deviation information are integrated and processed to obtain a static calibration data information group, wherein each static calibration data information in the static calibration data information group includes static average value information and static standard deviation information.

4. The method according to claim 3, wherein: The generating physical parameter matrix information based on the static calibration data information group includes: For each static calibration data information in the static calibration data information group, the following steps are performed: generating an initial force matrix based on the average force sensor information included in the static calibration data information; Obtaining an angle rotation matrix of the robot arm angle corresponding to the static calibration data information; Based on the angle rotation matrix, generating a rotation parameter matrix; Based on the generated initial force matrices and the generated rotation parameter matrices, physical parameter matrix information is generated, wherein the physical parameter matrix information includes force sensor bias information, gravity parameter information and gravity component information.

5. The method according to claim 1, wherein: The controlling the movement of the robotic arm based on the determined robotic arm state information, the external force information and the admittance control parameter information comprises: In response to determining that the robot arm state information satisfies a preset dragging condition, the following steps are performed: generating first damping parameter information based on the external force information and the admittance control parameter information; generating first acceleration information based on the external force information and the first damping parameter information; generating first velocity information based on the first acceleration information; Based on the first speed information, generating each first joint expected speed; The movement of the robot arm is controlled based on the expected speeds of the first joints.

6. An electronic device comprising: Robotic arm; one or more processors; a storage device having one or more programs stored thereon; When the one or more programs are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1 to 5.

7. A computer readable medium having a computer program stored thereon, wherein: When the program is executed by a processor, the method according to any one of claims 1 to 5 is implemented.

Citation Information

Patent Citations

  • Non-contact pressure measurement method and system based on strain and temperature sensors

    CN114486057A

  • Mechanical arm, self-adaptive admittance control system and method thereof and robot

    CN115741668A

  • Mouse information generation method and device, electronic equipment and computer readable medium

    CN116843886A

  • Unit and method for motion control

    JP1996190432A

  • Exoskeleton with admittance control

    US20190060155A1