WO2021212838A1 - 一种振动驱动信号生成方法、装置和电子设备 - Google Patents

一种振动驱动信号生成方法、装置和电子设备 Download PDF

Info

Publication number
WO2021212838A1
WO2021212838A1 PCT/CN2020/132979 CN2020132979W WO2021212838A1 WO 2021212838 A1 WO2021212838 A1 WO 2021212838A1 CN 2020132979 W CN2020132979 W CN 2020132979W WO 2021212838 A1 WO2021212838 A1 WO 2021212838A1
Authority
WO
WIPO (PCT)
Prior art keywords
intensity
speed
vibration
signal
parameter
Prior art date
Application number
PCT/CN2020/132979
Other languages
English (en)
French (fr)
Inventor
郑亚军
Original Assignee
瑞声声学科技(深圳)有限公司
瑞声科技(新加坡)有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 瑞声声学科技(深圳)有限公司, 瑞声科技(新加坡)有限公司 filed Critical 瑞声声学科技(深圳)有限公司
Publication of WO2021212838A1 publication Critical patent/WO2021212838A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/016Input arrangements with force or tactile feedback as computer generated output to the user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/01Indexing scheme relating to G06F3/01
    • G06F2203/014Force feedback applied to GUI

Definitions

  • This application relates to the technical field of smart terminals, and in particular to a method, device and electronic equipment for generating a vibration drive signal.
  • the rich tactile experience can bring a more perfect user experience.
  • the user's tactile experience is usually realized based on a vibration effect. For example, when a user triggers a vibrating tactile experience, the application program generates a vibrating driving signal for driving a vibrating motor, and the motor runs under the driving of the vibrating driving signal to realize the vibrating tactile sensation.
  • this application provides a method, device and electronic device for generating a vibration drive signal, and this application also provides a computer-readable storage medium.
  • an embodiment of the present application provides a method for generating a vibration drive signal, including:
  • the user vibration and tactile parameters include: initial intensity adjustment parameters, which are used to adjust the initial signal of the drive signal; and intensity change parameters, which are used to Describe the change pattern of the intensity of the drive signal over time; speed change parameters, which are used to describe the change pattern of the intensity of the drive signal over time;
  • the original driving signal being used to drive the motor to achieve a default vibration touch
  • the first driving signal is calculated according to the user's vibration and touch parameters and the original driving signal, where:
  • the initial signal of the first driving signal is a first initial signal generated by adjusting the initial signal of the original driving signal according to the initial intensity adjustment parameter;
  • the intensity change pattern over time and the intensity change speed change pattern over time of the first driving signal are respectively, the intensity change pattern and the intensity change speed change pattern described by the intensity change parameter and the speed change parameter The changing pattern of time.
  • the initial intensity adjustment parameter includes an intensity multiple
  • the first initial signal is:
  • the signal generated by enlarging or reducing the initial signal of the original driving signal according to the intensity multiple is the signal generated by enlarging or reducing the initial signal of the original driving signal according to the intensity multiple.
  • the intensity change parameter includes a first amplitude gradual parameter used to describe a vibration amplitude increase speed or a vibration amplitude decrease speed, and the value of the first drive signal
  • the intensity change pattern is:
  • the vibration amplitude of the first initial signal is increased according to the vibration amplitude enhancement speed or the vibration of the first initial signal is reduced according to the vibration amplitude reduction speed Amplitude.
  • the intensity change parameter includes a second amplitude gradient parameter used to describe the final value of the vibration amplitude
  • the intensity change mode of the first driving signal is:
  • the vibration amplitude of the first initial signal is increased according to a first preset increment rule or the vibration of the first initial signal is reduced according to a first preset decrement rule
  • the amplitude is such that the vibration amplitude at the end of the first drive signal is the final value of the vibration amplitude.
  • the intensity change parameter includes a third amplitude gradient parameter
  • the intensity change mode of the first driving signal is:
  • the vibration amplitude of the first initial signal is increased according to a second preset increment rule or the vibration of the first initial signal is reduced according to a second preset decrement rule
  • the amplitude is such that the intensity at the end of the first driving signal is the intensity corresponding to the parameter value of the third amplitude gradient parameter.
  • the setting value range of the third amplitude gradient parameter is [0 ⁇ + ⁇ ], where:
  • the corresponding intensity is the intensity of the first initial signal
  • the corresponding intensity is the maximum intensity that the vibration device can achieve.
  • the speed change parameter includes a first speed gradual parameter used to describe an increase speed of the intensity change speed or a decrease speed of the intensity change speed, and the first drive signal
  • the change pattern of the intensity change rate is:
  • the intensity change speed of the first initial signal is increased according to the increasing speed of the intensity change speed or the first initial signal is reduced according to the decreasing speed of the intensity change speed The rate of change of signal strength.
  • the speed change parameter includes a second speed gradual parameter used to describe the final value of the intensity change speed
  • the change mode of the intensity change speed of the first drive signal is :
  • the intensity change speed is such that the intensity change speed at the end of the first drive signal is the final value of the intensity change speed.
  • the setting value range of the second speed gradual parameter is [- ⁇ + ⁇ ], where:
  • the final value of the intensity change speed is the intensity change speed of the first initial signal
  • the final value of the intensity change speed is the minimum intensity change speed that the vibration device can achieve
  • the final value of the intensity change speed is the maximum intensity change speed that the vibration device can achieve.
  • the calculating the first driving signal according to the user's vibration and tactile sensation parameter and the original driving signal includes:
  • the weighted envelope and the original driving signal are used to perform a multiplication operation to generate the first driving signal.
  • the acquiring a user's vibration and tactile sensation parameter includes:
  • the application scenario description of the original driving signal is acquired, and the user's vibration tactile sensation parameter is determined according to the application scenario description.
  • an embodiment of the present application provides a vibration drive signal generating device, including:
  • the parameter acquisition module is used to acquire the user's vibration and tactile sensation parameters.
  • the user's vibration and tactile sensation parameters include: the initial intensity adjustment parameter, which is used to adjust the initial signal of the drive signal; the intensity change parameter, which is used to describe the intensity of the drive signal over time The change mode of the speed; the speed change parameter, which is used to describe the change mode of the intensity change speed of the drive signal over time;
  • a signal acquisition module which is used to acquire an original drive signal, and the original drive signal is used to drive the motor to realize the default vibration and tactile sensation;
  • a calculation module which is used to calculate a first drive signal according to the user's vibration and touch parameters and the original drive signal, where:
  • the initial signal of the first driving signal is a first initial signal generated by adjusting the initial signal of the original driving signal according to the initial intensity adjustment parameter;
  • the intensity change pattern over time and the intensity change speed change pattern over time of the first driving signal are respectively, the intensity change pattern and the intensity change speed change pattern described by the intensity change parameter and the speed change parameter The changing pattern of time.
  • an embodiment of the present application provides an electronic device.
  • the electronic device includes a memory for storing computer program instructions and a processor for executing the program instructions, wherein, when the computer program instructions are executed by the processor, trigger The electronic device executes the method steps described in the embodiments of the present application.
  • an embodiment of the present application provides a computer-readable storage medium with a computer program stored in the computer-readable storage medium, which, when run on a computer, causes the computer to execute the method of the embodiment of the present application.
  • the first driving signal calculated by adjusting the original driving signal based on the user's vibration and tactile sensation parameters. Since the user's vibration and haptic parameters match the requirements of the tactile experience application scenario and/or the user's tactile experience requirements, the first driver The vibration effect achieved by the signal can meet the needs of tactile experience application scenarios and/or the user's tactile experience requirements; compared with the prior art, the method according to the above embodiments can provide users with a better tactile experience and improve the user's tactile experience. Ideality, improve user experience.
  • Fig. 1 shows a flowchart of an embodiment of a method for generating a vibration drive signal according to the present application
  • FIG. 2 is a schematic diagram of a data flow trend according to an embodiment of the present application.
  • FIG. 3 is a schematic diagram of setting a third amplitude gradient parameter according to an embodiment of the present application.
  • Fig. 4 is a schematic diagram of setting a second speed gradual parameter according to an embodiment of the present application.
  • FIG. 5 shows a flowchart of calculating a first driving signal according to an embodiment of the present application
  • Fig. 6 is a graph of the amplitude gradually increasing envelope obtained by calculation according to an embodiment of the present application.
  • FIG. 7 shows a waveform diagram of a first driving signal obtained by calculation according to an embodiment of the present application
  • Fig. 8 is a structural diagram of an embodiment of a device for generating a vibration drive signal according to the present application.
  • the present application provides a method for generating a vibration drive signal.
  • the inventor first analyzes the actual application scenario of realizing the tactile experience based on the vibration effect.
  • an application program in a technical solution that implements a haptic experience based on a vibration effect, an application program generates a vibration drive signal for driving a vibration motor, and the motor runs under the drive of the vibration drive signal to achieve a vibration tactile sensation.
  • different application scenarios correspond to different vibration and tactile sensations. If a unified vibration and tactile sensation is used, an ideal user tactile experience is bound to be achieved. Therefore, in a feasible tactile experience application solution, when the tactile experience is realized through the vibration effect, different vibration effects are realized through the change of intensity, thereby bringing a variety of tactile experiences to adapt to a variety of different tactile experiences Application scenarios to improve user experience.
  • the use environment of the device is a relatively quiet place.
  • the user's perception of vibration and tactile sensation in the current application scenario is more sensitive.
  • the vibration effect does not distinguish the noise level of the use environment.
  • the application directly calls the vibration effect setting in the manufacturer's settings to generate a vibration drive signal, the resulting vibration effect will often make the user feel "shocked".
  • the preset vibration effect setting cannot specifically set the user’s personal tactile habits. Certainly. Regardless of the user's personal tactile habits, in some application scenarios, the preset vibration effect not only fails to bring the user an ideal tactile experience, but may also reduce the user experience.
  • the user's perception of vibration tactile sensation is relatively slow compared to most people.
  • the application directly calls the preset vibration effect settings to generate a vibration drive signal
  • the resulting vibration effect will often not be clearly perceived by the user.
  • the user is relatively sensitive to the perception of vibration and tactile sensation.
  • the application directly calls the preset vibration effect setting to generate a vibration drive signal
  • the resulting vibration effect is likely to make the user feel pain.
  • one of the reasons for the unsatisfactory user experience and reduced user experience is that the vibration effect used to achieve the user's tactile experience does not match the requirements of the tactile experience application scenarios and/or the user's tactile experience requirements. Therefore, if the vibration drive signal generated by the application can be modified according to the specific tactile experience application scenario requirements and/or the user's tactile experience requirements, so that the final vibration effect matches the tactile experience application scenario requirements and/or the user's tactile experience requirements, then It can solve the problem of the user's unsatisfactory tactile experience and improve the user experience.
  • the vibration drive signal generated by the application program is adjusted from three aspects: signal intensity, intensity change pattern, and intensity change speed change pattern based on the requirements of haptic experience application scenarios and/or user haptic experience requirements , In order to obtain a new vibration drive signal, and use the new vibration drive signal to drive the motor to generate a vibration effect that can match the requirements of the haptic experience application scenario and/or the user's haptic experience requirements.
  • Fig. 1 shows a flowchart of an embodiment of a method for generating a vibration drive signal according to the present application.
  • a method for generating a vibration drive signal includes:
  • Step 110 Obtain user vibration and tactile parameters that match the requirements of the haptic experience application scenario and/or the user's tactile experience requirements.
  • the user vibration and tactile parameters include: an initial intensity adjustment parameter, which is used to adjust the initial signal of the driving signal; and the intensity change parameter, which Used to describe the change pattern of the intensity of the drive signal over time; the speed change parameter, which is used to describe the change pattern of the intensity of the drive signal over time;
  • Step 120 Obtain an original drive signal, which is used to drive the motor to achieve a default vibration and tactile sensation
  • Step 130 Calculate a first driving signal according to the user's vibration and touch parameters and the original driving signal, where:
  • the initial signal of the first driving signal is the first initial signal generated by adjusting the initial signal of the original driving signal according to the initial intensity adjustment parameter;
  • the intensity variation pattern with time and the intensity variation velocity variation pattern with time of the first driving signal are respectively the intensity variation pattern and the intensity variation velocity variation pattern with time described by the intensity variation parameter and the velocity variation parameter.
  • the vibration effect achieved by the first driving signal calculated and obtained by adjusting the original driving signal based on the user's vibration and haptic parameters is sufficient. Meet the needs of tactile experience application scenarios and/or the needs of users' tactile experience.
  • the method according to the foregoing embodiment can provide users with a better tactile experience, improve the ideality of the user's tactile experience, and improve the user experience.
  • Fig. 2 shows a schematic diagram of a data flow trend according to an embodiment of the present application.
  • the user's vibration tactile sensation parameter 201 is input to the data processor 210, and the data processor 210 reads the original driving signal from the memory 202.
  • the data processor 210 calculates and generates a first driving signal 220 according to the user's vibration and touch parameters and the original driving signal, and the first driving signal 220 is output to the motor 230 to achieve a vibration effect.
  • the initial intensity adjustment parameter includes an intensity multiple.
  • the first initial signal is a signal generated by amplifying or reducing the initial signal of the original driving signal according to the intensity multiple.
  • the initial signal of the original drive signal is enlarged or reduced according to the intensity multiple to generate the first initial signal. An initial signal.
  • step 130 in the process of adjusting the initial signal of the original driving signal according to the initial intensity adjustment parameter to generate the first initial signal, the data in the storage is read After the original driving signal, the whole signal is enlarged or reduced by s 1 times, and the s 1 value in the above process is the set value of the intensity multiple in the initial intensity adjustment parameter.
  • the vibration amplitude of the entire signal is enlarged or reduced by s 2 times.
  • the s 2 value is the set value of the intensity multiple in the initial intensity adjustment parameter.
  • the vibration intensity is adjusted by adjusting the vibration amplitude.
  • the intensity change parameter a parameter used to describe the change pattern of the vibration amplitude of the drive signal over time is defined.
  • the intensity change parameter includes an amplitude gradual change parameter used to describe the manner of the amplitude gradual change.
  • the intensity change parameter may also include a parameter used to describe other amplitude change modes, for example, an amplitude periodic change parameter used to describe a specific change mode of the amplitude periodic change.
  • the intensity change parameter includes a first amplitude gradual parameter used to describe the vibration amplitude increase speed or the vibration amplitude decrease speed.
  • the change pattern of the intensity of the first drive signal is: from the beginning to the end of the first drive signal, the vibration amplitude enhancement speed of the first amplitude gradual parameter increases the vibration amplitude of the first initial signal or according to the first amplitude
  • the vibration amplitude of the gradual parameter decreases and the speed decreases the vibration amplitude of the first initial signal. That is, in an implementation manner of step 130, in the process of generating the first initial signal, from the beginning to the end of the signal, the vibration amplitude of the first initial signal is enhanced according to the vibration amplitude enhancement speed of the first amplitude gradual parameter. Or the vibration amplitude weakening speed of the first amplitude gradient parameter weakens the vibration amplitude of the first initial signal to generate the first drive signal.
  • the intensity change parameter includes a second amplitude gradient parameter used to describe the final value of the vibration amplitude.
  • the change pattern of the intensity of the first drive signal is: from the beginning to the end of the first drive signal, the vibration amplitude of the first initial signal is enhanced according to the first preset increment rule or the first initial signal is weakened according to the first preset decrement rule.
  • the vibration amplitude of an initial signal is such that the vibration amplitude at the end of the first drive signal is the final value of the vibration amplitude.
  • step 130 in the process of generating the first driving signal, from the beginning to the end of the signal, the vibration amplitude of the first initial signal is enhanced according to the first preset increment rule or according to the first The preset decrement rule attenuates the vibration amplitude of the first initial signal, so that the intensity at the end of the signal is the final value of the vibration amplitude to generate the first drive signal.
  • the first preset increment rule and the first preset decrement rule may be any increment/decrement rule.
  • step 130 in the process of generating the first driving signal, from the beginning to the end of the signal, the vibration amplitude is maintained unchanged, the speed is increased, the vibration amplitude of the first initial signal is increased, or the vibration amplitude of the first initial signal is maintained.
  • the variable vibration amplitude weakens the speed to weaken the vibration amplitude of the first initial signal, so that the intensity at the end of the signal is the final value of the vibration amplitude to generate the first drive signal.
  • the intensity change parameter includes a third amplitude gradient parameter.
  • the change pattern of the intensity of the first drive signal is: from the beginning to the end of the first drive signal, the vibration amplitude of the first initial signal is enhanced according to the second preset increment rule or the first initial signal is weakened according to the second preset decrement rule.
  • the vibration amplitude of an initial signal is such that the intensity at the end of the first driving signal is the intensity corresponding to the parameter value of the third amplitude gradient parameter.
  • step 130 in the process of generating the first driving signal, from the beginning to the end of the signal, the vibration amplitude of the first initial signal is enhanced according to the second preset increment rule or according to the second The preset decrement rule weakens the vibration amplitude of the first initial signal, so that the intensity at the end of the signal is the intensity corresponding to the third amplitude gradient parameter to generate the first driving signal.
  • the setting range of the third amplitude gradient parameter is [0 ⁇ + ⁇ ], where:
  • the corresponding intensity is the intensity of the first initial signal
  • an open parameter interface is provided to obtain the final value of the vibration amplitude corresponding to when the set value of the third amplitude gradient parameter is + ⁇ .
  • the final value of the vibration amplitude is the maximum intensity that the vibration device can achieve.
  • the second preset increment rule and the second preset decrement rule may be any increment/decrement rule.
  • step 130 in the process of generating the first driving signal, from the beginning to the end of the signal, the vibration amplitude is maintained unchanged, the speed is increased, the vibration amplitude of the first initial signal is increased, or the vibration amplitude is not maintained.
  • the variable vibration amplitude weakens the speed to weaken the vibration amplitude of the first initial signal, so that the intensity at the end of the signal is the intensity corresponding to the third amplitude gradient parameter to generate the first driving signal.
  • FIG. 3 is a schematic diagram of setting a third amplitude gradient parameter according to an embodiment of the present application.
  • the setting value of the third amplitude gradient parameter is the parameter value ⁇ .
  • the third amplitude gradient parameter ⁇ is set to 1, it means that the intensity at the end of the signal is the same as that at the beginning of the signal and remains unchanged; when the third amplitude gradient parameter ⁇ is set to 0, it means that the intensity at the end of the signal is the weakest 0;
  • the third amplitude gradient parameter ⁇ is set to + ⁇ , it indicates that the intensity is the strongest when the signal ends.
  • an open parameter interface is provided here to obtain the final value of the vibration amplitude corresponding to the setting value of the third amplitude gradient parameter + ⁇ .
  • the final value of the vibration amplitude is the maximum intensity that the vibration device can achieve.
  • the speed change parameter includes a speed change parameter used to describe the speed change mode.
  • the speed change parameter may also include parameters used to describe other speed change modes, for example, a speed period change parameter used to describe a specific change mode of the intensity change speed periodically.
  • the speed change parameter includes a first speed gradual parameter used to describe an increase speed of the intensity change speed or a decrease speed of the intensity change speed.
  • the change pattern of the intensity change speed of the first drive signal is: from the beginning to the end of the first drive signal, increase the intensity change speed of the first initial signal according to the increase speed of the intensity change speed or decrease according to the weakening speed of the intensity change speed The rate of change of the intensity of the first initial signal.
  • step 130 in the process of generating the first initial signal, from the beginning to the end of the signal, the intensity change speed of the first initial signal is increased according to the enhancement speed of the intensity change speed or according to the intensity change The decreasing speed of the speed reduces the intensity change speed of the first initial signal to generate the first driving signal.
  • the speed change parameter includes a second speed gradual parameter used to describe the final value of the intensity change speed.
  • the change pattern of the intensity change speed of the first drive signal is: from the start to the end of the first drive signal, increase the intensity change speed of the first initial signal according to the third preset increment rule or according to the third preset decrement rule The intensity change speed of the first initial signal is reduced, so that the intensity change speed at the end of the first drive signal is the final value of the intensity change speed.
  • step 130 in the process of generating the first driving signal, from the beginning to the end of the signal, the intensity change speed of the first initial signal is increased according to the third preset increment rule or according to the third The preset decrement rule reduces the intensity change speed of the first initial signal, so that the intensity change speed at the end of the first driving signal is the final value of the intensity change speed.
  • the setting range of the second speed gradient parameter is [- ⁇ + ⁇ ], where:
  • the final value of the intensity change speed is the intensity change speed of the first initial signal
  • the final value of the intensity change speed is the maximum intensity change speed that the vibrating device can achieve
  • the final value of the intensity change speed is the minimum intensity change speed that the vibrating device can achieve.
  • the third preset increment rule and the third preset decrement rule may be any increment/decrement rule.
  • step 130 in the process of generating the first driving signal, from the beginning to the end of the signal, the change rate is maintained at a constant rate of change, the rate of change is increased, or the rate of change of intensity of the first initial signal is increased or remains unchanged.
  • the decreasing speed of the change speed reduces the intensity change speed of the first initial signal, so that the intensity change speed at the end of the first drive signal is the final value of the intensity change speed.
  • FIG. 4 is a schematic diagram of setting a second speed gradient parameter according to an embodiment of the present application.
  • the setting value of the second speed gradient parameter is ⁇ .
  • the second speed gradient parameter ⁇ When the second speed gradient parameter ⁇ is set to 0, it means that the change speed of the intensity at the end of the signal is consistent with the change speed of the intensity at the beginning of the signal, and the whole process changes at a constant speed; when the second speed gradient parameter ⁇ is greater than 0, it indicates the end of the signal The change speed of the intensity is smaller than the change speed of the intensity at the beginning of the signal (the larger ⁇ is, the smaller the change speed of the intensity at the end of the signal); when the second speed gradient parameter ⁇ is less than 0, it indicates the ratio of the change of the intensity at the end of the signal The intensity changes at the beginning of the signal (the smaller the ⁇ , the greater the intensity at the end of the signal).
  • step 130 in an implementation process of step 130, it is only necessary to refer to the vibration amplitude and the intensity change speed of the original signal at the beginning of the signal. Therefore, in an application scenario according to an implementation of step 130, in the process of adjusting the initial signal of the original driving signal according to the initial intensity adjustment parameter to generate the first initial signal, after reading the original driving signal in the storage, the The signal initial vibration amplitude of the original driving signal is enlarged or reduced by s 3 times, and the s 3 value in the above process is the set value of the intensity multiple in the initial intensity adjustment parameter.
  • the process of calculating the first driving signal according to the user's vibration and touch parameters and the original driving signal includes:
  • the weighted envelope is multiplied with the original driving signal to generate the first driving signal.
  • FIG. 5 shows a flowchart of calculating the first driving signal according to an embodiment of the present application. As shown in Figure 5:
  • Step 510 Obtain input parameters s (intensity multiple), ⁇ (third amplitude gradient parameter), ⁇ (second speed gradient parameter);
  • Step 520 read the original driving signal U0;
  • Step 530 Calculate the weighted envelope curve p according to the parameters s, ⁇ , and ⁇ ;
  • Step 531 Perform a multiplication operation on the weighted envelope curve p and the original driving signal U0 to obtain a first driving signal;
  • Step 540 Output the first driving signal.
  • the envelope curve p is calculated, and the formula is as follows:
  • t is the time variable
  • T is the original signal duration
  • s, ⁇ , and ⁇ are the input intensity multiples
  • p is the weight Envelope curve.
  • Fig. 6 is a graph of the amplitude fade-in envelope obtained by calculation according to an embodiment of the present application.
  • the amplitude fade-in envelope obtained by calculation according to the above formulas (1) and (2) is shown in FIG. 6.
  • the abscissa is time and the ordinate is intensity.
  • the two curves indicated by number 601 indicate that the amplitude of the vibration signal becomes stronger but the speed of intensity change gradually slows; the curve indicated by number 602 indicates that the amplitude of the vibration signal becomes stronger but the speed of intensity change is uniform; the two curves indicated by symbol 603
  • the bar curve indicates that the amplitude of the vibration signal is getting stronger but the speed of intensity change is getting faster.
  • FIG. 7 shows a waveform diagram of the first driving signal obtained by calculation according to an embodiment of the present application.
  • the first driving signal obtained by calculation according to an embodiment of the present application is shown in FIG. 7.
  • the abscissa is time and the ordinate is the voltage signal strength of the drive signal.
  • the amplitude of the drive signal becomes stronger.
  • the user customizes the user's vibration and tactile sensation parameters.
  • an interactive interface for inputting the user's vibration and tactile sensation parameters is provided, and the user's vibration and tactile sensation parameters of the first user are determined according to the input data of the first user.
  • a display interface as shown in FIG. 3 or FIG. 4 is provided, and the user can input the value of the parameter ⁇ or ⁇ by selecting the position corresponding to the parameter ⁇ or ⁇ on the interface shown in FIG. 3 or FIG. 4.
  • the vibration effect is adjusted according to the user's tactile experience feedback.
  • the vibration tactile feedback data of the second user is acquired, and the user vibration tactile sensing parameters of the second user are determined according to the vibration tactile feedback data of the second user.
  • the user's vibration and tactile sensation parameters matching the requirements of the application scenario are determined according to the current application scenario.
  • an application scenario description of the original driving signal is obtained, and the user's vibration and tactile sensation parameters are determined according to the application scenario description.
  • an embodiment of the present application also proposes a vibration drive signal generation device.
  • Fig. 8 is a structural diagram of an embodiment of a device for generating a vibration drive signal according to the present application.
  • the vibration drive signal generating device 800 includes:
  • the parameter acquisition module 810 is used to acquire the user's vibration and touch parameters.
  • the user's vibration and touch parameters include: initial intensity adjustment parameters, which are used to adjust the initial signal of the drive signal; intensity change parameters, which are used to describe the intensity of the drive signal over time Change mode; speed change parameter, which is used to describe the change mode of the intensity change speed of the drive signal over time;
  • the signal acquisition module 820 is used to acquire the original driving signal, and the original driving signal is used to drive the motor to realize the default vibration and tactile sensation;
  • the calculation module 830 is used to calculate the first driving signal according to the user's vibration and touch parameters and the original driving signal, where:
  • the initial signal of the first driving signal is the first initial signal generated by adjusting the initial signal of the original driving signal according to the initial intensity adjustment parameter;
  • the intensity variation pattern with time and the intensity variation velocity variation pattern with time of the first driving signal are respectively the intensity variation pattern and the intensity variation velocity variation pattern with time described by the intensity variation parameter and the velocity variation parameter.
  • the device provided by an embodiment of the present application shown in FIG. 8 can be used to implement the technical solutions of the method embodiments of the embodiments of the present application. For its implementation principles and technical effects, further reference may be made to related descriptions in the method embodiments.
  • the improvement of a technology can be clearly distinguished between hardware improvements (for example, improvements to the circuit structure of diodes, transistors, switches, etc.) or software improvements (improvements to the method and process). ).
  • hardware improvements for example, improvements to the circuit structure of diodes, transistors, switches, etc.
  • software improvements improvements to the method and process.
  • the improvement of many methods and processes of today can be regarded as a direct improvement of the hardware circuit structure.
  • Designers almost always get the corresponding hardware circuit structure by programming the improved method flow into the hardware circuit. Therefore, it cannot be said that the improvement of a method flow cannot be realized by the hardware entity module.
  • a programmable logic device for example, a Field Programmable Gate Array (Field Programmable Gate Array, FPGA)
  • PLD Programmable Logic Device
  • FPGA Field Programmable Gate Array
  • HDL Hardware Description Language
  • ABEL Advanced Boolean Expression Language
  • AHDL Altera Hardware Description Language
  • HDCal JHDL
  • Lava Lava
  • Lola MyHDL
  • PALASM RHDL
  • VHDL Very-High-Speed Integrated Circuit Hardware Description Language
  • Verilog Verilog
  • the controller can be implemented in any suitable manner.
  • the controller can take the form of, for example, a microprocessor or a processor and a computer-readable medium storing computer-readable program codes (such as software or firmware) executable by the (micro)processor. , Logic gates, switches, application specific integrated circuits (ASICs), programmable logic controllers and embedded microcontrollers. Examples of controllers include but are not limited to the following microcontrollers: ARC625D, Atmel AT91SAM, Microchip PIC18F26K20 and Silicon Labs C8051F320, the memory controller can also be implemented as part of the memory control logic.
  • controllers in addition to implementing the controller in a purely computer-readable program code manner, it is entirely possible to program the method steps to make the controller use logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded logic.
  • the same function can be realized in the form of a microcontroller or the like. Therefore, such a controller can be regarded as a hardware component, and the devices included in it for realizing various functions can also be regarded as a structure within the hardware component. Or even, the device for realizing various functions can be regarded as both a software module for realizing the method and a structure within a hardware component.
  • each module/unit is only a division of logical functions.
  • the functions of each module/unit can be implemented in the same or multiple software and/or hardware.
  • the devices proposed in the embodiments of the present application may be fully or partially integrated into one physical entity during actual implementation, or may be physically separated.
  • these modules can all be implemented in the form of software called by processing elements; they can also be implemented in the form of hardware; part of the modules can be implemented in the form of software called by the processing elements, and some of the modules can be implemented in the form of hardware.
  • the detection module may be a separately established processing element, or it may be integrated in a certain chip of the electronic device.
  • the implementation of other modules is similar.
  • all or part of these modules can be integrated together or implemented independently.
  • each step of the above method or each of the above modules can be completed by an integrated logic circuit of hardware in the processor element or instructions in the form of software.
  • the above modules may be one or more integrated circuits configured to implement the above methods, such as: one or more application specific integrated circuits (ASICs), or one or more digital signal processors ( Digital Singnal Processor, DSP, or, one or more Field Programmable Gate Array (FPGA), etc.
  • ASICs application specific integrated circuits
  • DSP Digital Singnal Processor
  • FPGA Field Programmable Gate Array
  • these modules can be integrated together and implemented in the form of a System-On-a-Chip (SOC).
  • SOC System-On-a-Chip
  • An embodiment of the present application also proposes an electronic device.
  • the electronic device includes a memory for storing computer program instructions and a processor for executing the program instructions.
  • the computer program instructions are executed by the processor, the electronic device is triggered.
  • the device executes the method steps described in the embodiments of the present application.
  • the foregoing one or more computer programs are stored in the foregoing memory, and the foregoing one or more computer programs include instructions.
  • the foregoing instructions are executed by the foregoing device, the foregoing device executes the application. The method steps described in the embodiment.
  • the processor of the electronic device may be an on-chip device SOC, and the processor may include a central processing unit (CPU), and may further include other types of processors.
  • the processor of the electronic device may be a PWM control chip.
  • the processor involved may include, for example, a CPU, a DSP, a microcontroller, or a digital signal processor, and may also include a GPU, an embedded neural network processor (Neural-network Process Units, NPU). ) And image signal processing (Image Signal Processing, ISP), the processor may also include necessary hardware accelerators or logic processing hardware circuits, such as ASIC, or one or more integrated circuits used to control the execution of the program of the technical solution of this application Wait.
  • the processor may have a function of operating one or more software programs, and the software programs may be stored in a storage medium.
  • the memory of the electronic device may be a read-only memory (read-only memory, ROM), other types of static storage devices that can store static information and instructions, and random access memory (random access memory).
  • ROM read-only memory
  • RAM random access memory
  • dynamic storage devices that can store information and instructions.
  • EEPROM electrically erasable programmable read-only memory
  • CD-ROM compact disc read-only memory
  • optical disc storage including compact discs, laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.
  • magnetic disk storage media or other magnetic storage devices or can also be used for carrying or Any computer-readable medium that stores desired program codes in the form of instructions or data structures and can be accessed by a computer.
  • the processor and the memory may be combined into a processing device, and more commonly, components are independent of each other.
  • the processor is used to execute the program code stored in the memory to implement the method described in the embodiment of the present application.
  • the memory may also be integrated in the processor, or independent of the processor.
  • equipment, device, module or unit described in the embodiments of the present application may be implemented by a computer chip or entity, or implemented by a product with a certain function.
  • the embodiments of the present application may be provided as methods, devices, or computer program products. Therefore, the present invention may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media containing computer-usable program codes.
  • any function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer readable storage medium.
  • the technical solution of the present application essentially or the part that contributes to the existing technology or the part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including Several instructions are used to make a computer device (which may be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the methods described in the various embodiments of the present application.
  • an embodiment of the present application also provides a computer-readable storage medium, where a computer program is stored in the computer-readable storage medium, and when it runs on a computer, the computer executes the method provided in the embodiment of the present application.
  • An embodiment of the present application also provides a computer program product.
  • the computer program product includes a computer program that, when running on a computer, causes the computer to execute the method provided in the embodiment of the present application.
  • These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing equipment to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing equipment are used to generate It is a device that realizes the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
  • These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing equipment to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device.
  • the device implements the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
  • These computer program instructions can also be loaded on a computer or other programmable data processing equipment, so that a series of operation steps are executed on the computer or other programmable equipment to produce computer-implemented processing, so as to execute on the computer or other programmable equipment.
  • the instructions provide steps for implementing the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
  • At least one refers to one or more
  • multiple refers to two or more.
  • “And/or” describes the association relationship of the associated objects, indicating that there can be three types of relationships, for example, A and/or B, which can mean that A exists alone, A and B exist at the same time, and B exists alone. Among them, A and B can be singular or plural.
  • the character “/” generally indicates that the associated objects before and after are in an “or” relationship.
  • the following at least one item” and similar expressions refer to any combination of these items, including any combination of single items or plural items.
  • At least one of a, b, and c can represent: a, b, c, a and b, a and c, b and c, or a and b and c, where a, b, and c can be single, or There can be more than one.
  • the terms “include”, “include” or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, product, or equipment including a series of elements includes not only those elements, but also Other elements that are not explicitly listed, or also include elements inherent to such processes, methods, commodities, or equipment. If there are no more restrictions, the element defined by the sentence “including a" does not exclude the existence of other identical elements in the process, method, commodity, or equipment that includes the element.
  • This application may be described in the general context of computer-executable instructions executed by a computer, such as a program module.
  • program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types.
  • This application can also be practiced in distributed computing environments. In these distributed computing environments, tasks are performed by remote processing devices connected through a communication network. In a distributed computing environment, program modules can be located in local and remote computer storage media including storage devices.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

一种振动驱动信号生成方法、装置和电子设备。方法包括:获取匹配触觉体验应用场景需求和/或用户触觉体验需求的用户振动触感参数(110),所述用户振动触感参数包括:初始强度调整参数,其用于调整驱动信号的初始信号;强度变化参数,其用于描述驱动信号的强度随时间的变化模式;速度变化参数,其用于描述驱动信号的强度变化速度随时间的变化模式;获取原始驱动信号(120);根据所述用户振动触感参数以及所述原始驱动信号计算第一驱动信号(130)。相较于现有技术,本振动驱动信号生成方法可以为用户提供更优的触觉体验。

Description

一种振动驱动信号生成方法、装置和电子设备 技术领域
本申请涉及智能终端技术领域,特别涉及一种振动驱动信号生成方法、装置和电子设备。
背景技术
丰富的触觉体验可以给带来更完美的用户体验,在现有技术方案中,通常基于振动效果来实现用户的触觉体验。例如,在用户触发振动触觉体验时,应用程序会生成用于驱动振动电机的振动驱动信号,电机在振动驱动信号的驱动下运行,从而实现振动触感。
随着触觉体验的普及,振动触觉体验的应用场景越来越多。由于触觉体验的应用场景多种多样,同时,用户的触觉感官也各不相同,在基于振动效果来实现用户的触觉体验时,存在用户触觉体验不理想的情况,振动效果并不能为用户带来预期的触觉体验。更严重的,在某些应用场景中,振动效果反而会降低用户体验。
发明内容
针对现有技术振动触觉体验应用场景中用户触觉体验不理想以及用户体验被降低的问题,本申请提供了一种振动驱动信号生成方法、装置和电子设备,本申请还提供一种计算机可读存储介质。
本申请实施例采用下述技术方案:
第一方面,本申请实施例提供一种振动驱动信号生成方法,包括:
获取匹配触觉体验应用场景需求和/或用户触觉体验需求的用户振动触感参数,所述用户振动触感参数包括:初始强度调整参数,其用于调整驱动信号的初始信号;强度变化参数,其用于描述驱动信号的强度随时间的变化模式;速度变化参数,其用于描述驱动信号的强度变化速度随时间的变化模式;
获取原始驱动信号,所述原始驱动信号用于驱动电机实现默认振动触感;
根据所述用户振动触感参数以及所述原始驱动信号计算第一驱动信号,其中:
所述第一驱动信号的初始信号为,根据所述初始强度调整参数调整所述原始驱动信号的初始信号而生成的第一初始信号;
所述第一驱动信号的强度随时间的变化模式以及强度变化速度随时间的变化模式分别为,所述强度变化参数以及所述速度变化参数所描述的强度随时间的变化模式以及强度变化速度随时间的变化模式。
在基于上述第一方面的一种可能的实现方式中,所述初始强度调整参数包括强度倍数,所述第一初始信号为:
按照所述强度倍数放大或缩小所述原始驱动信号的初始信号而生成的信号。
在基于上述第一方面的一种可能的实现方式中,所述强度变化参数包括用于描述振动幅值增强速度或振动幅值减弱速度的第一幅值渐变参数,所述第一驱动信号的强度的变化模式为:
从所述第一驱动信号的起始到结束,按照所述振动幅值增强速度增强所述第一初始信号的振动幅值或者按照所述振动幅值减弱速度减弱所述第一初始信号的振动幅值。
在基于上述第一方面的一种可能的实现方式中,所述强度变化参数包括用于描述振动幅值终值的第二幅值渐变参数,所述第一驱动信号的强度的变化模式为:
从所述第一驱动信号的起始到结束,按照第一预设增量规则增强所述第一初始信号的振动幅值或者按照第一预设减量规则减弱所述第一初始信号的振动幅值,使得所述第一驱动信号结束时的振动幅值为所述振动幅值终值。
在基于上述第一方面的一种可能的实现方式中,所述强度变化参数包括第三幅值渐变参数,所述第一驱动信号的强度的变化模式为:
从所述第一驱动信号的起始到结束,按照第二预设增量规则增强所述第一初始信号的振动幅值或者按照第二预设减量规则减弱所述第一初始信号的振动幅值,使得所述第一驱动信号结束时的强度为所述第三幅值渐变参数的参数值所对应的强度。
在基于上述第一方面的一种可能的实现方式中,所述第三幅值渐变参数的设定值范围为[0~+∞],其中:
所述第三幅值渐变参数的设定值越大,对应的强度越大;
当所述第三幅值渐变参数的设定值为0时,对应的强度为0;
当所述第三幅值渐变参数的设定值为1时,对应的强度为所述第一初始信号的强度;
当所述第三幅值渐变参数的设定值为+∞时,对应的强度为振动设备所能实现的最大强度。
在基于上述第一方面的一种可能的实现方式中,所述速度变化参数包括用于描述强度变化速度的增强速度或强度变化速度的减弱速度的第一速度渐变参数,所述第一驱动信号的强度变化速度的变化模式为:
从所述第一驱动信号的起始到结束,按照所述强度变化速度的增强速度增加所述第一初始信号的强度变化速度或者按照所述强度变化速度的减弱速度减小所述第一初始信号的强度变化速度。
在基于上述第一方面的一种可能的实现方式中,所述速度变化参数包括用于描述强度变化速度终值的第二速度渐变参数,所述第一驱动信号的强度变化速度的变化模式为:
从所述第一驱动信号的起始到结束,按照第三预设增量规则增加所述第一初始信号的强度变化速度或者按照第三预设减量规则减小所述第一初始信号的强度变化速度,使得所述第一驱动信号结束时的强度变化速度为所述强度变化速度终值。
在基于上述第一方面的一种可能的实现方式中,所述第二速度渐变参数的设定值范围为[-∞~+∞],其中:
所述第二速度渐变参数的设定值越大,所述强度变化速度终值越小;
当所述第二速度渐变参数的设定值为0时,所述强度变化速度终值为所述第一初始信号的强度变化速度;
当所述第二速度渐变参数的设定值为+∞时,所述强度变化速度终值为振动设备所能实现的最小强度变化速度;
当所述第二速度渐变参数的设定值为-∞时,所述强度变化速度终值为振动设备所能实现的最大强度变化速度。
在基于上述第一方面的一种可能的实现方式中,所述根据所述用户振动触感参数以及所述原始驱动信号计算第一驱动信号,包括:
根据所述初始强度调整参数、所述强度变化参数以及所述速度变化参数生成加权包络线;
使用所述加权包络线与所述原始驱动信号进行乘法运算以生成所述第一驱动信号。
在基于上述第一方面的一种可能的实现方式中,所述获取用户振动触感参数,包括:
提供用于输入所述用户振动触感参数的交互界面,根据第一用户的输入数据确定所述第一用户的用户振动触感参数;
或者,
获取第二用户的振动触感反馈数据,根据所述第二用户的振动触感反馈数据确定所述第二用户的用户振动触感参数;
或者,
获取所述原始驱动信号的应用场景描述,根据所述应用场景描述确定所述用户振动触感参数。
第二方面,本申请实施例提供一种振动驱动信号生成装置,包括:
参数获取模块,其用于获取用户振动触感参数,所述用户振动触感参数包括:初始强度调整参数,其用于调整驱动信号的初始信号;强度变化参数,其用于描述驱动信号的强度随时间的变化模式;速度变化参数,其用于描述驱动信号的强度变化速度随时间的变化模式;
信号获取模块,其用于获取原始驱动信号,所述原始驱动信号用于驱动电机实现默认振动触感;
计算模块,其用于根据所述用户振动触感参数以及所述原始驱动信号计算第一驱动信号,其中:
所述第一驱动信号的初始信号为,根据所述初始强度调整参数调整所述原始驱动信号的初始信号而生成的第一初始信号;
所述第一驱动信号的强度随时间的变化模式以及强度变化速度随时间的变化模式分别为,所述强度变化参数以及所述速度变化参数所描述的强度随时间的变化模式以及强度变化速度随时间的变化模式。
第三方面,本申请实施例提供一种电子设备,电子设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发电子设备执行如本申请实施例所述的方法步骤。
第四方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行本申请实施例的方法。
根据本申请实施例所提出的上述一种或多种技术方案,至少可以实现下述技术效果:
根据本申请实施例的方法,基于用户振动触感参数调整原始驱动信号所计算获取的第一驱动信号,由于用户振动触感参数匹配触觉体验应用场景需求和/或用户触觉体验需求,因此,第一驱动信号所实现的振动效果可以满足触觉体验应用场景需求和/或用户触觉体验需求;相较于现有技术,根据上述实施例的方法,可以为用户提供更优的触觉体验,提高用户触觉体验的理想度,提高用户体验。
附图说明
图1所示为根据本申请振动驱动信号生成方法一实施例的流程图;
图2所示为根据本申请一实施例的数据流走向示意图;
图3所示为根据本申请一实施例的第三幅值渐变参数设定示意图;
图4所示为根据本申请一实施例的第二速度渐变参数设定示意图;
图5所示为根据本申请一实施例的计算第一驱动信号的流程图;
图6所示为根据本申请一实施例计算获取的幅值渐强包络线图;
图7所示为根据本申请一实施例计算获取的第一驱动信号波形图;
图8所示为根据本申请振动驱动信号生成装置一实施例的结构图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的实施方式部分使用的术语仅用于对本申请的具体实施例进行解释,而非旨在限定本申请。
针对现有技术振动触觉体验应用场景中的,用户触觉体验不理想以及用户体验被降低的问题,本申请提供了一种振动驱动信号生成方法。为了提出本申请实施例的方法,发明人首先分析基于振动效果实现触觉体验的实际应用场景。
一般的,在基于振动效果实现触觉体验的技术方案中,应用程序会生成用于驱动振动电机的振动驱动信号,电机在振动驱动信号的驱动下运行,从而实现振动触感。然而,在实际应用场景中,不同的应用场景所对应的振动触感是不同的,如果使用统一的振动触感,势必达成理想的用户触觉体验。因此,在一种可行的触觉体验应用方案中,在通过振动效果实现触觉体验时,通过强度的变化来实现不同的振动效果,从而带来多样的触觉体验,以适配多种不同的触觉体验应用场景,提高用户体验。
进一步的,基于上述方案,虽然可以实现根据不同的触觉体验应用场景,选用不同的振动效果设定。但是,在实际应用场景中,可供选择的振动效果通常是由预先设计好并集成在设备中的。由于预先设定好的振动效果十分有限,其不可能覆盖所有的触觉体验应用场景需求,因此预设的振动效果不可能完美匹配所有的触觉体验应用场景。这就导致在某些触觉体验应用场景中,预设的振动效果不能为用户带来理想的触觉体验。
例如,在一应用场景中,设备的使用环境为较安静的场所,相较吵闹环境而言,当前应用场景下用户对振动触感的感知更为敏锐。而在通常的厂商设定中,振动效果并未对使用环境的吵闹程度进行区分。在该应用场景下,在用户触发振动触感时,如果应用程序直接调用厂商设定中振动效果设定来生成振动驱动信号,最终产生的振动效果往往会令用户产生“吓一跳”的感觉。
进一步的,在预先设定振动效果时,由于需要令预设的振动效果设定的覆盖面尽可能的广泛,因此,预先设定的振动效果设定无法对用户个人的触觉习惯进行针对性的设定。而在不考虑用户个人触觉习惯的情况下,在某些应用场景中,预设的振动效果不仅不能为用户带来理想的触觉体验,还有可能会降低用户体验。
例如,针对某一用户,相较于大多数人,该用户对振动触感的感知相对迟钝。在该用户触发振动触感时,如果应用程序直接调用预设中振动效果设定来生成振动驱动信号,最终产生的 振动效果往往会无法被该用户所清晰感知。又例如,针对某一用户,相较于大多数人,该用户对振动触感的感知相对敏感。在该用户触发振动触感时,如果应用程序直接调用预设中振动效果设定来生成振动驱动信号,最终产生的振动效果很有可能会令用户感觉到疼痛。
基于上述分析,导致用户触觉体验不理想以及用户体验被降低的问题的原因之一在于,用于实现用户触觉体验的振动效果与触觉体验应用场景需求和/或用户触觉体验需求并不匹配。因此,如果可以根据具体的触觉体验应用场景需求和/或用户触觉体验需求来修正应用程序所生成的振动驱动信号,使得最终的振动效果匹配触觉体验应用场景需求和/或用户触觉体验需求,就可以解决用户触觉体验不理想的问题并提高用户体验。
基于上述分析,在本申请一实施例中,提出了一种振动驱动信号生成方法。在本实施例的方法中,基于触觉体验应用场景需求和/或用户触觉体验需求,从信号强度、强度的变化模式、强度变化速度的变化模式三方面对应用程序所生成的振动驱动信号进行调整,以获取新的振动驱动信号,使用新的振动驱动信号驱动电机以生成可以实现匹配触觉体验应用场景需求和/或用户触觉体验需求的振动效果。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图1所示为根据本申请振动驱动信号生成方法一实施例的流程图。在本申请一实施例中,如图1所示,振动驱动信号生成方法包括:
步骤110,获取匹配触觉体验应用场景需求和/或用户触觉体验需求的用户振动触感参数,该用户振动触感参数包括:初始强度调整参数,其用于调整驱动信号的初始信号;强度变化参数,其用于描述驱动信号的强度随时间的变化模式;速度变化参数,其用于描述驱动信号的强度变化速度随时间的变化模式;
步骤120,获取原始驱动信号,原始驱动信号用于驱动电机实现默认振动触感;
步骤130,根据用户振动触感参数以及原始驱动信号计算第一驱动信号,其中:
第一驱动信号的初始信号为,根据初始强度调整参数调整原始驱动信号的初始信号而生成的第一初始信号;
第一驱动信号的强度随时间的变化模式以及强度变化速度随时间的变化模式分别为,强度变化参数以及速度变化参数所描述的强度随时间的变化模式以及强度变化速度随时间的变化模式。
根据上述方法流程,由于用户振动触感参数匹配触觉体验应用场景需求和/或用户触觉体验需求,因此,基于用户振动触感参数调整原始驱动信号所计算获取的第一驱动信号所实现的振动效果就可以满足触觉体验应用场景需求和/或用户触觉体验需求。相较于现有技术,根据上述实施例的方法,可以为用户提供更优的触觉体验,提高用户触觉体验的理想度,提高用户体验。
图2所示为根据本申请一实施例的数据流走向示意图。如图2所示,用户振动触感参数201被输入到数据处理器210,数据处理器210从存储器202中读取原始驱动信号。
数据处理器210根据用户振动触感参数以及原始驱动信号计算生成第一驱动信号220,第一驱动信号220被输出到马达230以实现振动效果。
进一步的,在本申请一实施例中,初始强度调整参数包括强度倍数。第一初始信号为按照强度倍数放大或缩小原始驱动信号的初始信号而生成的信号。具体的,在步骤130一种实现方 式中,在根据初始强度调整参数调整原始驱动信号的初始信号以生成第一初始信号的过程中,按照强度倍数放大或缩小原始驱动信号的初始信号以生成第一初始信号。
例如,在一应用场景中,在根据步骤130一种实现方式的应用场景中,在根据初始强度调整参数调整原始驱动信号的初始信号以生成第一初始信号的过程中,读取储存器中的原始驱动信号后,将整段信号放大或缩小s 1倍,上述过程中s 1值即为初始强度调整参数中强度倍数的设定值。
又例如,在一应用场景中,在根据步骤130一种实现方式的应用场景中,在根据初始强度调整参数调整原始驱动信号的初始信号以生成第一初始信号的过程中,读取储存器中的原始驱动信号后,将整段信号的振动幅值放大或缩小s 2倍,上述过程中s 2值即为初始强度调整参数中强度倍数的设定值。
进一步的,考虑到振动幅值的变化会直接导致振动强度的变化,因此,在本申请一实施例中,通过调节振动幅值来调节振动强度。具体的,在强度变化参数中定义用于描述驱动信号的振动幅值随时间的变化模式的参数。
具体的,考虑到幅值渐变是一种常见的强度变化方式。因此,在本申请一实施例中,强度变化参数包括用于描述幅值渐变方式的幅值渐变参数。
在本申请其他实施例中,强度变化参数也可以包含用于描述其他幅值变化方式的参数,例如,用于描述幅值周期性变化的具体变化方式的幅值周期变化参数。
具体的,在本申请一实施例中,强度变化参数包括用于描述振动幅值增强速度或振动幅值减弱速度的第一幅值渐变参数。第一驱动信号的强度的变化模式为:从第一驱动信号的起始到结束,按照第一幅值渐变参数的振动幅值增强速度增强第一初始信号的振动幅值或者按照第一幅值渐变参数的振动幅值减弱速度减弱第一初始信号的振动幅值。即,在步骤130一种实现方式中,在生成第一初始信号的过程中,从信号的起始到结束,按照第一幅值渐变参数的振动幅值增强速度增强第一初始信号的振动幅值或者按照第一幅值渐变参数的振动幅值减弱速度减弱第一初始信号的振动幅值以生成第一驱动信号。
具体的,在本申请一实施例中,强度变化参数包括用于描述振动幅值终值的第二幅值渐变参数。第一驱动信号的强度的变化模式为:从第一驱动信号的起始到结束,按照第一预设增量规则增强第一初始信号的振动幅值或者按照第一预设减量规则减弱第一初始信号的振动幅值,使得第一驱动信号结束时的振动幅值为振动幅值终值。即,在步骤130一种实现方式中,在生成第一驱动信号的过程中,从信号的起始到结束,按照第一预设增量规则增强第一初始信号的振动幅值或者按照第一预设减量规则减弱第一初始信号的振动幅值,使得信号结束时的强度为振动幅值终值以生成第一驱动信号。
具体的,在上述实施例中,第一预设增量规则以及第一预设减量规则可以为任意增量/减量规则。例如,维持固定的增量值/减量值进行阶梯式增量/减量,或者,维持固定的增量速度/减量速度进行线性增量/减量,或者,将强度保持为特定增量/减量曲线。
例如,在步骤130一种实现方式中,在生成第一驱动信号的过程中,从信号的起始到结束,维持不变的振动幅值增强速度增强第一初始信号的振动幅值或者维持不变的振动幅值减弱速度减弱第一初始信号的振动幅值,使得信号结束时的强度为振动幅值终值以生成第一驱动信号。
具体的,在本申请一实施例中,强度变化参数包括第三幅值渐变参数。第一驱动信号的强 度的变化模式为:从第一驱动信号的起始到结束,按照第二预设增量规则增强第一初始信号的振动幅值或者按照第二预设减量规则减弱第一初始信号的振动幅值,使得第一驱动信号结束时的强度为第三幅值渐变参数的参数值所对应的强度。即,在步骤130一种实现方式中,在生成第一驱动信号的过程中,从信号的起始到结束,按照第二预设增量规则增强第一初始信号的振动幅值或者按照第二预设减量规则减弱第一初始信号的振动幅值,使得信号结束时的强度为第三幅值渐变参数对应的强度以生成第一驱动信号。
例如,在一应用场景中,第三幅值渐变参数的设定值范围为[0~+∞],其中:
第三幅值渐变参数的设定值越大,对应的强度越大;
当第三幅值渐变参数的设定值为0时,对应的强度为0;
当第三幅值渐变参数的设定值为1时,对应的强度为第一初始信号的强度;
当第三幅值渐变参数的设定值为+∞时,对应的强度最大。
具体的,在本应用场景中,提供开放的参数接口以获取第三幅值渐变参数的设定值为+∞时所对应的振动幅值终值。当第三幅值渐变参数的设定值为+∞时,振动幅值终值为振动设备所能实现的最大强度。
具体的,在上述实施例中,第二预设增量规则以及第二预设减量规则可以为任意增量/减量规则。例如,维持固定的增量值/减量值进行阶梯式增量/减量,或者,维持固定的增量速度/减量速度进行线性增量/减量,或者,将强度保持为特定增量/减量曲线。
例如,在步骤130一种实现方式中,在生成第一驱动信号的过程中,从信号的起始到结束,维持不变的振动幅值增强速度增强第一初始信号的振动幅值或者维持不变的振动幅值减弱速度减弱第一初始信号的振动幅值,使得信号结束时的强度为第三幅值渐变参数对应的强度以生成第一驱动信号。
图3所示为根据本申请一实施例的第三幅值渐变参数设定示意图。如图3所示,第三幅值渐变参数的设定值为参数值α。当第三幅值渐变参数α设置为1时,表示信号结束时强度与信号起始时一致,保持不变;当第三幅值渐变参数α设置为0时,表示信号结束时强度最弱为0;当第三幅值渐变参数α设置为+∞时,表示信号结束时强度最强。由于强度输入值不可能输入+∞,这里提供一种开放的参数接口,获取第三幅值渐变参数的设定值为+∞时所对应的振动幅值终值。当第三幅值渐变参数的设定值为+∞时,振动幅值终值为振动设备所能实现的最大强度。
进一步的,考虑到速度渐变是一种常见的强度变化速度的变化方式。因此,在本申请一实施例中,速度变化参数包括用于描述速度渐变方式的速度渐变参数。
在本申请其他实施例中,速度变化参数也可以包含用于描述其他速度变化方式的参数,例如,用于描述强度变化速度周期性变化的具体变化方式的速度周期变化参数。
具体的,在一实施例中,速度变化参数包括用于描述强度变化速度的增强速度或强度变化速度的减弱速度的第一速度渐变参数。第一驱动信号的强度变化速度的变化模式为:从第一驱动信号的起始到结束,按照强度变化速度的增强速度增加第一初始信号的强度变化速度或者按照强度变化速度的减弱速度减小第一初始信号的强度变化速度。
具体的,在步骤130一种实现方式中,在生成第一初始信号的过程中,从信号的起始到结束,按照强度变化速度的增强速度增加第一初始信号的强度变化速度或者按照强度变化速度的 减弱速度减小第一初始信号的强度变化速度以生成第一驱动信号。
具体的,在一实施例中,速度变化参数包括用于描述强度变化速度终值的第二速度渐变参数。第一驱动信号的强度变化速度的变化模式为:从第一驱动信号的起始到结束,按照第三预设增量规则增加第一初始信号的强度变化速度或者按照第三预设减量规则减小第一初始信号的强度变化速度,使得第一驱动信号结束时的强度变化速度为强度变化速度终值。即,在步骤130一种实现方式中,在生成第一驱动信号的过程中,从信号的起始到结束,按照第三预设增量规则增加第一初始信号的强度变化速度或者按照第三预设减量规则减小第一初始信号的强度变化速度,使得第一驱动信号结束时的强度变化速度为强度变化速度终值。
例如,在一应用场景中,第二速度渐变参数的设定值范围为[-∞~+∞],其中:
第二速度渐变参数的设定值越大,强度变化速度终值越大;
当第二速度渐变参数的设定值为0时,强度变化速度终值为第一初始信号的强度变化速度;
当第二速度渐变参数的设定值为+∞时,强度变化速度终值为振动设备所能实现的最大强度变化速度;
当第二速度渐变参数的设定值为-∞时,强度变化速度终值为振动设备所能实现的最小强度变化速度。
具体的,在上述实施例中,第三预设增量规则以及第三预设减量规则可以为任意增量/减量规则。例如,维持固定的增量值/减量值进行阶梯式增量/减量,或者,维持固定的增量速度/减量速度进行线性增量/减量,或者,将强度保持为特定增量/减量曲线。
例如,在步骤130一种实现方式中,在生成第一驱动信号的过程中,从信号的起始到结束,维持不变的变化速度增加速度增加第一初始信号的强度变化速度或者维持不变的变化速度减小速度减小第一初始信号的强度变化速度,使得第一驱动信号结束时的强度变化速度为强度变化速度终值。
图4所示为根据本申请一实施例的第二速度渐变参数设定示意图。如图3所示,第二速度渐变参数的设定值为β。当第二速度渐变参数β设置为0时,表示信号结束时强度的变化速度与信号起始时强度的变化速度一致,全程为匀速变化;当第二速度渐变参数β大于0时,表示信号结束时强度的变化速度比信号起始时强度变化速度小(β越大,信号结束时强度的变化速度越小);当第二速度渐变参数β小于0时,表示信号结束时强度的变化速度比信号起始时强度变化速度大(β越小,信号结束时强度的变化速度越大)。
进一步的,基于上述实施例的实现过程,在步骤130的一种实现过程中,只需要参考原始信号的信号起始时的振动幅值以及强度变化速度。因此,在根据步骤130一种实现方式的应用场景中,在根据初始强度调整参数调整原始驱动信号的初始信号以生成第一初始信号的过程中,读取储存器中的原始驱动信号后,将原始驱动信号的信号起始振动幅值放大或缩小s 3倍,上述过程中s 3值即为初始强度调整参数中强度倍数的设定值。
进一步的,在步骤130的一种实现方式中,根据用户振动触感参数以及原始驱动信号计算第一驱动信号的过程,包括:
根据初始强度调整参数、强度变化参数以及速度变化参数生成加权包络线;
使用加权包络线与原始驱动信号进行乘法运算以生成第一驱动信号。
图5所示为根据本申请一实施例的计算第一驱动信号的流程图。如图5所示:
步骤510,获取输入参数s(强度倍数)、α(第三幅值渐变参数)、β(第二速度渐变参数);
步骤520,读取原始驱动信号U0;
步骤530,根据参数s、α、β计算加权包络曲线p;
步骤531,对加权包络曲线p以及原始驱动信号U0执行相乘运算,获取第一驱动信号;
步骤540,输出第一驱动信号。
具体的,在上述步骤530的一种实现方式中,计算包络曲线p,公式如下:
当β≥0时:
Figure PCTCN2020132979-appb-000001
当β<0时:
Figure PCTCN2020132979-appb-000002
上述公式(1)以及(2)中,t为时间变量,T为原始信号时长,s、α、β分别为输入的强度倍数、第三幅值渐变参数、第二速度渐变参数,p为加权包络曲线。
图6所示为根据本申请一实施例计算获取的幅值渐强包络线图。在一具体的应用场景中,根据上述公式(1)以及(2)计算获取的幅值渐强包络线如图6所示。图6中,横坐标为时间、纵坐标为强度。标号601所指的两条曲线表示振动信号的幅值渐强但是强度变化速度变化渐慢;标号602所指的曲线表示振动信号的幅值渐强但是强度变化速度均匀;标号603所指的两条曲线表示振动信号的幅值渐强但是强度变化速度变化渐快。
图7所示为根据本申请一实施例计算获取的第一驱动信号波形图。在一具体的应用场景中,根据本申请一实施例计算获取的第一驱动信号如图7所示。图7中,横坐标为时间、纵坐标为驱动信号的电压信号强度。如图7所示,驱动信号的幅值渐强。
进一步的,在本申请一实施例中,由用户自定义用户振动触感参数。具体的,在步骤110的一种实现方式中,提供用于输入用户振动触感参数的交互界面,根据第一用户的输入数据确定第一用户的用户振动触感参数。
例如,提供如图3或图4所示的显示界面,用户通过在图3或图4所示界面上选定参数α或β所对应的位置来实现α或β参数值的输入。
进一步的,在本申请一实施例中,根据用户的触感体验反馈来进行振动效果的调整。具体的,在步骤110的一种实现方式中,获取第二用户的振动触感反馈数据,根据第二用户的振动触感反馈数据确定第二用户的用户振动触感参数。
进一步的,在本申请一实施例中,根据当前的应用场景来确定匹配应用场景需求的用户振动触感参数。具体的,在步骤110的一种实现方式中,获取原始驱动信号的应用场景描述,根据应用场景描述确定用户振动触感参数。
可以理解的是,上述实施例中的部分或全部步骤骤或操作仅是示例,本申请实施例还可以执行其它操作或者各种操作的变形。此外,各个步骤可以按照上述实施例呈现的不同的顺序来执行,并且有可能并非要执行上述实施例中的全部操作。
进一步的,基于本申请一实施例中提出的振动驱动信号生成方法,本申请一实施例还提出了一种振动驱动信号生成装置。图8所示为根据本申请振动驱动信号生成装置一实施例的结构图。在本申请一实施例中,如图8所示,在本申请一实施例中,振动驱动信号生成装置800 包括:
参数获取模块810,其用于获取用户振动触感参数,用户振动触感参数包括:初始强度调整参数,其用于调整驱动信号的初始信号;强度变化参数,其用于描述驱动信号的强度随时间的变化模式;速度变化参数,其用于描述驱动信号的强度变化速度随时间的变化模式;
信号获取模块820,其用于获取原始驱动信号,原始驱动信号用于驱动电机实现默认振动触感;
计算模块830,其用于根据用户振动触感参数以及原始驱动信号计算第一驱动信号,其中:
第一驱动信号的初始信号为,根据初始强度调整参数调整原始驱动信号的初始信号而生成的第一初始信号;
第一驱动信号的强度随时间的变化模式以及强度变化速度随时间的变化模式分别为,强度变化参数以及速度变化参数所描述的强度随时间的变化模式以及强度变化速度随时间的变化模式。
图8所示的本申请一实施例提供的装置可用于执行本申请实施例的方法实施例的技术方案,其实现原理和技术效果可以进一步参考方法实施例中的相关描述。
进一步的,在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable Gate Array,FPGA))就是这样一种集成电路,其逻辑功能由访问方对器件编程来确定。由设计人员自行编程来把一个数字装置“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language)等,目前最普遍使用的是VHDL(Very-High-Speed Integrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式 实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
在本申请实施例的描述中,为了描述的方便,描述装置时以功能分为各种模块/单元分别描述,各个模块/单元的划分仅仅是一种逻辑功能的划分,在实施本申请实施例时可以把各模块/单元的功能在同一个或多个软件和/或硬件中实现。
具体的,本申请实施例所提出的装置在实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块以软件通过处理元件调用的形式实现,部分模块通过硬件的形式实现。例如,检测模块可以为单独设立的处理元件,也可以集成在电子设备的某一个芯片中实现。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,ASIC),或,一个或多个数字信号处理器(Digital Singnal Processor,DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,FPGA)等。再如,这些模块可以集成在一起,以片上装置(System-On-a-Chip,SOC)的形式实现。
本申请一实施例还提出了一种电子设备,电子设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发电子设备执行如本申请实施例所述的方法步骤。
具体的,在本申请一实施例中,上述一个或多个计算机程序被存储在上述存储器中,上述一个或多个计算机程序包括指令,当上述指令被上述设备执行时,使得上述设备执行本申请实施例所述的方法步骤。
具体的,在本申请一实施例中,电子设备的处理器可以是片上装置SOC,该处理器中可以包括中央处理器(Central Processing Unit,CPU),还可以进一步包括其他类型的处理器。具体的,在本申请一实施例中,电子设备的处理器可以是PWM控制芯片。
具体的,在本申请一实施例中,涉及的处理器可以例如包括CPU、DSP、微控制器或数字信号处理器,还可包括GPU、嵌入式神经网络处理器(Neural-network Process Units,NPU)和图像信号处理器(Image Signal Processing,ISP),该处理器还可包括必要的硬件加速器或逻辑处理硬件电路,如ASIC,或一个或多个用于控制本申请技术方案程序执行的集成电路等。此外,处理器可以具有操作一个或多个软件程序的功能,软件程序可以存储在存储介质中。
具体的,在本申请一实施例中,电子设备的存储器可以是只读存储器(read-only memory,ROM)、可存储静态信息和指令的其它类型的静态存储设备、随机存取存储器(random access memory,RAM)或可存储信息和指令的其它类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compact  disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者还可以是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何计算机可读介质。
具体的,在本申请一实施例中,处理器可以和存储器可以合成一个处理装置,更常见的是彼此独立的部件,处理器用于执行存储器中存储的程序代码来实现本申请实施例所述方法。具体实现时,该存储器也可以集成在处理器中,或者,独立于处理器。
进一步的,本申请实施例阐明的设备、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。
本领域内的技术人员应明白,本申请实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。
在本申请所提供的几个实施例中,任一功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。
具体的,本申请一实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行本申请实施例提供的方法。
本申请一实施例还提供一种计算机程序产品,该计算机程序产品包括计算机程序,当其在计算机上运行时,使得计算机执行本申请实施例提供的方法。
本申请中的实施例描述是参照根据本申请实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
还需要说明的是,本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个 或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示单独存在A、同时存在A和B、单独存在B的情况。其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项”及其类似表达,是指的这些项中的任意组合,包括单项或复数项的任意组合。例如,a,b和c中的至少一项可以表示:a,b,c,a和b,a和c,b和c或a和b和c,其中a,b,c可以是单个,也可以是多个。
本申请实施例中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以意识到,本申请实施例中描述的各单元及算法步骤,能够以电子硬件、计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
以上所述,仅为本申请的具体实施方式,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。本申请的保护范围应以所述权利要求的保护范围为准。

Claims (14)

  1. 一种振动驱动信号生成方法,其特征在于,包括:
    获取匹配触觉体验应用场景需求和/或用户触觉体验需求的用户振动触感参数,所述用户振动触感参数包括:初始强度调整参数,其用于调整驱动信号的初始信号;强度变化参数,其用于描述驱动信号的强度随时间的变化模式;速度变化参数,其用于描述驱动信号的强度变化速度随时间的变化模式;
    获取原始驱动信号,所述原始驱动信号用于驱动电机实现默认振动触感;
    根据所述用户振动触感参数以及所述原始驱动信号计算第一驱动信号,其中:
    所述第一驱动信号的初始信号为,根据所述初始强度调整参数调整所述原始驱动信号的初始信号而生成的第一初始信号;
    所述第一驱动信号的强度随时间的变化模式以及强度变化速度随时间的变化模式分别为,所述强度变化参数以及所述速度变化参数所描述的强度随时间的变化模式以及强度变化速度随时间的变化模式。
  2. 根据权利要求1所述的方法,其特征在于,所述初始强度调整参数包括强度倍数,所述第一初始信号为:
    按照所述强度倍数放大或缩小所述原始驱动信号的初始信号而生成的信号。
  3. 根据权利要求1或2所述的方法,其特征在于,所述强度变化参数包括用于描述振动幅值增强速度或振动幅值减弱速度的第一幅值渐变参数,所述第一驱动信号的强度的变化模式为:
    从所述第一驱动信号的起始到结束,按照所述振动幅值增强速度增强所述第一初始信号的振动幅值或者按照所述振动幅值减弱速度减弱所述第一初始信号的振动幅值。
  4. 根据权利要求1或2所述的方法,其特征在于,所述强度变化参数包括用于描述振动幅值终值的第二幅值渐变参数,所述第一驱动信号的强度的变化模式为:
    从所述第一驱动信号的起始到结束,按照第一预设增量规则增强所述第一初始信号的振动幅值或者按照第一预设减量规则减弱所述第一初始信号的振动幅值,使得所述第一驱动信号结束时的振动幅值为所述振动幅值终值。
  5. 根据权利要求1或2所述的方法,其特征在于,所述强度变化参数包括第三幅值渐变参数,所述第一驱动信号的强度的变化模式为:
    从所述第一驱动信号的起始到结束,按照第二预设增量规则增强所述第一初始信号的振动幅值或者按照第二预设减量规则减弱所述第一初始信号的振动幅值,使得所述第一驱动信号结束时的强度为所述第三幅值渐变参数的参数值所对应的强度。
  6. 根据权利要求5所述的方法,其特征在于,所述第三幅值渐变参数的设定值范围为[0~+∞],其中:
    所述第三幅值渐变参数的设定值越大,对应的强度越大;
    当所述第三幅值渐变参数的设定值为0时,对应的强度为0;
    当所述第三幅值渐变参数的设定值为1时,对应的强度为所述第一初始信号的强度;
    当所述第三幅值渐变参数的设定值为+∞时,对应的强度为振动设备所能实现的最大强度。
  7. 根据权利要求1~6中任一项所述的方法,其特征在于,所述速度变化参数包括用于描 述强度变化速度的增强速度或强度变化速度的减弱速度的第一速度渐变参数,所述第一驱动信号的强度变化速度的变化模式为:
    从所述第一驱动信号的起始到结束,按照所述强度变化速度的增强速度增加所述第一初始信号的强度变化速度或者按照所述强度变化速度的减弱速度减小所述第一初始信号的强度变化速度。
  8. 根据权利要求1~6中任一项所述的方法,其特征在于,所述速度变化参数包括用于描述强度变化速度终值的第二速度渐变参数,所述第一驱动信号的强度变化速度的变化模式为:
    从所述第一驱动信号的起始到结束,按照第三预设增量规则增加所述第一初始信号的强度变化速度或者按照第三预设减量规则减小所述第一初始信号的强度变化速度,使得所述第一驱动信号结束时的强度变化速度为所述强度变化速度终值。
  9. 根据权利要求8所述的方法,其特征在于,所述第二速度渐变参数的设定值范围为[-∞~+∞],其中:
    所述第二速度渐变参数的设定值越小,所述强度变化速度终值越大;
    当所述第二速度渐变参数的设定值为0时,所述强度变化速度终值为所述第一初始信号的强度变化速度;
    当所述第二速度渐变参数的设定值为+∞时,所述强度变化速度终值为振动设备所能实现的最小强度变化速度;
    当所述第二速度渐变参数的设定值为-∞时,所述强度变化速度终值为振动设备所能实现的最大强度变化速度。
  10. 根据权利要求1~9中任一项所述的方法,其特征在于,所述根据所述用户振动触感参数以及所述原始驱动信号计算第一驱动信号,包括:
    根据所述初始强度调整参数、所述强度变化参数以及所述速度变化参数生成加权包络线;
    使用所述加权包络线与所述原始驱动信号进行乘法运算以生成所述第一驱动信号。
  11. 根据权利要求1~10中任一项所述的方法,其特征在于,所述获取用户振动触感参数,包括:
    提供用于输入所述用户振动触感参数的交互界面,根据第一用户的输入数据确定所述第一用户的用户振动触感参数;
    或者,
    获取第二用户的振动触感反馈数据,根据所述第二用户的振动触感反馈数据确定所述第二用户的用户振动触感参数;
    或者,
    获取所述原始驱动信号的应用场景描述,根据所述应用场景描述确定所述用户振动触感参数。
  12. 一种振动驱动信号生成装置,其特征在于,包括:
    参数获取模块,其用于获取用户振动触感参数,所述用户振动触感参数包括:初始强度调整参数,其用于调整驱动信号的初始信号;强度变化参数,其用于描述驱动信号的强度随时间的变化模式;速度变化参数,其用于描述驱动信号的强度变化速度随时间的变化模式;
    信号获取模块,其用于获取原始驱动信号,所述原始驱动信号用于驱动电机实现默认振动触感;
    计算模块,其用于根据所述用户振动触感参数以及所述原始驱动信号计算第一驱动信号, 其中:
    所述第一驱动信号的初始信号为,根据所述初始强度调整参数调整所述原始驱动信号的初始信号而生成的第一初始信号;
    所述第一驱动信号的强度的变化模式以及强度变化速度的变化模式分别为,所述强度变化参数以及所述速度变化参数所描述的强度随时间的变化模式以及强度变化速度随时间的变化模式。
  13. 一种电子设备,其特征在于,所述电子设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述电子设备执行如权力要求1~11中任一项所述的方法步骤。
  14. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行如权利要求1-11任一项所述的方法。
PCT/CN2020/132979 2020-04-23 2020-11-30 一种振动驱动信号生成方法、装置和电子设备 WO2021212838A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010328022.6A CN111580647B (zh) 2020-04-23 2020-04-23 一种振动驱动信号生成方法、装置和电子设备
CN202010328022.6 2020-04-23

Publications (1)

Publication Number Publication Date
WO2021212838A1 true WO2021212838A1 (zh) 2021-10-28

Family

ID=72127137

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/132979 WO2021212838A1 (zh) 2020-04-23 2020-11-30 一种振动驱动信号生成方法、装置和电子设备

Country Status (2)

Country Link
CN (1) CN111580647B (zh)
WO (1) WO2021212838A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023197375A1 (zh) * 2022-04-13 2023-10-19 瑞声声学科技(深圳)有限公司 一种振动控制方法、装置及计算机可读存储介质

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111580647B (zh) * 2020-04-23 2021-06-15 瑞声科技(新加坡)有限公司 一种振动驱动信号生成方法、装置和电子设备
CN115586829B (zh) * 2021-07-05 2023-10-20 腾讯科技(深圳)有限公司 触觉振动控制方法、装置、电子设备以及存储介质
CN115390673A (zh) * 2022-09-13 2022-11-25 武汉市聚芯微电子有限责任公司 振动数据的生成方法、装置、电子设备和存储介质
CN115543076A (zh) * 2022-09-20 2022-12-30 瑞声开泰声学科技(上海)有限公司 触感效果管理方法、装置、电子设备及介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100261509A1 (en) * 2009-04-10 2010-10-14 Movik Networks Vibration Modulation Applications and Techniques in Mobile devices
CN105791578A (zh) * 2016-03-08 2016-07-20 广东欧珀移动通信有限公司 一种消息的提示方法、装置及移动终端
CN108258977A (zh) * 2018-01-11 2018-07-06 上海展扬通信技术有限公司 马达振动控制方法、移动终端以及计算机可读存储介质
CN109213319A (zh) * 2018-08-04 2019-01-15 瑞声科技(新加坡)有限公司 基于场景的振动反馈方法及移动终端
CN110380664A (zh) * 2019-06-24 2019-10-25 瑞声科技(新加坡)有限公司 一种马达振动控制方法、装置及计算机可读存储介质
CN110995079A (zh) * 2019-12-16 2020-04-10 瑞声科技(新加坡)有限公司 电机振动信号的生成方法、装置、终端及存储介质
CN111580647A (zh) * 2020-04-23 2020-08-25 瑞声科技(新加坡)有限公司 一种振动驱动信号生成方法、装置和电子设备

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100261509A1 (en) * 2009-04-10 2010-10-14 Movik Networks Vibration Modulation Applications and Techniques in Mobile devices
CN105791578A (zh) * 2016-03-08 2016-07-20 广东欧珀移动通信有限公司 一种消息的提示方法、装置及移动终端
CN108258977A (zh) * 2018-01-11 2018-07-06 上海展扬通信技术有限公司 马达振动控制方法、移动终端以及计算机可读存储介质
CN109213319A (zh) * 2018-08-04 2019-01-15 瑞声科技(新加坡)有限公司 基于场景的振动反馈方法及移动终端
CN110380664A (zh) * 2019-06-24 2019-10-25 瑞声科技(新加坡)有限公司 一种马达振动控制方法、装置及计算机可读存储介质
CN110995079A (zh) * 2019-12-16 2020-04-10 瑞声科技(新加坡)有限公司 电机振动信号的生成方法、装置、终端及存储介质
CN111580647A (zh) * 2020-04-23 2020-08-25 瑞声科技(新加坡)有限公司 一种振动驱动信号生成方法、装置和电子设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023197375A1 (zh) * 2022-04-13 2023-10-19 瑞声声学科技(深圳)有限公司 一种振动控制方法、装置及计算机可读存储介质

Also Published As

Publication number Publication date
CN111580647B (zh) 2021-06-15
CN111580647A (zh) 2020-08-25

Similar Documents

Publication Publication Date Title
WO2021212838A1 (zh) 一种振动驱动信号生成方法、装置和电子设备
JP6226836B2 (ja) カスケードを最小化しつつ、ハプティック効果を生成すること
US11460925B2 (en) User interfaces for non-visual output of time
JP3769200B2 (ja) 冷却ファンの制御方法および装置
JP6562695B2 (ja) 触覚効果の動的変更
EP3561754A1 (en) Virtual resource allocation method, client and server
WO2021196252A1 (zh) 振动信号的生成方法、装置、终端及存储介质
CN103218163B (zh) 一种调节音量的方法、装置及移动设备
US10888022B2 (en) Fan speed control in electronic devices
Thompson et al. A friendly Fortran DDE solver
TW201909596A (zh) 基於區塊鏈的資料處理方法及設備
US9501175B2 (en) Techniques and apparatus for managing touch interface
US20050204125A1 (en) Method for automatically changing the hardware settings of a computer in accordance with an executing application program
WO2021196680A1 (zh) 基于位移呈现触觉效果的方法及装置、存储介质及设备
CN111338477A (zh) 触觉振动效果的实现方法、装置和存储介质
CN114568870A (zh) 智能床控制方法、智能床、装置、设备及存储介质
CN106814940B (zh) 数值输入方法及装置
US10838615B2 (en) Method for moving graphical pointer, system for moving graphical pointer, and touch display device
CN111694436B (zh) 一种触觉效果的实现方法及设备、计算机可读存储介质
CN116958299A (zh) 虚拟形象生成方法、装置、存储介质、电子设备及车辆
US20200209967A1 (en) Haptic Effect Signal Processing
JP2020077218A (ja) 解析モデル生成装置及びプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20932187

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20932187

Country of ref document: EP

Kind code of ref document: A1