SlideShare a Scribd company logo
Sloshing-aware attitude control of
impulsively actuated spacecraft
P. Sopasakisa, D. Bernardinia,c, H. Strauchb,
S. Bennanid and A. Bemporada,c
a Institute for Advanced Studies Lucca,
b Airbus DS, c ODYS Srl
d European Space Agency
July 14, 2015
CFD computations...
1 / 16
CFD computations...
Sloshing cannot be ignored!
1 / 16
Outline
1. Derivation of a sloshing-aware dynamical model
2. State estimation and model linearisation
3. Modelling of minimum impulse effect
4. Model predictive control & simulations
2 / 16
I. Modelling
Fixed Body Frame
3 / 16
Modelling sloshing
The concept of a rotating mass is used to
model the sloshing dynamics. Using
Lagrangian arguments we arrive at:
˙α = β,
˙β = κβ +
θ(α, ω)
mf r2
where θ is a nonlinear functiona which
depends of parameters p and r.
a
Given in the appendix
4 / 16
Modelling sloshing
The inertia tensor J of the upper stage is:
J(α) = J0 + Jmf
(α)
J0: diagonal inertia tensor without sloshing,
Jmf
(α) contribution of the moving mass given by
Jmf
(α)=mf


r2 pr cos α pr sin α
∗ p2 + r2 sin2
α − sin α cos α
∗ ∗ p2 + r2 cos2 α

 .
5 / 16
Modelling sloshing
The system dynamics is given by:
˙α = β,
˙β = κβ + θ(α,ω)
mf r2
Sloshing
˙ω = ψ(ω)ω + J−1
τext − J−1
J (α)βω
˙y = ωy + zωx,
˙z = ωz − yωx
Pitch and yaw errors
where ψ(ω) = J−1Ω(ω)J with
Ω(ω) =


0 ωz −ωy
−ωz 0 ωx
ωy −ωx 0

 .
6 / 16
System dynamics
The attitude dynamics is described by the state
vector z ∈ R7
z(t) = ( y, z, ωx, ωy, ωz, α, β)
with input u(t) = (τext,x, τext,y, τext,z) as follows
dz(t)
dt
= F(z(t), u(t)).
The above system is discretised with sampling
period h > 0:
zk+1 = zk + hF(zk, uk) =: fh(zk, uk)
* We measure only the five first coordinates of z,
that is yk = Czk.
7 / 16
II. State Estimation and
Linearisation
Ext. Kalman Filter
Using the EKF the estimates ˆzk are updated as
ˆzk+1 = (I − KkCfh(ˆzk, uk)) + Kkyk
where Kk is computed using first-order information of the system:
Fk =
∂fh
∂z (ˆzk,uk)
.
8 / 16
Ext. Kalman Filter
0 20 40 60 80 100
1
2
3
4
5
6
7
8
9
10
x 10
−4
Time [s]
Stateestimateionerror(norm)
9 / 16
Linearisation
At time kj we linearise the system around the current estimated state ˆzkj
and input ukj
:
zk+1 = Akj
zk + Bkj
uk + fkj
, for k > kj
where Akj
, Bkj
and fkj
are functions of ˆzkj
and ukj
as follows
Akj
= I + h
∂F
∂z (ˆzkj
,ukj
)
Bkj
= h
∂F
∂u (ˆzkj
,ukj
)
fkj
= fh(ˆzkj
, ukj
)
10 / 16
III. Minimum Impulse Effect
Minimum impulse effect
Minimum impulse effect: thrusters cannot produce arbitrarily small
torques, thus uk is constrained in
U = [−umax, −umin] ∪ {0} ∪ [umin, umax]
We introduce the binary vectors δ−
k and δ+
k so that1
δ−
k = [uk ≤ −umin],
δ+
k = [uk ≥ umin],
and the auxiliary variable ηk defined as
ηk,i = [δ−
k,i ∨ δ+
k,i] · uk,i
1
Here ≤ and ≥ are element-wise comparison operators.
11 / 16
Minimum impulse effect
To detect thruster activations we use the variable
vk = [δ−
k ∨ δ+
k ]
and we recast the system dynamics as
zk+1 = Azk + Bηk + f,
γk+1 = γk + [ 1 1 1 ] vk,
where γk is the total actuation count up to time k on which we impose:
γk ≤ γmax.
12 / 16
IV. Hybrid Model Predictive
Control
Control scheme
Control objectives:
BBQ mode: Track a desired
spin rate 5deg/sec
with a low actuation count
and steer the pitch and yaw
errors to 0.
HMPC	
  
EKF	
  
Online	
  
Linearisa2on	
  	
  
(A, B, f)
ˆz
u y
ˆz
13 / 16
Hybrid Model Predictive Control
MPC problem2:
P(x0, γ0, A, B, f) : min
πN
VN (πN , γ0)
s.t. x(0) = x0, γ(0) = γ0,
Hybrid dynamics for k ∈ N[0,Nu−1],
Assume U = [−umax, umax] for k ∈ N[Nu,N−1],
where
VN (πN , γ0)= QN zN p + ρ(γN − γ0)
Penalises the tot.
actuation count along
the horizon
+
N−1
k=0
Qzk p + Rηk p
2
Optimisation with respect to the sequence of control actions uk, δk, vk and ηk.
14 / 16
Simulation results3
−0.2 0 0.2 0.4 0.6 0.8 1 1.2
−0.2
0
0.2
0.4
0.6
0.8
1
1.2
1.4
Pitch error [deg]
Yawerror[deg]
50 100 150 200 250 300
0
0.2
0.4
0.6
0.8
Pitcherror[deg]
50 100 150 200 250 300
0
0.5
1
Yawerror[deg]
Time [s]
0 50 100 150 200 250 300
−6
−4
−2
0
2
4
6
Time [s]
Spinrate[deg/s]
0 50 100 150 200 250 300
0
1000
2000
T
x
0 50 100 150 200 250 300
−2000
0
2000
4000
T
y
0 50 100 150 200 250 300
−2000
0
2000
4000
T
z
Time [s]
3
Simulation parameters: Nu = 8, N = 20, ρ = 0.05
15 / 16
Simulation results
Choosing Nu = 2 we get:
50 100 150 200 250 300
−1
0
1Pitcherror[deg]
50 100 150 200 250 300
−1
0
1
Yawerror[deg]
Time [s]
16 / 16
Thank you for your attention
V. Appendix
Sloshing dynamics
The motion of the rotating mass is given by
d2α
dt2
= κ
dα
dt
+
θ(α, ω)
mf r2
,
And function θ is given by
θ(α, ω) = r2
(ω2
y − ω2
z) sin α cos α − prωxωy sin α
+ prωxωz cos α − r2
ωyωz cos(2α).
Attidute dynamics
The torque τ given by
τ = τext +


0 ωz −ωy
−ωz 0 ωx
ωy −ωx 0

 · l,
where l = Jω is the angular momentum and τext is the torque applied by
the thrusters. Differentiating l and by virtue of the above we have
˙l = ˙Jω + J ˙ω = J (α) ˙αω + J ˙ω,
and given that τ = ˙l, we have that
τ = J (α) ˙αω + J ˙ω.
The attitude dynamics is now described by
˙ω = J−1
ΩJω + J−1
τext − J−1
J (α)βω.
Performance indicators and assessment
Performance indicators: (i) the pointing-accuracy indicator
JK
pa =
Tsim
k=Tsim−K
2
y,k + 2
z,k,
Tsim: simulation time, K: parameter; (ii) the total squared error indicator
Jtse =
Tsim
k=0
2
y,k + 2
z,k,
(iii) the actuation count Jy
act and Jz
act along the y and z axes and (iv) the
total actuation count Jact.
Performance indicators and assessment
Evaluation of the closed-loop performance by simulations over an period
Tsim = 300s - effect of ρ
ρ Jact J40
pa Jtse
0.005 168 0.0001 0.0510
0.05 84 0.0018 0.0834
0.1 80 0.0349 0.2988
0.2 79 0.1279 1.6862
Extended Kalman Filter
The state estimates ˆzk are updated according to
ˆzk+1 = (I − KkCfh(ˆzk, uk)) + Kkyk,
where Kk is determined by
Kk = GkC (CGkC + R)−1
,
Pk+1 = (I − KkC)Pk,
with
Fk =
∂fh
∂z (ˆzk,uk)
,
Gk = FkPkFk + Q.

More Related Content

What's hot

Regret Minimization in Multi-objective Submodular Function Maximization
Regret Minimization in Multi-objective Submodular Function MaximizationRegret Minimization in Multi-objective Submodular Function Maximization
Regret Minimization in Multi-objective Submodular Function Maximization
Tasuku Soma
 
QMC: Transition Workshop - Applying Quasi-Monte Carlo Methods to a Stochastic...
QMC: Transition Workshop - Applying Quasi-Monte Carlo Methods to a Stochastic...QMC: Transition Workshop - Applying Quasi-Monte Carlo Methods to a Stochastic...
QMC: Transition Workshop - Applying Quasi-Monte Carlo Methods to a Stochastic...
The Statistical and Applied Mathematical Sciences Institute
 
Sampled-Data Piecewise Affine Slab Systems: A Time-Delay Approach
Sampled-Data Piecewise Affine Slab Systems: A Time-Delay ApproachSampled-Data Piecewise Affine Slab Systems: A Time-Delay Approach
Sampled-Data Piecewise Affine Slab Systems: A Time-Delay Approach
Behzad Samadi
 
QMC: Transition Workshop - Probabilistic Integrators for Deterministic Differ...
QMC: Transition Workshop - Probabilistic Integrators for Deterministic Differ...QMC: Transition Workshop - Probabilistic Integrators for Deterministic Differ...
QMC: Transition Workshop - Probabilistic Integrators for Deterministic Differ...
The Statistical and Applied Mathematical Sciences Institute
 

What's hot (19)

Regret Minimization in Multi-objective Submodular Function Maximization
Regret Minimization in Multi-objective Submodular Function MaximizationRegret Minimization in Multi-objective Submodular Function Maximization
Regret Minimization in Multi-objective Submodular Function Maximization
 
The low-rank basis problem for a matrix subspace
The low-rank basis problem for a matrix subspaceThe low-rank basis problem for a matrix subspace
The low-rank basis problem for a matrix subspace
 
Pseudo Random Number Generators
Pseudo Random Number GeneratorsPseudo Random Number Generators
Pseudo Random Number Generators
 
Phase Retrieval: Motivation and Techniques
Phase Retrieval: Motivation and TechniquesPhase Retrieval: Motivation and Techniques
Phase Retrieval: Motivation and Techniques
 
Need for Controllers having Integer Coefficients in Homomorphically Encrypted D...
Need for Controllers having Integer Coefficients in Homomorphically Encrypted D...Need for Controllers having Integer Coefficients in Homomorphically Encrypted D...
Need for Controllers having Integer Coefficients in Homomorphically Encrypted D...
 
QMC: Operator Splitting Workshop, Perturbed (accelerated) Proximal-Gradient A...
QMC: Operator Splitting Workshop, Perturbed (accelerated) Proximal-Gradient A...QMC: Operator Splitting Workshop, Perturbed (accelerated) Proximal-Gradient A...
QMC: Operator Splitting Workshop, Perturbed (accelerated) Proximal-Gradient A...
 
QMC: Transition Workshop - Applying Quasi-Monte Carlo Methods to a Stochastic...
QMC: Transition Workshop - Applying Quasi-Monte Carlo Methods to a Stochastic...QMC: Transition Workshop - Applying Quasi-Monte Carlo Methods to a Stochastic...
QMC: Transition Workshop - Applying Quasi-Monte Carlo Methods to a Stochastic...
 
Engineering formula sheet
Engineering formula sheetEngineering formula sheet
Engineering formula sheet
 
QMC: Operator Splitting Workshop, A New (More Intuitive?) Interpretation of I...
QMC: Operator Splitting Workshop, A New (More Intuitive?) Interpretation of I...QMC: Operator Splitting Workshop, A New (More Intuitive?) Interpretation of I...
QMC: Operator Splitting Workshop, A New (More Intuitive?) Interpretation of I...
 
Sampled-Data Piecewise Affine Slab Systems: A Time-Delay Approach
Sampled-Data Piecewise Affine Slab Systems: A Time-Delay ApproachSampled-Data Piecewise Affine Slab Systems: A Time-Delay Approach
Sampled-Data Piecewise Affine Slab Systems: A Time-Delay Approach
 
Output Regulator_LinkedIn
Output Regulator_LinkedInOutput Regulator_LinkedIn
Output Regulator_LinkedIn
 
Graph for Coulomb damped oscillation
Graph for Coulomb damped oscillationGraph for Coulomb damped oscillation
Graph for Coulomb damped oscillation
 
Response Surface in Tensor Train format for Uncertainty Quantification
Response Surface in Tensor Train format for Uncertainty QuantificationResponse Surface in Tensor Train format for Uncertainty Quantification
Response Surface in Tensor Train format for Uncertainty Quantification
 
Absorbing Random Walk Centrality
Absorbing Random Walk CentralityAbsorbing Random Walk Centrality
Absorbing Random Walk Centrality
 
QMC: Transition Workshop - Probabilistic Integrators for Deterministic Differ...
QMC: Transition Workshop - Probabilistic Integrators for Deterministic Differ...QMC: Transition Workshop - Probabilistic Integrators for Deterministic Differ...
QMC: Transition Workshop - Probabilistic Integrators for Deterministic Differ...
 
beamer
beamerbeamer
beamer
 
Bode plot
Bode plot Bode plot
Bode plot
 
Contrastive Divergence Learning
Contrastive Divergence LearningContrastive Divergence Learning
Contrastive Divergence Learning
 
Richard Everitt's slides
Richard Everitt's slidesRichard Everitt's slides
Richard Everitt's slides
 

Similar to Sloshing-aware MPC for upper stage attitude control

controllability-and-observability.pdf
controllability-and-observability.pdfcontrollability-and-observability.pdf
controllability-and-observability.pdf
LAbiba16
 
EENG519FinalProjectReport
EENG519FinalProjectReportEENG519FinalProjectReport
EENG519FinalProjectReport
Daniel K
 
IC Design of Power Management Circuits (III)
IC Design of Power Management Circuits (III)IC Design of Power Management Circuits (III)
IC Design of Power Management Circuits (III)
Claudia Sin
 

Similar to Sloshing-aware MPC for upper stage attitude control (20)

Talk at SciCADE2013 about "Accelerated Multiple Precision ODE solver base on ...
Talk at SciCADE2013 about "Accelerated Multiple Precision ODE solver base on ...Talk at SciCADE2013 about "Accelerated Multiple Precision ODE solver base on ...
Talk at SciCADE2013 about "Accelerated Multiple Precision ODE solver base on ...
 
PCA on graph/network
PCA on graph/networkPCA on graph/network
PCA on graph/network
 
Introduction to Diffusion Monte Carlo
Introduction to Diffusion Monte CarloIntroduction to Diffusion Monte Carlo
Introduction to Diffusion Monte Carlo
 
Kalman
KalmanKalman
Kalman
 
Journey to structure from motion
Journey to structure from motionJourney to structure from motion
Journey to structure from motion
 
Discrete control2 converted
Discrete control2 convertedDiscrete control2 converted
Discrete control2 converted
 
Article 1
Article 1Article 1
Article 1
 
Discrete control
Discrete controlDiscrete control
Discrete control
 
Discrete control2
Discrete control2Discrete control2
Discrete control2
 
alt klausur
alt klausuralt klausur
alt klausur
 
controllability-and-observability.pdf
controllability-and-observability.pdfcontrollability-and-observability.pdf
controllability-and-observability.pdf
 
residue
residueresidue
residue
 
EENG519FinalProjectReport
EENG519FinalProjectReportEENG519FinalProjectReport
EENG519FinalProjectReport
 
EAGES Proceedings - D. N. Sinitsyn
EAGES Proceedings - D. N. SinitsynEAGES Proceedings - D. N. Sinitsyn
EAGES Proceedings - D. N. Sinitsyn
 
Balancing Robot Kalman Filter Design – Estimation Theory Project
Balancing Robot Kalman Filter Design – Estimation Theory ProjectBalancing Robot Kalman Filter Design – Estimation Theory Project
Balancing Robot Kalman Filter Design – Estimation Theory Project
 
Lelt 240 semestre i-2021
Lelt   240 semestre i-2021Lelt   240 semestre i-2021
Lelt 240 semestre i-2021
 
IC Design of Power Management Circuits (III)
IC Design of Power Management Circuits (III)IC Design of Power Management Circuits (III)
IC Design of Power Management Circuits (III)
 
The Controller Design For Linear System: A State Space Approach
The Controller Design For Linear System: A State Space ApproachThe Controller Design For Linear System: A State Space Approach
The Controller Design For Linear System: A State Space Approach
 
cheb_conf_aksenov.pdf
cheb_conf_aksenov.pdfcheb_conf_aksenov.pdf
cheb_conf_aksenov.pdf
 
Computation of electromagnetic fields scattered from dielectric objects of un...
Computation of electromagnetic fields scattered from dielectric objects of un...Computation of electromagnetic fields scattered from dielectric objects of un...
Computation of electromagnetic fields scattered from dielectric objects of un...
 

More from Pantelis Sopasakis

More from Pantelis Sopasakis (20)

Accelerated reconstruction of a compressively sampled data stream
Accelerated reconstruction of a compressively sampled data streamAccelerated reconstruction of a compressively sampled data stream
Accelerated reconstruction of a compressively sampled data stream
 
Smart Systems for Urban Water Demand Management
Smart Systems for Urban Water Demand ManagementSmart Systems for Urban Water Demand Management
Smart Systems for Urban Water Demand Management
 
OpenTox API introductory presentation
OpenTox API introductory presentationOpenTox API introductory presentation
OpenTox API introductory presentation
 
Water demand forecasting for the optimal operation of large-scale water networks
Water demand forecasting for the optimal operation of large-scale water networksWater demand forecasting for the optimal operation of large-scale water networks
Water demand forecasting for the optimal operation of large-scale water networks
 
Amiodarone administration
Amiodarone administrationAmiodarone administration
Amiodarone administration
 
Drinking Water Networks: Challenges and opportunites
Drinking Water Networks: Challenges and opportunitesDrinking Water Networks: Challenges and opportunites
Drinking Water Networks: Challenges and opportunites
 
Controlled administration of Amiodarone using a Fractional-Order Controller
Controlled administration of Amiodarone using a Fractional-Order ControllerControlled administration of Amiodarone using a Fractional-Order Controller
Controlled administration of Amiodarone using a Fractional-Order Controller
 
Model Predictive Control based on Reduced-Order Models
Model Predictive Control based on Reduced-Order ModelsModel Predictive Control based on Reduced-Order Models
Model Predictive Control based on Reduced-Order Models
 
OpenTox API: Lessons learnt, limitations and challenges
OpenTox API: Lessons learnt, limitations and challengesOpenTox API: Lessons learnt, limitations and challenges
OpenTox API: Lessons learnt, limitations and challenges
 
Just Another QSAR Project under OpenTox
Just Another QSAR Project under OpenToxJust Another QSAR Project under OpenTox
Just Another QSAR Project under OpenTox
 
ToxOtis: A Java Interface to the OpenTox Predictive Toxicology Network
ToxOtis: A Java Interface to the OpenTox Predictive Toxicology NetworkToxOtis: A Java Interface to the OpenTox Predictive Toxicology Network
ToxOtis: A Java Interface to the OpenTox Predictive Toxicology Network
 
Frobenious theorem
Frobenious theoremFrobenious theorem
Frobenious theorem
 
Set convergence
Set convergenceSet convergence
Set convergence
 
Polytopes inside polytopes
Polytopes inside polytopesPolytopes inside polytopes
Polytopes inside polytopes
 
Environmental Risk Assessment on the web
Environmental Risk Assessment on the webEnvironmental Risk Assessment on the web
Environmental Risk Assessment on the web
 
Modelling & Control of Drinkable Water Networks
Modelling & Control of Drinkable Water NetworksModelling & Control of Drinkable Water Networks
Modelling & Control of Drinkable Water Networks
 
EFFINET - Initial Presentation
EFFINET - Initial PresentationEFFINET - Initial Presentation
EFFINET - Initial Presentation
 
Παρουσίαση Προόδου Διδακτορικού
Παρουσίαση Προόδου ΔιδακτορικούΠαρουσίαση Προόδου Διδακτορικού
Παρουσίαση Προόδου Διδακτορικού
 
Physiologically Based Modelling and Predictive Control
Physiologically Based Modelling and Predictive ControlPhysiologically Based Modelling and Predictive Control
Physiologically Based Modelling and Predictive Control
 
Nonlinear observer design
Nonlinear observer designNonlinear observer design
Nonlinear observer design
 

Recently uploaded

Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
Bhaskar Mitra
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Peter Udo Diehl
 

Recently uploaded (20)

From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
 
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya HalderCustom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomSalesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
 
UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 

Sloshing-aware MPC for upper stage attitude control

  • 1. Sloshing-aware attitude control of impulsively actuated spacecraft P. Sopasakisa, D. Bernardinia,c, H. Strauchb, S. Bennanid and A. Bemporada,c a Institute for Advanced Studies Lucca, b Airbus DS, c ODYS Srl d European Space Agency July 14, 2015
  • 4. Outline 1. Derivation of a sloshing-aware dynamical model 2. State estimation and model linearisation 3. Modelling of minimum impulse effect 4. Model predictive control & simulations 2 / 16
  • 7. Modelling sloshing The concept of a rotating mass is used to model the sloshing dynamics. Using Lagrangian arguments we arrive at: ˙α = β, ˙β = κβ + θ(α, ω) mf r2 where θ is a nonlinear functiona which depends of parameters p and r. a Given in the appendix 4 / 16
  • 8. Modelling sloshing The inertia tensor J of the upper stage is: J(α) = J0 + Jmf (α) J0: diagonal inertia tensor without sloshing, Jmf (α) contribution of the moving mass given by Jmf (α)=mf   r2 pr cos α pr sin α ∗ p2 + r2 sin2 α − sin α cos α ∗ ∗ p2 + r2 cos2 α   . 5 / 16
  • 9. Modelling sloshing The system dynamics is given by: ˙α = β, ˙β = κβ + θ(α,ω) mf r2 Sloshing ˙ω = ψ(ω)ω + J−1 τext − J−1 J (α)βω ˙y = ωy + zωx, ˙z = ωz − yωx Pitch and yaw errors where ψ(ω) = J−1Ω(ω)J with Ω(ω) =   0 ωz −ωy −ωz 0 ωx ωy −ωx 0   . 6 / 16
  • 10. System dynamics The attitude dynamics is described by the state vector z ∈ R7 z(t) = ( y, z, ωx, ωy, ωz, α, β) with input u(t) = (τext,x, τext,y, τext,z) as follows dz(t) dt = F(z(t), u(t)). The above system is discretised with sampling period h > 0: zk+1 = zk + hF(zk, uk) =: fh(zk, uk) * We measure only the five first coordinates of z, that is yk = Czk. 7 / 16
  • 11. II. State Estimation and Linearisation
  • 12. Ext. Kalman Filter Using the EKF the estimates ˆzk are updated as ˆzk+1 = (I − KkCfh(ˆzk, uk)) + Kkyk where Kk is computed using first-order information of the system: Fk = ∂fh ∂z (ˆzk,uk) . 8 / 16
  • 13. Ext. Kalman Filter 0 20 40 60 80 100 1 2 3 4 5 6 7 8 9 10 x 10 −4 Time [s] Stateestimateionerror(norm) 9 / 16
  • 14. Linearisation At time kj we linearise the system around the current estimated state ˆzkj and input ukj : zk+1 = Akj zk + Bkj uk + fkj , for k > kj where Akj , Bkj and fkj are functions of ˆzkj and ukj as follows Akj = I + h ∂F ∂z (ˆzkj ,ukj ) Bkj = h ∂F ∂u (ˆzkj ,ukj ) fkj = fh(ˆzkj , ukj ) 10 / 16
  • 16. Minimum impulse effect Minimum impulse effect: thrusters cannot produce arbitrarily small torques, thus uk is constrained in U = [−umax, −umin] ∪ {0} ∪ [umin, umax] We introduce the binary vectors δ− k and δ+ k so that1 δ− k = [uk ≤ −umin], δ+ k = [uk ≥ umin], and the auxiliary variable ηk defined as ηk,i = [δ− k,i ∨ δ+ k,i] · uk,i 1 Here ≤ and ≥ are element-wise comparison operators. 11 / 16
  • 17. Minimum impulse effect To detect thruster activations we use the variable vk = [δ− k ∨ δ+ k ] and we recast the system dynamics as zk+1 = Azk + Bηk + f, γk+1 = γk + [ 1 1 1 ] vk, where γk is the total actuation count up to time k on which we impose: γk ≤ γmax. 12 / 16
  • 18. IV. Hybrid Model Predictive Control
  • 19. Control scheme Control objectives: BBQ mode: Track a desired spin rate 5deg/sec with a low actuation count and steer the pitch and yaw errors to 0. HMPC   EKF   Online   Linearisa2on     (A, B, f) ˆz u y ˆz 13 / 16
  • 20. Hybrid Model Predictive Control MPC problem2: P(x0, γ0, A, B, f) : min πN VN (πN , γ0) s.t. x(0) = x0, γ(0) = γ0, Hybrid dynamics for k ∈ N[0,Nu−1], Assume U = [−umax, umax] for k ∈ N[Nu,N−1], where VN (πN , γ0)= QN zN p + ρ(γN − γ0) Penalises the tot. actuation count along the horizon + N−1 k=0 Qzk p + Rηk p 2 Optimisation with respect to the sequence of control actions uk, δk, vk and ηk. 14 / 16
  • 21. Simulation results3 −0.2 0 0.2 0.4 0.6 0.8 1 1.2 −0.2 0 0.2 0.4 0.6 0.8 1 1.2 1.4 Pitch error [deg] Yawerror[deg] 50 100 150 200 250 300 0 0.2 0.4 0.6 0.8 Pitcherror[deg] 50 100 150 200 250 300 0 0.5 1 Yawerror[deg] Time [s] 0 50 100 150 200 250 300 −6 −4 −2 0 2 4 6 Time [s] Spinrate[deg/s] 0 50 100 150 200 250 300 0 1000 2000 T x 0 50 100 150 200 250 300 −2000 0 2000 4000 T y 0 50 100 150 200 250 300 −2000 0 2000 4000 T z Time [s] 3 Simulation parameters: Nu = 8, N = 20, ρ = 0.05 15 / 16
  • 22. Simulation results Choosing Nu = 2 we get: 50 100 150 200 250 300 −1 0 1Pitcherror[deg] 50 100 150 200 250 300 −1 0 1 Yawerror[deg] Time [s] 16 / 16
  • 23. Thank you for your attention
  • 25. Sloshing dynamics The motion of the rotating mass is given by d2α dt2 = κ dα dt + θ(α, ω) mf r2 , And function θ is given by θ(α, ω) = r2 (ω2 y − ω2 z) sin α cos α − prωxωy sin α + prωxωz cos α − r2 ωyωz cos(2α).
  • 26. Attidute dynamics The torque τ given by τ = τext +   0 ωz −ωy −ωz 0 ωx ωy −ωx 0   · l, where l = Jω is the angular momentum and τext is the torque applied by the thrusters. Differentiating l and by virtue of the above we have ˙l = ˙Jω + J ˙ω = J (α) ˙αω + J ˙ω, and given that τ = ˙l, we have that τ = J (α) ˙αω + J ˙ω. The attitude dynamics is now described by ˙ω = J−1 ΩJω + J−1 τext − J−1 J (α)βω.
  • 27. Performance indicators and assessment Performance indicators: (i) the pointing-accuracy indicator JK pa = Tsim k=Tsim−K 2 y,k + 2 z,k, Tsim: simulation time, K: parameter; (ii) the total squared error indicator Jtse = Tsim k=0 2 y,k + 2 z,k, (iii) the actuation count Jy act and Jz act along the y and z axes and (iv) the total actuation count Jact.
  • 28. Performance indicators and assessment Evaluation of the closed-loop performance by simulations over an period Tsim = 300s - effect of ρ ρ Jact J40 pa Jtse 0.005 168 0.0001 0.0510 0.05 84 0.0018 0.0834 0.1 80 0.0349 0.2988 0.2 79 0.1279 1.6862
  • 29. Extended Kalman Filter The state estimates ˆzk are updated according to ˆzk+1 = (I − KkCfh(ˆzk, uk)) + Kkyk, where Kk is determined by Kk = GkC (CGkC + R)−1 , Pk+1 = (I − KkC)Pk, with Fk = ∂fh ∂z (ˆzk,uk) , Gk = FkPkFk + Q.