X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

102
( ) ( ) 0 Currentturn on (+) 0 Currentturn on (-) x x y y z z z E I q I I I S E k B S S x y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame

Transcript of X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Page 1: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

( )

( )

0 Current turn on (+)

0 Current turn on (-)

x x y y z z

z

E I q I I I

S E k B

S

S

xy

z

Body frame

Goal vector

yx

y

Body frame

Goal vector

x

z

Body frame

Goal vector

x

Body frame

Page 2: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Sun normal: Spin mode (assume omega x= omega y=0)

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

x 104

-0.1

0

0.1

0.2

0.3

0.4

0.5

0.6

omega x, omega y =\=0

If we want to eliminate them, we need to estimate them.

Rad/sec 4 rpm

0 1 2 3 4 5 6

x 104

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

Sun elevation near 90 degree (random)

Page 3: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 5000 10000 15000-0.05

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0 5000 10000 15000-0.4

-0.35

-0.3

-0.25

-0.2

-0.15

-0.1

-0.05

0

0.05

Elevation=0 (not ecliptic normal)

Sun normal: precession mode (assume omega x= omega y=0)

Not good for initial conditions with high elevation

Page 4: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

The sun ECI vector The sun ECI vector

Ecliptic plane

Page 5: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

x 104

-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

High elevation

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

x 104

-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

The sun ECI vector

Page 6: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

One strategy: only using one side controller

(elevation >0 or elevation <0)

0 0.5 1 1.5 2 2.5 3 3.5

x 104

-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

0 0.5 1 1.5 2 2.5 3 3.5

x 104

-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

elevation elevation

Open controller

Open controller

Page 7: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 0.5 1 1.5 2 2.5 3 3.5

x 104

-0.05

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

Omega change

Because we only use one coil in z axis, the effects to the spin rate are small

4 rpm

omega x, omega y

Page 8: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Conclusion:

1 The storage of battery for the ACS is ok (0.7 w for each “turn on” operation )

2 test other initial conditions for sun normal mode

Issue:

1 need to figure out what happen in the high elevation

2 PIC operation temperature -40 oC~ 85 oC

3 If there are two fixed vectors in the ECI frame, is it possible to know the angular velocities of the three dimension (without any information from the ground )?

B fieldsun

B field

sun

In the view of the body In the view of the body

t1 t23.75 A hour at 8 volt

Page 9: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

( )

( )

0 Current turn on (+)

0 Current turn on (-)

x x y y z z

z

E I q I I I

S E k B

S

S

xy

z

Body frame

Goal vector

yx

y

Body frame

Goal vector

x

z

Body frame

Goal vector

x

Body frame

Page 10: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

based on the same fixed vector in ECI

x

z

Body frame

Goal vector

x

Body frame

x

z

YECI frame

Goal vector is fixed

( )

( )

0 Current turn on (+)

0 Current turn on (-)

x x y y z z

z

E I q I I I

S E k B

S

S

If there exists omega x or omega y, the goal vector is no longer fixed in the ECI frame

Page 11: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 1000 2000 3000 4000 5000 6000 7000-5

0

5

10

15

20

25

30

time(sec)

elev

atio

n (d

egre

e)

Time frame =0.01

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000-5

0

5

10

15

20

25

30

time(sec)

elev

atio

n (d

egre

e)

Time frame =0.1

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

x 104

-100

-80

-60

-40

-20

0

20

40

60

80

time(sec)

elev

atio

n (d

egre

e)

Time frame =0.1

Solver problem

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

x 104

-100

-80

-60

-40

-20

0

20

40

60

80

time(sec)

elev

atio

n (d

egre

e)

Time frame =0.01

Page 12: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Different model structure may produce the errors !

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

x 104

-10

0

10

20

30

40

50

60

70

80

90

time(sec)

elev

atio

n (d

egre

e)

Give the Sun ECI initial conditionGive the initial attitude

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

x 104

-90

-80

-70

-60

-50

-40

-30

-20

-10

0

10

time(sec)

elev

atio

n (d

egre

e)

Elevation of the sun in the body frame

Due to omega x ,omega y

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

x 104

-10

0

10

20

30

40

50

60

time(sec)

elev

atio

n (d

egre

e)

Give the Sun ECI initial condition

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

x 104

-100

-80

-60

-40

-20

0

20

40

60

80

time(sec)

elev

atio

n (d

egre

e)

Page 13: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

ground

Revolute around local x

Revolute around local y

Revolute around local z

Equator plane

Mass: 10e-9 kg

Moment of inertia: 10e-7 kgm^2

Page 14: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

ground

Revolute around local x,y,z

And allow slide in x,y,z direction

ECI

Equator plane

Page 15: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 0.5 1 1.5 2 2.5

x 105

0

10

20

30

40

50

60

70

80

90

time(sec)

elev

atio

n (d

egre

e)

0 0.5 1 1.5 2 2.5

x 105

65

70

75

80

85

90

95

100

105

time(sec)

devi

atio

n of

the

att

itude

(deg

ree)

method of two coils and least square

0 0.5 1 1.5 2 2.5

x 105

-90

-80

-70

-60

-50

-40

-30

-20

-10

0

10

time(sec)

elev

atio

n (d

egre

e)

0 0.5 1 1.5 2 2.5

x 105

80

85

90

95

100

105

110

115

120

time(sec)

devi

atio

n of

the

att

itude

(deg

ree)

method of two coils and least square

Page 16: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

x 104

-80

-60

-40

-20

0

20

40

60

80

100

time(sec)

elev

atio

n (d

egre

e)

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

x 104

-0.2

-0.1

0

0.1

0.2

0.3

0.4

0.5

detumble Sun normal :spin upSun normal: precession

Omega x,y,z 4 rpm

Elevation=0

Page 17: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

x 106

-25

-20

-15

-10

-5

0

5

X: 1.903e+006Y: -1.44

time(sec)

elev

atio

n (d

egre

e)

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

x 106

0

5

10

15

20

25

time(sec)

devi

atio

n of

the

att

itude

(deg

ree)

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

x 106

0

10

20

30

40

50

60

time(sec)

devi

atio

n of

the

att

itude

(deg

ree)

method of two coils and least square

Precession

Sun normal precession

elevation

Deviation of the attitude (ecliptic normal)

Sun normal precession

Page 18: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Average: 27 mins

1 2 3 4 5 6 7 80

10

20

30

40

50

60

70

80

sun normal

sun normal

Page 19: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Z

x

y

bx

by

bz

Rotation matrix: Y(90 degree)Z(180 degree)

Assume: local b field not change much

Page 20: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

simulation

Local b field ECEF local b field body frame local magnetometer frame

ACS module

rotation matrix and normalized module

In PIC

Page 21: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Power from each solar panel (total six panels)

1: with 10 degree constraints for each panel

2: the energy is proportional to the area

3: 15% efficiency for each panel

4: also including the power from the albedo

5 assume in each panel, the power is uniform

6 the area of the solar panel, right now:

(10x10 cm) meter square

7 assume the storage: 3.75 A hour at 8 volt=108000

=10o

Z+

X+

Y+

elevation

Z-

Y-

X-

Page 22: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

“for the (-X) side, the magnetic dipole moment is estimated to be 0.87 Am2consuming 6.43 Watts and drawing 0.80 Amperes. The projected values for the (-Z) side [which has not been built yet] are 0.85 Am2 for the magnetic dipole, 8.63 Watts for power and 1.08 Amperes for current.”

Assume 10 duty cycle

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

Sun+albedo

Coil z Coil x

Results: J for every 0.1 second

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

5

10

15

20

25

time(sec)

devi

atio

n of

the

att

itude

(deg

ree)

method of two coils and least square

Error attitude

Page 23: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Max PIC energy consumption

W=250 mA*4.0V=1W

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

x 104

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

Page 24: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

1: W=(125-(-40))/40=4.125w maximum allowed power Dissipation or the chip will melt away.2: W=(100-80)/40=0.5w <1w

?

Page 25: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Indirect access values:

With pointers assigning specific address

Receive from Rs232, don’t care which memory the compiler assigned

Transmit through Rs232

Page 26: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Data from RS232

Store in the specific memory

HSK read values from the specific memory

ACS reads values from the specific memory

other work

ACS store values to the specific memory

HSK read values from the specific memory other work

Data to RS232

(Torque command)

In the future, replaced by other modules, like sun sensor module, MAG module, etc. Just write to the same memory

write to the specific memory In the future, replaced by toque command module

Int main (){

}

Fixed, no change

Page 27: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

PICsimulink

0 10 20 30 40 50 60 70 80 90 100-0.1

-0.08

-0.06

-0.04

-0.02

0

0.02

0.04

0.06

0.08

0.1

0 10 20 30 40 50 60 70 80 90 100-0.1

-0.08

-0.06

-0.04

-0.02

0

0.02

0.04

0.06

0.08

0.1

Another issue: 1:0.7 =real time: simulink

Page 28: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Indirect access values:

With pointers assigning specific address

Receive from Rs232, don’t care which memory the compiler assigned

Transmit through Rs232

Page 29: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.
Page 30: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Protocol design and tasks

…..Serial data

Begin byte Data set

data1data0

0 01 12 3 2 3

Each variable (total 17) is float, each float includes 4 bytes (17x4=68)

Begin byte

…..

1 separate each variable (float->byte)

2 transmit them in the serial port of Simulink

3 receive them in the serial buffer of PIC

4 combine them in the PIC (byte-float)

Page 31: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Structure for parallel testing (run PIC and simulink at the same time, at the same simulink file)

Space Environment,

Sensor, CINEMA

Serial encode

Simulink serial interface

Serial decode Serial decode

ACS in PIC (c code)ACS in simulink(c code)

Serial encode

Serial decode

Serial encode

Serial decode

Coil status Coil status

Simulink serial interface

Guarantee all the initial conditions are the same

torque

Guarantee , the time of switching mode are the same

Page 32: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 10 20 30 40 50 60 70 80 90 100-0.1

-0.08

-0.06

-0.04

-0.02

0

0.02

0.04

0.06

0.08

0.1

0 10 20 30 40 50 60 70 80 90 100-0.1

-0.08

-0.06

-0.04

-0.02

0

0.02

0.04

0.06

0.08

0.1

simulink PIC

Experiment results for the controller (new version)

Page 33: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Power from each solar panel (total six panels)

1: with 10 degree constraints for each panel

2: the energy is proportional to the area

3: 15% efficiency for each panel

4: also including the power from the albedo

5 assume in each panel, the power is uniform

6 the area of the solar panel, right now:

(10x10 cm) meter square (x+-:3, y+-:1, z+-:1)

7 assume the storage: 3.75 A hour at 8 volt=108000

=10o

Z+

X+

Y+

elevation

Z-

Y-

X-

Page 34: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 5000 10000 150000

0.5

1

1.5

2

2.5

3

3.5

4x 10

4

0 5000 10000 150000

1

2

3

4

5

6

7

time(sec)

pow

er

storing and consuming power

The day is longer than the night

Accumulating energy

Page 35: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 200 400 600 800 1000 1200 1400 1600 1800 200080

90

100

110

120

130

140

150

160

170

180

time(sec)

degr

eedeviation of the attitude with ecliptic normal

Z+X+

Y+

elevation

Ecliptic normal

Page 36: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

• Magnetometer sample time: 2 Hz

extrapolation

0 10 20 30 40 50 60 70 80 90 100-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

0 10 20 30 40 50 60 70 80 90 100-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

0 10 20 30 40 50 60 70 80 90 1000

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

Norm of the error in 3 direction

Page 37: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 0.5 1 1.5 2 2.5 3

x 104

0

5

10

15

20

25

time(sec)

degr

eedeviation of the attitude with ecliptic normal

2 Hz

Page 38: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

• Magnetometer sample time: 5 Hz

extrapolation

Norm of the error in 3 direction

0 10 20 30 40 50 60 70 80 90 1000

0.02

0.04

0.06

0.08

0.1

0.12

0 10 20 30 40 50 60 70 80 90 100-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

0 10 20 30 40 50 60 70 80 90 100-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

Page 39: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

5

10

15

20

25

time(sec)

degr

ee

deviation of the attitude with ecliptic normal

10Hz

0 0.5 1 1.5 2 2.5 3

x 104

0

5

10

15

20

25

time(sec)

degr

ee

deviation of the attitude with ecliptic normal

5 Hz

Page 40: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000-0.2

-0.15

-0.1

-0.05

0

0.05

0.1

0.15

Detumble

0 1 2 3 4 5 6

x 104

-0.2

-0.1

0

0.1

0.2

0.3

0.4

0.5Detumble+ spin up

2Hz sample time

Raw edge

Page 41: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Model Predictive Control

MPC slides from Prof. Francesco Borrelli

Page 42: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.
Page 43: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 5000 10000 150000

5

10

15

20

25

time(sec)

devi

atio

n of

the

att

itude

(deg

ree)

method of two coils and least square

Do control only for s>0(spin)

s>0 s<0 (spin)

Least square

Using one coil

Page 44: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

MPC—using the information of the future and current B field

Least square—using the current B field with two coils and various duty cycle

Solution sets

One coil with fixed duty cycle

Two coils with fixed duty cycle

Page 45: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Example---Get the maximum profits from the Banks in 2 years Need the transfer fee from one bank to the other. The interest rates also depend the total saving in each account

One coil: BOA, only allowed to put the all of the money in or out

Two coils: Citi, BOA, only allowed to put all of the money in one account

Least square: : Citi, BOA, allowed to adjust the money in each account.

MPC: Citi, BOA allowed to adjust the money in each account and know the interest rates in the future. This method can also consider other situations.

Page 46: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Linearized the nonlinear systems continuous model

continuous model discrete model

Set the system structure and parameters for the solver

Set the translate target set

Solver produce the control command

Update the current state and insert to the nonlinear system

k=k+1

N=N+1

Page 47: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

1 1 1 1

2 2 2 2

3 3 3 3

1 1 1 1

21 2 3

3

1 2 3

f f f g

x x x uxf f f g

x f g x ux x x u

xf f f g

x x x u

3 2 3 2 2 3

1 1 11 1

3 3 1 1 3 12 2

2 2 2 23 3

2 1 2 1 1 2

33 3

1 2

00

0

00

At specific ,

x z

J J J J ByJ J J

J J J J Bx BzM M

J J J J

ByJ J J JJJ J

3,

3 2 3 2 2 3

1 1 11 1

3 3 1 1 3 12 2

2 2 2 23 3

2 1 2 1 1 2

33 3

1 2 3

00

0

00

At specific , , and

x

J J J J ByJ J J

J J J J Bx BzM M

J J J J

ByJ J J JJJ J

i i

Can update B field for each k

Page 48: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0

exp( )

exp( )Ts

Ad A Ts

Bd A t dtB

Cd C

Dd D

Discrete Model

1 2 3

1

2 2 20

[ ]

( ) ( ) ( )

1 1

1 1

i N

i

i

i

x

J Px N Qx i Ru i

x

u

(3)

(3)

1

P eye

Q eye

R

Page 49: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Final target set

Nonlinear system

Initial state

Translate target set

wz

wx

wy

N=1

N=2

N=3

N=0

K=1

K=2

Page 50: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Results: polytope for the feasible region

The geometry will update for each k

Page 51: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Detumble mode

Page 52: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Advantage: easy to implement for off-line computation , very flexible and guaranteed optimization in some local region. If the system has no complexity, the optimization no longer exists.

Disadvantage: Not good implementation for PIC, it needs more power for the computation for each iteration.

Next Step: set the environment of parameters of MPC near the real environment . Investigate the hybrid system. Build the spin up and precession modes in MPC

Objection function: consider which variables we want to weight, power, settling time, final step, etc.

Control Strategy: Design any controller or adjust parameters in the current controller in the PIC and try to make the results near the results from MPC

Page 53: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Controller 5 Hz: with two coils

controller

0 0.5 1 1.5 2 2.5

x 104

0

5

10

15

20

25

time(sec)

degr

ee

deviation of the attitude with ecliptic normal

0 0.5 1 1.5 2 2.5

x 104

-0.05

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

Spin rateattitude

Page 54: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Controller :5 Hz with one coils

controller

0 2000 4000 6000 8000 10000 12000 140000

5

10

15

20

25

time(sec)

degr

ee

deviation of the attitude with ecliptic normal

0 2000 4000 6000 8000 10000 12000 14000-0.05

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

Average: precession over 100 mins

Page 55: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

x 104

0

5

10

15

20

25

time(sec)

degr

ee

deviation of the attitude with ecliptic normal

Controller :2 Hz with one coils

controller

Page 56: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Sun position 2 HZ Sun position 5 HZ

Page 57: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

MAG data 2 HZ MAG data 5 HZ

Page 58: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Way to eliminate the effects of the albedo

Method 1

shadow

1. Measure the minimum power (only from the sun)2. Get the position of the sun3. Know the dynamics of the satellite, torque command4. compute the position of the sun in the future5. Do Precession, until in the FOV of the sun sensorDisadvantage: hard to keep the initial attitude fixed

Page 59: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Way to eliminate the effects of the albedo

Method 2

shadow

1. Set the minimum power band (only from the sun)2. Get the position of the sun3. Know the dynamics of the satellite, torque command4. compute the position of the sun in the future5. Precession, until in the FOV of the sun sensoradvantage: no need to keep the initial attitude fixed

Page 60: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Before switch to the estimator

Page 61: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Rotation matrix

0 200 400 600 800 1000 1200 1400 1600 1800 20000

1

2

3

4

5

6

7

Error of Normal 1 of the rotation matrix will disconvenge

Page 62: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Random rotation abound the orbit

3400 3500 3600 3700 3800 3900 4000 4100 4200 4300 4400-0.15

-0.1

-0.05

0

0.05

0.1

time(sec)ra

d/se

c

omega vector

2100 2150 2200 2250 2300 2350

20

30

40

50

60

70

80

90

time(sec)

degr

ee

deviation of the attitude with ecliptic normal

Page 63: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

100

200

300

400

500

600

time(sec)

wat

t/m

2

power in the solar panel and the sun sensor

solar panel

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

100

200

300

400

500

600

700

time(sec)

wat

t/m

2

power in the solar panel and the sun sensor

solar panel

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

100

200

300

400

500

600

time(sec)

wat

t/m

2

power in the solar panel and the sun sensor

solar panel

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

100

200

300

400

500

600

700

time(sec)

wat

t/m

2

power in the solar panel and the sun sensor

solar panel

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

100

200

300

400

500

600

time(sec)

wat

t/m

2

power in the solar panel and the sun sensor

solar panel

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

20

40

60

80

100

120

140

160

180

200

time(sec)

wat

t/m

2power in the solar panel and the sun sensor

solar panel

Page 64: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

200

400

600

800

1000

1200

1400

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

200

400

600

800

1000

1200

1400

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

200

400

600

800

1000

1200

1400

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

200

400

600

800

1000

1200

14000 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000

0

200

400

600

800

1000

1200

1400

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

0.5

1

1.5

2

2.5x 10

-6

Page 65: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

42degree, 5 degree

42o

5o

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

10

20

30

40

50

60

70

80

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

200

400

600

800

1000

1200

1400

Page 66: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Sun: unit vector1366.9

Albedo power in x+

Albedo power in x-

Albedo power in y+

Albedo power in y-

Albedo power in z+

Albedo power in z-

-1

-1

-1

Solar Panel module in the simulink

Albedo power vector

Controller

+ + normalize

Page 67: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 5000 10000 150000

5

10

15

20

25

30

35

40

45

time(sec)

degr

ee

deviation of the attitude with ecliptic normal

0 5000 10000 150000

100

200

300

400

500

600

700

time(sec)

wat

t/m

2

power in the solar panel and the sun sensor

albedo power

0 5000 10000 150000

50

100

150

200

250

300

350

400

450

time(sec)

wat

t/m

2

power in the solar panel and the sun sensor

albedo power

0 5000 10000 150000

50

100

150

200

250

time(sec)

wat

t/m

2

power in the solar panel and the sun sensor

albedo power

X,Y

Z+

Z-

precession

Page 68: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Extreme case

Page 69: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

100

200

300

400

500

600

time(sec)

wat

t/m

2

power in the solar panel and the sun sensor

albedo power

sun power

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

100

200

300

400

500

600

time(sec)

wat

t/m

2

power in the solar panel and the sun sensor

albedo power

sun power

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

100

200

300

400

500

600

time(sec)

wat

t/m

2

power in the solar panel and the sun sensor

albedo power

sun power

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

100

200

300

400

500

600

time(sec)

wat

t/m

2

power in the solar panel and the sun sensor

albedo power

sun power

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

10

20

30

40

50

60

time(sec)

wat

t/m

2

power in the solar panel and the sun sensor

albedo power

sun power

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000

200

400

600

800

1000

1200

1400

time(sec)

wat

t/m

2

power in the solar panel and the sun sensor

albedo power

sun power

Page 70: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 2000 4000 6000 8000 10000 12000 14000 1600040

45

50

55

60

65

70

75

80

85

90

time(sec)

degr

ee

deviation of the attitude with ecliptic normal

0 2000 4000 6000 8000 10000 12000 14000 160000

100

200

300

400

500

600

time(sec)

wat

t/m

2

power in the solar panel and the sun sensor

albedo power

0 2000 4000 6000 8000 10000 12000 14000 160000

20

40

60

80

100

120

140

160

180

200

time(sec)

wat

t/m

2

power in the solar panel and the sun sensor

albedo power

0 2000 4000 6000 8000 10000 12000 14000 160000

50

100

150

200

250

300

350

400

450

time(sec)

wat

t/m

2

power in the solar panel and the sun sensor

albedo power

X,Y

Z+

Z-

precession

Page 71: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 0.5 1 1.5 2 2.5 3

x 104

70

80

90

100

110

120

130

140

150

160

time(sec)

degr

ee

deviation of the attitude with ecliptic normal

0 0.5 1 1.5 2 2.5 3

x 104

-0.2

-0.1

0

0.1

0.2

0.3

0.4

0.5

time(sec)

rad/

sec

omega vector

0 0.5 1 1.5 2 2.5 3

x 104

0

50

100

150

200

250

300

350

400

450

500

time(sec)

wat

t/m

2

power in the solar panel and the sun sensor

albedo power

0 0.5 1 1.5 2 2.5 3

x 104

0

10

20

30

40

50

60

70

80

90

100

time(sec)

wat

t/m

2

power in the solar panel and the sun sensor

albedo power

Z+X,Y

4 rpm

0 0.5 1 1.5 2 2.5 3

x 104

0

100

200

300

400

500

600

700

time(sec)w

att/

m2

power in the solar panel and the sun sensor

albedo power

Z-

Page 72: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Sun: unit vector1366.9

Albedo power in x+

Albedo power in x-

Albedo power in y+

Albedo power in y-

Albedo power in z+

Albedo power in z-

-1

-1

-1

Solar Panel module in the simulink

Albedo power vector

Controller

+ + normalize

Page 73: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Sun: unit vector1366.9

Albedo power in x+

Albedo power in x-

Albedo power in y+

Albedo power in y-

Albedo power in z+

Albedo power in z-

-1

-1

-1

Controller

+ +

normalize

separate

Solar Panel module in the simulink

Convert to a vector

Page 74: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Fix the code for in the controller

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

0

5

10

15

20

25

30

35

40

45

time(sec)

degr

ee

deviation of the attitude with ecliptic normal

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

0

5

10

15

20

25

30

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

0

100

200

300

400

500

600

700

Page 75: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

0

10

20

30

40

50

60

70

80

90

time(sec)

degr

ee

deviation of the attitude with ecliptic normal

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

0

100

200

300

400

500

600

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

0

5

10

15

20

25

30

Page 76: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Sun: unit vector1366.9

Albedo power in x+

Albedo power in x-

Albedo power in y+

Albedo power in y-

Albedo power in z+

Albedo power in z-

-1

-1

-1

Controller

+ +

normalize

separate

Solar Panel module in the simulink

Convert to a vector

Arbitrary disturbance

disturbance

Page 77: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

x 104

34

36

38

40

42

44

46

48

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

x 104

6

8

10

12

14

16

18

20

22

24

time(sec)

degr

ee

deviation of the attitude with ecliptic normal

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

x 104

0

5

10

15

20

25

time(sec)

degr

ee

deviation of the attitude with ecliptic normal

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

x 104

12

14

16

18

20

22

24

26

Page 78: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

x 104

26

28

30

32

34

36

38

40

42

44

46

time(sec)

degr

ee

deviation of the attitude with ecliptic normal

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

x 104

0

5

10

15

20

25

30

35

40

45

50

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

0

5

10

15

20

25

30

35

40

45

time(sec)

degr

ee

deviation of the attitude with ecliptic normal

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

22

24

26

28

30

32

34

36

38

Page 79: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

4

6

8

10

12

14

16

18

20

22

24

time(sec)

degr

ee

deviation of the attitude with ecliptic normal

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

22

24

26

28

30

32

34

36

38

Page 80: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

0

5

10

15

20

25

30

35

40

45

time(sec)

degr

ee

deviation of the attitude with ecliptic normal

0 0.5 1 1.5 2 2.5

x 104

0

5

10

15

20

25

30

35

40

45

time(sec)

degre

e

deviation of the attitude with ecliptic normal

Without albedo Without un-viewable angle

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

-0.2

-0.1

0

0.1

0.2

0.3

0.4

0.5

time(sec)

rad/

sec

omega vector

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

0

5

10

15

20

25

30

Page 81: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Only use Mag data in the spin up

0 10 20 30 40 50 60 70 80 90 100-2

-1.5

-1

-0.5

0

0.5

1

1.5

2x 10

-5

B field Body frame: omega=[0 0 0.42]

0 10 20 30 40 50 60 70 80 90 100-2

-1.5

-1

-0.5

0

0.5

1

1.5

2x 10

-5

B field Body frame: omega=[0 0 0.21]

0 10 20 30 40 50 60 70 80 90 100-2

-1.5

-1

-0.5

0

0.5

1

1.5

2x 10

-5 B field Body frame: omega=[0 0 0.-0.2]

Page 82: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Only use Magnetometer in the spin up

0 10 20 30 40 50 60 70 80 90 100-2

-1.5

-1

-0.5

0

0.5

1

1.5

2x 10

-5B field Body frame: omega=[0.1 0.1 0.1 ]

0 10 20 30 40 50 60 70 80 90 100-2

-1.5

-1

-0.5

0

0.5

1

1.5

2

2.5x 10

-5 B field Body frame: omega=[0.1 -0.1 0.1 ]

0 10 20 30 40 50 60 70 80 90 100-2

-1.5

-1

-0.5

0

0.5

1

1.5

2x 10

-5B field Body frame: omega=[-0.1 0.1 0.1 ]

0 10 20 30 40 50 60 70 80 90 100-2

-1.5

-1

-0.5

0

0.5

1

1.5x 10

-5

B field Body frame: omega=[0 0 0 ]

Page 83: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 10 20 30 40 50 60 70 80 90 100-2

-1.5

-1

-0.5

0

0.5

1

1.5

2x 10

-5B field Body frame: omega=[0.1 0.1 0.01 ]

0 10 20 30 40 50 60 70 80 90 100-2

-1.5

-1

-0.5

0

0.5

1

1.5

2x 10

-5 B field Body frame: omega=[0.01 0.01 0.01 ]

Page 84: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.
Page 85: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Global weather satellite: rotating Earth

rotating Earth with animated clouds covering the most recent 3 week

showing current clouds

Page 86: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.
Page 87: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Conclusion:1 need to fix the dynamics equation for the sun estimator or compensate it with MAG data—(maybe not necessary)

2 Build the global weather dynamic cloud model in the simulink

3 investigate the determination for the sun position with the info of the geometry of the CINEMA at one instant.

Page 88: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Spin mode without any information from the ground.

inititally,w1,w2,w3=0

2 3 2 3

1 11

1 3 3 12

2 2 23

1 2 1 2

33

( )

0

( )

( ) 0

z x

J J By

J J

J J Bx BzM M

J J J

J J By

JJ

Page 89: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 2000 4000 6000 8000 10000 12000 14000 16000 18000-0.2

-0.1

0

0.1

0.2

0.3

0.4

0.5

time(sec)

rad/

sec

omega vector

Assume we can get correct omega z

Initial omega x,y,z=[0.1 0.1 0.1]Initial omega x,y,z=[0 0 0]

0 0.5 1 1.5 2 2.5

x 104

-0.05

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

time(sec)

rad/

sec

omega vector

Page 90: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

How to get omega (Wiki)

I modify the above as

0 3( ) 2( ) 1( )

3( ) 0 1( ) 2

2( ) 1( ) 0 3body

r t r tdr t

r t r tdt

r t r t

Skew matrixNot invertible Infinity solutions for omega

Page 91: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

R(t)

R(t-1)

(R(t)-R(t-dt))

W=V/R=(R(t)-R(t-dt))/(dt*R(t))dt0

The problem is R not perpendicular with w, we need to separate the vector to horizontal and vertical direction. However, we don’t know the direction of w

R(t)

w

R’

R’’

Page 92: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

The above skew matrix (n=3) is rank 2 combine the information with solar panels to make it becomes rank 3

Algorithm omega estimator ------------by Y.T Mao

1( )

0 3( ) 2( ) 12( )

3( ) 0 1( ) 2

2( ) 1( ) 0 33( )

body

db t

dt b t b tdb t

b t b tdt

s t s tds t

dt

1( ) 1( 1)

1 1( ) 1( ) 2( ) 1( ) 1( ) 3( )1 2( ) 2( 1)

2 1( ) 2( ) 2( ) 2( ) 2( ) 3( )3( )*( 1( )* 2( ) 2* 1( ))

3 3( ) 1( ) 3( ) 2( ) 3( ) 3( )3( ) 3( 1)

b t b t

dtb t s t b t s t b t b tb t b t

b t s t b t s t b t b tb t b t s t b s t dt

b t s t b t s t b t b ts t s t

dt

body

Page 93: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Simulation results

0 50 100 150 200 250 300 350 400 450 500-4

-3

-2

-1

0

1

2

0 50 100 150 200 250 300 350 400 450 500-2

-1.5

-1

-0.5

0

0.5

1

1.5

0 50 100 150 200 250 300 350 400 450 500-8

-7

-6

-5

-4

-3

-2

-1

0

1

Omega x Omega y

Omega z

40 50 60 70 80 90 100

-0.2

-0.15

-0.1

-0.05

0

0.05

0.1

0.15

0.2

Initial Omega=[-0.1 -0.1 0.1]

Page 94: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Denominator vs omega x

50 100 150 200 250 300 350 400-4

-3

-2

-1

0

1

2

Page 95: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

A approach to fix it

Consider the all the combination from B field and Sun position (body frame)3 3 3 32 1 1 2 18C C C C

Results for combination: b field, sun (1,2)(1) (1,2)(2) (1,2)(3)

0 5 10 15 20 25 30-2.5

-2

-1.5

-1

-0.5

0

0.5

0 5 10 15 20 25 30-3

-2.5

-2

-1.5

-1

-0.5

0

0.5

0 5 10 15 20 25 30-3.5

-3

-2.5

-2

-1.5

-1

-0.5

0

0.5

Omega xOmega y

Omega z

Chose the biggest determinant

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000-300

-250

-200

-150

-100

-50

0

50

100

Page 96: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Include with solar panel module (assume Mag is prefect)

0 5 10 15 20 25 30-2.5

-2

-1.5

-1

-0.5

0

0.5

1

0 5 10 15 20 25 30-3

-2.5

-2

-1.5

-1

-0.5

0

0.5

1

1.5

2

0 5 10 15 20 25 30-4

-3

-2

-1

0

1

2

Omega xOmega y

Omega z

Page 97: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Do spin up with the estimate omega (without any information from the ground station)

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

-0.2

-0.1

0

0.1

0.2

0.3

0.4

0.5

time(sec)

rad/

sec

omega vector

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

-50

0

50

100

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

-50

0

50

100

150

200

250

300

350

400

450

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

-60

-50

-40

-30

-20

-10

0

10

20

30

Estimate omega x

Estimate omegay

Estimate omega z

Page 98: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

With static albedo(ice)

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

-0.2

-0.1

0

0.1

0.2

0.3

0.4

0.5

time(sec)

rad/

sec

omega vector

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

0

100

200

300

400

500

600

0 0.5 1 1.5 2 2.5 3 3.5 4

x 104

0

5

10

15

20

25

30

Error angle between the real sun and the effected sun

Albedo power in the x +plame

Page 99: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

Conclusion:1 It is ok to use the solar panels and Mag to do spin up without ground station.2 Try to only use historical data of Mag for the next task.3 incorporate new omega estimation module in the ACS module of the PIC.4 investigate the determination for the sun position with the info of the geometry of the CINEMA at one instant.5 try to use only B field (ground), B field(body), sun position(body) to do the attitude determination(without sun position(ground) estimator, need the exactly launch time)

Page 100: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000-0.2

-0.15

-0.1

-0.05

0

0.05

0.1

0.15

Detumble

0 1 2 3 4 5 6

x 104

-0.2

-0.1

0

0.1

0.2

0.3

0.4

0.5Detumble+ spin up

2Hz sample time

Raw edge

Page 101: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

TRIO-CINEMA 45 UCB, 2/08/2010

Proof of locally stable of detumble—by Y.T Mao

222zyxV

zy

zyx

z

zz

yzx

y

zyx

zzyyxx

MJ

B

J

JJ

MJ

B

J

JJ

J

JJ

V

33

21

22

13

1

32

22

22

2

222

zz

yz

z

zy

yz

z

J

tB

J

BM

J

B

J

BMV

3

0

2

32

sin2

2

tBB

tBB

zy

zx

sin

cos

0

0

tBB zzx sin0 0

0

0

0

z

z

x

x

M

M

B

B

0

3

0

2

22

J

BM

J

BMV x

z

average

yz

z

0,, ,0 zyxV

Instant ,Without loss of generality

Recall that

Locally stable!!

Page 102: X y z Body frame Goal vector y x y Body frame Goal vector x z Body frame Goal vector x Body frame.

R(t)

R(t-1)

(R(t)-R(t-dt))

W=V/R=(R(t)-R(t-dt))/(dt*R(t))dt0

The problem is R not perpendicular with w, we need to separate the vector to horizontal and vertical direction. However, we don’t know the direction of w

R(t)

w

R’

R’’

0 3( ) 2( ) 1( )

3( ) 0 1( ) 2

2( ) 1( ) 0 3body

r t r tdr t

r t r tdt

r t r t

1 2 ||r r