Abstract:
A method of controlling a current flowing through a load including the steps of: applying a first transfer function representative of the load to a first voltage to obtain a second voltage; applying the second voltage to a first terminal of a circuit for generating the current; sampling a third voltage between first and second terminals of the load; comparing the third voltage with the second voltage; and determining the current to be supplied to the load according to the result of the comparison.

Description:
PRIORITY CLAIM 
       [0001]    This application claims the priority benefit of French application for Patent No. 1651114, filed on Feb. 11, 2016, the disclosure of which is hereby incorporated by reference in its entirety to the maximum extent allowable by law. 
       TECHNICAL FIELD 
       [0002]    The present disclosure generally relates to electronic circuits, and more particularly to current control devices for loads having an unknown current-vs.-voltage characteristic. 
       BACKGROUND 
       [0003]    Current control devices for unknown loads generally comprise a current source which imposes the current in the load and a resistor which enables to regulate the current in the unknown load. The resistor induces a significant energy loss. 
         [0004]    It is thus needed to improve the energy performance of current control devices for unknown loads. 
       SUMMARY 
       [0005]    Thus, an embodiment provides improving the electric power consumption of current control devices of loads having an unknown current-vs.-voltage characteristic. 
         [0006]    An embodiment provides a method of controlling a current flowing through a load, comprising the steps of: applying a first transfer function representative of the load to a first voltage to obtain a second voltage; applying the second voltage to a first terminal of a circuit for generating said current; sampling a third voltage between first and second terminals of the load; comparing the third voltage with the second voltage; and determining the current to be supplied to the load according to the result of the comparison. 
         [0007]    According to an embodiment, the first transfer function is determined by the steps of: a) coupling the second terminal of the load to a resistor coupled to a terminal of application of a ground; b) initializing the first transfer function; c) constructing a second transfer function representative of the load by determining, for a plurality of values of the first voltage, the value of the current for which the value of the voltage sampled across the load is equal to the value of the first voltage having the first transfer function applied thereto; d) using a function inverse of the second function to update the first function; e) repeating steps c) and d) until a condition is fulfilled; f) coupling the second terminal of the load to the terminal of application of the ground. 
         [0008]    According to an embodiment, the initialization of the first function is performed so that for any value of the first voltage, the resultant of the transfer function is the actual value of the control voltage. 
         [0009]    According to an embodiment, the initialization of the first function is performed by a first estimate of the characteristic of the load. 
         [0010]    According to an embodiment, the inverse of the second function is calculated by an interpolation algorithm. 
         [0011]    According to an embodiment, the inverse of the second function is calculated by calculating coefficients of a polynomial. 
         [0012]    According to an embodiment, step c) comprises the steps of: c1) for each value of the first voltage, applying the first function to obtain the second voltage; c2) applying the second voltage to the first input terminal of the circuit for generating the current; c3) applying the current in the load so that the voltage sampled across the load is equal to the second voltage; c4) sampling a fourth voltage across the resistor; c5) calculating the current flowing through the load and the resistor by dividing the fourth voltage by said resistance. 
         [0013]    According to an embodiment, the condition is considered as fulfilled when at least the result of an operation of composition of the first function with the second function is approximately equal to identity. 
         [0014]    According to an embodiment, steps a) to f) are repeated periodically. 
         [0015]    According to an embodiment, steps a) to f) are repeated when the operating conditions change. 
         [0016]    According to an embodiment, a plurality of first functions are determined according to different operating conditions. 
         [0017]    According to an embodiment, the load has its first terminal coupled to an output terminal of the current generation circuit, its second terminal being coupled to a terminal of application of the ground. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0018]    The foregoing and other features and advantages will be discussed in detail in the following non-limiting description of specific embodiments in connection with the accompanying drawings, wherein: 
           [0019]      FIG. 1  shows an example of a usual device for controlling the current in a load; 
           [0020]      FIG. 2  shows an embodiment of a device for controlling the current in a load; 
           [0021]      FIG. 3  shows different steps of a training method implemented in the embodiment described in  FIG. 2 ; 
           [0022]      FIG. 4  shows an example of a microprocessor executing instructions of the embodiment of  FIG. 2  or of the method of  FIG. 3 ; and 
           [0023]      FIG. 5  shows a configuration of the device of  FIG. 2  in standard operating mode. 
       
    
    
     DETAILED DESCRIPTION 
       [0024]    The same elements have been designated with the same reference numerals in the different drawings. For clarity, only those elements which are useful to the understanding of the described embodiments have been shown and are detailed. In the present description, term “connected” is used to designate a direct electric connection, with no intermediate electronic component, for example, by means of one or a plurality of conductive tracks or of one of a plurality of conductive wires, and term “coupled” or term “linked” is used to designate either a direct electric connection (then meaning “connected”) or a connection via one or a plurality of intermediate components (resistor, diode, capacitor, etc.). 
         [0025]      FIG. 1  shows a usual example of a current control device in a load having an unknown current-vs.-voltage characteristic. The device comprises a power converter  101 , a load LOAD, and a resistor  102  of value R, in series between a first terminal  103  of application of a power supply potential VCC and a terminal  104  of connection to ground GND. Power converter  101  further comprises a first input terminal  105  having a control Voltage VCOM′ applied thereto, a second input terminal  106  coupled to the terminal of resistor  102  which is not connected to ground, and an output terminal  107  coupled to a terminal  108  of load LOAD. 
         [0026]    Load LOAD and resistor  102  conduct the same current ILOAD to within the error sampled by the second input terminal of converter  101 . The error may be zero according to the nature of the input stage coupled to terminal  106 . The value of a voltage VSENSE′ across resistor  102  is equal to the product of the value of current ILOAD by value R of the resistor. Voltage VSENSE′ thus is an image of current ILOAD flowing through load LOAD. 
         [0027]    When a control voltage VCOM′ is applied to first input terminal  105  of the power converter, the latter compares this voltage with voltage VSENSE′ present on its second input terminal  106 . The power converter thus determines the value of current ILOAD delivered to load LOAD to cancel the difference between voltages VCOM′ and VSENSE′. 
         [0028]    Such a device thus enables to control the current delivered in a load of unknown characteristic according to a control voltage. The disadvantage of this device is the energy loss due to the current flowing through resistor  102 . 
         [0029]    According to the embodiments described hereafter, it is thus provided to decrease energy losses due to the resistor. 
         [0030]      FIG. 2  shows an embodiment of a current control device in a load having an unknown current-vs.-voltage characteristic. 
         [0031]    The device comprises a power converter  201 , a load LOAD, and a resistor  202  of value R, in series between a first terminal  204  of application of a power supply potential VCC and a terminal  206  of connection to ground GND. Power converter  201  further comprises a first input terminal  208  having a voltage VCOMPPRED applied thereto, a second input terminal  210  coupled to a sensor  212  of the value of voltage VLOAD across load LOAD, and an output terminal  214  coupled to a terminal  216  of load LOAD. Another terminal  218  of load LOAD coupled to resistor  202  is also coupled to a terminal of a switch  220  having its other terminal connected to ground. 
         [0032]    First input terminal  208  of power converter  201  is on the one hand coupled to a block  222  (f PRED (VCOM)) which applies a transfer function f PRED  to a voltage VCOM present on an input terminal  224 . Terminal  208  is on the other hand coupled to an input terminal  226  of a circuit  228  (LOOK-UP TABLE) providing the correspondence between a voltage and a current from a table stored in a memory internal or external to circuit  228 . Circuit  228  comprises another input terminal  230  coupled to terminal  218  of load LOAD. Circuit  228  may comprise one or a plurality of analog-to-digital converters to convert the analog signals present at its input terminals  226  and  230  into digital signals. Other embodiments may comprise one or more external analog-to-digital converters. Load LOAD and resistor  202  conduct the same current ILOAD to within the error of the current sampled by input terminal  230  of look-up circuit  228 . The value of current ILOAD is thus obtained by division of a voltage VSENSE across resistor  202  by value R of the resistor: ILOAD=VSENSE/R. Look-up circuit  228  provides, for each value of VCOMPRED, the value of the corresponding current ILOAD. 
         [0033]    An output terminal of circuit  228  is coupled to an input terminal  236  of a calculation block  232  (INTERPOLATION f −1   LOAD ) which calculates a function and its inverse function. An output terminal of calculation block  232  is coupled to a second input terminal  234  of block  222  of application of transfer function f PRED . 
         [0034]      FIG. 4  shows an example of a microprocessor  401  integrating blocks  222 ,  232  and circuit  228  of  FIG. 2 . The microprocessor comprises terminals  224 ,  208 ,  226 , and  230  of  FIG. 2 . The microprocessor also controls the state of switch  220  of the same drawing. 
         [0035]      FIG. 3  shows different steps of a training (calibration) method executed by the device of  FIG. 2 . These steps are for example controlled by a microprocessor which executes the functions of blocks  222 ,  232 , and  228  and which controls the state of switch  220 , as illustrated in  FIG. 4 . 
         [0036]    At a first step S 1  (SWITCH  220  OFF), switch  220  is turned off. At a second step S 2  (INIT f pred  Id), the transfer function of block  222  is initialized so that, for a voltage VCOM applied to input  224 , output voltage VCOMPRED is equal to input voltage VCOM. At next steps S 3  (VCOM) and S 4  (VCOMPRED=f pred (VCOM)), transfer function f pred  of block  222  is applied to voltage VCOM present on terminal  224  to obtain voltage VCOMPRED. At a step S 5  (DETERMINATION OF ILOAD SUCH THAT VCOMPRED=VLOAD), power converter  201  compares voltage VCOMPRED present on terminal  208  to voltage VLOAD present on terminal  210 , and adjusts current ILOAD in the load to cancel the difference between the 2 voltages. 
         [0037]    One thus has, at equilibrium, VLOAD=VCOMPRED and ILOAD=VSENSE/R. At a step S 6  (STORE ILOAD &amp; VLOAD), values VCOMPRED (that is, VLOAD) and ILOAD are respectively stored in look-up circuit  228  via terminals  226  and  230 . 
         [0038]    At a step S 7  (ENOUGH VCOM VALUES?), the microprocessor assesses whether a sufficient number of voltage values VCOM has been applied to the device. If not (output N of block S 7 ), at a step S 12  (NEW VCOM), a new value of VCOM is applied and it is returned to step S 3 . The number of values to be applied to the device depends on the targeted application, according, for example, to the range of currents/voltages where the load is desired to be used. There may exist other criteria. An embodiment is to generate the different values of voltage VCOM in the form of a ramp, but other methods may be envisaged. 
         [0039]    Due to the different iterations, look-up circuit  228  contains a description of a characteristic f LOAD  of load LOAD such that: ILOAD=f LOAD (VLOAD). 
         [0040]    When the number of values VCOM is sufficient (output Y of block S 7 ), then, at a step S 8  ((VCOM−ILOAD)/VCOM&lt;Error?)), it is assessed whether an error condition is fulfilled. 
         [0041]    In an embodiment, the condition to be fulfilled is to have a transfer function f pred  equal to an inverse function of function f LOAD  which represents the characteristic of the load defined to within an error; or in other words, that the result of an operation of composition of f pred  by function f LOAD  describing the characteristic of load LOAD is approximately equal to identity. 
         [0042]    If this condition is fulfilled (output Y of block S 8 ), it is then proceeded to a step S 11  (SWITCH  220  ON) where switch  220  is turned on. 
         [0043]    In the opposite case (output N of block S 8 ), it is then proceeded to a step S 9  (CALCULATE f −1   LOAD ). 
         [0044]    At step S 9 , calculation block  232  recovers the information describing characteristic f LOAD  via terminal  230 . The values describing characteristic f LOAD  in look-up circuit  228  are discrete by construction. A first operation of the calculation block thus is to make the description of the characteristic discontinuous. An embodiment of this operation is to use an interpolation method. Another embodiment is to calculate the coefficients of a polynomial to describe the characteristic. The details of interpolation algorithms or of calculation of coefficients of a polynomial are not discussed to describe a function. A second operation performed by block  232  is the calculation of inverse function f −1   LOAD  of characteristic f LOAD . This step may be performed by a simple transposition operation. Other methods may be used. An embodiment provides making the characteristic continuous in a first step and then calculating the inverse function in a second step. Another embodiment is to first perform the transposition operation and then the operation of interpolation or of polynomial coefficient calculation. 
         [0045]    At a step S 10  (UPDATE f PRED =f −1   LOAD ), transfer function f PRED  of block  224  is updated by substituting thereto function f −1   LOAD  calculated at step S 9 : 
         [0000]        f   PRED   =f   −1   LOAD . 
         [0046]    It is then returned to step S 3 . 
         [0047]    A practical example of such a training method is described hereafter. 
         [0048]    Switch  220  is switched off at step S 1 . 
         [0049]    Function f PRED  is initialized to an Identity function at step S 2 . 
         [0050]    After steps S 3 , S 4 , S 5 , S 6 , and S 7  repeated a sufficient number of times, for different values of voltage VCOM applied to terminal  224  of block  222  of application of transfer function f PRED , one has stored in circuit  228  values VLOAD and ILOAD such that: 
         [0051]    VLOAD=VCOMPRED with VCOMPRED=f PRED (VCOM) and VCOMPRED=VCOM since f PRED =Id 
         [0052]    That is: 
         [0000]        V LOAD= V COM  (Equation 1)
 
         [0000]      and  I LOAD= V SENSE/ R   (Equation 2)
 
         [0053]    These values describe characteristic f LOAD  of the load. 
         [0054]    At step S 8 , the error condition is not fulfilled since (VCOM−ILOAD)/VCOM is greater than a threshold Error: 
         [0055]    ILOAD=f LOAD (VLOAD) with VLOAD=VCOM according to (Equation 1) 
         [0056]    Indeed: ILOAD=f LOAD (VCOM) 
         [0057]    Whereby the error: 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       ( 
                       
                         VCOM 
                          
                         
                           - 
                         
                          
                         ILOAD 
                       
                       ) 
                     
                     / 
                     VCOM 
                   
                   = 
                   
                     
                       ( 
                       
                         VCOM 
                          
                         
                           - 
                         
                          
                         
                           
                             f 
                             LOAD 
                           
                            
                           
                             ( 
                             VCOM 
                             ) 
                           
                         
                       
                       ) 
                     
                     / 
                     VCOM 
                   
                 
               
             
             
               
                 
                   = 
                   
                     1 
                     - 
                     
                       
                         
                           f 
                           LOAD 
                         
                          
                         
                           ( 
                           VCOM 
                           ) 
                         
                       
                       / 
                       VCOM 
                     
                   
                 
               
             
           
         
       
     
         [0058]    Microprocessor  401  then proceeds to step S 9 . 
         [0059]    At steps S 9  and S 10 , the microprocessor calculates inverse function f −1   LOAD  of f LOAD  and updates function f PRED  according to: 
         [0000]        f   PRED ( V COM)= f   −1   LOAD ( V COM)+ε1( V COM)  (Equation 3)
 
         [0060]    ε1 being an error function. 
         [0061]    The microprocessor then returns to step S 3  with a new defined transfer function f PRED . 
         [0062]    At steps S 3 , S 4 , S 5 , S 6 , S 7 , S 12 , repeated a number of times necessary for the desired application, quantities ILOAD and VLOAD enabling to describe characteristic f Load  of load LOAD are constructed and stored again. This amounts to storing: 
         [0063]    ILOAD=VSENSE/R such that VLOAD=VCOMPRED; 
         [0064]    Now, VLOAD=f PRED (VCOM). 
         [0065]    By using (Equation 3): 
         [0000]        V LOAD= f   −1   LOAD ( V COM)+ε1( V COM)
 
         [0066]    The value of ILOAD can be deduced: 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       
                         ILOAD 
                         = 
                           
                          
                         
                           
                             
                               f 
                               LOAD 
                             
                              
                             
                               ( 
                               VLOAD 
                               ) 
                             
                           
                           . 
                         
                       
                     
                   
                   
                     
                       
                         = 
                           
                          
                         
                           
                             f 
                             LOAD 
                           
                            
                           
                             ( 
                             
                               
                                 
                                   f 
                                   LOAD 
                                   
                                     - 
                                     1 
                                   
                                 
                                  
                                 
                                   ( 
                                   VCOM 
                                   ) 
                                 
                               
                               + 
                               
                                 ɛ 
                                  
                                 
                                     
                                 
                                  
                                 1 
                                  
                                 
                                   ( 
                                   VCOM 
                                   ) 
                                 
                               
                             
                             ) 
                           
                         
                       
                     
                   
                   
                     
                       
                         = 
                           
                          
                         
                           
                             
                               f 
                               LOAD 
                             
                              
                             
                               ( 
                               
                                 
                                   f 
                                   LOAD 
                                   
                                     - 
                                     1 
                                   
                                 
                                  
                                 
                                   ( 
                                   VCOM 
                                   ) 
                                 
                               
                               ) 
                             
                           
                           + 
                           
                             
                               f 
                               LOAD 
                             
                              
                             
                               ( 
                               
                                 ɛ 
                                  
                                 
                                     
                                 
                                  
                                 1 
                                  
                                 
                                   ( 
                                   VCOM 
                                   ) 
                                 
                               
                               ) 
                             
                           
                         
                       
                     
                   
                   
                     
                       
                         
                           ILOAD 
                           = 
                             
                            
                           
                             VCOM 
                             + 
                             
                               δ 
                                
                               
                                   
                               
                                
                               1 
                                
                               
                                 ( 
                                 VCOM 
                                 ) 
                               
                             
                           
                         
                         , 
                       
                     
                   
                 
               
               
                 
                   ( 
                   
                     Equation 
                      
                     
                         
                     
                      
                     4 
                   
                   ) 
                 
               
             
           
         
       
     
         [0067]    δ1 being an error function. 
         [0068]    At the end of a number of iterations (branch Y of step S 7 ), a function ILOAD has thus been described: 
         [0000]        I LOAD= V COM+δ1( V COM).
 
         [0069]    At step S 8 , the error relative to threshold Error is assessed: 
         [0000]      ( V COM− I LOAD)/ V COM=δ1( V COM)/ V COM
 
         [0070]    If δ1(VCOM)/VCOM&lt;Error for all the browsed VCOM, it is then proceeded to step S 11 . 
         [0071]    In the opposite case, at steps S 9  and S 10 , a new function f PRED  is calculated and stored and it is returned to step S 3  for a new iterations, that is, an execution of steps S 3 , S 4 , S 5 , S 6 , S 7 , S 12  a given number of times to obtain a description of a function: 
         [0000]        I LOAD= V COM+δ2( V COM),
 
         [0072]    δ2 being an error smaller than error δ1 for all the values of VCOM. 
         [0073]    The new error: 
         [0074]    (VCOM−ILOAD)/VCOM=δ2(VCOM)/VCOM will thus be smaller than the previous error. 
         [0075]    Along the iterations, error (VCOM−ILOAD)/VCOM decreases to become smaller than threshold Error for all the values of VCOM. 
         [0076]    It is then proceeded to step S 11 , during which switch  220  is turned on, which ends the training phase. 
         [0077]    In an embodiment, the look-up table of circuit  228  is initialized by a first estimate of the characteristic of the load, which provides a faster convergence of the training phase. 
         [0078]    At the end of the training phase, the device of  FIG. 2  switches to a standard operating mode, as shown in  FIG. 5 . 
         [0079]      FIG. 5  differs from  FIG. 2  in that terminal  218  of load LOAD previously coupled to terminal  206  of connection to ground GND through resistor  202  is now directly grounded, due to the action of switch  220 . Indeed, the switch is sized so that, when it is turned on, its electric operation is equivalent to that of a series resistor of negligible value as compared with the value of resistor R. Blocks  232  and  228  are not shown, since they are not active during the standard operating mode. 
         [0080]    During the above-described training phase, a transfer function f PRED  which is applied to any control voltage VCOM present on input terminal  224  of the device has been constructed. It has been seen that this function performs a pre-distortion so that any voltage VCOM is matched by the transfer function with a voltage VCOMPRED which corresponds to the application of a current ILOAD such that VCOMPRED=VLOAD. 
         [0081]    In standard operating mode, the device thus control current ILOAD flowing through load LOAD according to a voltage VCOM present on its input terminal  224  without using resistor  202 , which provides an energy performance gain. 
         [0082]    In an embodiment, a resistor  202  of greater value than in usual devices for controlling the current in a load is used, which has the advantage of increasing the accuracy of the regulation with no penalty in terms of energy performance. 
         [0083]    In an embodiment, to take into account variations of operating conditions, the training phase is repeated periodically or after an event. The trigger event may be the detection of a variation of temperature, of the power supply voltage, or of any other parameter affecting the operating conditions. 
         [0084]    In an embodiment, a training phase is carried out for different operating conditions, for example, different operating temperatures, and the different transfer functions corresponding to each of the operating conditions are stored. When the operating conditions change, the corresponding transfer function is charged without going through a new training phase. 
         [0085]    Specific embodiments have been described. Various alterations, modifications, and improvements will readily occur to those skilled in the art. 
         [0086]    Such alterations, modifications, and improvements are intended to be part of this disclosure, and are intended to be within the spirit and the scope of the present invention. Accordingly, the foregoing description is by way of example only and is not intended to be limiting. The present invention is limited only as defined in the following claims and the equivalents thereto.