attitude determination & control for university cubesats

35
Attitude Determination & Control for University CubeSats – KISS (Keep It Simple, Students) John Rakoczy NASA MSFC Alabama Space Grant Consortium CubeSat Workshop November 9, 2018

Upload: others

Post on 27-Nov-2021

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Attitude Determination & Control for University CubeSats

Attitude Determination & Control for University CubeSats– KISS (Keep It Simple, Students)

John RakoczyNASA MSFC

Alabama Space Grant Consortium CubeSat WorkshopNovember 9, 2018

Page 2: Attitude Determination & Control for University CubeSats

ADCS ArchitecturesSimple, inexpensive Complex, expensive

Attitude Determination Sun SensorMagnetometerMEMS IMU

Sun Sensor4MagnetometerMEMS IMUStar Tracker

Attitude Control Magnetic torque rods Magnetic torque rodsReaction wheelsReaction control system

Approximate cost < $20K $200K-$500K

Pointing Accuracy > 5 degrees < 1 degree

Page 3: Attitude Determination & Control for University CubeSats

Your CubeSat has ejected from the launch vehicle.

What is the first thing it should do?

Page 4: Attitude Determination & Control for University CubeSats

Damp Tip-off Rates

β€’ Find out from launch provider what rates (3 axes) to expect from ejection (typically ~5 deg/sec or less)

β€’ How do we damp the rates?β€’ We can use a propulsion system (usually way too expensive for university

cubesats)β€’ Or, we can use reaction wheels (still expensive)β€’ Or, we can use magnetic torque rods

β€’ Bdot control

Page 5: Attitude Determination & Control for University CubeSats

Earth is a big dipole magnet!

S

N

Page 6: Attitude Determination & Control for University CubeSats

Bdot Controller Example

βˆ†βˆ’βˆ’βˆ†βˆ’βˆ’βˆ†βˆ’βˆ’

βˆ†=

)()()()()()(

1

ttBtBttBtBttBtB

tBBB

BzBz

ByBy

BxBx

Bz

By

Bx

seconds 10900

000,50

000000

332211

33

22

11

=βˆ†===

=

βˆ’βˆ’

βˆ’=

tKKK

K

BBB

KK

KK

MMM

Bz

By

Bx

z

y

x

Page 7: Attitude Determination & Control for University CubeSats

Magnetic Torque Rod Actuation

nNIAM

BMT

Β΅=

Γ—=

Page 8: Attitude Determination & Control for University CubeSats

0 2 4 6 8 10 12 14 16 18 200

2

4

Rol

l (de

g/se

c)

Body angular rates during Bdot tip-off damping

0 2 4 6 8 10 12 14 16 18 20-4

-2

0P

itch

(deg

/sec

)

0 2 4 6 8 10 12 14 16 18 200

2

4

Time (orbits)

Yaw

(deg

/sec

)

Page 9: Attitude Determination & Control for University CubeSats

10 11 12 13 14 15 16 17 18 19 200

0.05

0.1

Rol

l (de

g/se

c)

Body angular rates during Bdot tip-off damping

10 11 12 13 14 15 16 17 18 19 20-0.14

-0.12

-0.1

-0.08

Pitc

h (d

eg/s

ec)

10 11 12 13 14 15 16 17 18 19 200.05

0.1

0.15

0.2

Time (orbits)

Yaw

(deg

/sec

)

Page 10: Attitude Determination & Control for University CubeSats

Why does Bdot work so well?

Because Bdot is proportional to the angular rate of the vehicle

So it behaves like derivative control (a damper) – it’s always stable!

𝐡𝐡𝐼𝐼𝐼𝐼

πœ”πœ”Magnetometer𝐾𝐾𝐡𝐡

�̇�𝐡M0

-

We get exponential decay with time constant proportional to 𝐾𝐾𝐡𝐡𝐡𝐡/𝐼𝐼

Limitation: Bdot control will only get angular rates down to 2 revs/orbit

Page 11: Attitude Determination & Control for University CubeSats

Blue Canyon Technologies Mini Reaction Wheel Sinclair Interplanetary Mini Reaction Wheels

Or Use Miniature Reaction Wheels (if you can afford them)

𝐻𝐻𝑀𝑀𝑀𝑀𝑀𝑀𝑀𝑀𝑀 > πΌπΌπ‘£π‘£π‘€π‘€π‘€π‘£π‘£π‘£π‘£π‘€π‘€π‘€π‘€πœ”πœ”π‘‘π‘‘π‘£π‘£π‘‘π‘‘βˆ’π‘œπ‘œπ‘œπ‘œπ‘œπ‘œ

Page 12: Attitude Determination & Control for University CubeSats

What do we do next?

Page 13: Attitude Determination & Control for University CubeSats

Find the Sun!

And figure out where the heck we’re pointed

Sun Sensors from Sinclair Interplanetary

Page 14: Attitude Determination & Control for University CubeSats

Attitude EstimationTRIAD Technique

vectorfield magnetic reference B

vectorsun reference

vectorfield magnetic measured B

vectorsun measured

r

m

=

=

=

=

r

m

S

S

213

112

1

/

MMM

BMBMM

SM

mm

m

Γ—=

Γ—Γ—=

=

213

112

1

/

RRR

BRBRR

SR

rr

r

Γ—=

Γ—Γ—=

=

[ ][ ]TIB RRRMMMT

321321,

=

Page 15: Attitude Determination & Control for University CubeSats

Extract attitude quaternion from DCM

𝑇𝑇𝐡𝐡,𝐼𝐼 =π‘žπ‘ž12 βˆ’ π‘žπ‘ž22 βˆ’ π‘žπ‘ž32 + π‘žπ‘ž42 2(π‘žπ‘ž1π‘žπ‘ž2 + π‘žπ‘ž3π‘žπ‘ž4) 2(π‘žπ‘ž1π‘žπ‘ž3 βˆ’ π‘žπ‘ž2π‘žπ‘ž4)

2(π‘žπ‘ž1π‘žπ‘ž2 βˆ’ π‘žπ‘ž3π‘žπ‘ž4) βˆ’π‘žπ‘ž12 + π‘žπ‘ž22 βˆ’ π‘žπ‘ž32 + π‘žπ‘ž42 2(π‘žπ‘ž2π‘žπ‘ž3 + π‘žπ‘ž1π‘žπ‘ž4)2(π‘žπ‘ž1π‘žπ‘ž3 + π‘žπ‘ž2π‘žπ‘ž4) 2(π‘žπ‘ž2π‘žπ‘ž3 βˆ’ π‘žπ‘ž1π‘žπ‘ž4) βˆ’π‘žπ‘ž12 βˆ’ π‘žπ‘ž22 + π‘žπ‘ž32 + π‘žπ‘ž42

π‘žπ‘ž1 = 𝑒𝑒1 sinπœƒπœƒ2

π‘žπ‘ž2 = 𝑒𝑒2 sinπœƒπœƒ2

π‘žπ‘ž3 = 𝑒𝑒3 sinπœƒπœƒ2

π‘žπ‘ž4 = cosπœƒπœƒ2

πœƒπœƒ 𝑖𝑖𝐼𝐼 𝑑𝑑𝑑𝑒𝑒 eigenangle

𝑒𝑒1𝑒𝑒2𝑒𝑒3

is the eigenaxis

Formulas for extracting quaternions from the DCM may be found in any goodSpacecraft attitude dynamics and control textbook

Page 16: Attitude Determination & Control for University CubeSats

TRIAD Attitude Estimation Accuracy Example

Sun Vector Uncertainty (3-

sigma)

Mag Field Vector Uncertainty (3-

sigma)

Attitude Estimation Error

(1-sigma)

1 deg 10 deg 2 deg

1 deg 15 deg 3 deg

1 deg 20 deg 4 deg

Page 17: Attitude Determination & Control for University CubeSats

Single-vector Attitude Estimation(if you’re really poor and can only afford one sensor)

23

22

214

3

2

1

3

2

1

2121

21211

2

1

1

)2/sin()2/sin()2/sin(

axis eigen the,)(/)(

angle eigen the,))/()((sin

qqqq

eee

qqq

VVVVe

VVVV

VV

VV

ref

B

βˆ’βˆ’βˆ’=

=

Γ—Γ—=

β€’Γ—=

=

=

βˆ’

φφφ

Ο†

*** Single-vector technique works only with other means of angular rate estimation ***This method gives a crappy attitude estimate

Page 18: Attitude Determination & Control for University CubeSats

Blue Canyon Technologies Mini Star Tracker

Accurate Attitude Estimation – Star Trackers

Axis Accuracy

Pitch/Yaw < 10 arcseconds

Roll about Boresight < 50 arcseconds

Sinclair Interplanetary Mini Star Trackers

Page 19: Attitude Determination & Control for University CubeSats

Or use a Kalman Filter

β€’ Uses the sensors previously discussed to give an imporved attitude estimate.

β€’ Can also estimate biases in the inexpensive MEMS rate gyros β€’ I won’t cover this topic today. It’s usually a whole semester graduate

course. There are a lot of good papers out there for the bright, motivated undergraduate.

Page 20: Attitude Determination & Control for University CubeSats

Angular Rate Estimation from Quaternion(If you’re so poor you can’t afford MEMS rate gyros)

βˆ†βˆ’βˆ’βˆ†βˆ’βˆ’βˆ†βˆ’βˆ’βˆ†βˆ’βˆ’

βˆ†βˆ’βˆ’βˆ†βˆ’βˆ†βˆ’βˆ’βˆ†βˆ’βˆ†βˆ’βˆ’βˆ†βˆ’βˆ†βˆ’βˆ†βˆ’βˆ’βˆ†βˆ’βˆ’βˆ†βˆ’βˆ’βˆ†βˆ’βˆ†βˆ’

βˆ†=

)()()()()()()()(

)()()()()()()()()()()()(

2Λ†

44

33

22

11

3412

2143

1234

ttqtqttqtqttqtqttqtq

ttqttqttqttqttqttqttqttqttqttqttqttq

tω

frame-body in the estimate rateangular theis Λ†seconds 1.0nominally interval, sample estimation rateangular theis

interval samplelast thefrom estimate quaternion theis )(estimate quaternioncurrent theis )(

Ο‰t

ttqtq

βˆ†βˆ†βˆ’

But this rate estimate will be very crappy if your quaternion estimate isn’t very good******Differentiation is an inherently noisy process******

Page 21: Attitude Determination & Control for University CubeSats

We found the Sun!

Now let’s point toward it!

Page 22: Attitude Determination & Control for University CubeSats

Maneuvers

time time time

Commanded Angle Commanded Angular Rate Commanded Torque

Classical β€œBang-off-Bang” control

Page 23: Attitude Determination & Control for University CubeSats

Maneuver Considerations

𝐻𝐻𝑀𝑀𝑀𝑀𝑀𝑀𝑀𝑀𝑀 > πΌπΌπ‘£π‘£π‘€π‘€π‘€π‘£π‘£π‘£π‘£π‘€π‘€π‘€π‘€πœ”πœ”π‘£π‘£π‘œπ‘œπ‘π‘π‘π‘π‘π‘π‘π‘π‘π‘π‘€π‘€π‘π‘

𝑇𝑇𝑀𝑀𝑀𝑀𝑀𝑀𝑀𝑀𝑀 > π‘‡π‘‡π‘£π‘£π‘œπ‘œπ‘π‘π‘π‘π‘π‘π‘π‘π‘π‘π‘€π‘€π‘π‘

If you’re using reaction wheels for the maneuver, size your wheels so that

If you’re using magnetic torque rods for the maneuver, just be patient.It might take a while, but you’ll eventually get there.You’ll also have to consider torque rod limitations (see later slide)

Page 24: Attitude Determination & Control for University CubeSats

Now let’s hold an attitude!

Page 25: Attitude Determination & Control for University CubeSats

Different kinds of attitudes

β€’ Inertial – point to a spot on the celestial sphereβ€’ Toward a star for a telescope science missionβ€’ Toward the sun to charge batteries

β€’ Nadir pointing (or LVLH Local Vertical Local Horizontal) – always point down toward the earth

β€’ A target on earth for earth science observationsβ€’ A ground station for data transmission

β€’ Or if we don’t have any money and don’t care about our attitude, we can stick a manget in the spacecraft and let it rotate 2 revolutions per orbit.

Page 26: Attitude Determination & Control for University CubeSats

Attitude Control (PD control)

1𝐼𝐼𝐼𝐼

1𝐼𝐼

+

𝐾𝐾𝑃𝑃

𝐾𝐾𝐷𝐷

𝑇𝑇 πœƒπœƒπœ”πœ”

πœƒπœƒπ‘Ÿπ‘Ÿπ‘€π‘€π‘œπ‘œ

πœ”πœ”π‘Ÿπ‘Ÿπ‘€π‘€π‘œπ‘œ

𝐢𝐢𝑑𝐢𝐢𝐢𝐢𝐢𝐢𝐢𝐢𝑑𝑑𝑒𝑒𝐢𝐢𝑖𝑖𝐼𝐼𝑑𝑑𝑖𝑖𝐢𝐢 π‘’π‘’π‘žπ‘žπ‘’π‘’πΆπΆπ‘‘π‘‘π‘–π‘–π‘’π‘’π‘’π‘’: πΌπΌοΏ½ΜˆοΏ½πœƒ + πΎπΎπ·π·οΏ½Μ‡οΏ½πœƒ + πΎπΎπ‘ƒπ‘ƒπœƒπœƒ = 0 𝐾𝐾𝑃𝑃 𝑖𝑖𝐼𝐼 𝑙𝑙𝑖𝑖𝑙𝑙𝑒𝑒 𝐢𝐢 𝐼𝐼𝑠𝑠𝐢𝐢𝑖𝑖𝑒𝑒𝑠𝑠 ("𝑠𝑠𝐢𝐢𝑒𝑒𝑠𝑠𝑒𝑒𝐢𝐢𝑑𝑑𝑖𝑖𝑒𝑒𝑒𝑒𝐢𝐢𝑙𝑙")𝐾𝐾𝐷𝐷 𝑖𝑖𝐼𝐼 𝑙𝑙𝑖𝑖𝑙𝑙𝑒𝑒 𝐢𝐢 𝑑𝑑𝐢𝐢𝑑𝑑𝑠𝑠𝑒𝑒𝐢𝐢 ("derivative")

βˆ’

βˆ’

Page 27: Attitude Determination & Control for University CubeSats

Gravity Gradient Torque & Stabilization

Earth

ΞΈ

πΌπΌπ‘‘π‘‘π‘£π‘£π‘‘π‘‘π‘£π‘£π‘€οΏ½ΜˆοΏ½πœƒ + 3πœ‡πœ‡π‘…π‘…3

𝐼𝐼𝑦𝑦𝑐𝑐𝑀𝑀 βˆ’ πΌπΌπ‘Ÿπ‘Ÿπ‘œπ‘œπ‘€π‘€π‘€π‘€ sinπœƒπœƒ cosπœƒπœƒ = 0

Linearized for small angles:

Which looks a lot like the linearized pendulum equation:

Don’t be fooled by the apparent linear stability.This is nonlinear and can behave unpredictably.

How do we ensure stability?

πΌπΌπ‘‘π‘‘π‘£π‘£π‘‘π‘‘π‘£π‘£π‘€οΏ½ΜˆοΏ½πœƒ + 3πœ‡πœ‡π‘…π‘…3 𝐼𝐼𝑦𝑦𝑐𝑐𝑀𝑀 βˆ’ πΌπΌπ‘Ÿπ‘Ÿπ‘œπ‘œπ‘€π‘€π‘€π‘€ πœƒπœƒ = 0

πΌπΌπ‘‘π‘‘π‘£π‘£π‘‘π‘‘π‘£π‘£π‘€οΏ½ΜˆοΏ½πœƒ +𝑠𝑠𝐿𝐿

πœƒπœƒ = 0

Page 28: Attitude Determination & Control for University CubeSats

Add Damping to Supplement Gravity Gradient Stabilization

β€’ Use torque rods in an angular rate feedback loop, or

β€’ Recall Bdot control behaves like derivative control and adds damping

Earth

ΞΈ

Linearized for small angles:

πΌπΌπ‘‘π‘‘π‘£π‘£π‘‘π‘‘π‘£π‘£π‘€οΏ½ΜˆοΏ½πœƒ + 3πœ‡πœ‡π‘…π‘…3

𝐼𝐼𝑦𝑦𝑐𝑐𝑀𝑀 βˆ’ πΌπΌπ‘Ÿπ‘Ÿπ‘œπ‘œπ‘€π‘€π‘€π‘€ sinπœƒπœƒ cosπœƒπœƒ = 0

πΌπΌπ‘‘π‘‘π‘£π‘£π‘‘π‘‘π‘£π‘£π‘€οΏ½ΜˆοΏ½πœƒ + 3πœ‡πœ‡π‘…π‘…3

𝐼𝐼𝑦𝑦𝑐𝑐𝑀𝑀 βˆ’ πΌπΌπ‘Ÿπ‘Ÿπ‘œπ‘œπ‘€π‘€π‘€π‘€ πœƒπœƒ = 0

πΌπΌπ‘‘π‘‘π‘£π‘£π‘‘π‘‘π‘£π‘£π‘€οΏ½ΜˆοΏ½πœƒ + 𝐾𝐾𝐾𝐾𝐡𝐡�̇�𝐡 + 3πœ‡πœ‡π‘…π‘…3 𝐼𝐼𝑦𝑦𝑐𝑐𝑀𝑀 βˆ’ πΌπΌπ‘Ÿπ‘Ÿπ‘œπ‘œπ‘€π‘€π‘€π‘€ πœƒπœƒ = 0

πΌπΌπ‘‘π‘‘π‘£π‘£π‘‘π‘‘π‘£π‘£π‘€οΏ½ΜˆοΏ½πœƒ + πΎπΎπ·π·οΏ½Μ‡οΏ½πœƒ + 3πœ‡πœ‡π‘…π‘…3 𝐼𝐼𝑦𝑦𝑐𝑐𝑀𝑀 βˆ’ πΌπΌπ‘Ÿπ‘Ÿπ‘œπ‘œπ‘€π‘€π‘€π‘€ πœƒπœƒ = 0

Page 29: Attitude Determination & Control for University CubeSats

Momentum Bias Control

β€’ Supplement gravity gradient stabilization with momentum bias

β€’ Use a single reaction wheel and spin it up

β€’ Provides fine control in pitch axis

β€’ Provides gyroscopic stiffness and passive stability in roll and yawEarth

ΞΈ

H

Page 30: Attitude Determination & Control for University CubeSats

Three-axis control

Reaction Wheelsβ€’ One wheel per axis can point

anywhere (inertial or LVLH)β€’ Can accommodate high-

bandwidth control requirementsβ€’ You must manage momentum

via propulsion or magnetic torque rods – don’t let wheels saturate

Magnetic torque rodsβ€’ Can only control 2 axes at any given

timeβ€’ Works best for LVLH in polar orbits

β€’ Always have pitch controlβ€’ Yaw and roll control alternate

β€’ Less effective for inertial attitudes or equatorial orbits

β€’ Very low bandwidth (slow response time ~ tens of minutes up to orbits)

Page 31: Attitude Determination & Control for University CubeSats

Magnetic Torquer Control Limitations

S

N

β€’ When I apply torque in one axis, I also get torque in another axis.

β€’ In equatorial orbits, field lines are always close to the same direction- won’t get torque in one axis for LVLH attitudes.

β€’ In inertial attitudes, environmental torques might exceed your magnetic torque authority – so make sure you size your torquers appropriately.

Page 32: Attitude Determination & Control for University CubeSats

Environmental Disturbance Torques

β€’ Gravity Gradient β€’ Aerodynamicβ€’ Magneticβ€’ Solar Radiation Pressure

The Space Mission Analysis and Design (SMAD) book or any good spacecraft attitude dynamics book has the equations

Evaluate these disturbance torques to size your control actuators.

All of these can be a friend or foe, depending on the attitudes you’re required to fly.

Page 33: Attitude Determination & Control for University CubeSats

Navigation

β€’ You need to know where you areβ€’ For specific pointing and tracking objectives (especially for nadir targets and

ground station telemetry passes)β€’ To use TRIAD attitude estimation with magnetometer and sun sensor

β€’ Use a GPS and/or IMU in a navigation filter (a Kalman filter)β€’ If you lose GPS, the navigation filter will be satisfactory for several

days until error propagation gets too largeβ€’ One couild obtain orbital elements via ground calculations, uplink them, and

let navigation filter propagate them

Page 34: Attitude Determination & Control for University CubeSats

Some Rules of Thumb

1. Attitude determination accuracy should be 10x better than attitude control requirement

2. Sensor and actuator bandwidth should be 10x higher than control bandwidth

3. In preliminary design, size your control actuators to have 2x the control authority than your mission requires

Page 35: Attitude Determination & Control for University CubeSats

Other Considerations

β€’ GN&C/ADCS engineers often become the de facto system engineers of a spacecraft project.

β€’ GN&C/ADCS engineers are at the center of the following:β€’ Science payload pointingβ€’ Pointing solar arrays toward the sun to charge batteries for power systemβ€’ Pointing antennas toward ground stations for telemetry and ground

commandsβ€’ Orient spacecraft to maintain thermal environmentβ€’ Propulsion system sizingβ€’ C&DH system specification