Drive signal generation method, apparatus, system, electronic device, medium, and program product

CN122292949APending Publication Date: 2026-06-26MAXEYE SMART TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
MAXEYE SMART TECH CO LTD
Filing Date
2026-03-30
Publication Date
2026-06-26

Smart Images

  • Figure CN122292949A_ABST
    Figure CN122292949A_ABST
Patent Text Reader

Abstract

This application relates to a method, apparatus, system, electronic device, storage medium, and program product for generating a drive signal. The method includes: driving a linear vibration motor to vibrate based on a first drive signal generated by a compensation filter, and acquiring the actual vibration response signal generated by the linear vibration motor during vibration; determining the vibration error of the linear vibration motor based on the actual vibration response signal and a target vibration response signal; adjusting the parameters of the compensation filter using an adaptive algorithm based on the vibration error and a transmission channel estimation model of the drive signal; and generating a second drive signal using the parameter-adjusted compensation filter to drive the linear vibration motor based on the second drive signal. This method can improve the reliability of motor vibration.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of circuit technology, and in particular to a method, apparatus, system, electronic device, storage medium, and program product for generating drive signals. Background Technology

[0002] Linear resonant motors, with their advantages of rapid start-up, low power consumption, and precise vibration direction, have been widely used in high-end styluses to provide high-precision tactile feedback. The vibration performance of a linear resonant motor is highly dependent on its physical resonant frequency, which is easily affected by factors such as manufacturing tolerances, component aging, assembly differences, ambient temperature variations, and power supply voltage fluctuations. This results in significant differences in the tactile sensation produced by different devices or under different usage conditions under the same drive signal.

[0003] Therefore, it is urgent to solve the problem of how to achieve high-precision, adaptive compensation and adjustment of the linear resonant motor drive signal to ensure the consistency and reliability of the stylus tactile feedback under different devices and usage scenarios. Summary of the Invention

[0004] Therefore, it is necessary to provide a drive signal generation method, apparatus, system, electronic device, storage medium, and program product that can improve the reliability of motor vibration in response to the above-mentioned technical problems.

[0005] Firstly, this application provides a method for generating a driving signal. The method includes:

[0006] The first driving signal generated by the compensation filter drives the linear vibration motor to vibrate, and the actual vibration response signal generated by the linear vibration motor during the vibration process is obtained.

[0007] The vibration error of the linear vibration motor is determined based on the actual vibration response signal and the target vibration response signal.

[0008] Based on the transmission channel estimation model of vibration error and driving signal, an adaptive algorithm is used to adjust the parameters of the compensation filter; and

[0009] A second drive signal is generated using a compensation filter with adjusted parameters, and the linear vibration motor is driven based on the second drive signal.

[0010] In one embodiment, the method further includes: driving a linear vibration motor to vibrate based on a test drive signal, and acquiring a test vibration response signal generated by the linear vibration motor during the vibration process, wherein the test vibration response signal and the first drive signal are transmitted to the linear vibration motor via the same transmission channel; and estimating a channel estimation function of the transmission channel using a preset identification algorithm based on the test vibration response signal, and using the channel estimation function as a transmission channel estimation model.

[0011] In one embodiment, the transfer function of the parameter-adjusted compensation filter is the inverse of the channel estimation function.

[0012] In one embodiment, driving a linear vibration motor to vibrate based on a first driving signal generated by a compensation filter includes: filtering a target vibration response signal using a compensation filter to obtain a first driving signal; and outputting the first driving signal to an amplification circuit so that the amplification circuit amplifies the first driving signal and applies it to the linear vibration motor.

[0013] In one embodiment, the first drive signal is discretely applied to the linear vibration motor; driving the linear vibration motor to vibrate based on the test drive signal includes: periodically outputting the test drive signal during the time interval when the first drive signal is not applied to the linear vibration motor.

[0014] Secondly, this application also provides a drive signal generation device. The device includes:

[0015] The response acquisition module is used to drive the linear vibration motor to vibrate based on the first drive signal generated by the compensation filter, and to acquire the actual vibration response signal generated by the linear vibration motor during the vibration process; wherein, the drive signal is generated based on the compensation filter.

[0016] The error acquisition module is used to determine the vibration error of the linear vibration motor based on the actual vibration response signal and the target vibration response signal.

[0017] A parameter adjustment module is used to adjust the parameters of the compensation filter using an adaptive algorithm based on the transmission channel estimation model according to vibration error and driving signal; and

[0018] The signal generation module is used to generate a second drive signal using a compensation filter with adjusted parameters, so as to drive the linear vibration motor based on the second drive signal.

[0019] In one embodiment, the device further includes a test module for: driving a linear vibration motor to vibrate based on a test drive signal, and acquiring a test vibration response signal generated by the linear vibration motor during the vibration process, wherein the test vibration response signal and the first drive signal are transmitted to the linear vibration motor via the same transmission channel; estimating the channel estimation function of the transmission channel using a preset identification algorithm based on the test vibration response signal, and using the channel estimation function as the transmission channel estimation model.

[0020] In one embodiment, the transfer function of the parameter-adjusted compensation filter is the inverse of the channel estimation function.

[0021] In one embodiment, the response acquisition module is specifically used to: filter the target vibration response signal using a compensation filter to obtain a first driving signal; and output the first driving signal to an amplification circuit so that the amplification circuit amplifies the first driving signal and applies it to the linear vibration motor.

[0022] In one embodiment, the first drive signal is discretely applied to the linear vibration motor; the test module is specifically used to periodically output a test drive signal during the time interval when the first drive signal is not applied to the linear vibration motor.

[0023] Thirdly, this application also provides a linear motor vibration compensation system, comprising: a control chip for generating a first drive signal based on a compensation filter; an amplifier circuit for amplifying the first drive signal and applying the amplified first drive signal to a linear vibration motor; a vibration sensor for acquiring the actual vibration response signal generated by the linear vibration motor during vibration; wherein the control chip is further configured to determine the vibration error of the linear vibration motor based on the actual vibration response signal and the target vibration response signal; adjust the parameters of the compensation filter using an adaptive algorithm based on the vibration error and a transmission channel estimation model of the drive signal; and generate a second drive signal using the parameter-adjusted compensation filter to drive the linear vibration motor based on the second drive signal.

[0024] Fourthly, this application also provides an electronic device comprising a linear vibration motor and a linear motor vibration compensation system as described in any of the third aspects.

[0025] Fifthly, this application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the method described in any one of the first aspects above.

[0026] In a sixth aspect, this application also provides a computer program product comprising a computer program that, when executed by a processor, implements the steps of the method described in any one of the first aspects above.

[0027] The aforementioned drive signal generation method, apparatus, system, electronic device, storage medium, and program product drive a linear vibration motor to vibrate based on a first drive signal generated by a compensation filter, and acquire the actual vibration response signal generated by the linear vibration motor during vibration. Based on the actual vibration response signal and the target vibration response signal, the vibration error of the linear vibration motor is determined. Based on the vibration error and a transmission channel estimation model of the drive signal, an adaptive algorithm is used to adjust the parameters of the compensation filter. The parameter-adjusted compensation filter is used to generate a second drive signal to drive the linear vibration motor. In this way, the parameters of the compensation filter can be adjusted according to the current real-time vibration error, referring to the transmission channel estimation model. This allows the adjusted compensation filter to compensate for the drive signal, generating a second drive signal with smaller error and a better match to the transmission channel estimation model. Consequently, the vibration error of the motor operating based on the second drive signal is reduced, improving the reliability and consistency of the motor's real-time drive. Because drive compensation is performed in real time, it is less affected by environmental and process factors, resulting in higher drive accuracy. Attached Figure Description

[0028] To more clearly illustrate the technical solutions in the embodiments of this application 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 this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort. In the drawings:

[0029] Figure 1 This is a flowchart illustrating a driving signal generation method in one embodiment;

[0030] Figure 2 This is a flowchart illustrating the process of determining the transmission channel estimation model in one embodiment;

[0031] Figure 3 This is a schematic diagram of the structure of a linear motor vibration compensation system in one embodiment;

[0032] Figure 4 This is a flowchart illustrating the adaptive compensation process in one embodiment; and

[0033] Figure 5 This is a structural block diagram of a drive signal generation device in one embodiment. Detailed Implementation

[0034] To make the above-mentioned objectives, features, and advantages of this application more apparent and understandable, the specific embodiments of this application will be described in detail below with reference to the accompanying drawings. It should be understood that many specific details are set forth in the following description in order to provide a full understanding of this application, but this application can be implemented in many other ways different from those described herein, and those skilled in the art can make similar modifications without departing from the spirit of this application. Therefore, this application is not limited to the specific embodiments disclosed below.

[0035] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the application.

[0036] The terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this application, "multiple" means at least two, such as two, three, etc., unless otherwise explicitly specified.

[0037] It is understood that the term "connection" in the following embodiments should be understood as "electrical connection," "communication connection," etc., if the connected circuits, modules, units, etc., have electrical signal or data transmission with each other.

[0038] It is understandable that "at least one" refers to one or more, and "multiple" refers to two or more. "At least a part of an element" refers to part or all of an element.

[0039] When used herein, the singular forms of “a,” “an,” and “the” may also include the plural forms unless the context clearly indicates otherwise. It should also be understood that the terms “comprising / including” or “having,” etc., specify the presence of the stated features, wholes, steps, operations, components, parts, or combinations thereof, but do not preclude the possibility of the presence or addition of one or more other features, wholes, steps, operations, components, parts, or combinations thereof. Meanwhile, the term “and / or” as used in this specification includes any and all combinations of the associated listed items.

[0040] Linear vibration motors have become the preferred actuators for haptic feedback in electronic devices such as high-end styluses due to their advantages of fast start-up, low energy consumption, and clear vibration direction. However, the actual vibration effect of a linear vibration motor is heavily dependent on its physical resonance characteristics and is affected by multiple factors such as manufacturing tolerances, aging, assembly differences, temperature changes, and power supply voltage fluctuations. This can lead to inconsistent tactile sensations when driving different electronic devices with the same drive signal or in different environments. Therefore, it is necessary to solve the problem of accurately compensating for inconsistent output vibration sensations from linear vibration motors.

[0041] In existing technologies, electronic devices such as styluses typically measure the back electromotive force of a motor during pauses in its operation to calculate the change in the motor's resonant frequency. Based on this, they dynamically adjust parameters such as the frequency and intensity of the drive signal to "lock" the motor's resonant point. Furthermore, they can test the vibration intensity of the motor at its resonant point as a benchmark for vibration calibration.

[0042] In related technologies, motors are driven using fixed waveforms or simple PWM signals. However, this approach cannot detect and compensate for changes in the motor's own parameters or environmental disturbances. In addition, some solutions rely on the one-time calibration of electronic devices at the factory and the storage of fixed compensation coefficients. During motor operation in the electronic device, a drive signal is generated based on the fixed compensation coefficients to drive the motor. However, this approach cannot cope with dynamic changes during use (such as temperature drift and aging). Therefore, current electronic devices suffer from problems such as poor motor drive consistency, reliability, and accuracy.

[0043] In view of this, embodiments of this application provide a drive signal generation method, which is a linear motor vibration adaptive compensation method based on a digital signal processing chip. This method constructs a closed-loop control process of real-time sensing, real-time processing, and real-time adjustment to dynamically identify the current state of the motor and apply precise inverse compensation, thereby outputting a stable and consistent expected tactile feedback under any conditions, ensuring the consistency, reliability, and accuracy of the motor drive.

[0044] It should be noted that the driving signal generation method provided in this application can be executed by a driving signal generation device, which can be implemented as part or all of an electronic device through software, hardware, or a combination of software and hardware. Optionally, the electronic device may include a control chip, and the driving signal generation device can be implemented as part or all of the control chip through software, hardware, or a combination of software and hardware. The electronic device may be a device with a linear vibration motor that requires tactile feedback, such as an electronic stylus. This application does not limit the type of electronic device to the connection between the control chip and the linear vibration motor. The control chip may be implemented as a digital signal processor (DSP) capable of digital signal processing technology. DSPs utilize their strong computing power, fast interrupt response, and suitability for digital signal processing to achieve driving control of devices like LRAs that are highly sensitive to frequency, phase, and amplitude. In the following method embodiments, the execution subject is executorically described as a control chip.

[0045] In one embodiment, such as Figure 1 As shown, a method for generating a driving signal is provided, including the following steps:

[0046] Step 101: Drive the linear vibration motor to vibrate based on the first driving signal generated by the compensation filter, and obtain the actual vibration response signal generated by the linear vibration motor during the vibration process.

[0047] The control chip incorporates a compensation filter. Optionally, the compensation filter can be an electronic filter implemented using software algorithms, or it can be implemented in hardware or a combination of hardware and software.

[0048] In this embodiment, the control chip can determine the target vibration response signal, which refers to a preset tactile waveform signal designed to make the linear vibration motor produce a specific tactile sensation (such as clicking, rolling, pulse, etc.). The control chip can process the target vibration response signal using a compensation filter to obtain a first driving signal.

[0049] In one alternative implementation, the control chip is equipped with a preset target vibration response signal, so the target vibration response signal can be directly acquired.

[0050] In another alternative implementation, the control chip acquires the target vibration response signal sent in real time by the processor of the electronic device, which corresponds to the current usage scenario.

[0051] In another optional implementation, the control chip determines the current usage scenario of the electronic device and queries a scenario response relationship table to obtain the target vibration response signal. The scenario response relationship table includes the correspondence between multiple different usage scenarios and different vibration response signals. This scenario response relationship table is pre-deployed and stored in the control chip. Optionally, the control chip receives real-time indication information sent by the processor of the electronic device to determine the current usage scenario.

[0052] The control chip is connected to the linear vibration motor, so the first drive signal is output and applied to the linear vibration motor to drive it to work.

[0053] For example, a linear vibration motor is a linear resonant actuator (LRA). A linear resonant motor is a tactile feedback device that uses electromagnetic force to drive a mass block in linear reciprocating motion. It precisely controls the frequency of the alternating current to match the resonant frequency of its internal spring-mass system, thereby generating strong and subtle vibrations with low power consumption. This can simulate complex tactile sensations such as clicking, sliding, and even roughness or smoothness, providing delicate vibration feedback. This application does not specifically limit the type of linear resonant motor.

[0054] In an optional embodiment of this application, the electronic device is provided with a vibration sensor, which is connected to a control chip. During the vibration of the motor, the vibration sensor acquires the actual vibration response signal generated by the linear vibration motor during the vibration process, and the control chip receives the actual vibration response signal sent by the vibration sensor.

[0055] Optionally, the vibration sensor can be an accelerometer, attached to the linear vibration motor or positioned along its transmission path, to more accurately acquire the actual vibration response signal. For example, it can be a MEMS (Micro-Electro-Mechanical Systems) accelerometer.

[0056] Optionally, the control chip is equipped with an analog-to-digital converter and an analog-to-digital converter interface. The vibration sensor is connected to the analog-to-digital converter interface. The control chip receives the actual vibration response signal through this interface, performs analog-to-digital conversion using the analog-to-digital converter, and then determines the vibration error based on the converted signal.

[0057] Step 102: Determine the vibration error of the linear vibration motor based on the actual vibration response signal and the target vibration response signal.

[0058] Ideally, the actual vibration response signal generated by the linear vibration motor driven by the first drive signal should match the target vibration response signal. However, as mentioned above, multiple factors such as manufacturing tolerances, component aging, assembly differences, temperature variations, and power supply voltage fluctuations can affect the actual vibration response signal, preventing them from being completely identical. To achieve more reliable and precise vibration drive, it is necessary to acquire the vibration error in real time and adjust the drive signal for the next drive accordingly, minimizing the error between the actual and target vibration response signals.

[0059] For example, the vibration error is obtained by subtracting the target vibration response signal d(n) from the actual vibration response signal x(n): e(n) = d(n) - x(n).

[0060] Based on the current vibration error, we can determine how to adjust the drive signal to reduce the vibration error in the next cycle.

[0061] Step 103: Based on the transmission channel estimation model of vibration error and driving signal, the parameters of the compensation filter are adjusted using an adaptive algorithm.

[0062] An estimation model of the transmission channel for the control chip to acquire the drive signal is provided. The transmission channel refers to the path from the output of the first drive signal from the control chip to the linear vibration motor. It can be understood that this transmission path can interfere with the first drive signal due to various factors, leading to the aforementioned vibration error. The transmission channel estimation model describes the complete transformation process of the signal from transmission to reception; essentially, it establishes a mathematical model that can be used to reconstruct the distortion experienced by the signal in the physical medium, enabling accurate compensation and demodulation.

[0063] This application embodiment obtains the transmission channel estimation model, and, referring to the transmission channel estimation model and vibration error, uses an adaptive algorithm to adjust the parameters of the step-size filter, thereby reducing subsequent vibration error. Specifically, the adaptive algorithm uses the transmission channel estimation model to perceive the system state in real time, and then dynamically adjusts the parameters of the compensation filter based on the error, enabling it to automatically adapt to changes in signal or environment, thus continuously maintaining optimal filtering performance.

[0064] In an optional embodiment of this application, the control chip periodically acquires the latest transmission channel estimation model of the drive signal, and the period length can be preset according to requirements. This further ensures the accuracy of parameter adjustment.

[0065] Optionally, the parameters of the adjusted compensation filter include at least one of phase, amplitude, and time-domain response, etc., not all of which are fully illustrated here.

[0066] Step 104: Use the parameter-adjusted compensation filter to generate a second drive signal to drive the linear vibration motor based on the second drive signal.

[0067] At this point, the control chip continues to process the target vibration response signal using the adjusted compensation filter to obtain the second drive signal.

[0068] It is understandable that during the motor driving process, the control chip repeatedly executes the transmission channel estimation model based on the latest vibration error and the latest drive signal, uses an adaptive algorithm to adjust the parameters of the compensation filter, and uses the parameter-adjusted compensation filter to generate the latest drive signal, thereby driving the linear vibration motor based on the compensated drive signal, so as to reduce the vibration error.

[0069] The aforementioned drive signal generation method drives a linear vibration motor to vibrate based on a first drive signal generated by a compensation filter, and acquires the actual vibration response signal generated by the linear vibration motor during vibration. Based on the actual vibration response signal and the target vibration response signal, the vibration error of the linear vibration motor is determined. Based on the vibration error and the transmission channel estimation model of the drive signal, an adaptive algorithm is used to adjust the parameters of the compensation filter. The parameter-adjusted compensation filter is then used to generate a second drive signal to drive the linear vibration motor. In this way, the parameters of the compensation filter can be adjusted according to the current real-time vibration error, referring to the transmission channel estimation model. This allows the adjusted compensation filter to compensate for the drive signal, generating a second drive signal with smaller error and a better match to the transmission channel estimation model. Consequently, the vibration error of the motor operating based on the second drive signal is reduced, improving the reliability and consistency of the motor's real-time drive. Because drive compensation is performed in real time, it is less affected by environmental and process factors, resulting in higher drive accuracy.

[0070] In one embodiment, driving a linear vibration motor to vibrate based on a first driving signal generated by a compensation filter includes: filtering a target vibration response signal using a compensation filter to obtain a first driving signal; and outputting the first driving signal to an amplifier circuit so that the amplifier circuit amplifies the first driving signal and applies it to the linear vibration motor.

[0071] Since the pins of the control chip typically allow for smaller currents and voltages, while a typical linear vibration motor requires larger currents and voltages to operate, an amplifier circuit is also deployed in the electronic device to amplify the first drive signal and ensure drive reliability.

[0072] This is understandable, as the magnification factor can be preset.

[0073] Optionally, the amplifier circuit can be an H-bridge driver circuit, connected between the control chip and the motor, and can consist of a gate driver and four power MOSFETs. The first drive signal received by the H-bridge driver circuit from the control chip can be two complementary PWM drive signals, which then convert the low-voltage drive signal into a high-voltage, high-current power signal capable of bidirectionally driving the motor coil.

[0074] It is understandable that, similarly, driving a linear vibration motor based on a second driving signal includes: filtering the target vibration response signal using a compensation filter with adjusted parameters to obtain a second driving signal; and outputting the second driving signal to an amplifier circuit so that the amplifier circuit amplifies the second driving signal and applies it to the linear vibration motor.

[0075] The H-bridge drive circuit efficiently amplifies the low-power drive signal output by the control chip into a high-current, bidirectional drive signal, thereby fully leveraging the performance potential of linear vibration motors (such as LRAs), achieving rapid start-stop and precise amplitude control. This results in crisp, delicate, and unblemished tactile feedback, ensuring stable reciprocating vibration of the motor mass within the spring system and preventing mechanical damage caused by unidirectional impacts. Simultaneously, the protection mechanism integrated into the H-bridge effectively isolates the motor's back EMF from interfering with the control chip, improving system reliability.

[0076] The process of obtaining the transmission channel estimation model is explained below, such as... Figure 2 A process for determining a transmission channel estimation model is shown, the method further comprising:

[0077] Step 201: Drive the linear vibration motor to vibrate based on the test drive signal, and obtain the test vibration response signal generated by the linear vibration motor during the vibration process.

[0078] The test drive signal and the first drive signal are transmitted to the linear vibration motor via the same transmission channel.

[0079] The test drive signal is pre-deployed in the control chip, or the control chip receives the test drive signal sent by the processor of the electronic device.

[0080] Optionally, the test drive signal is a wideband test signal, such as a white noise signal or a swept frequency signal. It is understood that the test drive signal does not affect the normal vibration of the motor.

[0081] Optionally, the control chip outputs a test drive signal to the amplifier circuit, so that the amplifier circuit amplifies the test drive signal and applies it to the linear vibration motor.

[0082] In this way, the test drive signal and the first drive signal are transmitted to the linear vibration motor through the same transmission channel. The transmission channel estimation model determined based on the test vibration response signal can also characterize the transmission path of the drive signal.

[0083] Similarly, the vibration sensor acquires the test vibration response signal and transmits it to the control chip.

[0084] It is understandable that the test drive signal and the first drive signal act on the motor at different times, so the control chip receives the test vibration response signal and the actual vibration response signal at different times.

[0085] Step 202: Based on the test vibration response signal, use a preset identification algorithm to estimate the channel estimation function of the transmission channel, and use the channel estimation function as the transmission channel estimation model.

[0086] In a timely manner, by collecting the test vibration response signal of the vibration motor under a known test drive signal, and combining it with the preset system identification algorithm, the end-to-end transmission channel consisting of the drive end, amplifier circuit, motor body and mechanical load is modeled, thereby estimating the secondary channel transfer function of the transmission channel as the channel estimation function, which is used for subsequent vibration control optimization, resonant frequency tracking or tactile waveform compensation.

[0087] Transmission path estimation models are used to characterize the properties of the entire physical path, including amplifiers, motors, mechanical structures, and sensors.

[0088] Identification algorithms are methods that inversely construct a mathematical model of a system by observing its input and output data. In optional embodiments of this application, the preset identification algorithm may include, for example, a least squares algorithm. Thus, with the goal of minimizing the sum of squared prediction errors, the optimal parameters describing the dynamic characteristics of the channel are analytically solved, thereby obtaining a discrete transfer function model. This model accurately reflects the characteristics between the driving signal and mechanical vibration.

[0089] In one embodiment, the first drive signal is applied discretely to the linear vibration motor. In other words, the control chip digitally generates a series of discrete voltage or PWM pulse sequences, which, after being amplified by an H-bridge, periodically excite the voice coil-spring-mass system inside the motor, causing it to produce controlled reciprocating vibrations.

[0090] The method involves driving a linear vibration motor to vibrate based on a test drive signal, including periodically outputting a test drive signal during a time interval when the first drive signal is not applied to the linear vibration motor.

[0091] During the idle time interval when the first drive signal is not applied to the linear vibration motor, short-term test drive signals can be periodically inserted to sense the current dynamic characteristics of the motor online. Because the mechanical response of the LRA has a rapid decay characteristic, these short-term tests do not produce perceptible interference vibrations. However, by synchronously acquiring its transient response and combining it with system identification algorithms (such as the least squares method) to update the transmission channel estimation model in real time, it can accurately track resonant frequency drift or damping parameter changes caused by temperature variations, aging, or assembly differences. This provides a high-fidelity, adaptive driving basis for subsequent tactile feedback, significantly improving tactile consistency and reliability during long-term use.

[0092] In one embodiment, the transfer function of the parameter-adjusted compensation filter is inversely related to the channel estimation function.

[0093] The transfer function of a filter describes the mathematical expression of how the filter amplifies or attenuates the input signal, and can be used to characterize the filter's performance. In this application, referring to the transmission channel estimation model, an adaptive algorithm is used to adjust the parameters of the compensation filter based on the vibration error, so that the adjusted compensation filter is inversely related to the transmission channel estimation model.

[0094] The adaptive algorithm updates the coefficients of the compensation filter W(z) in real time based on the vibration error. The goal of the update is to approximate the inverse model of the transmission channel estimation model S(z), such that W(z)*S(z)≈1. The updated W(z) is immediately applied to the generation of the drive signal at the next time step, forming a closed-loop control.

[0095] Specifically, when the transfer function of the compensation filter is inversely related to the channel estimation function, the compensation filter becomes the inverse model of the transmission channel estimation model.

[0096] Therefore, the second drive signal generated by the adjusted compensation filter pre-compensates the interference transmitted in the transmission channel. The pre-compensation cancels out the interference during transmission. After being transmitted to the motor through the transmission channel, the actual vibration response signal generated by the motor vibration approaches the target vibration response signal.

[0097] In an optional embodiment of this application, the adaptive algorithm includes the Filtered-x Least Mean Squares (FxLMS) algorithm. This algorithm, by pre-compensating for the dynamic characteristics of the driving and sensing links, enables the adaptive algorithm to work stably and efficiently on real hardware, thereby achieving high-fidelity haptic rendering or precise vibration suppression.

[0098] For ease of understanding, the method and system provided in this application are illustrated below with a complete embodiment. Figure 3A schematic diagram of a linear motor vibration compensation system is shown, along with the signal flow. The system mainly includes a DSP chip, an H-bridge drive circuit, a linear vibration motor, and a feedback sensor.

[0099] DSP chip: As the core of the system, it is responsible for running target waveform generation, system identification, adaptive control algorithms, and PWM signal generation. Its high-speed computing power ensures real-time performance.

[0100] H-bridge driver circuit: Connected between the DSP and the motor, it typically consists of a gate driver and four power MOSFETs. It receives two complementary PWM signals generated by the DSP and converts the low-voltage control signal into a high-voltage, high-current power signal capable of bidirectionally driving the motor coils.

[0101] Linear vibration motor: as the controlled object and actuator, it can be, for example, an LRA.

[0102] Feedback sensor: preferably a MEMS accelerometer mounted on the motor or its conductive structure, used to measure the actual vibration acceleration of the motor in real time and feed it back to the ADC interface of the DSP.

[0103] The system's adaptive compensation process for drive signals is described in the following reference. Figure 4 As shown:

[0104] S1: System initialization and target model setting. The target acceleration waveform d(n) or its frequency domain target transfer function corresponding to the desired tactile effect is pre-stored or generated in real time in the DSP chip as the target vibration response signal.

[0105] S2: Feedforward Drive and Vibration Acquisition. The DSP chip generates an initial drive signal y(n) based on the current built-in compensation filter W(z), which is then amplified by an H-bridge to drive the motor. Simultaneously, the accelerometer acquires the actual vibration signal x(n), which is then sent to the DSP chip via an ADC.

[0106] S3: System Identification. The DSP periodically injects a wideband test signal into the motor. By acquiring the test vibration response signal generated by the motor based on this test signal, the estimated value of the secondary channel transfer function S(z) from the drive end to the sensor end is identified online using algorithms such as the least squares method. This function characterizes the properties of the entire physical path, including the H-bridge, motor, mechanical structure, and sensors.

[0107] S4: Error Calculation and Adaptive Filtering. Calculate the error between the target response and the actual response, e(n) = d(n) - x(n). Input this error e(n) into the core of the adaptive algorithm.

[0108] S5: Drive signal update. The adaptive algorithm updates the coefficients of the compensation filter W(z) in real time based on the error. The goal of W(z) is to approximate the inverse model of the ideal feedforward channel, such that W(z)*S(z)≈1. The updated W(z) is immediately applied to the generation of the drive signal at the next time step, forming closed-loop control.

[0109] S6: Real-time loop execution. Repeat steps S2 to S5 to achieve continuous online adjustment and compensation.

[0110] Optionally, the digital signal processing chip and vibration sensor are integrated into the same wireless system-on-a-chip.

[0111] Optionally, the H-bridge drive circuit includes a full-bridge integrated motor driver.

[0112] In this embodiment, the powerful real-time signal processing capabilities of a DSP chip are utilized, combined with the high-fidelity, high-efficiency bidirectional driving characteristics of an H-bridge circuit, and a vibration sensor or feedback operational amplifier is introduced to form a feedback closed loop. The system acquires the actual vibration response of the motor in real time, compares it with the target response model, and dynamically adjusts the drive signal output through the H-bridge via an adaptive control algorithm run by the DSP. This achieves real-time online compensation for the motor's nonlinear characteristics, resonant frequency shift, and external disturbances. Specifically, through closed-loop feedback and adaptive algorithms, the system automatically compensates for the effects of individual motor differences, aging, and temperature changes, ensuring a high degree of consistency in tactile feedback across different devices and throughout their entire lifespan. Furthermore, the DSP can handle complex algorithms, and the H-bridge supports bidirectional, high-precision voltage driving. The combination of these two technologies allows for the precise synthesis and output of arbitrarily complex analog drive waveforms, achieving subtle multimodal tactile sensations such as texture and pulse. Because this compensation process is performed online, no complex pre-calibration or fixed compensation table is required. It can track and suppress external disturbances in real time, resulting in extremely strong system robustness.

[0113] Based on the same inventive concept, this application also provides a linear motor vibration compensation system for implementing the drive signal generation method described above. The solution provided by this system is similar to the implementation described in the above method; therefore, the specific limitations of the one or more linear motor vibration compensation system embodiments provided below can be found in the limitations of the drive signal generation method described above, and will not be repeated here.

[0114] In one embodiment, a linear motor vibration compensation system is provided, the system comprising:

[0115] The control chip is used to generate the first drive signal based on the compensation filter.

[0116] An amplifier circuit is used to amplify the first drive signal and apply the amplified first drive signal to the linear vibration motor.

[0117] Vibration sensors are used to acquire the actual vibration response signals generated by a linear vibration motor during vibration.

[0118] The control chip is also used to determine the vibration error of the linear vibration motor based on the actual vibration response signal and the target vibration response signal; based on the vibration error and the transmission channel estimation model of the drive signal, an adaptive algorithm is used to adjust the parameters of the compensation filter; and the second drive signal is generated using the parameter-adjusted compensation filter to drive the linear vibration motor based on the second drive signal.

[0119] In one embodiment, the amplifier circuit is an H-bridge drive circuit; the vibration sensor is an accelerometer, which is attached to the linear vibration motor.

[0120] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.

[0121] Based on the same inventive concept, this application also provides a drive signal generating apparatus for implementing the drive signal generating method described above. The solution provided by this apparatus is similar to the implementation described in the above method; therefore, the specific limitations in one or more drive signal generating apparatus embodiments provided below can be found in the limitations of the drive signal generating method described above, and will not be repeated here.

[0122] In one embodiment, such as Figure 5 As shown, a drive signal generation device is provided, including a response acquisition module, an error acquisition module, a parameter adjustment module, and a signal generation module, wherein:

[0123] The response acquisition module is used to drive the linear vibration motor to vibrate based on the first drive signal generated by the compensation filter, and to acquire the actual vibration response signal generated by the linear vibration motor during the vibration process; wherein, the drive signal is generated based on the compensation filter.

[0124] The error acquisition module is used to determine the vibration error of the linear vibration motor based on the actual vibration response signal and the target vibration response signal.

[0125] A parameter adjustment module is used to adjust the parameters of the compensation filter using an adaptive algorithm based on the transmission channel estimation model according to vibration error and driving signal; and

[0126] The signal generation module is used to generate a second drive signal using a compensation filter with adjusted parameters, so as to drive the linear vibration motor based on the second drive signal.

[0127] In one embodiment, the device further includes a test module for: driving a linear vibration motor to vibrate based on a test drive signal, and acquiring a test vibration response signal generated by the linear vibration motor during the vibration process, wherein the test vibration response signal and the first drive signal are transmitted to the linear vibration motor via the same transmission channel; estimating the channel estimation function of the transmission channel using a preset identification algorithm based on the test vibration response signal, and using the channel estimation function as the transmission channel estimation model.

[0128] In one embodiment, the transfer function of the parameter-adjusted compensation filter is the inverse of the channel estimation function.

[0129] In one embodiment, the response acquisition module is specifically used to: filter the target vibration response signal using a compensation filter to obtain a first driving signal; and output the first driving signal to an amplification circuit so that the amplification circuit amplifies the first driving signal and applies it to the linear vibration motor.

[0130] In one embodiment, the first drive signal is discretely applied to the linear vibration motor; the test module is specifically used to periodically output a test drive signal during the time interval when the first drive signal is not applied to the linear vibration motor.

[0131] Each module in the aforementioned drive signal generation device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the memory of a computer device as software, so that the processor can call and execute the operations corresponding to each module.

[0132] In one embodiment, an electronic device is also provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps in the above-described method embodiments.

[0133] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the steps in the above method embodiments.

[0134] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps in the above method embodiments.

[0135] Those skilled in the art will understand that all or part of the processes in the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments described above. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.

[0136] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0137] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.

Claims

1. A method for generating a driving signal, characterized in that, include: The first driving signal generated by the compensation filter drives the linear vibration motor to vibrate, and the actual vibration response signal generated by the linear vibration motor during the vibration process is obtained. The vibration error of the linear vibration motor is determined based on the actual vibration response signal and the target vibration response signal. Based on the vibration error and the transmission channel estimation model of the driving signal, an adaptive algorithm is used to adjust the parameters of the compensation filter; as well as A second drive signal is generated using a compensation filter with adjusted parameters, and the linear vibration motor is driven based on the second drive signal.

2. The method according to claim 1, characterized in that, Also includes: The linear vibration motor is driven to vibrate based on the test drive signal, and the test vibration response signal generated by the linear vibration motor during the vibration process is obtained. The test drive signal and the first drive signal are transmitted to the linear vibration motor through the same transmission channel. as well as Based on the test vibration response signal, a preset identification algorithm is used to estimate the channel estimation function of the transmission channel, and the channel estimation function is used as the transmission channel estimation model.

3. The method according to claim 1 or 2, characterized in that, The transfer function of the compensation filter after parameter adjustment is the inverse of the channel estimation function.

4. The method according to claim 1 or 2, characterized in that, The first driving signal generated based on the compensation filter drives the linear vibration motor to vibrate, including: The target vibration response signal is filtered using the compensation filter to obtain the first driving signal; and The first drive signal is output to the amplifier circuit for amplification and then applied to the linear vibration motor.

5. The method according to claim 2, characterized in that, The first driving signal is applied discretely to the linear vibration motor; the step of driving the linear vibration motor to vibrate based on the test driving signal includes: During the time interval when the first drive signal is not applied to the linear vibration motor, the test drive signal is periodically output.

6. A drive signal generation device, characterized in that, include: The response acquisition module is used to drive a linear vibration motor to vibrate based on a first drive signal generated by a compensation filter, and to acquire the actual vibration response signal generated by the linear vibration motor during the vibration process; wherein, the drive signal is generated based on the compensation filter. An error acquisition module is used to determine the vibration error of the linear vibration motor based on the actual vibration response signal and the target vibration response signal. A parameter adjustment module is used to adjust the parameters of the compensation filter using an adaptive algorithm based on the vibration error and the transmission channel estimation model of the driving signal; and A signal generation module is used to generate a second drive signal using a compensation filter with adjusted parameters, so as to drive the linear vibration motor based on the second drive signal.

7. A linear motor vibration compensation system, characterized in that, include: A control chip is used to generate a first drive signal based on a compensation filter. An amplifier circuit is used to amplify the first driving signal and apply the amplified first driving signal to the linear vibration motor. A vibration sensor is used to acquire the actual vibration response signal generated by the linear vibration motor during vibration. The control chip is further configured to determine the vibration error of the linear vibration motor based on the actual vibration response signal and the target vibration response signal; and to adjust the parameters of the compensation filter using an adaptive algorithm based on the vibration error and the transmission channel estimation model of the drive signal. A second drive signal is generated using a compensation filter with adjusted parameters, and the linear vibration motor is driven based on the second drive signal.

8. An electronic device, characterized in that, The electronic device includes a linear vibration motor and a linear motor vibration compensation system as described in claim 7.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 5.

10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 5.