Editing CVEL

Jump to navigation Jump to search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
[[Image:Cvelgpds.png|thumb|300px|CVEL and GPDS logos]]
 
 
[[Image:Dualexpress.jpg|thumb|right|250px|Building a payload hierarchy with CVEL/GPDS]]
 
[[Image:Dualexpress.jpg|thumb|right|250px|Building a payload hierarchy with CVEL/GPDS]]
'''CVE-lite''' (abridged Common Vessel Extensions) is a programming library to aid developers of add-on vessels for Orbiter. It extends the native Orbiter [[VESSEL]] class with additional functionality for multiple payloads, enhanced mesh handling or scenario-file based multistage support. It evolved from Dave Rowbotham's CVE library, cutting down on some of the internal complexity to allow for easier maintenance, and adding some new functionality.
+
CVE-lite (abridged Common Vessel Extensions) is a programming library to aid developers of add-on vessels for Orbiter. It extends the native Orbiter [[VESSEL class]] with additional functionality for multiple payloads, enhanced mesh handling or scenario-file based multistage support. It evolved from Dave Rowbotham's CVE library, cutting down on some of the internal complexity to allow for easier maintenance, and adding some new functionality.
  
 
CVEL implements the [[GPDS|Generic Payload Description System]] (GPDS) to allow the end user to express via simple lines in the scenario file any payload and, if using another CVEL vessel, any additional upper stages. Version-independent inter-vessel communication, as used by the library internally, is also extended to programmers by a companion library,  [[cvelmessage.dll]].
 
CVEL implements the [[GPDS|Generic Payload Description System]] (GPDS) to allow the end user to express via simple lines in the scenario file any payload and, if using another CVEL vessel, any additional upper stages. Version-independent inter-vessel communication, as used by the library internally, is also extended to programmers by a companion library,  [[cvelmessage.dll]].
Line 20: Line 19:
 
Since the release of CVEL v1.0, there have been a large number of vessels released that support the system including, of course, the original Ariane 5 updated to version 2.
 
Since the release of CVEL v1.0, there have been a large number of vessels released that support the system including, of course, the original Ariane 5 updated to version 2.
  
A beta library, including the Orbiter 2005 [[VESSEL2]] class updates was compiled and added to the downloads section of the [http://projectganymede.sourceforge.net/cve-lite/ CVEL website], and is considered by most to be stable for the current implementation of Orbiter.
+
A beta library, including the Orbiter 2005 [[VESSEL2 class]] updates was compiled and added to the downloads section of the [http://projectganymede.sourceforge.net/cve-lite/ CVEL website], and is considered by most to be stable for the current implementation of Orbiter.
 
 
==How to use GPDS2==
 
 
 
===The PAYLOAD tag===
 
Put simply GPDS allows users of CVE-lite compatible vessels to describe multiple payloads quickly and easily using the ''PAYLOAD'' tag in the scenario file.
 
 
 
<pre>PAYLOAD payloadname mesh class x y z mass xrot fuellevel</pre>
 
 
 
Here, "payloadname" is simply the alphanumeric name you wish the created payload to have.
 
 
 
"Mesh" is the name of the mesh file, including any paths off ~/Mesh that will represent the payload on the stack before it is separated, minus the ".msh"
 
 
 
"Class" is the payload's classname, such as "deltaglider" or "module1".
 
 
 
"x", "y" and "z" represent floating point offsets from the launching vessel's reference point (normally the centre of mass) that the mesh should be drawn. An example would be "0 0 4" for four metres along the centreline of the vessel.
 
 
 
"Mass" is the '''all-up-mass''' of the vessel that is to be created, '''INCLUDING''' fuel load. If you vary the loaded fuel (see later), you really ought to change this value here to be consistent.
 
 
 
"Xrot" is now sadly abandoned due to a limitation in Orbiter's current API, simply put a zero (0) here.
 
 
 
"Fuellevel" is the level (0->1) of fuel you wish the spawned payload to be equipped with. Not all vessels support the changing of their fuel state at creation, however. Most DLL-based craft won't unless they too are CVE-lite compatible, but most CFG-based vessels will quite happily.
 
 
 
===The STAGE tag===
 
''STAGE''s are broadly similar to ''PAYLOAD'' *except* they constitute additional stages to your vessel. That is to say, if you mount a payload above a stage (and before and ''ENDSTAGE'' -- see below) it will separate WITH that "stage" vehicle and you may continue to loft the payload(s) before jettionning it later. An example would be the Soyuz launch vessel may configure a Fregat as a ''STAGE'' with the MarsExpress as a ''PAYLOAD'' above it.
 
 
 
<pre>STAGE payloadname mesh class x y z mass xrot fuellevel</pre>
 
 
 
(definitions as for PAYLOAD)
 
 
 
===The ENDSTAGE tag===
 
 
 
Differing to '''GPDS1''' and '''GPDS2''' here, the ''ENDSTAGE'' tag allows the user to close-off a substage and continue stacking payloads or more stages onto the launch vessel directly. It takes no parameters.
 
 
 
An example would be an Ariane 5 launching two fregats, both containing MarsExpress orbiters as ''PAYLOAD''s.
 
 
 
 
 
<pre>ENDSTAGE</pre>
 
 
 
==Examples==
 
Some basic (and not so basic!) examples.
 
 
 
 
 
===One Module-1 aboard a Proton-K from Baikonur.===
 
<pre>
 
Proton1:protonk
 
  STATUS Landed Earth
 
  BASE Baikonur:5
 
  HEADING 90.00
 
  FUEL 1.000
 
  CONFIGURATION 0
 
  PAYLOAD UserModule module1 module1 0 0 30 15000 0 1
 
END</pre>
 
 
 
Here the module1 mesh is loaded on the launcher 30 metres above its centre of mass. It weighs 15000. When it is jettisoned it will be of class "module1", fully fuelled (the 1 on the end) and be called "UserModule"
 
 
 
===Two Module-2s===
 
 
 
<pre>
 
  PAYLOAD UserModule1 module2 module2 0 0 27 8000 0 1
 
  PAYLOAD UserModule2 module2 module2 0 0 31 8000 0 1
 
</pre>
 
 
 
===Two Module-2s, each with their own CVE-lite fregat===
 
 
 
 
 
<pre>  STAGE Fregat1 fregat cvelfregat 0 0 27 7000 0 1
 
    PAYLOAD UserModule1 module2 module2 0 0 31 8000 0 1
 
  ENDSTAGE
 
  STAGE Fregat2 fregat cvelfregat 0 0 35 7000 0 1
 
    PAYLOAD UserModule2 module2 module2 0 0 39 8000 0 1
 
  ENDSTAGE</pre>
 
 
 
 
 
 
 
===MarsExpress probe on a fregat and star48 upper stages===
 
 
 
<pre>
 
  STAGE Fregat1 fregat cvelfregat 0 0 27 7000 0 1
 
    STAGE Star1 star48 star48 0 0 30 5000 0 1
 
      PAYLOAD MarsExpress mars_express_stowed mars_express_deployed 0 0 33 600 0 1
 
    ENDSTAGE
 
  ENDSTAGE</pre>
 
 
 
 
 
 
 
== CVEL-compatible vessels ==
 
These are the vessels claimed to be compatible with CVEL.
 
=== Ariane 4 ===
 
[[Image:A4boost.png|thumb|right|Ariane 44LP blasting off from at Kourou]]
 
 
 
{{Addon|
 
1=[http://www.orbithangar.com/searchid.php?ID=674 Ariane 4 pack at orbithangar.com]|
 
2=David 'dh219' Henderson
 
}}
 
 
 
European [[Soyuz launchers|Soyuz-class]] booster. Now retired. See also from [[w:Ariane 4|Wikipedia]].
 
 
 
==== Recommended add-ons ====
 
[http://library.avsim.net/esearch.php?CatID=orbmisc&DLID=31333 Kourou Launch Centre]
 
 
 
=== Ariane 5 ===
 
 
 
[[Image:A5_logo1.jpg|thumb|right|Ariane 5 blasting off from the pad at Kourou]]
 
 
 
{{Addon|
 
1=[http://www.orbithangar.com/searchid.php?ID=583 Ariane 5 with ATV (CVEL) at orbithangar.com]|
 
2=David 'dh219' Henderson
 
}}
 
 
 
This [[add-on]] simulates three modern '''Ariane 5''' variants. The A5 G (Generic), the A5 ECA (enhanced with cryogenic second stage), and the hybrid A5 ATV (model that will be used to launch the European [[ATV]] ISS resupply craft). Using Thomas Ruth's beautiful free meshes and the [[CVEL|CVE-lite]] programming library, the Ariane 5 is the flagship of the [[CCCP Fleet|CCCP team's]] CVEL vessel fleet.
 
 
 
==== Background ====
 
Ariane 5 is a European heavy-lift launcher that operates out of [[Kourou]] in French Guiana. Capable of inserting up to 10 tonnes into a geostationary transfer orbit, or up to 21 tonnes into 51-degree LEO.
 
 
 
At liftoff, two solid rocket boosters (the EAPs) provide 90% of the thrust for 120 seconds before the central cryogenic stage (EPC), driven by a single French Vulcain or Vulcain-2 engine continues the ascent for approximately a further eight minutes.
 
 
 
The core lofts an upper stage fuelled either by a storable hypergolic propellant (the EPS) or another cryogenic fuel (the ESC). restartable a number of times for complicated orbital insertions, including depositing the [[ATV]] into low-Earth orbit, multiple payload GTO insertions and interplanetary ejections or an enhanced for increased GTO payloads.
 
 
 
==== The Simulation ====
 
The simulation follows the published Ariane 5 specifications as closely as possible and includes the normal CCCP-fleet features of thrust vectoring, smoke where appropriate and full user-configurable flexibility over payloads thanks to the [[GPDS]] system provided by CVEL.
 
 
 
Additional features include automatic engine throttling for max-Q, an optional automatic initial heading alignment program, non-restartable main stage and calculated centre of mass changes, including those produced by payloads.
 
 
 
==== The ATV ====
 
[[Image:Atv6.jpg|thumb|200px|right|ATV docked to ISS over Europe]]
 
As a bonus several other payload packages are included in the main download, these include Orbiterfan's [[Mars Express]], the Russian [[Fregat]] restartable upper stage, C3PO's orbital fuel tank, but probably most significantly, C3PO's [[ATV]].
 
 
 
The [[ATV]] is Europe's most visible contribution to the [[ISS]]. A 20-tonne Automated Transfer Vehicle intended to rendezvous and dock with the ISS to bring supplies, deorbit waste, provide reboost control and extend the living volume of the station by several cubic metres.
 
 
 
Despite following ESA and Arianespace's released information as closely as possible, many users have found it impossible to orbit the fully-loaded ATV with the default Ariane 5 ATV configuration in the pack, reducing the EPS's fuel load to 30% (PRPLEVEL 2:0.3) on launch seems to provide a more optimal setup.
 
 
 
The ATV has a fair amount of dV available to it, but its acceleration is pitiful. Plan ahead!
 
 
 
==== Recommended add-ons ====
 
[http://library.avsim.net/esearch.php?CatID=orbmisc&DLID=31333 Kourou Launch Centre]
 
 
 
=== Dragonfly-lite ===
 
[[Image:Dflite4.jpg|thumb|right|Dragonfly Lite atop a fairingless Ariane 5]]
 
 
 
{{Addon|
 
1=[http://sourceforge.net/project/showfiles.php?group_id=58685&package_id=124522 Dragonfly-Lite at [[CCCP Fleet]]]|
 
2=Martin Schweiger modified by David 'dh219' Henderson
 
}}
 
 
 
The default [[Dragonfly]] is a great craft for manipulating space station elements in a futuristic building environment. It has only one problem: it's too large to launch!
 
 
 
The '''DragonflyLite''' is an attempt to rectify that problem by scaling the Dragonfly down to a more realistic size for a short-term habitable component of a space station, rather than a medium-term habitable vessel which it appears to have been.
 
 
 
The advantage of this is that the craft can fit under the fairing of an Ariane 5 or in the hold of the Shuttle.
 
 
 
[[Image:Dflite1.jpg|thumb|Dragonfly Lite meets its bigger brother]]
 
 
 
=== Fregat ===
 
{{main|Fregat}}
 
[http://sourceforge.net/project/showfiles.php?group_id=58685&package_id=124522 Fregat] at the [[CCCP Fleet|CCCP Fleet page]].
 
 
 
Whilst '''Fregat''' is normally included in other packages ([[Soyuz Launchers]], [[Ariane 5]] etc.), it can also be downloaded as a separate package.
 
 
 
=== Probe ===
 
[[Image:Probe1.jpg|thumb|right|Probe (a Luna E3) in an unglamorous LEO]]
 
 
 
{{Addon|
 
1=[http://sourceforge.net/project/showfiles.php?group_id=58685&package_id=124522 Luna E3 'Probe' (CVEL) at CCCP Fleet]|
 
2=Dave Rowbotham and Jógvan 'C3PO' Trondesen
 
}}
 
 
 
==== History ====
 
 
 
''Dealer McDope'' created a series of Soviet-era meshes between 2002 and 2004 included in these was a basic, green, Luna E3 mesh. The Luna E3 was the first probe to photograph the far side of The Moon, launched atop an R7 booster.
 
 
 
When the [[CCCP Fleet|CCCP Team]], coordinating on [[IRC|OrbiterIRC]], set about writing C++ code for McDope's meshes the generic test object of choice became the Luna E3. Sticking to the naming convention McDope adopted of simply calling it ''Probe'', an in-joke cropped up by which whenever a developer conducted a flight test, cries of ''Hail Probe!'' would abound.
 
 
 
This in-joke gained popularity when a post to the old M6 off-topic forums introduced the concept of ''Hailing Probe'' to a wider audience with a thread titled ''The Cult of the Probe''. So ensued the second longest-running thread in the old Forum's history. Without a single flame.
 
 
 
The Probe has been hailed a great number of times afterwards; one notable example is during the Winter holidays in the end of 2008 (http://orbiter-forum.com/showthread.php?t=5947).
 
 
 
Such was the following of the thread that it spanned two years and even spawned '''Probe Day''' (4th October -- the date of both Luna E3's launch, and two years earlier, that of Sputnik 1, the first artificial satellite).
 
 
 
Unfortunately, with the migration of the Orbiter forums to a new system in February 2006, the thread was not ported.
 
 
 
Regardless, it is the obligation of orbitnauts across the world to hail the omniscient, omnipotent, and omnipresent probe.  Hail probe!
 
 
 
===New Information as of 04/02/2007===
 
A long time Orbiter fan and forum lurker has archived the thread in a .mht file and now needs to figure out how to restart the thread.
 
 
 
===== New Information as of 01/25/2014 =====
 
An acolyte of the Almighty Probe has discovered the possible birth of the Probox movement, along with several lost details, in an archived page of the original M6 forums.
 
 
 
The link is here[http://web.archive.org/web/20051215093132/orbit.m6.net/v2/read.asp?id=15806]
 
 
 
==== Links ====
 
[[Image:Probeday9.jpg|thumb|right|Probe (a Luna E3) on a fanciful Saturn flyby]]
 
*[http://sourceforge.net/project/showfiles.php?group_id=58685&package_id=124522 Luna E3] at [[CCCP Fleet]]
 
*[http://orbit.m6.net/v2/read.asp?id=15806 Archived M6 Cult of The Probe thread]
 
*[http://orbiter-forum.com/showthread.php?t=5947 End 2008 Winter Holiday thread on Orbiter-forum]
 
[[File:Hailprobev2.gif|thumb|left|the hailprobe smiley from Orbiter forum]]
 
 
 
=== Progress ===
 
 
 
[[Image:Progress4.jpg|thumb|right|Progress dances with TMA]]
 
 
 
{{Addon|
 
1=[http://www.orbithangar.com/searchid.cfm?id=751 Progress at orbithangar.com]|
 
2=David 'dh219' Henderson
 
}}
 
 
 
With a [[mesh]] from Jógvan 'C3PO' Trondesen and Jason 'Agent36' Benson, this realistic '''Progress''' cargo ferry is best launched by the [[Soyuz Launchers]] and a perfect companion to the Soyuz TMA and [[ATV]].
 
 
 
=== Proton-K ===
 
 
 
[[Image:Protonk.jpg|right|thumb|Proton K lifts off from Baikonur]]
 
[[Image:Protonprofile.png|right|thumb|Proton launch profile]]
 
 
 
{{Addon|
 
1=[http://sourceforge.net/project/showfiles.php?group_id=58685&package_id=124522 Proton K at CCCP Fleet]|
 
2=David Henderson, Alex vH, Dennis Krenz
 
}}
 
 
 
The '''Proton K''' is the three-stage version of the ''Proton'' launch vehicle used for lofting 20-tonne payloads to 51-degree LEO. Salyut, Mir and the ISS service module have all been lofted via Proton K.
 
 
 
CVEL-based [[GPDS]] support enables the addition of a fourth stage (such as the included [[Fregat]]) for heavy [[GTO]] missions or indeed moonshots as a four-stage version was used for the Soviet circumlunar man-capable flights.
 
 
 
==== Recommended add-ons ====
 
* [[CVEL Briz-M]]
 
 
 
=== Saturn V ===
 
{{Addon|
 
1=[http://sourceforge.net/project/showfiles.php?group_id=58685&package_id=124522 Saturn V variants at [[CCCP Fleet]]]|
 
2=Dave Rowbotham
 
}}
 
 
 
Using Thomas Ruth's excellent free Saturn V meshes, this CVE-lite compatible series of Saturn V variants allows the user to explore some of the suggested options for the Saturn fleet before it was abandoned for the Shuttle.
 
 
 
Unfortunately, there iss no Lunar Module available in this package, but with payloads fully configurable with [[GPDS]], users are able to launch whatever they like behind the CSM.
 
 
 
=== Soyuz Launchers ===
 
[[Image:Building station.jpg|thumb|right|Soyuz TMA and Progress in flight]]
 
{{Addon|
 
1=[http://www.orbithangar.com/searchid.cfm?ID=682 Soyuz Launchers (CVEL) at orbithangar.com]|
 
2=David 'dh219' Henderson
 
}}
 
 
 
This [[add-on]] includes two versions of the workhorse of the Russian spaceflight history: The '''Soyuz-FG''' and the '''Soyuz-U'''. Both launchers are built around the CVE-lite framework, allowing them to accept complex payload definitions.
 
 
 
==== CVEL Semyorka ====
 
 
 
[[Image:Soyuz wip4.jpg|left]] The CVEL Soyuz is about to get upgraded soon, turning the addon from the pure Soyuz-FG version to the complete family of Semyorka based launchers.
 
 
 
<gallery>
 
Image:Soyuz wip5.jpg|Rendering from below
 
Image:Soyuz blocke wip.jpg|Early rendering of the Blok E
 
Image:Soyuz wip6e.jpg|The new engine section
 
Image:Soyuz wip7.jpg|[[Anim8or]] rendering from above
 
</gallery>
 
 
 
==== The original launcher ====
 
The Soyuz launcher is a 280 ton, two-and-a-half-stage rocket, able to carry about 7 metric tons to LEO. The Soyuz-U is the launcher for both [[Progress]] transports and [[Soyuz TMA]] space station ferries. It currently launches from [[Baikonur]] and [[Pletesk]]. A Soyuz launch pad is being constructed on [[Kourou]] currently to allow a higher GTO performance and European manned missions.
 
 
 
The Soyuz launcher is a good example of a proven and evolved launch system. The boosters and the first stage had already been used for launching [[Sputnik]], the world's first satellite in 1957. Until today the launcher only saw tiny modifications.
 
 
 
===== Technology =====
 
The Soyuz is quite different from other launchers, a fact which comes from its long history. The first stage engine system shares many similarities to the A4 rocket, as it uses hydrogen peroxide for driving the turbopumps. The launcher hangs free over its launch pad, held by four arms right above the boosters. As it was not known in 1963 how to ignite a stage during ballistic flight, the second stage gets ignited [[hot staging|hot]] (while it is still attached to the first stage).
 
 
 
The launcher does not have a roll program, it gets rotated together with its launch pad to the correct [[launch azimuth]].
 
 
 
 
 
 
 
===== Glossary =====
 
*Blok A - the first stage of the launcher (The stages of Russian launchers get their names from the Cyrillic alphabet)
 
*Blok B - One of the booster stages
 
*Blok W - One of the booster stages
 
*Blok G - One of the booster stages
 
*Blok D - One of the booster stages
 
*Blok I - the second stage of the launcher
 
*Skirt 3 - The protective cover around the second stage engines, gets jettisoned after ignition.
 
 
 
==== How to fly ====
 
The '''Soyuz launchers''' do not come with an [[autopilot]]. For launching, just apply full thrust and fly it into [[orbit]]. Its recommended to use [[Surface MFD]] and [[Align Plane MFD]] until second stage operation. Replace Align Plane MFD with [[Orbit MFD]] for final orbit insertion. Aim for a 220 x 250 km orbit.
 
 
 
 
 
==== Recommended add-ons ====
 
* [http://library.avsim.net/esearch.php?CatID=orbmisc&DLID=30216 Baikonur Launch Complex]
 
* [http://prdownloads.sourceforge.net/projectganymede/SoyuzTMA0_6.zip?download Soyuz TMA 0.6]
 
* [http://prdownloads.sourceforge.net/projectganymede/Progress0_2.zip?download Progress 0.2]
 
 
 
=== Soyuz TMA ===
 
[[Image:Tmadg2.jpg|thumb|250px|right|Soyuz TMA docks to a DG4]]
 
 
 
{{Addon|
 
1=[http://www.orbithangar.com/searchid.php?ID=765 Soyuz TMA at orbithangar.com]|
 
2=David 'dh219' Henderson
 
}}
 
 
 
Using meshes from Jason 'Agent36' Benson and Jógvan 'C3PO' Trondesen, the '''Soyuz TMA''' has a realistic configuration, a particle-stream RCS system, animated panels and antennae and a ballistic reentry autopilot.
 
 
 
Launch on the [[Soyuz Launchers]] and perfect for use with the [[Progress]] and [[ATV]].
 
  
 
==See also==
 
==See also==
 +
[[:Category:CVELVessels|incomplete list of CVEL-compatible vessels]]
  
 
[http://projectganymede.sourceforge.net/cve-lite/tutorials.html CVEL programming tutorial]
 
[http://projectganymede.sourceforge.net/cve-lite/tutorials.html CVEL programming tutorial]
Line 333: Line 37:
 
[http://www.orbithangar.com/advsearch.cfm?search=name&text=CVE&S=Search CVE Search at Orbithangar]
 
[http://www.orbithangar.com/advsearch.cfm?search=name&text=CVE&S=Search CVE Search at Orbithangar]
  
{{HasPrecis}}
 
 
[[Category: Articles]]
 
 
[[Category:Libraries]]
 
[[Category:Libraries]]

Please note that all contributions to OrbiterWiki are considered to be released under the GNU Free Documentation License 1.2 (see OrbiterWiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following hCaptcha:

Cancel Editing help (opens in new window)