Project M-III launch vehicle

Pipcard

mikusingularity
Addon Developer
Donator
Joined
Nov 7, 2009
Messages
3,709
Reaction score
38
Points
88
Location
Negishima Space Center
Introducing Hatsunia's next-generation rocket: the M-III launch vehicle.

s0rtsKl.png

(Pictured is a prototype version using Velcro Rockets. Meshes and textures will most likely be different.)

The M-III is like a wider version of SpaceX's Falcon 9, except with 7 engines on the first stage, and all the propellants are methane/liquid oxygen (methalox). M-II had three different fuel types (kerosene, liquid hydrogen, and solid fuel), which would have had higher manufacturing and operating costs, but it could be justified as an optimization for performance. But now the Hatsunese space program will try to optimize for lower operating costs (although there is the expense of developing a new type of engine and fuel system), and will transition into a launch system with greater commonality.

Liquid hydrogen has the highest efficiency (specific impulse) for a chemical rocket engine, but its low density and thrust as well as higher dry mass fractions make less suitable for first stages. It is also known to gradually boil off in space. SpaceX also considered it to be too hard to handle. Liquid methane is the next best thing. Its specific impulse and density are in-between kerosene and liquid hydrogen, because an all-kerolox rocket would be a step backwards in performance for missions beyond low Earth orbit. Methane also has less problems with boil-off.

Unlike Falcon 9, the core diameter of which was limited by its need to be road-transportable, M-III will have an increased core diameter (about the same as Ariane 5 and 6, Delta IV and Vulcan, and the H3 rocket), which will be able to support wider fairings (and wider, heavier payloads).

Having 7 engines will help because I also intend to make this rocket capable of first-stage boost-back and landing using only the central engine (methalox is also good for reusable engines as it produces less soot/residue than a kerosene engine). This will only be possible with custom .dll programming, and this will be an attempt at doing that with no prior experience in programming Orbiter add-ons whatsoever.

So I would like to give much appreciation for BrianJ's hard work in making the code for his Falcon9R add-on, and many thanks for making it open-source so that people could use it as a reference. Especially the return-to-launch-site feature, as there are many people who believe that if SpaceX's approach to reusability succeeds, it will revolutionize spaceflight as we know it.

The plan is for the expendable single-core version to have an LEO payload capacity of about 19 tonnes so that it can have a margin for first-stage reusability (which is thought to be at least 30% with return to launch site). The M-III Heavy (three-core) will have about 60 tonnes of payload capacity in expendable mode (with crossfeed).

No real data references exist for methalox rocket stages yet (especially propellant mass fractions). But I found a thread on the NASASpaceflight forum that shows a hypothetical methalox version of Falcon 9. Both stages would have a propellant mass fraction of around 93.3-93.5%. I tried to message Dmitry Vorontsov, the one who conceived this hypothetical launcher, but he didn't tell me the exact methodology of how the dry masses of each stage were obtained (which I assume was too complex to be explained in a message, considering that he used to be a professional launch vehicle designer. Or he may have not had the time. I didn't want to bother him any further after that). I may or may not do some estimation analysis like this later on, but wouldn't material efficiencies for structures and tanks have gotten better since the days of Saturn V (especially with SpaceX)? So I'll just use the best (and only?) estimate for propellant mass fraction, which would be ~93.4%.

There was another person on the NASASpaceflight forum (Hyperion) who thought of an all-methalox launcher that was called "Neptune". M-III would be like the single-core and heavy (3-core) versions of that, but it won't have any more cores because multiple boosters are harder to recover. If I ever make a M-IV (and that will be the last designation because the next one will only cause inter-universal confusion), it will be something like SpaceX's currently vague plan for a fully reusable single-core super-heavy methalox rocket known only as the BFR (except somewhat smaller).

(Space Station Mirai is on hold for now, due to me forgetting to transfer some important files before coming back to college from winter break. The only things I have to do are the rest of the mission scenarios and the documentation. And I really wanted to get started on this.)

(Also, I've decided that the M officially stands for Mikubishi, which is the primary contractor for this launch vehicle series. Remember, it is an "M rocket," not a "Mu rocket.")
 
Last edited:

MaverickSawyer

Acolyte of the Probe
Joined
Apr 11, 2011
Messages
3,919
Reaction score
5
Points
61
Location
Wichita
What thrust class you looking for in your metholox engines? There's one in heavy development by Blue Origin, the BE-4, that runs 550,000 pounds thrust. That may be a bit much for running 7 engines, though.
 

Pipcard

mikusingularity
Addon Developer
Donator
Joined
Nov 7, 2009
Messages
3,709
Reaction score
38
Points
88
Location
Negishima Space Center
What thrust class you looking for in your metholox engines? There's one in heavy development by Blue Origin, the BE-4, that runs 550,000 pounds thrust. That may be a bit much for running 7 engines, though.
Each engine will be in the 600-800 kN (135,000-180,000 lbs) range.
 

Malky

Member
Joined
Feb 11, 2014
Messages
64
Reaction score
0
Points
6
This is amazing, I was for some time wishing for fictive rocket with propulsive landing. Can't wait for this!
 

Pipcard

mikusingularity
Addon Developer
Donator
Joined
Nov 7, 2009
Messages
3,709
Reaction score
38
Points
88
Location
Negishima Space Center
I'm trying to get started by following Hlynkacg's tutorial. I already have Visual Studio installed, but I can't seem to get this working:

There are two things we need to do to overcome this.

picture.php


The first is to go into your project properties and tell Visual Studio to include the files that contain these instructions in it's searches. These files are contained within the convieniently named "include" folder found within orbiters sdk folder ^see screen-shot^

The second is to add the orbiter addon developement libraries to our project.

Click on "resources" folder in the left hand drop down menu and select "add an existing file". Select Orbiter.lib and orbitersdk.lib from the orbitersdk folder and add them to your project.

But I'm still getting this error:

JBDnsyN.png


(Orbiter.lib and orbitersdk.lib were in the Orbitersdk\lib folder, and I tried getting all the other files from the Orbitersdk\include folder)

Also, what would you have to do in order to compile this for Orbiter 2015/2016? I'm guessing that you would have to do the same thing with the 2015/2016 sdk files?

---------- Post added at 10:19 PM ---------- Previous post was at 02:15 PM ----------

I had to go to Project -> (Project name) Properties -> and add Orbitersdk\include to the "Include Directories." Now it works.

Jybjgky.png
 
Last edited:

orb

O-F Administrator,
News Reporter
Joined
Oct 30, 2009
Messages
14,020
Reaction score
4
Points
0
I'd encourage using Orbiter property sheets instead of configuring all the settings separately in more complicated way. The property sheets once you add them to the project do the configuration for you and you only need to set inside one of them the path to your Orbiter installation directory (only once, and not for every project).
 

Pipcard

mikusingularity
Addon Developer
Donator
Joined
Nov 7, 2009
Messages
3,709
Reaction score
38
Points
88
Location
Negishima Space Center
After having borrowed some code from ShuttlePB (such as exhaust particles) and Falcon9R (again, thank you BrianJ), I have the beginnings of a working .dll prototype.

JxC2w5R.png


You can even run directly Orbiter through the VS "Debug mode", which is extremely helpful to track your errors.

"Run directly"? You can do that? How exactly does that work?
 

orb

O-F Administrator,
News Reporter
Joined
Oct 30, 2009
Messages
14,020
Reaction score
4
Points
0
"Run directly"? You can do that? How exactly does that work?
In Debugging card (of the Debug configuration) in project properties, as a "Command" you put either "$(OrbiterDir)\orbiter.exe" for in-line graphics or "$(ModulesDir)\Server\orbiter.exe" for external graphics and as a "Working Directory" you put "$(OrbiterDir)". That of course if you use Orbiter property sheets - if you don't use them then you use there full paths.

Next you can for example set a breakpoint in your code at the line you want to start debugging your module and you execute "run" command and Orbiter will be launched, and then once the execution stopped at your code either of the debugging tools or commands. However before debugging your module it's the best to change Orbiter to run in windowed mode.
 

Pipcard

mikusingularity
Addon Developer
Donator
Joined
Nov 7, 2009
Messages
3,709
Reaction score
38
Points
88
Location
Negishima Space Center
I tried doing that just now, but the Orbiter client opens up with no scenarios.

(and I always run Orbiter in windowed mode)
 

Pipcard

mikusingularity
Addon Developer
Donator
Joined
Nov 7, 2009
Messages
3,709
Reaction score
38
Points
88
Location
Negishima Space Center
I want to use the Payload Manager SDK but does it work with the VESSEL3 base class?

Also, if I have to use VESSEL2, can those vessels be compiled for the new Orbiter beta?
 
Last edited:

Urwumpe

Not funny anymore
Addon Developer
Donator
Joined
Feb 6, 2008
Messages
37,588
Reaction score
2,312
Points
203
Location
Wolfsburg
Preferred Pronouns
Sire
I want to use the Payload Manager SDK but does it work with the VESSEL3 base class?

Also, if I have to use VESSEL2, can those vessels be compiled for the new Orbiter beta?

AFAIR yes, you just have to state that you are using this as base class in the template instantiation statement.
 

Pipcard

mikusingularity
Addon Developer
Donator
Joined
Nov 7, 2009
Messages
3,709
Reaction score
38
Points
88
Location
Negishima Space Center
AFAIR yes, you just have to state that you are using this as base class in the template instantiation statement.
Actually it says this in the doc:

5. If your vessel class is not a child of VESSEL2 base class, use another template:

Code:
class My_vessel:
public VesselWithPM<My_vessel, MyOwnBaseVesselClass>
{
public:
My_vessel (OBJHANDLE hObj, int fmodel);
~ My_vessel ();
/* Custom methods of your vessel
.........
.........
.........
*/
}

Make sure that MyOwnBaseVesselClass has the VESSEL2 as the base class (may be not directly but in the end of child-parent tree).

What I'm wondering is if VESSEL2 will still be compatible with future versions of Orbiter.
 

Urwumpe

Not funny anymore
Addon Developer
Donator
Joined
Feb 6, 2008
Messages
37,588
Reaction score
2,312
Points
203
Location
Wolfsburg
Preferred Pronouns
Sire
What I'm wondering is if VESSEL2 will still be compatible with future versions of Orbiter.

No idea. I am also not good at looking into the future. What do you mean with future? Orbiter 2003 add-ons did no longer work in Orbiter 2010, which is about 4 years of support, since Orbiter 2006 came out.

VESSEL2 add-ons don't work well with rendering clients already.
VESSEL3 add-ons are the current reference.
 

Pipcard

mikusingularity
Addon Developer
Donator
Joined
Nov 7, 2009
Messages
3,709
Reaction score
38
Points
88
Location
Negishima Space Center
No idea. I am also not good at looking into the future. What do you mean with future? Orbiter 2003 add-ons did no longer work in Orbiter 2010, which is about 4 years of support, since Orbiter 2006 came out.

VESSEL2 add-ons don't work well with rendering clients already.
VESSEL3 add-ons are the current reference.
I know that VESSEL3 is the current reference. Which rendering clients are you talking about, specifically? Was VESSEL3 made before Kulch's Energia was released (in 2009), because it works with D3D9.

But I need a better in-sim payload integration interface.
 

Urwumpe

Not funny anymore
Addon Developer
Donator
Joined
Feb 6, 2008
Messages
37,588
Reaction score
2,312
Points
203
Location
Wolfsburg
Preferred Pronouns
Sire
I know that VESSEL3 is the current reference. Which rendering clients are you talking about, specifically? Was VESSEL3 made before Kulch's Energia was released (in 2009), because it works with D3D9.

But I need a better in-sim payload integration interface.

Well, the issue is, that surface painting in Panel2D or VC operations have their problems. No problem with add-ons that don't use them.

But you should remember that with the Payload Manager, you won't be able to use the rendering client in full-screen mode, the usual disclaimer there.

If you can find a way to do without, for example by making payload handling a Panel2D interface in your vessel or a supporting vessel (like the launch pad), you would be on the safe side for the future.
 

Pipcard

mikusingularity
Addon Developer
Donator
Joined
Nov 7, 2009
Messages
3,709
Reaction score
38
Points
88
Location
Negishima Space Center
Well, the issue is, that surface painting in Panel2D or VC operations have their problems. No problem with add-ons that don't use them.

But you should remember that with the Payload Manager, you won't be able to use the rendering client in full-screen mode, the usual disclaimer there.

If you can find a way to do without, for example by making payload handling a Panel2D interface in your vessel or a supporting vessel (like the launch pad), you would be on the safe side for the future.
I never use full screen for Orbiter, anyway. Themis-A and HCLV Hyperion use PayloadManager too, so I think it's worth it.
 

Urwumpe

Not funny anymore
Addon Developer
Donator
Joined
Feb 6, 2008
Messages
37,588
Reaction score
2,312
Points
203
Location
Wolfsburg
Preferred Pronouns
Sire
I never use full screen for Orbiter, anyway. Themis-A and HCLV Hyperion use PayloadManager too, so I think it's worth it.

As said - I also adore PayloadManager for its completeness, but generally, at least for me, the trend will go away from Windows GUI dialogs and towards user interfaces in Orbiter. Especially since those Dialog interface will likely also disappear from Windows itself in the future.
 

Pipcard

mikusingularity
Addon Developer
Donator
Joined
Nov 7, 2009
Messages
3,709
Reaction score
38
Points
88
Location
Negishima Space Center
I put the necessary lines in, but PM won't show up in the scenario editor.

OK. This is weird. I have made vessels with payload manager before. But now when I compile with no errors and run it. Payload manager doesn't show up in the scenario editor. Other vessels that I made loaded and work.
Any ideas?

---------- Post added 06-07-15 at 07:06 AM ---------- Previous post was 06-06-15 at 02:31 PM ----------

It seems with newer VS its nor working. I am using 2010 and 2013 full versions.
Is it true? Is there no way to get it to work with newer versions of Visual Studio? If so, dang it, I think I'll have to set it up all again in VS 2008 Express.

---------- Post added at 08:43 PM ---------- Previous post was at 12:16 AM ----------

But now, I get these errors when compiling (but only these):

Code:
1>------ Build started: Project: M-III_stage02, Configuration: Release Win32 ------
1>Compiling resources...
1>Microsoft (R) Windows (R) Resource Compiler Version 6.1.6723.1
1>Copyright (C) Microsoft Corporation.  All rights reserved.
1>Linking...
[B]1>LINK : error LNK2001: unresolved external symbol __DllMainCRTStartup@12
1>C:\Users\user\Desktop\Orbiter\orbiter_m\Modules\Plugin\M-III_stage02.dll : fatal error LNK1120: 1 unresolved externals[/B]
1>Build log was saved at "file://c:\Users\user\Desktop\Orbiter\orbiter_m\Orbitersdk\samples\M-III_stage02\Release\BuildLog.htm"
1>M-III_stage02 - 2 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
 
Last edited:
Top