Vehicles include devices, such as displays or head-up displays (HUDs), which are repositioned for different occupants. Such deployment of these devices causes the mechanical components of the devices to wear out. There is a need for a smart system with a deployment mechanism for deploying the device to a new position, and continuously improving the deployment while taking into account potential interactions with the device environment (e.g. mechanical constraints, vibrations, etc.) and discrepancies between target and actual parameters of the device. This system would also account for manufacturing variations of such devices.
This section provides a general summary of the present disclosure and is not a comprehensive disclosure of its full scope or all of its features, aspects, and objectives.
Disclosed herein are implementations of a deployment system for a device. The deployment system includes a non-transitory computer readable medium to store instructions of the deployment system and a processor configured to execute the instructions. The processor is configured to deploy the device using one or more parameters, determine a Mean Square terror (MSE) of the system response versus target, and run a Statistical Process Control (SPC) test on the MSE. The processor is further configured to determine that no special event is present and adjust the one or more parameters.
Also disclosed herein are implementations of a deployment system for a vehicle having a microprocessor, a sensor, and a head-up display (HUD). The microprocessor is configured to execute instructions stored on a non-transitory computer readable medium. The sensor is coupled to the microprocessor and configured to receive information of surroundings of the deployment system. The HUD is coupled to the microprocessor. The microprocessor is further configured to initiate a target response for an occupant of the vehicle and deploy the HUD using the target response. The microprocessor is further configured to measure a real-time response of the HUD during deployment and compute a Mean Square Error (MSE) using the target response and the real-time response. The microprocessor then determines using a EVOP algorithm the new parameters for deployment of the HUD using the MSE and recorded parameters and responses from previous iterations.
Also disclosed herein are implementations of a method for deploying a display. The method includes performing deployment using one or more parameters, determining a Mean Square Error (MSE), and running a Statistical Process Control (SPC) test on the MSE. The method further includes determining that no special event is present and processing new parameters using historical data, the MSE, and the SPC test results.
The disclosure is best understood from the following detailed description when read in conjunction with the accompanying drawings. It is emphasized that, according to common practice, the various features of the drawings are not to-scale. On the contrary, the dimensions of the various features are arbitrarily expanded or reduced for clarity.
The following description is merely exemplary in nature and is not intended to limit the disclosure in its application or uses. For purposes of clarity, the same reference numbers are used in the description and drawings to identify similar elements.
The processor 104 is a device that processes signals and performs general computing and arithmetic functions. The processor 104 may include multiple single and multicore processors, co-processors, and architectures. The memory 106 may include a variety of memory, such as volatile memory and non-volatile memory. The memory 106 may also include a disk, such as but not limited to a flash memory card, a memory stick, a magnetic disk drive, a solid state disk drive, a CR-ROM, or a DVD ROM. The memory 106 may store a system that controls resources of a computing device and software that the processor 104 executes. The processor 104 and memory 106 are operatively coupled. The processor 104 performs processes by executing software instructions stored by the memory 106. The processes may include capturing data of the environment surrounding the display 110. The processes may include capturing data of the actual speed when the display 110 is deploying and the actual position of the display 110. The processes may also include determining the angle of the display 110. The processes may further include computing a metric measuring a Mean Square Error (MSE) while the display 110 is deploying. The processes may also include calculating the parameters for the next deploy of the display 110, which improves the processes.
The processor 104 and the memory 106 communicate through the input/output 108. The input/output 108 is a part of the system 100 and communicates with the sensor 112 and the display 110. The data captured by the sensor 112 is input to processor 104 for processing and outputting to the display 110 for providing display deployment assistance to optimize the position of the display 110 for an occupant of a vehicle.
The memory 106 stores an optimization algorithm having software parameters to drive a deployment mechanism for the display 110. The optimization algorithm is embedded in the software of the display 110. The embedded optimization algorithm may be used with any mechanism that deploys the display 110. The position of the display 110 may be captured in actual time and stored in the memory 106. The speed of the display 110 as it deploys may be measured in actual time and stored in the memory 106. The display 110 includes the deployment mechanism for deploying the display 110. Each time the deployment mechanism is used in the vehicle for deploying the display 110 to a new position, a new set of software parameters is tested. Small variations of the system response are detected by sensor 112. The small variations may be undetectable by the occupant. The processor 104 computes a metric measuring the MSE during this deployment. Using the result and the record of previous deploys, together with using an Evolutionary Operation (EVOP) algorithm and a Statistical Process Control (SPC), the processor 104 calculates the parameters for the next deploy of the display 110. The embedded optimization algorithm is continuously improving the metric and the parameters to provide optimal performance to the occupant during the lifecycle of the display 110. The optimal performance reduces the wear of the deployment mechanism, because the wear of the mechanical components of the deployment mechanism are dynamically compensated by the embedded optimization algorithm. Furthermore, each time the display 110 is deployed, the embedded optimization algorithm measures the performance of the display 110 for evolutionary optimization.
The optimization algorithm can be embedded into a variety of devices. The embedded optimization algorithm includes an initial parameter setting, such as a set point (SP). The parameters may include PID coefficients (e.g. proportional, integral, and/or derivative coefficients) The parameters change using the particular device and the embedded optimization algorithm will evolve to find the device's particular optimum parameters (e.g. process variables (PV)). The embedded optimization algorithm also accounts for potential interactions of the device with the environment, for example, mechanical constraints and vibration. The embedded optimization algorithm computes these influences and adapts continuously to the environment.
The SPC is used on the MSE to determine if a special event occurred during the deployment of the display 110. If a special event occurred during deployment, the last result is discarded. In other words, if the response MSE(j) is out of control, there is a special event and process 400 returns to step 404 to redo the deployment j. If the response MSE(j) is in control, meaning that there is no special event, process 400 proceeds to step 408. At step 408, a EVOP algorithm is used to calculate xj(j+1), x2(j+1), . . . xn(j+1) using a previous n+1 in the control results. At step 410, the deployment j is adjusted to j+1. The parameters from the last n+1 records and the corresponding measures of the MSE are recorded and stored in memory 106. After deployment j is adjusted, process 400 proceeds to step 404 to perform the deployment j and the response. Process 400 continues until it stops. Process 400 may stop when the vehicle is turned off or after a period of time, and resume when the vehicle is turned on.
The new set of parameters (e.g., the vertex) is calculated using the valid last n+1 deployments using EVOP 502. In another embodiment, a different variant of EVOP 502 is used. For example, using a variable of fixed step size. One implementation of EVOP 502 is to 1) rank the MSE and 2) obtain a new vertex. For step 1, a Vertex W is the vertex with a higher MSE and a Vertex_G is the mean of all other vertexes. For step 2, the new vertex is calculated as follows: New Vertex=2*Vertex_G−Vertex−W. Basically, optimal parameters are determined and implemented as static parameters. To dynamically adapt to a change of the device, the records of the MSE are refreshed. For example, records of the MSE older than 100 deploys or one month are actualized. The EVOP 502 may include additional and/or fewer steps and is not limited to those illustrated ifs this disclosure.
While the disclosure has been described in connection with certain embodiments, it is to be understood that the disclosure is not to be limited to the disclosed embodiments but, on the contrary, is intended to cover various modifications and equivalent arrangements included within the scope of the appended claims, which scope is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures as is permitted under the law.
Number | Name | Date | Kind |
---|---|---|---|
4792737 | Goff | Dec 1988 | A |
5058836 | Nobel | Oct 1991 | A |
5204666 | Aoki | Apr 1993 | A |
5394202 | Deering | Feb 1995 | A |
6412848 | Ceccanese | Jul 2002 | B1 |
7659685 | Cesario | Feb 2010 | B2 |
7890263 | Prakah-Asante et al. | Feb 2011 | B2 |
9633626 | Weindorf | Apr 2017 | B2 |
9709805 | Weindorf | Jul 2017 | B2 |
20030169158 | Paul, Jr. | Sep 2003 | A1 |
20040039492 | Demontis | Feb 2004 | A1 |
20040088059 | Johnson | May 2004 | A1 |
20060039736 | Ogawa | Feb 2006 | A1 |
20060291066 | Shiobara | Dec 2006 | A1 |
20080010875 | Kuwabara | Jan 2008 | A1 |
20080106859 | Eguchi | May 2008 | A1 |
20090025022 | Blatchley | Jan 2009 | A1 |
20090033259 | Cesario | Feb 2009 | A1 |
20100052581 | Izumi | Mar 2010 | A1 |
20100176914 | Moraes | Jul 2010 | A1 |
20100253489 | Cui | Oct 2010 | A1 |
20100253492 | Seder | Oct 2010 | A1 |
20100253493 | Szczerba | Oct 2010 | A1 |
20110040455 | Lathrop | Feb 2011 | A1 |
20110050142 | Lu | Mar 2011 | A1 |
20120001582 | Park | Jan 2012 | A1 |
20120283894 | Naboulsi | Nov 2012 | A1 |
20130050112 | Vanhelle | Feb 2013 | A1 |
20130060354 | Choi | Mar 2013 | A1 |
20140137326 | Tavanti | May 2014 | A1 |
20140267775 | Lablans | Sep 2014 | A1 |
20150355464 | Hopf | Dec 2015 | A1 |
20160041386 | Rodriguez Moreno | Feb 2016 | A1 |
20160154238 | Weindorf | Jun 2016 | A1 |
20160162145 | Rivers | Jun 2016 | A1 |
20160226414 | Wang | Aug 2016 | A1 |
20170285739 | Aaron | Oct 2017 | A1 |
20170323458 | Lablans | Nov 2017 | A1 |
20170349069 | Helot | Dec 2017 | A1 |
20180111599 | Wang | Apr 2018 | A1 |
20180328294 | Levijoki | Nov 2018 | A1 |
Number | Date | Country |
---|---|---|
2014202834 | Oct 2014 | JP |
Entry |
---|
International search report on international application PCT/EP2018/078383. |
Number | Date | Country | |
---|---|---|---|
20190113750 A1 | Apr 2019 | US |