Real-Time Onboard Standalone Sensor Thermal Compensation (RToB SSTC) Techniques and Tools for Induced Error Reduction
20220299346 · 2022-09-22
Inventors
Cpc classification
G01K7/14
PHYSICS
G01D3/0365
PHYSICS
International classification
Abstract
A method for reducing thermal induced error in real-time for a sensor in a region of interest. The method includes receiving at least one data point from a temperature sensor, the temperature sensor configured to determine temperature for the sensor of interest. The method includes receiving at least one data point from the sensor, the sensor having thermal sensitivity and offset shift for a given temperature range. The method includes determining at least three percentage change coefficients for thermal sensitivity. The method includes determining at least three percentage change coefficients for thermal zero offset. The method includes calculating real-time thermal error reduction.
Claims
1. A system for reducing thermal induced error in real-time for a sensor in a region of interest of a vehicle, the system comprising: a temperature sensor, the temperature sensor configured to determine a temperature for a sensor of interest, the sensor of interest having a thermal sensitivity and an offset shift for a given temperature range; a memory; and a processor coupled to the memory, wherein the processor is configured to execute instructions to: calculate real-time sensor thermal error reduction data, wherein the calculation comprises using polynomial functions within a temperature reading range determined by the temperature sensor, wherein the polynomial functions are based on preloaded data for the sensor of interest.
2. The system of claim 1, wherein the preloaded data comprises thermal sensitivity and zero shift data.
3. The system of claim 1, further comprising using the real-time thermal error reduction data to perform real-time thermal compensation for the sensor of interest.
4. The system of claim 1, wherein calculating the real-time sensor thermal error reduction further comprises using a midpoint temperature error reduction, comprising: determining at least three percentage change coefficients for the thermal sensitivity, determining at least three percentage change coefficients for thermal zero offset, within the temperature reading range of the temperature sensor, curve-fitting more than one polynomial function using regression analysis; determining at least two boundary regions for piecewise functions, wherein each of the boundary regions are calculated based on the preloaded data; and selecting a boundary condition to reduce sensor thermal error using at least one of the thermal sensitivity percentage change coefficients and at least one of the thermal zero offset percentage change coefficients.
5. The system of claim 1, wherein calculating the real-time sensor thermal error reduction data further comprises optimizing error automation, comprising: calculating more than one polynomial function; using at least one of the polynomial functions, selecting a thermal sensitivity and an offset drift for the preloaded data based on input from the temperature sensor; calculating a first error at a proximate lesser temperature level and a proximate higher temperature level associated with a first temperature reading; calculating a second error at a proximate lesser temperature level and a proximate higher temperature level associated with a second temperature reading; identifying a substantially equal calculated error value, wherein the first calculated error and the second calculated error at proximate lesser temperature values and proximate higher temperature values are substantially equal; designating the substantially equal calculated error value as a maximum error; and using the maximum error for correcting a thermal error outside of a threshold.
6. The system of claim 5, wherein the threshold is calculated using a midpoint error reduction.
7. The system of claim 1, wherein calculating the real-time sensor thermal error reduction data further comprises three-dimensional lookup error elimination, comprising: calculating polynomial functions based on a temperature range for the sensor of interest; and constructing a three-dimensional lookup matrix, wherein: the three-dimensional lookup matrix is based on polynomial functions, and the three-dimensional lookup matrix is comprised of a voltage measurement of the sensor of interest, an engineering unit, and the temperature range of the sensor of interest.
8. The system of claim 1, wherein the temperature sensor comprises at least one of a resistance temperature detector and a thermocouple.
9. The system of claim 1, wherein the sensor of interest comprises at least one of an accelerometer, a strain gauge, a pressure transducer, and a microphone.
10. The system of claim 1, further comprising performing thermal compensation to a portion of the vehicle using the real-time sensor thermal error reduction data.
11. A method for reducing thermal induced error in real-time for a sensor in a region of interest of a vehicle, the method comprising: receiving at least one data point from a temperature sensor, the temperature sensor configured to determine a temperature for a sensor of interest; receiving at least one data point from the sensor of interest, the sensor of interest having a thermal sensitivity and an offset shift for a given temperature range; and calculating real-time sensor thermal error reduction data, wherein the calculation comprises using polynomial functions within a temperature reading range determined by the temperature sensor, wherein the polynomial functions are based on preloaded data for the sensor of interest.
12. The method of claim 11, wherein calculating the real-time sensor thermal error reduction data further comprises using a midpoint temperature error reduction, comprising: determining at least three percentage change coefficients for thermal sensitivity; determining at least three percentage change coefficients for thermal zero offset; within the temperature reading range of the temperature sensor, curve-fitting more than one polynomial function using regression analysis; determining at least two boundary regions for piecewise functions, wherein each of the boundary regions are calculated based on the preloaded data; and selecting a boundary condition to reduce sensor thermal error using at least one of the thermal sensitivity percentage change coefficients and at least one of the thermal zero offset percentage change coefficients.
13. The method of claim 11, wherein calculating the real-time sensor thermal error reduction data further comprises optimizing error automation, comprising: calculating more than one polynomial function; using at least one of the polynomial functions, selecting a thermal sensitivity and an offset drift for the preloaded data based on the temperature sensor input; calculating a first error at a proximate lesser temperature level and a proximate higher temperature level associated with a first temperature reading; calculating a second error at a proximate lesser temperature level and a proximate higher temperature level associated with a second temperature reading; identifying a substantially equal calculated error value, wherein the first calculated error and the second calculated error at proximate lesser temperature values and proximate higher temperature values are substantially equal; and designating the substantially equal calculated error value as a maximum error; and using the maximum error for correcting a thermal error outside of a threshold.
14. The method of claim 13, wherein the threshold is calculated using a midpoint error reduction.
15. The method of claim 11, wherein calculating the real-time sensor thermal error reduction further comprises three-dimensional lookup error elimination, comprising: calculating polynomial functions based on a temperature range for the sensor of interest; and constructing a three-dimensional lookup matrix, wherein: the three-dimensional lookup matrix is based on polynomial functions, and the three-dimensional lookup matrix is comprised of a voltage measurement of the sensor of interest, an engineering unit, and the temperature range of the sensor of interest.
16. The method of claim 11, further comprising using the real-time sensor thermal error reduction data to perform real-time thermal compensation in the region of interest.
17. The method of claim 11, further comprising using the real-time thermal error reduction data to perform real-time thermal compensation for the sensor of interest.
18. A non-transitory computer-readable storage medium for thermal induced error in real-time reduction for a sensor in a region of interest of a vehicle, the computer readable storage medium being non-transitory and having computer-readable program code portions stored therein that in response to execution by processing circuitry, cause an apparatus to at least: receive at least one data point from a first sensor, the first sensor configured to determine temperature readings; receive at least one data point from a sensor of interest, the sensor of interest having a thermal sensitivity and an offset shift for a given temperature range; and calculate real-time sensor thermal error reduction data, wherein the calculation comprises using polynomial functions within a temperature reading range determined by the first sensor, wherein the polynomial functions are based on preloaded data for the sensor of interest.
19. The non-transitory computer-readable storage medium of claim 18, wherein calculating the real-time sensor thermal error reduction data further comprises using a midpoint temperature error reduction, comprising: determining at least three percentage change coefficients for thermal sensitivity; determining at least three percentage change coefficients for thermal zero offset; within the temperature reading range of the first sensor, curve-fitting more than one polynomial function using regression analysis; and determining at least two boundary regions for piecewise functions, wherein each of the boundary regions are calculated based on the preloaded data; and selecting a boundary condition to reduce sensor thermal error using at least one of the thermal sensitivity percentage change coefficients and at least one of the thermal zero offset percentage change coefficients.
20. The non-transitory computer-readable storage medium of claim 18, wherein calculating the real-time sensor thermal error reduction further comprises at least one of: optimizing error automation, comprising: calculate more than one polynomial function, use at least one of the polynomial functions, selecting a thermal sensitivity and an offset drift for the preloaded data based on the first sensor input, calculate a first error at a proximate lesser temperature level and a proximate higher temperature level associated with a first temperature reading, calculate a second error at a proximate lesser temperature level and a proximate higher temperature level associated with a second temperature reading, identify a substantially equal calculated error value, wherein the first calculated error and the second calculated error at proximate lesser temperature values and proximate higher temperature values are substantially equal, and designate the substantially equal calculated error value as a maximum error, and use the maximum error for correcting a thermal error outside of a threshold; and three-dimensional lookup error elimination, comprising: calculate polynomial functions based on a temperature range for the sensor of interest; and construct a three-dimensional lookup matrix, wherein: the three-dimensional lookup matrix is based on polynomial functions, and the three-dimensional lookup matrix is comprised of a voltage measurement of the sensor of interest, an engineering unit, and the temperature range of the sensor of interest.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0032] Having thus described variations of the disclosure in general terms, reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, and wherein:
[0033]
[0034]
[0035]
[0036]
[0037]
[0038]
[0039]
[0040]
[0041]
[0042]
[0043]
[0044]
[0045]
[0046]
[0047]
[0048]
[0049]
[0050]
[0051]
DETAILED DESCRIPTION
[0052] The embodiments herein provide various methods, systems, and apparatuses to account for thermal error compensation. Three embodiments described below include midpoint temperature error reduction (MTER), optimization error automation (OEA), and three-dimensional lookup error elimination (3DLEE).
[0053]
[0054]
[0055] The midpoints must be within the following boundary regions according to a piecewise function for α.sub.1 and α.sub.2 shown in the following equation:
[0056] where y.sub.v is voltage,
[0057] m.sub.s is sensitivity,
[0058] X.sub.EU is engineering units,
[0059] b.sub.z is zero offset,
[0060] α.sub.1=(T.sub.1+T.sub.2)/2,
[0061] α.sub.2=(T.sub.2+T.sub.3)/2, and
[0062] T.sub.i is the given temperature i=1, 2, 3, . . .
[0063] An advantage of MTER is it has the lowest computational complexity of the three methods (MTER, OEA, 3DLEE). The value a is picked as the midpoint between the temperature values. The error is the difference in y value between the actual value and the midpoint on the left or right. Since a midpoint is chosen, the error from left and right are not equal unless the fit 208 is a straight line with a slope of +/−1. Thus, the max error is used to calculate the error. If the actual value is less than α.sub.1, the first equation above is used. If the value is higher than α.sub.2, the third equation is used. If the value is between α.sub.1 and α.sub.2, the second equation is used. Since the error from left and right is not equal, this solution finds a which has the same error from left and right.
[0064]
m.sub.s(T)=αT.sup.2+bT+c
b.sub.z(T)=α.sub.1T.sup.2+b.sub.1T+c.sub.1
[0065] In determining α 302, the error shown on the y-axis 306 can be the same in either direction of the x-axis 310a in the index if the same distance. The y-axis is measured with the applicable engineering unit, such as but not limited to gravity (g) as illustrated in
V.sub.new=m.sub.s_mid(g.sub.range)+b.sub.z_mid;
max.sub.left(index.sub.1)=max|(thermal.sub._65_sen_values−V.sub._new)|; and
max.sub.right(index.sub.1)=max|(ser_sens_values−V.sub._new)|
[0066] Once the maximum left and right values are determined, OEA determines the location optimized by finding the minimum absolute value of error:
location.sub.α=find|(man.sub.left−max.sub.right)|==min|(max.sub.left−max.sub.right)|
[0067] The plot in
[0068] The example of
[0069]
[0070] In some implementations, for any temperature to the left of α, −65° F. sensitivity equation 414 is used, and for any temperature to the right side of a, serial sensitivity equation 420 is used. In such implementations, the maximum error is implied to be the same from both sides of the optimized 416. Thus, the maximum value will be used to determine root sum of squares calculations.
[0071]
[0072]
[0073]
[0074] In this method, for every temperature an equation is generated using the fitted polynomial in the previous MTER and OEA methods:
m.sub.s(T)=aT.sup.2+bT+c
b.sub.z(T)=a.sub.1T.sup.2+b.sub.1T+c.sub.1
[0075] This implies, that there are N many equations for N many temperatures to determine a spectrum of readings. 3DLEE can require more processing power than MTER or OEA. However, in some embodiments, the error is almost eliminated. As shown, the y-axis is temperature, the x-axis is in g, and the z-axis is in mV.
[0076] In some embodiments, T ranges from:
T.sub.min:β:T.sub.max
[0077] where β is the quantization level.
β=1, 2, 3, . . . , N
N=(T.sub.max−T.sub.min)/β
[0078] N is the number of equations used for compensation.
[0079]
[0080]
[0081]
[0082]
[0083]
[0084] The method 1000 further includes receiving 1004 at least one data point from the sensor of interest, the sensor of interest having thermal sensitivity and offset shift for a given temperature range.
[0085] The method 1000 further includes calculating 1006 real-time sensor thermal error reduction. The calculation 1006 includes using polynomial functions within a temperature reading range determined by the temperature sensor, wherein the polynomial functions are based on preloaded data for the sensor of interest. In some embodiments, the preloaded data comprises thermal sensitivity and zero shift data.
[0086] In some embodiments, the method 1000 can perform thermal compensation to the portion of the vehicle using the real-time sensor thermal error reduction.
[0087]
[0088] The method 1010A further includes determining 1012A at least three percentage change coefficients for thermal zero offset.
[0089] The method further includes curve-fitting 1013A more than one polynomial function using regression analysis within the temperature reading range of the temperature sensor.
[0090] The method 1010A further includes determining 1014A at least two boundary regions for the piecewise functions, wherein each of the boundary regions are calculated based on the preloaded data.
[0091] The method 1010A further includes selecting 1015A a boundary condition to reduce sensor thermal error using at least one of the thermal sensitivity percentage change coefficients and at least one of the thermal zero offset percentage change coefficients.
[0092]
[0093] The method 1010B includes selecting 1012B a thermal sensitivity and an offset drift for the preloaded data based on the temperature sensor input using at least one of the polynomial functions.
[0094] The method 1010B includes calculating 1013B a first error at a proximate lesser temperature level and a proximate higher temperature level associated with a first temperature reading.
[0095] The method 1010B includes calculating 1014B a second error at a proximate lesser temperature level and a proximate higher temperature level associated with a second temperature reading.
[0096] The method 1010B includes identifying 1015B a substantially equal calculated error value, wherein the first calculated error and the second calculated error at proximate lesser temperature values and proximate higher temperature values are substantially equal.
[0097] The method 1010B includes designating 1016B the substantially equal calculated error value as the maximum error.
[0098] The method 1010B includes using 1017B the maximum error for correcting a thermal error outside of a threshold. In some embodiments, the threshold is calculated using a midpoint error reduction.
[0099]
[0100] The method 1010C includes constructing 1012C a three-dimensional lookup matrix, wherein: the three-dimensional lookup matrix is based on polynomial functions, and the three-dimensional lookup matrix is comprised of the voltage measurement of the sensor of interest, an engineering unit, and the thermal range of the sensor of interest.
[0101]
[0102] The processing circuitry 1150 may be composed of one or more processors alone or in combination with one or more memories. The processing circuitry is generally any piece of computer hardware that is capable of processing information such as, for example, data, computer programs or other suitable electronic information. The processing circuitry is composed of a collection of electronic circuits some of which may be packaged as an integrated circuit or multiple interconnected integrated circuits (an integrated circuit at times more commonly referred to as a “chip”). The processing circuitry may be configured to execute computer programs, which may be stored onboard the processing circuitry or otherwise stored in the memory 1160 (of the same or another system).
[0103] The processing circuitry 1150 may be a number of processors, a multi-core processor or some other type of processor, depending on the particular implementation. Further, the processing circuitry 1150 may be implemented using a number of heterogeneous processor systems in which a main processor is present with one or more secondary processors on a single chip. As another illustrative example, the processing circuitry 1150 may be a symmetric multi-processor system containing multiple processors of the same type. In yet another example, the processing circuitry 1150 may be embodied as or otherwise include one or more ASICs, FPGAs or the like. Thus, although the processing circuitry 1150 may be capable of executing a computer program to perform one or more functions, the processing circuitry 1150 of various examples may be capable of performing one or more functions without the aid of a computer program. In either instance, the processing circuitry 1150 may be appropriately programmed to perform functions or operations according to example implementations of the present disclosure.
[0104] The memory 1160 is generally any piece of computer hardware that is capable of storing information such as, for example, data, computer programs (e.g., computer-readable program code 1170) or other suitable information either on a temporary basis or a permanent basis. The memory 1160 may include volatile and non-volatile memory, and may be fixed or removable. Examples of suitable memory include random access memory (RAM), read-only memory (ROM), a hard drive, a flash memory, a thumb drive, a removable computer diskette, an optical disk, a magnetic tape or some combination of the above. Optical disks may include compact disk-read only memory (CD-ROM), compact disk-read/write (CD-R/W), DVD or the like. In various instances, the memory 1160 may be referred to as a computer-readable storage medium. The computer-readable storage medium is a non-transitory device capable of storing information, and is distinguishable from computer-readable transmission media such as electronic transitory signals capable of carrying information from one location to another. Computer-readable medium as described herein may generally refer to a computer-readable storage medium or computer-readable transmission medium.
[0105] In addition to the memory 1160, the processing circuitry 1150 may also be connected to one or more interfaces for displaying, transmitting and receiving information. The interfaces may include interface circuitry (e.g. a communications interface) 1120. The interface circuitry 1120 may be configured to transmit and receive information, such as to and from other apparatus(es), network(s) or the like. The interface circuitry 1120 may be configured to transmit and receive information by physical (wired) and wireless communications links. Examples of suitable communication interfaces include a network interface controller (NIC), wireless NIC (WNIC) or the like. The interface circuitry 1120 may have one or more transmitters 1130. The interface circuitry 1120 may have one or more receivers 1140.
[0106] The interface circuitry 1120 can also be connected to a first sensor 1180 and a second sensor 1190. The first sensor 1180 may be a temperature sensor. The second sensor 1190 may be a sensor of interest 1190, such as an accelerometer, a strain gauge, a pressure transducer, and a microphone.
[0107] As indicated above, program code instructions may be stored in memory, and executed by processing circuitry that is thereby programmed, to implement functions of the systems, subsystems, tools and their respective elements described herein. As will be appreciated, any suitable program code instructions may be loaded onto a computer or other programmable apparatus from a computer-readable storage medium to produce a particular machine, such that the particular machine becomes a means for implementing the functions specified herein. These program code instructions may also be stored in a computer-readable storage medium that can direct a computer, a processing circuitry or other programmable apparatus to function in a particular manner to thereby generate a particular machine or particular article of manufacture. The instructions stored in the computer-readable storage medium may produce an article of manufacture, where the article of manufacture becomes a means for implementing functions described herein. The program code instructions may be retrieved from a computer-readable storage medium and loaded into a computer, processing circuitry or other programmable apparatus to configure the computer, processing circuitry or other programmable apparatus to execute operations to be performed on or by the computer, processing circuitry or other programmable apparatus.
[0108] Retrieval, loading and execution of the program code instructions may be performed sequentially such that one instruction is retrieved, loaded and executed at a time. In some example implementations, retrieval, loading and execution may be performed in parallel such that multiple instructions are retrieved, loaded, and executed together. Execution of the program code instructions may produce a computer-implemented process such that the instructions executed by the computer, processing circuitry or other programmable apparatus provide operations for implementing functions described herein.
[0109] Execution of instructions by a processing circuitry, or storage of instructions in a computer-readable storage medium, supports combinations of operations for performing the specified functions. In this manner, a system 1100 may include a processing circuitry 1150 and a computer-readable storage medium or memory 1160 coupled to the processing circuitry, where the processing circuitry is configured to execute computer-readable program code 1170 stored in the memory. It will also be understood that one or more functions, and combinations of functions, may be implemented by special purpose hardware-based computer systems or processing circuitry s which perform the specified functions, or combinations of special purpose hardware and program code instructions.
[0110]
[0111] The present application may, of course, be carried out in other ways than those specifically set forth herein without departing from essential characteristics of the subject matter. The present embodiments are to be considered in all respects as illustrative and not restrictive, and all changes coming within the meaning and equivalency range of the appended claims are intended to be embraced therein.