STK ObjectsSend comments on this topic.
IAgVeOrbitAttitudeStandard Interface

Description

Standard attitude profile for satellite.

Public Properties

Public Property BasicGet the basic attitude properties.
Public Property ExternalGet the precomputed (external) attitude properties.
Public Property IntegratedAttitudeReturns a reference to the Integrated Attitude Tool.
Public Property PointingGet the target pointing attitude properties.

Interfaces

CoClasses that Implement IAgVeOrbitAttitudeStandard

Example

Configure Target Slew for a satellite
[C#]
IAgVeOrbitAttitudeStandard orbitAttStandard = satellite.Attitude as IAgVeOrbitAttitudeStandard;
orbitAttStandard.Pointing.UseTargetPointing = true;
orbitAttStandard.Pointing.Targets.Add("Facility/FacSlew");
orbitAttStandard.Pointing.TargetSlew.SetSlewModeType(AgEVeSlewMode.eVeSlewModeConstrained2ndOrderSpline);

IAgVeAttSlewConstrained constrainedSlew = orbitAttStandard.Pointing.TargetSlew.SlewMode as IAgVeAttSlewConstrained;
constrainedSlew.MaximumSlewTime = 20.0; //sec
constrainedSlew.SlewTimingBetweenTargets = AgEVeSlewTimingBetweenTargets.eVeSlewTimingBetweenTargetsOptimal;

IAgVeAttMaximumSlewRate maxRate = constrainedSlew.MaximumSlewRate;
maxRate.Magnitude = 10.0; //deg/sec^2
maxRate.PerAxisXEnabled = true;
maxRate.PerAxisX = 5.0; //deg/sec^2
maxRate.PerAxisYEnabled = true;
maxRate.PerAxisY = 5.0; //deg/sec^2
maxRate.PerAxisZEnabled = true;
maxRate.PerAxisZ = 5.0; //deg/sec^2

IAgVeAttMaximumSlewAcceleration maxAcceleration = constrainedSlew.MaximumSlewAcceleration;
maxAcceleration.Magnitude = 10.0; //deg/sec^2
maxAcceleration.PerAxisXAccelEnabled = true;
maxAcceleration.PerAxisXAccel = 5.0; //deg/sec^2
maxAcceleration.PerAxisYAccelEnabled = true;
maxAcceleration.PerAxisYAccel = 5.0; //deg/sec^2
maxAcceleration.PerAxisZAccelEnabled = true;
maxAcceleration.PerAxisZAccel = 5.0; //deg/sec^2
Configure Target Slew for a satellite
[Visual Basic .NET]
Dim orbitAttStandard As IAgVeOrbitAttitudeStandard = TryCast(satellite.Attitude, IAgVeOrbitAttitudeStandard)
orbitAttStandard.Pointing.UseTargetPointing = True
orbitAttStandard.Pointing.Targets.Add("Facility/FacSlew")
orbitAttStandard.Pointing.TargetSlew.SetSlewModeType(AgEVeSlewMode.eVeSlewModeConstrained2ndOrderSpline)

Dim constrainedSlew As IAgVeAttSlewConstrained = TryCast(orbitAttStandard.Pointing.TargetSlew.SlewMode, IAgVeAttSlewConstrained)
constrainedSlew.MaximumSlewTime = 20
'sec
constrainedSlew.SlewTimingBetweenTargets = AgEVeSlewTimingBetweenTargets.eVeSlewTimingBetweenTargetsOptimal

Dim maxRate As IAgVeAttMaximumSlewRate = constrainedSlew.MaximumSlewRate
maxRate.Magnitude = 10
'deg/sec^2
maxRate.PerAxisXEnabled = True
maxRate.PerAxisX = 5
'deg/sec^2
maxRate.PerAxisYEnabled = True
maxRate.PerAxisY = 5
'deg/sec^2
maxRate.PerAxisZEnabled = True
maxRate.PerAxisZ = 5
'deg/sec^2
Dim maxAcceleration As IAgVeAttMaximumSlewAcceleration = constrainedSlew.MaximumSlewAcceleration
maxAcceleration.Magnitude = 10
'deg/sec^2
maxAcceleration.PerAxisXAccelEnabled = True
maxAcceleration.PerAxisXAccel = 5
'deg/sec^2
maxAcceleration.PerAxisYAccelEnabled = True
maxAcceleration.PerAxisYAccel = 5
'deg/sec^2
maxAcceleration.PerAxisZAccelEnabled = True
maxAcceleration.PerAxisZAccel = 5
'deg/sec^2
Set satellite attitude basic spinning
[Python - STK API]
# IAgSatellite satellite: Satellite object
basic = satellite.Attitude.Basic
basic.SetProfileType(AgEVeProfile.eProfileSpinning)
basic.Profile.Body.AssignXYZ(0, 0, 1)
basic.Profile.Inertial.AssignXYZ(0, 1, 0)
basic.Profile.Rate = 6   # rev/sec

Set satellite attitude targeting
[Python - STK API]
# IAgSatellite satellite: Satellite object
attitudePointing = satellite.Attitude.Pointing
attitudePointing.UseTargetPointing = True
attitudePointing.Targets.RemoveAll()
attitudePointing.Targets.Add('AreaTarget/MyAreaTarget')
attitudePointing.TargetTimes.UseAccessTimes = True

Set satellite attitude external
[Python - STK API]
# IAgSatellite satellite: Satellite object
satellite.Attitude.External.Load(r'C:\Program Files\AGI\STK 12\Data\Resources\stktraining\text\AttitudeTimeEulerAngles_Example.a')

Set satellite attitude basic spinning
[MATLAB]
% IAgSatellite satellite: Satellite object
basic = satellite.Attitude.Basic;
basic.SetProfileType('eProfileSpinning')
basic.Profile.Body.AssignXYZ(0, 0, 1)
basic.Profile.Inertial.AssignXYZ(0, 1, 0);
basic.Profile.Rate = 6;  % rev/sec


        
Set satellite attitude targeting
[MATLAB]
% IAgSatellite satellite: Satellite object
attitudePointing = satellite.Attitude.Pointing;
attitudePointing.UseTargetPointing = 1;
attitudePointing.Targets.RemoveAll;
attitudePointing.Targets.Add('AreaTarget/MyAreaTarget');
attitudePointing.TargetTimes.UseAccessTimes;


        
Set satellite attitude external
[MATLAB]
% IAgSatellite satellite: Satellite object
satellite.Attitude.External.Load('C:\Program Files\AGI\STK 12\Data\Resources\stktraining\text\AttitudeTimeEulerAngles_Example.a');


        
Set up target slewing
[MATLAB]
% IAgSatellite satellite: Satellite object 
satellite.Attitude.Pointing.UseTargetPointing = true;
satellite.Attitude.Pointing.Targets.Add('Facility/FacSlew');

attitudeSlewing = satellite.Attitude.Pointing.TargetSlew; 
attitudeSlewing.SetSlewModeType('eVeSlewModeConstrained2ndOrderSpline');

constrainedSlew = attitudeSlewing.SlewMode;
constrainedSlew.MaximumSlewTime = 20; % sec
constrainedSlew.SlewTimingBetweenTargets = 'eVeSlewTimingBetweenTargetsOptimal';

maxRate = constrainedSlew.MaximumSlewRate; 
maxRate.Magnitude = 10; % deg/sec
maxRate.PerAxisXEnabled = 1;
maxRate.PerAxisX = 5; % deg/sec
maxRate.PerAxisYEnabled = 1;
maxRate.PerAxisY = 5; % deg/sec
maxRate.PerAxisZEnabled = 1;
maxRate.PerAxisZ = 5; % deg/sec

maxAcceleration = constrainedSlew.MaximumSlewAcceleration;
maxAcceleration.Magnitude = 10; % deg/sec^2
maxAcceleration.PerAxisXAccelEnabled = 1;
maxAcceleration.PerAxisXAccel = 5; % deg/sec^2
maxAcceleration.PerAxisYAccelEnabled = 1;
maxAcceleration.PerAxisYAccel = 5; % deg/sec^2
maxAcceleration.PerAxisZAccelEnabled = 1;
maxAcceleration.PerAxisZAccel = 5; % deg/sec^2


        
© 2024 Analytical Graphics, Inc. All Rights Reserved.