Tutorials 4.1 Attitude : Différence entre versions

De Wiki
Aller à : navigation, rechercher
(Page créée avec « == Attitude == We must not confuse an [{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/attitudes/Attitude.html Attitude] and an [{{PathCurrentJavaDoc}}/fr/cnes/sirius/patri... »)
 
 
(Une révision intermédiaire par le même utilisateur non affichée)
Ligne 1 : Ligne 1 :
 
== Attitude ==
 
== Attitude ==
  
We must not confuse an [{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/attitudes/Attitude.html Attitude] and an [{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/attitudes/AttitudeLaw.html AttitudeLaw] (or [{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/attitudes/AttitudeLawLeg.html AttitudeLawLeg]). Indeed an [{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/attitudes/Attitude.html Attitude] is the current orientation of the spacecraft as the other ones will define the "laws" allowing to determine at each moment, the [{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/attitudes/Attitude.html Attitude].
+
We must not confuse an [{{JavaDoc4.1}}/fr/cnes/sirius/patrius/attitudes/Attitude.html Attitude] and an [{{JavaDoc4.1}}/fr/cnes/sirius/patrius/attitudes/AttitudeLaw.html AttitudeLaw] (or [{{JavaDoc4.1}}/fr/cnes/sirius/patrius/attitudes/AttitudeLawLeg.html AttitudeLawLeg]). Indeed an [{{JavaDoc4.1}}/fr/cnes/sirius/patrius/attitudes/Attitude.html Attitude] is the current orientation of the spacecraft as the other ones will define the "laws" allowing to determine at each moment, the [{{JavaDoc4.1}}/fr/cnes/sirius/patrius/attitudes/Attitude.html Attitude].
  
For example, if we have an inertial [{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/attitudes/AttitudeLaw.html AttitudeLaw], the (inertial) [{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/attitudes/Attitude.html Attitude] of the spacecraft will be the same at each moment of the trajectory.
+
For example, if we have an inertial [{{JavaDoc4.1}}/fr/cnes/sirius/patrius/attitudes/AttitudeLaw.html AttitudeLaw], the (inertial) [{{JavaDoc4.1}}/fr/cnes/sirius/patrius/attitudes/Attitude.html Attitude] of the spacecraft will be the same at each moment of the trajectory.
  
But if we have a Sun Pointing [{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/attitudes/AttitudeLaw.html AttitudeLaw], the current [{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/attitudes/Attitude.html Attitude] will change at each step.
+
But if we have a Sun Pointing [{{JavaDoc4.1}}/fr/cnes/sirius/patrius/attitudes/AttitudeLaw.html AttitudeLaw], the current [{{JavaDoc4.1}}/fr/cnes/sirius/patrius/attitudes/Attitude.html Attitude] will change at each step.
  
So, most of the time, users will define [{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/attitudes/AttitudeLaw.html AttitudeLaw] or [{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/attitudes/AttitudeLawLeg.html AttitudeLawLeg] and will get the current [{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/attitudes/Attitude.html Attitude] using the <font color=#4169E1>getAttitude()</font> method.
+
So, most of the time, users will define [{{JavaDoc4.1}}/fr/cnes/sirius/patrius/attitudes/AttitudeLaw.html AttitudeLaw] or [{{JavaDoc4.1}}/fr/cnes/sirius/patrius/attitudes/AttitudeLawLeg.html AttitudeLawLeg] and will get the current [{{JavaDoc4.1}}/fr/cnes/sirius/patrius/attitudes/Attitude.html Attitude] using the <font color=#4169E1>getAttitude()</font> method.
  
 
== Attitude laws ==
 
== Attitude laws ==
Ligne 14 : Ligne 14 :
  
 
'''Code examples:'''
 
'''Code examples:'''
* [[LOFOffsetAttitudeLaw|create a <font color=#FF8C00 title="Local Orbital Frame>LOF</font> attitude law]]
+
* [[LOFOffsetAttitudeLaw_4.1|create a <font color=#FF8C00 title="Local Orbital Frame>LOF</font> attitude law]]
* [[SolarPointedAttitudeLaw|create a Solar pointed attitude law]]
+
* [[SolarPointedAttitudeLaw_4.1|create a Solar pointed attitude law]]
* [[TwoDirectionsAttitudeLaw|create a two directions attitude law]]
+
* [[TwoDirectionsAttitudeLaw_4.1|create a two directions attitude law]]
  
 
== Attitude legs ==
 
== Attitude legs ==
Ligne 24 : Ligne 24 :
 
== Attitude sequence ==
 
== Attitude sequence ==
  
[{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/attitudes/AttitudesSequence.html AttitudesSequence] is a very powerful concept which allows to define attitude logic all along a mission. Indeed, as it is based on orbital events detection, it avoids to define step by step attitude laws. For example, if we want to have:
+
[{{JavaDoc4.1}}/fr/cnes/sirius/patrius/attitudes/AttitudesSequence.html AttitudesSequence] is a very powerful concept which allows to define attitude logic all along a mission. Indeed, as it is based on orbital events detection, it avoids to define step by step attitude laws. For example, if we want to have:
 
* <font color=#FF8C00 title="Local Velocity Local Horizontal>LVLH</font> attitude during eclipse
 
* <font color=#FF8C00 title="Local Velocity Local Horizontal>LVLH</font> attitude during eclipse
 
* Sun pointing attitude else
 
* Sun pointing attitude else
Ligne 30 : Ligne 30 :
 
... only two "switches" inside the attitude sequence are sufficient. It is coded in the proposed following tutorial.
 
... only two "switches" inside the attitude sequence are sufficient. It is coded in the proposed following tutorial.
  
'''Code example:''' [[SequenceOfAttitudes|create a sequence of attitude laws]]
+
'''Code example:''' [[SequenceOfAttitudes_4.1|create a sequence of attitude laws]]
  
 
[[Category:Tutorials 4.1]]
 
[[Category:Tutorials 4.1]]

Version actuelle en date du 20 décembre 2018 à 15:37

Attitude

We must not confuse an Attitude and an AttitudeLaw (or AttitudeLawLeg). Indeed an Attitude is the current orientation of the spacecraft as the other ones will define the "laws" allowing to determine at each moment, the Attitude.

For example, if we have an inertial AttitudeLaw, the (inertial) Attitude of the spacecraft will be the same at each moment of the trajectory.

But if we have a Sun Pointing AttitudeLaw, the current Attitude will change at each step.

So, most of the time, users will define AttitudeLaw or AttitudeLawLeg and will get the current Attitude using the getAttitude() method.

Attitude laws

Building an attitude law is relatively easy, using one of the the constructors available depending of the kind of law you want to use. Next examples show different cases.

Code examples:

Attitude legs

To be written ...

Attitude sequence

AttitudesSequence is a very powerful concept which allows to define attitude logic all along a mission. Indeed, as it is based on orbital events detection, it avoids to define step by step attitude laws. For example, if we want to have:

  • LVLH attitude during eclipse
  • Sun pointing attitude else

... only two "switches" inside the attitude sequence are sufficient. It is coded in the proposed following tutorial.

Code example: create a sequence of attitude laws