This disclosure relates to torso simulation systems.
In apparel design, the human form is the basis for fit in the form of a rigid mannequin or in fitting sessions on human models. Apparel is typically designed in static positions specific to bra fit. Current industry standard bra-fit analysis involves human fit models that try on bras, and fit is determined by observation and wearer qualification of fit, which is prone to human error.
This disclosure describes torso simulation systems.
In some aspects, a prosthetic torso assembly includes a support structure at least partially in a shape of a human torso, the support structure formed by a lattice network of rigid material, and a synthetic skin disposed over the support structure and connected to the support structure, the synthetic skin having a thickness, comprising silicone or ballistic gel, and configured to imitate a human torso.
This, and other aspects, can include one or more of the following features. The prosthetic torso assembly can further include synthetic breasts connected to the synthetic skin, where the synthetic breasts include silicone and are configured to imitate female human breasts. The synthetic breasts can be formed integrally with the synthetic skin. The synthetic breasts can be coupled to the synthetic skin. The synthetic breasts can include a silicone skin surrounding a volume of silicone gel. The silicone skin of the synthetic breasts can include a thickness of greater than or equal to one millimeter. The thickness of the synthetic skin can be between 5 mm and 7 mm. The thickness of the synthetic skin can be about 6 mm. The synthetic skin can be molded to the support structure. The support structure can be a hollow lattice structure defining a torso chamber within the hollow lattice structure. The support structure can be formed from one or more of nylon or polyamide. The prosthetic torso assembly can include a support base, the support structure being selectively mounted to the support base. The support base can be coupled to an actuator assembly, the actuator assembly configured to move the support base and the support structure to mimic human movement. The prosthetic torso assembly can further include a network of silicone tubing between the support structure and the synthetic skin, the network of silicone tubing configured to provide force or pressure sensing in the synthetic skin. The network of silicone tubing can be at least partially embedded in the synthetic skin and adjacent the support structure.
Certain aspects of the disclosure encompass a method for forming a prosthetic torso assembly. The method includes forming a support structure at least partially in a shape of a human torso with a lattice network of rigid material, and disposing a synthetic skin over the support structure and connecting the synthetic skin to the support structure, the synthetic skin including silicone or ballistic gel and configured to imitate a human torso.
This, and other aspects, can include one or more of the following features. Forming a support structure at least partially in the shape of a human torso with a lattice network of rigid material can include printing, with a 3D printer, the support structure. Disposing the synthetic skin over the support structure and connecting the synthetic skin to the support structure can include molding the synthetic skin over the support structure. Forming a support structure with a lattice network of rigid material can include arranging the lattice network of rigid material in a direct mesh pattern to form the support structure. The method can further include forming synthetic breasts connected to the synthetic skin, the synthetic breasts including silicone and configured to imitate female human breasts. Forming synthetic breasts can include forming the synthetic breasts integrally with the synthetic skin. The method can further include positioning a network of silicone tubing between the support structure and the synthetic skin, the network of silicone tubing configured to provide force or pressure sensing in the synthetic skin. Positioning a network of silicone tubing can include at least partially embedding the network of silicone tubing in the synthetic skin and adjacent the support structure.
Some aspects of the disclosure describe a prosthetic female torso assembly including a support structure at least partially in a shape of a human torso, the support structure formed by a lattice network of rigid material, a synthetic skin disposed over the support structure and connected to the support structure, the synthetic skin including silicone or ballistic gel and configured to imitate a human torso, and synthetic breasts connected to the synthetic skin, where the synthetic breasts include silicone or ballistic gel and are configured to imitate female breasts.
This, and other aspects, can include one or more of the following features. The synthetic skin can be made at least partially from a first composition including a 00-10 durometer Ecoflex™ silicone. The synthetic skin can include three layers of the first composition. The synthetic breasts can be made at least partially from a second composition including Qgel 317 silicone. The synthetic breasts can be made from a pliable silicone layer surrounding a volume of silicone gel. The synthetic breasts can be formed integrally with the synthetic skin. The synthetic breasts can be coupled to the synthetic skin.
Some aspects of the disclosure encompass a sensor system including a vessel configured to hold a fluid having a predetermined density and at least partly immerse at least one three-dimensional object having a predetermined buoyancy, and a sensor apparatus configured to sense a three-dimensional form of the three-dimensional object while at least partly immersed in the fluid and provide a data model representative of the sensed three-dimensional form at least partly immersed in the fluid.
This, and other aspects, can include one or more of the following features. The predetermined density of the fluid can render the three-dimensional object substantially buoyancy-neutral. The fluid can include at least one of water and a buoyancy-modifying agent dissolvable in water. The three-dimensional object can include at least a human body part. The human body part can be a female breast. The sensor apparatus can include at least one housing to resist infiltration by the fluid when submerged in the fluid. The sensor apparatus can include a stereo pair of image sensors. The sensor apparatus can include a structured light projector and an image sensor to detect reflected structured light. The sensor apparatus can include at least one of a laser or ultrasonic range finding device. The sensor apparatus can include a three-dimensional ultrasound imaging device. The sensor apparatus can measure at least one of a shape, a density, or an elasticity of at least an internal portion of the three-dimensional object. The sensor system can further include at least one fiducial marker to be affixed to the three-dimensional object, where the sensor apparatus can sense a location of the fiducial marker. The sensor system can further include an actuator to move at least a portion of the sensor apparatus though the fluid relative to the three-dimensional object. The sensor system can further include an apparatus to positionally retain at least a portion of the three-dimensional object substantially stationary in the fluid. The sensor system can further include a computer system to receive sensor data from the sensor apparatus, process the sensor data into the data model, and provide the data model to a user.
Certain aspects of the disclosure encompass a method for three-dimensional sensing including at least partly immersing a three-dimensional object having a predetermined buoyancy in a fluid having a predetermined density, substantially neutralizing, by the fluid, the predetermined buoyancy of the three-dimensional object, at least partly immersing a sensor apparatus in the fluid, sensing, by the sensor apparatus, a three-dimensional form of the buoyancy-neutralized three-dimensional object, and providing a data model, based on the sensing, representative of the three-dimensional, buoyancy-neutralized form of the at least partly immersed, three-dimensional object.
This, and other aspects, can include one or more of the following features. Sensing the three-dimensional form can further include capturing a plurality of stereo pairs of image sensor data. Sensing the three-dimensional form can further include projecting structured light onto the three-dimensional object, and detecting, by an image sensor, the structured light reflected off the three-dimensional object. Sensing the three-dimensional form can further include measuring a range distance between the sensor apparatus and the three-dimensional object. Sensing the three-dimensional form can further include determining least one of a shape, density, or elasticity of at least an internal portion of the three-dimensional object. The three-dimensional object can be a human body part, and the human body part can be a human female breast. The method can further include moving at least a portion of the sensor apparatus through the fluid relative to the three-dimensional object. The method can further include positionally retaining a portion of the three-dimensional object such that the portion of the three-dimensional object is retained substantially stationary in the fluid. The method can further include affixing at least one fiducial marker to the three-dimensional object, where the sensor apparatus can sense a location of the fiducial marker.
In some aspects of the disclosure, a computer-implemented method for three-dimensional sensing includes sensing, by a sensor apparatus at least partly immersed in a fluid having a predetermined density, a three-dimensional form of a three-dimensional object having a predetermined buoyancy, where the three-dimensional object is substantially buoyancy-neutralized by the fluid, and providing a data model, based on the sensing, representative of the three-dimensional, buoyancy-neutralized form of the at least partly immersed, three-dimensional object.
This, and other aspects, can include one or more of the following features. Sensing the three-dimensional form can further include capturing a plurality of stereo pairs of image sensor data. Sensing the three-dimensional form can further include projecting structured light onto the three-dimensional object, and detecting, by an image sensor, the structured light reflected off the three-dimensional object. Sensing the three-dimensional form can further include measuring a range distance between the sensor apparatus and the three-dimensional object. Sensing the three-dimensional form can further include determining least one of a shape, density, or elasticity of at least an internal portion of the three-dimensional object. The three-dimensional object can be a human body part, and the human body part can be a human female breast. The method can further include commanding movement of an actuator configured to move at least a portion of the sensor apparatus through the fluid relative to the three-dimensional object. The method can further include sensing a location of at least one fiducial marker affixed to the three-dimensional object.
In certain aspects of the disclosure, a system includes an apparatus configured to substantially neutralize effects of gravity on a three-dimensional object, and a sensor apparatus configured to sense a three-dimensional form of the three-dimensional object while the three-dimensional object is substantially gravity-neutralized.
Some aspects of the disclosure encompass a method including substantially neutralizing the effects of gravity on a three-dimensional object, sensing a three-dimensional form of the object while the three-dimensional object is substantially gravity-neutralized, and providing a data model based on the sensed three-dimensional form.
Certain aspects of the disclosure encompass a method for analyzing a prosthetic torso with synthetic skin and breast tissue. The method includes monitoring a movement of a prosthetic torso with a sensor, and determining, based on data from the sensor, a viscoelastic characteristic of the prosthetic torso.
This, and other aspects, can include one or more of the following features. The movement can include at least one of a jumping motion, a walking motion, or a running motion. The method can include controlling the movement of the prosthetic torso with an actuator assembly. The prosthetic torso can include a support structure in a shape of a human torso and a synthetic skin disposed over a support structure and connected to the support structure, the synthetic skin including synthetic breasts including silicone and configured to imitate female breasts. Monitoring the movement of the prosthetic torso can include obtaining a motion profile of the prosthetic torso. The motion profile can include an oscillation profile of breasts of the prosthetic torso relative to a remainder of the prosthetic torso. The method can further include generating an acceleration profile and a jerk profile from the motion profile, and determining a viscoelastic characteristic of the prosthetic torso can include determining, at least partially based on the jerk profile, the viscoelastic characteristic of the prosthetic torso. Determining a viscoelastic characteristic of the prosthetic torso can include determining one of an elasticity or a viscosity of the synthetic breasts. The method can include determining whether the at least one of the determined elasticity or the determined viscosity of the synthetic breasts is greater than a threshold elasticity or a threshold viscosity. Monitoring a movement of a prosthetic torso with a sensor can include monitoring, with an optical sensor, the movement of the prosthetic torso. Monitoring a movement of a prosthetic torso with a sensor can include obtaining pressure data from one or more pressure sensors connected to the prosthetic torso during the movement of the prosthetic torso. The method can include obtaining stress/strain profiles of the prosthetic torso based at least partially on the pressure data from the pressure sensors.
Some aspects of the disclosure describe a sensor apparatus including a mannequin configured to emulate a human body part, where the mannequin includes a core configured to emulate flexibility of a substantially inflexible skeletal portion of the body part, and a pliant covering. The pliant covering includes a pliant three-dimensional surface configured to emulate contours of an epidermis of the body part, and at least one pliant three-dimensional interior portion configured to emulate resiliency of a pliant portion of the body part. The sensor apparatus includes at least one pressure sensor arranged between the three-dimensional surface and the core, and is configured to sense pressure applied against the pliant three-dimensional surface.
This, and other aspects, can include one or more of the following features. The pressure sensor can include at least one flexible lumen at least partly filled with a fluid, and a fluid pressure sensor to provide a pressure signal that is representative of a fluid pressure of the fluid. A majority of the flexible lumen is arranged horizontally relative to an upright posture of the mannequin, in a position that is emulative of one of spinal nerves C8-T12. The fluid pressure sensor can be located away from the pliant covering, and the flexible lumen can extend from the fluid pressure sensor to the pliant covering through holes defined along a spinal region of the core. The human body part can be a human torso, the pliant covering can emulate the contours of a human torso, and the pliant three-dimensional interior portion cab be emulative of at least one subdermal torso tissue. The human body part can be a female human torso, the pliant three-dimensional interior portion can be emulative of at least an interior portion of human female breast tissue, and the pliant covering can emulate the contours of at least one human female breast. The pliant three-dimensional interior portion can be configured to emulate movement or recovery of the pliant portion when the body part is subjected to movement or acceleration. The mannequin can be configured be donned with a garment, and the pressure sensor can be configured to sense pressure applied to the mannequin by the garment.
Certain aspects of the disclosure encompass a method of sensing pressure applied by a covering on a body part, the method including providing a pressure sensor apparatus, at least partly covering the pressure sensor apparatus with a covering, applying, by the covering, pressure against the pressure sensor apparatus, sensing the applied pressure, and providing at least one measurement value based on sensed pressure.
This, and other aspects, can include one or more of the following features. The method can further include moving or accelerating the pressure sensor apparatus and the covering, distorting, by the moving or accelerating, at least one pliant portion of the at least one pressure sensor, applying, by the distorting, pressure of the pressure sensor apparatus applied against the covering, sensing the applied pressure, and providing a pressure measurement value of the sensed applied pressure. The distorting can be a time-varying distortion of the pliant portion, the applied pressure can be a time-varying applied pressure, the sensed pressure can be a time-varying pressure, and the pressure measurement value can be a time-varying pressure measurement value. The pressure sensor apparatus can include a core to emulate a substantially inflexible skeletal portion of the body part, and a flexible covering. The flexible covering can include a flexible three-dimensional surface configured to emulate contours of an epidermis of the body part, and at least one flexible three-dimensional interior portion configured to emulate a flexible portion of the body part, and at least one pressure sensor arranged between the three-dimensional surface and the core and configured to sense pressure applied against the flexible three-dimensional surface. The covering can include a garment configured to be worn on the body part. The body part can be a human female torso. Providing a pressure sensor apparatus can include receiving a three-dimensional model of a body part including a core portion model representative of a substantially inflexible skeletal portion of the body part, a surface model representative of three-dimensional contours of an epidermis of the body part, and at least one interior portion model representative of a flexible portion of the body part, and constructing a mannequin based on the three-dimensional model. The constructing can include constructing a core, based on the core portion model, configured to emulate the substantially inflexible skeletal portion of the body part, constructing a flexible covering including a flexible three-dimensional surface, based on the surface model, configured to emulate contours of the epidermis of the body part, and at least one flexible three-dimensional interior portion, based on the interior portion model, configured to emulate a flexible portion of the body part, and arranging at least one pressure sensor between the three-dimensional surface and the core, configured to sense pressure applied against the flexible three-dimensional surface. The human body part can be a female human torso, the pliant three-dimensional interior portion can emulate movement or recovery of the pliant portion when the body part is subjected to movement or acceleration of at least an interior portion of human female breast tissue when the breast tissue is subjected to movement or acceleration, the pliant covering can emulate the contours of at least one human female breast, and the covering can be a garment configured to be worn over at least one human female breast.
In certain aspects of the disclosure, a computer-implemented method for sensing pressure applied by a covering on a body part includes sensing, by a pressure sensor apparatus, a pressure applied by a covering partly covering the sensor apparatus, and providing at least one measurement value based on sensed pressure.
This, and other aspects, can include one or more of the following features. The method can further include moving or accelerating the pressure sensor apparatus and the covering, distorting, by the moving or accelerating, at least one pliant portion of the pressure sensor, applying, by the distorting, pressure of the pressure sensor apparatus applied against the covering, sensing the applied pressure, and providing a pressure measurement value of the sensed applied pressure. The distorting can be a time-varying distortion of the pliant portion, the applied pressure can be a time-varying applied pressure, the sensed pressure can be a time-varying pressure, and the pressure measurement value can be a time-varying pressure measurement value. The pressure sensor apparatus can include a core configured to emulate a substantially inflexible skeletal portion of the body part, and a flexible covering. The flexible covering can include a flexible three-dimensional surface configured to emulate contours of an epidermis of the body part; at least one flexible three-dimensional interior portion configured to emulate a flexible portion of the body part, and at least one pressure sensor arranged between the three-dimensional surface and the core and configured to sense pressure applied against the flexible three-dimensional surface. The covering can include a garment configured to be worn on the body part. The body part can be a human female torso. The method can further include receiving a three-dimensional model of a body part including a core portion model representative of a substantially inflexible skeletal portion of the body part, a surface model representative of three-dimensional contours of an epidermis of the body part, and at least one interior portion model representative of a flexible portion of the body part, and constructing a mannequin based on the three-dimensional model. The constructing can include constructing a core, based on the core portion model, configured to emulate the substantially inflexible skeletal portion of the body part, constructing a flexible covering including a flexible three-dimensional surface, based on the surface model, configured to emulate contours of the epidermis of the body part, and at least one flexible three-dimensional interior portion, based on the interior portion model, configured to emulate a flexible portion of the body part, and arranging at least one pressure sensor between the three-dimensional surface and the core, configured to sense pressure applied against the flexible three-dimensional surface. The human body can be a female human torso, the pliant three-dimensional interior portion can emulate movement or recovery of the pliant portion when the body part is subjected to movement or acceleration of at least an interior portion of human female breast tissue when the breast tissue is subjected to movement or acceleration, the pliant covering can emulate the contours of at least one human female breast, and the covering can be a garment configured to be worn over at least one human female breast.
Some aspects of the disclosure encompass an apparatus including a mannequin configured to emulate the form of at least a portion of a human body, and at least one pressure sensor arranged within the mannequin.
Certain aspects of the disclosure encompass a method including sensing pressure applied to the surface of a mannequin, and providing a measurement based on the pressure.
The details of one or more implementations of the subject matter described in this disclosure are set forth in the accompanying drawings and the description below. Other features, aspects, and advantages of the subject matter will become apparent from the description, the drawings, and the claims.
Like reference numbers and designations in the various drawings indicate like elements.
This disclosure describes a human torso simulator system, including an anthropometric mannequin torso, scanning and capturing techniques, and testing and analysis techniques. The human torso simulator system can be used, for example, in fitting torso garments, providing pressure and wear feedback, and providing dynamic motion feedback of support provided by the torso garments.
The human torso simulator system includes a mannequin torso capable of anthropometrically representing a female torso, both in static (e.g., unmoving) and dynamic (e.g., moving, such as a walking or running motion) configurations, for example, to support the evaluation of garment designs, such as brassiere (bra) designs. The human torso simulator system includes multiple components, including scanning and/or modeling techniques, motion system and control software, development of the mannequin torso with synthetic breast tissue and sensors, validation of the system fidelity, and wear testing. The human torso simulator system can provide a better understanding of the tissue structure and its elastic/viscous properties while static, or during movement of the human torso (specifically, breasts of a human torso) during different levels of activities. In some examples, this system can help bra manufacturing companies test and improve the design of bras and develop bras with better support.
Human torso motion, especially human breast tissue motion, results from a complex time-course of force involving multiple joints and muscle groups contributing to an overall kinematics involving predominantly vertical motion with some rotational and angular components. To better evaluate torso garment designs, such as bra designs and their effects on breast dynamics, the present disclosure regards a controlled, non-human, robotic test platform that minimizes variation inherent in human test platforms while also providing a high fidelity, yet practical, human motion path. The disclosure describes a human torso simulator system, such as a breast motion simulator, that provides vertical and rotational motion to a mannequin torso. The disclosure can also provide future implementation of higher degree of freedom of motion beyond two degrees of freedom (i.e., rotational and vertical motion), for example, as a response to criticisms that 2D (rotation/vertical) motion may not accurately mimic human biomechanics, such as during running. The human torso simulator system can also provide motion feedback, such as through encoder and visual methods, as well as provide force and/or pressure feedback of garment fit on the mannequin torso. The characteristics of the mannequin torso (specifically, the synthetic breasts of the mannequin torso) can be compared to the characteristics of a human subject to verify accuracy regarding motion, density, firmness, elastic/viscous properties, and other characteristics.
The mannequin torso includes synthetic skin, synthetic breast tissue, or both, that is optimized to simulate the physical characteristics of human skin, breast tissue, or both. Tissue simulant formulations, described in more detail later, can also allow for mimicking younger versus aging breasts, as well as other conditions affecting breast tissue firmness (e.g., previous pregnancy, and/or other factors). The torso simulator system (e.g., breast motion simulator) of the present disclosure provides a quantifiable and simplified tool, for example, for everyday use by technicians and designers to test the fit and function of torso garment designs, such as brassieres, with quantifiable and reportable results. The simulator system can be used in an industrial setting, within an office setting for designers, or elsewhere and in industries other than the garment industry.
In some implementations, the torso simulator system includes an anthropometric mannequin torso, a housing for the mannequin torso, motion actuators that provide movement (and safety) of the mannequin torso. The motion components include vertical and rotational motion axes, which can actuate by use of pneumatic actuators, servo actuators, electromagnetic actuators (e.g., Lorentz force motors), a combination of these, or other actuators or linear motors. For example, rotational motion can be effected by servo motors or other rotational motion actuators or components. In some instances, non-linear motion actuator(s) can be used to provide incremental and angular encoders (e.g., angular force versus tension or via simple angular encoders) to provide non-linear motion profiles. Rotational motion around a non-linear axis can mirror a rotational motor scheme used in a linear system. Motion control can be pre-programmed or actively controlled with one or more processors. For example, motion control can be performed using a myRTO FPGA/ARM processor controlled via a custom Labview interface on a Windows laptop and communicating via wifi or USB connection. Control and recording of the motion profile can be provided through the Labview interface with initial parameters.
In some implementations, the mannequin torso includes a lattice support structure, for example, formed from SLS 3D printed nylon. The lattice support structure mounts to the rotational axis atop the linear (or non-linear) axis. The lattice support structure is contained within a synthetic skin (e.g., silicone skin) molded to the shape of the human torso (but without breasts), where the synthetic breasts (e.g., silicone breasts) are subsequently attached to (e.g., molded onto) the synthetic skin of the mannequin torso. In some examples, a more durable synthetic skin and/or breast tissue can be made from solid silicone, while a more anthropometrically representative breast tissue can be formed from silicone gel breast tissue simulant encapsulated in a silicone skin. The makeup of the synthetic skin of the torso and/or breast tissue is described in more detail later.
Pressure sensors are disposed between the lattice structure and the synthetic skin, such as embedded in the synthetic skin adjacent the lattice structure, to provide force and/or pressure feedback. The pressure sensors can take the form of silicone tubing in the synthetic skin and can be filled with a fluid, with pressure sensor devices attached to the end(s) of the silicone tubing. The placement of these pressure sensors and their silicone tubings can vary, for example, based on desired locations for pressure readings, such as at the shoulders, breasts, and/or ribcage of the mannequin torso. For example, the placement (or tracks) of the lengths of silicone tubing can provide localization of force sensing, such as pressure measurements corresponding to shoulder weight, circumferential squeezing, or other desired parameters of a torso garment fit (e.g., brassiere fit).
The pressure sensor(s) provide quantifiable data related to position and applied force or pressure from a garment (or other object) on the mannequin torso. The data can be interpreted to determine fit and comfort of the garment overall and/or at target areas, identify areas of concern or in need of improvement, and/or other determinations. For example, a first iteration of a brassiere design can be fit on the mannequin torso, the pressure sensors can identify areas with pressure or force readings above a maximum desired threshold or below a minimum desired threshold. As the brassiere design is continually developed, a later iteration of the brassiere design can be tested and compared to the results of the pressure sensor data from the first iteration of the brassiere design, for example, to see (e.g. view or measure) a quantifiable change (e.g., improvement) between garment iterations and designs.
In some implementations, motion testing and analysis of the mannequin torso include quantification of anthropometric dynamics developed to quantify motion and durometer of the mannequin torso. These quantifications of anthropometric dynamics can be used to validate the anthropometric equivalence of the mannequin torso, for example, in a clinical study including multiple steps. These steps can include: 1) stress/strain/acceleration/jerk; 2) durometer; 3) viscoelastic and damped oscillations; 4) tubing pressure dynamics; and 5) fluorescent marker digital image correlation (DIC) treadmill system.
The present disclosure also describes scanning systems for underwater scanning of the human torso, for example, for obtaining neutral breast position scans. The human female torso provides a more “neutral” position of the breasts when submerged underwater, so the scanning systems described herein are capable of capturing images and scans with a human subject submerged underwater. The results of the scans can be used for more accurate modeling of neutral breast positioning. For example, the scanning system can include an underwater 3D ultrasound robot and an underwater housing for 3D scanner/cameras to provide surface and subsurface scans of breast and torso tissue while the torso is submerged underwater, which provides buoyancy to the breasts, thereby producing a “neutral” position of the breasts. In some instances, a tank system provides a bubble- and current-free water volume for underwater torso scanning.
In general, use of the human torso simulator system can include the steps of: 1) obtaining a 3D scan of a human model; 2) creating a first digital model of the torso with breasts and a second digital model of the torso without breasts; 3) creating outer molds of the digital model(s); 4) generating (e.g., model and 3D print) a lattice support structure in the general form of the second digital model without breasts and with an inner offset from the periphery of the second digital model; 5) disposing one or more pressure sensors on the lattice structure for sensing pressure, force, or other properties; and 6) disposing (e.g., molding) a synthetic skin onto the lattice support structure, thereby connecting (e.g., embedding) the pressure sensors in the synthetic skin. The synthetic skin may or may not include synthetic breasts. If the synthetic skin does not include synthetic breasts at this stage, then another step can generally include disposing synthetic breasts (molded according to the first digital model) onto the synthetic skin. The human torso simulator system can further include attaching the mannequin torso to a base structure configured to actuate, and/or can further include wear testing, validation testing, and other testing and analysis.
Human Form Scanning
As described above, the human torso simulator system includes a mannequin torso (e.g., breast motion simulator) capable of anthropometrically representing a female torso. Generating this mannequin torso may first include scanning one or more human forms (e.g., a human torso, specifically, a human female torso) to produce one or more 3D digital models of a human torso. One or more of these 3D digital models can be used as a basis for one or more mannequin torsos. For example,
The digital model(s) can be obtained in a number of different ways, such as 3D scanning groups, photogrammetry, time-of-flight sensing, structured light (e.g., see
In some implementations, the scanning technique can include scanning a human subject underwater such that the buoyant force of water (or salt water) biases the breasts of the subject toward their “neutral” position. This scanning technique can provide a digital model of breasts in a neutral position. For example,
In some implementations, the example support structure 218 can be actuated to move the sensor(s) 216 around the subject being scanned, for example, to provide a more complete and thorough 3D scan of the subject. As mentioned earlier, this scanning technique may better reflect the actual anatomy of the subject as compared to a single-location and/or surface scan, such as by accurately capturing the breast overhang in a neutral (buoyant) orientation of the breasts of the subject.
The example sensor system 210 may be used to form a digital scan used as the basis for the first model 110, the second model 120, or both the first model 110 and the second model 120, where the second model 120 (with breasts) can incorporate the neutral position of the breasts of the subject.
Though
In some implementations, the example sensor system 210 includes a vessel (e.g., a pool, bath, or other) to hold a fluid (e.g., water or salt water) having a predetermined density and to at least partly immerse at least one three-dimensional object (e.g., a human subject) having a predetermined buoyancy, and a sensor apparatus (e.g., sensor apparatus 210, 212) that senses a three-dimensional form of the three-dimensional object while at least partly immersed in the fluid and provides a data model representative of the sensed three-dimensional form at least partly immersed in the fluid. The predetermined density of the fluid renders the three-dimensional object substantially buoyancy-neutral. The fluid can include at least one of water and a buoyancy-modifying agent dissolvable in water. The three-dimensional object can include at least a human body part, such as a female breast. The sensor apparatus can include at least one housing (e.g., housing 214) that resists infiltration by the fluid when submerged in the fluid.
As described earlier, the sensor 216 of the sensor apparatus can include a variety of sensors. For example, the sensor 216 can include a stereo pair of image sensors, a structured light projector and an image sensor to detect reflected structured light, at least one of a laser or ultrasonic range finding device, a three-dimensional ultrasound imaging device, a combination of these, or another sensor. The sensor apparatus can be used to measure at least one of a shape, a density, and/or an elasticity of at least an internal portion of the three-dimensional object. In some examples, the three-dimensional object can include at least one fiducial marker affixed to the three-dimensional object, where the sensor apparatus can sense a location of the fiducial marker(s).
The sensor apparatus can include an actuator configured to move at least a portion of the sensor apparatus though the fluid relative to the three-dimensional object. For example, the example support structure 218 can include one or more actuators to move the example sensor 216 in a circular motion about the subject, in a three-axis realm of movement, or in another movement pattern to capture the subject. In some instances, the example support structure 218 can also positionally retain (at least a portion of) the three-dimensional object to be substantially stationary in the fluid. In some implementations, the example sensor system 210 includes a computer system to receive sensor data from the sensor apparatus, process the sensor data into the data model, and provide the data model to a user.
In some implementations, the example sensor system 210 can include a computer-implemented method for three-dimensional sensing, similar to the method 300 of
In some implementations, a sensor system includes an apparatus configured to substantially neutralize effects of gravity on a three-dimensional object. The apparatus can take on a variety of forms, such as a zero-gravity environment assembly (e.g., outer space testing) or other assemblies. The sensor system also includes a sensor to sense a three-dimensional form of the three-dimensional object while the three-dimensional object is substantially gravity-neutralized. In certain implementations, a method can include substantially neutralizing the effects of gravity on a three-dimensional object (e.g., in a zero-gravity environment), sensing a three-dimensional form of the object while the three-dimensional object is substantially gravity-neutralized, and providing a data model based on the sensed three-dimensional form.
Mannequin Torso
Either or both of the first model 110 (with breasts) or the second model 120 (without breasts) are used to create the prosthetic mannequin torso described herein. For example, the first model 110 and/or second model 120 are used to create molds for the mannequin torso.
From the second model 120 (without breasts), a support structure in the form of a lattice network of rigid materials is formed. The support structure, sometimes referred to as a lattice structure or lattice support structure in examples herein, is digitally formed starting from the second model 120, then manufactured (e.g., 3D printed) to create a physical structure. The support structure functions as a rigid core structure that synthetic skin and synthetic breast tissue connect to, and also forms a rigid core structure that can rigidly mount to a movable base, for example, for motion control and testing. The support structure imitates the shape, rigidity, or both shape and rigidity, of an underlying skeletal structure of a human subject (or other subject). The support structure can be formed in the (exact or general) shape of an underlying skeletal structure, or can be formed generally in the shape of the subject but with an inner offset to allow for a generally consistent thickness of synthetic skin to be applied onto the support structure. In some instances, the lattice network of rigid material is used to decrease weight of the support structure (e.g., as compared to a solid, consistent-thickness support surface), and can provide functional benefits of increased flexibility due to its lattice network as compared to a solid surface, and can further allow for a secure attachment to a synthetic skin (e.g., silicone skin layer or layers), such that the silicone intercalates into the openings of the lattice network of material.
The design of the lattice structure can vary.
The shape of the example support structure 500 is based on the female torso 3D scan that has had the breasts digitally removed (e.g., the second model 120), and is offset from that female torso 3D scan inwardly a specified thickness. The size of this inner offset can vary, for example, based on the desired thickness of the synthetic skin material to be placed on the support structure. In the example support structure 500, the inner offset is 7.5 mm, and is offset consistently throughout the torso relative to the female torso 3D scan without the breasts. In some instances, this offset can be different, such as a different dimension that is consistent between the support structure 300 and the 3D scan, or can be a variable offset at various locations about the support structure. For example, the exact shape of the support structure 500 and/or the synthetic skin (described in more detail later) can vary based on the type and quality of 3D scan available. For example, the rigid support structure 500 can more accurately resemble the shape and location of a skeletal structure, and the synthetic skin can vary in thickness, density, composition, and/or other characteristics to more accurately match the epidermal layer, tissue, muscular structure, and/or other anthropometric characteristics of the scanned subject.
For convenience of manufacturing, the example support structure 500 has a 7.5 mm offset, with the lattice network of rigid material of the example support structure 500 being 3 mm thick, thereby allowing about 6 mm of skin material between the outermost edge of the lattice network material and the 3D scanned surface. The surface facets can be made uniform, for example, with an average facet length of at or between 7 mm and 9 mm, though the facet length can vary to a desired dimension, such as to achieve a desired rigidity. The thickness of the lattice network of material can vary as well, for example, to provide more or less rigidity in the support structure.
The offset allows a desired thickness of the synthetic skin (for example, to substantially match human skin, anatomically and/or anthropometrically) while also providing a final mannequin torso periphery size that is accurate (exactly or substantially) to the scanned subject. In implementations of a human female torso, the support structure 500 excludes a profile of the breasts, for example, since the breast tissue is generally flexible and excludes a rigid core.
In some implementations, the example support structure 500 includes a base, for example, a base plate 502 as shown in
The digital model of the example support structure 500 can be generated in a variety of ways. For example, the software NTOPOLOGY can be used when inputted with the listed parameters (e.g., thickness, facet length, lattice type, and/or others). The physical model of the support structure 500 is formed from rigid material based on the digital model. In some implementations, the support structure 500 is 3D printed in a single part, or it can be 3D printed in sections. In some examples, the support structure 500 is printed with SLS nylon, though the material used to print the support structure 500 can vary.
The spacing of the lattice network of rigid material provides for attachment of the synthetic skin to the material without special treatment or adhesives. For example, in instances where the synthetic skin is made at least partly of silicone or gel and the support structure 500 is made at least partly of nylon, the synthetic skin can attach to the support structure inherently due to the material compositions and the spacing in the lattice structure.
With the example support structure 500 formed, a synthetic skin is disposed over the lattice structure and connected to the lattice structure. The synthetic skin has a thickness, connects to the lattice network of rigid material of the lattice structure 500, and is configured to anthropometrically imitate (at least in part) the epidermal/skin layer of a human being, for example, the human subject of the 3D scanning described above.
The materials that make up the synthetic skin can vary. Some instances of the synthetic skin can include silicone, gelatin (e.g., ballistic gel or non-ballistic gel), a combination of these, or other materials that anthropometrically imitate the epidermal layers of a human being. In some examples, the synthetic skin includes silicone to imitate human skin. In other examples, the synthetic skin includes ballistic gelatin to imitate human skin. The particular composition and materials of the synthetic skin can vary, though the compositions that most reflect human skin include either silicone or gel. In other implementations, a synthetic skin or covering take a variety of forms and include a variety of different materials to imitate skin of a subject.
In some examples, the makeup of the torso skin is approximately 00-10 durometer using Ecoflex silicone at a ratio between 1:1 and 1.4:1 with a current chosen ratio of 1.2:1 parts A:B of ecoflex silicone. The skin thickness is molded onto the lattice using 3D SLS printed nylon molds, first for the torso then the breast tissue which may consist of a skin thickness of silicone 00-10 on the inner surface of the breast mold followed by attachment of this skin to the torso and backfilling the breast tissue volume with silicone gel. Currently we are using Quantum Silicone 317 and/or 324 gel on penetration durometer scale (approximately 8-15 cm). Alternatively, the breast tissue may consist of solid silicone or higher durometer scale silicone gel encased in a greater than or equal to 1 mm thickness skin (currently 1.5 mm but may be increased for durability).
In certain implementations, the makeup of the torso synthetic skin includes ballistic gel. The ballistic gel can include the same or similar durometer characteristics, durometer ranges, and/or thickness as the example silicone materials, and the same or similar molding process as the example silicone materials, described earlier and also described later. For example, the ballistic gel that makes up the synthetic skin can have a durometer range of 00-10, and the ballistic gel that makes up the body of the breasts can include a durometer range of 00-05. In some implementations, ballistic gel and medical gel have a longer lifecycle (e.g., about 3 years) compared to silicone (e.g., about 6 months), and dry ballistic gel does not dehydrate. Example gelatins include 10% Ballistic Gelatin by Clear Ballistics, medical gel by Humimic Medical™, or other gelatins.
In some implementations, the synthetic skin 802 is disposed over the lattice support structure 500 by molding the synthetic skin 802 to the lattice support structure 500 using outer molds (e.g., mold 402a and/or mold 402b).
As described earlier, the composition of the synthetic skin 802 can vary.
As mentioned earlier, the thickness of the synthetic skin 802 can vary. In the example formulations of
Once the synthetic skin 802 is created (e.g., at the example formulations of
In some implementations, a prosthetic torso assembly (like the example mannequin torso 800) includes a support structure (e.g., example support structure 500) at least partially in a shape of a human torso, where the support structure is formed by a lattice network of rigid material, such as nylon, polyamide, or other rigid material. The prosthetic torso assembly also includes a synthetic skin (e.g., example synthetic skin 802) disposed over the support structure and connected to the support structure, the synthetic skin having a thickness, comprising silicone or gelatin (e.g., ballistic gel), and configured to anthropometrically imitate a human torso.
The prosthetic torso assembly can further include synthetic breasts (e.g., synthetic breast tissue) connected to the synthetic skin, where the synthetic breasts include silicone or gelatin (e.g., ballistic gel) and are configured to anthropometrically imitate female human breasts. The synthetic breasts can be formed integrally with the synthetic skin, or coupled to the synthetic skin. The coupling can be aided with adhesive or other coupling techniques, though in some instances the silicone of the synthetic skin and the silicone of the synthetic breasts inherently adhere to each other to a degree sufficient to couple the synthetic breasts to the synthetic skin, likewise with ballistic gelatin. The synthetic breasts can include a consistent solid composition or silicone or gelatin throughout the synthetic breasts, or the synthetic breasts can include a silicone or gelatin skin layer surrounding a volume of silicone gel or ballistic gel.
The skin of the synthetic breasts can include a thickness of greater than or equal to one millimeter, and the thickness of the synthetic skin can be between 5 mm and 7 mm (e.g., about 6 mm). The synthetic skin can be molded to the support structure. The support structure can be a hollow lattice structure defining a torso chamber within the hollow lattice structure. The torso chamber can house pressure sensors, one or more controllers and processors, a support base plate, a combination of these components, or other components of the prosthetic torso assembly. The prosthetic torso assembly can further include a support base that can selectively attach to the support structure. For example, the support structure can selectively mount to the support base. The support base can be coupled to an actuator assembly, where the actuator assembly is configured to move the support base and the support structure to mimic human movement.
The prosthetic torso assembly can further include a network of silicone tubing (e.g., example silicone tubing 806) between the support structure and the synthetic skin, and the network of silicone tubing can provide force or pressure sensing in the synthetic skin, for example, when coupled to pressure sensors (e.g., pressure sensors 804). The network of silicone tubing can be at least partially embedded in the synthetic skin and adjacent the support structure.
In certain implementations, a prosthetic female torso assembly includes a support structure at least partially in a shape of a human torso, the support structure formed by a lattice network of rigid material, a synthetic skin disposed over the support structure and connected to the support structure, the synthetic skin formed at least partially from silicone and configured to imitate a human torso, and synthetic breasts connected to the synthetic skin, where the synthetic breasts are formed at least partially from silicone or ballistic gel and are configured to imitate female breasts.
In some examples, the synthetic skin can made at least partially from a first composition comprising a 00-10 durometer Ecoflex™ silicone or 00-10 durometer ballistic gel. In some examples, the synthetic skin includes three layers of the first composition. The synthetic breasts can be made at least partially from a second composition comprising Qgel 317 silicone or a ballistic gel. In some examples, the synthetic breasts is made from a pliable silicone layer surrounding a volume of silicone gel, and the synthetic breasts are formed integrally with the synthetic skin or otherwise coupled to the synthetic skin.
Forming the lattice structure can include printing, with a 3D printer, the lattice structure. Disposing the synthetic skin over the lattice structure and connecting the synthetic skin to the lattice structure can include molding the synthetic skin over the lattice structure. Forming a lattice structure can include arranging the lattice network of rigid material in a direct mesh pattern to form the lattice structure. The synthetic breasts can be formed integrally with the synthetic skin, or attached separately to the synthetic skin. The method can include positioning a network of silicone tubing between the lattice structure and the synthetic skin, where the network of silicone tubing provides force and/or pressure sensing in the synthetic skin.
Skin Pressure Sensing
The example prosthetic mannequin torso 800 can be formed with pressure sensors disposed adjacent to, on, or within the synthetic skin 802, for example, to provide garment fit feedback (e.g., size, compression, and/or other force/pressure related features). The pressure sensors can take a variety of different forms and include structures that allow the pressure sensors to integrate with the synthetic skin 802 of the mannequin torso 800. For example, the pressure sensors can include (or attach to) flexible silicone tubing or other flexible lumen, sensor pads, diaphragms, a combination of these, or another pressure sensor type, to sense pressure and/or force feedback. In the example prosthetic mannequin torso 800 of
In some implementations, the silicone tubing 806 includes pressure release valves, for example, to allow for transportation and/or use of the mannequin torso in different pressure environments (e.g., on a plane, at varying elevations relative to sea level, or other pressure environment). The pressure release valves can be selectively released and plugged for recalibration and pressure equilibration of the pressure sensors 804 to provide consistent and accurate pressure/force measurements. The system can include one or more pressure release valves to control and/or equilibrate the pressure in the one or more pressure sensors (i.e., silicone tubing 806). In some examples, the pressure sensors are connected to one or more three-way valves. A three-way valve allows for equilibration of pressure for one or multiple pressure sensors at once.
The pressure sensors 804, specifically the silicone tubing 806, are disposed over the lattice support structure 500, and the silicone skin 802 can be molded to the support structure 500 with the silicone tubing 806 already in place (i.e., disposed in a predetermined pattern over the lattice support structure 500). In some instances, the silicone tubing 806 can position (e.g., center) the lattice support structure 500 within the outer mold (e.g., the outer molds of
In the example mannequin torso 800, the silicone tubing 806 has an outer diameter of between 4 and 6 mm (e.g., 5 mm), and the synthetic skin has an average thickness of about 6 mm. As such, the silicone tubing 806 is used to help center the lattice support structure 500 within the outer mold(s) when molding the synthetic skin 802, since the silicone tubing 806 generally extends around an entirety of the support structure 500 and may contact or come in close contact with the outer molds themselves as the synthetic skin 802 is molded. This centering feature also promotes a consistent thickness of the synthetic skin 802 as it is molded, since the silicone tubing 806 promotes a consistent gap between the lattice support structure 500 and the outer mold(s) as the synthetic skin 802 is formed.
In some implementations, a sensor apparatus (such as the mannequin torso 800) includes a mannequin configured to emulate a human body part, the mannequin including a core (e.g., support structure 500 with lattice network of rigid material) configured to emulate flexibility of a substantially inflexible skeletal portion of the body part, and a pliant, or flexible, covering (e.g., synthetic skin 802) that has a pliant three-dimensional surface configured to emulate contours of an epidermis of the body part, and at least one pliant three-dimensional interior portion configured to emulate resiliency of a pliant portion of the body part. The sensor apparatus also includes at least one pressure sensor (e.g., pressure sensor 804) arranged between the three-dimensional surface and the core and configured to sense pressure applied against the pliant three-dimensional surface. The pressure sensor can include at least one flexible lumen (e.g., silicone tube 806) at least partly filled with a fluid, and a fluid pressure sensor (e.g., fluid pressure sensor component of pressure sensor 804) configured to provide a pressure signal that is representative of a fluid pressure of the fluid. A majority of the flexible lumen can be arranged horizontally relative to an upright posture of the mannequin, in a position that is emulative of one of spinal nerves C8-T12. However, the arrangement of the flexible lumen can vary, as described earlier with respect to pressure sensor(s) 804. The fluid pressure sensor can be located away from the pliant covering, and the lumen can extend from the fluid pressure sensor to the pliant covering through holes defined along a spinal region of the core. In other instances, the lumen extends from the fluid pressure sensor to the pliant covering through a bottom opening of the torso, through a neck opening of the torso, through other openings in the torso, a combination of these, or other locations of the torso. In some instances, the fluid pressure sensor can include a flex circuit that the pressure sensor tubing(s) connects. The flex circuit can be positioned within the torso structure, such as coupled to an interior surface of the torso (e.g., on an interior surface of the lattice structure), within a neck region of the torso, or elsewhere within the torso structure or near the torso structure. The flex circuit can take the form of a flat circuit that includes some degree of flexibility, for example, to be able to mirror the surface profile and curvature of an interior surface of the torso structure. The human body part can be a human torso, the pliant covering emulates the contours of a human torso, and the pliant three-dimensional interior portion is emulative of at least one subdermal torso tissue. The human body part can be a female human torso, the pliant three-dimensional interior portion is emulative of at least an interior portion of human female breast tissue, and the pliant covering emulates the contours of at least one human female breast. The pliant three-dimensional interior portion can be configured to emulate movement or recovery of the pliant portion when the body part is subjected to movement or acceleration. The mannequin can be configured to be donned with a garment, and the pressure sensor is configured to sense pressure applied to the mannequin by the garment.
In some implementations, an apparatus includes a mannequin configured to emulate the form of at least a portion of a human body, and at least one pressure sensor arranged within the mannequin. The pressure sensor is configured to provide sensor feedback quantifying force, pressure, or both force and pressure that the mannequin undergoes. In certain instances, a method includes sensing pressure applied to the surface of a mannequin, and providing a measurement based on the pressure.
In some implementations, the method 1400 can be a computer-implemented method for sensing pressure applied by a covering on a body part, including sensing, by a pressure sensor apparatus, a pressure applied by a covering partly covering the sensor apparatus, and providing at least one measurement value based on the sensed pressure. The computer-implemented method can include any one or more steps described above with respect to the method.
The example actuator assembly 1500 can be controlled to move an example mannequin torso (e.g., example mannequin torso 800) along a predetermined and desired movement profile that imitates a movement of a human body. The actuator assembly 1500 can also be used to test for the viscoelastic properties of the mannequin torso for fidelity testing (e.g., as compared to actual human body characteristics and movement).
Fidelity Testing, Motion Tracking, Analysis, and Quantification
Existing methods of breast motion analysis range from position analysis to finite element analysis of surface displacements of breasts during motion to provide approximate models of breast tissue dynamics. In some implementations, breast motion analysis techniques may include inducing cyclical stress (e.g., from motion) on the mannequin torso of the present disclosure and monitoring strain, for example, through optical tracking, visual inspection sensors, or other position tracking like inertial motion unit (IMU) or accelerometer data, or even pressure changes and data collected from pressure sensors (e.g., pressure sensors 804). From this information, rheological stress/strain curves can be made that provide information for elastic (G′) and viscous (G″) information regarding breast tissue and breast systems as a whole. This viscoelastic analysis quantifies the lag the breasts feel during the cyclical motion. Additionally, another technique relies on single (noncylical) motion, such as a single “jump” movement. From the oscillations induced in the breast tissue during and immediately after this jump, the log decrement can be calculated for the breast tissue as a whole, or discreetly, at regions of the breasts. The oscillation can be curve fit to determine a log decrement from the motion profile. These techniques are more than position based analysis, because it can provide viscoelastic information regarding breast tissue or a breast-in-bra system, as well as looking at dampening. This breast motion simulation promotes a better understanding of the tissue structure and movement of the breasts during different levels of activities, which can help bra manufacturing companies improve on bra design, for example, to target sources of discomfort and develop garments with better support.
Motion tracking of a mannequin torso with several formulations of synthetic skin can be performed to receive motion profiles for the several formulations. The same motion can be done with human subjects for example, to compare data and test fidelity of the mannequin torso. From the motion profiles, acceleration and jerk characteristics can be determined.
The motion profiles of
Acceleration and strain can be used as predictors of breast discomfort.
The influence of jerk (i.e., the derivative of acceleration, or change in acceleration) on perceived motion strength has been evaluated, and can provide a better evaluation of pain. Jerk peaks of areolas' relative motion, as shown in
In some implementations, breast motion can be represented as a single system defined by the areola-only motion. For example, the following may be ignored: 1) the mass of the mannequin torso or total mass of the breast tissue (since parts A and B are approximately the same mass), and 2) inertial-based aspects of motion. In lieu of a more thorough analysis, these assumptions can be made to produce a simplified representation of viscous and elastic components of motion as phase angles. The viscous component of damping can be expected to increase with velocity, while inertial aspects of motion can be expected to increase with acceleration. As stress is applied vertically, the resulting strain in the breast tissue and areolas is delayed. The lag between the torso and areola-only motion can also be viewed as a phase angle between their respective motions. When this phase angle is 0 degrees, the material is considered purely elastic, while it is considered purely viscous at 90 degrees. The metrics described here can be utilized to better explore strain and viscoelasticity.
The valley time lag(s) of formulation 1 shows a larger lag than any of the other formulations and are at least partially due to the breasts keeping their form better and not initially sagging as much at rest. The more elastic nature of the 1:1 ratio formulation is further shown in the much lower peak time delay, as the breast tissue does not overshoot for as long, and more quickly returns to downward motion following acceleration reversal compared to other formulations. The initial areola lag and overshoot at the peak are presented in terms of viscoelasticity; however, they invariably have inertial components as the initial lag (shaded in grey) is the mass of the breast at rest transitioning into motion, while the overshoot (shaded in blue) contains the momentum of the breast in motion overshooting the peak of the torso motion (shaded in yellow). As the mass between the breasts is approximately equal within the limitations of the molding process, as weights of parts A and B are approximately equal, mass is excluded in favor of this viscoelastic approximation.
In some implementations, the oscillation of the areolas-only motion relative to the torso upon returning to a resting or starting position of motion are used for basic log decrement of the portion of the motion profile after the breast tissue has been put into motion (i.e., meaning the initial valley lag portion is excluded due to inertia). The overshoot at the peak is also excluded and only areolas-only relative motion after the torso returns to rest is analyzed as oscillatory motion. Three representative traces are illustrated in
While the silicone tubing 806 described above provides pressure sensing to give an end user a quantified feedback about garment fit and sizing, the tubing sensors can also be used in dynamic evaluation of bra support and resistance to breast motion. Also, development and validation through clinical testing demonstrate the anthropometric utility of the mannequin torso with synthetic skin as a substitute for human studies. Automation of motion and simulated tissue can allow for reproducible quantification of breast dynamics and bra support influence.
The computer 2902 can serve in a role as a client, a network component, a server, a database, a persistency, or components of a computer system for performing the subject matter described in the present disclosure. The illustrated computer 2902 is communicably coupled with a network 2930. In some implementations, one or more components of the computer 2902 can be configured to operate within different environments, including cloud-computing-based environments, local environments, global environments, and combinations of environments.
At a high level, the computer 2902 is an electronic computing device operable to receive, transmit, process, store, and manage data and information associated with the described subject matter. According to some implementations, the computer 2902 can also include, or be communicably coupled with, an application server, an email server, a web server, a caching server, a streaming data server, or a combination of servers.
The computer 2902 can receive requests over network 2930 from a client application (for example, executing on another computer 2902). The computer 2902 can respond to the received requests by processing the received requests using software applications. Requests can also be sent to the computer 2902 from internal users (for example, from a command console), external (or third) parties, automated applications, entities, individuals, systems, and computers.
Each of the components of the computer 2902 can communicate using a system bus. In some implementations, any or all of the components of the computer 2902, including hardware or software components, can interface with each other or the interface 2904 (or a combination of both), over the system bus. Interfaces can use an application programming interface (API), a service layer, or a combination of the API and service layer. The API can include specifications for routines, data structures, and object classes. The API can be either computer-language independent or dependent. The API can refer to a complete interface, a single function, or a set of APIs.
The service layer can provide software services to the computer 2902 and other components (whether illustrated or not) that are communicably coupled to the computer 2902. The functionality of the computer 2902 can be accessible for all service consumers using this service layer. Software services, such as those provided by the service layer, can provide reusable, defined functionalities through a defined interface. For example, the interface can be software written in JAVA, C++, or a language providing data in extensible markup language (XML) format. While illustrated as an integrated component of the computer 2902, in alternative implementations, the API or the service layer can be stand-alone components in relation to other components of the computer 2902 and other components communicably coupled to the computer 2902. Moreover, any or all parts of the API or the service layer can be implemented as child or sub-modules of another software module, enterprise application, or hardware module without departing from the scope of the present disclosure.
The computer 2902 can include an interface 2904. Although illustrated as a single interface 2904 in
The computer 2902 includes a processor 2905. Although illustrated as a single processor 2905 in
The computer 2902 can also include a database 2906 that can hold data for the computer 2902 and other components connected to the network 2930 (whether illustrated or not). For example, database 2906 can be an in-memory, conventional, or a database storing data consistent with the present disclosure. In some implementations, database 2906 can be a combination of two or more different database types (for example, hybrid in-memory and conventional databases) according to particular needs, desires, or particular implementations of the computer 2902 and the described functionality. Although illustrated as a single database 2906 in
The computer 2902 also includes a memory 2907 that can hold data for the computer 2902 or a combination of components connected to the network 2930 (whether illustrated or not). Memory 2907 can store any data consistent with the present disclosure. In some implementations, memory 2907 can be a combination of two or more different types of memory (for example, a combination of semiconductor and magnetic storage) according to particular needs, desires, or particular implementations of the computer 2902 and the described functionality. Although illustrated as a single memory 2907 in
An application can be an algorithmic software engine providing functionality according to particular needs, desires, or particular implementations of the computer 2902 and the described functionality. For example, an application can serve as one or more components, modules, or applications. Multiple applications can be implemented on the computer 2902. Each application can be internal or external to the computer 2902.
The computer 2902 can also include a power supply 2914. The power supply 2914 can include a rechargeable or non-rechargeable battery that can be configured to be either user- or non-user-replaceable. In some implementations, the power supply 2914 can include power-conversion and management circuits, including recharging, standby, and power management functionalities. In some implementations, the power-supply 2914 can include a power plug to allow the computer 2902 to be plugged into a wall socket or a power source to, for example, power the computer 2902 or recharge a rechargeable battery.
There can be any number of computers 2902 associated with, or external to, a computer system including computer 2902, with each computer 2902 communicating over network 2930. Further, the terms “client,” “user,” and other appropriate terminology can be used interchangeably, as appropriate, without departing from the scope of the present disclosure. Moreover, the present disclosure contemplates that many users can use one computer 2902 and one user can use multiple computers 2902.
Implementations of the subject matter and the functional operations described in this specification can be implemented in digital electronic circuitry, in tangibly embodied computer software or firmware, in computer hardware, including the structures disclosed in this specification and their structural equivalents, or in combinations of one or more of them. Software implementations of the described subject matter can be implemented as one or more computer programs. Each computer program can include one or more modules of computer program instructions encoded on a tangible, non-transitory, computer-readable computer-storage medium for execution by, or to control the operation of, data processing apparatus. Alternatively, or additionally, the program instructions can be encoded in/on an artificially generated propagated signal. The example, the signal can be a machine-generated electrical, optical, or electromagnetic signal that is generated to encode information for transmission to suitable receiver apparatus for execution by a data processing apparatus. The computer-storage medium can be a machine-readable storage device, a machine-readable storage substrate, a random or serial access memory device, or a combination of computer-storage mediums.
The terms “data processing apparatus,” “computer,” and “electronic computer device” (or equivalent as understood by one of ordinary skill in the art) refer to data processing hardware. For example, a data processing apparatus can encompass all kinds of apparatus, devices, and machines for processing data, including by way of example, a programmable processor, a computer, or multiple processors or computers. The apparatus can also include special purpose logic circuitry including, for example, a central processing unit (CPU), a field programmable gate array (FPGA), or an application-specific integrated circuit (ASIC). In some implementations, the data processing apparatus or special purpose logic circuitry (or a combination of the data processing apparatus or special purpose logic circuitry) can be hardware- or software-based (or a combination of both hardware- and software-based). The apparatus can optionally include code that creates an execution environment for computer programs, for example, code that constitutes processor firmware, a protocol stack, a database management system, an operating system, or a combination of execution environments. The present disclosure contemplates the use of data processing apparatuses with or without conventional operating systems, for example LINUX, UNIX, WINDOWS, MAC OS, ANDROID, or IOS.
A computer program, which can also be referred to or described as a program, software, a software application, a module, a software module, a script, or code, can be written in any form of programming language. Programming languages can include, for example, compiled languages, interpreted languages, declarative languages, or procedural languages. Programs can be deployed in any form, including as stand-alone programs, modules, components, subroutines, or units for use in a computing environment. A computer program can, but need not, correspond to a file in a file system. A program can be stored in a portion of a file that holds other programs or data, for example, one or more scripts stored in a markup language document, in a single file dedicated to the program in question, or in multiple coordinated files storing one or more modules, sub-programs, or portions of code. A computer program can be deployed for execution on one computer or on multiple computers that are located, for example, at one site or distributed across multiple sites that are interconnected by a communication network. While portions of the programs illustrated in the various figures may be shown as individual modules that implement the various features and functionality through various objects, methods, or processes, the programs can instead include a number of sub-modules, third-party services, components, and libraries. Conversely, the features and functionality of various components can be combined into single components as appropriate. Thresholds used to make computational determinations can be statically, dynamically, or both statically and dynamically determined.
The methods, processes, or logic flows described in this specification can be performed by one or more programmable computers executing one or more computer programs to perform functions by operating on input data and generating output. The methods, processes, or logic flows can also be performed by, and apparatus can also be implemented as, special purpose logic circuitry, for example, a CPU, an FPGA, or an ASIC.
Computers suitable for the execution of a computer program can be based on one or more of general and special purpose microprocessors and other kinds of CPUs. The elements of a computer are a CPU for performing or executing instructions and one or more memory devices for storing instructions and data. Generally, a CPU can receive instructions and data from (and write data to) a memory. A computer can also include, or be operatively coupled to, one or more mass storage devices for storing data. In some implementations, a computer can receive data from, and transfer data to, the mass storage devices including, for example, magnetic, magneto-optical disks, or optical disks. Moreover, a computer can be embedded in another device, for example, a mobile telephone, a personal digital assistant (PDA), a mobile audio or video player, a game console, a global positioning system (GPS) receiver, or a portable storage device such as a universal serial bus (USB) flash drive.
Computer-readable media (transitory or non-transitory, as appropriate) suitable for storing computer program instructions and data can include all forms of permanent/non-permanent and volatile/non-volatile memory, media, and memory devices. Computer-readable media can include, for example, semiconductor memory devices such as random access memory (RAM), read-only memory (ROM), phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), and flash memory devices. Computer-readable media can also include, for example, magnetic devices such as tape, cartridges, cassettes, and internal/removable disks. Computer-readable media can also include magneto-optical disks and optical memory devices and technologies including, for example, digital video disc (DVD), CD-ROM, DVD+/-R, DVD-RAM, DVD-ROM, HD-DVD, and BLURAY. The memory can store various objects or data, including caches, classes, frameworks, applications, modules, backup data, jobs, web pages, web page templates, data structures, database tables, repositories, and dynamic information. Types of objects and data stored in memory can include parameters, variables, algorithms, instructions, rules, constraints, and references. Additionally, the memory can include logs, policies, security or access data, and reporting files. The processor and the memory can be supplemented by, or incorporated in, special purpose logic circuitry.
Implementations of the subject matter described in the present disclosure can be implemented on a computer having a display device for providing interaction with a user, including displaying information to (and receiving input from) the user. Types of display devices can include, for example, a cathode ray tube (CRT), a liquid crystal display (LCD), a light-emitting diode (LED), and a plasma monitor. Display devices can include a keyboard and pointing devices including, for example, a mouse, a trackball, or a trackpad. User input can also be provided to the computer through the use of a touchscreen, such as a tablet computer surface with pressure sensitivity or a multi-touch screen using capacitive or electric sensing. Other kinds of devices can be used to provide for interaction with a user, including to receive user feedback including, for example, sensory feedback including visual feedback, auditory feedback, or tactile feedback. Input from the user can be received in the form of acoustic, speech, or tactile input. In addition, a computer can interact with a user by sending documents to, and receiving documents from, a device that is used by the user. For example, the computer can send web pages to a web browser on a user's client device in response to requests received from the web browser.
The term “graphical user interface,” or “GUI,” can be used in the singular or the plural to describe one or more graphical user interfaces and each of the displays of a particular graphical user interface. Therefore, a GUI can represent any graphical user interface, including, but not limited to, a web browser, a touch screen, or a command line interface (CLI) that processes information and efficiently presents the information results to the user. In general, a GUI can include a plurality of user interface (UI) elements, some or all associated with a web browser, such as interactive fields, pull-down lists, and buttons. These and other UI elements can be related to or represent the functions of the web browser.
Implementations of the subject matter described in this specification can be implemented in a computing system that includes a back-end component, for example, as a data server, or that includes a middleware component, for example, an application server. Moreover, the computing system can include a front-end component, for example, a client computer having one or both of a graphical user interface or a Web browser through which a user can interact with the computer. The components of the system can be interconnected by any form or medium of wireline or wireless digital data communication (or a combination of data communication) in a communication network. Examples of communication networks include a local area network (LAN), a radio access network (RAN), a metropolitan area network (MAN), a wide area network (WAN), Worldwide Interoperability for Microwave Access (WIMAX), a wireless local area network (WLAN) (for example, using 802.11 a/b/g/n or 802.20 or a combination of protocols), all or a portion of the Internet, or any other communication system or systems at one or more locations (or a combination of communication networks). The network can communicate with, for example, Internet Protocol (IP) packets, frame relay frames, asynchronous transfer mode (ATM) cells, voice, video, data, or a combination of communication types between network addresses.
The computing system can include clients and servers. A client and server can generally be remote from each other and can typically interact through a communication network. The relationship of client and server can arise by virtue of computer programs running on the respective computers and having a client-server relationship.
Cluster file systems can be any file system type accessible from multiple servers for read and update. Locking or consistency tracking may not be necessary since the locking of exchange file system can be done at application layer. Furthermore, Unicode data files can be different from non-Unicode data files.
While this specification includes many specific implementation details, these should not be construed as limitations on the scope of what may be claimed, but rather as descriptions of features that may be specific to particular implementations. Certain features that are described in this specification in the context of separate implementations can also be implemented, in combination, in a single implementation. Conversely, various features that are described in the context of a single implementation can also be implemented in multiple implementations, separately, or in any suitable sub-combination. Moreover, although previously described features may be described as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination can, in some cases, be excised from the combination, and the claimed combination may be directed to a sub-combination or variation of a sub-combination.
Particular implementations of the subject matter have been described. Other implementations, alterations, and permutations of the described implementations are within the scope of the following claims as will be apparent to those skilled in the art. While operations are depicted in the drawings or claims in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed (some operations may be considered optional), to achieve desirable results. In certain circumstances, multitasking or parallel processing (or a combination of multitasking and parallel processing) may be advantageous and performed as deemed appropriate.
Moreover, the separation or integration of various system modules and components in the previously described implementations should not be understood as requiring such separation or integration in all implementations, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products.
Accordingly, the previously described example implementations do not define or constrain the present disclosure. Other changes, substitutions, and alterations are also possible without departing from the spirit and scope of the present disclosure.
Furthermore, any claimed implementation is considered to be applicable to at least a computer-implemented method; a non-transitory, computer-readable medium storing computer-readable instructions to perform the computer-implemented method; and a computer system comprising a computer memory interoperably coupled with a hardware processor configured to perform the computer-implemented method or the instructions stored on the non-transitory, computer-readable medium.
A number of implementations have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the disclosure.
This application claims the benefit of Provisional Application No. 62/930,302, filed on Nov. 4, 2019, which is hereby incorporated by reference in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
3362593 | York | Jan 1968 | A |
3472435 | Maze | Oct 1969 | A |
3818756 | Barron | Jun 1974 | A |
3865284 | Kazama | Feb 1975 | A |
4088315 | Schemmel | May 1978 | A |
4409835 | Daniel et al. | Oct 1983 | A |
4439162 | Blaine | Mar 1984 | A |
4451416 | Burtscher | May 1984 | A |
4773865 | Baldwin | Sep 1988 | A |
5628230 | Flam | May 1997 | A |
5782389 | Maharg et al. | Jul 1998 | A |
5993590 | Krotseng | Nov 1999 | A |
6435386 | Scott | Aug 2002 | B2 |
6494763 | Hastey | Dec 2002 | B1 |
6640202 | Dietz et al. | Oct 2003 | B1 |
6769286 | Biermann et al. | Aug 2004 | B2 |
6957164 | Dietz et al. | Oct 2005 | B2 |
7162441 | Nabarro | Jan 2007 | B2 |
7186212 | McMullen | Mar 2007 | B1 |
7419376 | Sarvazyan et al. | Sep 2008 | B2 |
7530480 | Nan | May 2009 | B2 |
7549866 | Cohen et al. | Jun 2009 | B2 |
8608483 | Trotta et al. | Dec 2013 | B2 |
8678831 | Trotta et al. | Mar 2014 | B2 |
9021857 | Squire et al. | May 2015 | B1 |
9243966 | Beillas et al. | Jan 2016 | B2 |
9275557 | Trotta et al. | Mar 2016 | B2 |
9538867 | Peters et al. | Jan 2017 | B2 |
9554096 | Eakins | Jan 2017 | B1 |
9601032 | Trotta et al. | Mar 2017 | B2 |
9696130 | Eakins | Jul 2017 | B1 |
9713564 | Hernandez | Jul 2017 | B2 |
10078973 | Barsness et al. | Sep 2018 | B2 |
10283016 | Watanabe et al. | May 2019 | B2 |
10319259 | Kerins et al. | Jun 2019 | B2 |
20040122287 | Minigh | Jun 2004 | A1 |
20050079475 | Haque | Apr 2005 | A1 |
20090011394 | Meglan | Jan 2009 | A1 |
20100268138 | Summit | Oct 2010 | A1 |
20110239731 | Lisseman et al. | Oct 2011 | A1 |
20120264097 | Newcott et al. | Oct 2012 | A1 |
20120284148 | Volchek | Nov 2012 | A1 |
20130238285 | Volchek | Sep 2013 | A1 |
20170162077 | Vara | Jun 2017 | A1 |
20170266052 | Levine | Sep 2017 | A1 |
20170301264 | Vara | Oct 2017 | A1 |
20170330488 | Kinsella | Nov 2017 | A1 |
20180055643 | Castro et al. | Mar 2018 | A1 |
20180075777 | Iverson et al. | Mar 2018 | A1 |
20180225994 | Kerins | Aug 2018 | A1 |
20180282545 | Chanda et al. | Oct 2018 | A1 |
20180350266 | Garcai | Dec 2018 | A1 |
20180350267 | Barsness et al. | Dec 2018 | A1 |
20190057624 | Chanda et al. | Feb 2019 | A1 |
20190082762 | Chan et al. | Mar 2019 | A1 |
20190118682 | Faruque | Apr 2019 | A1 |
20200008503 | Nielson | Jan 2020 | A1 |
20200143709 | Wang | May 2020 | A1 |
20210127772 | Joines | May 2021 | A1 |
20220117342 | Joines | Apr 2022 | A1 |
20220249024 | Hulings | Aug 2022 | A1 |
20220266045 | Swenglish | Aug 2022 | A1 |
20220270516 | Mehta | Aug 2022 | A1 |
Number | Date | Country |
---|---|---|
201798363 | Apr 2011 | CN |
106393125 | Oct 2018 | CN |
3127511 | Feb 2017 | EP |
2074367 | Feb 1997 | RU |
WO2006038102 | Apr 2006 | WO |
WO2011141646 | Nov 2011 | WO |
WO2013028021 | Feb 2013 | WO |
WO2016137425 | Sep 2016 | WO |
Entry |
---|
PCT International Search Report and Written Opinion in International Appln. No. PCT/US2020/058751, dated Mar. 3, 2021, 14 pages. |
International Preliminary Report on Patentability in International Appln. No. PCT/US2020/058748, dated May 19, 2022, 8 pages. |
International Preliminary Report on Patentability in International Appln. No. PCT/US2020/058751, dated May 19, 2022, 8 pages. |
PCT International Search Report and Written Opinion in International Appln. No. PCT/US2020/058748, dated Mar. 9, 2021, 14 pages. |
Number | Date | Country | |
---|---|---|---|
20210127859 A1 | May 2021 | US |
Number | Date | Country | |
---|---|---|---|
62930302 | Nov 2019 | US |