A force feedback virtual reality glove based on a non-inductive FOC algorithm

By employing a non-invasive FOC algorithm and FPGA chip system in a virtual reality glove, low-cost, high-precision force feedback control was achieved, solving the problems of high price and unrealistic tactile experience of existing force feedback gloves, and improving the immersion and human-computer interaction experience in the virtual environment.

CN115390662BActive Publication Date: 2026-04-17EAST CHINA NORMAL UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
EAST CHINA NORMAL UNIV
Filing Date
2022-07-29
Publication Date
2026-04-17

AI Technical Summary

Technical Problem

Existing force feedback gloves are expensive and difficult to popularize, and the tactile experience is not realistic, failing to effectively reduce the perceptual gap between the virtual world and the real world.

Method used

The force feedback virtual reality glove employs a non-sensory FOC algorithm. By setting up an FPGA chip, MCU microcontroller, motor, and upper-level mechanism in the virtual world on the glove, a non-sensory FOC system is formed. Force feedback control of the five fingers is achieved using transmission rods and connecting ropes, combined with the non-sensory FOC algorithm for precise control.

Benefits of technology

It achieves low-cost, high-precision force feedback, enhances the user's immersion in the virtual environment, reduces the perceptual gap between the virtual and real worlds, and improves the human-computer interaction experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115390662B_ABST
    Figure CN115390662B_ABST
Patent Text Reader

Abstract

The application discloses a force feedback virtual reality glove based on non-inductive FOC, which is characterized by comprising a transmission rod, a rotating shaft, a link rope, a motor, an FPGA chip, an MCU single-chip microcomputer and a line communication module arranged on the glove and forming a non-inductive FOC system with an upper computer, wherein the upper computer inputs force feedback data of objects in a virtual world into the MCU single-chip microcomputer to configure parameters of the non-inductive FOC in the FPGA development board according to different objects in the virtual world, and finally controls the motor to realize accurate control of force feedback at fingers. Compared with the prior art, the application has the advantages of simple structure, low manufacturing cost, realistic feeling of holding objects in the virtual world in the real world, more realistic tactile experience, improved human-computer interaction experience, and is especially suitable for reducing the perception gap between the virtual world and the real world, and is an ideal VR virtual device.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of virtual reality technology application technology, specifically a force feedback virtual reality glove based on the non-sensory FOC algorithm. Background Technology

[0002] In recent years, discussions about the metaverse have been gaining momentum, with people increasingly drawn to it, leading to a surge in demand for devices that connect the virtual and real worlds. The metaverse originated with the concepts of "Metaverse" and "Avatar" mentioned in the 1992 science fiction novel *Snow Crash*. In the "Metaverse," people can have their own virtual avatars; this virtual world is called the "metaverse." A widely accepted source of the idea for the metaverse is American mathematician and computer scientist Professor Vernor Vinge, who creatively conceived of a virtual world accessed and experienced through a brain-computer interface in his 1981 novel *True Names*. Essentially, the metaverse is a process of virtualizing and digitizing the real world, requiring significant modifications to content production, economic systems, user experience, and physical world content.

[0003] Force feedback gloves are devices that connect the virtual and real worlds, allowing users to experience the feel of objects in the virtual world within the real world. Existing force feedback gloves utilize "air muscles," a type of transmission device that is compact, lightweight, simple, and easy to operate, integrating sensors and position controllers; however, they are relatively expensive. Another type uses an exoskeleton that reflects force, allowing users to experience the size and shape of computer-generated 3D objects in a simulated virtual world. In 2021, a force feedback glove using inflatable airbags to create tactile stimulation was proposed. By inflating and deflating the airbags, the pressure within the airbags is changed, generating various desired tactile stimuli.

[0004] The three different force feedback gloves mentioned above are implemented in different ways, but they are all very expensive and difficult to popularize. Summary of the Invention

[0005] The purpose of this invention is to provide a force feedback virtual reality glove based on a non-sensory FOC algorithm to address the shortcomings of existing technologies. The non-sensory FOC system is constructed by integrating an FPGA chip, an MCU microcontroller, motors, and a host computer in the virtual world onto the glove. The motors are located at the fingers on the back of the hand, and force feedback control of the five fingers is achieved through transmission rods and connecting lines. The host computer inputs the force feedback data of different objects in the virtual world into the non-sensory FOC algorithm in the MCU microcontroller for parameter configuration, controlling the motors to achieve precise control of the force feedback at the fingers. This non-contact force feedback virtual reality glove features a simple structure, good wearability, lightweight design, and low manufacturing cost. Users experience the feel of objects in the virtual world within the real world, with a more realistic tactile experience. This enhances the immersive experience when interacting with the virtual environment, providing feedback during hand-to-hand interaction and a more realistic tactile sensation. This helps users complete tasks more immersively in the virtual environment, improving the human-computer interaction experience. It is particularly suitable for reducing the perceptual gap between the virtual and real worlds. With its simple structure and low manufacturing cost, it is an ideal VR device with excellent application prospects and a promising market.

[0006] The specific technical solution to achieve the purpose of this invention is: a force feedback virtual reality glove based on a non-sensory FOC algorithm, characterized in that the force feedback virtual reality glove is composed of a transmission rod, a rotating shaft, a connecting rope, a motor, an FPGA chip (FPGA development board), an MCU microcontroller, a wireless communication module, and a lithium battery. The transmission rod consists of three hollow rods of unequal lengths connected by two rotating shafts; the rotating shaft is a connecting shaft set on the bent transmission rod; the transmission rod is set on each finger on the back of the glove to simulate the movement of finger joints; the motor is set on the back of the hand at each finger and is connected to the FPGA development board by a signal line; one end of the connecting rope is fixed to the top of the transmission rod, and the other end is wrapped around the rotating shaft of the motor. The MCU microcontroller is connected to the FPGA development board and the wireless communication module respectively; the lithium battery powers the FPGA development board, the MCU microcontroller, and the wireless communication module; the wireless communication module inputs the force feedback data of objects in the virtual world collected by the host computer into the MCU microcontroller; the MCU microcontroller configures the sensorless FOC algorithm in the FPGA development board through the force feedback data of objects in the virtual world transmitted by the host computer to realize parameter control of the sensorless FOC; the FPGA development board performs the sensorless FOC algorithm on the input motor parameters, and the calculation result controls the operation of each motor through the signal line, and realizes the force feedback control of the five fingers through the transmission rod and connecting rope, so that the user's hand can feel the force feedback effect.

[0007] The motor is used to control the transmission rod. By receiving SVPWM waves corresponding to different virtual objects, it provides different force feedback control to the five fingers. The angle imitates the size and shape of the virtual object, and the speed imitates the rebound of the virtual object, thereby simulating the softness and hardness of the virtual object.

[0008] The transmission rod is used to apply the force feedback of the motor to the finger. The end of the transmission rod is equipped with a connecting rope that connects to the motor. The force feedback of the motor can be transmitted to the finger through the connecting rope, so that the finger can feel the objects in the virtual world.

[0009] The host computer is equipped with virtual world software, which is used to match the force feedback data of objects in the virtual world collected in reality with the force feedback data of objects in the virtual world, and to transmit the parameters of objects in the virtual world to the MCU microcontroller.

[0010] The MCU microcontroller is used to control the sensorless FOC algorithm in the FPGA development board. The sensorless FOC algorithm requires configuration of motor parameters, motor flux, resistance value and inductance value. Different configurations are required when using different motors. At the same time, the MCU microcontroller needs to transmit the parameters of objects in the virtual world received from the host computer to the FPGA development board as the control quantity of the sensorless FOC algorithm.

[0011] In addition to controlling the sensorless FOC algorithm in the FPGA development board, the MCU microcontroller also needs to filter the sampled data in the sampling mode of the glove, and transmit the sampled force feedback data to the host computer after Kalman filtering.

[0012] The FPGA development board is used to program the sensorless FOC algorithm. The sensorless FOC algorithm can be computed faster on the FPGA development board. Compared with the commonly used FOC algorithm running on a microcontroller, the FPGA has the advantage of faster operation. Moreover, compared with the traditional FOC algorithm, the sensorless FOC algorithm uses an extended Kalman filter instead of a traditional sensor. The extended Kalman filter involves matrix calculations, and the FPGA development board can accelerate the matrix calculations. Compared with the serial calculation of a microcontroller, the parallel calculation mode of the FPGA development board can run the Kalman filter faster, enabling the sensorless FOC to be calculated faster. After the calculation is completed, an SVPWM wave is output to control the motor.

[0013] The sensorless FOC algorithm is programmed onto the FPGA development board and includes a PID algorithm module, a Park transform module, an inverse Park transform module, a Clark transform module, an SVPWM generation module, and an extended Kalman filter module. The sensorless FOC algorithm is primarily used for pixel-level control of the motor, resulting in better performance and more precise force feedback in the force feedback glove. The FOC algorithm enables smoother motor rotation and higher motor efficiency. Using the sensorless FOC algorithm makes the force feedback feel more realistic. Compared to other traditional motor control methods, such as the six-step commutation method, it eliminates the jerking during commutation, making the force feedback feel more authentic.

[0014] The sensorless FOC algorithm comprises several modules used to perform closed-loop calculations. Three PID algorithm modules are applied to the closed-loop control of the speed, position, and current loops, calculating and correcting the motor's state based on the current state and the input target state. The inverse Park transform module converts the control voltage vector output from the PID algorithm modules (based on the DQ coordinate system) to the αβ coordinate axis. The SVPWM generation module converts the voltage vector control quantity generated by the inverse Park transform module in the αβ coordinate axis direction into an SVPWM wave for controlling the motor. The Clark transform module converts the sampled three-phase current during motor operation into... The current is a two-phase current. The Park transform module transforms the two-phase current obtained by the Clark transform module from the αβ coordinate axis to the DQ coordinate system. The generated current vector will be used as the current loop feedback input of the sensorless FOC algorithm. The PID module is used to complete the closed-loop calculation of the current loop. The extended Kalman filter module is used to detect the current angle and speed of the motor. It takes the current vector output by the Clark transform module as the measured quantity and the voltage control vector generated by the PID algorithm module used to calculate the current loop as the control quantity input. It outputs the running speed and current angle of the motor. The output results are input to the PID algorithm module for closed-loop calculation of the angle loop and speed loop.

[0015] The sensorless FOC algorithm has two operating modes: a normal operating mode where all modules are activated to complete the full closed-loop calculation of sensorless FOC; and a sampling mode. When the force feedback control glove is sampling, the three PID algorithm modules, the inverse Park transform module, the SVPWM generation module, and the Park transform module are all disabled. Only the Clark transform module and the extended Kalman filter module are enabled to sample the motor's motion state.

[0016] The sensorless FOC algorithm can achieve synchronous control of the motors controlling the five fingers in the FPGA development board. By utilizing the parallel computing characteristics of the FPGA development board, the sensorless FOC algorithm can be calculated more quickly while simultaneously sampling and controlling the five fingers synchronously.

[0017] The specific steps for using the force feedback virtual reality glove in virtual reality are as follows:

[0018] Step 1: Wear the force feedback glove to grasp real-world objects. The force feedback information of the objects is collected through the sampling mode of the non-sensory FOC algorithm, stored, and paired with objects in the virtual world.

[0019] Step 2: After inputting the force feedback information of the virtual object, when using it, the user grabs the object in the virtual world, and the host computer transmits different force feedback data to the MCU microcontroller based on the different objects.

[0020] Step 3: The MCU microcontroller transmits the received force feedback data to the FPGA development board for configuring the sensorless FOC algorithm. The force feedback data includes angle and velocity, which are the external input quantities of the angle loop and velocity loop.

[0021] Step 4: The sensorless FOC is continuously performed in a closed loop in the FPGA development board. When the user's hand posture changes, such as releasing or gripping, the current operating state of the motor will be changed according to the different force feedback data.

[0022] Step 5: The FPGA development board outputs an SVPWM wave to input into the three-phase full-bridge circuit to control the motor's operation.

[0023] Before using the force feedback virtual reality glove, force feedback data needs to be recorded. The user needs to wear the glove and grasp different objects in the real world to obtain a series of force feedback data. The entire process of the user grasping the same object is sampled using a 240MHz clock, and the force feedback data of the entire grasping process is sampled. In some cases, it is not necessary to record force feedback data of real objects, such as the trigger of a pistol in a game, where the given force feedback data can be used directly to control the operation of the motor.

[0024] Depending on the type of motor used, the force feedback virtual reality glove requires resampling for the same object, as different motors produce different force feedback data.

[0025] During sampling, the force feedback virtual reality glove operates only in the extended Kalman filter module and the Clark transform module of the sensorless FOC algorithm on the FPGA development board. The control input of the extended Kalman filter is 0, that is, the input Vα and Vβ are 0. The extended Kalman filter module calculates and outputs the motor's operating speed and angle to the MCU microcontroller to complete the sampling.

[0026] To prevent inaccurate force feedback data measurement, this invention requires multiple measurements when measuring the force feedback data of real-world objects. Furthermore, the entire gripping time must not be less than the specified minimum sampling period. The gripping process involves varying degrees of pressure, from light to firm, to collect information about the object's hardness or softness. To suppress sampling errors, the sampled data undergoes Kalman filtering in the MCU microcontroller. The processed data is then transmitted to a host computer, which matches the force feedback data with objects in the virtual world and stores it.

[0027] During sampling, the force feedback virtual reality glove synchronously processes the sampling data of the five fingers and synchronously samples the force feedback data of the five motors that control the force feedback of the user's fingers.

[0028] In step three, the MCU microcontroller will transmit the force feedback data of the next frame to the FPGA development board according to the current speed and angle of the motor, so that the user can release or grip the virtual object at any time.

[0029] Compared with the prior art, the present invention has the following beneficial technical effects and significant technical progress:

[0030] 1) Sampling force feedback data of objects in the real world before use can better realize the force feedback effect of virtual objects, making the difference between the user experience and the real world smaller.

[0031] 2) The sensorless FOC algorithm was implemented using an FPGA development board, which can simultaneously perform calculations for five fingers and control and sample five motors in parallel.

[0032] 3) The adoption of a sensorless FOC algorithm can reduce the limitations of sensor accuracy and the high cost of high-precision sensors;

[0033] 4) The sensorless FOC algorithm can be configured using an MCU microcontroller to adapt to more motors, allowing five fingers to use different motors to achieve different feedback effects, and different motors can be flexibly replaced according to changes in the usage scenario;

[0034] 5) Using a motor to achieve force feedback can effectively reduce the high price of force feedback gloves currently on the market. Furthermore, using the sensorless FOC algorithm to control the motor can achieve pixel-level control of the motor, making the motor operation smoother and more in line with the feeling of grasping objects in reality. In addition, the FOC algorithm can reduce noise and vibration when the motor is running, allowing users to be more immersed in the virtual world. Attached Figure Description

[0035] Figure 1 This is a schematic diagram of the force feedback glove of the present invention;

[0036] Figure 2 This is a schematic diagram of the transmission rod and the motor.

[0037] Figure 3 This is a block diagram of the force feedback glove of the present invention;

[0038] Figure 4 This is a block diagram of the program in an MCU microcontroller.

[0039] Figure 5 This is a block diagram of the program in the FPGA development board;

[0040] Figure 6 The flowchart for the sensorless FOC algorithm;

[0041] Figure 7 This is a flowchart illustrating the process of force feedback glove sampling.

[0042] Figure 8 A flowchart illustrating the process of a force feedback glove. Detailed Implementation

[0043] See Figure 1This invention comprises a transmission rod 1, a rotating shaft 2, a connecting rope 3, a motor 4, an FPGA chip 6 (FPGA development board), an MCU microcontroller 7, a wireless communication module 8, and a lithium battery 9, all mounted on a glove. The transmission rod 1 is positioned on the back of each finger to simulate finger joint movement. The motor 4 is mounted on the back of the hand at each finger and connected to the FPGA development board 6 via a signal line 5. The connecting rope 3 is a nylon rope, with one end fixed to the top of the transmission rod 1 and the other end wound around the rotating shaft of the motor 4. The MCU microcontroller 7 is connected to both the FPGA development board 6 and the wireless communication module 8. The lithium battery 9 is an FPGA chip 6. The development board 6, MCU microcontroller 7, and wireless communication module 8 are powered. The wireless communication module 8 inputs the force feedback data of objects in the virtual world collected by the host computer into the MCU microcontroller 7. The MCU microcontroller 7 configures the sensorless FOC algorithm in the FPGA development board 6 through the force feedback data of objects in the virtual world transmitted by the host computer to realize the parameter control of the sensorless FOC. The FPGA chip 6 performs the sensorless FOC algorithm on the input motor 4 parameters. The calculation result controls the operation of each motor 4 through the signal line 5, and realizes the force feedback control of the five fingers through the transmission rod 1 and the connecting rope 3, so that the user's hand can feel the force feedback effect.

[0044] See Figure 2 The transmission rod 1 consists of three hollow rods of unequal lengths connected by two rotating shafts 2; the rotating shaft 2 is a connecting shaft set in the bend of the transmission rod 1; the connecting rope 3 is a nylon rope, one end of which is fixed to the top of the transmission rod 1, and the other end is wrapped around the rotating shaft of the motor 4.

[0045] This invention designs a force feedback glove based on pixel-level control of motor 4 using a sensorless FOC algorithm. It achieves precise control of the glove's force feedback through the inexpensive motor 4, MCU microcontroller 7, and FPGA development board 6. First, force feedback data from objects in the real world is collected—specifically, the rotation angle and speed of each motor 4 when gripping a real object. This data is collected using the sensorless FOC algorithm and stored in the host computer corresponding to the virtual objects. After data collection, when the force feedback glove is used, the host computer transmits control signals to the microcontroller controlling the sensorless FOC algorithm based on the different objects in the virtual world. These control signals include angle, speed, and current values. The angle control controls the rotation angle of motor 4 to simulate the size of the virtual object, while the speed control controls the rotation speed of motor 4 to simulate the rebound speed of the virtual object, thus reflecting the object's hardness or softness. When the FPGA development board 6 receives the control signal from the MCU microcontroller 7, the sensorless FOC algorithm in the FPGA development board 6 begins generating SVPWM waves to control motor 4. First, the position loop is calculated by performing PID calculations on the position control quantity and the current rotational position of motor 4. Second, the speed loop is calculated by performing PID calculations on the input speed control quantity and the current speed of the motor. Third, the current loop is calculated by comparing the calculated current control quantity with the current value of the clicked element. Finally, after inverse Park transform and SVPWM generation, the SVPWM wave controlling motor 4 is obtained. Then, the FPGA development board 6 outputs the SVPWM wave to motor 4. Motor 4, through the transmission rod 1 and connecting rope 3, provides force feedback to the user's hand, allowing the user to experience the tactile sensation of objects in the virtual world.

[0046] The present invention will be further described in detail below with reference to specific embodiments and accompanying drawings. Except for the contents specifically mentioned below, the processes, conditions, and experimental methods for implementing the present invention are all common knowledge and general knowledge in the art, and the present invention does not have any particular limitations.

[0047] Example 1

[0048] See Figure 3In sampling mode, the user's hand movements drive motor 4, transmitting motor 4 data to the FPGA development board 6. After calculation, the force feedback data is transmitted to the sampling module in the MCU microcontroller 7. After processing, it is transmitted to the host computer to match with objects in the virtual world and then stored. In working mode, the host computer retrieves the force feedback data matched with objects in the virtual world from the memory and transmits it to the working module of the MCU microcontroller 7. After processing, the force feedback data applied to motor 4 is transmitted to the FPGA development board 6. The FPGA development board 6 outputs an SVPWM wave through a sensorless FOC algorithm, which is converted by a three-phase full-bridge circuit to control motor 4, causing motor 4 to drive the connecting rope 3 and thus achieve the force feedback effect through the transmission rod 1.

[0049] The force feedback glove based on non-contact FOC proposed in this invention relies on a transmission rod 1 and a motor 4 to complete the force feedback control of the fingers. The rotation of the motor 4 causes the tension of the connecting rope 3 in the transmission rod 1 to make the fingers feel the force feedback effect. When the user puts on the glove for the first time, they need to open their palm and clench their fist in sampling mode to initialize the glove, so that the glove can be configured differently according to different users.

[0050] This invention includes force feedback data for some common virtual objects, while also supporting user-defined objects. Users can add force feedback data for virtual objects through input or sampling. The force feedback data includes force feedback data for a complete grasping cycle, that is, force feedback data for the entire process of "touching," "grabbing," "squeezing," and "releasing." One force feedback cycle requires no less than 125 sets of force feedback data, and each set of force feedback data should include the angle and speed values ​​of the force feedback control motor 4 for the five fingers.

[0051] This invention requires multiple measurements when sampling and recording force feedback data, with a sampling time of no less than 10 seconds. The sampling process should include the entire process of grasping the object, namely, the entire process of "touching," "grabbing," "gripping," and "releasing." After recording force feedback data at least three times, the MCU microcontroller 7 can process the data using a Kalman filter algorithm and then transmit it to the host computer for storage and matching with objects in the virtual world.

[0052] When a user uses the glove, the glove synchronously controls the motors 4 of the five fingers by different gripping objects. Simultaneously, based on the current gripping state, it determines whether to release or tighten the gripping data for the next transmission, and then transmits the next force feedback data. This step is completed by the MCU microcontroller 7. The loop function in the MCU microcontroller 7 receives, judges, and processes the current angle and speed values ​​of the motors 4 sampled by the FPGA development board 6 to determine whether the user wants to "tighten" or "release" the virtual object. The MCU microcontroller 7 performs individual judgments on each of the five fingers, and after judgment, simultaneously transmits the force feedback control data of the five fingers to the FPGA development board 6 for control of the motors 4 using a sensorless FOC algorithm.

[0053] When a user grasps an object, their fingers bend, causing the connecting rope 3 in the transmission rod 1 to extend. However, when the user's hand has not yet touched the object, the fingers should not experience force feedback. Therefore, the MCU microcontroller 7 sets a threshold based on the object's size and the user's initial sampling data, fixing the angle of the motor 4 at that threshold. When the user does not touch the object or grasp it, the motor 4 will not rotate, and the connecting rope 3 in the transmission rod 1 will always remain slack, so no matter how the user's fingers bend, they will not experience force feedback. For example, when the user is not grasping an object, the motor 4 will always rotate at its maximum angle. The MCU microcontroller 7 sets the threshold to the angle value when the user clenches their fist. When grasping an object, the threshold is set according to the size and shape of the object. This provides a more realistic user experience and reduces the power consumption of the force feedback glove during operation.

[0054] See Figure 4 The MCU microcontroller 7 has two modes: sampling mode and working mode. In sampling mode, the MCU microcontroller 7 receives the force feedback data transmitted from the FPGA development board 6, performs Kalman filtering to remove glitches, and then stores the data in the internal storage module of the MCU microcontroller 7. After the acquisition is completed, all the force feedback data is transmitted to the host computer as a complete force feedback data packet. In working mode, the MCU microcontroller 7 receives the force feedback data packet from the host computer, stores it in the internal storage space of the MCU microcontroller 7, and after judging the current state of the motor 4 and the force feedback data in the memory, it retrieves the appropriate force feedback data from the force feedback data packet and outputs it to change the next state of the motor 4.

[0055] The MCU microcontroller 7 has two main functions. The first function is used when collecting and inputting force feedback data. Its main function is a loop function that continuously performs Kalman filtering to process the collected data, making the force feedback data smoother. The second function is used when outputting force feedback data to the FPGA development board 6. It is used to configure the sensorless FOC algorithm in the FPGA development board 6. Its main function is also a loop function. After receiving the motor 4 status information returned by the FPGA development board 6, it makes a judgment and then transmits the next frame of force feedback data to the FPGA development board 6.

[0056] The FPGA development board 6 implements the core of this invention – the sensorless FOC algorithm. Unlike the traditional method of implementing the sensorless FOC algorithm on a microcontroller, this invention implements the sensorless FOC algorithm on the FPGA development board 6 because the force feedback glove needs to simultaneously control the force feedback of all five fingers. Even if the microcontroller's operating speed is fast enough, the serial computation of the MCU will still cause varying degrees of delay in the five fingers. If this delay is added, it will reduce the accuracy and speed of the FOC algorithm in controlling the motors. Therefore, using the FPGA development board 6 to implement the sensorless FOC algorithm can effectively solve these problems. The parallel computing advantage of the FPGA development board 6 can be used to accelerate matrix calculations in the extended Kalman filter algorithm and can also perform parallel computation of five sets of FOC algorithm data to achieve synchronous control of the five motors.

[0057] When the force feedback glove proposed in this invention performs sensorless FOC algorithm calculations using an FPGA development board 6, a pipelined approach is adopted to accelerate the calculation. This invention employs a three-stage pipeline for sensorless FOC algorithm calculations. The first stage pipeline consists of three PID algorithm modules used for control calculations of the speed loop, angle loop, and current loop. The second stage pipeline consists of an inverse Park transform module and an SVPWM generation module used to generate SVPWM waves. The third stage pipeline consists of an inverse Clark transform module, a Park transform module, and an extended Kalman filter module used to calculate the feedback signal, completing the calculation of the feedback loop of the sensorless FOC algorithm.

[0058] See Figure 5 The top-level module of the sensorless FOC algorithm programmed into the FPGA development board 6 is the control module. The control module is first used to control the three-stage pipeline mentioned above, and secondly, it is used to control the sensorless FOC algorithm, which is reconfigured based on the different working modes of the force feedback glove proposed in this invention.

[0059] See Figure 6The force feedback glove proposed in this invention has a sampling mode and a working mode. In sampling mode, the sensorless FOC algorithm is used to sample the motion state of motor 4. Only the necessary Clark transform module and extended Kalman filter module need to be enabled, while the three PID algorithm modules, inverse Park transform module, Park transform module, and SVPWM generation module are disabled. This reduces unnecessary calculations, lowers power consumption, and improves calculation speed. In sampling mode, the sensorless FOC algorithm does not operate in a pipelined manner. In working mode, the top-level control module controls the closed-loop calculation of the complete sensorless FOC algorithm, i.e. Figure 6 The entire closed-loop process is shown, and the control module controls the sensorless FOC algorithm to work in a pipeline manner.

[0060] The FPGA development board 6, used as the top-level control module for controlling the operation of the sensorless FOC algorithm, is not only used for mode switching of a single sensorless FOC algorithm and operation control of the pipeline mode, but also for processing data from five sensorless FOC algorithm modules. Since the force feedback glove proposed in this invention requires synchronous control of five fingers, the force feedback data from the five motors 4 needs to be processed synchronously. Therefore, the top-level control module needs to synchronously input data from the five sensorless FOC algorithm modules to the sensorless FOC algorithm modules or synchronously receive data from the five sensorless FOC algorithm modules. In sampling mode, the top-level control module synchronously receives the force feedback data sampled by the five sensorless FOC algorithm modules and synchronously outputs it to the MCU microcontroller 7. In operating mode, the top-level control module synchronously inputs the force feedback data of the five fingers transmitted by the MCU microcontroller 7 to the five sensorless FOC algorithm modules controlling the five motors 4, enabling the motors 4 controlling the five fingers to synchronously control the five fingers.

[0061] The force feedback glove based on the non-sensory FOC algorithm proposed in this invention transmits the force feedback data of the empty hand to the FPGA development board 6 when the glove is in sleep mode, keeping the motor 4 at its maximum rotation angle and ensuring that the connecting rope 3 between the user's fingers and the motor 4 remains slack. This prevents the user from being affected by the glove when it is not in use. When the glove is closed, the MCU microcontroller 7 transmits the force feedback data of the empty hand to the FPGA development board 6, keeping the motor 4 at its maximum rotation angle and ensuring that the connecting rope 3 between the user's fingers and the motor 4 remains slack. This ensures that putting on and taking off the glove does not affect the user.

[0062] See Figure 7In the force feedback glove sampling method based on the non-sensory FOC algorithm proposed in this invention, the MCU microcontroller 7 first transmits the force feedback data of the empty hand to the FPGA development board 6. Even if the motor 4 maintains a fixed angle, the connecting rope 3 linking the user's fingers to the motor 4 remains slack, so the user is not subjected to the force feedback of the glove. Then, the user gently grasps the object to be sampled, and the sampling mode is started from the host computer. The connecting rope 3 of the five fingers rotates at a speed of 5 rad / s. The sampler maintains the posture of grasping the object to be sampled. When the MCU microcontroller 7 detects that the motor 4 is no longer rotating, the motor 4 stops rotating. At the same time, the force feedback data begins to be read by the non-sensory FOC algorithm in the FPGA development board 6 and processed in the MCU microcontroller 7. When the user feels that the force feedback glove is no longer rotating, the force feedback data recording of the entire process of "touching", "grabbing", "gripping" and "releasing" can begin. The recording is completed after repeating more than three times. The user closes the sampling mode on the host computer, and the host computer matches and stores the feedback data transmitted back by the MCU microcontroller 7 during the sampling process with the virtual object.

[0063] See Figure 8 When using the force feedback glove based on the non-sensory FOC algorithm proposed in this invention, the user first grasps an object in the virtual world. When the user is not grasping an object, the MCU microcontroller 7 transmits the force feedback data of the empty hand to the FPGA development board 6. That is, the motor 4 maintains a fixed angle, and the connecting rope 3 linking the user's fingers to the motor 4 is always in a slack state, so the user is not subjected to the force feedback of the glove. When the user grasps an object in the virtual world, the MCU microcontroller 7 receives a set of force feedback data transmitted from the host computer, and then transmits the first set of force feedback data to the FPGA development board 6 to control the motor 4 to produce a force feedback effect. It also receives the current state value of the motor 4 transmitted back from the FPGA development board 6, determines which process the user's grasp is in, and then extracts the next frame of force feedback data from the force feedback data and transmits it to the FPGA development board 6. For example, if the user continuously grips the virtual object, the MCU microcontroller 7 will transmit the force feedback data according to the "gripping" stage to the FPGA development board 6. When the user "releases" the object, the MCU microcontroller 7 will transmit the force feedback data of the "releasing" stage to the FPGA development board 6.

[0064] See Figure 1In the force feedback glove structure based on the sensorless FOC algorithm proposed in this invention, the transmission rod 1 is hollow inside, with an inner diameter of 1mm and an outer diameter of 2mm; the rotating shaft 2 is located at the bend of the transmission rod 1 to match the joints of the human fingers; the connecting rope 3 is a thin line connecting the motor 4 and the transmission rod 1, with a length of 15cm, a wire diameter of 0.235mm, and a nylon material; the motor 4 is a brushless motor that controls the force feedback of the fingers, and different models of motors can be selected according to different objects held in the virtual world; the signal line 5 transmits three-phase current; the MCU microcontroller 7 is an STM32F104; the FPGA chip 6 is an FPGA chip loaded with the sensorless FOC algorithm, and its model is GW1N; the lithium battery 8 provides power to this glove, consisting of two AA batteries.

[0065] See Figure 2 The motor 4 provides force feedback for the contraction and tension of the connecting rope 3; the connecting rope 3 is a nylon thread that transmits the force feedback; the transmission rod 1 is a transmission rod that controls the direction of the force applied by the connecting rope 3; and the rotating shaft 2 is a bend in the transmission rod 1 at the finger joint.

[0066] See Figure 1 When a user uses the force feedback glove, the MCU microcontroller 7 first connects to the host computer via WiFi or Bluetooth. After connection, the host computer transmits the force feedback data of objects in the virtual world to the MCU microcontroller 7. The MCU microcontroller 7 compares this data with the real-time monitoring data of the motor 4 and then transmits the angle and speed information for controlling the motor 4 to the FPGA chip 6. The sensorless FOC algorithm in the FPGA chip 6 receives the control information, calculates the parameters, and outputs an SVPWM wave to control the precise operation of the motor 4. When the user gradually increases the grip, the torque of the motor 4 increases, the connecting rope 3 tightens, and the user feels the feedback force. When the user relaxes the grip, the torque of the motor 4 decreases, the connecting rope 3 loosens, and the user feels a decrease in the feedback force.

[0067] The scope of protection of this invention is not limited to the above embodiments. Any variations and advantages that can be conceived by those skilled in the art without departing from the spirit and scope of this invention are included in this invention and are protected by the appended claims.

Claims

1. A force feedback virtual reality glove based on a non-inductive FOC algorithm, characterized in that, This force feedback virtual reality glove consists of a transmission rod, a rotating shaft, a connecting rope, a motor, an FPGA chip, an MCU microcontroller, a wireless communication module, and a lithium battery. The transmission rod comprises three hollow rods of unequal length connected by two rotating shafts. The rotating shaft is a connecting shaft located at the bend of the transmission rod. The transmission rod is positioned on the back of each finger on the glove to simulate the movement of finger joints. The motor is located on the back of the hand at each finger and is connected to the FPGA chip via a signal line. One end of the connecting rope is fixed to the top of the transmission rod, and the other end is wound around the rotating shaft of the motor. The wireless communication module inputs force feedback data collected by the host computer into the MCU microcontroller, which then configures the parameters of the sensorless FOC algorithm in the FPGA chip. The FPGA chip performs a sensorless FOC algorithm on the input motor parameters, and the calculation result controls the operation of each motor via the signal line. Through the transmission rod and connecting rope, precise control of the force feedback for each finger is achieved, allowing the user's hand to feel the force feedback effect. The MCU microcontroller acts as the controller for the sensorless FOC algorithm in the FPGA chip, controlling and configuring the parameters of the sensorless FOC algorithm. This allows the sensorless FOC algorithm in the FPGA chip to adapt to different usage scenarios. The sensorless FOC algorithm adopts a pipelined implementation, enabling the FOC algorithm to perform more control over the motor within one clock cycle, resulting in smoother motor operation. The FPGA chip has five FOC algorithm modules, with the top-level module controlling the operation of each motor. The sensorless FOC algorithm includes a PID algorithm module, a Park transform module, an inverse Park transform module, a Clark transform module, an SVPWM generation module, and an extended Kalman filter module; The force feedback virtual reality glove has a sampling mode and a working mode. In sampling mode, the sensorless FOC algorithm is used to sample the motion state of the motor. Only the necessary Clark transform module and extended Kalman filter module need to be enabled, while the three PID algorithm modules, inverse Park transform module, Park transform module, and SVPWM generation module are disabled to reduce unnecessary calculations, reduce power consumption, and improve calculation speed. In sampling mode, the sensorless FOC algorithm does not operate in a pipelined manner. In working mode, the top-level control module controls the closed-loop calculation of the complete sensorless FOC algorithm, and the control module controls the sensorless FOC algorithm to operate in a pipelined manner. The FPGA chip's top-level control module, used to control the operation of the sensorless FOC algorithm, is used not only for mode switching of a single sensorless FOC algorithm and for pipeline operation control, but also for processing data from five sensorless FOC algorithm modules. In sampling mode, the top-level control module synchronously receives the force feedback data sampled by the five sensorless FOC algorithm modules and outputs it synchronously to the MCU microcontroller. In operating mode, the top-level control module synchronously inputs the force feedback data of the five fingers transmitted by the MCU microcontroller to the five sensorless FOC algorithm modules that control the five motors, enabling the motors controlling the five fingers to synchronously control the five fingers.

2. The force feedback virtual reality glove based on the non-inductive FOC algorithm of claim 1, wherein, The specific steps for using the force feedback virtual reality glove in virtual reality are as follows: Step 1: Use force feedback virtual reality gloves to grasp different objects in the real world and collect the rotation speed and angle data of the motor as force feedback data for the virtual objects; Step 2: The host computer transmits force feedback data corresponding to different objects in the virtual world to the MCU microcontroller; Step 3: The MCU microcontroller transmits the force feedback data obtained from the host computer to configure the sensorless FOC algorithm in the FPGA chip; Step 4: The FPGA chip outputs the SVPWM wave to control the motor after passing the input configuration parameters through the sensorless FOC algorithm; Step 5: The motor adjusts its speed and position through the SVPWM wave output by the FPGA chip, so that the fingers can feel the force feedback.

3. The force feedback virtual reality glove based on the sensorless FOC algorithm according to claim 1 or claim 2, characterized in that, Before using the force feedback virtual reality glove, force feedback data of the object needs to be collected. During collection, the object to be collected should be held first, and then the rotation angle and speed of the motor should be recorded as the force feedback data of the virtual object. After collecting the force feedback data of the required object, it is matched with the object in the virtual world. When the user grabs the object in the virtual world, the host computer can input the force feedback data of the real object corresponding to the virtual object into the MCU microcontroller through the wireless communication module. The force feedback virtual reality glove has two modes: sampling and use.

Citation Information

Patent Citations

  • Force feedback glove and control method

    CN114779943A

  • Glove, feedback device and method, remote control system, method and device, and medium

    WO2019063815A1