Haptic device operation
阅读说明:本技术 触觉装置操作 (Haptic device operation ) 是由 陈一凡 阿布舍克·夏尔马 汪谦益 史蒂文·林 于 2017-06-27 设计创作,主要内容包括:一种系统,包括被编程为识别音频输入的多个音频幅度的计算机。所述计算机被编程为识别相应识别的音频幅度之间的音频输入的多个时间间隔。所述计算机被编程为基于识别的音频幅度和所述时间间隔来映射触觉模式。所述计算机被配置为致动马达以输出所述触觉模式。(A system includes a computer programmed to identify a plurality of audio magnitudes of an audio input. The computer is programmed to identify a plurality of time intervals of the audio input between respective identified audio amplitudes. The computer is programmed to map haptic patterns based on the identified audio amplitude and the time interval. The computer is configured to actuate a motor to output the haptic pattern.)
1. A system comprising a computer programmed to:
identifying a plurality of audio amplitudes of an audio input;
identifying a plurality of time intervals of the audio input between respective identified audio magnitudes;
mapping a haptic pattern based on the identified audio amplitude and the time interval; and
actuating a motor to output the haptic pattern.
2. The system of claim 1, wherein the computer is further programmed to identify a frequency band for the audio input and apply a filter to the audio input based on the frequency band.
3. The system of claim 2, wherein the computer is further programmed to identify the time interval based on the filtered audio input.
4. The system of claim 2, wherein the computer is further programmed to identify a plurality of dominant frequencies of the filtered audio input.
5. The system of claim 4, wherein the computer is further programmed to identify the time interval based on the identified time when the respective audio amplitudes of two of the plurality of dominant frequencies are the same amplitude.
6. The system of claim 2, wherein the computer is further programmed to identify a second frequency band and apply a second filter to the audio input based on the second frequency band.
7. The system of claim 6, wherein the computer is further programmed to map a first haptic pattern based on the filtered audio input and a second haptic pattern based on the second filtered audio input.
8. The system of claim 1, wherein the computer is further programmed to adjust a rotational speed of the motor based on the haptic pattern.
9. The system of claim 1, wherein upon determining that the duration of the audio input exceeds a duration threshold, the computer is further programmed to receive a user input identifying a portion of the audio input having a duration less than the duration threshold, and map a haptic pattern based on the identified portion of the audio input.
10. The system of claim 1, wherein the motor is disposed in a portable device, and the computer is further programmed to instruct the portable device to actuate the motor to output the haptic pattern.
11. A method, comprising:
identifying a plurality of audio amplitudes of an audio input;
identifying a plurality of time intervals of the audio input between respective identified audio magnitudes;
mapping a haptic pattern based on the identified audio amplitude and the time interval; and
actuating a motor to output the haptic pattern.
12. The method of claim 11, further comprising identifying a frequency band for the audio input and applying a filter to the audio input based on the frequency band.
13. The method of claim 12, further comprising identifying the time interval based on the filtered audio input.
14. The method of claim 12, further comprising identifying a plurality of dominant frequencies of the filtered audio input.
15. The method of claim 14, further comprising identifying the time interval based on an identified time when respective audio amplitudes of two of the plurality of major frequencies are the same amplitude.
16. The method of claim 12, further comprising identifying a second frequency band, and applying a second filter to the audio input based on the second frequency band.
17. The method of claim 16, further comprising mapping a first haptic pattern based on the filtered audio input and mapping a second haptic pattern based on the second filtered audio input.
18. The method of claim 11, further comprising adjusting a rotational speed of the motor based on the haptic pattern.
19. The method of claim 11, wherein upon determining that the duration of the audio input exceeds a duration threshold, the method further comprises receiving a user input identifying a portion of the audio input having a duration less than the duration threshold, and mapping a haptic pattern based on the identified portion of the audio input.
20. The method of claim 11, wherein the motor is disposed in a portable device, and the method further comprises instructing the portable device to actuate the motor to output the haptic pattern.
Background
The electronic device may comprise a haptic device. The haptic device may be programmed to generate a vibration pattern that causes the electronic device to vibrate to provide a haptic output. However, a problem is that current systems have limited ability to generate a variety of haptic outputs.
Drawings
Fig. 1 is a block diagram of an exemplary system for actuating a wearable device.
Fig. 2 shows an exemplary audio input in the time domain.
Fig. 3 shows the audio input of fig. 2 in the frequency domain.
Fig. 4 shows a plurality of main frequencies of an audio input.
Fig. 5 shows a plurality of time intervals determined based on the dominant frequency.
FIG. 6 shows a haptic pattern based on time interval and dominant frequency mapping.
Fig. 7 shows an exemplary motor installed in a wearable device.
FIG. 8 is a block diagram of an exemplary process for determining a haptic mode.
Detailed Description
A system comprising a computer programmed to: identifying a plurality of audio amplitudes of an audio input; identifying a plurality of time intervals of the audio input between respective identified audio amplitudes; mapping the haptic pattern based on the identified audio amplitude and time interval; and actuating the motor to output the haptic pattern.
The computer may also be programmed to identify a frequency band for the audio input and apply a filter to the audio input based on the frequency band. The computer may also be programmed to identify the time interval based on the filtered audio input.
The computer may also be programmed to identify a plurality of dominant frequencies of the filtered audio input. The computer may be further programmed to identify the time interval based on the identified time when respective audio amplitudes of two of the plurality of dominant frequencies are the same amplitude.
The computer may also be programmed to identify a second frequency band and apply a second filter to the audio input based on the second frequency band. The computer may also be programmed to map a first haptic pattern based on the filtered audio input and map a second haptic pattern based on the second filtered audio input.
The computer may also be programmed to adjust a rotational speed of the motor based on the haptic pattern.
Upon determining that the duration of the audio input exceeds a duration threshold, the computer may be further programmed to receive a user input identifying a portion of the audio input having a duration less than the duration threshold, and map a haptic pattern based on the identified portion of the audio input.
The motor may be disposed in a portable device, and the computer may be further programmed to instruct the portable device to actuate the motor to output the haptic pattern.
One method comprises the following steps: identifying a plurality of audio amplitudes of an audio input; identifying a plurality of time intervals of the audio input between respective identified audio amplitudes; mapping the haptic pattern based on the identified audio amplitude and time interval; and actuating the motor to output the haptic pattern.
The method may also include identifying a frequency band for the audio input and applying a filter to the audio input based on the frequency band. The method may also include identifying the time interval based on the filtered audio input.
The method may also include identifying a plurality of dominant frequencies of the filtered audio input. The method may further include identifying the time interval based on the identified time when respective audio amplitudes of two of the plurality of dominant frequencies are the same amplitude.
The method may further include identifying a second frequency band; and applying a second filter to the audio input based on the second frequency band. The method may also include mapping a first haptic pattern based on the filtered audio input and mapping a second haptic pattern based on the second filtered audio input.
The method may further include adjusting a rotational speed of the motor based on the haptic pattern.
Upon determining that the duration of the audio input exceeds a duration threshold, the method may further comprise: receiving a user input identifying a portion of the audio input having a duration less than the duration threshold and mapping a haptic pattern based on the identified portion of the audio input.
The motor may be disposed in a portable device, and the method may further include instructing the portable device to actuate the motor to output the haptic pattern.
A computing device programmed to perform any of the above method steps is also disclosed. A vehicle including the computing device is also disclosed. A computer program product is also disclosed, comprising a computer readable medium storing instructions executable by a computer processor to perform any of the above method steps.
Fig. 1 illustrates an example system 100 for mapping haptic patterns of a wearable device 140 based on audio input. The computer 105 in the vehicle 101 is programmed to receive the collected data 115 from the one or more sensors 110. For example, the data 115 for the vehicle 101 may include a location of the vehicle 101, a location of a target, and the like. The location data may be in a known form, e.g., geographic coordinates, such as latitude and longitude coordinates obtained via known navigation systems using the Global Positioning System (GPS). Further examples of data 115 may include measurements of systems and components of vehicle 101, such as the speed of vehicle 101, the trajectory of vehicle 101, and so forth.
As used herein, the term "mapping" when used as an action word in the context of mapping haptic modes means "assigned to action". Computer 105 "maps" the haptic pattern to the action, such that when the action is recognized, computer 105 outputs the haptic pattern. The action may be an event and/or a condition that may require attention of the user, as described below.
As is known, the computer 105 is typically programmed for communication over a network (e.g., including a communication bus) of the vehicle 101. Via a network, bus, and/or other wired or wireless mechanism (e.g., a wired or wireless local area network in vehicle 101), computer 105 may transmit and/or receive messages to and/or from various devices in vehicle 101, such as controllers, actuators, sensors, etc., including sensors 110. Alternatively or additionally, in cases where computer 105 actually includes multiple devices, a vehicle network may be used for communication between the devices, represented in this disclosure as computer 105. In addition, the computer 105 may be programmed to communicate with a network 125, which, as described below, may include various wired and/or wireless networking technologies, such as cellular, broadband, or the like,
Low power consumption(BLE), wired and/or wireless packet networks, etc.The data storage 106 may be of any known type, such as a hard disk drive, a solid state drive, a server, or any volatile or non-volatile media. The data storage device 106 may store the collected data 115 sent from the sensors 110.
The sensor 110 may include various devices. For example, as is known, various controllers in the vehicle 101 may operate as sensors 110 to provide data 115, e.g., data 115 related to vehicle speed, acceleration, position, subsystem and/or component status, etc., via a vehicle 101 network or bus. Additionally, other sensors 110 may include cameras, motion detectors, and the like, i.e., sensors 110 are used to provide data 115 to evaluate the location of an object, determine the presence of a user, and the like. The sensors 110 may also include a short range radar, a long range radar, and/or an ultrasonic transducer.
The collected data 115 may include various data collected in the vehicle 101. Examples of collected data 115 are provided above, and further, data 115 is typically collected using one or more sensors 110, and may additionally include data calculated from the collected data in computer 105 and/or at server 130. In general, the collected data 115 may include any data that may be collected by the sensors 110 and/or calculated from such data.
Vehicle 101 may include a plurality of vehicle components 120. As used herein, each vehicle component 120 includes one or more hardware components adapted to perform a mechanical function or operation (such as moving the vehicle, slowing or stopping the vehicle, steering the vehicle, etc.). Non-limiting examples of components 120 include propulsion components (including, for example, an internal combustion engine and/or an electric motor, etc.), transmission components, steering components (e.g., which may include one or more of a steering wheel, a steering rack, etc.), braking components, park assist components, adaptive cruise control components, adaptive steering components, and the like.
When the computing device 105 operates the vehicle 101, the vehicle 101 is an "autonomous" vehicle 101. For purposes of this disclosure, the term "autonomous vehicle" is used to refer to vehicle 101 operating in a fully autonomous mode. A fully autonomous mode is defined as a mode in which each of propulsion (typically via a powertrain including an electric motor and/or an internal combustion engine), braking, and steering of vehicle 101 is controlled by computing device 105. A semi-autonomous mode is a mode in which at least one of propulsion (typically via a powertrain including an electric motor and/or an internal combustion engine), braking, and steering of vehicle 101 is controlled, at least in part, by computing device 105 rather than a human operator.
The system 100 may also include a network 125 connected to the server 130 and the data storage device 135. Computer 105 may also be programmed to communicate via network 125 with one or more remote sites, such as server 130, which may include data storage 135. Network 125 represents the means by which vehicle computer 105 may communicate withOne or more mechanisms for remote server 130 to communicate. Thus, the network 125 may be one or more of a variety of wired or wireless communication mechanisms, including any desired combination of wired (e.g., cable and fiber) and/or wireless (e.g., cellular, wireless, satellite, microwave, and radio frequency) communication mechanisms, as well as any desired network topology (or topologies where multiple communication mechanisms are utilized). Exemplary communication networks include wireless communication networks providing data communication services (e.g., using
Low power consumption(BLE), IEEE802.11, vehicle-to-vehicle (V2V), such as Dedicated Short Range Communication (DSRC), etc., a Local Area Network (LAN), and/or a Wide Area Network (WAN), including the internet.The system 100 may include a wearable device 140. As used herein, a "wearable device" is a portable computing device that includes structure to facilitate wearing on a person's body (e.g., as a watch or bracelet, as a pendant, etc.), and includes memory, a processor, a display, and one or more input mechanisms (such as a touchscreen, buttons, etc.), as well as hardware and software for wireless communication such as described herein. The wearable device 140 has a size and shape that fits or is worn on the human body (e.g., a watch-like structure including a bracelet band, etc.), and thus will typically have a display that is smaller (e.g., is 1/3 or 1/4 of area) than the user device 150. For example, the wearable apparatus 140 may be a watch, a smart watch, a vibrating device, or the like, including a device for using IEEE802.11,BLE and/or cellular communication protocols. Further, wearable device 140 may use such communication capabilities to communicate via network 125 and also, for example, use
Directly connected with a vehicleThe vehicle computer 105 communicates. The wearable device 140 includes a wearable device processor 145.System 100 may include user device 150. As used herein, a "user device" is a portable, non-wearable computing device that includes memory, a processor, a display, and one or more input mechanisms (such as a touchscreen, buttons, etc.), as well as hardware and software for wireless communication such as described herein. User device 150 is "non-wearable" meaning that it is not provided with any structure that is worn on the human body; for example, the smartphone user device 150 does not have a size or shape that fits to a human body, and typically must be carried in a bag or handbag, and is wearable on the human body only if it is equipped with a special housing (e.g., with an attachment that wraps around a belt that passes through the human body), and thus the smartphone user device 150 is not wearable. Thus, the user device 150 may be any of a variety of computing devices, such as a smartphone, a tablet, a personal digital assistant, and the like, that include a processor and memory. The user device 150 may communicate with the vehicle computer 105 and the wearable device 140 using the network 125. For example, the user device 150 and the wearable device 140 may be communicatively coupled to each other and/or to the vehicle computer 105 using wireless technology such as described above. The user device 150 includes a user device processor 155.
As used herein, a "haptic mode" is a set of instructions for activating and deactivating a motor (e.g., an electric eccentric rotary motor) to generate a particular vibration pattern.
Fig. 2 shows a
The user may provide an input indicating a
Fig. 3 shows a
FIG. 4 shows the duration t in the
Fig. 5 shows a
Within each time interval δ, computer 105 may identify the interval dominant frequency, i.e., within a particular time interval δtThe frequency with the highest amplitude (with the alternate major amplitude a) in the defined section. For example, whileInterval delta betweent1In that the interval main frequency is of interval main amplitude A1Frequency f of2. I.e. the dominant frequency of the
FIG. 6 illustrates an example of the identified interval principal amplitude A from the frequency domain shown by computer 1051-A7To determine a
The example
wherein f'δIs interval dominant frequency, f'δ,maxIs the maximum interval dominant frequency of the time interval delta and f' is the dominant frequency of the
The motor speed ω may be based on a ratio of the magnitude of the spaced dominant frequency to the maximum magnitude of the spaced dominant frequency in the audio input 205:
wherein A isδIs the amplitude A, A of the specific time interval deltamaxIs the maximum amplitude of the amplitude A determined for the
For example, at time interval deltat1Of medium frequency f2Is the interval dominant frequency. The frequency of the square wave may be proportional to the interval main frequency, in this case f2And motor speed ω1May be separated from the time interval deltat1Amplitude A in1And (4) in proportion. At a time interval deltat2Of medium frequency f1Is the interval dominant frequency. In the
Fig. 7 illustrates an
Computer 105 and/or user device processor 155 may map
Fig. 8 shows an
Next, in
Next, in
Next, in
Next, in
Next, in
Next, in block 835, computer 105 and/or user device processor 155 maps the action to
Next, in
Next, in block 845, computer 105 and/or user device processor 155 instructs wearable device processor 145 to actuate
As used herein, the adverb "substantially" modifying the adjective means that shapes, structures, measurements, values, calculations, etc., may deviate from the precisely described geometries, distances, measurements, values, calculations, etc., due to imperfections in materials, processing, manufacturing, data collector measurements, calculations, processing time, communication time, etc.
Computers 105 typically each include instructions executable by one or more computing devices, such as those mentioned above, for performing the blocks or steps of the processes described above. The computer-executable instructions may be compiled or interpreted by a computer program created using various programming languages and/or techniques, including but not limited to Java, alone or in combinationTMC, C + +, Visual Basic, Java Script, Perl, HTML, and the like. Generally, a processor (e.g., a microprocessor) receives instructions, e.g., from a memory, a computer-readable medium, etc., and executes those instructions, thereby performing one or more processes, including one or more of the processes described herein. Such instructions and other data may be stored and transmitted using a variety of computer-readable media. A file in computing device 105 is typically a collection of data stored on a computer-readable medium, such as a storage medium, random access memory, or the like.
Computer-readable media includes any medium that participates in providing data (e.g., instructions) that may be read by a computer. Such a medium may take many forms, including but not limited to, non-volatile media, and the like. Non-volatile media includes, for example, optical or magnetic disks and other persistent memory. Non-volatile media include Dynamic Random Access Memory (DRAM), which typically constitutes a main memory. Common forms of computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD ROM, DVD, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a flash EEPROM, any other memory chip or cartridge, or any other medium from which a computer can read.
With respect to the media, processes, systems, methods, etc., described herein, it should be understood that although the steps of such processes, etc., have been described as occurring according to some ordered sequence, such processes may be practiced with the described steps performed in an order other than the order described herein. It is also understood that certain steps may be performed simultaneously, that other steps may be added, or that certain steps described herein may be omitted. For example, in
Accordingly, it is to be understood that the disclosure, including the above description and drawings and the following claims, is intended to be illustrative and not restrictive. Many embodiments and applications other than the examples provided would be apparent to those of ordinary skill in the art upon reading the above description. The scope of the invention should be determined, not with reference to the above description, but should instead be determined with reference to the appended claims, and/or the full scope of equivalents to which such claims are entitled, including those claims included herein as interpreted in non-provisional patent application. It is contemplated and intended that future developments will occur in the arts discussed herein, and that the disclosed systems and methods will be incorporated into such future embodiments. In sum, it should be understood that the disclosed subject matter is capable of modification and variation.
The article "a" or "an" modifying a noun should be understood as one or more unless otherwise indicated herein or otherwise required by the context. The phrase "based on" encompasses being based in part or in whole.
- 上一篇:一种医用注射器针头装配设备
- 下一篇:数据处理方法及装置