At launch, a vehicle like the space shuttle would command its throttle to do a few things:

  1. Ramp up to max throttle
  2. Hold max throttle
  3. Follow a throttle bucket as function of velocity when near max-Q
  4. Turn on a 3g controller at 3g to hold, well, 3g.
  5. Possibly kill an engine if needed to maintain 3g, as Saturn V did.
  6. Ramp down to zero throttle when MECO conditions detected.

How would the throttle transition from one task to the next to the next? Is there a schematic somewhere of the switching logic behind all this? Was it switching logic?

Or would they just multiply the outputs of the ramp, throttle bucket, 3g controller, etc, to obtain the effective throttle at each instant (where the ramp-up output might be 1 after the ramp is complete and the throttle bucket output might be 1 above the max-q region and where the 3g controller might be scaling down the throttle to maintain 3g late in launch and where the ramp-down output might be 1 if MECO not yet occurred...)?

  • 3
    $\begingroup$ I don't have a source, but it would be a state machine controlled by time or velocity measurements, a different mode for each of the numbered points you list. The startup, throttle bucket, and 3g hold of the shuttle are all well-separated in time; there would be no reason to compute all of them and multiply them together. $\endgroup$ – Russell Borogove Jun 2 at 2:43
  • 1
    $\begingroup$ Thanks, @RussellBorogove! I suspected a finite-state machine also. I have a few of those in my model, but I just realized I've been ignoring them in my throttle controller. Not super important, but would you know if the state machines would typically be Mealy machines or Moore machines? $\endgroup$ – user39728 Jun 2 at 2:48
  • 1
    $\begingroup$ Now consider a rocket like the Falcon 9, which has still more throttle modes beside those I listed. There is a three-engine reentry burn. There is also a final landing burn. Both of these would have a ramp-up phase, a max throttle phase, and a ramp-down mode, plus some type of throttle regulator for the landing burn. And I'm wondering... since I haven't seen how this stuff is actually structured... if it would make sense to group these modes hierarchically... with ascent/reentry/landing as "parent" modes each with ramp-up/etc/ramp-down children modes? Or would the mode structure just be flat? $\endgroup$ – user39728 Jun 2 at 2:57
  • 1
    $\begingroup$ A reference to the throttle logic showing how the switching between modes is done would be greatly appreciated. $\endgroup$ – user39728 Jun 2 at 2:59

Most of these control systems are written with MathWorks Stateflow. It's a simple way of implementing state machines where you can define behaviors for states and entry/exit conditions for each state. Typically, you will have different trajectory following behavior, throttle control loops, etc for each state.

  • 1
    $\begingroup$ Do you have any references for your assertion that "most" of these control systems are written that way? $\endgroup$ – Organic Marble Jun 5 at 0:07
  • $\begingroup$ Stateflow is the software and I'm not asking about the software. I'm asking about the algorithms themselves. I'll figure out how to model them once I see them. Stateflow won't help me if I don't know what the sequencing logic looks like ;-) $\endgroup$ – user39728 Jun 5 at 2:03
  • $\begingroup$ And OK, I agree that Stateflow does make complex sequencing logic easier than Simulink. But not the control loops. Those would still be mostly Simulink. Same for navigation and guidance algorithms, I think. And anyhow, you could model your state machines in Simulink if you chose to. It's just things might get messy for complex logic is all. $\endgroup$ – user39728 Jun 5 at 2:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy