OCTOBER 2015 « IEEE CONTROL SYSTEMS MAGAZINE 91 LECTURE NOTES « 1066-033X/15©2015IEEE T he design of observers is usually considered a grad- uate-level topic and therefore tends to be taught in a graduate-level control engineering course. However, several recent editions of standard undergraduate control- system textbooks cover full-order, and even reduced-order, observers [1]–[9]. Observers are also used in their own right to strictly observe the state variables of a dynamic system rather than to be used for feedback control (for example, in an experiment whose state variables have to be monitored, observed, or estimated at all times). This tutorial is primarily for undergraduate students and their instructors as a supplement to textbooks, labora- tory manuals, and project design assignments. This tutorial is intended to be a self-contained and complete presentation of full- and reduced-order observer designs drawn from several undergraduate and graduate textbooks. Elementa- ry knowledge of state-space and linear algebra is assumed. In addition, this article attempts to resolve challenges that undergraduate students are faced with while implement- ing full- and reduced-order observers in Matlab/Simulink. The implementation part of the tutorial demonstrates » how to input full- and reduced-order observer system, input, and output matrices using Simulink state-space blocks and how to determine dimensions of the observer output matrices (they are either identity or zero matrices) » how to find proper full- and reduced-order observer feedback gains » how to set observer initial conditions. To that end, two novel theoretical results have also been developed: how to set up the reduced-order initial condi- tions using the least-squares method, derived in (38)–(40), and an observation that the reduced-order observer output is identical to the original system’s actual output, the result established in (36). This tutorial is also useful for practicing engineers and scientists interested in controlling or observing linear dynamic systems. This tutorial has been used, in various forms, by the author and her colleagues over several years at several academic institutions: Rutgers University; Villa- nova University; California State University, Los Angeles; American University of Sharjah; University of Belgrade; and Lafayette College. Hopefully, by understanding full- and reduced-order observer design and Matlab/Simulink implementation, students, instructors, engineers, and scientists will appre- ciate the importance of observers and feel confident using observers and observer-based controllers in numerous en- gineering and scientific applications. In undergraduate classes on control systems, time invari- ant linear systems are represented, in state-space form, by () () ( ), ( ) , dt dx t Ax t Bu t x x 0 0 = + = (1) where () xt is the state-space vector of dimension , n () ut is the system input vector (which may be used as a sys- tem control input) of dimension , m and matrices A and B are constant and of appropriate dimensions. In practice, the initial condition is often unknown, in which case an observer is designed, [1]–[9], to estimate or observe system state-space variables at all times. To take the advantage of the useful features of feedback (see, for example, [10, Chap. 12]), it is often assumed that all state variables are available for feedback (full-state feedback), allowing that a feedback control input can be applied as ( ( )) ( ), uxt Fx t =- (2) where F is a constant feedback matrix of dimension . m n # The fact that all state-space variables must be available for feed- back is a prevalent implementational difficulty of full-state feedback controllers. Moreover, large-scale systems with full-state feedback have many feedback loops, which might become very costly and/or impractical. Moreover, often not all state variables are available for feedback. Instead, an output signal that represents a linear combination of the state-space variables is available () , yt Cx t = ^h (3) where () () dim dim yt l n xt < . = = " " , , It is assumed that , rank l c C = = " , so there are no redundant measurements. In such a case, under certain conditions, an observer can be designed that is a dynamic system driven by the system input and output signals with the goal of reconstructing Full- and Reduced-Order Linear Observer Implementations in Matlab/Simulink Digital Object Identifier 10.1109/MCS.2015.2449691 Date of publication: 16 September 2015 VERICA RADISAVLJEVIC-GAJIC