The present application relates generally to actuating a vibration element on a device based on input from one or more sensors.
When a device vibrates while on e.g. a surface that is hard and/or rigid, the resulting sound can be unpleasant and distracting to those nearby. However, there are still instances where this same level of vibration may be desirable. There are currently no adequate solutions for minimizing the foregoing adverse affects while still providing such a level of vibration when appropriate.
In one aspect, a device includes a vibration element, a microphone, an accelerometer, a processor, and a memory accessible to the processor. The memory bears instructions executable by the processor to actuate the vibration element at a first vibration level, determine whether the input conforms to a first parameter based on input from at least one of the microphone and the accelerometer, and reduce vibration from the first level to a second level responsive to a determination that the input conforms to the first parameter.
In another aspect, a method includes actuating, at a device, a vibration element using a first vibration pattern, determining whether the input conforms to a first parameter based on input from at least one sensor, and altering actuation of the vibration element to a second vibration pattern different from the first vibration pattern responsive to determining that the input conforms to the first parameter.
In still another aspect, a device includes at least one sensor, a vibration element, a processor, and a memory accessible to the processor. The memory bears instructions executable by the processor to receive input from the sensor, determine whether an attribute detected by the sensor conforms to a first parameter based on the input from the sensor, and actuate the vibration element to vibrate at a first magnitude responsive to a determination that the attribute detected by the sensor conforms to the first parameter.
The details of present principles, both as to their structure and operation, can best be understood in reference to the accompanying drawings, in which like reference numerals refer to like parts, and in which:
This disclosure relates generally to device-based information. With respect to any computer systems discussed herein, a system may include server and client components, connected over a network such that data may be exchanged between the client and server components. The client components may include one or more computing devices including televisions (e.g. smart TVs, Internet-enabled TVs), computers such as desktops, laptops and tablet computers, so-called convertible devices (e.g. having a tablet configuration and laptop configuration), and other mobile devices including smart phones. These client devices may employ, as non-limiting examples, operating systems from Apple, Google, or Microsoft. A Unix operating system may be used. These operating systems can execute one or more browsers such as a browser made by Microsoft or Google or Mozilla or other browser program that can access web applications hosted by the Internet servers over a network such as the Internet, a local intranet, or a virtual private network.
As used herein, instructions refer to computer-implemented steps for processing information in the system. Instructions can be implemented in software, firmware or hardware; hence, illustrative components, blocks, modules, circuits, and steps are set forth in terms of their functionality.
A processor may be any conventional general purpose single- or multi-chip processor that can execute logic by means of various lines such as address lines, data lines, and control lines and registers and shift registers. Moreover, any logical blocks, modules, and circuits described herein can be implemented or performed, in addition to a general purpose processor, in or by a digital signal processor (DSP), a field programmable gate array (FPGA) or other programmable logic device such as an application specific integrated circuit (ASIC), discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A processor can be implemented by a controller or state machine or a combination of computing devices.
Any software and/or applications described by way of flow charts and/or user interfaces herein can include various sub-routines, procedures, etc. It is to be understood that logic divulged as being executed by e.g. a module can be redistributed to other software modules and/or combined together in a single module and/or made available in a shareable library.
Logic when implemented in software, can be written in an appropriate language such as but not limited to C# or C++, and can be stored on or transmitted through a computer-readable storage medium (e.g. that may not be a carrier wave) such as a random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), compact disk read-only memory (CD-ROM) or other optical disk storage such as digital versatile disc (DVD), magnetic disk storage or other magnetic storage devices including removable thumb drives, etc. A connection may establish a computer-readable medium. Such connections can include, as examples, hard-wired cables including fiber optics and coaxial wires and twisted pair wires. Such connections may include wireless communication connections including infrared and radio.
In an example, a processor can access information over its input lines from data storage, such as the computer readable storage medium, and/or the processor can access information wirelessly from an Internet server by activating a wireless transceiver to send and receive data. Data typically is converted from analog signals to digital by circuitry between the antenna and the registers of the processor when being received and from digital to analog when being transmitted. The processor then processes the data through its shift registers to output calculated data on output lines, for presentation of the calculated data on the device.
Components included in one embodiment can be used in other embodiments in any appropriate combination. For example, any of the various components described herein and/or depicted in the Figures may be combined, interchanged or excluded from other embodiments.
“A system having at least one of A, B, and C” (likewise “a system having at least one of A, B, or C” and “a system having at least one of A, B, C”) includes systems that have A alone, B alone, C alone, A and B together, A and C together, B and C together, and/or A, B, and C together, etc.
“A system having one or more of A, B, and C” (likewise “a system having one or more of A, B, or C” and “a system having one or more of A, B, C”) includes systems that have A alone, B alone, C alone, A and B together, A and C together, B and C together, and/or A, B, and C together, etc.
The term “circuit” or “circuitry” is used in the summary, description, and/or claims. As is well known in the art, the term “circuitry” includes all levels of available integration, e.g., from discrete logic circuits to the highest level of circuit integration such as VLSI, and includes programmable logic components programmed to perform the functions of an embodiment as well as general-purpose or special-purpose processors programmed with instructions to perform those functions.
Now specifically in reference to
As shown in
In the example of
The core and memory control group 120 include one or more processors 122 (e.g., single core or multi-core, etc.) and a memory controller hub 126 that exchange 1201-207 information via a front side bus (FSB) 124. As described herein, various components of the core and memory control group 120 may be integrated onto a single processor die, for example, to make a chip that supplants the conventional “northbridge” style architecture.
The memory controller hub 126 interfaces with memory 140. For example, the memory controller hub 126 may provide support for DDR SDRAM memory (e.g., DDR, DDR2, DDR3, etc.). In general, the memory 140 is a type of random-access memory (RAM). It is often referred to as “system memory.”
The memory controller hub 126 further includes a low-voltage differential signaling interface (LVDS) 132. The LVDS 132 may be a so-called LVDS Display Interface (LDI) for support of a display device 192 (e.g., a CRT, a flat panel, a projector, a touch-enabled display, etc.). A block 138 includes some examples of technologies that may be supported via the LVDS interface 132 (e.g., serial digital video, HDMI/DVI, display port). The memory controller hub 126 also includes one or more PCI-express interfaces (PCI-E) 134, for example, for support of discrete graphics 136. Discrete graphics using a PCI-E interface has become an alternative approach to an accelerated graphics port (AGP). For example, the memory controller hub 126 may include a 16-lane (x16) PCI-E port for an external PCI-E-based graphics card (including e.g. one of more GPUs). An example system may include AGP or PCI-E for support of graphics.
The I/O hub controller 150 includes a variety of interfaces. The example of
The interfaces of the I/O hub controller 150 provide for communication with various devices, networks, etc. For example, the SATA interface 151 provides for reading, writing or reading and writing information on one or more drives 180 such as HDDs, SDDs or a combination thereof, but in any case the drives 180 are understood to be e.g. tangible computer readable storage mediums that may not be carrier waves. The I/O hub controller 150 may also include an advanced host controller interface (AHCI) to support one or more drives 180. The PCI-E interface 152 allows for wireless connections 182 to devices, networks, etc. The USB interface 153 provides for input devices 184 such as keyboards (KB), mice and various other devices (e.g., cameras, phones, storage, media players, etc.).
In the example of
The system 100, upon power on, may be configured to execute boot code 190 for the BIOS 168, as stored within the SPI Flash 166, and thereafter processes data under the control of one or more operating systems and application software (e.g., stored in system memory 140). An operating system may be stored in any of a variety of locations and accessed, for example, according to instructions of the BIOS 168.
In addition to the foregoing, the system 100 is understood to include an audio receiver/microphone 195 in communication with the processor 122 and providing input thereto based on e.g. a user providing audible input to the microphone 195. A camera 196 is also shown, which is in communication with and provides input to the processor 122. The camera 196 may be, e.g., a thermal imaging camera, a digital camera such as a webcam, and/or a camera integrated into the system 100 and controllable by the processor 122 to gather pictures/images and/or video.
Still further, the system 100 includes a vibrating element 191 that may be and/or include e.g. a motor for moving an eccentric weight of the vibrating element to generate a vibration. Moreover, in some embodiments the system 100 may include gyroscope 193 for e.g. sensing and/or measuring the orientation of the system 100, a light sensor 197 for sensing light such as e.g. ambient light, and an ultrasound unit 198 that may include e.g. an ultrasonic (e.g. piezoelectric) transducer but in any case is understood to be configured for transmitting and receiving ultrasound waves to determine the material(s) that an object through which the ultrasound waves pass and/or contact is comprised of using e.g. ultrasonic nondestructive testing.
Still in reference to
Before moving on to
Turning now to
Referring to
In any case, from block 300 and responsive to the triggering event identified and/or received at block 300, the logic moves to block 302 where the logic actuates a vibration element on the first device at a first vibration level (such as e.g. a default level) and/or using a first vibration pattern (e.g. constant and/or continual vibration for a predetermined time). The logic then proceeds to block 304 where the logic receives input from an accelerometer on the present device and then at decision diamond 306 determines whether the input that was received at block 304 is indicative of movement and/or acceleration of the present device at or less than an acceleration threshold. In some embodiments, the threshold may be e.g. zero acceleration and/or movement. Also in some embodiments, the threshold may be negligible movement and/or acceleration such as movement that may be caused merely by e.g. the present device vibrating on a flat surface (e.g., movement less than one millimeter per second or movement less than one centimeter per second).
In any case, a negative determination at diamond 306 causes the logic to proceed to block 308, at which the logic continues actuating the vibrating element at the first vibration level and/or using the first vibration pattern e.g. for a predetermined amount of time such as e.g. so long as the present device “rings” responsive to an incoming telephone call. However, an affirmative determination at diamond 306 instead causes the logic to proceed to block 310, at which the logic receives input from a microphone on the present device.
From block 310 the logic proceeds to decision diamond 312, where the logic determines based on the input received at block 310 whether (e.g. ambient and/or local) sound is at or above a threshold amount. A negative determination at diamond 312 causes the logic to proceed to block 308. However, an affirmative determination at diamond 312 instead causes the logic to proceed to block 314, at which the logic alters actuation of the vibrating element by e.g. reducing the vibration level to a second vibration level and/or by changing the pattern of vibration such as e.g. changing from a constant vibration produced by the element to periodic vibrations of equal lengths separated by periods of no vibration, where the periods of no vibration are also of the same length as each other.
Before moving on to the description of
Furthermore, as may be appreciated from the example shown in
However, as may be appreciated from many of the other figures described herein, in other embodiments only one determination may be made and/or threshold may be met to cause vibration levels and/or patterns to be altered. Thus, e.g. the determinations at diamond 306 and 312 may be executed in in isolation from other determinations to reach either of blocks 308 and 314. Moreover, as may be further appreciated from
Now describing
Continuing the detailed description in reference to
Now describing
A negative determination at diamond 604 causes the logic to proceed to block 606, at which the logic actuates (and/or continues actuating) a vibrating element on the device at a first level and/or first pattern. However, responsive to an affirmative determination at diamond 604, the logic instead proceeds to block 608, at which the logic actuates the vibrating element at a second level and/or second pattern respectively different from the first level and first pattern, such as e.g. actuating the vibrating element at a vibration level less than the first level and/or a pattern of vibrations separated by pauses in vibration.
Moving on to the description of
Before moving on to
Furthermore, note that the determination at diamond 704 may be based on the device accessing a data table such as the table 800 shown in
Thus, as may be appreciated from the table 800, wood, metal, plastic, glass, and composite materials (e.g. composite wood materials, composite metal materials, etc.) are all materials for which vibration may or should be e.g. altered or reduced, whereas cloth (e.g. a person's clothing), organic matter materials (e.g. a portion of a human body), and other relatively “softer” materials are materials for which vibration may or should not be otherwise e.g. altered or reduced. Thus, it may be appreciated from
Continuing the detailed description in reference to
Moving on, reference is now made to
Thus, the UI 1000 includes a prompt 1004 prompting the user for whether to reduce vibration of the device and/or alter the vibration pattern responsive to the conditions indicated in indication 1002 occurring (e.g. in the present and/or in the future when the conditions exist again). Responsive to selection of the yes selector element 1006, the device may automatically without further user input responsive thereto configure the device to reduce vibration of the device and/or alter the vibration pattern responsive to the conditions indicated indication 1002 occurring, while selection of the no selector element 1008 may cause the device to automatically without further user input responsive thereto configure the device to decline to reduce vibration of the device and/or alter the vibration pattern responsive to the conditions indicated indication 1002 occurring.
Reference is now made to
Thus, as may be appreciated from the UI 1100, example conditions for which settings may be configured to either e.g. reduce vibration lower than a default level or decline to so reduce include existence of an echo caused by vibrations of the device, relatively high ambient sound (e.g. above a sound threshold), device movement (e.g. higher than a movement threshold), the device laying flat and/or still (e.g. on a surface), the device being positioned at least partially against a relatively hard surface (e.g. a metal object), and relatively high ambient light (e.g. above a light threshold).
Without reference to any particular figure, it is to be understood that e.g. the detection of and determination(s) based on sounds as detected by a microphone in accordance with present principles may be based on the harmonic buildup, amplitude, and/or frequency of the sound(s), and/or the type of noise (e.g. using a data table to match noise types to whether or not to alter vibrations in accordance with present principles).
What's more, present principles recognize that cameras may be used in accordance with present principles in still other ways. E.g., a camera on a device may be an infrared and/or thermal imaging camera which may detect the presence of e.g. plural people nearby and/or within a predetermined distance or area from the device (e.g. as set by a user), and e.g. responsive to detecting plural users instead of a single person (e.g. whom may be the user of the device) the device may determine that vibrations may or should be reduced (e.g. so as to not disturb people in the predefined area). The same principles may apply to e.g. signals from a webcam on the device gathering images which a processor of the device may then use to determine e.g. based on facial recognition and/or object recognition the number of people in a predetermined area. E.g., if the camera gathers images which when analyzed by the processor are used to determine that plural people are within a predefined area such as e.g. all sitting in a living room, the device may determine to reduce a vibration level for the device and/or alter a vibration pattern so as to not disrupt the individuals in the predefined area with intrusive vibration noise. Similarly, other devices in the predefined area may also be detected (e.g. based on images from a camera, based on network communication between the devices, and/or based on GPS coordinates for the other devices for which the device has access) and e.g. responsive to plural devices being detected in the predefined area the device may determine to reduce a vibration level for the device and/or alter a vibration pattern.
Also without reference to any particular figure, in accordance with present principles note that in some embodiments where a determination is made that e.g. the level, intensity, and/or magnitude of vibration from a vibrating element may or should be altered, it may be altered by increasing the level, intensity, and/or magnitude rather than decreasing it. Thus, based on determinations that e.g. the device is in a dark place but is also undergoing relatively high motion changes (and hence it may be difficult for the individual to feel or otherwise sense the vibration such as in a person's pocket while exercising), vibration level, intensity, and/or magnitude may be increased rather than decreased, thus making it easier for the person to feel or otherwise sense the vibration to e.g. thus answer a telephone call.
Furthermore, it is to also be understood that the determinations based on any of the thresholds described herein may be opposite in that e.g. rather than determining that acceleration is less than a threshold it may be determined whether acceleration is more than a threshold in other embodiments. The same may apply to the other thresholds and determinations discussed herein, mutatis mutandis.
In addition, it is to be understood that although e.g. a software application for undertaking present principles may be vended with a device such as the system 100, present principles apply in instances where such an application is e.g. downloaded from a server to a device over a network such as the Internet.
It may now be appreciated based on present principles that e.g. reducing the vibration level and/or altering the vibration pattern such that the total time and/or intensity at which the device vibrates within a predetermined time may be reduced to thus reduce and/or eliminate the (e.g. audible) noise produced by the vibration and hence cause less if any distraction to a nearby person that would otherwise be distracted by the device vibrating at its e.g. default vibration level and/or pattern. Furthermore, present principles recognize that when altering vibration from e.g. a first level to a second level, the vibration level may incrementally be reduced over time (e.g. half a second) from the first level to the second level.
While the particular ACTUATING VIBRATION ELEMENT ON DEVICE BASED ON SENSOR INPUT is herein shown and described in detail, it is to be understood that the subject matter which is encompassed by the present application is limited only by the claims.
Number | Date | Country | |
---|---|---|---|
Parent | 14255282 | Apr 2014 | US |
Child | 16136641 | US |