Voice coil motor intelligent control method and device for gamepad
By establishing a correlation between the waveform signal of the voice coil motor and vibration data, the control waveform signal is identified and corrected, thus solving the problem of poor vibration adaptation of the game controller and improving the user experience.
Patent Information
- Application Number
- CN202510958767.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-11
- Publication Date
- 2025-10-31
AI Technical Summary
The vibration effect of the voice coil motor in existing game controllers is poorly adapted due to differences in user body shape and hand muscle, resulting in a poor user experience.
By acquiring vibration data from the game controller in its factory state, the correlation between waveform signals and vibration is established, the vibration differences caused by user damping are identified, and the control waveform signal is corrected to match the user's vibration needs.
This achieves consistency between the vibration of the game controller and the vibration experienced by the user under undamped conditions, improving the user's experience and gaming experience.
Smart Images

Figure CN120880271A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of vibration control technology for game controllers, and more particularly to a method and apparatus for intelligent control of a voice coil motor for a game controller. Background Technology
[0002] A voice coil motor is a non-commutator power device. Its positioning accuracy depends entirely on the feedback and control system, and is unrelated to the voice coil motor itself. It controls the vibration effect entirely based on the waveform signal. When a game controller vibrates driven by a voice coil motor, the damping difference caused by the different body shapes and hand muscle levels of different users can result in an unsatisfactory actual vibration effect. The current common solution is for users to adjust the vibration level themselves and fix the vibration level. However, this control method cannot achieve the vibration effect most suitable for the user, resulting in a poor user experience. Summary of the Invention
[0003] This invention provides a smart control method for a voice coil motor in a game controller, which solves the problem of poor vibration adaptation and user experience in existing game controllers.
[0004] The first aspect of this invention provides a smart control method for a voice coil motor in a game controller, comprising: Obtain the first vibration data of the voice coil motor corresponding to the detected waveform signal when the game controller is in its factory state, and establish the correlation between the detected waveform signal and the first vibration data. Receive a first control waveform signal, calculate the expected vibration data corresponding to the first control waveform signal based on the correlation between the detected waveform signal and the vibration data; obtain the second vibration data corresponding to the first control waveform signal; compare the second vibration data with the expected vibration data, and identify the vibration difference ratio corresponding to each type of waveform; The system receives the second control waveform signal and corrects it according to the vibration difference ratio corresponding to various waveforms. The corrected second control waveform signal is then input into the voice coil motor for control.
[0005] Optionally, before receiving the first control waveform signal, the method further includes: determining whether the current host user login information has an associated vibration difference ratio; if so, then calling the associated vibration difference ratio to correct the second control waveform signal. After comparing the second vibration data with the expected vibration data and identifying the vibration difference ratios corresponding to various waveforms, the method further includes: obtaining the current host user login information and associating the current host user login information with the vibration difference ratios.
[0006] Optionally, before receiving the first control waveform signal, the method further includes: Obtain the current game type, identify the preset wave type corresponding to the game type and adjust the priority, and correct the second control waveform signal according to the adjustment priority.
[0007] A second aspect of this application provides a smart control device for a voice coil motor in a game controller, comprising: The undamped data processing module is used to acquire the first vibration data of the voice coil motor under the detected waveform signal when the game controller is in its factory state, and to establish the correlation between the detected waveform signal and the first vibration data. The user damping feature module is used to receive a first control waveform signal, calculate the expected vibration data corresponding to the first control waveform signal based on the correlation between the detected waveform signal and the vibration data, obtain the second vibration data corresponding to the first control waveform signal, compare the second vibration data with the expected vibration data, and identify the vibration difference ratio corresponding to various waveforms. The handle motor control module is used to receive the second control waveform signal, correct the second control waveform signal according to the vibration difference ratio corresponding to various waveforms, and input the corrected second control waveform signal into the voice coil motor for control.
[0008] Optionally, before receiving the first control waveform signal, the user damping feature module further includes: determining whether the current host user login information has an associated vibration difference ratio; if so, then calling the associated vibration difference ratio to correct the second control waveform signal. After comparing the second vibration data with the expected vibration data and identifying the vibration difference ratios corresponding to various waveforms, the method further includes: obtaining the current host user login information and associating the current host user login information with the vibration difference ratios.
[0009] Optionally, before receiving the first control waveform signal, the user damping feature module further includes: Obtain the current game type, identify the preset wave type corresponding to the game type and adjust the priority, and correct the second control waveform signal according to the adjustment priority.
[0010] A third aspect of this application provides a device for intelligent control of a voice coil motor in a game controller, the device comprising a processor and a memory: The memory is used to store program code and transmit the program code to the processor; The processor is configured to execute, according to the instructions in the program code, a voice coil motor intelligent control method for a game controller as described in any of the first aspects of the present invention.
[0011] The fourth aspect of this application provides a computer-readable storage medium for storing program code for executing a voice coil motor intelligent control method for a game controller as described in any of the first aspects of this invention.
[0012] As can be seen from the above technical solution, the present invention has the following advantages: It acquires data of the voice coil motor of the game controller in its factory state, constructs a correlation between the waveform signal and vibration under undamped conditions; then, based on the correlation, it converts the first control waveform signal into data of the expected vibration of the controller, and acquires the actual vibration data, comparing the expected vibration data with the actual vibration data to identify the vibration difference ratio of various waveforms. This ratio reflects the difference in vibration between damped and undamped conditions caused by each user holding the controller; when the control waveform signal is received again, it corrects and adjusts the signal according to the vibration difference ratio, and inputs it into the voice coil motor, so that the vibration of the game controller is consistent with the expected undamped vibration, ensuring consistent vibration sensation when different users use the controller and play games, thus improving the user's experience and gaming experience. Attached Figure Description
[0013] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0014] Figure 1 A flowchart of a smart control method for a voice coil motor in a game controller; Figure 2 This is a structural diagram of a voice coil motor intelligent control device for a game controller. Detailed Implementation
[0015] To make the objectives, features, and advantages of this invention more apparent and understandable, the technical solutions of the embodiments of this invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the embodiments described below are only some embodiments of this invention, and not all embodiments. Based on the embodiments of this invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this invention.
[0016] This invention provides a smart control method for a voice coil motor in a game controller, which solves the problem of poor vibration adaptation and user experience in existing game controllers.
[0017] Please see Figure 1 , Figure 1 This is the first flowchart of a smart control method for a voice coil motor in a game controller, provided by an embodiment of the present invention.
[0018] S100: Obtain the first vibration data of the voice coil motor corresponding to the detected waveform signal when the game controller is in its factory state, and establish the correlation between the detected waveform signal and the first vibration data. It should be noted that the game controller undergoes factory testing in its original state. At this time, no user is holding the controller, so the vibration lacks the damping provided by human muscles. The accelerometer and gyroscope sensors inside the game controller detect the amplitude of the vibration generated by the voice coil motor. During factory testing, various types of waveform signals are input to the voice coil motor to test its vibration performance. These continuous and multi-type waveform signals serve as the test waveforms, which should include several types of waveforms commonly used in actual games, such as square waves, sine waves, triangle waves, and trapezoidal waves. Their amplitude and frequency correspond to the game controller vibration data detected by the sensors, yielding the first vibration data. A correlation is established between the test waveform signals and the first vibration data based on the time of the voice coil motor's input of the test waveform signals and the time of the first vibration data. This correlation reflects the proportional differences in amplitude and frequency of the actual vibrations corresponding to different types of test waveform signals when the game controller is in undamped contact, indicating the vibration effect the game controller should achieve.
[0019] S200: Receive a first control waveform signal; calculate the expected vibration data corresponding to the first control waveform signal based on the correlation between the detected waveform signal and the vibration data; acquire the second vibration data corresponding to the first control waveform signal; compare the second vibration data with the expected vibration data to identify the vibration difference ratio corresponding to various waveforms; It's important to note that after a game event is triggered on the game console, such as a collision in a racing game or a hit in a fighting game, the game engine generates a vibration command. Based on the specific parameters of the game event, it encodes a corresponding vibration control signal, which is then input into the voice coil motor of the game controller, causing it to vibrate. The programming of this vibration control signal is executed by the game console, requiring the game controller's amplitude and frequency to correspond to the game event to provide the user with an immersive experience. When the game console generates the first control waveform signal, it is unaware of the user currently controlling the controller. It temporarily defaults to the game controller's vibration state corresponding to the first control waveform signal and sends it to the game controller. The game controller's built-in sensors then detect the actual second vibration data. This second vibration data represents the actual vibration produced by the voice coil motor driven by the first control waveform signal while the game controller is held by the user. By detecting the correlation between the waveform signal and the vibration data, the expected vibration data corresponding to the first control waveform signal is calculated – the vibration that the game console expects the game controller to produce. Comparing the second vibration data with the expected vibration data reveals that the user's hand muscles and arm, while holding the game controller, create vibration damping, which reduces the effective frequency of the vibration system. Therefore, the vibration waveform times in the two sets of data do not correspond. The comparison should be based on waveform similarity, identifying similar waveform intervals between the two sets of data, and then determining the waveform type for each interval. Different wave types have different vibration characteristics and are used in different game scenarios. For example, square waves are designed for instantaneous impact, with a rectangular square wave pulse where the current instantly jumps to its peak and then drops sharply. The voice coil motor generates high-frequency, short-duration, high-acceleration vibrations, used in shooting games for the instantaneous firing or weapon slashing feedback. Sine wave control, on the other hand, is designed for smooth, continuous vibrations, with the current changing according to a sine wave pattern, generating vibrations from the voice coil motor. Periodic, uniform vibrations are used in racing game scenarios such as engine roar and vibration, and road surface feedback. Oblique waves, such as sawtooth waves and triangular waves, are used to control the gradual transition. The current rises or falls linearly, and the voice coil motor generates vibrations with gradually changing intensity. This is used in games such as weapon charging vibration enhancement and vibration decay. The damping effect of the user's body varies for different waveform vibrations, so it is necessary to classify different types of waveforms for comparison and proportional feature identification. Based on the waveform type, the frequency and amplitude ratio of the waveform interval between the second vibration data and the expected vibration data is identified to form the vibration difference ratio. The vibration difference ratio corresponding to each type of waveform reflects the damping effect of the current user's grip on the game controller on the actual vibration. Different users, such as different grip methods or different hand muscle levels, will ultimately have different vibration difference ratios. S300 receives the second control waveform signal, corrects the second control waveform signal according to the vibration difference ratio corresponding to various waveforms, and inputs the corrected second control waveform signal into the voice coil motor for control.
[0020] It should be noted that the game console continues to send vibration control waveform signals from the motor inside the game controller according to the game progress. After identifying the vibration difference ratios corresponding to the various types of waveforms constructed in the aforementioned steps, the control waveform signals received by the game controller can be regarded as the second control waveform signals. After receiving the second control waveform signals, the signals are classified into waveform types, and then the corresponding type waves in the second control waveform signals are adjusted and corrected according to the vibration difference ratios corresponding to each type of waveform. The amplitude of the corresponding type of wave is amplified proportionally and the frequency is increased proportionally according to the vibration difference ratio, so that when the corrected second control waveform signal is input into the voice coil motor, the effect of it driving the game controller to vibrate in the user's hand can achieve the same vibration effect as the uncorrected second control waveform signal causing the game controller to vibrate under user damping.
[0021] In this embodiment, by acquiring the data of the voice coil motor of the game controller in its factory state, a correlation between the waveform signal and vibration under undamped conditions is constructed. Then, based on the correlation, the first control waveform signal is converted into data of the expected vibration of the controller, and the actual vibration data is acquired. The expected vibration data is compared with the actual vibration data to identify the vibration difference ratio of various waveforms. This ratio reflects the difference in vibration between the damped and undamped conditions caused by each user holding the controller. When the control waveform signal is received again, the signal is corrected and adjusted according to the vibration difference ratio and input into the voice coil motor so that the vibration of the game controller is consistent with the expected vibration under undamped conditions. This ensures that the vibration feels consistent when different users use the controller and play games, improving the user experience and gaming experience.
[0022] The above is a detailed description of the first embodiment of the intelligent control method for a voice coil motor of a game controller provided by this application. The following is a detailed description of the second embodiment of the intelligent control method for a voice coil motor of a game controller provided by this application.
[0023] In this embodiment, a voice coil motor intelligent control method for a game controller is further provided. In the aforementioned step S200, before receiving the first control waveform signal, the method further includes: determining whether the current host user login information has an associated vibration difference ratio. If so, the associated vibration difference ratio is called to correct the second control waveform signal. In the aforementioned step S200, after comparing the second vibration data with the expected vibration data and identifying the vibration difference ratios corresponding to various waveforms, the method further includes: obtaining the current host user login information and associating the current host user login information with the vibration difference ratios. It should be noted that different users have different vibration difference ratios, which are user-specific. Therefore, the vibration difference ratio can be associated with the user login information on the host. When a new user uses the controller to operate the host, a new vibration difference ratio can be identified. When restarting the host to play the game, it can be first determined whether the host user login information already has a recorded associated vibration difference ratio. If so, it can be directly called without recalculating the signal processing, reducing computing power consumption. If not, the aforementioned step S200 is not executed. After identifying the vibration difference ratio of the new user, it is associated with the current host user login information, and can be directly called when the user is identified again. Furthermore, the user login time can be recorded. When the login interval of a user with an associated vibration difference ratio exceeds a preset threshold time, the user may have changed body shape, resulting in a significant change in the damping of the handheld game controller. The originally associated vibration difference ratio is no longer applicable, and at this time, it can also be regarded as a new user.
[0024] Furthermore, in the aforementioned step S200, before receiving the first control waveform signal, the method further includes: acquiring the current game type, identifying the preset wave type adjustment priority corresponding to the game type, and correcting the second control waveform signal according to the adjustment priority. It should be noted that the main wave type of the control waveform signal generated by the game console is different for different game types. For example, shooting games mainly focus on instantaneous impact, so the square wave type can be set as the highest priority, while racing games mainly focus on smooth and continuous feel, so the sine wave type can be set as the highest priority. When correcting the second control waveform signal, the correction can be based on the waveform with the highest priority for the game type, reducing the amount of calculation, improving the immediacy of the controller control feedback, and improving the user experience.
[0025] The above is a detailed description of a voice coil motor intelligent control method for a game controller according to the first aspect of this application. The following is a detailed description of an embodiment of a voice coil motor intelligent control device for a game controller according to the second aspect of this application.
[0026] Please see Figure 2 , Figure 2 This is a structural diagram of a voice coil motor intelligent control device for a game controller. This embodiment provides a voice coil motor intelligent control device for a game controller, comprising: The undamped data processing module 10 is used to acquire the first vibration data of the voice coil motor under the detected waveform signal when the game controller is in its factory state, and to establish the correlation between the detected waveform signal and the first vibration data. User damping feature module 20 is used to receive a first control waveform signal, calculate the expected vibration data corresponding to the first control waveform signal based on the correlation between the detected waveform signal and the vibration data, obtain the second vibration data corresponding to the first control waveform signal, compare the second vibration data with the expected vibration data, and identify the vibration difference ratio corresponding to various waveforms. The handle motor control module 30 is used to receive the second control waveform signal, correct the second control waveform signal according to the vibration difference ratio corresponding to various waveforms, and input the corrected second control waveform signal into the voice coil motor for control.
[0027] Furthermore, before receiving the first control waveform signal, the user damping feature module 20 also includes: determining whether the current host user login information has an associated vibration difference ratio; if so, then calling the associated vibration difference ratio to correct the second control waveform signal. After comparing the second vibration data with the expected vibration data and identifying the vibration difference ratios corresponding to various waveforms, the method further includes: obtaining the current host user login information and associating the current host user login information with the vibration difference ratios.
[0028] Furthermore, before receiving the first control waveform signal, the user damping feature module 20 also includes: Obtain the current game type, identify the preset wave type corresponding to the game type and adjust the priority, and correct the second control waveform signal according to the adjustment priority.
[0029] Furthermore, the voice coil motor used in this game controller employs closed-loop control and adaptive algorithms. By integrating an optical encoder or Hall sensor, it monitors position and speed in real time. Through closed-loop control such as PID, it dynamically adjusts the current to improve positioning accuracy to the microsecond level, achieving high-precision sensor feedback. The robust control algorithm uses sliding mode control to suppress interference from external temperature changes and load fluctuations. It also uses PWM pulse width modulation or sine wave drive technology to reduce current harmonics. This allows users to have a better vibration feedback experience when the voice coil motor is used in the game controller. The vibration feedback signal can be transmitted to the operator in milliseconds and microseconds, resulting in a rapid and realistic response. A third aspect of this application also provides a device for intelligent control of a voice coil motor for a game controller, including a processor and a memory: wherein the memory is used to store program code and transmit the program code to the processor; the processor is used to execute the above-mentioned intelligent control method for a voice coil motor for a game controller according to the instructions in the program code.
[0030] A fourth aspect of this application provides a computer-readable storage medium, characterized in that the computer-readable storage medium is used to store program code, the program code being used to execute the above-described intelligent control method for a voice coil motor of a game controller.
[0031] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working process of the above-described apparatus and equipment can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.
[0032] In the several embodiments provided in this application, it should be understood that the disclosed apparatus, devices, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another device, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces, or indirect coupling or communication connection between devices or units, and may be electrical, mechanical, or other forms.
[0033] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0034] Furthermore, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0035] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0036] The above-described embodiments are only used to illustrate the technical solutions of the present invention, and are not intended to limit it. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A method for intelligent control of a voice coil motor in a game controller, characterized in that... include: Obtain the first vibration data of the voice coil motor under the detected waveform signal when the game controller is in its factory state, and establish the correlation between the detected waveform signal and the first vibration data. Receive a first control waveform signal, calculate the expected vibration data corresponding to the first control waveform signal based on the correlation between the detected waveform signal and the vibration data; obtain the second vibration data corresponding to the first control waveform signal; compare the second vibration data with the expected vibration data, and identify the vibration difference ratio corresponding to each type of waveform; The system receives the second control waveform signal and corrects it according to the vibration difference ratio corresponding to various waveforms. The corrected second control waveform signal is then input into the voice coil motor for control.
2. The intelligent control method for a voice coil motor in a game controller according to claim 1, characterized in that, Before receiving the first control waveform signal, the method further includes: determining whether the current host user login information has an associated vibration difference ratio; if so, then calling the associated vibration difference ratio to correct the second control waveform signal. After comparing the second vibration data with the expected vibration data and identifying the vibration difference ratios corresponding to various waveforms, the method further includes: obtaining the current host user login information and associating the current host user login information with the vibration difference ratios.
3. The intelligent control method for a voice coil motor in a game controller according to claim 1, characterized in that, Before receiving the first control waveform signal, the method further includes: Obtain the current game type, identify the preset wave type corresponding to the game type and adjust the priority, and correct the second control waveform signal according to the adjustment priority.
4. A voice coil motor intelligent control device for a game controller, characterized in that, include: The undamped data processing module is used to acquire the first vibration data of the voice coil motor under the detected waveform signal when the game controller is in its factory state, and to establish the correlation between the detected waveform signal and the first vibration data. The user damping feature module is used to receive a first control waveform signal, calculate the expected vibration data corresponding to the first control waveform signal based on the correlation between the detected waveform signal and the vibration data, obtain the second vibration data corresponding to the first control waveform signal, compare the second vibration data with the expected vibration data, and identify the vibration difference ratio corresponding to various waveforms. The handle motor control module is used to receive the second control waveform signal, correct the second control waveform signal according to the vibration difference ratio corresponding to various waveforms, and input the corrected second control waveform signal into the voice coil motor for control.
5. The intelligent control device for a voice coil motor in a game controller according to claim 4, characterized in that, Before receiving the first control waveform signal, the user damping feature module further includes: determining whether the current host user login information has an associated vibration difference ratio; if so, calling the associated vibration difference ratio to correct the second control waveform signal. After comparing the second vibration data with the expected vibration data and identifying the vibration difference ratios corresponding to various waveforms, the method further includes: obtaining the current host user login information and associating the current host user login information with the vibration difference ratios.
6. The intelligent control device for a voice coil motor in a game controller according to claim 4, characterized in that, Before receiving the first control waveform signal, the user damping feature module further includes: Obtain the current game type, identify the preset wave type corresponding to the game type and adjust the priority, and correct the second control waveform signal according to the adjustment priority.
7. A smart control device for a voice coil motor in a game controller, characterized in that, The device includes a processor and a memory: The memory is used to store program code and transmit the program code to the processor; The processor is used to execute, according to the instructions in the program code, a voice coil motor intelligent control method for a game controller as described in any one of claims 1-3.
8. A computer-readable storage medium, characterized in that, The computer-readable storage medium is used to store program code for executing the intelligent control method for a voice coil motor of a game controller according to any one of claims 1-3.