Unmanned aerial vehicle continuous speed spatial gesture control system and method based on somatosensory gloves

By acquiring gesture data in real time through a motion-sensing glove and using attitude quaternions to calculate flight direction and speed, the problem of discontinuous speed commands in traditional drone gesture control methods has been solved, enabling continuous speed control and precise operation of drones, thus improving user experience and safety.

CN120540364BActive Publication Date: 2025-12-05NANJING FANMEILI ROBOT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202511044821.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-07-29
Publication Date
2025-12-05
Estimated Expiration
2045-07-29

AI Technical Summary

Technical Problem

Traditional drone gesture control methods can only issue speed commands in a discrete velocity space, which is difficult to meet the requirements of drone's precise flight. Furthermore, vision-based control methods have poor recognition performance in complex backgrounds or occluded environments.

Method used

A continuous speed spatial gesture control system for drones based on haptic gloves is adopted. The system acquires palm movement state and finger bending angle data in real time through an inertial measurement module and a finger bending angle detection module. The flight direction is calculated using attitude quaternions, and continuous speed control commands are generated by combining multi-level filtering and hysteresis processing to realize the take-off, emergency stop and landing of the drone.

Benefits of technology

It enables continuous speed control of drones, improving ease of operation and control precision, reducing computational resource consumption, and enhancing user experience and flight safety.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120540364B_ABST
    Figure CN120540364B_ABST
Patent Text Reader

Abstract

The application discloses a kind of unmanned plane continuous speed space gesture control system and method based on somatosensory glove, including gesture data acquisition module, data transmission module and flight control execution module;Gesture data acquisition module includes palm data acquisition module and palm data solution module.The application utilizes current attitude quaternion to calculate thumb orientation to control flight direction, finger bending angle is converted into flight speed size, uses thumb direction as flight direction, finger bending degree is converted into flight speed, realizes the continuous speed direction space and size space unmanned plane glove control, reduces the computing resource overhead, while overcome the limitation of traditional unmanned plane remote controller, improve control efficiency, with intuitive and convenient operation, response is fast, control is accurate and the like, applicable to the flexible control scene of unmanned plane, enhance the immersion and friendliness of interaction, improve user experience and flight safety.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of unmanned aerial vehicle (UAV) control technology, specifically to a continuous speed spatial gesture control system and method for UAVs based on haptic gloves. Background Technology

[0002] Traditional drones typically rely on remote controls or joysticks for operation, which is relatively cumbersome and not conducive to beginners. With the rapid advancement of human-computer interaction technology, researchers have begun exploring gesture recognition for drone control, providing new ideas for improving ease of operation and user experience. Existing gesture recognition drone control methods are mainly divided into two categories: vision-based control methods and haptic glove-based control methods. Vision-based control methods primarily rely on optical sensors to acquire images, and then use feature extraction and fusion processing combined with deep learning algorithms to achieve target classification. However, this method is often limited by specific application scenarios, highly dependent on image clarity and sensor perspective, and its recognition performance is often difficult to guarantee in complex backgrounds or occluded environments. Haptic glove-based control methods use data transmitted from haptic gloves to classify targets and execute corresponding commands. However, existing control methods can only issue speed commands in a discrete velocity space, resulting in discontinuous speed commands during drone gesture control, limiting application scenarios and making it difficult to meet the requirements of precise drone flight. Summary of the Invention

[0003] The purpose of this invention is to provide a continuous velocity spatial gesture control system and method for unmanned aerial vehicles based on a haptic glove, so as to solve the technical problems mentioned in the background art.

[0004] To achieve the above objectives, the present invention provides a continuous velocity spatial gesture control system for unmanned aerial vehicles based on a somatosensory glove, comprising a gesture data acquisition module, a data transmission module, and a flight control execution module; the gesture data acquisition module includes a palm data acquisition module and a palm data processing module;

[0005] The palm data acquisition module includes an inertial measurement module and a finger flexion detection module, which are used to acquire palm motion state data and finger flexion angle data in real time, respectively. The motion state data includes acceleration data and angular velocity data.

[0006] The palm data processing module receives motion state data and finger bending angle data, converts the motion state data into an initial attitude quaternion, updates and normalizes it to the current attitude quaternion, and sends the current attitude quaternion and finger bending angle data as gesture data to the flight control execution module.

[0007] The data transmission module establishes a communication connection between the flight control execution module and the gesture data acquisition module, and transmits gesture data to the flight control execution module in one direction.

[0008] After receiving and preprocessing the gesture data, the flight control execution module calculates the thumb orientation as the flight direction, the five-finger state vector, and the current finger speed control quantity. It then determines whether the five-finger state vector is a special instruction and generates the corresponding flight control instruction based on the determination result, which is then sent to the drone.

[0009] Furthermore, the flight control execution module includes a data filtering module and a gesture data processing module;

[0010] The data filtering module preprocesses the received gesture data to remove noise and outliers; the gesture data calculation module calculates the thumb orientation as the flight direction based on the current attitude quaternion in the preprocessed gesture data; the finger bending angle data is converted into a five-finger state vector, and the finger bending angle data other than the thumb is converted into finger speed control quantities. Finally, it determines whether the five-finger state vector is a special command, and generates the corresponding special command and a regular command containing the current finger speed control quantity and flight direction based on the judgment result, and sends them to the UAV for execution.

[0011] Furthermore, the data filtering module employs multi-level filtering, which includes median filtering and exponential moving average filtering.

[0012] Furthermore, the special commands include takeoff, emergency stop, and landing; the gesture data acquisition module uses a motion-sensing glove; and the data transmission module uses low-power Bluetooth one-way communication.

[0013] This invention also provides a method for continuous velocity spatial gesture control of a drone based on a haptic glove, the method comprising the following steps:

[0014] S1. Real-time acceleration data of the palm is acquired through the inertial measurement module on the haptic glove. and angular velocity data The finger bending angle data is obtained in real time through the finger bending degree detection module;

[0015] S2, The palm data processing module converts acceleration and angular velocity data into initial attitude quaternions. Update and normalize it to obtain the current pose quaternion. and the current attitude quaternion The finger bending angle data is sent as gesture data to the flight control execution module;

[0016] S3. After receiving the gesture data, the flight control execution module preprocesses it, calculates the thumb orientation as the flight direction based on the preprocessed current attitude quaternion, and converts the preprocessed finger bending angle data into a five-finger state vector S.

[0017] S4. Define the system running state and special instruction vector table, and compare the five-finger state S with the special instruction vector table to determine whether it is a special instruction.

[0018] If so, the corresponding special command will be sent to the drone for execution;

[0019] If not, it is a normal instruction, proceed to step S5;

[0020] S5. Calculate the current finger speed control value based on the preprocessed finger bending angle data, and send it and the flight direction as regular commands to the drone for execution.

[0021] Furthermore, the specific steps of step S2 are as follows:

[0022] S21. Define the initial quaternion. It is initialized as a unit quaternion, which serves as the initial reference attitude of the system, denoted as . ,in, This represents the rotation angle data. Indicates the direction of acceleration;

[0023] S22. Collect the acceleration data Normalization is performed to obtain the unit vector of acceleration direction as... This refers to the unit vector in the direction of gravity, used to reflect the change in the palm's posture relative to the direction of gravity, and includes angular velocity data. Convert the angular velocity unit as The initial attitude quaternion is obtained. ;

[0024] Based on the initial attitude quaternion Calculate the theoretical gravity direction vector in the corresponding world coordinate system. ;

[0025] S24. Calculate the difference between the normalized acceleration direction unit vector and the theoretical gravity direction vector under the current attitude as the attitude error. ;

[0026] S25. Calculate the initial attitude quaternion. The differential terms are combined with the complementary filter scaling factor, and the attitude error is introduced as a feedback term to update the initial attitude quaternion. The current pose quaternion is then obtained by normalization. .

[0027] Furthermore, the specific steps in step S3 are as follows:

[0028] Preprocessing:

[0029] S31. After performing median filtering on the received gesture data over a period of time, perform exponential moving average filtering for smoothing and dynamically adjust the weighting coefficients.

[0030] Calculate thumb orientation:

[0031] S32. Quaternion of thumb direction vector under predefined initial posture The setting is that when the object is laid flat, the thumb points to the right, which is the positive X-axis;

[0032] S33. The quaternion of the thumb direction vector of the initial posture. The current attitude quaternion after preprocessing Rotate to obtain the direction vector of the thumb in the current pose. Taking the direction of the thumb in the current posture as the flight direction, the calculation formula is:

[0033] ,

[0034] In the above formula, This indicates the direction of the thumb relative to the hand's coordinate system in the initial static posture. This indicates the direction of the thumb relative to the hand's coordinate system in the current posture;

[0035] Transformation of the five-finger state vector:

[0036] S34. Define the preprocessed finger bending angle data as a bending angle vector. ,in, These correspond to the bending angles from the thumb to the little finger;

[0037] S35, Introduce a hysteresis processing threshold and State vectors are generated using hysteresis processing. Finally, the state vector of the five fingers is represented as The hysteresis handling is specifically as follows:

[0038] ,

[0039] Where t represents the current finger state, and t-1 represents the previous finger state. , i=1,2,3,4,5.

[0040] Furthermore, step S4 specifically includes:

[0041] System operating state is defined as Here, "Unlocked" indicates the unlocked state, allowing the drone to receive flight control commands; "Flying" indicates the takeoff state, meaning the drone has taken off.

[0042] The special instruction vector is defined as the takeoff instruction: Emergency stop command: Landing instructions: ;

[0043] like and Then execute the takeoff maneuver and update the status. ;

[0044] like and If so, then either an emergency stop or a landing maneuver will be executed.

[0045] Otherwise, it is a normal instruction, proceeding to step S5, where t represents the current state and t+1 represents the next state.

[0046] Furthermore, the specific steps of step S5 are as follows:

[0047] S51. Define the preprocessed finger bending angle data as a bending angle vector excluding the thumb. ,in, These correspond to the bending angles of the index finger to the little finger, respectively.

[0048] S52. Set the upper and lower limit thresholds for the finger bending angle, with the lower limit threshold being the first threshold. Upper limit threshold ;

[0049] S53. Normalize the bending angle vector B (excluding the thumb) to a threshold range, and calculate the normalized velocity of each finger. Average speed The current finger speed control value is obtained by performing exponential smoothing. This, along with the flight direction, is sent to the drone as a regular command for execution, calculated as follows:

[0050] ,

[0051] In the above formula, i = 2, 3, 4, 5, which correspond to the bending angles from the index finger to the little finger, respectively; Indicates the smooth speed at the current moment. The smoothing velocity is the value of the previous time step, and the smoothing coefficient is... .

[0052] Beneficial effects: This invention utilizes the current attitude quaternion to calculate the thumb orientation to control the flight direction, converts the finger bending angle into the flight speed, uses the thumb direction as the flight direction, and converts the degree of finger bending into the flight speed, realizing continuous speed direction space and size space drone glove control, and realizes drone take-off, emergency stop and landing through special commands, reducing computing resource consumption, overcoming the limitations of traditional drone remote controllers, improving control efficiency, and has the advantages of intuitive and convenient operation, fast response and precise control. It is suitable for flexible drone operation scenarios, enhances the immersiveness and friendliness of interaction, and improves user experience and flight safety. Attached Figure Description

[0053] To more clearly illustrate the technical solutions of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0054] Figure 1 This is a schematic diagram of the continuous velocity space gesture control system of the present invention;

[0055] Figure 2 This is a flowchart of the continuous velocity space gesture control method of the present invention;

[0056] Figure 3 This is a flowchart illustrating the processing of the current posture quaternion in the continuous velocity space gesture control method of the present invention. Detailed Implementation

[0057] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0058] like Figures 1-3 As shown, the present invention provides a continuous velocity spatial gesture control system for unmanned aerial vehicles based on a haptic glove, including a gesture data acquisition module, a data transmission module, and a flight control execution module; the gesture data acquisition module adopts a haptic glove, which integrates a palm data acquisition module and a palm data processing module;

[0059] The palm data acquisition module includes an inertial measurement module and a finger bending angle detection module, which are used to acquire palm motion state data and finger bending angle data in real time, respectively. The motion state data includes acceleration data and angular velocity data. In this embodiment, the inertial measurement module uses a three-axis accelerometer and a three-axis gyroscope, and the finger bending angle detection module uses a flexible sensor or an optical sensor.

[0060] The palm data processing module receives motion state data and finger bending angle data, converts the motion state data into an initial attitude quaternion, updates and normalizes it to the current attitude quaternion, and sends the current attitude quaternion and finger bending angle data as gesture data to the flight control execution module.

[0061] The data transmission module uses low-power Bluetooth one-way communication to establish a communication connection between the flight control execution module and the gesture data acquisition module, and transmits gesture data to the flight control execution module in one direction. It adopts a low-latency transmission protocol to ensure real-time transmission and processing of gesture data, ensuring the real-time performance and stability of data transmission, and supporting long-term continuous operation.

[0062] After receiving and preprocessing the gesture data, the flight control execution module calculates the thumb orientation as the flight direction, the five-finger state vector, and the current finger speed control quantity. It then determines whether the five-finger state vector is a special command and generates the corresponding flight control command based on the determination result, which is then sent to the UAV. The flight control command includes special commands (such as takeoff, emergency stop, and landing) and regular commands (such as speed and flight direction).

[0063] The flight control execution module includes a data filtering module and a gesture data processing module. The data filtering module uses multi-level filtering to remove noise and outliers from the received gesture data and generate preprocessed gesture data to ensure the accuracy and stability of the data. The multi-level filtering includes median filtering and exponential moving average filtering. Median filtering removes abrupt changes in the gesture data, and exponential moving average filtering smooths the data. The weighting coefficients are dynamically adjusted to adapt to different gesture change rates in order to obtain more effective and stable data.

[0064] The gesture data processing module calculates the thumb orientation as the flight direction based on the current attitude quaternion in the preprocessed gesture data; it processes the finger bending angle data into a five-finger state vector, converts the bending angle data of the fingers other than the thumb into the current finger speed control quantity, determines whether the five-finger state vector is a special command, and generates the corresponding special command and a regular command containing the current finger speed control quantity and flight direction based on the determination result, and sends them to the UAV for execution.

[0065] Current glove control or gesture control only allows for single-axis control of drones with a single gesture, i.e., movement along a single xyz axis. This invention combines wearable haptic gloves, using the current attitude quaternion to calculate the thumb direction to control the flight direction, and converting the finger bending angle into the flight speed. By using the thumb direction as the flight direction and the finger bending angle into the flight speed, it achieves continuous speed direction and magnitude space drone glove control. It also enables drone takeoff, emergency stop, and landing through special commands, reducing computational resource consumption. At the same time, it overcomes the limitations of traditional drone remote controllers, improves control efficiency, and has the advantages of intuitive and convenient operation, fast response, and precise control. It is suitable for flexible drone operation scenarios, enhances the immersiveness and friendliness of interaction, and improves user experience and flight safety.

[0066] This invention also provides a method for continuous velocity spatial gesture control of a drone based on a haptic glove, comprising the following steps:

[0067] S1. Real-time acceleration data of the palm is acquired through the inertial measurement module on the haptic glove. and angular velocity data The finger bending angle data is obtained in real time through the finger bending degree detection module; in this embodiment, the inertial measurement module uses a 6-axis motion processing sensor of model MPU6050 to collect palm motion data to ensure the accuracy and real-time performance of the data. It includes a three-axis accelerometer and a three-axis gyroscope. The finger bending degree detection module uses a flexible sensor or an optical sensor to obtain the finger bending angle.

[0068] S2, The palm data processing module converts acceleration and angular velocity data into initial attitude quaternions. Update and normalize it to obtain the current pose quaternion. and the current attitude quaternion The finger bending angle data is sent as gesture data to the flight control execution module; the current attitude quaternion It represents the three-dimensional rotation state, that is, the rotation relationship between the hand coordinate system and the world coordinate system, avoiding the gimbal lock problem of Euler angles.

[0069] In this embodiment, to further explain step S2, the specific steps are as follows:

[0070] S21. Define the initial quaternion. It is initialized to a unit quaternion, representing the current system attitude as an initial horizontal stationary state. The unit quaternion represents a state without rotation, and is used as the initial reference attitude of the system, denoted as . ,in, This represents the rotation angle data. Indicates the direction of acceleration;

[0071] S22. Collect the acceleration data Normalization is performed to obtain the unit vector of acceleration direction as... That is, the unit vector in the direction of gravity, used to reflect the change in the palm's posture relative to the direction of gravity, and angular velocity data. Convert the angular velocity unit as The initial attitude quaternion is obtained. The formulas for normalization and angular velocity unit conversion are as follows:

[0072] ,

[0073] In the above formula, The acceleration data is after normalization. This represents the raw angular velocity data collected. This represents the angular velocity data after unit conversion; normalization eliminates the influence of acceleration magnitude, retaining only directional information for attitude calculation.

[0074] S23. Based on the initial attitude quaternion Calculate the theoretical gravity direction vector in the corresponding world coordinate system. The calculation formula is:

[0075] ,

[0076] S24. Calculate the difference between the normalized acceleration direction unit vector and the theoretical gravity direction vector under the current attitude as the attitude error. The attitude error reflects the deviation between the current attitude estimate and the true orientation. Correcting the hand attitude quaternion ensures the accuracy of the hand attitude calculation. The calculation formula is as follows:

[0077] ,

[0078] S25. First calculate the initial attitude quaternion. The differential terms are combined with the complementary filter scaling factor, and the attitude error is introduced as a feedback term to update the initial attitude quaternion. The current pose quaternion is then obtained by normalization. By combining gyroscope integration and attitude error, the stability and accuracy of attitude calculation are ensured.

[0079] ,

[0080] In the above formula, , respectively, represent the initial attitude quaternions The differential terms obtained by differentiating the terms within each term. Represents the quaternion of the initial attitude Update the i-th element. Represents the initial attitude quaternion The i-th differential term, This represents the updated initial pose quaternion. This represents each term in the updated initial pose quaternion. This represents the complementary filter scaling factor. Δt represents the attitude error, and Δt represents the time interval.

[0081] S3. After receiving the gesture data, the flight control execution module preprocesses it, calculates the thumb orientation as the flight direction based on the preprocessed current attitude quaternion, and converts the preprocessed finger bending angle data into a five-finger state vector S.

[0082] In this embodiment, to further explain step S3, the specific steps are as follows:

[0083] Preprocessing:

[0084] S31. After performing median filtering on the received gesture data over a period of time, exponential moving average filtering is then applied for smoothing, and the weighting coefficients are dynamically adjusted. Median filtering is used to remove abrupt changes and outliers in the data, while exponential moving average filtering is used to smooth the data, eliminate noise and abrupt changes. Multi-level filtering ensures the stability and accuracy of the data. Since the frequency of flight command transmission is much lower than the frequency of gesture data reception, a series of gesture data will be received between two flight command transmission intervals. The weighting coefficients are dynamically adjusted to adapt to different gesture change speeds in order to obtain more effective and stable data. Finally, the filtered and stable gesture data is output to generate flight control commands, ensuring the stable flight and rapid response of the UAV.

[0085] Calculate thumb orientation:

[0086] S32. Quaternion of thumb direction vector under predefined initial posture In this embodiment, the thumb is positioned to the right when the object is placed flat, i.e., the positive X-axis. This vector represents the direction of the thumb relative to the hand's body coordinate system in its initial static posture.

[0087] S33. The quaternion of the thumb direction vector of the initial posture. The current attitude quaternion after preprocessing Rotate to obtain the thumb direction vector in the current pose. The calculation formula is:

[0088] ,

[0089] In the above formula, This indicates the direction of the thumb relative to the hand's coordinate system in the initial static posture. This indicates the direction of the thumb relative to the hand's coordinate system in the current posture, with the thumb's direction being taken as the flight direction.

[0090] Transformation of the five-finger state vector:

[0091] S34. Define the preprocessed finger bending angle data as a bending angle vector. ,in, These correspond to the bending angles from the thumb to the little finger;

[0092] S35, Introduce a hysteresis processing threshold and State vectors are generated using hysteresis processing. Finally, the state vector of the five fingers is represented as The hysteresis handling is specifically as follows:

[0093] ,

[0094] Where t represents the current finger state, and t-1 represents the previous finger state. i=1,2,3,4,5, and hysteresis processing is used to eliminate finger tremors and misjudgments.

[0095] S4. Define the system operating status and special command vector table. Compare the five-finger status S with the special command vector table to determine whether it is a special command. The special command vector table is used to define the recognition rules for special commands to ensure the accuracy and stability of command recognition. Special commands are take-off, emergency stop and landing to ensure stable flight and rapid response of the UAV.

[0096] If so, the corresponding special command will be sent to the drone for execution;

[0097] If not, it is a standard instruction, proceed to step S5.

[0098] In this embodiment, the system operating state is defined as... Here, "Unlocked" indicates the unlocked state, allowing the drone to receive flight control commands; "Flying" indicates the takeoff state, meaning the drone has taken off; the special command vector is defined as: Takeoff command: Emergency stop command: Landing instructions: ;

[0099] like and Then execute the takeoff maneuver and update the status. ;

[0100] like and If so, then either an emergency stop or a landing maneuver will be executed.

[0101] Otherwise, it is a standard instruction, proceeding to step S5, where t represents the current state and t+1 represents the next state. State determination and execution are used to ensure stable flight and rapid response of the UAV, and to ensure the accuracy and stability of instruction execution.

[0102] S5. Calculate the current finger speed control value based on the preprocessed finger bending angle data, and send it and the flight direction as a regular command to the drone for execution;

[0103] In this embodiment, to further explain step S5, the specific steps are as follows:

[0104] S51. Define the preprocessed finger bending angle data as a bending angle vector excluding the thumb. ,in, These correspond to the bending angles of the index finger to the little finger, respectively.

[0105] S52. Set the upper and lower limit thresholds for the finger bending angle, with the lower limit threshold being the first threshold. Upper limit threshold , used to control nonlinear mapping relationships;

[0106] S53. Normalize the bending angle vector B (excluding the thumb) to a threshold range, establish a linear mapping relationship between the degree of bending and the drone speed, ensure the accuracy and stability of speed control, eliminate individual differences in finger bending degree through normalization, ensure the consistency of speed control, and calculate the normalized speed of each finger. Average speed The average speed is used to generate the drone's speed control commands, ensuring the stability and controllability of the flight speed, and is then exponentially smoothed to obtain the current finger speed control value. The speed data, along with the flight direction, is sent to the UAV as a regular command for execution. Exponential smoothing is used to remove abrupt changes and noise in the speed data, resulting in a smoothed output speed control value. This ensures the stability and accuracy of speed control. The calculation method is as follows:

[0107] ,

[0108] In the above formula, i = 2, 3, 4, 5, which correspond to the bending angles from the index finger to the little finger, respectively; This represents the smooth speed at the current moment, which is used as the current finger speed control value for subsequent interaction logic or action control. The smoothing velocity is the value of the previous time step, and the smoothing coefficient is... In this embodiment, the preferred embodiment is... To balance responsiveness and stability.

[0109] It will be apparent to those skilled in the art that the present invention is not limited to the details of the exemplary embodiments described above, and that the invention can be implemented in other specific forms without departing from its spirit or essential characteristics. Therefore, the embodiments should be considered in all respects as exemplary and non-limiting, and the scope of the invention is defined by the appended claims rather than the foregoing description. Thus, all variations falling within the meaning and scope of equivalents of the claims are intended to be included within the present invention. No reference numerals in the claims should be construed as limiting the scope of the claims.

[0110] Furthermore, it should be understood that although this specification describes embodiments, not every embodiment contains only one independent technical solution. This narrative style is merely for clarity. Those skilled in the art should consider the specification as a whole, and the technical solutions in each embodiment can also be appropriately combined to form other embodiments that can be understood by those skilled in the art.

Claims

1. A somatosensory glove-based continuous speed spatial gesture control system for unmanned aerial vehicles, characterized by, The gesture data acquisition module, the data transmission module and the flight control execution module; the gesture data acquisition module includes a palm data acquisition module and a palm data solving module; The palm data acquisition module includes an inertial measurement module and a finger bending degree detection module, which are respectively used for acquiring the motion state data and the finger bending angle data of the palm in real time, and the motion state data includes acceleration data and angular velocity data; The palm data solving module receives the motion state data and the finger bending angle data, converts the motion state data into initial attitude quaternion, updates and normalizes it into current attitude quaternion, and sends the current attitude quaternion and the finger bending angle data to the flight control execution module as gesture data; The data transmission module establishes a communication connection between the flight control execution module and the gesture data acquisition module, and unidirectionally transmits gesture data to the flight control execution module; The flight control execution module receives and pre-processes the gesture data, calculates the thumb direction as the flight direction, the five-finger state vector and the current finger speed control amount, judges whether the five-finger state vector is a special instruction, generates corresponding flight control instructions according to the judgment result and sends them to the unmanned aerial vehicle, wherein the flight control instructions include special instructions and regular instructions, and the special instructions include take-off, emergency stop and landing; The flight control execution module generates regular instructions specifically as follows: The preprocessed finger bending angle data is defined as a bending angle vector B = [a2, a3, a4, a5] excluding the thumb, wherein a2, a3, a4, a5 respectively correspond to the bending angles of the index finger to the little finger; the upper and lower threshold values of the finger bending angle are set as a lower threshold value T low = 5° and an upper threshold value T high = 10°; the bending angle vector B excluding the thumb is normalized to the threshold range, the normalized speed s i of each finger is calculated, the average speed is calculated, and exponential smoothing is performed to obtain a current finger speed control amount S t , which is sent to the UAV together with the flight direction as a regular instruction for execution, and the calculation method is as follows: In the above formula, a i ∈ [0, 90], i = 2, 3, 4, 5, respectively corresponding to the bending angle of the index finger to the little finger; S t S represents the smoothed speed at the current time, S t-1 S is the smoothed speed at the last time, and the smoothing coefficient is a ∈ (0, 1).

2. The UAV continuous speed spatial gesture control system of claim 1, wherein: The flight control execution module includes a data filtering module and a gesture data solving module; The data filtering module pre-processes the received gesture data to remove noise and outliers; The gesture data solving module calculates the thumb direction as the flight direction according to the current attitude quaternion in the pre-processed gesture data; converts the finger bending angle data into a five-finger state vector, converts the finger bending angle data except the thumb into a finger speed control amount, finally judges whether the five-finger state vector is a special instruction, generates corresponding special instructions and regular instructions containing the current finger speed control amount and the flight direction according to the judgment result, and sends them to the unmanned aerial vehicle for execution.

3. The drone continuous speed spatial gesture control system of claim 2, wherein: The data filtering module adopts multi-stage filtering, and the multi-stage filtering includes median filtering and exponential moving average filtering.

4. The drone continuous speed spatial gesture control system of claim 1, wherein: The gesture data acquisition module adopts a somatosensory glove, and the data transmission module adopts low-power Bluetooth unidirectional communication.

5. A control method of the continuous speed spatial gesture control system of the UAV based on any one of claims 1-4, characterized in that, The method comprises the following steps: S1, real-time acquisition of acceleration data (a x ,a y ,a z ) and angular velocity data (ω x ,ω y ,ω z ) of the palm through the inertial measurement module on the somatosensory glove; real-time acquisition of finger bending angle data through the finger bending detection module; S2, the palm data solving module converts the acceleration data and the angular velocity data into initial attitude quaternion q, updates and normalizes it to obtain current attitude quaternion q', and sends the current attitude quaternion q' and the finger bending angle data to the flight control execution module as gesture data; S3, the flight control execution module receives the gesture data and pre-processes it, calculates the thumb direction as the flight direction according to the pre-processed current attitude quaternion, and converts the pre-processed finger bending angle data into a five-finger state vector S; S4, define the system running state and the special instruction vector table, compare the five-finger state S with the special instruction vector table to judge whether it is a special instruction; If yes, send the corresponding special instruction to the unmanned aerial vehicle for execution; If not, it is a regular instruction, and step S5 is entered; If not, it is a regular instruction, and step S5 is entered; S5, calculate the current finger speed control amount according to the preprocessed finger bending angle data, and send it and the flight direction as a regular instruction to the UAV for execution; The specific steps of the step S5 are: S51, define the preprocessed finger bending angle data as a bending angle vector B=[a2, a3, a4, a5] excluding the thumb, wherein a2, a3, a4, a5 correspond to the bending angles of the index finger to the little finger respectively; S52, the upper and lower limit thresholds of the finger bending angle are respectively a lower limit threshold T low = 5°, an upper limit threshold T high = 10°; S53, normalize the bending angle vector B of the fingers except the thumb to a threshold range, calculate the normalized speed s of each finger i , average speed and perform exponential smoothing to obtain the current finger speed control amount S t , and send it to the UAV as a regular instruction together with the flight direction, the calculation method is as follows: In the above formula, a i ∈ [0, 90], i = 2, 3, 4, 5, respectively corresponding to the bending angles of the index finger to the little finger; S t S represents the smoothed speed at the current time, S t-1 S is the smoothed speed at the last time, and the smoothing coefficient is a ∈ (0, 1).

6. The control method according to claim 5, characterized in that: The specific steps of the step S2 are: S21, define an initial quaternion o=[q0, q1, q2, q3] and initialize it as a unit quaternion as the initial reference attitude of the system, denoted as o=[q0, q1, q2, q3]=[1.0, 0.0, 0.0, 0.0], wherein q0 represents the angle data of rotation, and q1, q2, q3 represent the direction of acceleration; S22, normalize the collected acceleration data (a x ,a y ,a z ) to obtain acceleration direction unit vectors as q1, q2, q3, i.e. gravity direction unit vectors, for reflecting the posture change of the palm relative to the gravity direction, and convert the angular velocity unit of the angular velocity data (ω x ,ω y ,ω z ) as q0 to obtain an initial posture quaternion q; S23. Calculate the corresponding theoretical gravity direction vector (g x , g y , g z ) in the world coordinate system according to the initial attitude quaternion q. S24, calculate the difference between the normalized acceleration direction unit vector and the theoretical gravity direction vector under the current attitude as the attitude error (e x , e y , e z ); S25, calculate the differential terms of the initial attitude quaternion q, combine the complementary filtering proportion coefficient, and introduce the attitude error as a feedback item to update the initial attitude quaternion q, and then perform normalization processing to obtain the current attitude quaternion q'.

7. The control method according to claim 6, characterized in that: The normalization processing and the calculation formula of angular velocity unit conversion in the step S22 are respectively: The calculation formula of the gravity direction vector (g x , g y , g z ) in step S23 is: g x = 2(q1q3 - q0q2) g y = 2(q0q1+q2q3) The calculation formula of the attitude error (e x , e y , e z ) in step S24 is as follows. e x = a y g z - a y g z e y = a z g x - a x g z e z = a x g y - a y g x The calculation formula of the update and normalization of the initial attitude quaternion in the step S25 is: In the above formula, a norm The acceleration data is normalized, where ω represents the raw angular velocity data, ω′ ​​represents the unit-converted angular velocity data, and a x ,a y ,a z This represents the acceleration data before normalization, where q0, q1, q2, and q3 represent the terms in the initial attitude quaternion q. Let each of the terms be a differential term obtained by differentiating the terms within the initial attitude quaternion q. i " indicates that the i-th element in the initial pose quaternion q is updated. Let q' represent the i-th differential term in the initial attitude quaternion q, q'' represent the updated initial attitude quaternion, q0', q1', q2', q3' represent each term in the updated initial attitude quaternion, and K'' represent the terms in the updated initial attitude quaternion. p e represents the complementary filter scaling factor. i Δt represents the attitude error, and Δt represents the time interval.

8. The control method according to claim 5, characterized by: The steps in the step S3 are specifically: Preprocessing: S31, after median filtering the received gesture data in a period of time, perform exponential moving average filtering for smoothing processing, and dynamically adjust the weight coefficient; Calculate the thumb direction: S32, define the direction vector quaternion v = [0, v x ,v y ,v z ] of the thumb in the initial posture, set as the thumb points right, i.e. the positive X axis; S33, rotate the initial pose thumb direction vector quaternion v by the pre-processed current pose quaternion q' to obtain the direction vector v' of the thumb in the current pose v' = [0, v' x , v' y , v' z ] under the current pose, take the direction of the thumb in the current pose as the flight direction, and the calculation formula is: In the above formula, v x ,v y ,v z represents the direction of the thumb relative to the palm body coordinate system in the initial static posture, v′ x ,v′ y ,v′ z represents the direction of the thumb relative to the palm body coordinate system in the current posture; Transformation of five-finger state vector: S34, define the preprocessed finger bending angle data as a bending angle vector A=[a1, a2, a3, a4, a5], wherein a1, a2, a3, a4, a5 correspond to the bending angles of the thumb to the little finger respectively; S35, introduce hysteresis processing threshold θ bend = 45° and θ straight = 30°, generate state vector s using hysteresis processing i ∈ {0, 1}, finally represent the five-finger state vector as S = [s1, s2, s3, s4, s5, hysteresis processing is specific to: where t represents the current finger state, t-1 represents the last finger state, a i ∈ [0°, 90°], i = 1, 2, 3, 4, 5.

9. The control method according to claim 5, characterized by: The step S4 is specifically: System running state is defined as M t ∈ {Unlocked, Flying}, wherein Unlocked represents an unlocked state allowing receiving flight control instructions; Flying represents a flying state in which the UAV has taken off; Special instruction vector definition for take-off instruction: S takeoff = [0, 0, 1, 1, 1]; emergency stop instruction: S emergency = [0, 0, 0, 0, 0]; landing instruction: S land = [1, 0, 0, 0, 0]; If M t = Unlocked and S = S takeoff , then perform takeoff action and update state M t+1 = Flying; If M t = Flying and S ∈ {S emergency , S land}, then respectively perform the emergency stop or landing action; Otherwise, it is a regular instruction, and step S5 is entered, wherein t represents the current state, and t+1 represents the next state.

Citation Information

Patent Citations

  • Quadrotor gesture control device based on inertial sensor and control method thereof

    CN106293103A

  • Unmanned aerial vehicle gesture control method

    CN111124126A