Recursive Inertia Estimation With Semidefinite Programming

Recursive Inertia Estimation With Semidefinite Programming

A new algorithm for estimating a spacecraft's inertia matrix on orbit. Presented at AIAA SciTech 2017. Check out the paper here: http://zacinaction.github.io/docs/Inertia_Estimation.pdf

6348c7765745abd70d165eb3e34eca1b?s=128

Zac Manchester

January 13, 2017
Tweet

Transcript

  1. Zac  Manchester Harvard  University Recursive  Inertia  Estimation  with   Semidefinite

     Programming Mason  Peck Cornell  University
  2. Why? 1

  3. Gyrostat  Dynamics 2 Inertia Rotor  Torque External  Torque Angular  Velocity

    Rotor  Momentum J ˙ ! + !⇥(J! + ⇢) + ˙ ⇢ = ⌧
  4. A  Least-­‐Squares  Problem 3 j = ⇥ J11 J22 J33

    J12 J13 J23 ⇤T
  5. A  Least-­‐Squares  Problem 4 J! = G(!)j j = ⇥

    J11 J22 J33 J12 J13 J23 ⇤T
  6. A  Least-­‐Squares  Problem 5 J! = G(!)j G( ˙ !)

    + !⇥G(!) j = ⌧ ˙ ⇢ !⇥⇢ j = ⇥ J11 J22 J33 J12 J13 J23 ⇤T
  7. A  Least-­‐Squares  Problem 6 J! = G(!)j H y G(

    ˙ !) + !⇥G(!) j = ⌧ ˙ ⇢ !⇥⇢ j = ⇥ J11 J22 J33 J12 J13 J23 ⇤T
  8. A  Least-­‐Squares  Problem 7 J! = G(!)j H y G(

    ˙ !) + !⇥G(!) j = ⌧ ˙ ⇢ !⇥⇢ H(!, ˙ !)j = y(!, ⇢, ˙ ⇢, ⌧) j = ⇥ J11 J22 J33 J12 J13 J23 ⇤T
  9. Some  Least-­‐Squares  Problems… 8 H(!, ˙ !)j = y(!, ⇢,

    ˙ ⇢, ⌧)
  10. Some  Least-­‐Squares  Problems… 9 H(!, ˙ !)j = y(!, ⇢,

    ˙ ⇢, ⌧) We  don’t  have  measurements  of  this
  11. Some  Least-­‐Squares  Problems… 10 H(!, ˙ !)j = y(!, ⇢,

    ˙ ⇢, ⌧) We  don’t  have  measurements  of  this This  doesn’t  necessarily  form  a  valid  inertia  matrix
  12. Principle  of  Least  Action 11 L(q, ˙ q) = T

    V S = Z tf t0 L (q(t), ˙ q(t)) dt = 0
  13. 12 Discrete  Mechanics = N X k=0 Z tk+1 tk

    L(q, ˙ q) dt S = Z tf t0 L(q, ˙ q) dt
  14. 13 Discrete  Mechanics = N X k=0 Z tk+1 tk

    L(q, ˙ q) dt S = Z tf t0 L(q, ˙ q) dt ⇡ N X k=0 L ✓ qk, qk+1 qk h ◆ h
  15. 14 Discrete  Mechanics = N X k=0 Z tk+1 tk

    L(q, ˙ q) dt S = Z tf t0 L(q, ˙ q) dt Sd = N X k=0 Ld(qk, qk+1) = 0 ⇡ N X k=0 L ✓ qk, qk+1 qk h ◆ h
  16. 15 Discrete  Gyrostat  Equation fk = 2 6 6 6

    4 k q 1 T k k 3 7 7 7 5 H( k , k+1)j = y( k , k+1 , ⇢k , ⇢k+1 , ⌧k+1)
  17. 16 What  Makes  A  “Valid”  Inertia  Matrix?

  18. 17 J 2 S3 What  Makes  A  “Valid”  Inertia  Matrix?

  19. What  Makes  A  “Valid”  Inertia  Matrix? 18 J 2 S3

    J > 0 x T Jx > 0 8 x 6= 0
  20. 19 J 2 S3 J > 0 Jii  Jkk

    + J`` x T Jx > 0 8 x 6= 0 What  Makes  A  “Valid”  Inertia  Matrix?
  21. Semidefinite  Programming  (SDP) 20 minimize x cT x subject to

    F0 + n X i =1 xiFi 0  x z z y 0
  22. 21 Schur Complement  A B BT C 0 =)

    ( C > 0 A BC 1BT 0
  23. 22 SDP  Inertia  Estimation  Formulation minimize ⇥ · · ·

    0 · · · 1 ⇤  i s subject to 8 > > > > > > > > < > > > > > > > > :  s ( Hj y ) T ( Hj y ) I 0 J > 0 J11 + J22 J33 0 J11 + J33 J22 0 J22 + J33 J11 0
  24. 0 20 40 60 80 -0.2 -0.1 0 0.1 1

    0 20 40 60 80 -0.1 -0.05 0 0.05 2 0 20 40 60 80 Time (s) -0.04 -0.02 0 0.02 3 0 20 40 60 80 -0.05 0 0.05 0.1 1 0 20 40 60 80 -0.05 0 0.05 0.1 2 0 20 40 60 80 Time (s) -0.05 0 0.05 0.1 3 23 Slewing  Spacecraft  Example
  25. 0 20 40 60 80 10-9 10-7 10-5 10-3 10-1

    J 11 SDP Variational SDP Finite Diff. Momentum Based 0 20 40 60 80 10-9 10-7 10-5 10-3 10-1 J 22 0 20 40 60 80 Time (s) 10-9 10-7 10-5 10-3 10-1 J 33 0 20 40 60 80 10-9 10-7 10-5 10-3 10-1 J 12 0 20 40 60 80 10-9 10-7 10-5 10-3 10-1 J 13 0 20 40 60 80 Time (s) 10-9 10-7 10-5 10-3 10-1 J 23 24 Slewing  Spacecraft  Example
  26. 0 10 20 30 40 50 60 -0.2 0 0.2

    1 0 10 20 30 40 50 60 -0.2 -0.1 0 0.1 2 0 10 20 30 40 50 60 Time (s) 0.76 0.77 0.78 0.79 3 0 10 20 30 40 50 60 -0.1 0 0.1 1 0 10 20 30 40 50 60 -0.1 0 0.1 2 0 10 20 30 40 50 60 Time (s) -0.1 0 0.1 3 25 Spinning  Spacecraft  Example
  27. 0 10 20 30 40 50 60 10-8 10-6 10-4

    10-2 100 J 12 0 10 20 30 40 50 60 10-8 10-6 10-4 10-2 100 J 13 0 10 20 30 40 50 60 Time (s) 10-8 10-6 10-4 10-2 100 J 23 0 10 20 30 40 50 60 10-8 10-6 10-4 10-2 100 J 11 SDP Variational SDP Finite Diff. Momentum Based 0 10 20 30 40 50 60 10-8 10-6 10-4 10-2 100 J 22 0 10 20 30 40 50 60 Time (s) 10-8 10-6 10-4 10-2 100 J 33 26 Spinning  Spacecraft  Example
  28. 27 Conclusions • SDP  formulation  guarantees  that  a  valid  inertia

     is  returned • Discrete  mechanics  formulation  eliminates  noise   amplification  problems • A  priori  knowledge  can  be  included  in  the  estimator  to   improve  convergence
  29. Questions? 28 zmanchester@seas.harvard.edu