Orbiter-Forum  

Go Back   Orbiter-Forum > Projects > ORBITER: 2010-P1 and newer > Bug
Register Blogs Orbinauts List Social Groups FAQ Projects Mark Forums Read

Incorrect default Atlantis specs Issue Tools
issueid=1300 10-30-2016 11:00 PM
Addon Developer
Incorrect default Atlantis specs
The technical specs for the default Atlantis are incorrect

As a result of trying to help Zach121k with his problem of getting the default Atlantis into a stable orbit, I uncovered that the technical specs of it is very wrong. The orbiter is very overweight and ET isn't honest either (visually it is a Super Lightweight ET, while technically it is a Standard Weight EET used for 6 missions (STS-1 through 5 with a final use on STS-9)).

This the data that we in the SSU project use:

Code:
#ifndef _PARAMETERVALUES_H_795497C2_2F91_464b_9F03_19F48E9366EE
#define _PARAMETERVALUES_H_795497C2_2F91_464b_9F03_19F48E9366EE
#pragma once
#include "OrbiterAPI.h"
#include "EngConst.h"

const double ORBITER_EMPTY_MASS_OV102 = 80739.44;
const double ORBITER_EMPTY_MASS_OV099 = 79429.01;
const double ORBITER_EMPTY_MASS_OV103 = 77564.3;
const double ORBITER_EMPTY_MASS_OV104 = 77564.3;
const double ORBITER_EMPTY_MASS_OV105 = 78017.89;
// Orbiter empty masses [kg]

const double ORBITER_MAX_PROPELLANT_MASS = 11284.23 + 2162.622;
// Per SODB Vol 1, 3.4.3.3, maximum propellant load in the OMS tanks is 4711.5 lbs (2134.3095 kg) of fuel and 7743.5 lbs (3507.8055 kg) of oxidizer per pod. Min load is 2038 (923.214 kg) lbs of fuel and 3362 lbs (1522.986 kg) of oxidizer per pod.
// This parameter for now includes the propellant mass of the Aft RCS fuel and oxidizer

const double ORBITER_FRCS_PROPELLANT_MASS = 1464 * LBM + 923*LBM;

const double ORBITER_LEFT_ARCS_PROPELLANT_MASS = 1464 * LBM + 923 * LBM;

const double ORBITER_RIGHT_ARCS_PROPELLANT_MASS = 1464 * LBM + 923 * LBM;

// Amount of fuel in forward RCS tanks

//const double SSME_RATED_THRUST = 2090664.159; //100% thrust
const double ORBITER_MAIN_THRUST = 2170732.15; //Nominal "104%" thrust
//const double ORBITER_MAX_THRUST = 2275094.273; //109% thrust
// Vacuum thrust rating per main engine [N]
const double SSME_MAX_POWER_LEVEL = 109.0;

const double ORBITER_OMS_THRUST = 26700.0;
// Vacuum thrust per unit for Orbital Maneuvering System [N] (x2 for total)

const double OMS_PITCH_RANGE = 6.0;
const double OMS_YAW_RANGE = 7.0;
// max gimbal angles in degrees

const double ORBITER_RCS_THRUST = 7740.0;
// Vacuum thrust rating for attitude thrusters (Reaction Control System) [N]

const double ORBITER_MAIN_ISP0 = 453*9.80665;
const double ORBITER_MAIN_ISP1 = 363*9.80665;
// Vacuum and sea-level fuel-specific impulse for orbiter main engines [m/s]
// using H2/O2 (hydrogen/oxygen)

const double ORBITER_OMS_ISP0 = 316*9.80665;
const double ORBITER_OMS_ISP1 = ORBITER_OMS_ISP0*0.75;
// Vacuum and sea-level fuel-specific impulse for Orbital Maneuvering System [m/s]

const double ORBITER_RCS_ISP0 = ORBITER_OMS_ISP0;
const double ORBITER_RCS_ISP1 = ORBITER_RCS_ISP0*0.75;
// Vacuum and sea-level fuel-specific impulse for Reaction Control System [m/s]

const double ORBITER_PITCH_TORQUE = 239900.00;
const double ORBITER_YAW_TORQUE = 239900.00;
const double ORBITER_ROLL_TORQUE = 41800.00;
// Vacuum RCS Torque [N]

const double OMS_HELIUM_TANK_MASS = 21.0;
//Helium tank mass [kg]
Code:
#ifndef ATLANTIS_TANK_H
#define ATLANTIS_TANK_H
#pragma once

#include "orbitersdk.h"
#include "discsignals.h"
#include "Sensor.h"


using namespace discsignals;

// HACK assuming constant temperatures during powered flight, using values are at SSME exit minus 100K
const double GOX_TEMPERATURE = 448.7056 - 100;// K
const double GH2_TEMPERATURE = 255.3722 - 100;// K

// constants for van der waals equation
const double O2_VDW_A = 0.1382;// Pa m^3
const double O2_VDW_B = 0.0000319;// m^3/mol
const double H2_VDW_A = 0.02452;// Pa m^3
const double H2_VDW_B = 0.0000265;// m^3/mol

const double LOX_TANK_VOLUME = 553.9625;// m^3
const double LOX_MAX_VOLUME = 548.3434;// m^3
const double LOX_MIN_ULLAGE_VOLUME = LOX_TANK_VOLUME - LOX_MAX_VOLUME;// m^3
const double LH2_TANK_VOLUME = 1515.461;// m^3
const double LH2_MAX_VOLUME = 1475.44;// m^3
const double LH2_MIN_ULLAGE_VOLUME = LH2_TANK_VOLUME - LH2_MAX_VOLUME;// m^3

const double LOX_MAX_PROPELLANT_MASS = 624252.0;
const double LH2_MAX_PROPELLANT_MASS = 104463.23;// seems to already include a 2145.485 lbs fuel bias, for 6.032 MR
const double TANK_MAX_PROPELLANT_MASS = LOX_MAX_PROPELLANT_MASS+LH2_MAX_PROPELLANT_MASS;
// Main tank propellant mass [kg]

// Main tank empty mass
const double SWT_EMPTY_MASS = 35425.0;	//STS-1 to STS-5 tank 76000lb 35425.0kg
const double SWT_FRL_EMPTY_MASS = SWT_EMPTY_MASS + 260;// same as SWT plus FRL weight (~260kg)
const double LWT_EMPTY_MASS = 29937.0;	//Light weight tank 66000lb 29937kg, STS-6 to STS-90
const double SLWT_EMPTY_MASS = 26535.0;	//Super light weight tank, 58500lb, STS-91 on
Code:
#ifndef ATLANTIS_SRB_H
#define ATLANTIS_SRB_H
#pragma once

#include "orbitersdk.h"
#include <vector>

const double SRB_MAX_PROPELLANT_MASS = 501673.161; // from ATK SRB fundamentals presentation
const double FWC_SRB_MAX_PROPELLANT_MASS = 501440.015; // see SLC-6 thread on O-F; data from DM-6 test
const double RSRM_SRB_MAX_PROPELLANT_MASS = 501673.161; // from ATK SRB fundamentals presentation
// SRB propellant mass [kg]
//total impulse is 1.32466E9 Ns

const double SRB_EMPTY_MASS = 87603.65;
const double FWC_SRB_EMPTY_MASS = 76263.84;// value derived from the ~25000lbs weight reduction from HPM to FWC
const double RSRM_SRB_EMPTY_MASS = 87603.65;
// SRB empty mass [kg]

//const double SRB_ISP0 = 3574.68;
const double SRB_ISP0 = 2638.89;
//const double SRB_ISP1 = 2859.74;
const double SRB_ISP1 = 2368.79;
// SRB vacuum and sea-level fuel-specific impulse [m/s]

//const double SRB_THRUST = 17064000; //from Jenkins
/*
SRM vacuum thrust as reported by Thiokol in the report "RSRM-13 (360Q013) ballistics mass 
properties flight designation STS-41"
*/
//const double SRB_THRUST = 15.12904086E6; // Vacuum SRB thrust per unit [N]
// Vacuum SRB thrust per unit [N]
const double SRB_THRUST = 14679131.3;
const double FWC_SRB_THRUST = 14808129.8; // see SLC-6 thread on O-F; data from DM-6 test
const double RSRM_SRB_THRUST = 14679131.3;

//Lift-off thrust is 15.574012 MN
//Equals vacuum thrust 17.67824672 MN
Issue Details
Project ORBITER: 2010-P1 and newer
Status Fixed
Priority 1 - Highest
Affected Version Revision denoted in description
Fixed Version (none)
Users able to reproduce bug 0
Users unable to reproduce bug 0
Assigned Users (none)
Tags Vessel Related

07-19-2017 09:39 AM
Orbinaut
 
Is there a fix that will update the specs, or a method to do so? Cheers.
Reply
08-18-2018 10:28 PM
Orbiter Founder
 
This has been addressed in SVN r.78. Can you check if this now behaves as expected?

Note that this version now adds the payload mass to the Orbiter mass, so launch behaviour will depend on the payload.

Also, any comments on the launch autopilot profile? Does this work reasonably?
Reply
08-23-2018 12:42 PM
Addon Developer
 
Things look good now. As far as comments on the launch AP, well it needs to throttle down for Max Q and then back up. Then again for the 3G management around MECO-1:00. And it needs to execute the -Z translation(upward) away from the ET post-sep, this is until the accelerometers have detected a dV of 5 fps (1.524 m/s). And it needs put the OMS-2 burn point at the apogee.

OMS-1 was essentially hardcoded for a Time of Ignition (TIG) of MET 000/00:10:30 and was used to raise the apogee up to the mission altitude where the OMS-2 burn would bring up the perigee.
Reply
08-24-2018 01:45 PM
Orbiter Founder
 
Thanks. Regarding the SSME throttle-down for max Q: do you know if this was hard-coded into the launch profile, or if there was a feedback to link the throttle setting to the measured dynamic pressure? In the first case, what was the profile (throttle vs time), and in the second case, what was the target max Q?

Regarding OMS-1 burn: with the updated mass and thrust parameters, it looks like I hardly ever need an OMS-1 burn. I always achieve target apogee before SSME shutdown, i.e. before I run out of propellant in the ET. Can you point me to a launch profile where the OMS-1 burn was actually used, so I can compare? Maybe also including the precise ET splashdown location, since this would provide an additional check on the orbit parameters at MECO. How much propellant would be typically left in the ET at MECO?

Regarding OMS-2 burn: That should already be supported in the AP. Did you try it and it didn't work?
Reply
08-24-2018 05:52 PM
GLS GLS is offline
Addon Developer
 
Quote:
Originally Posted by martins
 Thanks. Regarding the SSME throttle-down for max Q: do you know if this was hard-coded into the launch profile, or if there was a feedback to link the throttle setting to the measured dynamic pressure? In the first case, what was the profile (throttle vs time), and in the second case, what was the target max Q?
The SSMEs had a throttle table for first-stage that was determined pre-launch based on mission profile, winds, atmospheric profile, etc. That table was updated at about T+19s based on the time it took to reach a certain velocity.
IMO, that's probably too much detail for you to care about, especially when not all the data is available regarding this process (the same goes for the OMS stuff below). So, I'd be happy if the SSMEs went down to 67% at some point, and then back up at some other point (I can get you some speeds for that if you want).


Quote:
Originally Posted by martins
 Regarding OMS-1 burn: with the updated mass and thrust parameters, it looks like I hardly ever need an OMS-1 burn. I always achieve target apogee before SSME shutdown, i.e. before I run out of propellant in the ET. Can you point me to a launch profile where the OMS-1 burn was actually used, so I can compare? Maybe also including the precise ET splashdown location, since this would provide an additional check on the orbit parameters at MECO. How much propellant would be typically left in the ET at MECO?

Regarding OMS-2 burn: That should already be supported in the AP. Did you try it and it didn't work?
On the OMS burns, I'd forget the OMS-1 ever existed and just target MECO so the apogee matches the target altitude, and then let the OMS-2 do the rest.
Reply
08-25-2018 06:10 AM
Orbiter Founder
 
I have now implemented the SSME throttle-down instances for max Q at launch and for max acc 3g before MECO in SVN r.83.

The max Q throttle-down is hard-coded (linear reduction from 100% to 67% between MET=35s to MET=42s, and linear increase from 67% to 100% between MET=70s to MET=77s. Does this sound plausible?

The max 3g throttle-down event is governed by a feedback loop.

I had to modify the attitude launch profile quite a bit to account for the changed SSME thrust levels, but for a loaded shuttle I got it to match pretty well to the STS-121 launch profile I found on a NASA educational site.

The main difference appears at the end of the burn when my profile starts gaining altitude rapidly until apogee reaches the target altitude (despite including the SSME and SRB throttle-down events), but the real shuttle apparently does not. Any idea what the reason for the difference could be? Does the Shuttle deliberately throttle down or pitch down to make sure that the ET comes down in the Indian Ocean, rather than Australia, at the cost of requiring the OMS-1 burn?
Reply
08-25-2018 08:13 AM
Addon Developer
 
Quote:
Originally Posted by martins
 I have now implemented the SSME throttle-down instances for max Q at launch and for max acc 3g before MECO in SVN r.83.

The max Q throttle-down is hard-coded (linear reduction from 100% to 67% between MET=35s to MET=42s, and linear increase from 67% to 100% between MET=70s to MET=77s. Does this sound plausible?

The max 3g throttle-down event is governed by a feedback loop.

I had to modify the attitude launch profile quite a bit to account for the changed SSME thrust levels, but for a loaded shuttle I got it to match pretty well to the STS-121 launch profile I found on a NASA educational site.

The main difference appears at the end of the burn when my profile starts gaining altitude rapidly until apogee reaches the target altitude (despite including the SSME and SRB throttle-down events), but the real shuttle apparently does not. Any idea what the reason for the difference could be? Does the Shuttle deliberately throttle down or pitch down to make sure that the ET comes down in the Indian Ocean, rather than Australia, at the cost of requiring the OMS-1 burn?
STS-121 was a so called "Direct Insertion" flight where MECO puts the apogee directly at the desired altitude required only the OMS-2 burn. Trajectories requiring the two-OMS burn profile are called "Standard Insertion" flights as they were the standard profile used up until STS-33 in 1989. For DI flights, the ET impact zone is in the Pacific rather than the Indian Ocean.


OMS-1 on DI flights are reserved for severe MECO underspeeds where the MECO Height of Apogee (HA) is less than 95 N.Mi (175.94 km).
Reply
08-25-2018 04:30 PM
Orbiter Founder
 
Thanks for the feedback. I am closing this issue for now since the original bug report has been addressed now. The launch autopilot seems to work reasonably well, but I may still tweak it to some extent. The RCS impulse for separating from the ET still needs to be implemented. I'll do that for one of the next commits.
Reply
Reply

Issue Tools
Subscribe to this issue

All times are GMT. The time now is 12:52 PM.

Quick Links Need Help?


About Us | Rules & Guidelines | TOS Policy | Privacy Policy

Orbiter-Forum is hosted at Orbithangar.com
Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Copyright 2007 - 2017, Orbiter-Forum.com. All rights reserved.