Method and device for generating sweep frequency characteristic curve of vibration motor and storage medium
1. A method for generating a sweep frequency characteristic curve of a vibration motor is characterized by comprising the following steps:
sequentially inputting driving voltage signals corresponding to all frequency points in a preset frequency range to the vibration motor, and acquiring feedback current signals corresponding to all the driving voltage signals;
obtaining an acceleration signal of each frequency point according to the feedback current signal and the driving voltage signal of each frequency point;
and generating the sweep frequency characteristic curve according to the corresponding steady-state amplitude value when the acceleration signal corresponding to each frequency point reaches a steady state and the frequency point.
2. A method for generating a sweep characteristic curve of a vibration motor as claimed in claim 1, wherein the step of generating the sweep characteristic curve based on the corresponding steady-state amplitude value when the acceleration signal corresponding to each of the frequency points reaches a steady state and the frequency point comprises:
acquiring a first logarithm value of the steady-state amplitude value and a second logarithm value of the frequency point;
and taking the second logarithm value as an abscissa and the first logarithm value as an ordinate to generate the sweep frequency characteristic curve.
3. A method for generating a sweep frequency characteristic curve of a vibration motor as claimed in claim 1, wherein before the step of sequentially inputting the driving voltage signals corresponding to each frequency point in a preset frequency range to the vibration motor and obtaining the feedback current signals corresponding to each driving voltage signal, the method further comprises:
acquiring each frequency point in a preset frequency range;
and generating a driving voltage signal corresponding to each frequency point according to a preset duration, a preset voltage amplitude and a frequency corresponding to each frequency point, wherein the driving voltage signal corresponding to each frequency point comprises a plurality of discrete voltage signals within the preset duration.
4. A method for generating a sweep frequency characteristic curve of a vibration motor as claimed in claim 3, wherein said step of deriving an acceleration signal for each of said frequency points from said feedback current signal and said drive voltage signal for each of said frequency points comprises:
acquiring a speed signal corresponding to each discrete voltage signal according to a feedback current signal corresponding to each discrete voltage signal and a characteristic parameter of the vibrating motor, wherein the characteristic parameter comprises a direct current resistance of the vibrating motor and a motor electromagnetic parameter;
and acquiring the acceleration signal according to the speed signal corresponding to the adjacent discrete voltage signal and the time interval of the adjacent discrete voltage signal.
5. A method for generating a sweep frequency characteristic curve of a vibration motor as claimed in claim 3, wherein said step of obtaining an acceleration signal for each of said frequency points from said feedback current signal and said drive voltage signal for each of said frequency points further comprises, after said step of obtaining an acceleration signal for each of said frequency points:
acquiring a sampling period corresponding to the acceleration signal reaching a steady state within a preset duration corresponding to each frequency point;
acquiring the maximum acceleration signal of the sampling period in the acceleration signals corresponding to each frequency point;
and obtaining the steady-state amplitude according to the amplitude of the maximum acceleration signal.
6. A method for generating a sweep frequency characteristic curve of a vibration motor as claimed in claim 3, wherein said step of obtaining an acceleration signal for each of said frequency points from said feedback current signal and said drive voltage signal for each of said frequency points is followed by further comprising:
acquiring a sampling period corresponding to the acceleration signal reaching a steady state within a preset duration corresponding to each frequency point;
acquiring the maximum speed signal of the sampling period in the speed signals corresponding to each frequency point;
and multiplying the maximum speed signal and the current angular frequency to obtain the steady-state amplitude.
7. A sweep frequency characteristic curve generating method of a vibration motor as claimed in claim 3, wherein said step of acquiring each frequency point in a preset frequency range comprises:
acquiring a preset frequency distribution density;
and generating the frequency points according to the frequency distribution density and the preset frequency range.
8. A method for generating a sweep frequency characteristic curve of a vibration motor as claimed in claim 1, wherein the step of sequentially inputting a driving voltage signal corresponding to each frequency point within a preset frequency range to the vibration motor and acquiring a feedback current signal corresponding to each driving voltage signal comprises:
sequentially carrying out power amplification treatment on the driving voltage signals corresponding to each frequency point in a preset frequency range;
and inputting each drive voltage signal subjected to power amplification processing to the vibration motor, and acquiring a feedback current signal corresponding to each amplified drive voltage signal.
9. A sweep frequency characteristic curve generation apparatus for a vibration motor, comprising a memory for storing a sweep frequency characteristic curve generation program for a vibration motor, and a processor, wherein the sweep frequency characteristic curve generation program for a vibration motor in the memory is executed by the processor to implement the sweep frequency characteristic curve generation method for a vibration motor according to any one of claims 1 to 8.
10. A computer-readable storage medium, characterized in that the computer-readable storage medium has stored thereon a sweep characteristic generation program of a vibration motor, which when executed by a processor, implements the steps of the sweep characteristic generation method of a vibration motor according to any one of claims 1 to 8.
Background
The vibration motor is widely applied to various vibration occasions of terminal equipment, and in order to fully exert the resonance characteristic of the linear motor and find a frequency range with the maximum vibration intensity, the frequency sweep characteristic of the motor needs to be measured, namely a change curve of the vibration intensity of the motor along with the frequency under a unit driving voltage.
In order to detect the change curve of the vibrating motor, the linear motor is usually fixed on a tool block, an acceleration sensor is coaxially installed in the vibration direction of the motor, and a sweep frequency characteristic curve is drawn by testing the acceleration amplitude under the drive of voltages with different frequencies.
Disclosure of Invention
The invention mainly aims to provide a method and a device for generating a frequency sweep characteristic curve of a vibration motor and a storage medium, and aims to solve the technical problem of high detection cost in the generation process of the frequency sweep characteristic curve.
In order to achieve the above object, the present invention provides a method for generating a sweep frequency characteristic curve of a vibration motor, the method comprising:
sequentially inputting driving voltage signals corresponding to all frequency points in a preset frequency range to the vibration motor, and acquiring feedback current signals corresponding to all the driving voltage signals;
obtaining an acceleration signal of each frequency point according to the feedback current signal and the driving voltage signal of each frequency point;
and generating the sweep frequency characteristic curve according to the corresponding steady-state amplitude value when the acceleration signal corresponding to each frequency point reaches a steady state and the frequency point.
Optionally, the step of generating the sweep characteristic curve according to the steady-state amplitude corresponding to each frequency point when the acceleration signal reaches a steady state and the frequency point includes:
acquiring a first logarithm value of the steady-state amplitude value and a second logarithm value of the frequency point;
and taking the second logarithm value as an abscissa and the first logarithm value as an ordinate to generate the sweep frequency characteristic curve.
Optionally, before the step of sequentially inputting the driving voltage signals corresponding to each frequency point in the preset frequency range to the vibration motor and acquiring the feedback current signals corresponding to each driving voltage signal, the method further includes:
acquiring each frequency point in a preset frequency range;
and generating a driving voltage signal corresponding to each frequency point according to a preset duration, a preset voltage amplitude and a frequency corresponding to each frequency point, wherein the driving voltage signal corresponding to each frequency point comprises a plurality of discrete voltage signals within the preset duration.
Optionally, the step of obtaining the acceleration signal of each frequency point according to the feedback current signal and the driving voltage signal of each frequency point includes:
acquiring a speed signal corresponding to each discrete voltage signal according to a feedback current signal corresponding to each discrete voltage signal and a characteristic parameter of the vibrating motor, wherein the characteristic parameter comprises a direct current resistance of the vibrating motor and a motor electromagnetic parameter;
and acquiring the acceleration signal according to the speed signal corresponding to the adjacent discrete voltage signal and the time interval of the adjacent discrete voltage signal.
Optionally, after the step of obtaining the acceleration signal of each frequency point according to the feedback current signal and the driving voltage signal of each frequency point, the method further includes:
acquiring a sampling period corresponding to the acceleration signal reaching a steady state within a preset duration corresponding to each frequency point;
acquiring the maximum acceleration signal of the sampling period in the acceleration signals corresponding to each frequency point; and obtaining the steady-state amplitude according to the amplitude of the maximum acceleration signal.
Optionally, after the step of obtaining the acceleration signal of each frequency point according to the feedback current signal and the driving voltage signal of each frequency point, the method further includes:
acquiring a sampling period corresponding to the acceleration signal reaching a steady state within a preset duration corresponding to each frequency point;
acquiring the maximum speed signal of the sampling period in the speed signals corresponding to each frequency point; and multiplying the maximum speed signal and the current angular frequency to obtain the steady-state amplitude.
Optionally, the step of acquiring each frequency point in the preset frequency range includes:
acquiring a preset frequency distribution density;
and generating the frequency points according to the frequency distribution density and the preset frequency range.
Optionally, the step of sequentially inputting the driving voltage signals corresponding to each frequency point within the preset frequency range to the vibration motor and acquiring the feedback current signals corresponding to each driving voltage signal includes:
sequentially carrying out power amplification treatment on the driving voltage signals corresponding to each frequency point in a preset frequency range;
and inputting each drive voltage signal subjected to power amplification processing to the vibration motor, and acquiring a feedback current signal corresponding to each amplified drive voltage signal.
In addition, in order to achieve the above object, the present invention further provides a frequency sweep characteristic curve generating device for a vibration motor, the frequency sweep characteristic curve generating device for a vibration motor includes a memory and a processor, the memory is used for storing a frequency sweep characteristic curve generating program for a vibration motor, and the frequency sweep characteristic curve generating program for a vibration motor in the memory is executed by the processor to implement the frequency sweep characteristic curve generating method for a vibration motor according to any one of the above aspects.
In addition, to achieve the above object, the present invention further provides a computer-readable storage medium, on which a sweep frequency characteristic curve generation program of a vibration motor is stored, wherein the sweep frequency characteristic curve generation program of the vibration motor, when executed by a processor, implements the steps of the sweep frequency characteristic curve generation method of the vibration motor according to any one of the above.
According to the method, the device and the storage medium for generating the frequency sweep characteristic curve of the vibrating motor, the acceleration signal is directly obtained through the feedback current signal corresponding to the input voltage driving signal, the acceleration amplitude is obtained according to the acceleration signal, the frequency sweep characteristic curve can be obtained according to the frequency point and the acceleration amplitude, an acceleration sensor is not needed to be arranged to collect the acceleration signal so as to generate the corresponding frequency sweep characteristic curve, and the detection cost is low.
Drawings
Fig. 1 is a schematic diagram of a hardware architecture of an apparatus involved in a frequency sweep characteristic curve generation method of a vibration motor according to the present invention;
fig. 2 is a schematic flowchart of a first exemplary embodiment of a method for generating a frequency sweep characteristic curve of a vibration motor according to the present invention;
fig. 3 is an exemplary schematic diagram of a frequency sweep characteristic generated by the frequency sweep characteristic generation method of the vibration motor of the present invention;
fig. 4 is a flowchart illustrating a second exemplary embodiment of a frequency sweep characteristic curve generation method for a vibration motor according to the present invention.
The objects, features and advantages of the present invention will be further explained with reference to the accompanying drawings.
Detailed Description
It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
Referring to fig. 1, fig. 1 is a schematic diagram of a hardware architecture of an apparatus related to the method for generating a frequency sweep characteristic curve of a vibration motor according to the present invention.
As shown in fig. 1, the device for generating a sweep characteristic curve of a vibration motor according to this embodiment may be a terminal device, or may be a single control component, such as a control chip, in the terminal device.
The sweep frequency characteristic curve generating device of the vibration motor in the present embodiment may include a memory 110 and a processor 120, where the memory 110 is configured to store a sweep frequency characteristic curve generating program of the vibration motor; and a processor 120 for executing the sweep characteristic curve generation program in the memory 110.
In the technical solution disclosed in this embodiment, the sweep frequency characteristic curve may be stored after the sweep frequency characteristic curve is generated, or a specific processing operation may be performed according to the sweep frequency characteristic curve, for example, a transfer function of the vibration motor is generated according to the sweep frequency characteristic curve, so that after an acceleration waveform to be restored is converted into a driving voltage signal according to the transfer function, the vibration motor is driven by using the driving voltage signal obtained by the conversion. The vibration motor in this scheme may be a resonant motor.
The sweep frequency characteristic curve generation program for the vibration motor in the memory 110, when executed by the processor 120, implements the steps of:
sequentially inputting driving voltage signals corresponding to all frequency points in a preset frequency range to the vibration motor, and acquiring feedback current signals corresponding to all the driving voltage signals;
obtaining an acceleration signal of each frequency point according to the feedback current signal and the driving voltage signal of each frequency point;
and generating the sweep frequency characteristic curve according to the corresponding steady-state amplitude value when the acceleration signal corresponding to each frequency point reaches a steady state and the frequency point.
Referring to fig. 2, fig. 2 is a schematic flowchart of a first exemplary embodiment of a frequency sweep characteristic curve generation method of the present invention, in this embodiment, the frequency sweep characteristic curve generation method includes:
step S10, sequentially inputting driving voltage signals corresponding to each frequency point in a preset frequency range to the vibration motor, and acquiring feedback current signals corresponding to each driving voltage signal;
the preset frequency range in this embodiment may be [ fL, fH ], where fL is the minimum frequency of the preset frequency range, and fH is the maximum frequency of the preset frequency range, and the preset frequency range may be set to [10Hz,10000Hz ], where the preset frequency range may be greater than or equal to the vibration frequency range of the vibration motor, that is, the vibration frequency range of the vibration motor is within the preset frequency range, so that each frequency point of the vibration motor can be detected. The feedback current signal is a current signal acquired by a current sensor arranged on a coil of the vibration motor after a driving voltage signal is input to the vibration motor, and each driving voltage signal corresponds to one feedback current signal.
In this embodiment, the driving voltage signal may be generated according to a frequency corresponding to the frequency point and a preset voltage amplitude, and the voltage amplitude corresponding to the driving voltage signal is smaller than or equal to a rated voltage amplitude of the vibration motor.
Step S20, obtaining an acceleration signal of each frequency point according to the feedback current signal and the driving voltage signal of each frequency point;
the driving voltage signal corresponding to each frequency point in this embodiment may be composed of a plurality of discrete voltage signals, and the duration corresponding to the plurality of discrete voltage signals may be preset, that is, step S20 may include:
acquiring each frequency point in a preset frequency range;
and generating a driving voltage signal corresponding to each frequency point according to a preset duration, a preset voltage amplitude and a frequency corresponding to each frequency point, wherein the driving voltage signal corresponding to each frequency point comprises a plurality of discrete voltage signals within the preset duration.
Each frequency point in the preset frequency range may be generated through a preset frequency distribution density or according to a preset step length, that is, the step of obtaining each frequency point in the preset frequency range may include:
acquiring a preset frequency distribution density;
and generating the frequency points according to the frequency distribution density and the preset frequency range.
For example, the preset frequency range may be [ fL, fH ], the frequency distribution density is n, the logarithmic frequency difference df is calculated from the frequency distribution density as (lgfH-lgfL)/n, and the sweep characteristic range is divided into n +1 discrete logarithmic frequency points on average, i.e., { lgfL, lgfL + df, lgfL +2df, …, lgfL + (n-1) df, lgfH }; setting a preset duration dt, namely the time interval of two adjacent discrete logarithmic frequency points, and keeping the frequency of a sweep voltage signal unchanged within a dt range; generating a sweep frequency voltage signal, generating n +1 sine or cosine signals with amplitude of Um and frequencies of {10^ lgfL, 10^ (lgfL + df), 10^ (lgfL +2df), …,10 ^ lgfL + (n-1) df ], 10^ lgfH } respectively according to a voltage amplitude Um and n +1 divided discrete logarithmic frequency points { lgfL, lgfL + df, …, lgfL + (n-1) df, lgfH }, combining the n +1 sine or cosine signals into a signal according to the sequence of the cosine from small to large or from large to small, and inputting the combined signal to a vibration motor.
Alternatively, the predetermined frequency range may be [ fL, fH ], and when the frequency point is generated according to the predetermined compensation, the logarithmic frequency difference df may be preset as a step size, and the logarithmic frequency point, { lgfL, lgfL + df, lgfL +2df, …, lgfL + (n-1) df, lgfH } may be obtained according to the step size df.
It is understood that the acceleration signal can be calculated by the velocity signal, that is, step S20 includes:
acquiring a speed signal corresponding to each discrete voltage signal according to a feedback current signal corresponding to each discrete voltage signal and a characteristic parameter of the vibrating motor, wherein the characteristic parameter comprises a direct current resistance of the vibrating motor and a motor electromagnetic parameter;
and acquiring the acceleration signal according to the speed signal corresponding to the adjacent discrete voltage signal and the time interval of the adjacent discrete voltage signal.
Correspondingly, the velocity signal is calculated byWherein v (z) is a velocity signal, u (z) is an amplitude of a discrete voltage signal, i (z) is a feedback current signal, and R (z) is a predetermined voltage amplitudeeBe the direct current resistance of vibrating motor, Bl is the motor electromagnetism parameter.
Correspondingly, the acceleration signal is calculated by the formulaTsZ is the number of discrete voltage signals associated with the sequence of discrete voltage signals.
Step S30, generating the sweep frequency characteristic curve according to the steady-state amplitude corresponding to each frequency point when the acceleration signal reaches a steady state and the frequency point.
In this embodiment, a sampling period when the acceleration signal reaches a steady state may be set, and a steady-state amplitude value is determined according to the acceleration signal in the sampling period, and the sampling period when the acceleration signal reaches the steady state may be the acceleration signal corresponding to the last sampling period, that is, before step S30, the method further includes:
acquiring a sampling period corresponding to the acceleration signal reaching a steady state within a preset duration corresponding to each frequency point;
acquiring the maximum acceleration signal of the sampling period in the acceleration signals corresponding to each frequency point;
and obtaining the steady-state amplitude according to the amplitude of the maximum acceleration signal.
The amplitude of the maximum acceleration signal may be directly taken as the steady state amplitude.
Alternatively, the steady state amplitude may also be obtained from the speed signal, that is, step S30 is preceded by:
acquiring a sampling period corresponding to the acceleration signal reaching a steady state within a preset duration corresponding to each frequency point;
acquiring the maximum speed signal of the sampling period in the speed signals corresponding to each frequency point;
and multiplying the maximum speed signal and the current angular frequency to obtain the steady-state amplitude.
For example, the sampling period corresponding to the acceleration signal reaching the steady state is the last sampling period, that is, the speed signal corresponding to the last period in the time period in which each discrete logarithmic frequency point acts is selected, the maximum vm is detected, and then the current angular frequency is multiplied by the maximum speed to obtain the acceleration amplitude am ═ 2 pi × f × vm, which is the acceleration amplitude a (f) corresponding to the logarithmic frequency point.
In this embodiment, the sweep characteristic curve is a curve of the logarithm of the acceleration amplitude changing with the logarithm of the frequency, that is, step S30 includes:
acquiring a first logarithm value of the steady-state amplitude value and a second logarithm value of the frequency point;
and taking the second logarithm value as an abscissa and the first logarithm value as an ordinate to generate the sweep frequency characteristic curve.
For example, if the steady-state amplitude is a (f), the first logarithm is 20lg [ a (f)/Um ], the corresponding frequency point is fm, and the second logarithm is lgfm, the frequency sweep characteristic curve obtained by the above method is shown in fig. 3.
In the technical scheme disclosed in this embodiment, an acceleration signal is directly obtained through a feedback current signal corresponding to an input voltage driving signal, an acceleration amplitude is obtained according to the acceleration signal, a sweep frequency characteristic curve can be obtained according to a frequency point and the acceleration amplitude, an acceleration sensor is not required to be arranged to acquire the acceleration signal to generate a corresponding sweep frequency characteristic curve, and the detection cost is low.
Further, referring to fig. 4, a second exemplary embodiment of the method for generating a frequency sweep characteristic curve according to the present invention is provided based on the first exemplary embodiment, in this exemplary embodiment, step S10 includes:
step S11, sequentially carrying out power amplification processing on the driving voltage signals corresponding to each frequency point in a preset frequency range;
step S12, inputting each of the amplified driving voltage signals to the vibration motor, and obtaining a feedback current signal corresponding to each of the amplified driving voltage signals.
In this embodiment, all the driving voltage signals input to the vibration motor are processed by a power method, and the power amplifiers corresponding to the power amplification processing may be of a class a, B, AB, or D, so that the power of the driving voltage signals input to the vibration motor is stable.
As can be understood by those skilled in the art, after the sweep frequency characteristic curve is obtained, the obtained sweep frequency characteristic curve can be directly stored in the terminal device corresponding to the vibration motor, so that the terminal device performs corresponding control according to the stored sweep frequency characteristic curve; or, a corresponding transfer function may be generated according to a sweep characteristic curve and stored in a terminal device, for example, second-order high-pass filter parameter fitting is performed on the sweep characteristic curve to obtain filter parameters, where the filter parameters include an actual quality factor, a gain, and a cut-off frequency, a frequency range of a target vibration waveform is obtained according to a target vibration waveform of the vibration motor, a lower limit value of the target frequency is determined according to the frequency range, and the target vibration waveform is an acceleration waveform; and correcting the sweep frequency characteristic of the vibration motor according to the target frequency lower limit value, the filter parameter and a preset reference quality factor to obtain a transfer function of a target vibration waveform and a voltage driving signal of the vibration motor.
The present invention further provides a frequency sweep characteristic curve generation apparatus, where the frequency sweep characteristic curve generation apparatus includes a memory and a processor, where the memory is used to store a frequency sweep characteristic curve generation program, and the frequency sweep characteristic curve generation program in the memory is executed by the processor to implement the frequency sweep characteristic curve generation method according to any of the above embodiments.
The present invention further provides a computer-readable storage medium, in which a sweep characteristic curve generation program is stored, and the sweep characteristic curve generation program, when executed by a processor, implements the steps of the sweep characteristic curve generation method according to the above embodiments.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or system that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or system. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or system that comprises the element.
The above-mentioned serial numbers of the embodiments of the present invention are merely for description and do not represent the merits of the embodiments.
Through the above description of the embodiments, those skilled in the art will clearly understand that the method of the above embodiments can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware, but in many cases, the former is a better implementation manner. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium (e.g., ROM/RAM, magnetic disk, optical disk) and includes instructions for enabling a terminal device (e.g., a mobile phone, a computer, a server, a controlled terminal, or a network device) to execute the method of each embodiment of the present invention.
The above description is only a preferred embodiment of the present invention, and not intended to limit the scope of the present invention, and all modifications of equivalent structures and equivalent processes, which are made by using the contents of the present specification and the accompanying drawings, or directly or indirectly applied to other related technical fields, are included in the scope of the present invention.