Interactive garment, computer-implemented method and haptic feedback mechanism
Patent Information
- Application Number
- DE102017115880
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2017-06-14
- Filing Date
- 2017-07-14
- Publication Date
- 2025-07-17
- Estimated Expiration
- 2037-07-14
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[0001] Mobile devices, although useful, are not always easy to integrate into real-life applications. Wearable computing, including smart clothing, can be easier to integrate into real-life applications, but conventional solutions often lack good functionality, are difficult to manufacture, and may lack durability. Such wearable devices can incorporate haptic feedback components that provide haptic feedback via oscillation. However, conventional haptic feedback components often provide a single point of oscillation that cannot be perceived by the user.If the vibration point is integrated into a sleeve or cuff of a jacket, the vibration at the single vibration point may not be perceived by the user if the sleeve hangs from the user's arm, or the vibration must be so strong that the user can perceive the vibration. Increasing the power of the vibration source, however, requires significant battery power. Another way to increase the likelihood that the vibration will be perceived by the user is to use multiple vibration motors to increase the number of vibration points. Providing multiple vibration points using conventional vibration components, however, requires significant battery power to drive each individual vibration motor. In principle, an interactive piece of clothing is known from US 2013 / 0 155 020 A1. SUMMARY
[0002] This document describes techniques that utilize a haptic feedback mechanism for an interactive garment and objects that embody a haptic garment for an interactive garment. A wearable interactive garment (e.g., a jacket, shirt, or pants) may contain various sensors that can sense user interactions in the form of single- or multi-touch input (e.g., gestures). A haptic feedback mechanism is integrated into the interactive garment and includes a vibration source (e.g., a vibration motor) and a mechanical transmission structure coupled to the vibration source. A controller is configured to control the haptic feedback mechanism to provide haptic feedback by causing the vibration source to distribute the vibration to multiple vibration points within the transmission structure.
[0003] This summary is intended to introduce simplified concepts regarding a haptic feedback mechanism for an interactive fabric, which is further described below in the detailed description. This summary is neither intended to identify the essential features of the claimed subject matter nor is it intended for use in determining the scope of the claimed subject matter. BRIEF DESCRIPTION OF THE DRAWINGS
[0004] Embodiments of the techniques and devices for a haptic feedback mechanism for an interactive garment are described with reference to the following drawings. Throughout the drawings, the same reference numerals are used to refer to like features and components: Fig. Figure 1 is an illustration of an example environment in which a haptic feedback mechanism for an interactive garment may be implemented. Fig. Figure 2 illustrates an exemplary system in which a haptic feedback mechanism may be implemented for an interactive garment. Fig. 3 illustrates an example of the interactive fabric according to one or more implementations. Fig. Figure 4 illustrates an example of a haptic feedback mechanism when implemented with a vibration source and a rigid transmission structure. Fig. 5 illustrates an example of a haptic feedback mechanism when implemented with a vibration source and a transmission cable. Fig. 6 illustrates an exemplary method for controlling a haptic feedback mechanism to provide haptic feedback by oscillating at multiple oscillation points. Fig. 7 illustrates various components of an exemplary computer system that may be implemented as any type of client, server, and / or computing device as described with respect to the preceding Fig. 1-6 to implement a haptic feedback mechanism for an interactive garment. DETAILED DESCRIPTIONOverview
[0005] This document describes techniques that utilize a haptic feedback mechanism for an interactive garment and objects that embody a haptic feedback mechanism for an interactive garment. A wearable interactive garment (e.g., a jacket, shirt, or pants) may contain various sensors that can sense user interactions in the form of single- or multi-touch input (e.g., gestures). A haptic feedback mechanism is integrated into the interactive garment and includes a vibration source (e.g., a directional vibration motor) and a mechanical transmission structure coupled to the vibration source.A controller is configured to control the haptic feedback mechanism to create haptic feedback by causing the vibration source to distribute the vibration to multiple vibration points within the transmission structure. In some cases, the vibration source may be a directional vibration source, but the transmission structure may be multidirectional. Therefore, the haptic feedback mechanism enables multidirectional vibration driven by a directional vibration source.
[0006] Haptic feedback can be created, for example, to indicate to the user that a specific user interaction with the interactive garment has been detected or to provide a notification to the user. For example, the haptic feedback mechanism can vibrate once to indicate that a user input to the interactive garment has been received or recognized, and vibrate twice to indicate that a text message has been received on a smartphone paired with the interactive garment.
[0007] Distributing the vibration from a single vibration source to multiple vibration points throughout the interactive garment increases the likelihood that the user will perceive the vibration. For example, if multiple vibration points are provided around the cuff of a jacket, at least one of the vibration points will touch the user's wrist when the vibration occurs. In particular, the haptic feedback mechanism described here requires much lower power consumption than conventional solutions because only a single vibration source is powered by the battery, and the vibration is then distributed through the mechanical transmission structure, which requires no additional power.
[0008] The haptic feedback mechanism can be implemented in several different ways. In one or more implementations, the vibration source is coupled to a transmission structure that is rigid or stiff along a first vibration axis, but flexible along a non-vibration axis. The vibration source is configured to distribute the vibration along the vibration axis to the transmission structure, causing the vibration axis to vibrate as a rigid body. However, the flexibility of the transmission structure allows the transmission structure to be easily integrated into the interactive garment, such as by placing it around the cuff of a sleeve of a shirt or jacket.
[0009] In a second implementation, the vibration source is coupled to a transmission cable (e.g., a resonant cable) having attached weights. The transmission cable is attached to the interactive garment at a plurality of attachment points, with the weights being attached to the cable at the portions of the cable not attached to the garment. The vibration source is configured to distribute the vibration to the transmission cable, causing the transmission cable to vibrate, such that the plurality of attached weights vibrate at the plurality of vibration points. An exemplary environment
[0010] Fig. 1 is an illustration of an example environment 100 in which a haptic feedback mechanism for an interactive garment may be implemented. The environment 100 includes an interactive fabric 102 shown as being integrated into an interactive garment 104, which in this example is illustrated as a jacket. In the environment 100, the interactive fabric 102 is illustrated as being integrated into the sleeve of the interactive garment 104. In particular, however, the interactive fabric 102 may be integrated at any location on the interactive garment 104. The interactive fabric 102 is a fabric or woven fabric configured to sense a multi-touch input.As described herein, the interactive fabric 102 may include any type of fabric, woven fabric, or flexible woven material comprised of a network of natural or synthetic fibers, often referred to as thread or yarn.
[0011] While the interactive fabric 102 is illustrated as being integrated into a jacket, it should be recognized that the interactive fabric 102 may be integrated into any type of flexible object made from a fabric or similar flexible material, such as articles of clothing, hats, handbags, blankets, shower curtains, towels, bed sheets, comforters, or fabric furniture coverings, to name a few. As discussed in more detail below, the interactive fabric 102 may be integrated into the interactive garment 104 in a variety of different ways, including weaving, sewing, gluing, etc. In some cases, other types of sensors may be integrated into the interactive garment 104 instead of or in combination with the interactive fabric 102.
[0012] The interactive garment 104 is configured to detect user interactions (e.g., one or more gestures) from a user and generate touch data 106 representing the user interactions. The interactive garment 104 may also include one or more output devices 103, such as light sources (e.g., LEDs), speakers, displays (e.g., flexible organic displays), shape-changing materials, or vibration components. The output devices 103 may be controlled to provide feedback to the user, such as by providing a visual, audible, and / or haptic output (e.g., flashing the light, beeping, or vibrating) indicating that a particular user interaction has been detected. Additionally, the output devices 103 may be controlled to provide a notification to the user, such asby blinking, vibrating, or beeping to indicate that a text message has been received on a smartphone paired with the interactive garment 104. As discussed in more detail below, in one or more implementations, the output device 103 includes a haptic feedback mechanism configured to use a single vibration source to create multiple vibration points in the interactive garment 104.
[0013] In some cases, the interactive garment 104 may include processing capability to recognize the user interaction and to initiate a specific functionality associated with the user interaction. In other cases, the touch data 106 representing the user interactions may be transmitted over a network 110 to a computing device 108. Receipt of the touch data causes a gesture manager 112 implemented in the computing device 108 to analyze the touch data 106 to determine whether the touch data corresponds to a user interaction or gesture (e.g., maps to a user interaction or gesture), to initiate a specific functionality, or to perform a specific operation. For example, a user gesture (e.g., a swipe) on the interactive fabric 102 may be configured to trigger various types of functionality, such as:answering a phone call, saving the user's current geographical location, playing a song, etc.
[0014] In various implementations, gesture manager 112 is configured to interface with one or more applications 114 and / or one or more services 116 that may be implemented in computing device 108 or partially implemented in computing device 108 and partially implemented as a remote service (e.g., a cloud-based service) located remotely from computing device 108. For example, it is contemplated that a fitness-based application 114 may be implemented in device 108 worn or held by the user or otherwise attached to the user (e.g., a smartphone or smartwatch). In this case, application 114 on computing device 108 may perform various functions based on touch data 106, such as logging workout results, nutritional information, etc.Additionally, application 114 may present a user interface that provides the user's diet and fitness results. Application 114 may communicate with a remote service 116, which may store the fitness results and perform other functions. By allowing a dedicated remote service to perform various processing tasks, the system conserves processing resources in computing device 108, preserving battery life.
[0015] The applications 114 and the services 116 may include various different types of applications or services, such as telephone services, messaging services (e.g., text messaging services, email services), mapping services, music services, etc. Additionally, the gesture manager 112 is configured to enable third parties to develop applications 114 and services 116 that can interface with the gesture manager 112. For example, the gesture manager 112 may provide an infrastructure for developers by being configured to recognize various types of interactions with the interactive fabric 102 and / or user contexts. In this way, developers are enabled to design applications 114 and services 116 to perform various functions based on the recognizable user interactions with the interactive fabric 102.
[0016] The gesture manager 112, the applications 114, and the services 116 may be implemented by one or more computing devices, which may be configured in a variety of different ways. For example, a computing device may be configured as a desktop computer, a laptop computer, a mobile device (assuming, for example, a handheld configuration such as a tablet or a mobile phone), etc. Thus, a computing device may range from full-resource devices with significant memory and processor resources (e.g., personal computers, game consoles) to light-resource devices with limited memory and / or processing resources (e.g., mobile devices). Although in some cases a single computing device is described, the computing device may additionally represent a plurality of different devices, such asmultiple servers used by a company to perform operations "via the cloud." In . Fig. 1 illustrates that the application 114 is implemented in the computing device 108, and the service 116 is shown to be implemented remotely from the computing device 108. However, it is noted that in some implementations, the application 114 may be implemented without the service 116, or the application 114 and the service 116 may be implemented in a single device.
[0017] The network 110 includes one or more of many types of wireless or partially wireless communication networks, such as a local area network (LAN), a wireless local area network (WLAN), a personal area network (PAN), a wide area network (WAN), an intranet, the Internet, a peer-to-peer network, a point-to-point network, a mesh network, etc. Further, although a single network 110 is shown, the network 110 may also be configured to include multiple networks. For example, the interactive garment 104 and the computing device 108 may be coupled via a first type of network 110 (e.g., a Bluetooth® network connection), while the computing device 108 and the service 116 may be coupled via a second type of network 110 (e.g., the Internet).
[0018] It will be more detailed Fig. 2, which illustrates an exemplary system 200 in which a haptic feedback mechanism may be implemented for an interactive garment. In the system 200, the interactive fabric 102 is integrated into the interactive garment 104, which may be implemented as any type of flexible object (e.g., a jacket, a shirt, a hat, or a handbag).
[0019] The interactive fabric 102 is configured to sense a multi-touch input from a user when one or more fingers of the user's hand touch the interactive fabric 102. The interactive fabric 102 may also be configured to sense a full-hand touch input from a user, such as when an entire hand of the user touches the interactive fabric 102 or swipes across the interactive fabric 102. To enable detection of the touch input, the interactive fabric 102 includes conductive threads 202 integrated into the interactive fabric 102 (e.g., by being woven into the interactive fabric 102 or embroidered onto the interactive fabric 102) to form a touch sensor (e.g., a capacitive touch sensor).In particular, the conductive threads 202 do not change the flexibility of the interactive fabric 102, which allows the interactive fabric 102 to be easily integrated into the interactive garments 104.
[0020] In this example, the interactive fabric 104 also includes one or more electronic modules 204 configured to contain various electronic components, illustrated as including sensing circuitry 206, the output devices 103, a controller 208, a power source 210, and the network interfaces 212.
[0021] The sensing circuitry 206 is coupled to the conductive thread 202, which is integrated with the interactive fabric 102. The wires from the conductive threads 202 can be connected to the sensing circuitry 206, for example, using a flexible PCB, creping, bonding with a conductive adhesive, soldering, etc. The sensing circuitry 206 is configured to detect user interactions with the interactive fabric 102, such as by detecting both the location of the touch input on the conductive thread 202 and the movement of the touch input. When an object, such as a user's finger, touches the conductive thread 202, the position of the touch can be determined by the sensing circuitry 206 by detecting a change in capacitance in the grid or arrangement of the conductive thread 202.The touch input can then be used to generate touch data usable to control the computing device 108. For example, the touch input can be used to perform various gestures, such as single-finger touches (e.g., touches, taps, and holds), multi-finger touches (e.g., two-finger touches, two-finger taps and holds, and pinches), single-finger and multi-finger swipes (e.g., swipe up, swipe down, swipe left, swipe right), and full-hand interactions (e.g.,Touching the interactive fabric with the user's entire hand, covering the interactive fabric with the user's entire hand, pressing the interactive fabric with the user's entire hand, palm touches, and rolling, twisting, or rotating the user's hand while touching the interactive fabric).
[0022] The power source 210 may be coupled to the sensing circuitry 206 to provide power to the sensing circuitry 206 to enable the detection of a touch input and may be implemented as a small battery. When a touch input is detected by the sensing circuitry 206, the data representative of the touch input may be transmitted to the controller 208, which may be implemented as one or more microprocessors. The controller 208 may then analyze the touch input data to generate the touch data 106. The touch data 106 may then be transmitted via the network interface 212 to the gesture manager 112, which may be implemented in a computing device 108 (e.g., a smartphone), to cause the gesture manager 112 to initiate a specific functionality. Generally, the network interfaces 212 are configured to receive data, such asthe touch data 106, to the computing devices 108 over wired, wireless, or optical networks. By way of example, and not limitation, the network interfaces 212 may transmit the data over a local area network (LAN), a wireless local area network (WLAN), a personal area network (PAN) (e.g., Bluetooth™), a wide area network (WAN), an intranet, the Internet, a peer-to-peer network, a point-to-point network, a mesh network, and the like (e.g., through the network 108 of FIG. Fig. 1) transferred.
[0023] The controller 208 may also be configured to control the output devices 103 to provide feedback or to indicate a specific message. In accordance with various implementations, the output devices 103 include a haptic feedback mechanism 214. As discussed throughout, the haptic feedback mechanism 214 is configured to provide haptic feedback by distributing vibration from a single vibration source to multiple vibration points within the interactive garment 104. Further discussion of the haptic feedback mechanism 214 is provided below in the section titled "The Haptic Feedback Mechanism."
[0024] In some cases, the electronics module 204 includes an internal electronics module and an external electronics module. The internal electronics module may be embedded within the interactive garment 104 and directly coupled to the conductive threads 202. The internal electronics module may also be communicatively coupled to the external electronics module via a communication interface. The internal electronics module may include a first subset of electronic components for the interactive garment 104, while the external electronics module may include a second, different subset of electronic components for the interactive garment 104. As described herein, the internal electronics module may be physically and permanently embedded within the interactive garment 104, whereas the external electronics module may be removably coupled to the interactive garment 104.
[0025] Fig. 3 illustrates an example 300 of an interactive fabric 102 according to one or more implementations. In this example, the interactive fabric 102 of the interactive garment 104 includes the non-conductive threads 302 woven with the conductive threads 202 to form the interactive fabric 102. The non-conductive threads 302 may correspond to any type of non-conductive thread, fiber, or fabric, such as cotton, wool, silk, nylon, polyester, cashmere, wool, etc. In some cases, the conductive threads may be embroidered onto the interactive fabric 102 rather than weaving the conductive threads 102 with the non-conductive threads 302.
[0026] At 304, an enlarged view of the conductive thread 202 is illustrated. The conductive thread 202 includes a conductive wire 306 twisted, braided, or wrapped with a flexible thread 308. Twisting the conductive wire 306 with the flexible thread 308 causes the conductive thread 202 to be flexible and stretchable, allowing the conductive thread 202 to be easily woven with the non-conductive threads 302 to form the interactive fabric 102 or easily embroidered onto the interactive fabric 102.
[0027] In one or more implementations, the conductive wire 306 is a thin copper wire. However, it is noted that the conductive wire 306 may also be implemented using any type of conductive material, such as silver, gold, materials coated with a conductive polymer, etc. The flexible thread 308 may be implemented as any type of flexible thread or fiber, such as cotton, wool, silk, nylon, or polyester, to name a few.
[0028] In some cases, the conductive thread 202 includes a conductive core containing at least one conductive wire 306 (e.g., one or more copper wires) and a cover layer configured to encase the conductive core, which is constructed of flexible threads 308. The conductive wire 306 of the conductive core may be insulated or uninsulated.
[0029] In one or more implementations, the conductive core may be implemented using a single, straight, conductive wire 306. Alternatively, the conductive core may be implemented using a conductive wire 306 and one or more flexible threads 308. The conductive core may be formed, for example, by twisting one or more flexible threads 308 (e.g., silk threads, polyester threads, or cotton threads) with the conductive wire 306 (such as at 304 after Fig. 3) or by winding the flexible threads 308 around the conductive wire 306.
[0030] The conductive wire 306 may be insulated to prevent direct contact between the intersecting conductive threads 202. To accomplish this, the conductive wire 306 may be coated with a material such as enamel or nylon. Alternatively, an interactive fabric with three separate fabric layers may be created to ensure that the intersecting conductive threads 202 do not make direct contact with each other, rather than insulating the conductive wire 306.
[0031] The interactive fabric 102 can be formed inexpensively and efficiently using any conventional weaving process (e.g., Jacquard weaving or 3D weaving), which involves interlacing a set of longer threads (referred to as the warp) with a set of crossing threads (referred to as the weft). The weaving can be implemented on a conventional frame or machine known as a loom, of which there are a number of types. Thus, a loom can weave the non-conductive threads 302 with the conductive threads 202 to create the interactive fabric 102.
[0032] In example 300, the conductive thread 202 is woven into the interactive fabric 102 to form a patch of conductive threads 202. In this example, the patch of conductive thread 202 is woven into the interactive fabric 102 to form a grid including a set of substantially parallel conductive threads 202 and a second set of substantially parallel conductive threads 202 that crosses the first set of conductive threads to form the grid. The first set of conductive threads 202 is oriented horizontally, while the second set of conductive threads 202 is oriented vertically, such that the first set of conductive threads 202 is positioned substantially orthogonal to the second set of conductive threads 202. However, it should be recognized that the conductive threads 202 may be oriented such that the intersecting conductive threads 202 are not orthogonal to each other. The conductive threads 202 may, for example,be woven or embroidered in any type of shape or pattern, such as a circle, a rhombus, a hexagon, to name a few. While in . Fig. 3 illustrates that the conductive threads 202 are spaced apart from each other, indicating that the conductive threads 202 may be woven very closely together. For example, in some cases, two or three conductive threads may be woven closely together in each direction. Furthermore, in some cases, the conductive threads may be oriented as sense lines in a single dimension that do not cross or intersect each other.
[0033] Depending on the application and preference, the patch of conductive thread 202 may be made so that it is visually or tactilely imperceptible to the user. In some cases, for example, the conductive thread 202 blends into the fabric, so that users cannot tell that the patch contains the conductive thread 202. Alternatively, the conductive thread may be made visually or tactilely perceptible to users, so that the user can determine the location of the patch by looking at or feeling the conductive thread in the interactive fabric 102.
[0034] In example 300, sensing circuitry 206 is shown integrated into interactive garment 104 and is directly connected to conductive threads 202. During operation, sensing circuitry 206 may determine the positions of touch inputs on the grid of conductive thread 202 using various different sensing techniques, such as self-capacitance sensing or projective capacitive sensing.
[0035] For example, if the sensing circuitry 206 is configured as a self-capacitance sensor, it can charge the intersecting conductive threads 202 (e.g., the horizontal and vertical conductive threads) by applying a control signal (e.g., a sine signal) to each conductive thread 202. When an object, such as a user's finger, touches the grid of the conductive thread 202, the conductive threads 202 that are touched are grounded, which changes the capacitance of the touched conductive threads 202 (e.g., increases or decreases the capacitance).
[0036] The sensing circuitry 206 uses the change in capacitance to identify the presence of the object. To do this, the sensing circuitry 206 detects a position of the touch input by detecting which horizontal conductive thread 202 is touched and which vertical conductive thread 202 is touched by detecting the changes in capacitance of each corresponding conductive thread 202. The sensing circuitry 206 uses the intersection of the intersecting conductive threads 202 being touched to determine the position of the touch input on the grid of conductive threads 202. For example, the sensing circuitry 206 may determine the touch data by determining the position of each touch as the X, Y coordinates on the grid of conductive thread 202.
[0037] When implemented as a self-capacitance sensor, "ghosting" may occur when receiving a multi-touch input. For example, consider a user touching the grid of conductive thread 202 with two fingers. When this occurs, sensing circuitry 206 determines the X and Y coordinates for each of the two touches. However, sensing circuitry 206 may not be able to determine how to map each X coordinate to its corresponding Y coordinate. For example, if a first touch has coordinates X1, Y1 and a second touch has coordinates X4, Y4, sensing circuitry 206 may also detect the "ghost" coordinates X1, Y4 and X4, Y1.
[0038] In one or more implementations, the sensing circuitry 206 is configured to detect "regions" of touch input corresponding to two or more touch input points on the grid of conductive thread 202. The conductive threads 202 may be woven closely together such that when an object touches the grid of conductive thread 202, the capacitance for multiple horizontal conductive threads 202 and / or for multiple vertical conductive threads 202 is changed. For example, a single touch with a single finger may generate the coordinates X1, Y1 and X2, Y1. Consequently, the sensing circuitry 206 may be configured to detect the touch input if the capacitance for multiple horizontal conductive threads 202 and / or for multiple vertical conductive threads 202 is changed.It is stated that this removes the effect of ghosting because the sensing circuitry 206 does not detect a touch input if two single-point touches are detected that are spaced apart.
[0039] Alternatively, when the sensing circuitry 206 is implemented as a projective capacitance sensor, it charges a single set of conductive filaments 202 (e.g., the horizontal conductive filaments 202) by applying a control signal (e.g., a sinusoidal signal) to the single set of conductive filaments 202. Then, the sensing circuitry 206 senses the changes in capacitance in the other set of conductive filaments 202 (e.g., the vertical conductive filaments 202).
[0040] In this implementation, the vertical conductive threads 202 are not charged and thus act as a virtual ground. However, when the horizontal conductive threads 202 are charged, the horizontal conductive threads are capacitively coupled to the vertical conductive threads 202. Consequently, when an object, such as a user's finger, touches the grid of the conductive thread 202, the capacitance at the vertical conductive threads changes (e.g., increasing or decreasing). The sensing circuitry 206 uses the change in capacitance at the vertical conductive threads 202 to identify the presence of the object. To do this, the sensing circuitry 206 detects a position of the touch input by sensing the vertical conductive threads 202 to detect the changes in capacitance.Sensing circuitry 206 determines the position of the touch input as the intersection point between the vertical conductive thread 202 with the changed capacitance and the horizontal conductive thread 202 on which the control signal was transmitted. For example, sensing circuitry 206 may determine the touch data by determining the position of each touch as the X, Y coordinates of the grid of the conductive thread 202.
[0041] The conductive thread 202 and the sensing circuitry 206 are configured to transmit the touch data representing the detected touch input to the controller 208, whether implemented as a self-capacitance sensor or a projective capacitance sensor. The controller 208 can then initiate the transmission of the touch data via the network interface 212 to the gesture manager 112 to enable the gesture manager 112 to determine the gestures based on the touch data that can be used to control the interactive garment 104, the computing device 108, the applications implemented on the computing device 108, or other computing devices.
[0042] The gesture manager 112 may be implemented to recognize various different types of gestures, such as touches, taps, swipes, holds, and covers, performed on the interactive fabric 102. To recognize the various different types of gestures, the gesture manager 112 may be configured to determine a duration of the touch, swipe, or hold (e.g., one second or two seconds), a number of touches, swipes, or holds (e.g., a single tap, a double tap, or a triple tap), a number of fingers of the touch, swipe, or hold (e.g., a one-finger touch or swipe, a two-finger touch or swipe, or a three-finger touch or swipe), a frequency of the touch, and a dynamic direction of the touch or swipe (e.g., up, down, left, right).Regarding the hold, the gesture manager 112 may also determine a region of the conductive thread 202 being held (e.g., top, bottom, left, right, or top and bottom). Consequently, the gesture manager 112 may recognize various different types of holds, such as a cover, a cover and hold, a five-finger hold, a five-finger cover and hold, a three-finger pinch and hold, etc.
[0043] In particular, there may be several different functionalities that the user may wish to initiate via a gesture to the interactive fabric 102. However, there is a limited number of different gestures that a user can realistically be expected to remember. Accordingly, in one or more implementations, the gesture manager 112 is configured to select a functionality based both on user input to the interactive fabric 102 and on a context of the user or the computing device 108. The ability to recognize gestures based on context allows the user to invoke several different functionalities using a subset of gestures. For example, for a first context, a first gesture may initiate a first functionality, whereas for a second context, the same first gesture may initiate a second functionality.
[0044] In one or more implementations, the context may be determined based on data detected by other types of sensors. For example, the sensors other than the interactive fabric 102 may be integrated into the interactive garment 102, the computing device 108, and / or another device communicatively coupled to the computing device 108. For example, the gesture manager 112 may receive the data from a fitness band worn by the user that tracks the number of steps the user takes. Such sensors may include, by way of example and not limitation, an accelerometer, an internal measurement unit (IMU), a pedometer, etc.
[0045] The sensor data can be used by the gesture manager 112 to determine a user's context, such as an activity the user is currently engaged in. For example, data from an IMU or accelerometer can be used by the gesture manager 112 to determine that the user is performing an activity, such as running, cycling, exercising, driving, etc. In this case, the gesture manager 112 can initiate different functionality based on the context. An IMU or integrated sensor could also be used to detect when the interactive garment is worn or not worn, which can further alter the resulting functionality.
[0046] In some cases, the context of computing device 108 may be based on an application currently executing on computing device 108. For example, the context may correspond to "listening to music" if the user uses a music player application to listen to music, or "receiving a call" if a call is transmitted to computing device 106. In these cases, gesture manager 112 may determine the context by determining the application currently executing on computing device 108. Other non-limiting examples of determining the context include determining the context based on calendar data (e.g., determining that the user is in a session based on the user's calendar), determining the context based on location data, etc.
[0047] Thus, gesture manager 112 may be implemented to initiate functionality based on both touch input and context. For example, gesture manager 112 may compare a gesture to a mapping that assigns the gestures to different contexts. For example, a given gesture may be associated with multiple different contexts and associated functionality. Thus, when a first gesture is received, gesture manager 112 may initiate a first functionality if a first context is detected, or initiate a second, different functionality if a second, different context is detected. The haptic feedback mechanism
[0048] As discussed throughout, the haptic feedback mechanism 214 is configured to provide haptic feedback by distributing vibration from a single vibration source to multiple vibration points within the interactive garment 104. Various different types of vibration can be used to provide haptic feedback. Additionally, haptic feedback can be provided for various different reasons, such as to provide feedback indicating that a sensor input from the user is detected, to notify the user of a special event (e.g., a new text message or an incoming phone call), to provide realistic feedback for virtual reality or augmented reality applications, etc.
[0049] Unlike conventional vibration components, the haptic feedback mechanism 214 includes a single vibration source that distributes the vibration from the vibration source through a mechanical transmission structure coupled to the vibration source. The received vibration from the vibration source causes the transmission structure to vibrate at multiple vibration points throughout the interactive garment 104, thereby increasing the likelihood that the vibration will be perceived and recognized by a user wearing the interactive garment 104.
[0050] The vibration source can be implemented as any type of vibration source or vibration motor, such as a linear resonant actuator or a vibration motor with eccentric rotating masses, to name a few. A linear resonant actuator contains a small internal mass attached to a string that generates a force when driven. The vibration motor with eccentric rotating masses contains a small unbalanced mass attached to a DC motor that rotates to generate a force that is converted into vibrations.
[0051] In particular, the transmission structure is mechanical, thus requiring no power from the power source 210 to operate. Consequently, using a single vibration source to create multiple vibration points results in significant power savings for the interactive garment 104, particularly compared to conventional solutions that may require a separate vibration source for each vibration point.
[0052] The transmission structure of the haptic feedback mechanism 208 can be implemented in several different ways. In one or more implementations, the vibration source is coupled to a rigid transmission structure that is rigid or stiff along a first vibration axis but flexible along a second non-vibration axis. The vibration source is configured to distribute the vibration along the vibration axis to the rigid transmission structure, causing the vibration axis to vibrate as a rigid body.
[0053] For example, Fig. 4, which illustrates an example 400 of a haptic feedback mechanism when implemented with a vibration source and a rigid transmission structure. In this example, a rigid transmission structure 402 includes a plurality of rigid pieces 404 attached to one another. The rigid transmission structure 402 may be similar, for example, to a watch strap that includes multiple pieces. Each of the plurality of rigid pieces 404 may be formed from various different types of materials, such as plastics, metals, etc.
[0054] In particular, each of the rigid pieces 404 of the rigid transmission structure 402 is rigid or stiff along the vibration axis 406, but by coupling the pieces together, the structure itself is flexible along a non-vibration axis 408. Due to this flexibility, the rigid transmission structure 402 can be integrated into the interactive garment 104. As an example, at 410, the rigid transmission structure 402 is shown implemented along the cuff of a sleeve of the interactive garment 104. In this case, the rigid transmission structure 402 is not visible because it is integrated into the cuff of the fabric of the interactive garment 104.
[0055] A vibration source 412 is coupled to the rigid transmission structure 402 and is configured to provide the vibration along the vibration axis 406 of the rigid transmission structure 402. The vibration source 412 may be implemented, for example, as a linear resonant actuator vibrator and may thus be controlled to propagate the vibration along the vibration axis 406 to the rigid transmission structure 402. When the vibration source 412 provides the vibration to the rigid transmission structure 402, each of the individual pieces vibrates along the vibration axis 406, thus creating a vibration point within the interactive garment 104 that can be perceived by the user wearing the interactive garment 104.
[0056] As discussed throughout, the controller 208 is configured to control the vibration source 412 to vibrate, causing the vibration to be distributed throughout the rigid transmission structure, causing the rigid pieces to vibrate along the vibration axis at the multiple vibration points.
[0057] Alternatively, in one or more implementations, the haptic feedback mechanism 214 is implemented by coupling a vibration source to a transmission cable. The transmission cable may have carefully tuned elastic and mass properties, such as a resonant cable that can be bent in any direction and transmits a radial vibration.
[0058] For example, Fig. 5, which illustrates an example 500 of a haptic feedback mechanism when implemented with a vibration source and a transmission cable. In this example, a transmission cable 502 is coupled to the vibration source 504 and attached to the interactive garment 104 at several different attachment points 506. Weights 508 are attached to the transmission cable 502 between each pair of attachment points 506. The weights 508, as such, are not attached to the interactive garment 104 itself.
[0059] The vibration source 504 can be controlled to apply a vibration to one end of the transmission cable 502, which distributes the vibration along the transmission cable 502. In this way, the transmission cable 502 is caused to oscillate (e.g., similar to a sine wave) so that each of the weights 508 makes contact with the user's body. In particular, because multiple weights 508 are used, the user is likely to perceive the vibration because at least one of the weights makes contact with the user's body. For example, if the transmission cable 502 is implemented along the length of a shirt sleeve, at least one of the weights makes contact with the user's body, even if a portion of the sleeve hangs off the user's arm. The transmission cable can be easily integrated into the interactive garment 104, such asby knitting the transmission cable into the interactive garment 104.
[0060] The controller 208 is configured to control the vibration source 504 to vibrate, causing the vibration to be distributed through the transmission cable 502, causing the weights at the multiple vibration points to vibrate against the user's body. Exemplary procedures
[0061] Fig. 6 illustrates an exemplary method 600 for controlling a haptic feedback mechanism to provide haptic feedback by oscillating at multiple oscillation points. This method is shown as sets of blocks that specify operations performed, but are not necessarily limited to the order or combinations shown for performing the operations by the respective blocks. The techniques are not limited to execution by one or more entities operating within a device.
[0062] At 602, a request is received to provide haptic feedback in an interactive garment. For example, the controller 208 receives a request to provide haptic feedback in the interactive garment 104. The request may be received for a variety of different reasons. In some cases, for example, the request is received in response to detecting touch input to the sensors integrated into the interactive garment. As another example, the request may be received to signal an alert, such as to indicate the receipt of a new text message or an incoming phone call.
[0063] At 604, haptic feedback is created by controlling a vibration source to distribute vibration to a transmission structure to cause the vibration at multiple vibration points of the transmission structure. For example, in one or more implementations, controller 208 controls vibration source 412 to distribute the vibration throughout rigid transmission structure 402, causing the rigid pieces to vibrate along the vibration axis at the multiple vibration points. As another example, in one or more implementations, controller 208 is configured to control vibration source 504 to vibrate, causing the vibration to be distributed throughout transmission cable 502, causing weights 508 to vibrate against the user's body at the multiple vibration points. An exemplary computer system
[0064] Fig. 7 illustrates various components of an exemplary computer system 700, which may be implemented as any type of client, server, and / or computing device, as described with respect to the preceding Fig. 1-6 to implement a haptic feedback structure for an interactive garment. In embodiments, the computer system 700 may be implemented as one or a combination of a wired and / or wireless wearable device, a system on a chip (SoC), and / or another type of device or portion thereof. The computer system 700 may also be associated with a user (e.g., a person) and / or an entity operating the device, such that a device describes logical devices including users, software, firmware, and / or a combination of devices.
[0065] The computer system 700 includes the communication devices 702 that enable wired and / or wireless transmission of the device data 704 (e.g., the received data, the data being received, the data scheduled for broadcast, the data packets of the data, etc.). The device data 704 or other device content may include the device's configuration settings, the media content stored in the device, and / or information associated with a user of the device. The media content stored in the computer system 700 may include any type of audio, video, and / or image data. The computer system 700 includes one or more data inputs 702 through which any type of data, media content, and / or inputs, such ashuman utterances, touch data generated by the interactive fabric 102, user-selectable inputs (explicit or implicit), messages, music, television media content, pre-recorded video content, and any other type of audio, video, and / or image data received from any content and / or data source.
[0066] Computer system 700 also includes communication interfaces 708, which may be implemented as any one or more of a serial and / or parallel interface, a wireless interface, any type of network interface, a modem, and any other type of communication interface. Communication interfaces 708 provide a connection and / or communication links between computer system 700 and a communication network through which other electronic, computing, and communication devices communicate with computer system 700.
[0067] The computer system includes one or more processors 710 (e.g., any of microprocessors, controllers, and the like) that process various computer-executable instructions to control the operation of the computer system 700 and to enable techniques for interactive webs or techniques in which interactive webs may be embodied. Alternatively or additionally, the computer system 700 may be implemented with any one or a combination of hardware, firmware, or fixed logic circuitry implemented in conjunction with the processing and control circuitry generally identified at 712. The computer system 700 may include a system bus or data transmission system that couples the various components within the device, although not shown. A system bus may be any one or a combination of various bus structures, such asa memory bus or memory controller, a peripheral bus, a universal serial bus, and / or a processor or local bus, using any of various bus architectures.
[0068] A computer system 700 also includes computer-readable media 714, such as one or more storage devices that enable persistent and / or non-volatile data storage (i.e., as opposed to mere signal transmission), examples of which include random access memory (RAM), non-volatile memory (e.g., any one or more of read-only memory (ROM), flash memory, EPROM, EEPROM, etc.), and a disk storage device. A disk storage device may be implemented as any type of magnetic and optical storage device, such as a hard disk drive, a writable and / or rewritable compact disc (CD), any type of digital versatile disc (DVD), and the like. The computer system 700 may also include a mass storage media device 716.
[0069] The computer-readable media 714 provides data storage mechanisms for storing both the device data 704 and various device applications 718 and other types of information and / or data related to the operational aspects of the computer system 700. For example, an operating system 720 may be maintained as a computer application with the computer-readable media 714 and executed in the processors 710. The device applications 718 may include a device manager, such as some form of control application, a software application, a signal processing and control module, code native to the particular device, a hardware abstraction layer for a particular device, etc.
[0070] Device applications 718 also include any system components, engines, or managers for implementing a haptic feedback structure for an interactive garment. In this example, device applications 718 include gesture manager 112, application 114 and service 116, and controller 208. conclusion
[0071] Although embodiments of techniques employing a haptic feedback structure for an interactive garment and objects incorporating a haptic feedback structure for an interactive garment have been described in language specific to the features and / or methods, it is to be understood that the subject matter of the appended claims is not necessarily limited to the specific features or methods described. Instead, the specific features and methods are disclosed as exemplary implementations of a haptic feedback structure for an interactive garment.
Claims
[1] Interactive garment comprising: a haptic feedback mechanism integrated into the interactive garment, the haptic feedback mechanism comprising a vibration source and a transmission structure coupled to the vibration source; and a controller configured to control the haptic feedback mechanism to provide haptic feedback by causing the vibration source to distribute vibration to a plurality of vibration points within the transmission structure, wherein the transmission structure comprises a transmission cable attached to the interactive garment at a plurality of attachment points, and wherein weights are attached to the transmission cable between each pair of attachment points, and the vibration source is configured to cause the transmission cable to vibrate such that the plurality of attached weights vibrate at the plurality of vibration points. [2] The interactive garment of claim 1, wherein the transmission cable comprises a resonant cable. [3] The interactive garment according to any one of claims 1 to 2, wherein the transmission cable is attached to the interactive garment at the plurality of attachment points such that the weights are not attached to the interactive garment. [4] The interactive garment of any one of claims 1 to 3, wherein the vibration source comprises a linear actuator. [5] The interactive garment of any one of claims 1 to 4, wherein the controller is configured to cause the plurality of oscillation points to oscillate in response to detection of a user input to a sensor integrated into the garment. [6] The interactive garment of any one of claims 1 to 5, wherein the interactive garment further comprises an interactive fabric comprising conductive threads integrated into the interactive fabric to form a capacitive touch sensor; and wherein the controller is further configured to detect a touch input to the conductive threads when a user wearing the interactive garment touches the conductive threads; and to provide the haptic feedback in response to detecting the touch input. [7] The interactive garment of any one of claims 1 to 6, wherein the controller is configured to cause the plurality of oscillation points to oscillate to indicate a message. [8] Computer-implemented method comprising: Receiving a request to create haptic feedback in an interactive garment; and Creating the haptic feedback by controlling a vibration source to distribute a vibration to a transmission structure to cause the vibration at a plurality of vibration points of the transmission structure, wherein the transmission structure comprises a transmission cable attached to the interactive garment at a plurality of attachment points, and wherein weights are attached to the transmission cable between each pair of attachment points, and the vibration source is configured to cause the transmission cable to vibrate such that the plurality of attached weights vibrate at the plurality of vibration points [9] The computer-implemented method of claim 8, wherein the vibration source comprises a single vibration motor. [10] The computer-implemented method of claim 8 or 9, wherein the request is received to provide the haptic feedback indicating detection of a user input to a sensor integrated into the interactive garment. [11] A computer-implemented method according to any one of claims 8 to 10, wherein the request is received to provide the haptic feedback indicating a message. [12] A computer-implemented method according to any one of claims 8 to 11, wherein the transmission structure comprises a transmission cable attached to the interactive garment at a plurality of attachment points, and wherein weights are attached between each pair of attachment points on the transmission cable. [13] Haptic feedback mechanism that includes: a linear actuator; and a transmission structure coupled to the linear actuator and configured to distribute vibration from the linear actuator to a plurality of vibration points of the transmission structure, and wherein the transmission structure comprises a transmission cable attached to a plurality of attachment points on an interactive garment, and wherein weights are attached to the transmission cable between each pair of attachment points and a vibration source is configured to cause the transmission cable to vibrate such that the plurality of attached weights vibrate at the plurality of vibration points
Citation Information
Patent Citations
System and method for providing haptic feedback from haptic textile
US20130155020A1