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

Status
Not open for further replies.
I am very sorry there. :lol: I know the theory there, but sadly, I am "dancing on too many weddings" as we Germans say right now, to do something like that.


The problem is how to describe the hydraulic system mathematically - do you know basic electric equations? Kirchhoffs laws? Essentially, those formulas work with small modifications on hydraulic systems as well. You have flow instead of current and pressure instead of voltage.

I know Ohms law only in a very basic way. I didn't solve complex things with it. No idea about Kirchhoff's laws.


I don't understand how I can apply it to hydraulic systems. Could you give me an example?
 
I noticed that when the vehicle is in a bank, it needs to keep putting (IMO) way too big amounts of aileron to remain in that attitude. I'm no plane expert but I think that when aileron = 0, the vehicle should remain +/- in the same roll attitude, which I just confirmed by a flight in the DG.
Any idea what could be wrong in the aero for the FCS needing to continuously put aileron? This really "fills up" the aileron integrator like a wing was falling off or something... :uhh:
 
I noticed that when the vehicle is in a bank, it needs to keep putting (IMO) way too big amounts of aileron to remain in that attitude. I'm no plane expert but I think that when aileron = 0, the vehicle should remain +/- in the same roll attitude, which I just confirmed by a flight in the DG.
Any idea what could be wrong in the aero for the FCS needing to continuously put aileron? This really "fills up" the aileron integrator like a wing was falling off or something... :uhh:

Generally keeping a constant bank attitude requires continuous small flight control adjustments on the roll axis. This is mainly due to the fact that you never fly in perfect still air hence there are small/latge perturbations on the vehicle state (wind changes, up-downdrafts etc) which needs to be compensated for by applying flight control inputs. Also the aerodinamic stability of the aircraft comes into play. Usually the more the ship is maneuvrable the less she is stable and vice versa. I don t know the details about the Shuttle aerodynamic characteristics but being a huge haevy brick and not a 4th generation fighter jet I assume she should not require such big aileron inputs
 
Last edited:
I don't understand how I can apply it to hydraulic systems. Could you give me an example?


For example, the most simple case:


You have an ideal pump, capable of producing infinite flow at a pressure of 8 MPa. You have an ideal piston, with 1 m² area and 1m stroke.



If you want to calculate how much flow you have at the piston, you essentially look at the flow resistance of the piston. With ideal components its easy - the flow is just limited by the possible change in volume in the piston. In real components, the pressure acting on the piston is more complex to calculate and usually described with complex diagrams



Would you have multiple pistons in parallel operating at the same time, you would need to solve how much flow goes to each piston of the total flow. Again, this would be similar to parallel consumers in an electric circuit.



In the big picture, the analogy works fine, but of course, hydraulic components are no electric components. But: Total pressure as sum of dynamic pressure and static pressure keeps on working fine as analogy to voltage - flow goes from high pressure to low pressure, the difference in pressure determines the flow. The sum of all ingoing and outgoing flows of a node should be exactly zero (unless you have leakage. Hydraulic computers are a wet affair)
 
Generally keeping a constant bank attitude requires continuous small flight control adjustments on the roll axis. This is mainly due to the fact that you never fly in perfect still air hence there are small/latge perturbations on the vehicle state (wind changes, up-downdrafts etc) which needs to be compensated for by applying flight control inputs. Also the aerodinamic stability of the aircraft comes into play. Usually the more the ship is maneuvrable the less she is stable and vice versa. I don t know the details about the Shuttle aerodynamic characteristics but being a huge haevy brick and not a 4th generation fighter jet I assume she should not require such big aileron inputs

Yes, it always has to make small adjustments, but that aside, it should remain pretty much still in roll if no aileron is input.
I just ran a debug session with a breakpoint in the "aero-stuff", and it outputs a negative coefficient of drag... that would mean the vehicle accelerates, right? :uhh:
I don't want to, but I'll have to look at the aero data, at least so I can sleep well at night... :facepalm:

---------- Post added at 07:47 PM ---------- Previous post was at 07:45 PM ----------

What does the current HydActuator class do?

Absolutely nothing. :facepalm: It is the remains of an aborted attempt to implement the hydraulic actuators.
 
I just ran a debug session with a breakpoint in the "aero-stuff", and it outputs a negative coefficient of drag... that would mean the vehicle accelerates, right? :uhh:


Could it be a simulation error?
 
Could it be a simulation error?

No, it was the output of the functions that calculate the coefficients of lift and drag, in this case the lateral components of them.
 
How to start a debug session?

I did some changes and now I have a CTD every time I load a scenario.

The error happens in PreStep, in this line:
Code:
psubsystems->PreStep(simT, simDT, mjd);
I've double checked all the subsystems I made and I can't find any bugs.
 
How to start a debug session?

I did some changes and now I have a CTD every time I load a scenario.

The error happens in PreStep, in this line:
Code:
psubsystems->PreStep(simT, simDT, mjd);
I've double checked all the subsystems I made and I can't find any bugs.

Attach VS to the orbiter process, while still in the launchpad window, and them launch the scenario in question.
 
I detected the bug and fixed it. It works now.

Now hydraulic actuators for elevon, rudder, speed brake, and body flap are implemented.
For now, the hydraulic system is very simple and doesn't simulate the temperature and flow rate. It just an APU that controls the pressure for the system.

Any idea about implementing temperature? How I can set the temperature and change rate?
 
Any idea about implementing temperature? How I can set the temperature and change rate?

Well, since hydraulic oil is practically incompressible, any work done to compress it results in the oil heating up - its internal energy increases, if its kinetic energy (flow) remains constant.

You essentially have three kinds of places, where internal energy can increase:


  • Hydraulic pump / circulation pump
  • Heaters
  • Pistons and valves
And of course, just the WSB to decrease internal energy again to prevent damage to the hydraulic components: excessive temperature damages seals and valves.



Also, heat conduction through the shuttle structure can increase temperature, but since we have no thermal model right now, assuming this balance to be zero would be OK.
 
Well, since hydraulic oil is practically incompressible, any work done to compress it results in the oil heating up - its internal energy increases, if its kinetic energy (flow) remains constant.

You essentially have three kinds of places, where internal energy can increase:


  • Hydraulic pump / circulation pump
  • Heaters
  • Pistons and valves
And of course, just the WSB to decrease internal energy again to prevent damage to the hydraulic components: excessive temperature damages seals and valves.



Also, heat conduction through the shuttle structure can increase temperature, but since we have no thermal model right now, assuming this balance to be zero would be OK.

IMO, leaving just the pumps as "heat sources" (and the WSBs as "heat sinks") would be fine for now.
 
IMO, leaving just the pumps as "heat sources" (and the WSBs as "heat sinks") would be fine for now.

Yes. The aerodynamic forces on the control surfaces are second strongest heat source.
 
I want to program a realistic elevon actuator. The current one is super simple.

To make it more realistic, I need to have some information:

First: I don't understand how to make an elevator while I have 2 actuators. Each actuator controls one aileron, how to make the elevator?

Second: I want to know every system uses the elevon, and how it's used. I want to have a general picture about aerosurfaces system. Also, an explanation why elevon isn't separated:
Code:
	//DiscInPort LeftElevonCommand, RightElevonCommand;
	DiscInPort ElevonCommand, AileronCommand, RudderCommand;
 
First: I don't understand how to make an elevator while I have 2 actuators. Each actuator controls one aileron, how to make the elevator?

Actually, its elevons and ailerons on each wing. Not classic elevators and only the out-most control surfaces on the delta wing are plain ailerons.
 
I want to program a realistic elevon actuator. The current one is super simple.

To make it more realistic, I need to have some information:

First: I don't understand how to make an elevator while I have 2 actuators. Each actuator controls one aileron, how to make the elevator?

Second: I want to know every system uses the elevon, and how it's used. I want to have a general picture about aerosurfaces system. Also, an explanation why elevon isn't separated:
Code:
    //DiscInPort LeftElevonCommand, RightElevonCommand;
    DiscInPort ElevonCommand, AileronCommand, RudderCommand;
The term "elevon" is a combination of two separate terms, "elevator" and "aileron". Elevons act as both elevators and ailerons using only a single control surface on each wing. This saves weight as you don't have to have a separate wing (the 747 is an excellent example as the elevators are on the aft horizontal stabilizer while the ailerons are on the main wings) for each.
 
Actually, its elevons and ailerons on each wing. Not classic elevators and only the out-most control surfaces on the delta wing are plain ailerons.
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?
 
Second: I want to know every system uses the elevon, and how it's used. I want to have a general picture about aerosurfaces system. Also, an explanation why elevon isn't separated:
Code:
    //DiscInPort LeftElevonCommand, RightElevonCommand;
    DiscInPort ElevonCommand, AileronCommand, RudderCommand;

On the second question: Don't read the current state in the code too much. Its outdated and rudimentary. Follow SCOM and technical drawings.

And for example, these manuals:

https://www.nasa.gov/centers/johnson/pdf/383439main_apu_hyd_wsb_21002.pdf

https://www.nasa.gov/centers/johnson/pdf/383446main_fcs_effectors_workbook_21002.pdf
 
I want to program a realistic elevon actuator. The current one is super simple.

To make it more realistic, I need to have some information:

First: I don't understand how to make an elevator while I have 2 actuators. Each actuator controls one aileron, how to make the elevator?

Second: I want to know every system uses the elevon, and how it's used. I want to have a general picture about aerosurfaces system. Also, an explanation why elevon isn't separated:
Code:
	//DiscInPort LeftElevonCommand, RightElevonCommand;
	DiscInPort ElevonCommand, AileronCommand, RudderCommand;

You don't care what the actuator is going to do: SSME valve, LIB actuator, brakes, etc. They all have many things in common, especially now that this work is just starting. Some will have 1 hydraulic system, others will have 2 (and some 3?), and there will also be some differences in the way they are commanded, but let's leave that for later.
IMO, right now they should receive a command between 0 and 1, and output a value between 0 and 1, where 0 is fully retracted and 1 fully extended. The trick here is getting the motion rate correct for a certain hydraulic pressure and flow rate.
 
Status
Not open for further replies.
Back
Top