Have you ever wanted to know somethig that can not be measure? Use an observer.
While controlling a system, such as a bioreactor or an electric motor, it is common to need the measures of different parameters, such as the concentration of a product or the current of the stator. Sometimes these parameters are not available, usually for the lack of measure instruments or the instruments are very expensive. Fortunately, there are systems whose parameters can be known by measuring others parameters.
The algorithm that can stimate unmeasurable parameters is called an observer. Observers study is a branch of automatic control theory and there are many methodologies. Here I will only talk about the main idea of observers.
Luenberger observer
It was proposed by David G. Luenberger, a mathematical scientist and professor in the department of Management Science and Engineering at Stanford University. The main idea of this algorithm is to make a mathematical copy of the original system, so we know all their parameters all the time. These parameters are different from the original system, so we need a parameter of correction, this parameter depends on the parameters that can be measured from the original system.
Its main advantage is that it is simple but, its main disadvantage is that it needs a copy of the original system, that's mean, to perfectly know your original system. A small change can lead to different results. Fortunately, this is a widely used methodology so there are a lot of variants that can handle many issues.
An apologise for control engineers
This article was meant for people that don’t know about control theory so I named the state as parameters to try to make it more understandable. If you know another way to explain this without changing concepts names please let me know.