SSU Development thread (4.0 to 5.0) [DEVELOPMENT HALTED DUE TIME REQUIREMENTS!]

Status
Not open for further replies.
How this is currently implemented in Orbiter?

Also, why disable and enable control surfaces functions don't use SetADCtrlMode instead of creating and removing the surface?

Possibly because the aerodynamic model is much different to what you will find on standard orbiter vehicles.
 
Also, the aerosurfaces have been changed in the OrbitersimBeta branch, so don't play around much with them as they will change when I merge to the trunk. For now just create a test actuator and play with it for development.

---------- Post added at 02:53 PM ---------- Previous post was at 02:50 PM ----------

How this is currently implemented in Orbiter?

Also, why disable and enable control surfaces functions don't use SetADCtrlMode instead of creating and removing the surface?
We only have 1 "regular" aerosurface which is the rudder. For all the others we have tables that give us lift, drag and forces that we set.
IMO, the enable/disable functions shouldn't really exist (both for aero and for RCS). The things are always there, if we use them or not is up to the GPCs.
 
Based on this information, I decided to work on SSME and landing gear actuators, but I faced a problem in the landing gear.

The current landing gear implementation is done by making them one gear. I want to separate them. But I don't know how to set the drag for them. This is the current code:
Code:
CreateVariableDragElement(&(gear_status.pos), 2, _V(0, -3, 0));      // landing gear drag
How I can set the drag for each gear?
 
Based on this information, I decided to work on SSME and landing gear actuators, but I faced a problem in the landing gear.

The current landing gear implementation is done by making them one gear. I want to separate them. But I don't know how to set the drag for them. This is the current code:
Code:
CreateVariableDragElement(&(gear_status.pos), 2, _V(0, -3, 0));      // landing gear drag
How I can set the drag for each gear?

Like I said above: don't worry about the uses the actuators will have. That will come later. Just create one, that does nothing useful, except give you information about its position while you develop both the actuator and the hydraulic system.
Until it is all +/- working (and it will take time) there is no point in changing things.
 
Fix tickets, please.:thumbup:
 
Now I have a fully working landing gear deploy system as described in SCOM. Now time to work on the brake system.

I want to know where the brake system is defined in the code. I only found this code:
Code:
SetMaxWheelbrakeForce(250000 / 2);
 
Now I have a fully working landing gear deploy system as described in SCOM. Now time to work on the brake system.
Care to point out what was missing, and why is it needed to simulate the hydraulic system?

I want to know where the brake system is defined in the code. I only found this code:
Code:
SetMaxWheelbrakeForce(250000 / 2);
We don't have brakes... :uhh: we use Orbiter's "braking system".
 
Care to point out what was missing, and why is it needed to simulate the hydraulic system?
What I did is separating the gears, and assigning hydraulic systems for each gear. I forget to mention that I haven't programmed the pyrotechnics yet.


What is the deploying speed for pyrotechnic deploy?
We don't have brakes... :uhh: we use Orbiter's "braking system".

Is there a way to set brakes for the 2 main gear only? Or a 'from scratch' breaking system should be created?



And what about the nose wheel steering?
 
What I did is separating the gears, and assigning hydraulic systems for each gear. I forget to mention that I haven't programmed the pyrotechnics yet.


What is the deploying speed for pyrotechnic deploy?


Is there a way to set brakes for the 2 main gear only? Or a 'from scratch' breaking system should be created?



And what about the nose wheel steering?


This is all well and good, ...but, and this is JMO. What we need is, someone to help take some of the workload off of GLS, to finish things that are already being worked on, so we can get a release for SSU 5.0.

So if you can do both, work on the things you are interested in and helping GLS. That would be a huge help. If not, that ok too.


BTW welcome to the team.
 
What I did is separating the gears, and assigning hydraulic systems for each gear. I forget to mention that I haven't programmed the pyrotechnics yet.


What is the deploying speed for pyrotechnic deploy?


Is there a way to set brakes for the 2 main gear only? Or a 'from scratch' breaking system should be created?



And what about the nose wheel steering?

Are the gear and brake isolation valves done? And the MPS/TVC ones? What about the heat going in from the pumps and going out thru the WSB? Hydraulic quantities?

The implementation of the gear, brakes and NWS needs work, but what we have works for now. Same for the ATVC and the ASA. What we need first is an actuator that receives an electrical signal and outputs a position between 0 and 1, and does so taking into account the hydraulic pressures of the systems connected to it. And in the hydraulic system "feels" the flow rate demands of the moving actuators and the pressure varies accordingly.

---------- Post added at 06:50 PM ---------- Previous post was at 06:44 PM ----------

This is all well and good, ...but, and this is JMO. What we need is, someone to help take some of the workload off of GLS, to finish things that are already being worked on, so we can get a release for SSU 5.0.

So if you can do both, work on the things you are interested in and helping GLS. That would be a huge help. If not, that ok too.


BTW welcome to the team.

In no way are not adding more to the 5.0 plate... it's already impossible to release it this year as I wanted. :facepalm:
As far as I can see there are 2 long poles in this tent: finishing the entry code, and finishing the mesh changes. The first is for me to do (unless someone wants to verify the aero code.... lots of numbers and math), the second probably is long enough that I'll have to help on the more boring portions.
 
This is all well and good, ...but, and this is JMO. What we need is, someone to help take some of the workload off of GLS, to finish things that are already being worked on, so we can get a release for SSU 5.0.

So if you can do both, work on the things you are interested in and helping GLS. That would be a huge help. If not, that ok too.


BTW welcome to the team.
I wish if I can help, but they are working on very complex things. I am a beginner in all sides (Math, physics, programming, space, space shuttle). You can see how I am spending a lot of time to implement a very simple gear system :rofl:


Are the gear and brake isolation valves done? And the MPS/TVC ones? What about the heat going in from the pumps and going out thru the WSB? Hydraulic quantities?

The implementation of the gear, brakes and NWS needs work, but what we have works for now. Same for the ATVC and the ASA. What we need first is an actuator that receives an electrical signal and outputs a position between 0 and 1, and does so taking into account the hydraulic pressures of the systems connected to it. And in the hydraulic system "feels" the flow rate demands of the moving actuators and the pressure varies accordingly.
I guess I was hasty when I said I've done it like SCOM. What I did is just a basic implementation. Nothing was implemented from what you said :)



Anything that involves a high-level physics or math is very hard to do for me. Like the flow rate and temperature. My physics and math are really awful.


I think if I can understand the theory right, I might be able to do it.


The current gear actuator receives the command from PreStep(After setting gear action to OPENING or CLOSING). It receives the target position (1 for extending, 0 for retracting) and moves the animation until the position is same as the target, then it sets the gear action to OPEN or CLOSE.


As my math is bad, the gear speed is calculated via ratio, assuming the speed is 0.3 with 3000 pressure. The maximum speed is 0.3. All of this is done before multiplying the speed in simdt. I am not sure what I am doing is right, as I've never worked with hydraulics before.


The actuator uses hydraulic system 1 for calculations. If it was the nose gear, it'll use system 2 instead if system 1 pressure was below 1500.

---------- Post added at 10:25 PM ---------- Previous post was at 09:09 PM ----------

I've tried a test flight and always have a hold on T-4 minutes. Where is the hold code?
 
You have to turn on the APUs.
 
I've followed the checklist and had them running. I want to see the source code to know what is the problem.

---------- Post added 14th Dec 2018 at 08:47 AM ---------- Previous post was 13th Dec 2018 at 10:32 PM ----------

I've solved the problem. The APU speed random sets a low speed that sets a low hydraulic pressure. I've changed the random rate.

Now I am having a hold at T-9.5 seconds. This because SSMEs aren't ready. I don't think I've done any changes to SSMEs. Maybe a hydraulic problem? The hydraulic pressure is stable at 3000.
 
I've followed the checklist and had them running. I want to see the source code to know what is the problem.

---------- Post added 14th Dec 2018 at 08:47 AM ---------- Previous post was 13th Dec 2018 at 10:32 PM ----------

I've solved the problem. The APU speed random sets a low speed that sets a low hydraulic pressure. I've changed the random rate.

Now I am having a hold at T-9.5 seconds. This because SSMEs aren't ready. I don't think I've done any changes to SSMEs. Maybe a hydraulic problem? The hydraulic pressure is stable at 3000.


Remember we have no telemetry yet that could be used to read the hydraulic system data independent of what you are implementing. Its well possible, that the LCC checks different variables as you are working with.
 
I still would like to know what work is going on exactly... if we don't have the flow rate demands vs pressure, capability to have different command sources on the actuators, different dP and position measurements, hyd system supplies, isolation valves, etc, then I don't know the point of this. :shrug:

---------- Post added at 08:45 PM ---------- Previous post was at 08:41 AM ----------

Did anyone by any chance save this document with shuttle aero data? 19850070642_1985070642.pdf
Digging old threads it appears that is where our aero data came from, but it is no longer available online. I found (what appears to be) a similar one, but it dates from 1980, so it only has pre-flight data, thus it's hard to check the data. At least the formulas should be good, so I can check that part (already found the speedbrake input is not correct).

Also, if anyone wants to look at the aero lookuptables and files, and come up with a faster loading system (switch to binary?), be my guest.
 
Did anyone by any chance save this document with shuttle aero data? 19850070642_1985070642.pdf
Digging old threads it appears that is where our aero data came from, but it is no longer available online.

https://web.archive.org/web/2010051...casi.ntrs.nasa.gov/19850070642_1985070642.pdf

Most of old NTRS was saved this way. You have no idea how many Apollo documents we could (and had to) recover this way... Just doesn't work for any documents added to NTRS after 2011.
 
https://web.archive.org/web/2010051...casi.ntrs.nasa.gov/19850070642_1985070642.pdf

Most of old NTRS was saved this way. You have no idea how many Apollo documents we could (and had to) recover this way... Just doesn't work for any documents added to NTRS after 2011.
Thanks!!! :cheers:
It took a few attempts to download it, but I got it after all! :hailprobe:
Actually I download most NTRS stuff from archive.org, as they don't put the link in the first page of the document, but I didn't remember of the wayback machine... :facepalm:
 
I still would like to know what work is going on exactly... if we don't have the flow rate demands vs pressure, capability to have different command sources on the actuators, different dP and position measurements, hyd system supplies, isolation valves, etc, then I don't know the point of this. :shrug:

What I've made is exactly as you said. I didn't make any primary changes. Just separating the hydraulic system from the APU and some minor changes. This should provide a base for further changes.


I am now working on the flow rate. I'll use Ohm's law with flow instead of current, and pressure instead of voltage. The problem is that I don't know what is the resistance. Assuming a normal flow of 21 gpm at 3050 psi, the resistance will be 145.24. Is this right?


So now I have the flow rate. I don't understand how to distribute it between systems. A little bit of explanation here would be great.


As the aerosurfaces will change in Orbiter Beta, I won't deal with it for now.


The current 'working' actuator is the landing gear. It's exactly as you've said. It receives a position from 1 to 0 and moves the gear. The gear speed is calculated based on the pressure (I guess I should be based on the flow).


I want an explanation of " different dP and position measurements, hyd system supplies". I am not sure what this means.


I'll look into the isolation valves after finishing the flow rate and temperature.
 
This might be of use: RSB axis angle to Z-axis = 34.833134º (as indicated in the aero data book)
 
So here is my latest:

The normal flow rate is 63 gpm, not 21. This gives a resistance of 47.62.
Source: HSF - The Shuttle.
When an APU has been started, the corresponding hyd main pump press switch is positioned from low to norm . This de-energizes the respective depressurization valve, allowing that hydraulic pump to increase its outlet pressure from 500 to 1,000 psi to 2,900 to 3,100 psi. Each hydraulic pump is a variable displacement type that provides zero to 63 gallons per minute at 3,000 psi nominal with the APU at normal speed and 69.6 gallons per minute at 3,000 psi nominal with the APU at high speed.

I still have no idea about flow rate and actuators.

Back to the temperature, I've tried to implement it. Based on this website, each watt raises the temperature of 1 gallon by 1 F per hour.

So I need to calculate the pump hp and convert it to watts. This is the formulas : Horsepower (hp) = pressure (psi) x flow (gpm) / 1714

In a perfect condition, 3000 x 63 / 1714 = 110.27 hp. Convert to watts 110.27 x 746 = 82260.21 watts.

This means the hydraulic pump will raise the temperature of 1 gallon by 82260.21 degrees per hour.

Converting it to seconds, 82260.21 / 60 / 60 = 22.85 F per second.

Now I need to convert the flow rate to gallon per second: 63 / 60 = 1.05 gallon per second.

So the temperature for a normal flow rate is 22.85 / 1.05 = 21.76 F per second.

I don't know but this seems to be too high. Especially that Shuttle doesn't normally use WSB for hydraulics during ascent.

Also, I don't know how much temperature should the WSB reduce.

Any help?

---------- Post added at 08:51 PM ---------- Previous post was at 08:40 PM ----------

Here is the code:
Code:
HydSys->SetTemp(HydSys->GetTemp() + (((((((HydSys->GetHydPress() * HydSys->GetFlowRate()) / 1714) * 746) / 60) / 60) / (HydSys->GetFlowRate() / 60)) * DeltaT));
 
Status
Not open for further replies.
Back
Top