Virtual contact effect rendering method and multi-actuator coordinated haptic feedback mouse device
Patent Information
- Application Number
- CN202611222519.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-12
- Publication Date
- 2026-10-13
AI Technical Summary
[0006]本发明提供一种虚拟接触效果渲染方法及多执行器协同的触觉反馈鼠标装置,以解决现有振动触觉反馈鼠标主要依靠单一振动通道表达多种虚拟交互信息,导致操作方向、表面纹理、可穿越阻碍、路面颠簸和硬碰撞之间不易区分的问题,并解决持续事件容易干扰短时事件的问题
[0046]本发明具有以下有益效果。方向性振动执行器和纹理振动执行器分别承担操作方向信息和接触表面信息,利用执行器的空间位置和互斥输出减少方向信息与纹理信息的混淆。不同道路表面通过不同振动频率和波形幅值表达,使用户操控对象连续运动时仍能获得可区分的表面纹理反馈。
Smart Images

Figure CN122902879A_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of human-computer interaction haptic feedback technology, specifically relating to a virtual contact effect rendering method and a haptic feedback mouse device with multi-actuator collaboration. Background Technology
[0002] Vibrational haptic feedback can convey operational status and virtual environment information to users through vibration actuators installed in interactive devices. Existing consumer-grade interactive devices typically use eccentric rotating mass vibratory motors or linear resonant actuators to generate vibrations, and different haptic cues are created by changing the start-stop time, vibration intensity, or vibration frequency.
[0003] Regarding haptic feedback mice, international patent application WO2016088972A1 discloses a real-time haptic feedback vibration mouse that generates rapidly changing vibration feedback through a piezoelectric vibrator installed inside the mouse. This solution focuses on using a piezoelectric vibrator and a vibration motor to provide different vibration modes.
[0004] In the field of haptic rendering, US patents US6693622B1 and US7561142B2 disclose techniques for generating different vibration haptic sensations by changing the driving method or motion mass characteristics of a vibration actuator. Existing vibration parameter control methods can generate various vibration forms, but in the same virtual interaction process, surface motion events, obstacle-crossing events, road bump events, and hard collision events may occupy the same vibration channel. When different events lack clear actuator division of labor and output switching rules, short-term events are easily interfered with by continuous events, and directional information and surface information are also easily confused.
[0005] Therefore, different actuators need to be responsible for expressing directional and surface information respectively, and the output switching of each actuator should be controlled according to surface motion events, traversable obstacle events, road bump events and hard collision events in the virtual scene, so that different virtual interactive events have clear spatial positions, waveform parameters and output timing. Summary of the Invention
[0006] This invention provides a virtual contact effect rendering method and a multi-actuator collaborative haptic feedback mouse device to solve the problem that existing vibration haptic feedback mice mainly rely on a single vibration channel to express a variety of virtual interaction information, resulting in difficulty in distinguishing between operation direction, surface texture, obstacles that can be traversed, road bumps and hard collisions, and to solve the problem that continuous events can easily interfere with short-term events.
[0007] The technical solution adopted in this invention is: a virtual contact effect rendering method, based on a haptic feedback mouse device having at least two directional vibration actuators and at least one texture vibration actuator, performing the following steps in each haptic update cycle:
[0008] Step S1: Collect the displacement increment of the mouse along the operation axis, the movement speed of the user-controlled object in the virtual scene, the surface properties of the virtual contact surface where the user-controlled object is located, and the virtual scene interaction information, and identify the current virtual interaction event based on the virtual scene interaction information. The virtual interaction event includes surface motion event, passable obstacle event, road bump event, and hard collision event.
[0009] Step S2: Update the virtual shape of the current haptic update cycle based on the displacement increment of the current haptic update cycle and the virtual shape of the previous haptic update cycle, and perform attenuation, zeroing, amplitude limiting and dead zone judgment.
[0010] Step S3: Calculate the PWM duty cycle of the directional vibration actuator based on the current virtual interaction event and virtual deformation, and calculate the waveform amplitude and vibration frequency of the texture vibration actuator based on the current virtual interaction event, surface properties and motion speed;
[0011] Step S4: Control the output switching, output holding, and output recovery of the directional vibration actuator and the texture vibration actuator according to the start, duration, and end of the current virtual interaction event;
[0012] Step S5: Encode the PWM duty cycle, waveform amplitude and vibration frequency of the current haptic update cycle into a haptic command data packet and send it to the haptic feedback mouse device. After controlling the output of each actuator, enter the next haptic update cycle.
[0013] The virtual scene in step S1 of the present invention is built based on the Unity engine. The virtual scene includes a vehicle model controlled by a mouse, a road area with different surface properties, a cross-obstacle area in the form of weeds or shrubs, a bumpy road area that does not obstruct the movement of the vehicle model, and a hard collision object that obstructs the movement of the vehicle model.
[0014] The identification of virtual interaction events in step S1 includes: when the user-controlled object moves in the virtual contact surface and is not in the traversable obstacle area or the road bump area, it is identified as a surface motion event; traversable obstacle events are identified by entering, continuing, and exiting the traversable obstacle area, and the duration after entering the traversable obstacle area is recorded; when the user-controlled object enters the road bump area, it is identified as a road bump event; when the user-controlled object collides with a hard collision object and the movement speed in the collision direction exceeds a preset collision threshold, it is identified as a hard collision event.
[0015] In step S2 of the present invention, when the first When the mouse generates a displacement increment within a haptic update cycle, the virtual shape variable is updated according to the following formula:
[0016]
[0017] in, For the first Virtual shape variables for each haptic update cycle, This is a virtual shape variable from the previous tactile update cycle. For the first The increment of mouse displacement along the operation axis within one haptic update cycle. This is the displacement scaling factor. The maximum absolute value of the virtual variable;
[0018] When the When the mouse does not generate a displacement increment within a haptic update cycle, the elastic rebound decay is performed according to the following formula:
[0019]
[0020] Among them, attenuation coefficient satisfy ;when At that time, Set to zero. The dead zone determination is the threshold for zeroing out deformation; the dead zone determination includes velocity dead zone determination and deformation dead zone determination. When the absolute value of the motion velocity is less than the velocity dead zone threshold... The surface motion event stops when the absolute value of the motion velocity is not less than [a certain value]. Furthermore, the absolute value of the dummy shape variable is less than the shape variable dead zone threshold. Stop the output of the directional vibration actuator while retaining the output of the texture vibration actuator.
[0021] The processing of surface motion events in the virtual interaction events in step S3 of the present invention includes:
[0022] The PWM duty cycle of the directional vibration actuator is determined according to the following formula:
[0023]
[0024] in, For the first PWM duty cycle of each haptic update cycle This is the duty cycle scaling factor. To achieve the maximum duty cycle; a pre-established correspondence between the positive and negative directions of the virtual deformation and the directional vibration actuator is established, when... Only the directional vibration actuator corresponding to the positive direction is driven. It only drives the directional vibration actuator corresponding to the negative direction;
[0025] The waveform amplitude and vibration frequency of the textured vibration actuator are determined according to the following formula:
[0026]
[0027]
[0028] in, For the first The speed of movement in a tactile update cycle Based on the amplitude of the basic waveform, The waveform amplitude of the texture vibration actuator. The vibration frequency of the texture vibration actuator. For reference maximum speed, This is the amplitude scaling factor. and These are the lower limit and upper limit of the basic waveform amplitude, respectively. For the current surface properties, , and These are the amplitude adjustment coefficient, lower limit of output amplitude, and vibration frequency corresponding to the current surface properties, respectively.
[0029] When step S1 detects that the user-controlled object has entered a passable obstacle area, the present invention switches the surface motion event to a passable obstacle event; the passable obstacle area allows the user-controlled object to continue moving without forming a rigid collision, and the start, continuation and end process of the passable obstacle event are formed by controlling the directional vibration actuator and the texture vibration actuator.
[0030] At the start of a passable obstacle event, the motion damping parameters of the user-controlled object within the passable obstacle area are determined based on the preset damping properties of the passable obstacle area. The damping gain coefficient is calculated according to the following formula:
[0031]
[0032] in, Greater than , The motion damping parameters for the user-controlled object when it is in a normal road area. The damping gain coefficient is obtained by comparing the motion damping parameter within the traversable obstacle area with the motion damping parameter within the ordinary road area; the motion damping parameter of the user-controlled object is set to... ;
[0033] The PWM duty cycle of the directional vibration actuator is determined according to the following formula:
[0034]
[0035] in, The PWM duty cycle during obstacle-crossing events. The speed scaling factor; the damping gain factor It is also used to improve the motion damping of user-controlled objects and the PWM duty cycle of directional vibration actuators;
[0036] During the duration of the event that can pass through the obstacle, the textured vibration actuator continuously outputs a low-frequency background waveform, and after a preset initial delay, while maintaining the low-frequency background waveform, the directional vibration actuator corresponding to the preset pulling direction outputs a short-time pulling pulse at time intervals that vary within a preset range.
[0037] When the user-controlled object leaves the traversable obstacle area without meeting the preset obstacle removal conditions, the output of low-frequency background waveforms and short-duration traction pulses stops, and the motion damping parameters of the user-controlled object are restored to normal. It also restores surface motion events; when the preset obstacle removal condition is met, it stops the output of the directional vibration actuator and the low-frequency background waveform, restoring the motion damping parameters of the user-controlled object to normal. This causes the texture vibration actuator to output a breaking pulse at a preset breaking frequency, preset breaking waveform amplitude, and preset breaking duration, and terminates the passable obstacle event.
[0038] The processing of road bump events in the virtual interactive events in step S3 of the present invention includes: pausing the directional vibration actuator and causing the texture vibration actuator to output bump pulses with a preset bump frequency, a preset bump waveform amplitude, and a preset bump duration; the road bump event does not obstruct the movement of the user-controlled object.
[0039] The processing of hard collision events in the virtual interactive events in step S3 of the present invention includes: pausing the directional vibration actuator and making the texture vibration actuator output a collision pulse with a preset collision frequency, a preset collision waveform amplitude and a preset collision duration; and blocking the user-controlled object from moving along the collision direction by using the hard collision object.
[0040] Step S4 of the present invention includes: maintaining the corresponding actuator output during the duration of a surface motion event or a passable obstacle event; temporarily replacing the current actuator output when a road bump event, a hard collision event, or a breaking pulse begins, and maintaining the replaced actuator output for the duration of the corresponding pulse; re-executing step S1 after the corresponding pulse ends to identify the current virtual interaction event, and restoring the surface motion event or passable obstacle event according to the identification result; and stopping the output of the directional vibration actuator and the texture vibration actuator when no virtual interaction event is identified.
[0041] A haptic feedback mouse device for implementing a virtual contact effect rendering method with multi-actuator collaboration includes a mouse body, an actuator group, a control and drive circuit, a communication interface, and a host computer program.
[0042] The actuator group is disposed in the mouse body and includes at least two directional vibration actuators and at least one texture vibration actuator;
[0043] The control and drive circuit includes a microcontroller, a directional vibration actuator drive circuit, and a textured vibration actuator drive circuit. The directional vibration actuator drive circuit and the textured vibration actuator drive circuit are drive circuits located around the microcontroller. The microcontroller controls the PWM duty cycle of the directional vibration actuator through the directional vibration actuator drive circuit, and controls the waveform amplitude and vibration frequency of the textured vibration actuator through the textured vibration actuator drive circuit.
[0044] The host computer program includes a virtual scene and event detection unit, a tactile parameter calculation unit, and an event control unit. The virtual scene and event detection unit is used to acquire virtual scene interaction information and identify virtual interaction events. The tactile parameter calculation unit is used to calculate the control parameters of each actuator. The event control unit is used to control the switching, holding, and restoring of actuator outputs and to send tactile instruction data packets to the microcontroller through the communication interface.
[0045] The directional vibration actuator of this invention adopts one of the following spatial layouts: a rear directional vibration actuator and a front directional vibration actuator are arranged along the front-rear axis of the mouse, with the rear directional vibration actuator located on the palm side of the mouse and the front directional vibration actuator located on the fingertip side of the mouse; a texture vibration actuator is located in the middle of the mouse body; a left directional vibration actuator and a right directional vibration actuator are arranged along the left-right axis of the mouse, located on the left and right sides of the mouse respectively; the rear, front, left, and right directional vibration actuators are arranged together to render prompts for the front-rear and left-right directions; two directional vibration actuators in the same operating axis direction operate mutually exclusively.
[0046] This invention offers the following advantages: Directional vibration actuators and textured vibration actuators respectively handle operation direction information and contact surface information, reducing confusion between direction and texture information by utilizing the spatial position and mutually exclusive outputs of the actuators. Different road surfaces are represented by different vibration frequencies and waveform amplitudes, allowing users to obtain distinguishable surface texture feedback even when manipulating continuous objects.
[0047] The event that can be crossed over obstacles is characterized by a continuous low-frequency background waveform, intermittent short-duration tugging pulses, and a breaking pulse during the event, forming a temporally continuous and clearly defined composite output. The low-frequency background waveform represents continuous friction and entanglement, the short-duration tugging pulses represent irregular pulling, and the breaking pulses represent the release of the obstruction. This distinguishes the event that can be crossed over obstacles from ordinary surface motion, non-obstructive road bumps, and hard collisions involving obstructive motion.
[0048] Road bump events, hard collision events, and breaking pulses temporarily replace the current output for their respective durations. After the pulse ends, the continuous event output is restored according to the current state of the virtual scene, preventing short-term events from being overwritten by continuous output. The host computer program calculates and sends actuator parameters according to a fixed haptic update cycle, ensuring that the virtual scene state, event detection results, and mouse device output remain consistent. Attached Figure Description
[0049] Figure 1 This is an overall architecture diagram of the multi-actuator collaborative haptic feedback mouse device of the present invention;
[0050] Figure 2 This is a spatial layout diagram of the directional vibration actuator and the textured vibration actuator of the present invention.
[0051] Figure label:
[0052] 1. Mouse body; 2. Rear directional vibration actuator; 3. Forward directional vibration actuator; 4. Texture vibration actuator; 5. Microcontroller; 6. Communication interface; 7. Host computer program; 8. Virtual scene and event detection unit; 9. Tactile parameter calculation unit; 10. Event control unit; 11. Left directional vibration actuator; 12. Right directional vibration actuator; 13. Directional vibration actuator drive circuit; 14. Texture vibration actuator drive circuit; 15. Control and drive circuit; 16. Actuator group. Detailed Implementation
[0053] To enable those skilled in the art to better understand the technical solution of the present invention, the present invention will be further described below with reference to the accompanying drawings. The specific implementations described herein are for illustrative purposes only and do not constitute a limitation on the scope of protection of the present invention.
[0054] like Figure 1 and Figure 2As shown, the multi-actuator collaborative haptic feedback mouse device includes a mouse body 1, an actuator group 16, a control and drive circuit 15, a communication interface 6, and a host computer program 7. The actuator group 16 is located in the mouse body 1 and includes a rear directional vibration actuator 2, a front directional vibration actuator 3, and a texture vibration actuator 4. The control and drive circuit 15 includes a microcontroller 5, a directional vibration actuator drive circuit 13, and a texture vibration actuator drive circuit 14, all three mounted on the same circuit board. The directional vibration actuator drive circuit 13 and the texture vibration actuator drive circuit 14 are peripheral drive circuits for the microcontroller 5. The communication interface 6 connects the host computer program 7 and the microcontroller 5.
[0055] In this embodiment, the rear directional vibration actuator 2 and the front directional vibration actuator 3 are eccentric rotating mass vibration motors, and the texture vibration actuator 4 is a linear resonant actuator. The directional vibration actuator drive circuit 13 adjusts the output of the eccentric rotating mass vibration motor according to the PWM duty cycle, and the texture vibration actuator drive circuit 14 adjusts the output of the linear resonant actuator according to the waveform amplitude and vibration frequency.
[0056] The host computer program 7 includes a virtual scene and event detection unit 8, a haptic parameter calculation unit 9, and an event control unit 10. The virtual scene and event detection unit 8 acquires mouse input, the motion state of the user-controlled object, surface attributes, and scene interaction status. The haptic parameter calculation unit 9 calculates the PWM duty cycle of the directional vibration actuator and the waveform amplitude and vibration frequency of the texture vibration actuator 4. The event control unit 10 controls the switching, holding, and resuming of the output and sends haptic command data packets to the microcontroller 5 via the communication interface 6. The microcontroller 5 drives the rear directional vibration actuator 2 or the front directional vibration actuator 3 through the directional vibration actuator drive circuit 13, and drives the texture vibration actuator 4 through the texture vibration actuator drive circuit 14.
[0057] This embodiment adopts a front-to-back layout, with the rear directional vibration actuator 2 located on the palm side of the mouse, the front directional vibration actuator 3 located on the fingertip side of the mouse, and the texture vibration actuator 4 positioned in the middle of the mouse body 1. The rear directional vibration actuator 2 and the front directional vibration actuator 3 operate mutually exclusively to express directional information along the front-to-back operating axis. In other embodiments, the left directional vibration actuator 11 and the right directional vibration actuator 12 can be respectively positioned on the left and right sides of the mouse body 1 to express left-right directional information; alternatively, the rear directional vibration actuator 2, the front directional vibration actuator 3, the left directional vibration actuator 11, and the right directional vibration actuator 12 can be simultaneously positioned to express two-dimensional directional information.
[0058] Based on the above-mentioned haptic feedback mouse device, the present invention provides a virtual contact effect rendering method, which performs the following steps in each haptic update cycle:
[0059] Step S1: Collect the displacement increment of the mouse along the operation axis, the movement speed of the user-controlled object in the virtual scene, the surface properties of the virtual contact surface where the user-controlled object is located, and the virtual scene interaction information, and identify the current virtual interaction event based on the virtual scene interaction information. The virtual interaction event includes surface motion event, passable obstacle event, road bump event, and hard collision event.
[0060] Step S2: Update the virtual shape of the current haptic update cycle based on the displacement increment of the current haptic update cycle and the virtual shape of the previous haptic update cycle, and perform attenuation, zeroing, amplitude limiting and dead zone judgment.
[0061] Step S3: Calculate the PWM duty cycle of the directional vibration actuator based on the current virtual interaction event and virtual deformation, and calculate the waveform amplitude and vibration frequency of the texture vibration actuator based on the current virtual interaction event, surface properties and motion speed;
[0062] Step S4: Control the output switching, output holding, and output recovery of the directional vibration actuator and the texture vibration actuator according to the start, duration, and end of the current virtual interaction event;
[0063] Step S5: Encode the PWM duty cycle, waveform amplitude and vibration frequency of the current haptic update cycle into a haptic command data packet and send it to the haptic feedback mouse device. After controlling the output of each actuator, enter the next haptic update cycle.
[0064] The virtual scene in step S1 is built based on the Unity engine. The virtual scene includes a vehicle model that can be controlled by the mouse, a road area with different surface properties, a traversable obstacle area in the form of weeds or shrubs, a bumpy road area that does not obstruct the movement of the vehicle model, and a hard collision object that obstructs the movement of the vehicle model.
[0065] The identification of virtual interaction events in step S1 includes: when the user-controlled object moves in the virtual contact surface and is not in the traversable obstacle area or the road bump area, it is identified as a surface motion event; traversable obstacle events are identified by entering, continuing, and exiting the traversable obstacle area, and the duration after entering the traversable obstacle area is recorded; when the user-controlled object enters the road bump area, it is identified as a road bump event; when the user-controlled object collides with a hard collision object and the movement speed in the collision direction exceeds a preset collision threshold, it is identified as a hard collision event.
[0066] In step S2, when the first When the mouse generates a displacement increment within a haptic update cycle, the virtual shape variable is updated according to the following formula:
[0067]
[0068] in, For the first Virtual shape variables for each haptic update cycle, This is a virtual shape variable from the previous tactile update cycle. For the first The increment of mouse displacement along the operation axis within one haptic update cycle. This is the displacement scaling factor. The maximum absolute value of the virtual variable;
[0069] When the When the mouse does not generate a displacement increment within a haptic update cycle, the elastic rebound decay is performed according to the following formula:
[0070]
[0071] Among them, attenuation coefficient satisfy ;when At that time, Set to zero. The dead zone determination is the threshold for zeroing out deformation; the dead zone determination includes velocity dead zone determination and deformation dead zone determination. When the absolute value of the motion velocity is less than the velocity dead zone threshold... The surface motion event stops when the absolute value of the motion velocity is not less than [a certain value]. Furthermore, the absolute value of the dummy shape variable is less than the shape variable dead zone threshold. Stop the output of the directional vibration actuator while retaining the output of the texture vibration actuator.
[0072] The processing of surface motion events in the virtual interaction events in step S3 includes:
[0073] The PWM duty cycle of the directional vibration actuator is determined according to the following formula:
[0074]
[0075] in, For the first PWM duty cycle of each haptic update cycle This is the duty cycle scaling factor. To achieve the maximum duty cycle; a pre-established correspondence between the positive and negative directions of the virtual deformation and the directional vibration actuator is established, when... Only the directional vibration actuator corresponding to the positive direction is driven. It only drives the directional vibration actuator corresponding to the negative direction;
[0076] The waveform amplitude and vibration frequency of the textured vibration actuator are determined according to the following formula:
[0077]
[0078]
[0079] in, For the first The speed of movement in a tactile update cycle Based on the amplitude of the basic waveform, The waveform amplitude of the texture vibration actuator. The vibration frequency of the texture vibration actuator. For reference maximum speed, This is the amplitude scaling factor. and These are the lower limit and upper limit of the basic waveform amplitude, respectively. For the current surface properties, , and These are the amplitude adjustment coefficient, lower limit of output amplitude, and vibration frequency corresponding to the current surface properties, respectively.
[0080] When step S1 detects that the user-manipulated object has entered the traversable obstacle area, the surface motion event is switched to the traversable obstacle event; the traversable obstacle area allows the user-manipulated object to continue moving without forming a rigid collision, and the start, continuation and end process of the traversable obstacle event are formed by controlling the directional vibration actuator and the texture vibration actuator.
[0081] At the start of a passable obstacle event, the motion damping parameters of the user-controlled object within the passable obstacle area are determined based on the preset damping properties of the passable obstacle area. The damping gain coefficient is calculated according to the following formula:
[0082]
[0083] in, Greater than , The motion damping parameters for the user-controlled object when it is in a normal road area. The damping gain coefficient is obtained by comparing the motion damping parameter within the traversable obstacle area with the motion damping parameter within the ordinary road area; the motion damping parameter of the user-controlled object is set to... ;
[0084] The PWM duty cycle of the directional vibration actuator is determined according to the following formula:
[0085]
[0086] in, The PWM duty cycle during obstacle-crossing events. The speed scaling factor; the damping gain factor It is also used to improve the motion damping of user-controlled objects and the PWM duty cycle of directional vibration actuators;
[0087] During the duration of the event that can pass through the obstacle, the textured vibration actuator continuously outputs a low-frequency background waveform, and after a preset initial delay, while maintaining the low-frequency background waveform, the directional vibration actuator corresponding to the preset pulling direction outputs a short-time pulling pulse at time intervals that vary within a preset range.
[0088] When the user-controlled object leaves the traversable obstacle area without meeting the preset obstacle removal conditions, the output of low-frequency background waveforms and short-duration traction pulses stops, and the motion damping parameters of the user-controlled object are restored to normal. It also restores surface motion events; when the preset obstacle removal condition is met, it stops the output of the directional vibration actuator and the low-frequency background waveform, restoring the motion damping parameters of the user-controlled object to normal. This causes the texture vibration actuator to output a breaking pulse at a preset breaking frequency, preset breaking waveform amplitude, and preset breaking duration, and terminates the passable obstacle event.
[0089] The processing of the road bump event in the virtual interactive event in step S3 includes: pausing the directional vibration actuator and making the texture vibration actuator output bump pulses with a preset bump frequency, preset bump waveform amplitude and preset bump duration; the road bump event does not obstruct the movement of the user-controlled object.
[0090] The processing of hard collision events in the virtual interactive events in step S3 includes: pausing the directional vibration actuator and making the texture vibration actuator output a collision pulse with a preset collision frequency, a preset collision waveform amplitude, and a preset collision duration; and using the hard collision object to block the user-controlled object from moving along the collision direction.
[0091] Step S4 includes: maintaining the corresponding actuator output during the duration of a surface motion event or a passable obstacle event; temporarily replacing the current actuator output when a road bump event, hard collision event, or breaking pulse begins, and maintaining the replaced actuator output for the duration of the corresponding pulse; re-executing step S1 after the corresponding pulse ends to identify the current virtual interaction event, and restoring the surface motion event or passable obstacle event according to the identification result; and stopping the output of the directional vibration actuator and the texture vibration actuator when no virtual interaction event is identified.
[0092] The following experimental examples will further illustrate the above-mentioned virtual contact effect rendering method.
[0093] In this experimental example, the haptic update cycle is set to 0.02 seconds. Serial communication is used between the microcontroller 5 and the host computer program 7, with a communication rate of 115200 bits per second. The haptic command data packet sequentially includes the PWM duty cycle of the rear directional vibration actuator 2, the PWM duty cycle of the front directional vibration actuator 3, and the vibration frequency and waveform amplitude of the texture vibration actuator 4. Both the PWM duty cycle and waveform amplitude use normalized control values from 0 to 100. The waveform amplitude represents the amplitude command sent to the texture vibration actuator drive circuit 14 and is not directly limited to the drive voltage.
[0094] In the calculation of virtual deformation, the displacement scaling factor Set to 0.01, maximum absolute value of deformation. Set to 4, attenuation coefficient Set to 0.92, the threshold for zeroing deformation. Set to 0.01. Speed dead zone threshold. Set to 0.12 meters per second, deformation dead zone threshold Set to 0.15. Duty cycle scaling factor for directional vibration actuators. Set to 30, maximum duty cycle Set to 100, speed scaling factor Set to 10.
[0095] In surface motion events, the reference maximum velocity of the vehicle model The setting is 3 meters per second. Asphalt roads, concrete roads, and mud roads correspond to texture vibration frequencies of 170 Hz, 150 Hz, and 80 Hz, respectively. The waveform amplitude increases with the vehicle model's speed, and different amplitude adjustment relationships are used for different road surfaces. The waveform amplitude ranges from 2 to 10 for asphalt roads, from 3 to 15 for concrete roads, and from 3 to 30 for mud roads.
[0096] The virtual scene and event detection unit 8 detects the entry, duration, and exit states of the vehicle model with the road area, traversable obstacle area, and bumpy road surface area to determine corresponding virtual interaction events; it also determines hard collision events by detecting the physical collision and collision direction and velocity between the vehicle model and hard collision objects. When the vehicle model enters the traversable obstacle area, the entry time is recorded, and the linear damping parameter of the Unity rigid body is set according to the preset damping properties of the traversable obstacle area. In this embodiment, the linear damping parameters for ordinary road areas... Preset to 2, the linear damping parameter that can traverse the obstruction region. It is preset to 6, so according to The damping gain coefficient was calculated. The value is 3. The linear damping parameter... The damping gain coefficient is used to slow down the movement of the vehicle model without obstructing its passage through the area. With speed scaling factor Together they are used to calculate the PWM duty cycle increment of the directional vibration actuator.
[0097] Once the obstacle-crossing event begins, the texture vibration actuator 4 continuously outputs a low-frequency background waveform at a vibration frequency of 60 Hz and an amplitude of 30. The low-frequency background waveform is maintained while the vehicle model is in the obstacle-crossing area to represent the ongoing friction and entanglement between the weeds or bushes and the vehicle model.
[0098] After the vehicle model enters the traversable obstacle area for 0.3 seconds, it begins to generate short-duration traction pulses. The time interval between adjacent short-duration traction pulses varies between 0.6 seconds and 1.0 second. In this embodiment, the rear directional vibration actuator 2 is set as the actuator corresponding to the preset traction direction, so that it outputs a short-duration traction pulse lasting 0.15 seconds with a 75% PWM duty cycle; during the duration of the short-duration traction pulse, the front directional vibration actuator 3 stops, and the texture vibration actuator 4 continues to output a low-frequency background waveform with a vibration frequency of 60 Hz and an amplitude of 30. Thus, the short-duration traction pulse is superimposed on the continuous low-frequency background waveform without interrupting the low-frequency background waveform.
[0099] When the vehicle model leaves the traversable obstacle area before the obstacle is removed, the virtual scene and event detection unit 8 clears the entry time and the next tug time, the event control unit 10 stops the low-frequency background waveform and short-term tug pulse, restores the motion damping of the vehicle model to the normal road state, and re-identifies the surface motion event in the next tactile update cycle.
[0100] In this experiment, the obstacle breaking condition is defined as the vehicle model continuously remaining within the same traversable obstacle area for 1.0 second. Upon reaching this condition, the virtual scene and event detection unit 8 deactivate the traversable obstacle area state and initiate a breaking state for the corresponding weeds or shrubs. The event control unit 10 stops the rear directional vibration actuator 2 and the front directional vibration actuator 3, stops the 60Hz low-frequency background waveform, and causes the texture vibration actuator 4 to output a breaking pulse lasting 0.25 seconds at a vibration frequency of 300Hz and an amplitude of 80. After the breaking pulse ends, the area where the vehicle model is located is re-detected, and the surface motion event is restored or the actuator output is stopped based on the detection results.
[0101] For road bump events, when the vehicle model enters the bumpy area, its path of motion remains unchanged. The event control unit 10 stops the two directional vibration actuators and causes the texture vibration actuator 4 to output a bump pulse lasting 0.25 seconds at a vibration frequency of 200 Hz and an amplitude of 100. For hard collision events, when the vehicle model collides with a hard collision object and the collision direction velocity exceeds 0.03 m / s, the hard collision object blocks the vehicle model's movement along the collision direction. The event control unit 10 stops the two directional vibration actuators and causes the texture vibration actuator 4 to output a collision pulse lasting 0.25 seconds at a vibration frequency of 250 Hz and an amplitude of 100.
[0102] During the duration of a bump pulse, collision pulse, or breaking pulse, the event control unit 10 maintains the corresponding pulse parameters to prevent continuous events from rewriting the output of the texture vibration actuator 4 before the pulse ends. After the pulse ends, the virtual scene and event detection unit 8 reacquires the current position, movement speed, and scene interaction state of the vehicle model, and the event control unit 10 accordingly restores surface motion events, traversable obstacle events, or stops all actuators.
[0103] The aforementioned device layout, waveform parameters, and output timing together constitute the basis for the formation of the virtual contact effect.
[0104] This experimental example creates a virtual contact effect through differences in spatial position, waveform parameters, and output timing. The rear directional vibration actuator 2 and the front directional vibration actuator 3 are located at different positions on the mouse body 1 and operate mutually exclusively, allowing the positive and negative directions of the virtual deformation to be mapped to vibrations at different positions. The texture vibration actuator 4 is located in the middle of the mouse body 1 and expresses the road surface and short-term events through different vibration frequencies and waveform amplitudes, thus assigning directional and surface information to different actuators.
[0105] On a normal road surface, the texture vibration frequency ranges from 80 Hz to 170 Hz, and the waveform amplitude varies with the speed of movement. Upon entering the area with traversable obstacles, the texture vibration actuator 4 switches to a continuous low-frequency background waveform of 60 Hz, while the vehicle model's motion damping increases, thus creating a continuous drag characteristic different from that of a normal road surface. Short-duration pulling pulses generated by the rear-direction vibration actuator 2 are interspersed within the continuous low-frequency background waveform, giving the traversable obstacle event both continuous friction and irregular pulling time characteristics.
[0106] Once the obstacle removal condition is met, the continuous low-frequency background waveform and directional output are replaced by a 300 Hz breaking pulse, and the state of being able to traverse the obstacle area is subsequently deactivated. This output change provides a clear end signal for obstacle removal. The road bump event uses a 200 Hz pulse and does not impede vehicle model movement, while the hard collision event uses a 250 Hz pulse and impedes vehicle model movement along the collision direction. Therefore, the two events not only have different waveform parameters but also different scene motion results.
[0107] The above parameters and operating procedures establish the correspondence between each virtual interactive event and scene detection conditions, actuator type, output parameters, duration and state recovery method, enabling those skilled in the art to reproduce various virtual contact effects according to the device structure and control process.
Claims
1. A method for rendering virtual contact effects, based on a haptic feedback mouse device having at least two directional vibration actuators and at least one texture vibration actuator, characterized in that, Perform the following steps during each haptic update cycle: Step S1: Collect the displacement increment of the mouse along the operation axis, the movement speed of the user-controlled object in the virtual scene, the surface properties of the virtual contact surface where the user-controlled object is located, and the virtual scene interaction information, and identify the current virtual interaction event based on the virtual scene interaction information. The virtual interaction event includes surface motion event, passable obstacle event, road bump event, and hard collision event. Step S2: Update the virtual shape of the current haptic update cycle based on the displacement increment of the current haptic update cycle and the virtual shape of the previous haptic update cycle, and perform attenuation, zeroing, amplitude limiting and dead zone judgment. Step S3: Calculate the PWM duty cycle of the directional vibration actuator based on the current virtual interaction event and virtual deformation, and calculate the waveform amplitude and vibration frequency of the texture vibration actuator based on the current virtual interaction event, surface properties and motion speed; Step S4: Control the output switching, output holding, and output recovery of the directional vibration actuator and the texture vibration actuator according to the start, duration, and end of the current virtual interaction event; Step S5: Encode the PWM duty cycle, waveform amplitude and vibration frequency of the current haptic update cycle into a haptic command data packet and send it to the haptic feedback mouse device. After controlling the output of each actuator, enter the next haptic update cycle.
2. The virtual contact effect rendering method according to claim 1, characterized in that, The virtual scene in step S1 is built based on the Unity engine. The virtual scene includes a vehicle model controlled by the mouse, a road area with different surface properties, a cross-obstacle area in the form of weeds or shrubs, a bumpy road area that does not obstruct the movement of the vehicle model, and a hard collision object that obstructs the movement of the vehicle model. The identification of virtual interaction events in step S1 includes: when the user-controlled object moves in the virtual contact surface and is not in the traversable obstacle area or the road bump area, it is identified as a surface motion event; traversable obstacle events are identified by entering, continuing, and exiting the traversable obstacle area, and the duration after entering the traversable obstacle area is recorded; when the user-controlled object enters the road bump area, it is identified as a road bump event; when the user-controlled object collides with a hard collision object and the movement speed in the collision direction exceeds a preset collision threshold, it is identified as a hard collision event.
3. The virtual contact effect rendering method according to claim 1, characterized in that, In step S2, when the first When the mouse generates a displacement increment within a haptic update cycle, the virtual shape variable is updated according to the following formula: ; in, For the first Virtual shape variables for each haptic update cycle, This is a virtual shape variable from the previous tactile update cycle. For the first The increment of mouse displacement along the operation axis within one haptic update cycle. This is the displacement scaling factor. The maximum absolute value of the virtual variable; When the When the mouse does not generate a displacement increment within a haptic update cycle, the elastic rebound decay is performed according to the following formula: ; Among them, attenuation coefficient satisfy ;when At that time, Set to zero. The dead zone determination is the threshold for zeroing out deformation; the dead zone determination includes velocity dead zone determination and deformation dead zone determination. When the absolute value of the motion velocity is less than the velocity dead zone threshold... The surface motion event stops when the absolute value of the motion velocity is not less than [a certain value]. Furthermore, the absolute value of the dummy shape variable is less than the shape variable dead zone threshold. Stop the output of the directional vibration actuator while retaining the output of the texture vibration actuator.
4. The virtual contact effect rendering method according to claim 1, characterized in that, The processing of surface motion events in the virtual interaction events in step S3 includes: The PWM duty cycle of the directional vibration actuator is determined according to the following formula: ; in, For the first PWM duty cycle of each haptic update cycle This is the duty cycle scaling factor. To achieve the maximum duty cycle; a pre-established correspondence between the positive and negative directions of the virtual deformation and the directional vibration actuator is established, when... Only the directional vibration actuator corresponding to the positive direction is driven. It only drives the directional vibration actuator corresponding to the negative direction; The waveform amplitude and vibration frequency of the textured vibration actuator are determined according to the following formula: ; ; in, For the first The speed of movement in a tactile update cycle Based on the amplitude of the basic waveform, The waveform amplitude of the texture vibration actuator. The vibration frequency of the texture vibration actuator. For reference maximum speed, This is the amplitude scaling factor. and These are the lower limit and upper limit of the basic waveform amplitude, respectively. For the current surface properties, , and These are the amplitude adjustment coefficient, lower limit of output amplitude, and vibration frequency corresponding to the current surface properties, respectively.
5. The virtual contact effect rendering method according to claim 4, characterized in that, When step S1 detects that the user-manipulated object has entered the traversable obstacle area, the surface motion event is switched to the traversable obstacle event; the traversable obstacle area allows the user-manipulated object to continue moving without forming a rigid collision, and the start, continuation and end process of the traversable obstacle event are formed by controlling the directional vibration actuator and the texture vibration actuator. At the start of a passable obstacle event, the motion damping parameters of the user-controlled object within the passable obstacle area are determined based on the preset damping properties of the passable obstacle area. The damping gain coefficient is calculated according to the following formula: ; in, Greater than , The motion damping parameters for the user-controlled object when it is in a normal road area. The damping gain coefficient is obtained by comparing the motion damping parameter within the traversable obstacle area with the motion damping parameter within the ordinary road area; the motion damping parameter of the user-controlled object is set to... ; The PWM duty cycle of the directional vibration actuator is determined according to the following formula: ; in, The PWM duty cycle during obstacle-crossing events. The speed scaling factor; the damping gain factor It is also used to improve the motion damping of user-controlled objects and the PWM duty cycle of directional vibration actuators; During the duration of the event that can pass through the obstacle, the textured vibration actuator continuously outputs a low-frequency background waveform, and after a preset initial delay, while maintaining the low-frequency background waveform, the directional vibration actuator corresponding to the preset pulling direction outputs a short-time pulling pulse at time intervals that vary within a preset range. When the user-controlled object leaves the traversable obstacle area without meeting the preset obstacle removal conditions, the output of low-frequency background waveforms and short-duration traction pulses stops, and the motion damping parameters of the user-controlled object are restored to normal. It also restores surface motion events; when the preset obstacle removal condition is met, it stops the output of the directional vibration actuator and the low-frequency background waveform, restoring the motion damping parameters of the user-controlled object to normal. This causes the texture vibration actuator to output a breaking pulse at a preset breaking frequency, preset breaking waveform amplitude, and preset breaking duration, and terminates the passable obstacle event.
6. The virtual contact effect rendering method according to claim 1, characterized in that, The processing of the road bump event in the virtual interactive event in step S3 includes: pausing the directional vibration actuator and making the texture vibration actuator output bump pulses with a preset bump frequency, preset bump waveform amplitude and preset bump duration; the road bump event does not obstruct the movement of the user-controlled object.
7. The virtual contact effect rendering method according to claim 1, characterized in that, The processing of hard collision events in the virtual interactive events in step S3 includes: pausing the directional vibration actuator and making the texture vibration actuator output a collision pulse with a preset collision frequency, a preset collision waveform amplitude, and a preset collision duration; and using the hard collision object to block the user-controlled object from moving along the collision direction.
8. The virtual contact effect rendering method according to claim 1, characterized in that, Step S4 includes: maintaining the corresponding actuator output during the duration of a surface motion event or a passable obstacle event; temporarily replacing the current actuator output when a road bump event, hard collision event, or breaking pulse begins, and maintaining the replaced actuator output for the duration of the corresponding pulse; re-executing step S1 after the corresponding pulse ends to identify the current virtual interaction event, and restoring the surface motion event or passable obstacle event according to the identification result; and stopping the output of the directional vibration actuator and the texture vibration actuator when no virtual interaction event is identified.
9. A haptic feedback mouse device for implementing the virtual contact effect rendering method according to any one of claims 1 to 8, characterized in that: It includes the mouse body, actuator assembly, control and drive circuit, communication interface, and host computer program; The actuator group is disposed in the mouse body and includes at least two directional vibration actuators and at least one texture vibration actuator; The control and drive circuit includes a microcontroller, a directional vibration actuator drive circuit, and a textured vibration actuator drive circuit. The directional vibration actuator drive circuit and the textured vibration actuator drive circuit are drive circuits located around the microcontroller. The microcontroller controls the PWM duty cycle of the directional vibration actuator through the directional vibration actuator drive circuit, and controls the waveform amplitude and vibration frequency of the textured vibration actuator through the textured vibration actuator drive circuit. The host computer program includes a virtual scene and event detection unit, a tactile parameter calculation unit, and an event control unit. The virtual scene and event detection unit is used to acquire virtual scene interaction information and identify virtual interaction events. The tactile parameter calculation unit is used to calculate the control parameters of each actuator. The event control unit is used to control the switching, holding, and restoring of actuator outputs and to send tactile instruction data packets to the microcontroller through the communication interface.
10. A haptic feedback mouse device with multi-actuator collaboration according to claim 9, characterized in that: The directional vibration actuator adopts one of the following spatial layouts: a rear directional vibration actuator and a front directional vibration actuator are arranged along the front-rear axis of the mouse, with the rear directional vibration actuator located on the palm side of the mouse and the front directional vibration actuator located on the fingertip side of the mouse; a texture vibration actuator is located in the middle of the mouse body; a left directional vibration actuator and a right directional vibration actuator are arranged along the left-right axis of the mouse, located on the left and right sides of the mouse respectively; the rear, front, left, and right directional vibration actuators are arranged together to render cues for the front-rear and left-right directions; two directional vibration actuators in the same operating axis direction operate mutually exclusively.
Citation Information
Patent Citations
Vibrotactile haptic feedback devices
US6693622B1
Vibrotactile haptic feedback devices
US7561142B2
Vibrating mouse providing real time haptic feedback
WO2016088972A1