Abstract:
A method for linearization of the output of an analog-to-digital converter (ADC) is disclosed, the method including the steps of creating an analog ADC input signal by combining a substantially constant voltage to be measured with an analog dithering signal, feeding the analog ADC input signal to the ADC, converting it into a sequence of digital signal values, and using the sequence of digital signal values for calculating a single resulting digital value representing the voltage to be measured, wherein the analog dithering signal is arranged so that the analog ADC input signal fed to the ADC causes the output of the ADC to vary over the full output range of the ADC.

Description:
FIELD OF THE INVENTION 
       [0001]    The present invention relates to a method for linearization of the output of an analog-to-digital converter, a temperature sensor using such method and a heat consumption meter comprising such temperature sensors. 
       BACKGROUND OF THE INVENTION 
       [0002]    It is well-known within the art to use analog-to-digital converters (ADCs) to convert input in the form of a continuous physical quantity, such as an electric voltage, to a digital number that represents the amplitude of this quantity. Since the conversion involves quantization of the input, it introduces a small amount of error. Instead of doing a single conversion, an ADC often performs the conversions (“samples” the input) periodically. The result is a sequence of digital values that have converted a continuous-time and continuous-amplitude analog signal to a discrete-time and discrete-amplitude digital signal. 
         [0003]    The quantization error of the ADC depends on its resolution, i.e. on the number of discrete values it can produce over the range of analog values which, in turn, is decided by the number of bits used by the ADC for representing each digital value. In practice, however, the resolution of an ADC may be improved significantly using well-known methods, such as oversampling of the analog signal and dithering. 
         [0004]    Dither, as known in the art, is a very small amount of random noise (typically white noise), which is added to the input before conversion. Its effect is to cause the state of the least significant bit (LSB) of the ADC output to randomly oscillate between 0 and 1 in the presence of very low levels of input, rather than sticking at a fixed value. 
         [0005]    Rather than the signal simply getting cut off altogether at this low level (which is only being quantized to a resolution of 1 bit), it extends the effective range of signals that the ADC can convert, at the expense of a slight increase in noise. Effectively, the quantization error is diffused across a series of noise values. The result is an accurate representation of the signal over time. A suitable filter at the output of the system can thus recover this small signal variation. Thus, the dithering produces results that are more exact than the LSB of the ADC. 
         [0006]    All ADCs suffer from non-linearity errors caused by their physical imperfections, causing their output to deviate from a linear function. These errors are typically taken care of through calibration of the systems using the ADCs. 
         [0007]    It is important to note that a small amount of dither, as known in the art, can only increase the resolution of an ADC. It cannot improve the integral linearity of the ADC, and thus the absolute accuracy does not necessarily improve. 
       SUMMARY OF THE INVENTION 
       [0008]    It is an object of the present invention to provide a method for linearization of the output of an ADC so that the need for calibration of the system using the ADC is reduced or even eliminated. 
         [0009]    The present invention relates to a method for linearization of the output of an analog-to-digital converter (ADC), said method comprising the steps of creating an analog ADC input signal by combining a substantially constant voltage to be measured with an analog dithering signal, feeding the analog ADC input signal to the ADC for converting it into a sequence of digital signal values, and using the sequence of digital signal values for calculating a single resulting digital value representing the voltage to be measured, wherein the analog dithering signal is arranged so that the analog ADC input signal fed to the ADC causes the output of the ADC to vary over at least 50%, preferably over at least 70%, most preferred over at least 80%, of the full output range of the ADC. 
         [0010]    It should be noted that by the expression “substantially constant voltage to be measured” is to be understood that the voltage can be considered constant during the time it takes to perform a measurement and obtain a single resulting digital value representing the voltage to be measured, whereas the voltage may vary from one measurement to another. 
         [0011]    By letting the ADC input signal vary over most of the output range of the ADC, the non-linearity of the ADC is substantially eliminated. If measurements are performed over a narrow output range only, as is the case in ADC systems known in the art, the non-linearity error overlaying the resulting digital signal value depends on the position of the narrow range within the full output range of the ADC. With the present invention using very broad output ranges, on the other hand, the non-linearity errors accumulated over most of the full output range are substantially the same for each measurement, resulting in an offset of the single resulting digital value, which does not depend on the voltage to be measured. 
         [0012]    In an embodiment of the invention, the sequence of digital signal values for calculating a single resulting digital value comprises at least 100 values, preferably at least 500 values, most preferred at least 1000 values. 
         [0013]    A large number of digital signal values (or samples) is needed in order to be able to get the necessary information from the signal for obtaining a significant improvement of the resolution due to the dithering, such as for instance a 16 bit resolution from a 12 bit ADC. 
         [0014]    In an embodiment of the invention, the analogue dithering signal consists of at least half a period of a substantially sinusoidal signal. 
         [0015]    In an embodiment of the invention, the frequency of the substantially sinusoidal signal is between 50 Hz and 20 kHz, preferably between 200 Hz and 10 kHz, most preferred between 500 Hz and 4 kHz. 
         [0016]    The use of sinusoidal signals, especially with frequencies within the specified ranges, has shown to result in a very high degree of linearity of the relation between the voltages to be measured and the single resulting digital values representing these voltages. 
         [0017]    In an embodiment of the invention, the analog ADC input signal is created either by adding the analog dithering signal to the voltage to be measured or by subtracting the analog dithering signal from the voltage to be measured. 
         [0018]    The preferred method for creating the analog ADC input signal from the voltage to be measured and the analog dithering signal may depend on the type and characteristics of the amplifier circuit used for combining the two signals. 
         [0019]    In an embodiment of the invention, the calculation of the resulting digital value representing the voltage to be measured includes an averaging of the sequence of digital signal values from the ADC. 
         [0020]    If the analog dithering signal is arranged appropriately, the resulting digital value can be calculated through a simple averaging of the values in the sequence of digital signal values from the ADC. 
         [0021]    In an embodiment of the invention, the analog dithering signal is produced using a digital-to-analog converter (DAC). 
         [0022]    In an embodiment of the invention, the ADC and the DAC are both arranged within a single common electronic microcontroller circuit. 
         [0023]    Many modern microcontroller circuits comprise not only an ADC but also one or more DACs within the same circuit, which is advantageous for obtaining cost- and space-efficient solutions. 
         [0024]    In an embodiment of the invention, the microcontroller circuit further comprises a direct memory access module (DMA) arranged to feed data from an electronic memory to the DAC for creation of the analog dithering signal during measurement. 
         [0025]    In order to utilize the capacity of the microcontroller optimally, it is advantageous if some of the core functions of the microcontroller can be switched off during measurement. This can be obtained using a DMA module, which is able to feed data from an electronic memory to the DAC even when such core functions are switched off. 
         [0026]    In an aspect of the invention, it relates to a temperature sensor using the method described above for representing outputs from one or more temperature-dependent electronic components. 
         [0027]    In an embodiment of the invention, the temperature-dependent electronic components include at least one positive temperature coefficient (PTC) resistor and the output therefrom is the voltage across the PTC resistor when a constant and well-defined current runs through the PTC resistor. 
         [0028]    Using PTC resistors, such as platinum elements, is advantageous, because there is a very high degree of linearity between the temperature and the voltage across such a resistor with a given current running through the resistor. 
         [0029]    In an embodiment of the invention, the resistance of the PTC resistor representing the temperature is calculated from the resulting digital value by linear interpolation between two digital reference values, which reference values are found using the method described above for representing the voltage across two resistors, respectively, each of which has a well-defined resistance and using the same constant and well-defined current as used for measuring the voltage across the PTC resistor. 
         [0030]    By finding reference values through measurement across two well-defined resistances just before or after each temperature measurement, it is obtained that no calibration of the temperature sensor is needed, and that the well-defined current only has to be constant during one cycle of finding reference values and the temperature measurement. 
         [0031]    It should be noted that, in order to avoid any contribution from the analog dithering signal when making the linear interpolation, it is important that the analog dithering signal is exactly the same for each of the three measurements performed during the same cycle when finding a digital output value of the ADC for the voltages across the two reference resistors and the positive temperature coefficient resistor, respectively. 
         [0032]    In an aspect of the invention, it relates to a heat consumption meter comprising one or more temperature sensors as described above and a flow meter, in which heat consumption meter the heat energy extracted from a flow of a fluid, such as district heating water, is calculated from the flow of the fluid and the difference between the temperatures of the incoming fluid and the outgoing fluid, respectively. 
         [0033]    In an embodiment of the invention, the flow meter is an ultrasonic flow meter measuring the difference between the transit times of ultrasonic pulses propagating in and against the flow direction, respectively. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0034]    In the following, a few exemplary embodiments of the invention is described in more detail with reference to the figures, of which 
           [0035]      FIG. 1  illustrates schematically the non-linearity of an ADC and the consequences thereof when using systems known in the art, 
           [0036]      FIG. 2  illustrates schematically the missing consequences of such linearity for a system using a method according to an embodiment of the invention, 
           [0037]      FIG. 3  illustrates schematically the configuration of a temperature sensor according to an embodiment of the invention, 
           [0038]      FIG. 4  illustrates how the resistance of a temperature dependent resistor can be found by linear interpolation, and 
           [0039]      FIG. 5  illustrates schematically the configuration of a heat consumption meter according to an embodiment of the invention. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0040]      FIG. 1  illustrates schematically the consequences of the non-linearity of an ADC. 
         [0041]    With the input on the horizontal input axis and the output on the vertical axis, a linear output curve O L  and a non-linear output curve O NL  are shown. The figure illustrates, how the non-linearity means that a first input voltage V 1  results in an output O NL1 , which is different from the output O L1  that would have been the output of a linear ADC. Similarly, a second input voltage V 2  results in an output O NL2 , which is different from the output O L2  that would have been the output of a linear ADC. 
         [0042]    The relations between the actual output values O NL1 , O NL2  and the ideal output values O L1 , O L2  are relative simple, as the actual output values O NL1 , O NL2  are the sums of the ideal output values O L1 , O L2  and non-linearity error values e NL1 , e NL2 : 
         [0000]        O   NL1   =O   L1   +e   NL1   (1)
 
         [0000]        O   NL2   =O   L2   +e   NL2   (2)
 
         [0043]    What should be noted is that the non-linearity error values e NL1 , e NL2  depend on the input voltages V 1 , V 2 . Thus for input voltages in a close range around V 1 , for instance due to dithering with a small amount of white noise for increasing the resolution as known in the art, the non-linearity error value e NL1  is relatively large and positive, whereas for input voltages in a close range around V 2 , the non-linearity error value e NL1  is relatively small and negative. This means that calibration of the system is needed for taking into account the different non-linearity error values e NL1 , e NL2  at different input voltages V 1 , V 2 . 
         [0044]    If, on the other hand, as illustrated schematically in  FIG. 2 , a dithering signal of much larger amplitude than the variations of the input voltage V in  is added to or subtracted from the input signal I to form an analog ADC input signal ADC is  so that the output range O rg  corresponding to the analog ADC input signal ADC is  covers most of the output range of the ADC, the non-linearity errors are accumulated over most of the full output range of the ADC resulting in substantially the same offset added to the output of the ADC for each measurement independent of the input voltage V in . 
         [0045]      FIG. 3  illustrates schematically the configuration of a temperature sensor TS according to an embodiment of the invention. A constant current generator I g  generates an electric current which, through a switching unit SU can be directed through either a first reference resistor R 1 , through a second reference resistor R 2  or through a positive temperature coefficient resistor R PTC . 
         [0046]    The input voltage V in  to be converted by the ADC is measured across the resistor R 1 , R 2 , R PTC  through which this currents runs. Before the input voltage V in  is fed to the ADC, however, an analog dithering signal ds with a large amplitude compared to the variations in the input voltage V in  as described above is subtracted from the input voltage V in  whereby the analog ADC input signal ADC is  is created. 
         [0047]    The analog dithering signal ds, which makes the output from the ADC substantially linear as described above, is created by a digital-to-analog converter DAC, the data for which is provided by a direct memory access module (DMA). The use of a DMA module allows for feeding data to the DAC even when core parts of a microcontroller μC of which the ADC, the DAC and the DMA module are all parts are put out of function. It is advantageous to put those core parts out of function when measuring using the ADC in order to utilize the capacity of the microcontroller μC optimally. Preferably, the dithering signal ds consists of at least half a period of a sinusoidal signal. 
         [0048]    The output from the ADC is forwarded to a CPU, which is part of the same microcontroller μC as is the ADC, the DAC and the DMA module, for further processing and calculations. In preferred embodiments, however, a microcontroller μC with an ADC, which is able to perform an averaging of a sequence of samples without involving the CPU, is used. In that case, the whole measuring process can be carried out without any active current consumption by the CPU. 
         [0049]    The relation between the resistance of the positive temperature coefficient resistor R PTC  of the platinum element type and the temperature follows the “Callendar-Van Dusen” equation. 
         [0050]    The simpler form of this equation is generally valid only over the temperature range between 0° C. and 661° C. and is given as: 
         [0000]        R ( t )= R   0 *(1+ A*t+B*t   2 )  (3)
 
         [0051]    In equation (3), the constants A and B are derived from experimentally determined parameters using resistance measurements made at different temperatures. 
         [0052]    Solving this simple quadratic equation results in the following value of t: 
         [0000]    
       
         
           
             
               
                 
                   t 
                   = 
                   
                     
                       
                         
                           
                             
                               A 
                               2 
                             
                             * 
                             
                               R 
                               0 
                               2 
                             
                           
                           - 
                           
                             4 
                             * 
                             B 
                             * 
                             
                               R 
                               0 
                               2 
                             
                           
                           + 
                           
                             4 
                             * 
                             B 
                             * 
                             R 
                             * 
                             
                               R 
                               0 
                             
                           
                         
                       
                       - 
                       
                         A 
                         * 
                         
                           R 
                           0 
                         
                       
                     
                     
                       2 
                       * 
                       B 
                       * 
                       
                         R 
                         0 
                       
                     
                   
                 
               
               
                 
                   ( 
                   4 
                   ) 
                 
               
             
           
         
       
     
         [0053]    Thus, if the actual resistance Ω PTC  of R PTC  (corresponding to R in equation (4)) is known, the temperature can be calculated from this equation. 
         [0054]    Due to the offset added to the output from the ADC because of the use of the dithering signal ds as described above, the simple linear relation between the current running from the constant current generator I g  through the positive temperature coefficient resistor R PTC  and the output from the ADC according to Ohm&#39;s Law is no longer valid. 
         [0055]    However, taking the substantial linearity of the ADC into account, the actual resistance Ω PTC  of R PTC  can be calculated by simple linear interpolation if the two reference resistors R 1  and R 2  are chosen to have resistances just outside the resistance range of the positive temperature coefficient resistor R PTC  corresponding to the relevant temperature range. Making three subsequent measurements with the three resistors R 1 , R 2  and R PTC , respectively, using the same value of the current from the constant current generator I g  results in three output values O R1 , O R2  og O PTC , respectively, from the ADC, the latter being between the two first ones as illustrated in  FIG. 4 . 
         [0056]    If Ω R1 , Ω R2  og Ω PTC  denote the resistances of the three resistors R 1 , R 2  and R PTC , respectively, the resistance Ω PTC  of the positive temperature coefficient resistor R PTC  can be found using the following equation: 
         [0000]    
       
         
           
             
               
                 
                   
                     Ω 
                     PTC 
                   
                   = 
                   
                     
                       Ω 
                       1 
                     
                     + 
                     
                       
                         ( 
                         
                           
                             Ω 
                             2 
                           
                           - 
                           
                             Ω 
                             1 
                           
                         
                         ) 
                       
                       * 
                       
                         ( 
                         
                           
                             
                               O 
                               PTC 
                             
                             - 
                             
                               O 
                               
                                 R 
                                  
                                 
                                     
                                 
                                  
                                 1 
                               
                             
                           
                           
                             
                               O 
                               
                                 R 
                                  
                                 
                                     
                                 
                                  
                                 2 
                               
                             
                             - 
                             
                               O 
                               
                                 R 
                                  
                                 
                                     
                                 
                                  
                                 1 
                               
                             
                           
                         
                         ) 
                       
                     
                   
                 
               
               
                 
                   ( 
                   5 
                   ) 
                 
               
             
           
         
       
     
         [0000]    and the temperature can be calculated using equation (4) by substituting Ω PTC  for the value R therein. 
         [0057]    In some embodiments, the temperature sensor TS comprises more than one positive temperature coefficient resistor R PTC  and, optionally, also more than one set of reference resistors R 1 . R 2  so that temperatures at different positions can be measured using the same microcontroller μC. 
         [0058]    The configuration of a heat consumption meter HCM comprising one or more such temperature sensors TS is illustrated schematically in  FIG. 5 . 
         [0059]    The illustrated heat consumption meter HCM calculates the heat consumption of a heat exchanger HE in a domestic household connected to a district heating system from repeated measurements of the temperatures T in  and T out  of the incoming and outgoing district heating water, respectively, and of the flow of district heating water through the system. The two temperatures T in , T out  are preferably measured using a temperature sensor TS with two positive temperature coefficient resistors R PTC  as described above, whereas the flow of district heating water can be measured using an appropriate flow meter FM, such as an ultrasonic flow meter. 
         [0060]    The formulas used by the heat consumption meter HCM for calculating the heat consumption from a sequence of such measured temperature and flow values are well-known within the art and are defined by recognized standards and recommendations relating to heat consumption meters, such as for instance the OIML R 75 recommendation issued by the OIML (International Organization of Legal Metrology). 
       LIST OF REFERENCE NUMBERS 
       [0000]    
       
         ADC. Analog-to-digital converter 
         ADC is . Analog ADC input signal 
         CPU. Central processing unit 
         DAC. Digital-to-analog converter 
         DMA. Direct memory access module 
         ds. Dithering signal 
         e NL1 . Error value due to non-linearity at a first input voltage 
         e NL2 . Error value due to non-linearity at a second input voltage 
         FM. Flow meter 
         HCM. Heat consumption meter 
         HE. Heat exchanger 
         I g . Constant current generator 
         O L . Linear output curve 
         O L1 . Ideal output for a first input voltage 
         O L2 . Ideal output for a second input voltage 
         O NL . Non-linear output curve 
         O NL1 . Actual output for a first input voltage 
         O NL2 . Actual output for a second input voltage 
         O PTC . Output using PTC resistor 
         O R1 . Output using first reference resistor 
         O R2 . Output using second reference resistor 
         O rg . Output range corresponding to analog ADC input signal 
         R 1 . First reference resistor 
         R 2 . Second reference resistor 
         R PTC . Positive temperature coefficient resistor 
         SU. Switching unit 
         T in . Temperature of incoming district heating water 
         TS. Temperature sensor 
         T out . Temperature of outgoing district heating water 
         V in . Input voltage 
         V 1 . First input voltage 
         V 2 . Second input voltage 
         Ω PTC . Resistance of PTC resistor 
         Ω R1 . Resistance of first reference resistor 
         Ω R2 . Resistance of second reference resistor 
         μC. Electronic microcontroller