Abstract:
An arrangement for controlling a system according to the deviation between the value measured on the system and the value estimated by means of a model of the controlled system of at least one control parameter is disclosed. The arrangement comprises a neural network, which generates the estimation of the control parameter according to a set of characteristic parameters of the controlled system and of respective configuration parameters. The neural network has associated thereto a training module, which can train said neural network by modifying said configuration parameters according to a set of updating data. An acquisition module acquires the actual value, as measured on the controlled system, of a set of sensing parameters comprising at least one from among said control parameter and said characteristic parameters of the controlled system. A variation module is sensitive to the variation of said control parameter and generates an update-enable signal when the control parameter falls outside a pre-set tolerance range. The acquisition module being sensitive to said update-enable signal for transferring to the training module, as updating-data set, said set of sensing parameters. A preferential application is for the control of fuel-cell stacks.

Description:
FIELD OF THE INVENTION  
         [0001]    The present invention relates to the control of systems and has been developed with particular attention paid to its possible application for the control of stacks of fuel cells, which are used in the automotive sector. However, the invention is in itself of general application and can be therefore applied to the control of physical systems of any type.  
         BACKGROUND OF THE INVENTION  
         [0002]    A stack of fuel cells is an energy converter of an electrochemical type which receives at input hydrogen and oxygen and supplies at output current to a load. Transformation takes place without combustion. From the physical standpoint, the fuel cell consists of an electrolytic material (either liquid or solid) sandwiched between two electrodes having the function of cathode and anode. The input fuel passes across the anode, and the oxygen passes across the cathode. The input fuel is catalytically decomposed into ions, which traverse the electrolyte, and electrons, which flow along an external path closed by the load. Ions and electrons recombine on the cathode forming waste products, consisting basically in water.  
           [0003]    For the control of fuel cells (or of physical systems with an equivalent behaviour) there currently exist various of models aimed at determining the output voltage by means of techniques of a quantitative type, which are based upon chemical and physical laws. The corresponding models, which are derived from theoretical considerations, take into account a number of variables (e.g., cell temperature, partial pressure of the input oxygen, current delivered) but are not robust nor are they easy to handle. Consequently, they are not well suited for use in practical cases.  
           [0004]    In practice, the models in question can be brought down to one or more equations which identify, for example, the value of the voltage supplied by the fuel-cell stack as a function of the values of current and temperature and of other factors, such as the pressure of the oxygen, the pressure of the air at input to the stack, etc. Usually, such models comprise one or more equations, each of which refers to given ranges of variation of the input parameters.  
           [0005]    Above all in automotive sector applications, the use of electric vehicles is spreading, and, in particular, the use of hybrid fuel-cell and battery electric vehicles.  
           [0006]    In the above context, management of the energy sources and, in particular, of the fuel-cell stack is of fundamental importance, above all in relation to management of the energy flows between sources and loads. In order to carry out proper management of resources, it is important to evaluate the correct operation of the energy resources which are to be handled by the control system.  
           [0007]    In addition, it is necessary to take into account the fact that, in the automotive context, the applications must also be reconciled with requirements of simplicity of implementation so as to avoid excessive costs and overall dimensions, at the same time meeting the somewhat stringent demands of reliability also in rather hostile environments of application.  
         OBJECT AND SUMMARY OF THE INVENTION  
         [0008]    The object of the present invention is to provide a control system capable of meeting in an optimal way the requirements outlined above.  
           [0009]    According to the present invention, the said object is achieved thanks to a system having the characteristics referred to specifically in the claims that follow.  
           [0010]    In the context of application to which reference has been made previously (which, it is emphasized, is not the only context to which the invention can be applied) the solution according to the invention enables a control structure based upon an adaptive neural model of a fuel-cell stack to be obtained, with the purpose of achieving more efficient diagnostic and control techniques on the said system.  
           [0011]    In the currently preferred embodiment, a specific part of the control system updates the neural model, in the case where, on account of the variation of external and internal parameters of the stack, this is no longer able to represent accurately operation of the corresponding device.  
           [0012]    The neural model is used for comparing its own output with that of the real system, for the purposes of control and diagnostics. If the deviation persists over time and is substantial, the model can be updated. Verification is made via an analysis of the significant quantities of the stack stored in a database. The control system uses the same data present in the database to train the neural network and update the neural model of the stack.  
           [0013]    The system enables prediction of the operation of the stack by means of an artificial neural network which represents a powerful system-identification tool, whilst, at the same time, it is easy and fast to implement thanks to the currently available means for processing signals of a numeric type. The system further provides a self-updating model and achieves first a considerable level of flexibility with respect to possible variations in operation of the system, also in relation to possible evolutions of the system represented, for example, by the use of stacks of different power.  
           [0014]    At least in the currently preferred embodiment, the solution according to the invention gives rise to a system based upon the use of powerful modelling techniques represented by neural networks. The latter represent an effective identification tool, which is simple to implement and does not require a knowledge of the physical phenomena that underlie the physical system to be modelled.  
           [0015]    The neural model of the fuel-cell stack is self-updating and consequently presents a considerable robustness towards parametric variations of the system.  
           [0016]    In addition, no intervention is envisaged on the real system consisting of the fuel-cell stack, which is a device that, for its operation, requires a complex set of auxiliary elements, so that the diagnostics of the system is no simple task.  
           [0017]    The solution according to the invention enables management of the energy resources represented by the stack in an optimal way, since at any instant it enables evaluation of proper operation thereof. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0018]    The invention will be now be described, purely by way of non-limiting example, with reference to the attached drawings, in which:  
         [0019]    [0019]FIG. 1 illustrates, in the form of a block diagram, the structure of a control system according to the invention;  
         [0020]    FIGS.  2  to  4  illustrate in greater detail the structure of some of the elements represented in FIG. 1;  
         [0021]    [0021]FIG. 5 is a schematic illustration of the execution of the function of training the neural network, with updating of the corresponding weights and bias variables; and  
         [0022]    [0022]FIG. 6 is a block diagram which refers to a generalization of the solution according to the invention. 
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0023]    In the diagram of FIG. 1, the reference number  10  designates, as a whole, a hardware/software control system based upon a self-updating artificial neural model of the electrical behaviour of a controlled system. The said controlled system, in the example to which FIGS.  1  to  5  refer, is assumed as being made up of a fuel-cell stack (of a known type) in normal operating conditions.  
         [0024]    The system  10 , by evaluating the deviation from the operation of the stack from its own model, enables more efficient implementation of techniques of diagnostics and management of the energy resource represented precisely by the stack, this being done taking into account that the controlled system has an operation the may vary over time on account of wear and/or following upon variations of certain parameters either internal or external to the system itself.  
         [0025]    Consequently, the solution according to the invention envisages another structure which works alongside the neural model of the stack in order to identify possible variations of operation thereof due to any one of the causes cited above, in order to update the model of the stack accordingly.  
         [0026]    In the context of the diagram of FIG. 1, three sets of blocks designated by  1 ,  2  and  3  can be distinguished.  
         [0027]    Starting—for reasons of simplicity of treatment—from the set  3 , the set itself basically represents the controlled “sub”-system represented, in the example of embodiment here illustrated, by the fuel-cell stack.  
         [0028]    The corresponding operation can be described as a whole by resorting to a representation in which the system S has a first input constituted by the supply of hydrogen H 2  and another input constituted by the supply of air A. The said inputs are characterized by known values of pressure and flow rate. In particular, in the diagram, a sensor PA is represented, which detects the air flow, generating a corresponding signal, which is sent to the input of the system  10 .  
         [0029]    A multiplexer, designated by MUX 1 , is provided at the input of the system for receiving, in addition to the flow-rate signal Q generated by the sensor PA, also a signal T which identifies the temperature of the stack generated by a sensor TS, as well as a signal I generated by an amperometric sensor A connected to the output of the stack.  
         [0030]    The signal I indicates the electrical current delivered by the stack. This quantity constitutes, together with the voltage VR supplied by the stack, detected by a voltmetric sensor V, the set of outputs of the stack S.  
         [0031]    The hydrogen supply H 2  and the air supply A can be considered as sent to the input of the stack S via a module which basically amounts to a multiplexer MUX 2 .  
         [0032]    To complete the description of the set of blocks  3 , the reference E designates a summation node (with sign), to which there are sent, with opposite signs, a value of estimated voltage VS produced by the set  1 , which will be described in greater detail in what follows, and the actual output voltage VR of the stack detected by the sensor V.  
         [0033]    In this way, the set  3  generates an error signal ERR which represents the deviation between the voltage VR measured by the sensor V and the voltage VS estimated by the model represented by the set  1 . The error signal ERR can be used by other systems (not illustrated, but of a known type) associated to the stack S for different purposes, for example for diagnostic purposes.  
         [0034]    The set of blocks designated by  2  receives at input, in addition to the signals T (stack temperature), I (stack output current) and Q (air-supply flow rate) coming from the multiplexer MUX 1 , also the signal indicating the actual voltage of the stack generated by the sensor V.  
         [0035]    The set  2  basically comprises a block  21  that functions as a database in which, under the supervision of a block  22 , which functions as the control system proper, there are stored sensing data corresponding to some significant quantities of operation of the stack S, such as, precisely, the temperature T of the stack, the generated current  1 , the air flow rate Q and the actual voltage VR of the stack. The values of said sensing data are stored in the database  21  under the control of a control system  22 .  
         [0036]    According to criteria which will be illustrated more fully in what follows, the system  22  carries out an analysis of the possible variation of the data contained in the database  21 . If said analysis reveals that the neural model of the electrical operation of the stack S is no longer satisfactory on account of internal or external variations of the input parameters, the control system  22  uses the sensing data stored in the database  21  to carry out a (new) step of training and validation of the neural network upon which the set  1  is based.  
         [0037]    More specifically, said set comprises a neural network  12  which defines the model proper of the controlled system. Associated to the neural network  12  is a training module designated, as a whole, by  11 . The neural network  12  receives at input the signals coming from the multiplexer MUX 1  and generates, starting from said signals, the value of estimated voltage VS which is to be sent (with positive sign) to the summation node E to which the value of actual voltage generated by the sensor V is sent with a negative sign. Operation of the neural network  12  is determined by the values of the weights W and of the bias B produced by the module  11 , which receives at input signals generated by two modules  222  and  223  that constitute the respective sub-blocks of the block  22 .  
         [0038]    Before examining the structure of the above two sub-blocks, it is expedient to examine, with reference to the diagram of FIG. 2, the structure of the sub-block  221 .  
         [0039]    The above sub-block  221  basically comprises, as input stage, a network  2210  comprising a series of comparators  2210   a  followed by a network of AND logic gates designated, as a whole, by  2210   b.    
         [0040]    To the input of the network in question there are sent the sensing signals represented by the current signal  1 , air-flow signal Q, and temperature signal T of the stack, referred to previously.  
         [0041]    The threshold comparators  2210   a  compare the value of each of said input signals with the maximum and minimum limits respectively of corresponding ranges of values: I max , I min ; Q max , Q min ; T max , T min . In the case of the current signal  1 , said minimum value I min  is zero.  
         [0042]    The AND gates process (according to criteria which are evident from the drawing and are obvious to a person skilled in the sector and hence are such as not to require a detailed description herein) the output signals of the threshold comparators  2210   a  so as to verify whether the signals I, Q and T fall within the operating ranges envisaged, the aim being to drive an enable line  2211  in order to enable the signals I, Q and T to be stored (in the form of values IC, QC, TC rounded off according to a given quantization step) in a functional module  2212 .  
         [0043]    The reference number  2213  designates the set of blocks which supervise the rounding-off function under the control of a clock signal CLK, the rate of which identifies, in effect, the rate of updating of the data stored in the database  21 .  
         [0044]    The signal CLK moreover drives, through a sample-and-hold block  2214  the transfer, sampled in time with a hold function, of the actual voltage VR in the form of a corresponding voltage value Va.  
         [0045]    The block  2212  implements a function F(I C , Q C , T C ) which calculates, from the discretized values I C , Q C , and T C , a memory address h in which to store the corresponding voltage value V h . In other words, the function F identifies a bi-unique correspondence between the input set (I C , Q C , T C ) and the address h.  
         [0046]    The sampled actual-voltage signal V h  is thus stored in the database  21 . On the basis of the value of the address h, the values V h  are stored in the corresponding memory location.  
         [0047]    In particular, at the memory address marked by h=F(I C , Q C , T C ) different values of the voltage V h  measured with the same input set (I C , Q C , T C ) are stored. The mean value of such samples at one and the same address h is designated by V h, m .  
         [0048]    Using, for example, a 32-bit memory, it is possible to store a considerable amount of data, which is sufficient for a good training of the network.  
         [0049]    As is illustrated in FIG. 3, the sensing data thus stored are to be selectively read by the database  21  in order for them to be supplied as updating data, via the block  222 , to the training block  11 . This occurs upon reception of an enabling signal EU generated by the block  223 , which will be described in greater detail in what follows.  
         [0050]    Upon reception of the signal EU generated by the block  223 , the block  222  fetches the aforesaid data DATA from the database  21  and sends them onto respective outputs V t , I t , Q t , and T t  (as values of voltage, current, air flow, and temperature, respectively), supplying them to a further multiplexer MUX 3 , which transfers them to the module  11 .  
         [0051]    The diagram of FIG. 4 illustrates the criteria which regulate generation of the signal EU by the module  223 .  
         [0052]    In particular, at input to the module  223 , the voltage value of the current model, at the k-th input (designated by V k, a ) is compared with the mean value V k, m .  
         [0053]    Specifically, V k, m  is nothing other than the mean value of the aforesaid samples at the generic address k. V k, a  is, instead, the voltage value supplied by the current model stored at the memory address k. Of course, k is linked to the input set (I C′ ,Q C′ ,T C′ ) by the relation k=F(I C′ , Q C′ , T C′ ).  
         [0054]    If the difference, calculated for each input by a respective subtraction module designated generically by  223   k  (k=1, . . . , n), is larger than a given pre-set tolerance, which is established in a module  224   k  and is applied by means of a window circuit  225   k  and according to a comparison threshold  226   k,  a corresponding flag fk (with k again equal to 1, . . . , n) is set equal to 1. If the sum of the flags, calculated in a block  227 , is greater than a threshold value Z (fixed by a block  228  as the maximum number of voltage samples allowed outside the tolerance), according to the comparison performed in a block  229 , pre-determined restoring and operation procedures (e.g., hydrogen purging, water purging, addition of water, etc.) are enabled.  
         [0055]    The above operations are identified, as a whole, by the block designated as  230 .  
         [0056]    At the same time, a timer  231  is started up.  
         [0057]    At the end of the count of the timer, if the signal ER continues to indicate the fact that the sum of the flags is greater than the tolerance value Z (a circumstance that is detected by an AND logic gate  232 ), the signal EU is generated and the values V k, a  are updated with the new values V k, m .  
         [0058]    The above operation is carried out by means of an AND logic gate, designated by  233 .  
         [0059]    The diagram of FIG. 5 represents the criteria with which the quantities I t , Q t , T t , V t  fetched from the database  21  by the module  222  are exploited, upon reception of the signal EU by the training module  11  of the set  1 .  
         [0060]    The function of the training in question is to generate the signals regarding the weights W and bias B which are to be exploited (in a known way, on the basis of criteria which are such as not to require a specific description herein) by the functions for activation of the neurons N of the neural network  12  for generating at output the estimated-voltage signal VS as a function of the signals for current I, flow rate Q, and temperature T received via the multiplexer MUX 1 .  
         [0061]    The training function  11  basically consists of a training tool  110 , which receives at input, upon reception of the signal EU, the set of training data I t , Q t , T t  used by the tool  110  to train (according to criteria in themselves known) the neural network  12  reproduced at the level of a virtual model  12 ′ in the context of the training tool itself.  
         [0062]    At the end of training, the tool  110  generates a signal ET, indicating the end of the training step, which enables updating of the weights and bias variables, transferring the virtual model  12 ′ into the real neural model of the stack designated by  12 .  
         [0063]    The tests conducted by the applicant show that the structure described, with the adaptive neural model, presents evident benefits chiefly linked to the fact that the neural model predicts, more accurately than does the analytical model, the output voltage of the stack S.  
         [0064]    The diagram of FIG. 6 aims at illustrating the fact that the invention thus far described can be extended to the control of any physical system S whatsoever which can be modelled by means of a neural network  12  with a training module  11  associated thereto which sees to updating the configuration data WB of the neural network  12 .  
         [0065]    This is achieved according to an update-enable signal EU generated by a control system  22  which supervises operation of a database  21 , in which the operation parameters of the controlled system S are stored in the corresponding memory as filtered (rounded-off) data IF so as to be fetched as updating data when the control system  22  detects the need for carrying out updating.  
         [0066]    Apart from the above features, the symbols appearing in FIG. 6 have the same meaning or a meaning that is functionally equivalent to the symbols appearing in FIG. 1.  
         [0067]    In particular, the reference E designates the node to which there are sent (with corresponding sign) the signal VS estimated by the neural model  12  (estimated signal, which does not necessarily represent a voltage) and the actual signal VR (also in this case it may be any quantity whatsoever other than a voltage) measured on a controlled system S.  
         [0068]    In the diagram of FIG. 6, the references  11  and  12  designate in general the inputs of the control system  22  of the neural network  12 , on the one hand, and of the controlled system, on the other.  
         [0069]    As compared to the specific case previously illustrated with reference to FIGS.  1  to  5 , in the more general diagram of FIG. 6 the nature and the number of inputs I 1  and I 2  can be any whatsoever, as likewise the output VR of the real system S and the output VS estimated by the model  12 . The functions of the context proposed remain in any case unaltered.  
         [0070]    With reference to the acquisition, filtering and discretization (sensing) functions of the quantities represented in FIG. 2, in the case of the generalized model of FIG. 6, instead of the quantities I, T, Q and VR, which represent the most significant inputs and the output of the system S, the most significant inputs of the controlled system are taken into account. The functions of rounding-off and storage-address calculation (blocks  2113  and  2112 ) maintain their task of discretization of the most significant inputs and calculation of the addresses where the samples are stored in the database  21 .  
         [0071]    Also the operation of data storing and data fetching for them to be used by the training tool  11  remain unaltered as compared to the diagram represented in FIG. 3. Of course, as compared with the specific case represented precisely in FIG. 3, it is necessary to take into account the nature and the number of inputs and outputs of the blocks represented, in an altogether generic manner, in FIG. 6.  
         [0072]    Also for the evaluation of the parametric variations and the generation of the updating signal EU of the neural network, the procedure is the one illustrated with reference to FIG. 6.  
         [0073]    It will be appreciated that carrying-out of the operations of restoring the block  230  of FIG. 4 (e.g., hydrogen purge, water purge, addition of water, etc.) are not imperative either in the specific case represented in FIG. 4, or in the more general case represented in FIG. 6.  
         [0074]    The said operations are hence maintained only if the system in question envisages execution of restoring operations, which, however, in many cases are not envisaged.  
         [0075]    Then above corresponds, in effect, to the elimination, with respect to the diagram of FIG. 4, both of the block  230  and of the timer  231  that detects the interval after which the possible maintenance of the conditions out of threshold is to be detected.  
         [0076]    As regards execution of the training operations (updating of the weights and of the bias variables), the general operating principles remain the same, there existing, however, the evident need to change the input/output mapping (I t , T t , Q t , V t ).  
         [0077]    Of course, without prejudice to the principle of the invention, the details of implementation and the embodiments may be amply varied with respect to what is described and illustrated herein, without thereby departing from the scope of the present invention, as defined in the annexed claims.