Next Article in Journal
Relationship Between Front Crawl Trunk Incline and Lower Limbs’ Biomechanics in Non-Expert Swimmers
Previous Article in Journal
Evaluating Cybersecurity Risks of Bulgaria’s Energy Sector: Focus on PV and HVAC-R
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Discrete-Time Asymptotic Tracking Control System for a Satellite with a Solar Panel

by
Zbigniew Emirsajłow
Department of Automatic Control and Robotics, West Pomeranian University of Technology, Al. Piastów 17, 70-310 Szczecin, Poland
Appl. Sci. 2025, 15(12), 6674; https://doi.org/10.3390/app15126674
Submission received: 27 April 2025 / Revised: 24 May 2025 / Accepted: 28 May 2025 / Published: 13 June 2025
(This article belongs to the Section Robotics and Automation)

Abstract

The aim of this work is to develop a discrete-time control algorithm that allows the attitude angle of a satellite with an attached solar panel to track a prescribed periodically changing reference signal with zero asymptotic error. Using the concept of the general regulation theory for the state space setup, combined with a time discretization procedure based on the Cayley–Tustin transformation, we derive an error feedback controller. In our control analysis, we prove and explore several system-theoretic properties that are preserved under this continuous-to-discrete time transformation. The obtained discrete-time controller is then applied as a digital control system, demonstrating zero asymptotic tracking error. The theoretical results are tested on a numerical example and computations are performed within the MATLAB R2024b environment, confirming the highly useful nature of the developed approach. The controller also shows some robustness with respect to parametric uncertainty in the satellite model.

1. Introduction

At present, satellite technology has become widely accessible. Earth observation satellites must perform complicated tasks with high requirements for reliability and accuracy. The attitude control of observation microsatellites (typically 50–100 kg) becomes significantly more complex when appendages such as solar panels or antennas are added, as such appendages alter their inertia and often behave like flexible structures that can vibrate or oscillate. These structural dynamics couple with the satellite’s rigid body motion and introduce several technical challenges, especially in the context of high-precision pointing missions. These increasingly stringent requirements regarding pointing accuracy must be achieved despite high flexibility of the satellite structure, environmental disturbances (e.g., magnetic field vibrations and residual atmosphere), limited space for high-quality sensors and actuators, power constraints, and limited computational resources. Possible solutions include the miniaturization of sensors and actuators through the use of MEMS and the development of advanced modeling and control strategies based on AI/ML as robust and adaptive predictive algorithms. The present study falls into the category of advanced control theory, as we develop a discrete-time control algorithm that allows the attitude of a satellite with a solar panel to track a prescribed reference signal with zero asymptotic error.

1.1. Related Works

Usual synthesis methods for attitude control systems present limitations that can be circumvented through the use of modern advanced control design strategies. In recent years, this has become an active area of research for both control theorists and aerospace engineers. For an engineering point of view on the attitude control system for an observation satellite, we refer the reader to [1,2]. For a good review of applications of advanced control algorithms from an engineering perspective, see [3] and the references cited therein.
The paper [4] addressed the challenges posed by flexible appendages by proposing a damper to mitigate vibrations, ensuring high-accuracy attitude control despite structural flexibilities. Many authors have employed PDE-based mathematical models of satellites with flexibility to model vibrations and developed sophisticated suppression algorithms for attitude control problems; see, for example, [5,6,7,8,9]. Appendages increase the surface area exposed to aerodynamic drag, solar radiation pressure, and gravity gradient torques. These external disturbances increase the burden on the attitude control system, and handling these disturbances requires efficient design and control strategies. As traditional PID controllers are insufficient for this purpose, there is a growing need for model-based control, adaptive control, and robust AI/ML-based control methods. In a study [10], the authors introduced robust observer-based methods to isolate and identify actuator faults in microsatellite attitude control systems, accounting for various space disturbance torques and gyro drifts. The proposed methodologies enhance the reliability and safety of on-orbit microsatellites. In turn, [11] considered a PDE–ODE model of a flexible satellite that is composed of two identical flexible solar panels and a central rigid body. For this model, the authors constructed two internal model-based controllers—a passive controller and an observer-based controller—such that the linear and angular velocities of the central rigid body converge to the given sinusoidal signals. The work [12] investigated the use of deep reinforced learning to control satellites with under-actuated systems, where trained neural network-based policies were shown to enable satellites to perform large-angle maneuvers even in the case of actuator failures.
The present study falls into the category of advanced control theory, as we develop a discrete-time control algorithm that allows the attitude angle of a satellite with an attached solar panel to track a prescribed periodically changing reference signal with zero asymptotic error. We work within the framework of the general regulation theory for the state space setup (see, e.g., [13,14]) and combine it with the Cayley–Tustin transformation (see, e.g., [15,16]). As an example, the Cayley–Tustin transformation has been used in the context of the satellite attitude control problem in order to discretize continuous-time transfer functions, thus enabling digital implementation, as well as in the context of satellite signal processing (see, e.g., [17,18]). However, the combination of the Cayley–Tustin transformation and general regulators for the purpose of satellite attitude control seems to be novel. The main reason for using the general regulation theory is that it is tailored to the design of controllers for error tracking control systems with time-varying reference signals and zero asymptotic tracking error. At the same time, the resulting controllers are robust with respect to parametric uncertainties in the associated model and can handle disturbances. This approach has been successfully applied to continuous-time control systems for satellite attitude asymptotic tracking; see [19,20]. This study takes the above-mentioned results into consideration, which cover continuous-time controllers, in order to develop a discrete-time error feedback controller. The obtained discrete-time controller is then applied in a digital control system with zero-order hold. The theoretical results are tested on a numerical example and computations are performed within the MATLAB environment, confirming the efficiency and robustness of the developed approach. The main advantage of combining the Cayley–Tustin time discretization procedure with the sophisticated general regulation theory is the preservation of important system-theoretic properties (see, e.g., [21]), which immensely helps in studying the underlying discrete-time control problems.

1.2. Organization of This Paper

This paper is organized into six sections. Section 1 provides an introduction to the subject and briefly reviews the existing literature on satellite attitude control. Section 2 introduces the satellite model under consideration and presents a preliminary formulation of the asymptotic tracking control problem. In Section 3, we develop continuous-time and discrete-time state space models and examine their properties, which are essential for our further considerations. Section 4 is the most substantial part of the paper, where we formally define the discrete-time control problem to be solved and systematically develop the discrete-time controller for satellite attitude tracking with zero asymptotic error. The tool used to solve the problem is the discrete-time version of the general regulator theory. Section 5 presents the results of numerical computations, demonstrating the effectiveness of the obtained theoretical discrete-time results in the digital control system with zero-order hold. MATLAB R2024b and its Control Systems Toolbox are used as the computational environment. Some concluding remarks are given in Section 6, which completes this paper.

2. Preliminary Formulation of the Control Problem

We start with an explanation of the control problem in the continuous-time setting, then we use the mid-point rule for integration to develop discrete-time models for the satellite and the controller. For more details regarding the continuous-time case control problem, we refer the reader to [19,20].
We consider the simplified model of an earth observation satellite with a solar panel shown in Figure 1.
The rotation of a satellite with an attached solar panel around the y -axis can be modeled as an under-actuated mechanical system with two degrees of freedom. Hence, the system is governed by the following differential equations:
Σ G : I α ¨ ( t ) = k ( β ( t ) α ( t ) ) + b ( β ˙ ( t ) α ˙ ( t ) ) + τ ( t ) , p β ¨ ( t ) = k ( β ( t ) α ( t ) ) b ( β ˙ ( t ) α ˙ ( t ) ) ,
where t 0 denotes the time. Descriptions of all signals and parameters are given in Table 1.
For the purpose of control, we refer to the satellite with a solar panel as the plant, to the driving torque τ ( t ) as the plant input (or control), and to the satellite attitude angle α ( t ) as the plant output. We assume that the attitude α ( t ) is the only signal to be measured. According to the physical meaning of the model parameters, we assume that I > 0 , p > 0 , k > 0 , and b 0 . We could assume b > 0 , but we deliberately allow b = 0 to see how a lack of damping influences the properties of the plant. A short derivation of the model (1) can be found in Appendix A.
In order to state the control problem in continuous time, we assume that we are given the following sinusoidal reference signal:
α r ( t ) = a sin ω r t , a > 0 , ω r > 0 ,
and we define the control error as follows:
e ( t ) = α ( t ) α r ( t ) .
The control goal in continuous time is to design an error feedback control system to asymptotically track the reference signal α r ( t ) via the plant output α ( t ) ; that is,
lim t e ( t ) = 0 .
As we want our results to be ready for digital implementation, we carry out the design work in the discrete-time domain:
t = i h , i N = 0 , 1 , 2 , 3 , ,
where h > 0 is the discrete time step. In order to keep everything precise, we will always use the superscript ( · ) d to distinguish between an approximated sample f d ( i h ) and the exact sample f ( i h ) of the continuous-time signal f ( t ) ; that is, f ( t ) | t = i h = f ( i h ) f d ( i h ) .
As the main step in our considerations, we will formulate and study the control problem in the discrete-time domain. For this reason, we introduce the discrete-time input torque ( τ d ( i h ) ) i N , the discrete-time output angle ( α d ( i h ) ) i N , the discrete-time reference ( α r d ( i h ) ) i N , and the discrete-time control error
e d ( i h ) = α d ( i h ) α r d ( i h ) , i N ,
as the discrete-time approximations of the discrete-time samples ( τ ( i h ) ) i N , ( α r ( i h ) ) i N , ( α ( i h ) ) i N and ( e ( i h ) ) i N of the continuous-time counterparts ( τ ( t ) ) t 0 , ( α r ( t ) ) t 0 , ( α ( t ) ) t 0 , and ( e ( t ) ) t 0 , respectively.
First, we will derive and analyze the system properties of the continuous-time state space model of the plant Σ G ; that is,
Σ G : x ˙ ( t ) α ( t ) = A B C 0 x ( t ) τ ( t ) .
Then, using the mid-point rule for approximation of the state integral (equivalent to the Cayley–Tustin transformation), we develop a discrete-time state space model  Σ G d of the plant in the following form:
Σ G d : x d ( ( i + 1 ) h ) α d ( i h ) = A d B d C d D d x d ( i h ) τ d ( i h ) ,
where ( x d ( i h ) ) i N R n is the state of the plant. We make use of generalized regulation theory to derive a discrete-time state space dynamic error feedback controller in the following form:
Σ K : x K ( ( i + 1 ) h ) τ d ( i h ) = A K B K C K 0 x K ( i h ) e d ( i h ) ,
where ( x K ( i h ) ) i N R n K , n K is the order of the controller and the error ( e d ( i h ) ) i N is the only signal available to the controller.
The control goal in the discrete-time domain is to design the error feedback control system to asymptotically track the reference signal ( α r d ( i h ) ) i N via the plant output ( α d ( i h ) ) i N ; that is,
lim i e d ( i h ) = 0 .
It follows from (6), (8), and (9) that the discrete-time control system we want to design as the main step is the unit feedback control system shown in Figure 2.
Our ultimate goal is to implement the discrete-time controller Σ K , obtained in the main step, in the digital control system with the continuous-time plant Σ G and the zero-order hold Z O H , as shown in Figure 3.
Remark 1.
Note that in the digital control system in Figure 3, ( α r ( i h ) ) i N are computed samples of the reference signal (2), ( α ( i h ) ) i N are measured samples of the real output ( α ( t ) ) t 0 , ( e ( i h ) ) i N is the computed discrete-time signal feeding the discrete-time controller Σ K , e ( i h ) represents computed samples of the continuous-time error signal e ( t ) = α ( t ) α r ( t ) , ( τ ( i h ) ) i N is the computed discrete-time signal provided by the controller Σ K , and ( τ ( t ) ) t 0 is the continuous-time signal generated by ZOH, which feeds the real continuous-time plant Σ G .

3. Plant State Space Models and Their Properties

As we mainly employ state space methods, we start with a continuous-time state space model of the plant Σ G , then we develop its time discretization.

3.1. Plant Continuous-Time State Space Model and Its Properties

The plant is described by the system of second-order differential equations in (1). We introduce the following standard state variables:
x ( t ) = x 1 ( t ) x 2 ( t ) x 3 ( t ) x 4 ( t ) = α ( t ) β ( t ) α ˙ ( t ) β ˙ ( t ) , t 0 ,
and we obtain the plant state space model  Σ G in the following form:
Σ G : x ˙ ( t ) α ( t ) = A B C 0 x ( t ) τ ( t ) ,
where the state space matrix is given as follows:
A B C 0 = 0 0 1 0 0 0 0 0 1 0 k I k I b I b I 1 I k p k p b p b p 0 1 0 0 0 0 .
The characteristic polynomial of A is given as follows:
det ( λ I A ) = λ 2 ( λ 2 + ( b p + b I ) λ + k p + k I ) ,
and the spectrum σ ( A ) —namely, the set ( λ l ( A ) ) l = 1 4 of eigenvalues of A —is given as follows:
σ ( A ) = λ 1 ( A ) λ 2 ( A ) λ 3 ( A ) λ 4 ( A ) = 1 2 b p + b I + 1 2 2 b p + b I 2 k p + k I 1 2 b p + b I 1 2 2 b p + b I 2 k p + k I 0 0 .
For b > 0 , we have σ ( A ) C j R , and for b = 0 , we only have σ ( A ) j R , where C denotes the open left half-plane and j R is the imaginary axis. Moreover, for the plant Σ G , the controllability of ( A , B ) can be checked using the controllability matrix W , and the observability of ( C , A ) can be checked using the observability matrix V . Namely, we have
det W = k 2 I 4 p 2 0 , det V = k 2 I 2 0 ,
for all values of parameters I , p , k , and b with physical meaning. The controllability and observability imply that the zeros of Σ G are the roots ( s l ( Σ G ) ) l = 1 l = 2 of the following polynomial:
C adj ( s I A ) B = 1 I ( s 2 + b p s + k p ) ,
which are given as follows:
s 1 ( Σ G ) = b 2 p b 2 p 2 k p , s 2 ( Σ G ) = b 2 p + b 2 p 2 k p .
For b > 0 , we have ( s l ( Σ G ) ) l = 1 l = 2 C j R and for b = 0 we have ( s l ( Σ G ) ) l = 1 l = 2 j R .

3.2. Plant Discrete-Time State Space Model

For the discrete time
t = i h , i N ,
where h > 0 is the discrete-time step, we integrate over the intervals ( i h , ( i + 1 ) h ) on both sides of the state space model (12) and obtain the following:
i h ( i + 1 ) h x ˙ ( t ) d t = A i h ( i + 1 ) h x ( t ) d t + B i h ( i + 1 ) h τ ( t ) d t , i h ( i + 1 ) h α ( t ) d t = C i h ( i + 1 ) h x ( t ) d t , i N .
Approximating the state integral according to the mid-point rule and introducing simplified notation for the integrals of input and output,
i h ( i + 1 ) x ( t ) d t h 2 ( x ( i h ) + x ( ( i + 1 ) h ) ) , i h ( i + 1 ) τ ( t ) d t = τ i n t , i h ( i + 1 ) α ( t ) d t = α i n t ,
we can rewrite (20) as follows:
x d ( ( i + 1 ) h ) x d ( i h ) = h 2 A ( x d ( i h ) + x d ( ( i + 1 ) h ) ) + B τ i n t , α i n t = h 2 C ( x d ( i h ) + x d ( ( i + 1 ) h ) ) .
We use the superscript ( · ) d to emphasize that x d ( i h ) are not exact samples x ( i h ) of x ( t ) but instead their approximations. As for all values of parameters with physical meaning ( I , p , k , and b ), the matrix A satisfies the following condition:
σ ( A ) C j R ,
it follows that, for all h > 0 , the parameter μ satisfies μ > 0 and
μ = 2 h σ ( A ) .
Consequently, there exists an inverse matrix ( μ I A ) 1 , where I is the identity matrix. The meaning of the parameter μ is the double sampling frequency. After simple manipulations, (22) takes the equivalent form:
x d ( ( i + 1 ) h ) = ( μ I A ) 1 ( μ I + A ) x d ( i h ) + μ ( μ I A ) 1 B τ i n t = ( I + 2 μ ( μ I A ) 1 ) x d ( i h ) + μ ( μ I A ) 1 B τ i n t , α i n t = 2 C ( μ I A ) 1 x d ( i h ) + C ( μ I A ) 1 B τ i n t .
In order to ensure symmetry between the input and output matrices of the discrete-time state space model, we approximate the last two integrals in (21) as follows:
τ i n t h τ d ( i h ) = 2 μ τ d ( i h ) , α i n t h α d ( i h ) = 2 μ α d ( i h ) .
If we now substitute (26) into (25), then we finally obtain the following discrete-time state space model  Σ G d of the plant:
Σ G d : x d ( i + 1 ) = A d ( μ ) x d ( i ) + B d ( μ ) τ d ( i ) , x d ( 0 ) = x ( 0 ) = x 0 , α d ( i ) = C d ( μ ) x d ( i ) + D d ( μ ) τ d ( i ) ,
where
A d ( μ ) : = ( μ I A ) 1 ( μ I + A ) , B d ( μ ) : = 2 μ ( μ I A ) 1 B , C d ( μ ) : = 2 μ C ( μ I A ) 1 , D d ( μ ) : = C ( μ I A ) 1 B ,
and we have dropped h in order to simplify the notation for x d ( i h ) , τ d ( i h ) , and α d ( i h ) .

3.3. Properties of the Discrete-Time State Space Model

The described transformation from the continuous-time state space model to the discrete-time one is known to preserve several system-theoretic properties of the model (see, e.g., [21]). The most important features—which we make use of in our considerations—are described below. We provide proofs for these, as the results are of independent interest in the general context of regulation theory.

3.3.1. Spectrum of A d

For the matrix A d , we have the following:
A d = ( μ I + A ) ( μ I A ) 1 , μ σ ( A ) .
Hence, for λ C ,
λ I A d = λ ( μ I A ) ( μ I A ) 1 ( μ I + A ) ( μ I A ) 1 = ( μ ( λ 1 ) ( λ + 1 ) A ) ( μ I A ) 1
which, for λ 1 , leads to the following:
1 λ + 1 ( λ I A d ) ( μ I A ) = μ λ 1 λ + 1 I A .
For the determinants of both sides, we obtain the following:
1 λ + 1 det ( λ I A d ) det ( μ I A ) = det ( μ λ 1 λ + 1 I A ) .
As det ( μ I A ) 0 , then
det ( λ I A d ) = 0 if and only if det ( μ λ 1 λ + 1 I A ) = 0 .
This means that, if 1 σ ( A d ) , then the eigenvalues ( λ l ( A d ) ) l = 1 l = 4 and ( μ l ( A ) ) l = 1 l = 4 are related to each other by the following equality:
μ l ( A ) = μ λ l ( A d ) 1 λ l ( A d ) + 1 , l = 1 , 2 , 3 , 4 ;
or, equivalently, if μ l ( A ) μ (it is always satisfied by (24)), then
λ l ( A d ) = μ + μ l ( A ) μ μ l ( A ) , l = 1 , 2 , 3 , 4 .
If we introduce the notation μ l ( A ) = Re μ l + j Im μ l , then (35) implies that
| λ l ( A d ) | = ( μ + Re μ l ) 2 + ( Im μ l ) 2 ( μ Re μ l ) 2 + ( Im μ l ) 2 ,
which indicates that
| λ l ( A d ) | < 1 if and only if Re μ l ( A ) < 0 , | λ l ( A d ) | = 1 if and only if Re μ l ( A ) = 0 , | λ l ( A d ) | > 1 if and only if Re μ l ( A ) > 0 .
The general meaning of the above results is that the considered transformation preserves the internal stability (or instability) of the plant.

3.3.2. Controllability and Observability of Σ G d

We will show that, for μ > 0 , the controllability and observability of the continuous-time plant model ( A , B , C , 0 ) are preserved for the discrete-time model ( A d , B d , C d , D d ) under the considered transformation (28). In order to prove this statement, we use the Hautus test, which implies that ( A , B ) is controllable if and only if the following condition holds:
rank [ μ l ( A ) I A B ] = 4 , l = 1 , 2 , 3 , 4 ,
and ( C , A ) is observable if and only if
rank μ l ( A ) I A C = 4 , l = 1 , 2 , 3 , 4 .
In order to prove the required equivalence, we start with (31); that is,
1 λ + 1 ( λ I A d ) ( μ I A ) = μ λ 1 λ + 1 I A , λ C { 1 } .
Using (40), we easily obtain the following:
1 λ + 1 λ I A d B d = 1 λ + 1 ( μ I A ) 1 μ λ 1 λ + 1 I A 2 μ B .
Hence,
rank λ I A d B d = rank μ λ 1 λ + 1 I A 2 μ B = rank μ λ 1 λ + 1 I A B .
This implies, due to (34), that
rank λ l ( A d ) I A d B d = rank μ l ( A ) I A B = 4 , l = 1 , 2 , 3 , 4 ;
that is, ( A d , B d ) is controllable for all parameters I > 0 , p > 0 , k > 0 , and b 0 (recall (16)). In turn, the observability of ( C d , A d ) follows easily from the following relation:
1 λ + 1 λ I A d C d = 1 λ + 1 μ λ 1 λ + 1 I A 2 μ C ( μ I A ) 1 ,
which leads to the following condition:
rank λ l ( A d ) I A d C d = rank μ l ( A ) I A C = 4 , l = 1 , 2 , 3 , 4 .
Although it is not needed in our considerations, the relations (43) and (45), combined with (37), imply that stabilizability and detectability are also preserved under the transformation.

3.3.3. Transfer Function of Σ G d

We already know from (31) that for z C { 1 } , we have the following:
1 z + 1 ( z I A d ) ( μ I A ) = μ z 1 z + 1 I A .
It follows that z σ ( A d ) if and only if μ z 1 z + 1 σ ( A ) and, so, we can transform (46) to the following form:
( z I A d ) 1 = 1 z + 1 ( μ z 1 z + 1 I A ) 1 ( μ I A ) .
Using (28) and (47), we have the following:
C d ( z I A d ) 1 B d + D d = 2 μ z + 1 C ( μ I A ) 1 ( μ z 1 z + 1 I A ) ( μ I A ) ( μ I A ) 1 B + C ( μ I A ) 1 B ,
and the right-hand side of (48) can be transformed as follows:
C ( μ I A ) 1 [ 2 μ z + 1 ( μ z 1 z + 1 I A ) 1 + ( μ z 1 z + 1 I A ) ( μ z 1 z + 1 I A ) 1 ] B = C ( μ I A ) 1 [ 2 μ z + 1 z + 1 I + μ z 1 z + 1 I A ] ( μ z 1 z + 1 I A ) 1 B = C ( μ I A ) 1 [ μ z + 1 z + 1 I A ] ( μ z 1 z + 1 I A ) 1 B = C ( μ z 1 z + 1 I A ) 1 B .
Thus, we have proved that, for μ > 0 and z C { 1 } , the following equality holds:
G d ( z ) = C d ( μ ) ( z I A d ( μ ) ) 1 B d ( μ ) + D d ( μ ) = C ( s I A ) 1 B = G ( s ) ,
where G d ( z ) and G ( s ) are the transfer functions of Σ G d and Σ G , respectively, and z and s are related to each other by the following equality:
s = μ z 1 z + 1 ;
or, equivalently, for s μ :
z = μ + s μ s .

3.3.4. Zeros and Invertibility of Σ G d

As the transfer function of Σ G d is given by
G d ( z ) = L d ( z ) M d ( z ) = C d adj ( z I A d ) B d + det ( z I A d ) D d det ( z I A d ) ,
then the zeros of Σ G d are the roots ( z l ) l = 1 l = 2 of the polynomial
L d ( z ) = C d adj ( z I A d ) B d + det ( z I A d ) D d .
Using (52), they can be computed as follows:
z l ( Σ G d ) = μ + s l ( Σ G ) μ s l ( Σ G ) , l = 1 , 2 ,
where ( s l ( Σ G ) ) l = 1 l = 2 are the zeros of Σ G , given by (18).
Furthermore, for all μ > 0 , the feedthrough term D d ( μ ) 0 , which means that it is invertible. This easily follows from the following expression:
D d ( μ ) = C ( μ I A ) 1 B = C adj ( μ I A ) B det ( μ I A ) = 1 I ( μ 2 + b p μ + k p ) μ 2 ( μ 2 + ( b p + b I ) μ + k p + k I ) .
The existence of the inverse ( D d ) 1 implies that the system Σ G d also has an inverse ( Σ G d ) 1 with the state space matrix:
A d B d ( D d ) 1 C d B d ( D d ) 1 ( D d ) 1 C d ( D d ) 1 .
The transfer function of the inverse system ( Σ G d ) 1 has the following form:
( G d ( z ) ) 1 = M d ( z ) L d ( z ) = det ( z I A d ) C d adj ( z I A d ) B d + det ( z I A d ) D d = ( D d ) 1 C d adj ( z I A d + B d ( D d ) 1 C d ) B d ( D d ) 1 + det ( z I A d + B d ( D d ) 1 C d ) ( D d ) 1 det ( z I A d + B d ( D d ) 1 C d ) .
As the polynomials in the denominators coincide, we see that
C d adj ( z I A d ) B d + det ( z I A d ) D d = det ( z I A d + B d ( D d ) 1 C d ) ,
which means that the zeros of the system Σ G d (recall (54)) coincide with the spectrum σ ( A d B d ( D d ) 1 C d ) of the main matrix of the inverse system ( Σ G d ) 1 .

4. Precise Statement and Solution of the Discrete-Time Control Problem

In order to design a suitable discrete-time controller, we extend the ideas of the continuous-time general regulation theory (see, e.g., [13,14]). The essential feature of this approach is the assumption that the reference signal is generated by a known dynamical system, called the exosystem. This system is aggregated with the plant model. We first derive the continuous-time exosystem, then we develop the discrete-time exosystem by applying the same method as in the case of the plant.

4.1. Reference Signal in Continuous Time

As the continuous-time reference signal has the form α r ( t ) = a sin ( ω r t ) , it can be generated by a dynamical system Σ S (referred to as the exosystem), given as follows:
Σ S : r ˙ 1 ( t ) = r 2 ( t ) , r 1 ( 0 ) = 0 , r ˙ 2 ( t ) = ω r 2 r 1 ( t ) , r 2 ( 0 ) = a ω r , α r ( t ) = r 1 ( t ) ,
where ω r > 0 must be known and a R may be unknown. Introducing
r ( t ) : = r 1 ( t ) r 2 ( t ) , we obtain the following:
Σ S : r ˙ ( t ) = S r ( t ) , r ( 0 ) = r 0 , α r ( t ) = T r ( t ) ,
with the state space matrix
S T = 0 1 ω r 2 0 1 0 .
The characteristic polynomial of S is given as follows:
det ( λ I S ) = λ 2 + ω r 2 ,
with the spectrum (eigenvalues)
σ ( S ) = { j ω r ; j ω r } j R .
The pair ( T , S ) is observable, as the observability matrix V S of Σ S satisfies the following:
det V S = det ( T T S ) = 1 0 .

4.2. The Discrete-Time State Space Model of the Exosystem and Its Properties

We follow the idea of Section 3.2 for the discrete time:
t = i h , i N ,
where h > 0 is the discrete-time step. We integrate over the intervals ( i h , ( i + 1 ) h ) on both sides of the state space model (61) and obtain the following:
i h ( i + 1 ) h r ˙ ( t ) d t = S i h ( i + 1 ) h r ( t ) d t , i h ( i + 1 ) h α r ( t ) d t = T i h ( i + 1 ) h r ( t ) d t , i N .
Approximating the state integral, according to the mid-point rule, and the integral of the output as before; that is,
i h ( i + 1 ) r ( t ) d t h 2 ( r ( i h ) + r ( ( i + 1 ) h ) ) , i h ( i + 1 ) α r ( t ) d t h α r d ( i h ) ,
we can rewrite (67) as follows:
r d ( ( i + 1 ) h ) r d ( i h ) = h 2 S ( r d ( i h ) + r d ( ( i + 1 ) h ) ) , h α r d ( i h ) = h 2 T ( r d ( i h ) + r d ( ( i + 1 ) h ) ) .
As the matrix S satisfies
σ ( S ) j R ,
then, for all h > 0 , the parameter μ satisfies μ > 0 and
μ = 2 h σ ( S ) .
This implies that there exists an inverse matrix ( μ I S ) 1 . Through simple manipulations, (69) can be transformed to the following final form of the discrete-time state space model  Σ S d of the exosystem:
Σ S d : r d ( i + 1 ) = S d ( μ ) r d ( i ) , r d ( 0 ) = r ( 0 ) = r 0 , α r d ( i ) = T d ( μ ) r d ( i ) ,
where
S d ( μ ) : = ( μ I S ) 1 ( μ I + S ) , T d ( μ ) : = 2 μ T ( μ I S ) 1 ,
and we have dropped h in order to simplify the notation for r d ( i h ) and α r d ( i h ) . By repeating the same considerations as in Section 3.3, we see that, for λ C { 1 } ,
1 λ + 1 det ( λ I S d ) det ( μ I S ) = det ( μ λ 1 λ + 1 I S ) ,
and as det ( μ I S ) 0 , we have
det ( λ I S d ) = 0 if and only if det ( μ λ 1 λ + 1 I S ) = 0 .
If 1 σ ( S d ) , then the eigenvalues ( λ l ( S d ) ) l = 1 l = 2 and ( μ l ( S ) ) l = 1 l = 2 are related to each other by the following equality:
μ l ( S ) = μ λ l ( S d ) 1 λ l ( S d ) + 1 , l = 1 , 2 ;
or, equivalently, if μ l ( S ) μ (which is always satisfied based on (71)), then
λ l ( S d ) = μ + μ l ( S ) μ μ l ( S ) , l = 1 , 2 .
Therefore,
| λ l ( S d ) | = 1 if and only if Re μ l ( S ) = 0 .
The same considerations as in Section 3.3 demonstrate that the observability of the pair ( T , S ) is equivalent to the observability of ( T d , S d ) .

4.3. The Discrete-Time Error Feedback Control System Σ e f c s

We are ready to carry out the design of a discrete-time error feedback system. Let us recall the main equations describing the systems in discrete-time (see (27), (9), (6) and (72)); that is, the discrete-time plant:
Σ G d : x d ( i + 1 ) = A d ( μ ) x d ( i ) + B d ( μ ) τ d ( i ) , x d ( 0 ) = x ( 0 ) = x 0 , α d ( i ) = C d ( μ ) x d ( i ) + D d ( μ ) τ d ( i ) ,
the discrete-time controller:
Σ K : x K ( i + 1 ) = A K x K ( i ) + B K e d ( i ) , x K ( 0 ) = x K 0 , τ d ( i ) = C K x K ( i ) ,
the discrete-time error:
e d ( i ) = α d ( i ) α r d ( i ) , i N
and the discrete-time exosystem:
Σ S d : r d ( i + 1 ) = S d ( μ ) r d ( i ) , r d ( 0 ) = r ( 0 ) = r 0 , α r d ( i ) = T d ( μ ) r d ( i ) .
In order to simplify the notation, we drop μ in all system matrices.
Combining (79)–(81), we obtain the basic model of the discrete-time error feedback control system (see Figure 2), denoted by Σ e f c s , with ( α r d ( i ) ) i N as an external reference signal. Its model takes the following form:
Σ e f c s : x d ( i + 1 ) = A d x d ( i ) + B d C K x K ( i ) , x d ( 0 ) = x 0 , x K ( i + 1 ) = B K C d x d ( i ) + ( A K + B K D d C K ) x K ( i ) B K α r d ( i ) , x K ( 0 ) = x K 0 , e d ( i ) = C d x d ( i ) + D d C K x K ( i ) α r d ( i ) .
The error feedback control system Σ e f c s with zero input (i.e., α r d 0 ) and without the output equation is referred to as the discrete-time unforced closed loop system Σ u f , and its description simplifies to the following autonomous form:
Σ u f : x d ( i + 1 ) x K ( i + 1 ) = A d B d C K B K C d A K + B K D d C K x d ( i ) x K ( i ) , x d ( 0 ) x K ( 0 ) = x 0 x K 0 .
If we take into account the fact that the reference α r d ( i ) is generated by the discrete-time exosystem Σ S d and combine equations (83) and (82), then we obtain the following discrete-time forced closed loop system  Σ c l :
Σ c l : x d ( i + 1 ) = A d x d ( i ) + B d C K x K ( i ) , x d ( 0 ) = x 0 , x K ( i + 1 ) = ( A K + B K D d C K ) x K ( i ) + B K C d x d ( i ) B K T d r d ( i ) , x K ( 0 ) = x K 0 , r d ( i + 1 ) = S d r d ( i ) , r d ( 0 ) = r 0 , e d ( i ) = C d x d ( i ) + D d C K x K ( i ) T d r d ( i ) .
Now, we are ready to precisely define—in mathematical terms—the error feedback controller that we are looking for. We require the controller (80) to guarantee that the following two conditions hold:
IS:
Internal stability. The error feedback control system Σ e f c s is said to be internally stable if the unforced closed system Σ u f is asymptotically stable; that is, for all x d ( 0 ) = x 0 , x K ( 0 ) = x K 0 , we have the following:
lim i x d ( i ) x K ( i ) = 0 .
AT:
Asymptotic tracking (or regulation). The error feedback control system Σ e f c s is said to satisfy the asymptotic tracking condition if, for all r d ( 0 ) = r 0 , x d ( 0 ) = x 0 , and x K ( 0 ) = x K 0 , the forced closed loop system Σ c l satisfies the following:
lim i e d ( i ) = 0 .
It can be seen from (84) that IS holds if and only if
σ ( A d B d C K B K C d A K + B K D d C K ) D 1 ,
where D 1 denotes the open unit disk D 1 : = { z C : | z | < 1 } . In turn, AT requires further study.
Before we proceed with the general error feedback controller Σ K , it is convenient to start with a simple static state feedback case, which is described in the next subsection.

4.4. Static State Feedback for the Extended Discrete-Time Plant

We start with a simple situation, which turns out to be useful in our later considerations. Combining (79), (82), and (81), we introduce the so-called extended discrete-time plant  Σ e x t , defined as follows:
Σ e x t : x d ( i + 1 ) = A d x d ( i ) + B d τ d ( i ) , x d ( 0 ) = x 0 , r d ( i + 1 ) = S d r d ( i ) , r d ( 0 ) = r 0 , e d ( i ) = C d x D ( i ) T d r d ( i ) + D d τ d ( i ) .
As detailed above, the transformation from ( A , B , C , 0 ) to ( A d , B d , C d , D d ) preserves controllability and observability, and the transformation from ( S , T ) to ( S d , T d ) also preserves observability. Therefore, as ( A , B ) is controllable, so is ( A d , B d ) ; and as ( C , A ) and ( T , S ) are observable, so are ( C d , A d ) and ( T d , S d ) . It is well-known (see, e.g., [22]) that, under the above conditions, there always exists a feedback gain matrix F R 1 × 4 such that σ ( A d B d F ) D 1 . If we insert the static state feedback
τ d ( i ) = F x d ( i ) + Q r d ( i ) , i N ,
then we get the following closed loop system Σ c l 0 :
Σ c l 0 : x d ( i + 1 ) = ( A d B d F ) x d ( i ) + B d Q r d ( i ) , x d ( 0 ) = x 0 , r d ( i + 1 ) = S d r d ( i ) , r d ( 0 ) = r 0 , e d ( i ) = ( C d D d F ) x d ( i ) + ( D d Q T d ) r d ( i ) .
Theorem 1.
If b > 0 or b = 0 and k ω r 2 p , then there exists a static state feedback controller (89) such that, for Σ c l 0 , we have the following:
lim i e d ( i ) = 0 .
One such controller is given by the following formula:
τ d ( i ) = F Γ + F Π x d ( i ) r d ( i ) ,
where F R 1 × 4 is such that σ ( A d B d F ) D 1 and the pair of matrices ( Π , Γ ) , where Π R 4 × 2 and Γ R 1 × 2 is a unique solution of the matrix regulator equation:
A d Π Π S d + B d Γ = 0 , C d Π T d + D d Γ = 0 .
Proof. 
Assume F such that σ ( A d B d F ) D 1 and let Q R 1 × 2 be arbitrary. We start with the equivalent state variables:
p d ( i ) r d ( i ) = I Π 0 I x d ( i ) r d ( i ) , i N ,
where Π R 4 × 2 can be arbitrary. From (94) and (90), we easily get
p d ( i + 1 ) = x d ( i + 1 ) Π r d ( i + 1 ) = ( A d B d F ) x d ( i ) + B d Q r d ( i ) Π S d r d ( i ) = ( A d B d F ) p d ( i ) + ( ( A d B d F ) Π Π S d + B d Q ) r d ( i ) , e d ( i ) = ( C d D d F ) p d ( i ) + ( ( C d D d F ) Π T d + D d Q ) ) r d ( i )
and, if the matrix equation
( A d B d F ) Π Π S d + B d Q = 0 , ( C d D d F ) Π T d + D d Q = 0 ,
has a solution ( Π , Q ) , then (95) implies
p d ( i + 1 ) = ( A d B d F ) p d ( i ) , p d ( 0 ) = x 0 Π r 0 , e d ( i ) = ( C d D d F ) p d ( i ) .
As σ ( A d B d F ) D 1 , then for any initial states x d ( 0 ) = x 0 and r d ( 0 ) = r 0 , we get
lim i p d ( i ) = lim i ( ( A d B d F ) i ( x 0 Π r 0 ) = 0
and, hence, lim i e d ( i ) = 0 (i.e., (91) holds).
On the other hand, as σ ( S d ) C D 1 , then σ ( S d ) σ ( A d B d F ) = and, for any matrix Q , the Sylvester equation
( A d B d F ) Π Π S d + B d Q = 0
has a unique solution Π . Now, it follows from (95) that
p d ( i + 1 ) = ( A d B d F ) p d ( i ) , p d ( 0 ) = x 0 Π r 0 , e d ( i ) = ( C d D d F ) p d ( i ) + ( ( C d D d F ) Π T d + D d Q ) r d ( i ) .
Moreover, for any x d ( 0 ) = x 0 and r d ( 0 ) = r 0 , we have lim i p d ( i ) = 0 and, based on (91), we also have lim i e d ( i ) = 0 . Thus, for any initial state r d ( 0 ) = r 0 , we obtain the following:
lim i ( ( C d D d F ) Π T d + D d Q ) r d ( i ) = lim i ( ( C d D d F ) Π T d + D d Q ) ( S d ) i r 0 = 0 .
As σ ( S d ) C D 1 , then (101) implies ( C d D d F ) Π T d + D d Q = 0 for Π from (99).
Finally, let us note that the matrix Equation (96) can be written as follows:
A d Π Π S d + B d ( Q F Π ) = 0 , C d Π T d + D d ( Q F Π ) = 0
which, after the substitution Γ = Q F Π , takes the form of the regulator Equation (93).
The results we have proved above are a direct extension of the continuous-time general regulation theory (see, e.g., [14]) to the discrete-time scenario. However, an important question now arises regarding if and when the regulator Equation (93) admits a solution in terms of the physical parameters I , p , k , b , and ω r . From Section 3.3, we know that D d = C ( μ I A ) 1 B is invertible, which allows us to express Γ in the following form:
Γ = ( D d ) 1 C d Π + ( D d ) 1 T d ,
and then to transform the first equation in (93) to the standard Sylvester matrix equation:
( A d B d ( D d ) 1 C d ) Π Π S d + B d ( D d ) 1 T d = 0 .
As the existence of a solution ( Π , Γ ) to Equation (93) is equivalent to the existence of a solution Π to Equation (104), and it is known that the Sylvester equation has a unique solution if and only if
σ ( A d B d ( D d ) 1 C d ) σ ( S d ) = ,
then under Condition (105), the regulator equation also has a unique solution ( Π , Γ ) , where Π is a solution to (104) and Γ is given by (103).
We know from Section 3.3, the spectrum σ ( A d B d ( D d ) 1 C d ) coincides with the zeros of the system Σ G d . Hence, the regulator equation has a (unique) solution ( Π , Γ ) if and only if the spectrum σ ( S d ) is disjoint with the set of zeros of the system Σ G d . In order to show that this is the case for our system, we use the expressions (77), (64), (55), and (18); namely,
λ 1 ( S d ) = μ + j ω r μ j ω r , λ 2 ( S d ) = μ j ω r μ + j ω r ,
and
z l ( Σ G d ) = μ + s l ( Σ G ) μ s l ( Σ G ) , l = 1 , 2 ,
where
s 1 ( Σ G ) = b 2 p b 2 p 2 k p , s 2 ( Σ G ) = b 2 p + b 2 p 2 k p .
Simple considerations show that, if b > 0 , then ( λ l ( S d ) ) l = 1 l = 2 ( z l ( Σ G d ) ) l = 1 l = 2 = ; meanwhile, for b = 0 , the latter condition still holds if and only if k ω r 2 p .
Theorem 1 is essential, as it provides a basis for the development of the dynamic error feedback controller in the form of (80).

4.5. Characterization of the Discrete-Time Error Feedback Controller

If we interconnect the extended discrete-time plant  Σ e x t , defined in the following form:
Σ e x t : x d ( i + 1 ) = A d x d ( i ) + B d τ d ( i ) , x d ( 0 ) = x 0 , r d ( i + 1 ) = S d r d ( i ) , r d ( 0 ) = r 0 , e d ( i ) = C d x d ( i ) T d r d ( i ) + D d τ d ( i ) ,
and the discrete-time controller:
Σ K : x K ( i + 1 ) = A K x K ( i ) + B K e d ( i ) , x K ( 0 ) = x K 0 , τ d ( i ) = C K x K ( i ) ,
then we obtain the discrete-time forced closed loop system   Σ c l :
Σ c l : x d ( i + 1 ) = A d x d ( i ) + B d C K x K ( i ) , x d ( 0 ) = x 0 , x K ( i + 1 ) = ( A K + B K D d C K ) x K ( i ) + B K C d x d ( i ) B K T d r d ( i ) , x K ( 0 ) = x K 0 , r d ( i + 1 ) = S d r d ( i ) , r d ( 0 ) = r 0 , e d ( i ) = C d x d ( i ) + D d C K x K ( i ) T d r d ( i ) .
As we already know, IS holds if and only if
σ ( A d B d C K B K C d A K + B K D d C K ) D 1 .
As ( A d , B d ) is controllable and ( C d , A d ) is observable, there always exists a controller ( A K , B K , C K , 0 ) satisfying (112). In the continuous-time case, for a controller satisfying IS, the general regulation theory (see, e.g., [14]) provides necessary and sufficient conditions to be satisfied for the asymptotic tracking condition AT to hold. We extend these results to the discrete-time case and, in order to keep our exposition complete, we provide the corresponding results with proofs.
Theorem 2.
If, for a given controller ( A K , B K , C K , 0 ) , the condition IS holds, then the closed loop system Σ c l satisfies the asymptotic tracking condition AT if and only if there exist Π R 4 × 2 , Γ R 1 × 2 , and Σ R n K × 2 such that
R E : A d Π Π S d + B d Γ = 0 , C d Π T d + D d Γ = 0 ,
and
I M P : Γ = C K Σ , Σ S d = A K Σ .
Proof. 
Let (112) hold. For the closed-loop system (111), we introduce new state variables:
p d ( i ) q d ( i ) r d ( i ) = I 0 Π 0 I Σ 0 0 I x d ( i ) x K ( i ) r d ( i ) ,
where Π R 4 × 2 and Σ R n K × 2 can be arbitrary, and we obtain the following:
Σ c l : p d ( i + 1 ) = A d p d ( i ) + B d C K q d ( i ) + ( A d Π Π S d + B d C K Σ ) r d ( i ) , p d ( 0 ) = x 0 Π r 0 , q d ( i + 1 ) = B K C d p d ( i ) + ( A K + B K D d C K ) q d ( i ) + [ ( A K + B K D d C K ) Σ Σ S d + B K ( C d Π T d ) ] r d ( i ) , q d ( 0 ) = x K 0 Σ r 0 , r d ( i + 1 ) = S d r d ( i ) , r d ( 0 ) = r 0 , e d ( i ) = C d p d ( i ) + D d C K q d ( i ) + ( C d Π T d + D d C K Σ ) r d ( i ) .
If there exist matrices ( Π , Σ ) such that
A d B d C K B K C d A K + B K D d C K Π Σ Π Σ S d = 0 B K T d ,
and
C d Π T d + D d C K Σ = 0 ,
then (116) simplifies to the following form:
Σ c l : p d ( i + 1 ) q d ( i + 1 ) r d ( i + 1 ) e d ( i ) = A d B d C K B K C d A K + B K D d C K 0 0 0 S d C d D d C K 0 p d ( i ) q d ( i ) r d ( i ) .
Due to (112), this implies that
lim i e d ( i ) = lim i C d D d C K A d B d C K B K C d A K + B K D d C K i p d ( 0 ) q d ( 0 ) = 0 ;
that is, the asymptotic tracking condition (AT) holds.
On the other hand, as
σ ( A d B d C K B K C d A K + B K D d C K ) σ ( S d ) = ,
then for every 0 B K T d the Sylvester Equation (117) has a unique solution Π Σ . This equation and the asymptotic tracking condition AT, applied to System (116), imply the following:
lim i e d ( i ) = lim i C d D d C K A d B d C K B K C d A K + B K D d C K i x 0 Π r 0 x K 0 Σ r 0 + lim i ( C d Π T d + D d C K Σ ) ( S d ) i r 0 = lim i ( C d Π T d + D d C K Σ ) ( S d ) i r 0 = 0 .
As σ ( S d ) D 1 = , we get C d Π T d + D d C K Σ = 0 .
Now let us note that, by substituting (118) into (117), we get an equivalent set of equations:
A d Π Π S d + B d C K Σ = 0 , A K Σ Σ S d = 0 , C d Π T d + D d C K Σ = 0 .
Finally, if we introduce Γ = C K Σ , then (123) can be equivalently written as (113) and (114).
Relation (113) is the regulator equation from Theorem 1; hence, we denote it as RE. Furthermore, the second relation (114) is called the internal model principle (see, e.g., [14,23]), which we denote as IMP. The latter relation reflects the fact that a sensible controller has to include the dynamics of the exosystem.
In order to develop a controller ( A K , B K , C K ) , we turn back to the result of Theorem 1 for the static state feedback controller. However, we assume that only the output of the plant can be measured, so, the components of the extended state x d ( i ) r d ( i ) are not available for the state feedback. As we can compute the error signal e d ( i ) —that is, the output of the extended plant Σ e x t —we can construct a classic full-order asymptotic observer to estimate the extended state and try the approximate state x ˜ d ( i ) r ˜ d ( i ) in the control law
τ d ( i ) = F Γ + F Π x ˜ d ( i ) r ˜ d ( i ) , i N .
In the next subsection, we show that if the observer is fed the error e d ( i ) , we obtain the required discrete-time error feedback controller (110).

4.6. Derivation of the Discrete-Time Error Feedback Controller Based on a Full-Order Observer

We rewrite the extended plant model Σ e x t (see (109)) in the following form:
Σ e x t : x d ( i + 1 ) r d ( i + 1 ) = A d 0 0 S d x d ( i ) r d ( i ) + B d 0 τ d ( i ) , x d ( 0 ) r d ( 0 ) = x 0 r 0 , e d ( i ) = C d T d x d ( i ) r d ( i ) + D d τ d ( i ) .
In the research [19], it was shown that, for the pair C T , A 0 0 S , the observability matrix V satisfies
det V = det C T C A T S C A 5 T S 5 = k 2 ω r 2 I 2 ( ω r 2 b p + b I 2 + k p + k I ω r 2 2 ) ,
which demonstrates that, for b > 0 , the pair is observable; meanwhile, if b = 0 , then it is still observable if and only if k p + k I ω r 2 .
As we know from Section 3.3, the observability is preserved under our discretization scheme, and it follows that the same condition also holds for the following pair: C d T d , A d 0 0 S d . More precisely, if b > 0 or b = 0 and k p + k I ω r 2 , then the plant Σ e x t is observable. It is a classic result (see, e.g., [22,24]) that, in this case, the asymptotic full-order state observer for Σ e x t exists and has the following form:
Σ O : x ˜ d ( i + 1 ) r ˜ d ( i + 1 ) = A d 0 0 S d L 1 L 2 C d T d x ˜ d ( i ) r ˜ d ( i ) + B d 0 τ d ( i ) + L 1 L 2 e d ( i ) ,
where L 1 L 2 R 6 × 1 satisfies
σ ( A d 0 0 S d L 1 L 2 C d T d ) = σ ( A d L 1 C d L 1 T d L 2 C d S d + L 2 T d ) D 1 ,
and this spectrum can be freely assigned.
We have also proven that, for b > 0 or b = 0 and k ω r 2 p , the regulator equation RE has a unique solution ( Π , Γ ) .
In summary, if b > 0 or b = 0 and k p ω r 2 , together with k I + k p ω r 2 , then we can make use of the control law
τ d ( i ) = F Γ + F Π x ˜ d ( i ) r ˜ d ( i )
and obtain an observer-based discrete-time controller Σ K of the order n K = 6 in the state space form:
Σ K : x K ( i + 1 ) = A K x K ( i ) + B K e d ( i ) , x K ( 0 ) = x K 0 , τ d ( i ) = C K x K ( i ) ,
where
x K ( i ) = x ˜ d ( i ) r ˜ d ( i ) , A K = A d 0 0 S d L 1 L 2 C d T d + B d 0 L 1 L 2 D d F Γ + F Π = A d L 1 C d ( B d L 1 D d ) F L 1 T d + ( B d L 1 D d ) ( Γ + F Π ) L 2 C d + L 2 D d F S d + L 2 T d L 2 D d ( Γ + F Π ) , B K = L 1 L 2 , C K = F Γ + F Π .
We must verify whether the controller in (130) is really what we have been looking for. According to Theorem 2, for the matrices ( A K , B K , C K ) given by (131), we have to verify the IS, RE, and IMP conditions; that is, we have to check that (112), (113), and (114) hold. Note that we can omit (113), as RE follows from Theorem 1. In order to show the rest, we can use an idea utilized in the literature for continuous-time problems (see, e.g., [14]). As the proof requires rather tedious calculations, we provide it in Appendix B.

5. Numerical Simulations

In order to verify the applicability of the results, we performed numerical simulations using MATLAB R2024b and its Control System Toolbox [25]. We applied the controller Σ K given by (130), designed for the discrete-time unit feedback control system of Figure 2, to the digital control system shown in Figure 3. The data assumed for the computations correspond to the class of microsatellites with weight of 50–100 kg, as detailed in Table 2.
For the reference signal α r ( t ) = a sin ( ω r t ) , we assume the following:
a = 1 [ rad ] , ω r = 1 deg s = π 180 rad s .
For the continuous-time plant Σ G , we obtain the following state space matrix:
A B C 0 = 0 0 1 0 0 0 0 0 1 0 441.17 441.17 0.0059 0.0059 0.5882 7500 7500 0.1 0.1 0 1 0 0 0 0 .
The continuous-time exosystem Σ S has the following state space matrix:
S T = 0 1 0.0003 0 1 0 ,
with
σ ( S ) = j 0.0175 j 0.0175 T ,
which generates the continuous-time reference α r ( t ) in the following form:
α r ( t ) = sin 0.0175 t .
The discrete-time step h > 0 is determined according to the sampling frequency of the actual satellite’s attitude angle α ( t ) , which depends on its on-board sensors. It is known from the literature that, for small h values, the obtained discrete-time models are usually very accurate. In our computations, we assumed the following two values of h and the resulting double sampling frequency μ :
h = 0.1 s , μ = 2 h = 20 Hz , h = 0.05 s , μ = 2 h = 40 Hz .
For these data, we obtain two discrete-time state space matrices:
A d ( 20 ) B d ( 20 ) C d ( 20 ) D d ( 20 ) = 0.8942 0.1058 0.0947 0.0053 0.0088 1.7979 0.7979 0.0899 0.0101 0.0084 2.1151 2.1151 0.8942 0.1058 0.1762 35.9570 35.9570 1.7983 0.7983 0.1673 0.2995 0.0167 0.0150 0.0008 0.0014
and
A d ( 40 ) B d ( 40 ) C d ( 40 ) D d ( 40 ) = 0.9076 0.0924 0.0477 0.0023 0.0031 1.5714 0.5714 0.0393 0.0107 0.0026 3.6975 3.6975 0.9075 0.0925 0.1255 62.8574 62.8574 1.5723 0.5723 0.1034 0.2133 0.0103 0.0053 0.0003 0.0003 . 5 ,
and two corresponding discrete-time exosystem matrices:
S d ( 20 ) T d ( 20 ) = 1 0.1 0 1 0.3162 0.0158
and
S d ( 40 ) T d ( 40 ) = 1 0.05 0 1 0.2236 0.0056 .
In order to solve the regulator Equation (93), we used the lyap procedure from the MATLAB R2024b Control System Toolbox [25] to compute Π from (104), after which Γ follows from (103). The state feedback gain matrix F R 1 × 4 was chosen to minimize the quadratic functional
J ( τ d ) = w 0 i = 0 ( x d ( i ) ) T x d ( i ) + u 0 i = 0 ( τ d ( i ) ) 2 ,
with weights w 0 = 1 and u 0 = 1 , for the system x d ( i + 1 ) = A d ( μ ) x d ( i ) + B d ( μ ) τ d ( i ) with τ d ( i ) = F x d ( i ) . To solve this optimization problem, we used the dlqr procedure from the MATLAB R2024b Control System Toolbox [25]. As a result,
F ( 20 ) = 64.9105 66.0854 1.7803 0.1379 ,
with
σ ( A d ( 20 ) B d ( 20 ) F ( 20 ) ) = 0.8875 + j 0.4182 0.8875 j 0.4182 0.8938 0.8019 ,
and
F ( 40 ) = 62.0930 63.3290 1.8883 0.3066 ,
with
σ ( A d ( 40 ) B d ( 40 ) F ( 40 ) ) = 0.6488 + j 0.7277 0.6488 j 0.7277 0.9490 0.8459 .
The output error gain matrix L 1 L 2 R 6 × 1 was chosen such that L 1 L 2 T R 1 × 6 minimizes the quadratic cost functional
J ( ϑ d ) = w 1 i = 0 ( ξ d ( i ) ) T ξ d ( i ) + u 1 i = 0 ( ϑ d ( i ) ) 2 ,
with weights w 1 = 1 and u 1 = 1 , for the system ξ d ( i + 1 ) = A d ( μ ) 0 0 S d ( μ ) T ξ d ( i ) + C d ( μ ) T d ( μ ) T ) ϑ d ( i ) and ϑ d ( i ) = L 1 L 2 T ξ d ( i ) . Hence,
L 1 ( 20 ) L 2 ( 20 ) = 40.6359 40.4759 4.0984 82.7493 39.2876 0.3458 T ,
with
σ ( A d ( 20 ) 0 0 S d ( 20 ) L 1 ( 20 ) L 2 ( 20 ) C d ( 20 ) T d ( 20 ) ) = 0.9016 + j 0.4265 0.9016 j 0.4265 0.6575 0.9021 0.9994 + j 0.0013 0.9994 j 0.0013 ,
and
L 1 ( 40 ) L 2 ( 40 ) = 44.1508 43.7351 3.9466 81.3172 42.7705 0.3751 T ,
with
σ ( A d ( 40 ) 0 0 S d ( 40 ) L 1 ( 40 ) L 2 ( 40 ) C d ( 40 ) T d ( 40 ) ) = 0.6620 + j 0.7447 0.6620 j 0.7447 0.7390 0.9506 0.9997 + j 0.0007 0.9997 j 0.0007 .
The two obtained versions of the state space matrix for the controller (131), corresponding to h = 0.1 s and h = 0.05 s, are given as follows:
A K ( 20 ) B K ( 20 ) C K ( 20 ) 0 = 14.3785 2.5844 0.4287 0.0353 12.7940 0.5640 40.6359 13.4414 1.6982 0.4307 0.0304 12.7432 0.5611 40.4759 10.9187 9.8364 0.6318 0.1343 1.0824 0.2339 4.0984 14.5488 40.7775 0.4666 0.8604 26.2287 1.3938 82.7493 15.3188 2.9592 0.4909 0.0404 13.3595 0.6313 39.2876 0.1349 0.0261 0.0043 0.0004 0.1088 0.9953 0.3458 64.9105 66.0854 1.7803 0.1379 1.1748 1.6424 0
and
A K ( 40 ) B K ( 40 ) C K ( 40 ) 0 = 9.2751 0.4179 0.1644 0.0129 9.8572 0.2273 44.1508 8.5477 0.2160 0.1698 0.0045 9.7637 0.2243 43.7351 5.0198 4.2940 0.6891 0.1324 0.7257 0.1785 3.9466 50.1649 68.4405 0.9973 0.5703 18.2756 0.5730 81.3172 10.0530 0.5077 0.1997 0.0157 10.5452 0.2654 42.7705 0.0882 0.0045 0.0018 0.0001 0.0837 0.9981 0.3751 62.0930 63.3290 1.8883 0.3066 1.2358 1.5817 0 .
The results of the numerical simulations are shown below, in Figure 4, Figure 5, Figure 6, Figure 7 and Figure 8. Figure 4 shows parts of the exact reference attitude angle α r ( t ) , which is sampled in the digital control system shown in Figure 3.
The actual attitude angle α ( t ) of the continuous-time (real) satellite model Σ G was computed for the two values of the time step h , as presented in Figure 5 and Figure 7. Moreover, we also computed the actual continuous-time error e ( t ) —defined as the difference between the actual angle α ( t ) and the exact reference angle α r ( t ) —in order to show how the discrete-time controller Σ K performs in the digital control system of Figure 3. The result is shown in Figure 6 and Figure 8, where the continuous-time control torque τ ( t ) , generated by the Z O H and acting on the actual plant Σ G , is also presented.
It follows from the numerical simulations that, in both considered cases of time step h , we observed very similar rapid decay of the tracking error e ( t ) .
In order to show the robustness of the developed control algorithm, we applied the controller (153)—designed for the plant with parameters from Table 2—in the digital control system for the perturbed plant with the set of parameters k ¯ , b ¯ , I ¯ and p ¯ given in Table 3.
These parameters led to the following state space matrix of the plant Σ G ¯ :
A ¯ B ¯ C ¯ 0 = 0 0 1 0 0 0 0 0 1 0 882.4 882.4 0.0144 0.0144 1.3072 6136.4 6136.4 0.1 0.1 0 1 0 0 0 0 .
The obtained results of the numerical simulations are presented in Figure 9 and Figure 10, which indicate satisfactory and rapid decay of the tracking error e ( t ) .
A more elaborate robustness analysis of the developed discrete-time controller (similar to that performed in the study by [20] for the continuous-time case) could be carried out based on the structured singular values; however, this would require further research.

6. Conclusions

The results presented in this paper prove that the combination of the Cayley–Tustin time-discretization scheme and the general regulation theory in the state space setup led to an effective design procedure for a discrete-time controller, which can be directly used in digital satellite attitude control systems with zero-order hold. The advantage of the developed controller is that it only requires the satellite’s sampled attitude angle to be measured, such that no angular velocity measurement is required. The controller matrices involve the feedback gain F and the output injection gain L , which can be computed using LQR algorithms to enable satisfactory behavior of the plant output and tracking error signals. In order to control the behavior of these signals, the scalar weights w 0 , u 0 , and w 1 , u 1 are used. Instead of the simple scalar weights in Functionals (142) and (147), one can introduce matrices to weigh the state variables selectively and match additional quantitative design objectives such as the overshoot, rise time, and settling time.
The developed procedure is general and easily extendable to more complex multi-variable plants with various time-varying reference signals and disturbances. It follows from the literature (see, e.g., [14]) that the general regulation theory is also successfully applicable in the design of asymptotic tracking controllers for non-linear plants. The author’s plan for future work covers the development of a proper robustness analysis of discrete-time controllers designed for both linear and non-linear plants.

Funding

This research received no external funding.

Data Availability Statement

All data related to the results of computations presented in this paper are available on request from the author.

Conflicts of Interest

The author declares no conflicts of interest.

Appendix A. Derivation of the Model (1) Using the Euler–Lagrange Method

We model the satellite with an attached panel as two rigid bodies with a flexible connection, and we define the total kinetic and potential energies T and V as follows:
T = I ( α ˙ ) 2 2 + p ( β ˙ ) 2 2 , V = k ( α β ) 2 2 .
By introducing the Lagrangian
L ( α , β , α ˙ , β ˙ ) = T ( α ˙ , β ˙ ) V ( α , β ) = I ( α ˙ ) 2 2 + p ( β ˙ ) 2 2 k ( α β ) 2 2
and computing its partial derivatives, as well as taking into account the generalized torques Q 1 and Q 2
L α = k ( α β ) , L β = k ( α β ) , L α ˙ = I α ˙ , L β ˙ = p β ˙ , d d t ( L α ˙ ) = I α ¨ , d d t ( L β ˙ ) = p β ¨ , Q 1 = τ b ( α ˙ β ˙ ) , Q 2 = b ( β ˙ α ˙ ) ,
we easily obtain the Euler–Lagrange equations
I α ¨ + k ( α β ) = τ b ( α ˙ β ˙ ) , p β ¨ + k ( β α ) = b ( β ˙ α ˙ ) ,
which represent Model (1).

Appendix B. Verification of (112) and (114) for (131)

In order to verify IS, we substitute (131) into the matrix of (112) and obtain the following:
A d B d C K B K C d A K + B K D d C K = A d B d F B d ( Γ + F Π ) L 1 C d A d L 1 C d B d F L 1 T d + B d ( Γ + F Π ) L 2 C d L 2 C d S d + L 2 T d .
Using the matrices
T = I 0 0 I I 0 0 0 I , T 1 = I 0 0 I I 0 0 0 I ,
we see that
T A d B d F B d ( Γ + F Π ) L 1 C d A d L 1 C d B d F L 1 T d + B d ( Γ + F Π ) L 2 C d L 2 C d S d + L 2 T d T 1 = A d B d F B d F B d ( Γ + F Π ) 0 A d L 1 C d L 1 T d 0 L 2 C d S d + L 2 T d .
As the matrices on the right-hand sides of (A5) and (A7) are similar, then
σ ( A d B d C K B K C d A K + B K D d C K ) = σ ( A d B d F B d F B d ( Γ + F Π ) 0 A d L 1 C d L 1 T d 0 L 2 C d S + L 2 T d ) = σ ( A d B d F ) σ ( A d L 1 C d L 1 T d L 2 C d S d + L 2 T d ) D 1 ,
based on (128) and σ ( A d B d F ) D 1 . In order to verify IMP, we take Σ = Π I and substitute (131) into (114) to obtain
C K Σ = F Γ + F Π Π I = Γ ,
and
A K Σ = A d L 1 C d ( B d L 1 D d ) F L 1 T d + ( B d L 1 D d ) ( Γ + F Π ) L 2 C d + L 2 D d F S d + L 2 T d L 2 D d ( Γ + F Π ) Π I = A d Π + B d Γ L 1 ( C d Π T d + D d Γ ) S d L 2 ( C d Π T d + D d Γ ) = Π S d S d = Σ S d ,
where we have used RE.

References

  1. Narkiewicz, J.; Sochacki, M.; Zakrzewski, B. Generic model of a satellite attitude control system. Int. J. Aerosp. Eng. 2020, 2020, 5352019. [Google Scholar] [CrossRef]
  2. Narkiewicz, J.; Grunvald, S.; Sochacki, M. Attitude control system for an earth observation satellite. Bull. Pol. Acad. Sci. Tech. Sci. 2024, 72, e148612. [Google Scholar]
  3. Xie, Y.; Huang, H.; Hu, Y.; Zhang, G. Applications of advanced control methods in spacecrafts - progress, challenges, and future prospects. Front. Inf. Technol. Electron. Eng. 2016, 17, 416–428. [Google Scholar] [CrossRef]
  4. Wenya, Z.; Haixu, W.; Zhengwei, R.; Zhigang, W.; Enmei, W. High accuracy attitude control system design for satellite with flexible appendages. Math. Probl. Eng. 2014, 695758. [Google Scholar]
  5. Wei, H.; Shuzhi, S.G. Dynamic modeling and vibration control of a flexible satellite. IEEE Trans. Aerosp. Electron. Syst. 2015, 51, 1422–1430. [Google Scholar]
  6. Wang, J.; Li, D. Experiments study on attitude coupling control method for flexible spacecraft. Acta Astronaut. 2018, 147, 393–402. [Google Scholar] [CrossRef]
  7. Angeletti, F.; Gasbarri, P.; Sabatini, M.; Iannelli, P. Design and performance assessment of a distributed vibration suppression system of a large flexible antenna during attitude manoeuvres. Acta Astronaut. 2020, 176, 542–557. [Google Scholar] [CrossRef]
  8. Angeletti, F.; Iannelli, P.; Gasbarri, P.; Sabatini, M. End-to-end design of a robust attitude control and vibration suppression system for large space smart structures. Acta Astronaut. 2021, 187, 416–428. [Google Scholar] [CrossRef]
  9. Jungteng, M.; Hao, W.; Dongping, J. PDE model-based boundary control of a spacecraft with double flexible appendages under prescribed performance. Adv. Space Res. 2020, 65, 586–597. [Google Scholar]
  10. Li, H.; Jia, Q.; Ma, R.; Chen, X. Observer-based robust actuator fault isolation and identification for microsatellite attitude control systems. Aircr. Eng. Aerosp. Technol. 2021, 93, 1145–1155. [Google Scholar] [CrossRef]
  11. Govindaraj, T.; Humaloja, J.-P.; Paunenen, L. Robust controllers for a flexible satellite model. Math. Control Relat. Fields 2024, 14, 356–385. [Google Scholar] [CrossRef]
  12. El Hariry, M.; Cini, A.; Mellone, G.; Balossino, A. Deep reinforcement learning policies for underactuated satellite attitude control. arXiv 2025, arXiv:2505.00165. [Google Scholar]
  13. Francis, B.A. The linear multivariable regulator problem. Siam J. Control Optim. 1977, 15, 486–505. [Google Scholar] [CrossRef]
  14. Isidori, A.; Marconi, L.; Serrani, A. Robust Autonomous Guidance An Internal Model Approach; Springer: London, UK, 2003. [Google Scholar]
  15. Havu, V.; Malinen, J. The Cayley transform as a time discretization scheme. Integral Equ. Oper. Theory 2007, 28, 825–851. [Google Scholar] [CrossRef]
  16. Emirsajłow, Z. Discrete-time output observers for boundary control systems. Int. J. Appl. Math. Comput. Sci. 2021, 31, 613–626. [Google Scholar] [CrossRef]
  17. Santana, A.; Martins-Filho, L.; Duarte, R.; Arantes, G.; Casella, I. Attitude control of a satellite by using digital signal processing. J. Aerosp. Technol. Manag. 2012, 4, 15–24. [Google Scholar] [CrossRef]
  18. Molina, J.C.; Ayerdi, V.; Zea, L. Attitude control model for CubeSats. In Proceedings of the 2nd IAA Latin American CueSat Workshop, Florianopolis, Brazil, 28 February–2 March 2016; Volume 2. [Google Scholar]
  19. Emirsajłow, Z.; Barciński, T.; Bukowiecka, N. Attitude control of an earth observation satellite with a solar panel. In Advanced Contemporary Control; Pawelczyk, M., Bismor, D., Ogonowski, S., Kacprzyk, J., Eds.; Springer Nature: Cham, Switzerland, 2023; pp. 393–402. [Google Scholar]
  20. Emirsajłow, Z.; Barciński, T. A robust asymptotic tracking controller for an uncertain 2DOF underactuated mechanical system motivated by a satellite attitude control problem. Int. J. Appl. Math. Comput. Sci. 2025, 35, 97–116. [Google Scholar] [CrossRef]
  21. Curtain, R.; Oostveen, J. Bilinear transformations between discrete-time and continuous-time infinite-dimensional systems. In Proceedings of the International Conference on Methods and Models in Automation and Robotics MMAR1997, Międzyzdroje, Poland, 26–30 August 1997; pp. 861–870. [Google Scholar]
  22. Ogata, K. Discrete-Time Control Systems; Prentice-Hall: Englewood Cliffs, NJ, USA, 1995. [Google Scholar]
  23. Francis, B.A.; Wonham, W.M. The internal model principle for linear multivariable regulators. Appl. Math. Optim. 1975, 2, 170–194. [Google Scholar] [CrossRef]
  24. Williams, R.L.; Lawrence, D.A. Linear State-Space Control Systems; John Wiley & Sons: Hoboken, NJ, USA, 2007. [Google Scholar]
  25. Matlab Control System Toolbox, Ver. R2024b; MathWorks: Natick, MA, USA, 2024.
Figure 1. Visualization of the observation satellite Sentinel-2 with a solar panel (image: ©ESA/Astrium (left)) and its simplified sketch (right).
Figure 1. Visualization of the observation satellite Sentinel-2 with a solar panel (image: ©ESA/Astrium (left)) and its simplified sketch (right).
Applsci 15 06674 g001
Figure 2. The discrete-time unit feedback control system.
Figure 2. The discrete-time unit feedback control system.
Applsci 15 06674 g002
Figure 3. The digital control system with the continuous-time plant Σ G and Z O H .
Figure 3. The digital control system with the continuous-time plant Σ G and Z O H .
Applsci 15 06674 g003
Figure 4. The reference attitude angle α r ( t ) for t [ 0 , 10 ] (left) and t [ 0 , 100 ] (right).
Figure 4. The reference attitude angle α r ( t ) for t [ 0 , 10 ] (left) and t [ 0 , 100 ] (right).
Applsci 15 06674 g004
Figure 5. The actual attitude angle α ( t ) for t [ 0 , 10 ] (left) and t [ 0 , 100 ] (right) for h = 0.1 s.
Figure 5. The actual attitude angle α ( t ) for t [ 0 , 10 ] (left) and t [ 0 , 100 ] (right) for h = 0.1 s.
Applsci 15 06674 g005
Figure 6. The actual error e ( t ) (left) and control torque τ ( t ) (right) for h = 0.1 s .
Figure 6. The actual error e ( t ) (left) and control torque τ ( t ) (right) for h = 0.1 s .
Applsci 15 06674 g006
Figure 7. The actual attitude angle α ( t ) for t [ 0 , 10 ] (left) and t [ 0 , 100 ] (right) for h = 0.05 s .
Figure 7. The actual attitude angle α ( t ) for t [ 0 , 10 ] (left) and t [ 0 , 100 ] (right) for h = 0.05 s .
Applsci 15 06674 g007
Figure 8. The actual error e ( t ) (left) and the control torque τ ( t ) (right) for h = 0.05 s .
Figure 8. The actual error e ( t ) (left) and the control torque τ ( t ) (right) for h = 0.05 s .
Applsci 15 06674 g008
Figure 9. The actual attitude angle α ( t ) for t [ 0 , 10 ] (left) and t [ 0 , 100 ] (right) for h = 0.05 s .
Figure 9. The actual attitude angle α ( t ) for t [ 0 , 10 ] (left) and t [ 0 , 100 ] (right) for h = 0.05 s .
Applsci 15 06674 g009
Figure 10. The actual error e ( t ) (left) and the control torque τ ( t ) (right) for h = 0.05 s .
Figure 10. The actual error e ( t ) (left) and the control torque τ ( t ) (right) for h = 0.05 s .
Applsci 15 06674 g010
Table 1. Signals and parameters for the satellite model.
Table 1. Signals and parameters for the satellite model.
       Signal or Parameter [SI Units]
       Satellite attitude angle α ( t )   rad
       Panel attitude angle β ( t )   rad
       Satellite driving torque τ ( t )   N · m
       Satellite rotational inertia I   [ kg · m 2 ]
       Panel rotational inertia p   [ kg · m 2 ]
       Stiffness coefficient k   N · m rad
       Damping coefficient b   [ N · m · s ]
Table 2. Parameters for the satellite with a solar panel used in the computations.
Table 2. Parameters for the satellite with a solar panel used in the computations.
    ParameterValue
k N · m rad 750
b [ N · m · s ] 0.01
I [ kg · m 2 ] 1.7
p [ kg · m 2 ] 0.1
Table 3. The perturbed parameters of the satellite with a solar panel.
Table 3. The perturbed parameters of the satellite with a solar panel.
    ParameterValue
k ¯ = 0.9 k N · m rad 675
b ¯ = 1.1 b [ N · m · s ] 0.011
I ¯ = 0.45 I [ kg · m 2 ] 0.765
p ¯ = 1.1 p [ kg · m 2 ] 0.11
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Emirsajłow, Z. Discrete-Time Asymptotic Tracking Control System for a Satellite with a Solar Panel. Appl. Sci. 2025, 15, 6674. https://doi.org/10.3390/app15126674

AMA Style

Emirsajłow Z. Discrete-Time Asymptotic Tracking Control System for a Satellite with a Solar Panel. Applied Sciences. 2025; 15(12):6674. https://doi.org/10.3390/app15126674

Chicago/Turabian Style

Emirsajłow, Zbigniew. 2025. "Discrete-Time Asymptotic Tracking Control System for a Satellite with a Solar Panel" Applied Sciences 15, no. 12: 6674. https://doi.org/10.3390/app15126674

APA Style

Emirsajłow, Z. (2025). Discrete-Time Asymptotic Tracking Control System for a Satellite with a Solar Panel. Applied Sciences, 15(12), 6674. https://doi.org/10.3390/app15126674

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop