Anthropomorphic robot, its control method, device and storage medium

By setting sensors at the joints of the data gloves, collecting motion data and converting them into quaternary posture data, and determining the Euler angle, the problem of insufficient flexibility and adaptation range of manipulators in the prior art is solved, and more flexible manipulator control is achieved.

CN115056248BActive Publication Date: 2025-08-01UBTECH ROBOTICS CORP LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210569760.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-05-24
Publication Date
2025-08-01
Estimated Expiration
2042-05-24

AI Technical Summary

Technical Problem

In the prior art, when controlling the manipulator of a humanoid robot, it is not conducive to improving its flexibility and adaptability.

Method used

By setting sensors at each joint of the data glove, motion data is collected, and attitude data is converted into quaternary numbers, Euler angle is determined, and the manipulator of the humanoid robot is controlled based on this.

Benefits of technology

The flexibility and adaptability of the manipulator of the humanoid robot is improved, allowing it to complete complex and diverse movements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115056248B_ABST
    Figure CN115056248B_ABST
Patent Text Reader

Abstract

This application relates to the field of robots, and particularly to a humanoid robot, its control method, device, and storage medium. The method includes: collecting motion data through sensors disposed at respective joints of a data glove; determining attitude data of quaternions corresponding to the joints according to the motion data; determining Euler angles corresponding to the joints according to the attitude data of the quaternions of the joints; and controlling a manipulator of the humanoid robot according to the Euler angles corresponding to the joints. Thereby, the manipulator of the humanoid robot can move according to the hand movements of a control person, which is conducive to the manipulator of the humanoid robot completing complex and diverse actions and improving the application range of the manipulator.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of robots, and particularly relates to a humanoid robot, its control method, device, and storage medium. Background Art

[0002] A humanoid robot is a robot designed and manufactured by imitating the form and behavior of a human. A humanoid robot is not only an important symbol of a country's high-tech comprehensive level but also has a wide range of uses in human production and life. A humanoid robot has human appearance features and functions and can be used in the living and working environments of humans to replace humans to complete various operations.

[0003] Among the components of a humanoid robot, the manipulator of the humanoid robot is highly similar to a human palm and has multiple degrees of freedom. In order to enable the humanoid robot to complete the set work tasks more flexibly, it is usually necessary to control the palm of the humanoid robot, such as controlling based on a predetermined action, which is not conducive to improving the flexibility and adaptation range of the manipulator of the humanoid robot. Summary of the Invention

[0004] In view of this, the embodiments of this application provide a humanoid robot, its control method, device, and storage medium to solve the problem in the prior art that when controlling the manipulator of a humanoid robot, it is not conducive to improving the flexibility and adaptation range of the manipulator of the humanoid robot.

[0005] The first aspect of the embodiments of this application provides a control method for a humanoid robot, and the method includes:

[0006] Collecting motion data through sensors provided at each joint of a data glove;

[0007] Determining the attitude data of the quaternion corresponding to the joint according to the motion data;

[0008] Determining the Euler angle corresponding to the joint according to the attitude data of the quaternion of the joint;

[0009] Controlling the manipulator of the humanoid robot according to the Euler angle corresponding to the joint. ...

[0010] Combined with the first aspect, in the first possible implementation manner of the first aspect, the motion data collected through sensors provided at each joint of the data glove includes:

[0011] Collecting nine-axis sensing data for controlling gestures according to the joints at the roots of the fingers of the data glove and the nine-axis sensors provided at the wrist joint of the data glove;

[0012] Collect the three-axis sensing data of the control gesture through the three-axis sensors set at the middle joints and end joints of the fingers of the data glove.

[0013] Combined with the first aspect, in the second possible implementation manner of the first aspect, determining the Euler angle corresponding to the joint according to the attitude data of the quaternion of the joint includes:

[0014] Determine the first Euler angle of the wrist joint according to the first quaternion corresponding to the wrist sensor of the data glove;

[0015] Determine the second Euler angle of the root joint of the finger of the data glove relative to the first quaternion corresponding to the wrist sensor of the data glove according to the second quaternion corresponding to the root sensor of the finger of the data glove;

[0016] Determine the third Euler angle of the middle joint of the finger of the data glove relative to the second quaternion corresponding to the sensor of the root joint of the finger of the data glove according to the third quaternion corresponding to the sensor of the middle joint of the finger of the data glove;

[0017] Determine the fourth Euler angle of the end joint of the finger of the data glove relative to the second quaternion corresponding to the sensor of the middle joint of the finger of the data glove according to the fourth quaternion corresponding to the sensor of the end joint of the finger of the data glove.

[0018] Combined with the third possible implementation manner of the first aspect, in the fourth possible implementation manner of the first aspect, before controlling the manipulator of the humanoid robot according to the Euler angle corresponding to the joint, the method further includes:

[0019] Obtain the working state of the manipulator of the humanoid robot;

[0020] When the working state of the manipulator of the humanoid robot is the initial state, control the manipulator to synchronize with the state of the data glove through a smooth control curve.

[0021] Combined with the fourth possible implementation manner of the third possible implementation manner of the first aspect, in the fourth possible implementation manner of the first aspect, when the working state of the manipulator of the humanoid robot is the initial state, controlling the manipulator to synchronize with the state of the data glove through a smooth control curve includes:

[0022] When the working state of the manipulator of the humanoid robot is the initial state, obtain the state of the joints of the manipulator and the state of the joints of the data glove in the initial state;

[0023] Synchronize the state of the joints of the manipulator with the state of the joints of the data glove through a cubic smoothing curve.

[0024] Combined with the fourth possible implementation manner of the first aspect, in the fifth possible implementation manner of the first aspect, before synchronizing the states of the joints of the robotic arm with the states of the joints of the data glove through a cubic smoothing curve, the method further includes: determining the angular difference between the state of the joint of the robotic arm and the state of the corresponding joint of the data glove;

[0025] When the angular difference is greater than a predetermined angular threshold, perform synchronizing the states of the joints of the robotic arm with the states of the joints of the data glove through a cubic smoothing curve.

[0026] Combined with the first aspect, in the sixth possible implementation manner of the first aspect, the motion data collected by the sensors provided at each joint of the data glove includes:

[0027] Obtain the motion data of the sensor faces provided at each joint of the data glove through a 2.4G wireless transmission network.

[0028] The second aspect of the embodiments of the present application provides a control device for a humanoid robot, and the device includes:

[0029] A motion data acquisition unit, configured to acquire motion data collected by sensors provided at each joint of the data glove;

[0030] A quaternion determination unit, configured to determine the attitude data of the quaternion corresponding to the joint according to the motion data;

[0031] An Euler angle determination unit, configured to determine the Euler angle corresponding to the joint according to the attitude data of the quaternion of the joint;

[0032] A control unit, configured to control the robotic arm of the humanoid robot according to the Euler angle corresponding to the joint.

[0033] The third aspect of the embodiments of the present application provides a humanoid robot, including a memory, a processor, and a computer program stored in the memory and executable on the processor, and when the processor executes the computer program, the steps of the method according to any one of the first aspect are implemented.

[0034] The fourth aspect of the embodiments of the present application provides a computer-readable storage medium, and the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the method according to any one of the first aspect are implemented.

[0035] The beneficial effects of the embodiments of the present application compared with the prior art are as follows: By arranging sensors at each joint of the data glove, when the operator wears the data glove and moves, the motion data of the operator's hand joints can be collected through the sensors. After converting the collected motion data into the state data of the corresponding quaternion, according to the attitude data of the quaternion of each joint, the Euler angles that each joint of the manipulator needs to move can be determined. Based on the determined Euler angles, the manipulator of the humanoid robot is controlled to move, so that the manipulator of the humanoid robot can move according to the hand movements of the operator, which is beneficial for the manipulator of the humanoid robot to complete complex and diverse actions and improve the application range of the manipulator. Description of the Drawings

[0036] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the drawings required for use in the embodiments or the description of the prior art. Obviously, the following drawings are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other drawings can also be obtained based on these drawings.

[0037] Figure 1 It is a schematic diagram of the application scenario of a control method for a humanoid robot provided by an embodiment of the present application;

[0038] Figure 2 It is a schematic diagram of the implementation process of a control method for a humanoid robot provided by an embodiment of the present application;

[0039] Figure 3 It is a schematic diagram of a palm joint provided by an embodiment of the present application;

[0040] Figure 4 It is a schematic diagram of a control device for a humanoid robot provided by an embodiment of the present application;

[0041] Figure 5 It is a schematic diagram of a humanoid robot provided by an embodiment of the present application. Detailed Embodiments

[0042] In the following description, specific details such as specific system structures and technologies are presented for the purpose of illustration rather than limitation, so as to thoroughly understand the embodiments of the present application. However, those skilled in the art should clearly understand that the present application can also be implemented in other embodiments without these specific details. In other cases, detailed descriptions of well-known systems, devices, circuits, and methods are omitted to avoid unnecessary details from interfering with the description of the present application.

[0043] In order to illustrate the technical solutions described in the present application, the following will be described through specific embodiments.

[0044] Figure 1 The following is a schematic diagram of the application scenario of a control method for a humanoid robot provided by an embodiment of the present application. As Figure 1 shown, in the application scenario of the humanoid robot, it includes a humanoid robot and a data glove. Sensors are provided on the data glove, including a three-axis sensor and a nine-axis sensor. Among them, for the end joints (or also referred to as distal joints) of the fingers of the data glove and the middle joints of the fingers, three-axis sensors can be provided. For the root joints (or also referred to as proximal joints) of the fingers of the data glove and the wrist joints, nine-axis sensors can be provided. Among them, the three-axis sensor can collect the rotation angle of the joint, including the left-right tilt angle (Roll), the front-back tilt angle (Pitch), and the left-right rotation angle (Yaw). Based on the three-axis sensor, the nine-axis sensor also includes a three-axis accelerometer and a magnetometer. Based on the three-axis accelerometer, the acceleration motion data of the joints in the data glove in the x, y, and z-axis directions of the joint coordinate system can be collected, and based on the magnetometer, the attitude information of the joints of the data glove can be determined.

[0045] The humanoid robot and the data glove can establish a wired communication connection or a wireless communication connection. The wireless communication connection can include, for example, a communication connection established based on the 2.4G wireless communication protocol. By collecting data through the data glove and performing data conversion and calculation, the humanoid robot can determine the motion states of the respective joints of the manipulator.

[0046] Figure 2 The following is a schematic diagram of the implementation process of a control method for a humanoid robot provided by an embodiment of the present application, which is described in detail as follows:

[0047] In S201, motion data is collected through sensors provided at each joint of the data glove.

[0048] The data glove in the embodiment of the present application can be a glove provided with sensors at each joint of the glove. Through the sensors, the motion data of the corresponding distal finger segments of the joint can be collected. For example, the end joint of the finger collects the motion data of the finger tip segment, and the middle joint of the finger collects the motion data of the finger segment between the end joint and the middle joint.

[0049] Since some joints of the palm only include one degree of freedom of motion, and the manipulator may be in different poses to complete one degree of freedom of motion, a three-axis sensor can be used to collect the motion data corresponding to the joint. For example Figure 3 As shown in the schematic diagram of the finger joint, for the end joint of the finger and the middle joint of the finger, three-axis sensors can be provided at the corresponding joints to collect the bending data of the joint.

[0050] For a joint including multiple degrees of freedom (such as two or more degrees of freedom), a nine-axis sensor can be used to collect the motion data of the joint and accurately locate the joint (i.e., locate the finger segment corresponding to the joint). For example Figure 3 As shown in the schematic diagram of the finger joint, for the wrist joint and the finger end joint, the nine-axis sensor can be used to accurately collect the motion state, so as to facilitate determining the motion states of the finger middle joint and the end joint based on the data collected by the nine-axis sensor and combining with the three-axis sensor, obtaining accurate injury data, or identifying the gestures of the data glove.

[0051] Among them, the three-axis sensor is used to collect the rotation angle of the joint. The left and right tilt angles, front and back tilt angles, or left and right swing angles of the joint can be determined based on the world coordinate system. The data collected by the nine-axis sensor includes the data collected by the three-axis sensor, as well as the acceleration data in three mutually perpendicular directions collected by the three-axis acceleration sensor and the attitude data detected by the magnetometer (or also called the magnetic force meter). Among them, the attitude data of the magnetometer can be the pose of the joint relative to the world coordinate system, etc.

[0052] In the embodiment of the present application, the collected motion data can be transmitted to the humanoid robot through the 2.4GHz wireless communication protocol. The 2.4G wireless communication protocol has a fast rate, the transmission delay can be less than 10ms, and the transmission frequency can be higher than 120Hz, having the advantages of low delay and high frame rate transmission. By wearing the data glove, the hand motion data of the control personnel can be transmitted to the controller of the humanoid robot in real time. The controller of the humanoid robot processes the data to determine the motion instructions of each joint of the manipulator and realizes real-time and accurate control of the manipulator of the humanoid robot.

[0053] In S202, the attitude data of the quaternion corresponding to the joint is determined according to the motion data.

[0054] When the control personnel wear the data glove for control, the sensors arranged at each joint of the data glove can detect the motion data such as the rotation angle of the joint of the data glove. According to the conversion relationship between the motion angle and the attitude data of the quaternion, the attitude data of the quaternion corresponding to the motion angle at each joint can be determined.

[0055] When the finger moves, the distal joint or finger segment will move along with the movement of the proximal joint. For example, when the wrist joint moves, the entire palm will move (even if the root joints, middle joints, and end joints of the fingers do not rotate). Therefore, the data collected by the finger end joints may include the movement effects of the finger middle joints, the movement effects of the finger root joints, and the movement effects of the wrist joints. Therefore, the data collected by the sensor needs to be further converted and processed. In this application, the movement data of the joints is converted into quaternions, and through the calculation of the quaternion data, the actual control amounts of each joint are quickly determined, so as to quickly and accurately complete the movement control of the joints.

[0056] In S203, the Euler angles corresponding to the joints are determined according to the attitude data of the quaternions of the joints.

[0057] Since the movement state of the distal joints of the palm will be affected by the movement state of the proximal joints of the palm, therefore, the actual movement amounts of the joints, including the actual rotation angles, etc., can be determined according to the changes in the movement states of the distal joints and the proximal joints.

[0058] Among them, when determining the actual movement amounts of the joints based on the changes in the movement states of the distal joints and the proximal joints, the movement control amounts of the distal joints in two adjacent joints can be determined based on the changes in the movement states of the two adjacent joints. For the data glove, the following calculation contents can be included:

[0059] 1. The first Euler angle of the wrist joint can be determined according to the first quaternion corresponding to the wrist sensor of the data glove.

[0060] Since the wrist joint is the most proximal joint and a nine-axis sensor is provided at the wrist joint, therefore, the changes in the spatial position, attitude, rotation angle, etc. of the wrist joint can be directly determined by the nine-axis sensor.

[0061] 2. The second Euler angle of the root joint of the finger of the data glove is determined relative to the first quaternion corresponding to the wrist sensor of the data glove according to the second quaternion corresponding to the root sensor of the finger of the data glove.

[0062] In the embodiments of this application, nine-axis sensors are provided at the root joints of the fingers, which can detect the changes in the position, attitude, and rotation angle of the root joints. The relative rotation angle of the root joint of the data glove relative to the wrist joint can be determined by combining the movement data of the root joint of the data glove with the movement data of the wrist joint of the data glove, and the second Euler angle of the root joint is determined based on the determined relative rotation angle.

[0063] 3. Determine the third Euler angle of the middle joint of the finger of the data glove based on the third quaternion corresponding to the sensor of the middle joint of the finger of the data glove with respect to the second quaternion corresponding to the sensor of the root joint of the finger of the data glove.

[0064] 4. Determine the fourth Euler angle of the end joint of the finger of the data glove based on the fourth quaternion corresponding to the sensor of the end joint of the finger of the data glove with respect to the second quaternion corresponding to the sensor of the middle joint of the finger of the data glove.

[0065] Based on the same principle, the third Euler angle of the middle joint of the data glove can be determined based on the motion data of the root joint of the data glove and the motion data of the middle joint of the data glove, and the fourth Euler angle of the end joint of the data glove can be determined based on the motion data of the middle joint of the data glove in combination with the motion data of the end joint of the data glove.

[0066] In S204, control the manipulator of the humanoid robot according to the Euler angle corresponding to the joint.

[0067] The Euler angles of each joint determined according to the relative position relationship, that is, the rotation parameters corresponding to the corresponding joints, control the joints to rotate based on the determined rotation parameters, so as to realize the precise control of the manipulator of the humanoid robot by the data glove, complete complex hand movements according to the gesture actions of the data glove, and adapt to the task requirements of more complex scenarios.

[0068] In the embodiment of the present application, before controlling the manipulator through the data glove, the working state of the manipulator can also be detected. If the working state of the manipulator is the initial state, the manipulator can be synchronized with the data glove first.

[0069] When synchronizing the joint state of the data glove with the joint state of the machine, the joints of the manipulator can be smoothly controlled and adjusted through a smooth control curve to avoid excessive step control signals.

[0070] Alternatively, in a possible implementation, before synchronizing the joint state of the data glove with the joint state of the machine, the angle difference between the state of the joint of the manipulator and the state of the corresponding joint of the data glove can also be obtained. If the angle difference exceeds a predetermined angle threshold, it means that a large step control signal may occur during direct synchronization, and smooth control can be performed through a smooth control curve, such as through a cubic smooth control curve. When the angle difference between the state of the joint of the manipulator and the state of the corresponding joint of the data glove is less than the predetermined angle threshold, the state of the joint of the manipulator can be directly synchronized with the state of the joint of the data glove.

[0071] In addition, when the control instruction of the data glove is received in the embodiment of the present application, the Euler angles determined by the received data may also be compared with the range of the manipulator. When the movement range of the data glove exceeds the range of the manipulator, a mapping relationship may be established according to the movement range of the data glove and the range of the manipulator, and the adjustment amount of the joints of the manipulator may be determined according to the movement range of the data glove and the range of the manipulator. When determining the adjustment amount of the joints of the manipulator according to the movement range of the data glove and the range of the manipulator, the rotation angle of the corresponding joint of the manipulator may be increased or the rotation angle of the corresponding joint of the manipulator may be decreased relative to the rotation angle of the joint of the data glove.

[0072] It should be understood that the magnitudes of the sequence numbers of the steps in the above embodiments do not mean the order of execution. The order of execution of each process should be determined according to its function and internal logic, and should not constitute any limitation to the implementation process of the embodiments of the present application.

[0073] Figure 4 The figure is a schematic diagram of a control device for a humanoid robot provided by an embodiment of the present application, as Figure 4 shown. The device includes:

[0074] A motion data acquisition unit 401, configured to acquire motion data through sensors disposed at respective joints of the data glove;

[0075] A quaternion determination unit 402, configured to determine attitude data of quaternions corresponding to the joints according to the motion data;

[0076] An Euler angle determination unit 403, configured to determine Euler angles corresponding to the joints according to the attitude data of the quaternions of the joints;

[0077] A control unit 404, configured to control the manipulator of the humanoid robot according to the Euler angles corresponding to the joints.

[0078] Figure 4 The control device of the humanoid robot shown, corresponds to Figure 2 the control method of the humanoid robot shown.

[0079] Figure 5 The figure is a schematic diagram of a humanoid robot provided by an embodiment of the present application. As Figure 5As shown, the humanoid robot 5 of this embodiment includes: a processor 50, a memory 51, and a computer program 52 stored in the memory 51 and executable on the processor 50, such as a control program for the humanoid robot. When the processor 50 executes the computer program 52, the steps in the above-described embodiments of the control method for each humanoid robot are implemented. Alternatively, when the processor 50 executes the computer program 52, the functions of each module / unit in the above-described device embodiments are implemented.

[0080] Exemplarily, the computer program 52 can be divided into one or more modules / units. The one or more modules / units are stored in the memory 51 and executed by the processor 50 to complete this application. The one or more modules / units can be a series of computer program instruction segments capable of performing specific functions, and these instruction segments are used to describe the execution process of the computer program 52 in the humanoid robot 5.

[0081] The humanoid robot may include, but is not limited to, a processor 50 and a memory 51. Those skilled in the art can understand that Figure 5 this is only an example of the humanoid robot 5 and does not constitute a limitation on the humanoid robot 5. It may include more or fewer components than shown in the figure, or combine certain components, or have different components. For example, the humanoid robot may further include input / output devices, network access devices, a bus, etc.

[0082] The so-called processor 50 may be a central processing unit (CPU), or may also be other general-purpose processors, digital signal processors (DSPs), application specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc.

[0083] The memory 51 may be an internal storage unit of the humanoid robot 5, such as the hard disk or memory of the humanoid robot 5. The memory 51 may also be an external storage device of the humanoid robot 5, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) card, a Flash Card, etc. equipped on the humanoid robot 5. Further, the memory 51 may also include both the internal storage unit of the humanoid robot 5 and the external storage device. The memory 51 is used to store the computer program and other programs and data required by the humanoid robot. The memory 51 may also be used to temporarily store the data that has been output or will be output.

[0084] Those skilled in the art can clearly understand that, for the convenience and conciseness of description, only the above division of each functional unit and module is used as an example. In practical applications, the above functions can be assigned to different functional units and modules according to needs, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. Each functional unit and module in the embodiment can be integrated into a processing unit, or each unit can exist physically alone, or two or more units can be integrated into one unit. The above integrated unit can be implemented in the form of hardware or in the form of a software functional unit. In addition, the specific names of each functional unit and module are only for the convenience of mutual distinction and do not limit the protection scope of this application. The specific working process of the units and modules in the above system can refer to the corresponding process in the foregoing method embodiment and will not be described in detail here.

[0085] In the above embodiments, the descriptions of the various embodiments have their own emphases. For the parts not detailed or recorded in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0086] Those of ordinary skill in the art can realize that the units and algorithm steps of each example described in combination with the embodiments disclosed herein can be implemented by electronic hardware, or by a combination of computer software and electronic hardware. Whether these functions are executed in hardware or software depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of this application.

[0087] In the embodiments provided in this application, it should be understood that the disclosed device / terminal device and method can be implemented in other ways. For example, the device / terminal device embodiments described above are merely illustrative. For example, the division of the modules or units is only a logical function division. In actual implementation, there may be other division methods. For example, 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 displayed or discussed coupling or direct coupling or communication connection between each other can be through some interfaces. The indirect coupling or communication connection of the device or unit can be in electrical, mechanical or other forms.

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

[0089] In addition, each functional unit in various embodiments of this application can be integrated in a processing unit, or each unit can exist physically alone, or two or more units can be integrated in one unit. The above integrated units can be implemented in the form of hardware or in the form of software functional units.

[0090] If the integrated module / 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, all or part of the processes in the above-described method embodiments of this application can also be completed by hardware related to computer program instructions. The computer program can be stored in a computer-readable storage medium. When the computer program is executed by a processor, the steps of the above-described method embodiments can be implemented. Among them, the computer program includes computer program code, and the computer program code can be in the form of source code, object code, executable file or some intermediate form, etc. The computer-readable medium can include: any entity or device that can carry the computer program code, recording medium, USB flash drive, mobile hard disk, magnetic disk, optical disc, computer memory, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), electrical carrier signal, telecommunication signal, and software distribution medium, etc. It should be noted that the content included in the computer-readable medium can be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, the computer-readable medium does not include electrical carrier signals and telecommunication signals.

[0091] The embodiments described above are only used to illustrate the technical solutions of the present application, rather than to limit it; although the present application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions recorded in the foregoing embodiments, or perform equivalent replacements on some of the technical features; and these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present application, and should all be included in the protection scope of the present application.

Claims

1. A control method for a humanoid robot, characterized in that, The method includes: Motion data collected by sensors provided at various joints of the data glove; Determining attitude data of quaternions corresponding to the joints according to the motion data; Determining Euler angles corresponding to the joints according to the attitude data of the quaternions of the joints, including: determining a first Euler angle of the wrist joint according to a first quaternion corresponding to a wrist sensor of the data glove; determining a second Euler angle of a root joint of a finger of the data glove relative to the first quaternion corresponding to the wrist sensor of the data glove according to a second quaternion corresponding to a root sensor of the finger of the data glove; wherein, based on the motion data of the root joint of the data glove and in combination with the motion data of the wrist joint of the data glove, determining a relative rotation angle of the root joint of the data glove relative to the wrist joint, and based on the determined relative rotation angle, determining a second Euler angle of the root joint; Controlling the manipulator of the humanoid robot according to the Euler angles corresponding to the joints.

2. The method according to claim 1, wherein The motion data collected by sensors provided at various joints of the data glove includes: Collecting nine-axis sensing data for controlling gestures according to joints at the root of a finger of the data glove and nine-axis sensors provided at the wrist joint of the data glove; Collecting three-axis sensing data for controlling gestures according to three-axis sensors provided at intermediate joints and end joints of a finger of the data glove.

3. The method according to claim 1, characterized in that, Determining Euler angles corresponding to the joints according to the attitude data of the quaternions of the joints, including: Determining a third Euler angle of an intermediate joint of a finger of the data glove relative to a second quaternion corresponding to a sensor of a root joint of the finger of the data glove according to a third quaternion corresponding to a sensor of the intermediate joint of the finger of the data glove; Determining a fourth Euler angle of an end joint of a finger of the data glove relative to a second quaternion corresponding to a sensor of an intermediate joint of the finger of the data glove according to a fourth quaternion corresponding to a sensor of the end joint of the finger of the data glove.

4. The method according to claim 1, wherein Before controlling the manipulator of the humanoid robot according to the Euler angles corresponding to the joints, the method further includes: Obtaining a working state of the manipulator of the humanoid robot; When the working state of the manipulator of the humanoid robot is an initial state, controlling the manipulator to be synchronized with the state of the data glove through a smooth control curve.

5. The method according to claim 4, characterized in that When the working state of the manipulator of the humanoid robot is an initial state, controlling the manipulator to be synchronized with the state of the data glove through a smooth control curve, including: When the working state of the manipulator of the humanoid robot is an initial state, obtaining the states of joints of the manipulator and the states of joints of the data glove in the initial state; Synchronizing the states of joints of the manipulator and the states of joints of the data glove through a cubic smoothing curve.

6. The method according to claim 5, wherein Before synchronizing the states of joints of the manipulator and the states of corresponding joints of the data glove through a cubic smoothing curve, the method further includes: determining an angular difference between the states of joints of the manipulator and the states of corresponding joints of the data glove; When the angle difference is greater than a predetermined angle threshold, perform the synchronization of the state of the joints of the manipulator with the state of the joints of the data glove through a three-time smoothing curve.

7. The method according to claim 1, wherein The motion data collected by the sensors provided at each joint of the data glove includes: Obtain the motion data of the sensor faces provided at each joint of the data glove through a 2.4G wireless transmission network.

8. A control device for a humanoid robot, characterized in that, The device includes: A motion data acquisition unit for collecting motion data through sensors provided at each joint of the data glove; A quaternion determination unit for determining the attitude data of the quaternion corresponding to the joint according to the motion data; An Euler angle determination unit for determining the Euler angle corresponding to the joint according to the attitude data of the quaternion of the joint, including: determining the first Euler angle of the wrist joint according to the first quaternion corresponding to the wrist sensor of the data glove; determining the second Euler angle of the root joint of the finger of the data glove relative to the first quaternion corresponding to the wrist sensor of the data glove according to the second quaternion corresponding to the root sensor of the finger of the data glove; wherein, the relative rotation angle of the root joint of the data glove relative to the wrist joint is determined by combining the motion data of the root joint of the data glove with the motion data of the wrist joint of the data glove, and the second Euler angle of the root joint is determined based on the determined relative rotation angle; A control unit for controlling the manipulator of the humanoid robot according to the Euler angle corresponding to the joint.

9. A humanoid robot, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, the steps of the method according to any one of claims 1 to 7 are implemented.

10. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by the processor, the steps of the method according to any one of claims 1 to 7 are implemented.

Citation Information

Patent Citations

  • Humanoid manipulator grabbing control system and data processing method thereof

    CN108972494A