Vehicles, such as automobiles, are becoming increasingly complex as they include increasingly large numbers of components and features. As such, production of a modern vehicle can take many iterative cycles of design, test, evaluation, and redesign for various components of the vehicle. Test of a vehicle or component can include operating a vehicle over a test track to simulate usage by a user. However, test tracks may not adequately represent real world road conditions for target users. Furthermore, use of physical real-world test tracks can constrain testing of changes to components of a vehicle. In particular, the availability of physical test tracks does not scale with the exponential increase in the complexity and testing needs of modern vehicle development. Thus, there is need for improvement in the field of vehicle testing.
The present disclosure describes various techniques that relate to generating a simulated test track for a vehicle. The techniques can include accessing information indicative of roughness for each of a set of real-world roadways. The techniques can also include accessing information indicative of a number of vehicles that traverse at least some of the set of real-world roadways, the number of vehicles representative of a usage pattern for the vehicle. The techniques can additionally include building a model, based on the information indicative of roughness and the information indicative of a number of vehicles, the model operable to generate a superset of simulated roadways that correspond to the roughness of the set of real-world roadways. The techniques can further include generating, via the model, the superset of simulated roadways that correspond to the roughness of the set of real-world roadways, the superset of simulated roadways representative of a target environment for operation of a vehicle. The techniques can also include determining one or more stresses imparted to a simulated vehicle component of the vehicle including applying at least some of the superset of simulated roadways to the simulated vehicle component of the vehicle.
The techniques can include modifying the one or more simulated vehicle components based on the determining the one or more stresses imparted to the simulated vehicle component of the vehicle. The generating the superset of simulated roadways can include generating, based on the information indicative of roughness, a frequency and an amplitude of a wave component of a wave, the frequency and amplitude corresponding to a roughness of the set of real-world roadways. The frequency and the amplitude can be generated using an ISO 8608 standard. The wave can be one of a plurality of waves and some of the plurality of waves can be varied and correspond respectively to different tracks of wheels of a vehicle. The one or more simulated vehicle components can include suspension components and two waves of the plurality of waves can be offset to induce simulated roll in the simulated suspension components.
The techniques can also include determining, based on the applying the simulated roadway to the one or more simulated vehicle components, a subset of the superset of simulated roadways. The subset can be determined by identifying a portion of the superset of simulated roadways that induce damage to the one or more simulated vehicle components substantially equivalently to damage induced by the superset of simulated roadways. The information indicative of roughness can include information accessed from the Highway Performance Monitoring System (HPMS). The model can be operable to generate a number of simulated discrete road segments each associated with a roughness value, each simulated discrete road segment corresponding to a discrete segment of the set of roadways and corresponding roughness value. The model can include a Markov Chain.
The techniques can further include accessing vehicle speed data indicative of a speed of a vehicle that traverses at least some of the set of roadways, wherein the determining the one or more stresses imparted to the simulated vehicle component of the vehicle is based on the vehicle speed data. The determining the one or more stresses imparted to the simulated vehicle component of the vehicle can be based on the vehicle speed data includes modeling the one or more simulated vehicle components as a multibodydynamic vehicle model. The applying the superset of simulated roadways to the one or more simulated vehicle components can include determining a pseudodamage for each of the one or more simulated vehicle components. The techniques can further include accessing one or more road types including at least one of a highway, arterial, collector, or residential. The building the model can be based on the one or more road types. The techniques can also include accessing one or more road geometries including at least one of a curvature, elevation, or bank angle. The building the model can be based on the one or more road geometries.
The disclosure will be readily understood by the following detailed description in conjunction with the accompanying drawings, wherein like reference numerals designate like structural elements, and in which:
Other aspects and advantages of the invention will become apparent from the following detailed description taken in conjunction with the accompanying drawings which illustrate, by way of example, the principles of the described embodiments.
Design and validation of vehicles (such as automobiles) can be an expensive and time consuming process. This is true despite the existence of design aids that can expedite design and redesign of vehicle components. For example, design of suspension components of a vehicle can take into account many different competing goals including driver comfort, vehicle performance, maintainability, and longevity. Furthermore, iterative changes to components can occur as a vehicle is designed and refined to balance and improve various aspects of the vehicle. Given complexities of modern vehicles, alteration of a single component can necessitate changes to other components of the vehicle. As such, testing takes a central role in the design and development of modern vehicles to verify changes to components and their effects on the vehicle's attributes.
As various changes to components of a vehicle occur, it can be beneficial to verify that the changes are beneficial and/or achieve the desired results. A traditional test methodology involves operating the vehicle on a test track to simulate real world usage. A test track can simulate various conditions that a vehicle may be expected to encounter during its operational life (e.g., various road conditions, obstacles, bumpiness, etc.). However, because real-world test tracks are generally physical tracks, physical components may need to be manufactured and integrated into a vehicle for test. Physical production of vehicles for test presents several issues regarding verification of vehicle/component design. For example, use of the test track may need to be scheduled and may occur long after component(s) are designed. Therefore, a designer may be delayed from verifying results of their changes to components, preventing designers from being able to evaluate various options for modification of component(s) in real time. Furthermore, because of scarcities of use of a physical test track inherent to scheduling test tracks, the test vehicle may include several modified components that are tested concurrently. Thus, it may be difficult to ascertain results to the vehicle from changes to each of several individual components.
Additional difficulties pertain to the use and design of a test track itself. A physical test track may be substantially static and represent only one set of obstacles (or certain obstacles that may be selected from a set of obstacles). However, different vehicles may have different target environments for use by differing target user sets. For example, a sports car may be subjected to different driving patterns/conditions than an off road vehicle. A vehicle targeted for marketing within the United States may have a different target user base and/or driving conditions than a vehicle targeted for marketing within Europe. As such, use of physical test tracks may limit flexibility in the selection of various road conditions to which a vehicle (or vehicle components) is subjected.
Disclosed herein are techniques for generating simulated roadways for subjected component of a vehicle to in order to evaluate longevity, performance, or other aspects of the components or the vehicle to which the components pertain. The techniques can include receiving or determining information determinative of roughness of a set of real-world roadways. Roughness, as used here, refers to deviations in the direction of a normal vector of a roadway surface from its ideal form. Roughness can be a scalar value indicative of an amount of stress that a vehicle will be subjected to from the surface texture of a roadway as the vehicle traverses a roadway. Additionally, information can be received or determined indicating a number of vehicles that traverse each roadway in the set of roadways and/or an average speed of vehicles as they traverse each roadway. The set of roadways can be indicative of a target user base for a vehicle (e.g., representative of roadways that intended users of the vehicle will traverse). The information indicative of roadway roughness and the information indicative of the number of vehicles that traverse each roadway can be indicative of real world usage of the vehicle by the target user base.
Using the information indicative of roughness, the information indicative of the number of vehicles, and/or the information indicative of an average speed of vehicles that traverse the roadways, a model can be constructed to generate a simulated roadway that corresponds to the set of physical roadways. The model can be used to generate the simulated roadway in discrete sections that can each match a discrete section of the set of real-world roadways. The simulated roadway can be applied to one or more models of vehicles or components of vehicles to determine effects of the simulated roadway to the components or vehicle. Furthermore, the simulated roadway can be filtered and/or reduced to a subset of roadways that are identified to likely be damaging to vehicle component(s) as the vehicle traverses the subset. The subset can enable more expeditious modeling of a vehicle and can be useful for evaluating changes to components as components are iteratively modified, tested, and evaluated, for example.
Roadway roughness information can be gathered through publically available or other databases or by directly sampling or sensing roughness from a set of real-world roadways. For example, International Roughness Index (IRI) information corresponding to United States roadways can be gathered from databases hosted by the Department of Transportation (such as via the Highway Performance Monitoring System (HPMS)). IRI information can be a scalar value that indicates relative roughness of a roadway section. Road roughness information can also be directly measured indicating a number of vehicles that traverse each roadway section. For example, a number of vehicles that traverse a checkpoint on a roadway section can be sampled for a certain time period (and/or be averaged over several time periods) to determine an expected/average number of vehicles that traverse a certain section of roadway. Similarly, information can be retrieved or measured indicative of average speeds of vehicles that traverse the roadways.
In certain embodiments, certain subsets of a superset of sections of roadways can be selected from databases and/or be measured. For example, a database of mapped roadway sections can be limited to certain geographic areas and/or certain types of roadways (e.g., highways, rural roads, etc.). In certain embodiments, a subset of vehicles can be used to determine a number of vehicles that traverse each roadway for a given time period. For example, vehicles may be limited to passenger cars, vans, or other vehicles corresponding to desired types of vehicles to be tested from a generated model. Roughness values of roadways can be delineated and/or binned into several categories to group the roadways. Furthermore, roadways can be separated into discrete sections of roadways of a certain length, each with corresponding roughness information and number of vehicle information. For example, roughness values can be obtained (for example, average) for 100 meter discrete sections of roadway (or any other length).
By following the MC model 200 illustrated in
The results of using the MC model 200 can be a step function as illustrated by graph 300 of
Depending on the length of each generated and/or sampled roadway section, the generated model may or may not have sufficient granularity to simulate roadway conditions with a vehicle component. In certain embodiments, frequency information and/or more granular information may be supplemented into the generated model to more realistically simulate roadway conditions. For example, each generated roadway section may be 100 meters long (or any other distance) and may correspond to a particular roughness value (or range of roughness values). However, frequency and/or amplitude information may be added to the segment to simulate individual bumps and/or divets in a roadway surface. In certain embodiments, Fourier series and/or Weierstrass functions can be used to model a roadway and/or add frequency components to the model. For example, frequency components with randomized amplitudes and/or other frequencies/amplitudes can be added to model(s). In certain embodiments, International Standards Organization (ISO) 8608 can be used to define amplitude versus frequency requirements for generating a Fourier series, a Weirstrass function, and/or for supplementing either.
In certain embodiments, the generated model can be separated into two separate tracks or two separate tracks can be individually generated using disclosed techniques. The two separate tracks can correspond to paths traversed respectively by left and right wheels of a vehicle. In certain embodiments, components (e.g., waveform components of Fourier series) of two generated tracks can be offset or randomized to better simulate road conditions that may cause, for example, vehicle suspension components to roll between left and right sides of a vehicle. For example, a generated model can be cloned to obtain two models corresponding to tracks. Components of the models having greater than a threshold frequency can be offset and/or randomized to simulate induced roll conditions to a vehicle. Components of the model having less than the threshold may not be offset to simulate a gentle roll between the front and back of a vehicle. In certain embodiments, frequencies corresponding to a wavelength of 30 meters can be varied between left and right tracks whereas longer wavelengths can be substantially identical between left and right tracks.
Various other alterations can be utilized to modify the generated model for differing conditions. For example, amplitude and/or frequency information can be increased in magnitude to simulate degradation of certain roads. In certain embodiments, planned new or refurbished roadways can be included in the model as having relatively lower roughness information. The models can be altered to simulate various weather patterns. For example, roadways known to be subjected to ice may have increased amplitude and/or frequency components (in certain embodiments, depending on vehicle type, for example, e.g., a sports car may not be expected to be driven during wintertime).
In certain embodiments, a vehicle speed can be gathered or estimated for existing databases and/or derived by associating a speed with a gathered roughness, road type, and/or other information. In certain embodiments, vehicle speed information can be gathered directly from vehicles that traverse roadways. Vehicle speed information can be used to determine stresses to vehicle components that travel at the speeds across roadways having various corresponding roughness values. The disclosed simulated roadway segments can be used to model effects to vehicle components with the vehicle speed information.
As a model of a vehicle is simulated to traverse a simulated roadway sections of varying roughness levels, stresses applied to components of the vehicle can be modeled (for various lengths of simulated roadway). The stresses can aid in determining if a particular vehicle component may be damaged when a vehicle traverses the corresponding real-world roadways. For example, a simulated roadway (or sets of simulated roadways corresponding to different tracks) can be 250,000 kilometers long if each segment is 100 meters and 2.5 million segments are used.
A multibodydamic (BMD) vehicle model is an example model that can be used to model stresses. A Finite Elements Analysis (FEA) can be performed to determined stresses applied to individual components. Using these techniques, a psuedodamage (PD) model can be generated for various components of a simulated vehicle. The PD can simulate a typical stresslife curve for a component.
In certain embodiments, generated simulated roadways can be filtered and/or down selected to generate a more compact subset of roadways. For example, a simulated set of roadways of 1,000 miles (that can be generated through use of model 200 and/or histogram(s) as disclosed herein) can be down selected to 100 miles of roadway. A down selected subset of roadways can be elected by determining that the subset of roadways contribute a relatively large amount of psuedodamage to component(s) of a vehicle. The subset of simulated roadway segments can aid in expediting simulated testing of vehicle components. For example, a smaller subset may require less time and/or processing power than a larger set. A subset can enable a designer to test components in near real time to determine if changes to the components result in a reliable component when tested. In certain embodiments, psuedodamage from a superset of simulated roadways can be used to down select to a subset of simulated roadways. For example, a determination can be made that a certain subset of roadways induces the majority of damage to certain components. The subset can then be down-selected.
Certain subsets of down selected roadway sections can be associated with certain vehicle types (e.g., sedan, coupe, sports utility vehicle, truck, etc.), certain types of components (e.g., suspension, drivetrain, interior, etc.) or other. In certain embodiments, various groups of subsets can be down selected for different purposes. For example, a certain subset may be used to perform a relatively quick test on component(s) to quickly ascertain a level of confidence pertaining to the components' reliability. A certain subset may be used to perform a more thorough evaluation of the components and/or to target the components. Certain subsets may include adding or repeating simulated sections of roadways that were not in the superset used to generate the subset. For example, two subsets from two different supersets can be combined to, for example, ascertain effects from two different modeled geographic areas. Some subsets can be appended with additional roadway segments to, for example, perform a more stringent test on a component.
At 606, a model can be built to generate one or more simulated roadways (e.g., a superset of simulated roadways). The one or more simulated roadways can correspond, in roughness, to the set of roadways for 602 and 604. The model can be a MC model that uses probabilities to change states corresponding to roughness values. The probabilities can be used to generate simulated roadways having distribution of roughness values substantially equal to the set of real-world roadways. At 608, the model can be used to generate a one or more simulated roadway sections. At 610, one or more stresses imparted to a simulated vehicle component of the vehicle can be determined. Roadway sections can be applied to one or more simulated vehicle components to determine, for example, a reliability or longevity for each of the components for the simulated roadway (and thus corresponding to the set of real-world roadways).
At 706 is a means to build a model operable of generating one or more simulated roadways. The means can be a processor. The one or more simulated roadways can correspond, in roughness, to the set of real-world roadways of 702 and 704. The model can be a MC model that uses probabilities to change states corresponding to roughness values. The probabilities can be used to generate simulated roadway(s) having distribution(s) of roughness values substantially equal to the set of real-world roadways. At 708 is a means to generate the one or more simulated roadway sections. The means can be a processor that can use the model generated at 706. At 710 is a means to determine one or more stresses imparted to a simulated vehicle component of the vehicle. The means can include applying roadway sections to one or more simulated vehicle components to determine, for example, a reliability or longevity for each of the components for the simulated roadway (and thus corresponding to the set of real-world roadways). The means can be a processor.
The computer system 800 is shown as comprising hardware elements that can be electrically coupled via a bus 802 (or may otherwise be in communication, as appropriate). The hardware elements may include one or more processors 804, including without limitation one or more general-purpose processors and/or one or more special-purpose processors (such as digital signal processing chips, graphics processing units 822, and/or the like); one or more input devices 808, which can include without limitation one or more cameras, sensors, a mouse, a keyboard, a microphone configured to detect ultrasound or other sounds, and/or the like; and one or more output devices 810, which can include without limitation a display unit such as the device used in implementations of the invention, a printer and/or the like.
In some implementations of the implementations of the invention, various input devices 808 and output devices 810 may be embedded into interfaces such as display devices, tables, floors, walls, and window screens. Furthermore, input devices 808 and output devices 810 coupled to the processors may form multi-dimensional tracking systems.
The computer system 800 may further include (and/or be in communication with) one or more non-transitory storage devices 806, which can comprise, without limitation, local and/or network accessible storage, and/or can include, without limitation, a disk drive, a drive array, an optical storage device, a solid-state storage device such as a random access memory (“RAM”) and/or a read-only memory (“ROM”), which can be programmable, flash-updateable and/or the like. Such storage devices may be configured to implement any appropriate data storage, including without limitation, various file systems, database structures, and/or the like.
The computer system 800 might also include a communications subsystem 812, which can include without limitation a modem, a network card (wireless or wired), an infrared communication device, a wireless communication device and/or chipset (such as a Bluetooth device, an 802.11 device, a WiFi device, a WiMax device, cellular communication facilities, etc.), and/or the like. The communications subsystem 812 may permit data to be exchanged with a network, other computer systems, and/or any other devices described herein. In many implementations, the computer system 800 will further comprise a non-transitory working memory 818, which can include a RAM or ROM device, as described above.
The computer system 800 also can comprise software elements, shown as being currently located within the working memory 818, including an operating system 814, device drivers, executable libraries, and/or other code, such as one or more application programs 816, which may comprise computer programs provided by various implementations, and/or may be designed to implement methods, and/or configure systems, provided by other implementations, as described herein. Merely by way of example, one or more procedures described with respect to the method(s) discussed above might be implemented as code and/or instructions executable by a computer (and/or a processor within a computer); in an aspect, then, such code and/or instructions can be used to configure and/or adapt a general purpose computer (or other device) to perform one or more operations in accordance with the described methods.
A set of these instructions and/or code might be stored on a computer-readable storage medium, such as the storage device(s) 806 described above. In some cases, the storage medium might be incorporated within a computer system, such as computer system 800. In other implementations, the storage medium might be separate from a computer system (e.g., a removable medium, such as a compact disc), and/or provided in an installation package, such that the storage medium can be used to program, configure and/or adapt a general purpose computer with the instructions/code stored thereon. These instructions might take the form of executable code, which may be executable by the computer system 800 and/or might take the form of source and/or installable code, which, upon compilation and/or installation on the computer system 800 (e.g., using any of a variety of generally available compilers, installation programs, compression/decompression utilities, etc.) then takes the form of executable code.
Substantial variations may be made in accordance with specific requirements. For example, customized hardware might also be used, and/or particular elements might be implemented in hardware, software (including portable software, such as applets, etc.), or both. Further, connection to other computing devices such as network input/output devices may be employed. In some implementations, one or more elements of the computer system 800 may be omitted or may be implemented separate from the illustrated system. For example, the processor 804 and/or other elements may be implemented separate from the input device 808. In one implementation, the processor may be configured to receive images from one or more cameras that are separately implemented. In some implementations, elements in addition to those illustrated in
Some implementations may employ a computer system (such as the computer system 800) to perform methods in accordance with the disclosure. For example, some or all of the procedures of the described methods may be performed by the computer system 800 in response to processor 804 executing one or more sequences of one or more instructions (which might be incorporated into the operating system 814 and/or other code, such as an application program 816) contained in the working memory 818. Such instructions may be read into the working memory 818 from another computer-readable medium, such as one or more of the storage device(s) 806. Merely by way of example, execution of the sequences of instructions contained in the working memory 818 might cause the processor(s) 804 to perform one or more procedures of the methods described herein.
The terms “machine-readable medium” and “computer-readable medium,” as used herein, refer to any medium that participates in providing data that causes a machine to operate in a specific fashion. In some implementations implemented using the computer system 800, various computer-readable media might be involved in providing instructions/code to processor(s) 804 for execution and/or might be used to store and/or carry such instructions/code (e.g., as signals). In many implementations, a computer-readable medium may be a physical and/or tangible storage medium. Such a medium may take many forms, including but not limited to, non-volatile media, volatile media, and transmission media. Non-volatile media include, for example, optical and/or magnetic disks, such as the storage device(s) 806. Volatile media include, without limitation, dynamic memory, such as the working memory 818. Transmission media include, without limitation, coaxial cables, copper wire and fiber optics, including the wires that comprise the bus 802, as well as the various components of the communications subsystem 812 (and/or the media by which the communications subsystem 812 provides communication with other devices). Hence, transmission media can also take the form of waves (including without limitation radio, acoustic and/or light waves, such as those generated during radio-wave and infrared data communications).
Common forms of physical and/or tangible computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, or any other magnetic medium, a CD-ROM, any other optical medium, any other physical medium, a RAM, a PROM, EPROM, a FLASH-EPROM, any other memory device, a carrier wave as described hereinafter, or any other medium from which a computer can read instructions and/or code.
Various forms of computer-readable media may be involved in carrying one or more sequences of one or more instructions to the processor(s) 804 for execution. Merely by way of example, the instructions may initially be carried on a magnetic disk and/or optical disc of a remote computer. A remote computer might load the instructions into its dynamic memory and send the instructions as signals over a transmission medium to be received and/or executed by the computer system 800. These signals, which might be in the form of electromagnetic signals, acoustic signals, optical signals and/or the like, are all examples of carrier waves on which instructions can be encoded, in accordance with various implementations of the invention.
The communications subsystem 812 (and/or components thereof) generally will receive the signals, and the bus 802 then might carry the signals (and/or the data, instructions, etc. carried by the signals) to the working memory 818, from which the processor(s) 804 retrieves and executes the instructions. The instructions received by the working memory 818 may optionally be stored on a non-transitory storage device 806 either before or after execution by the processor(s) 804.
It is understood that the specific order or hierarchy of steps in the processes disclosed is an illustration of exemplary approaches. Based upon design preferences, it is understood that the specific order or hierarchy of steps in the processes may be rearranged. Further, some steps may be combined or omitted. The accompanying method claims present elements of the various steps in a sample order, and are not meant to be limited to the specific order or hierarchy presented.
The previous description is provided to enable any person skilled in the art to practice the various aspects described herein. Various modifications to these aspects will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other aspects. Moreover, nothing disclosed herein is intended to be dedicated to the public.
While some examples of methods and systems herein are described in terms of software executing on various machines, the methods and systems may also be implemented as specifically-configured hardware, such as field-programmable gate array (FPGA) specifically to execute the various methods. For example, examples can be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in a combination thereof. In one example, a device may include a processor or processors. The processor comprises a computer-readable medium, such as a random access memory (RAM) coupled to the processor. The processor executes computer-executable program instructions stored in memory, such as executing one or more computer programs. Such processors may comprise a microprocessor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), field programmable gate arrays (FPGAs), and state machines. Such processors may further comprise programmable electronic devices such as PLCs, programmable interrupt controllers (PICs), programmable logic devices (PLDs), programmable read-only memories (PROMs), electronically programmable read-only memories (EPROMs or EEPROMs), or other similar devices.
Use herein of the word “or” is intended to cover inclusive and exclusive OR conditions. In other words, A or B or C includes any or all of the following alternative combinations as appropriate for a particular usage: A alone; B alone; C alone; A and B only; A and C only; B and C only; and A and B and C.
Although the disclosure has been described with respect to specific embodiments, it will be appreciated that the disclosure is intended to cover all modifications and equivalents within the scope of the following claims.
The foregoing description, for purposes of explanation, used specific nomenclature to provide a thorough understanding of the described embodiments. However, it will be apparent to one skilled in the art that the specific details are not required in order to practice the described embodiments. Thus, the foregoing descriptions of specific embodiments are presented for purposes of illustration and description. They are not intended to be exhaustive or to limit the described embodiments to the precise forms disclosed. It will be apparent to one of ordinary skill in the art that many modifications and variations are possible in view of the above teachings.
This application claims the benefit of U.S. Provisional Application No. 62/402,134, filed Sep. 30, 2016, the entirety of which is hereby incorporated by reference.
Number | Date | Country | |
---|---|---|---|
62402134 | Sep 2016 | US |