Well we need a launch and landing scn.
The satellites can be made for as stated before requires a lot of navuagation
The satellites can be made for as stated before requires a lot of navuagation
BEGIN_DESC
Yutu 2
END_DESC
BEGIN_ENVIRONMENT
System Sol
Date MJD 58489.7286727116
Help CurrentState_img
END_ENVIRONMENT
BEGIN_FOCUS
Ship CHANGE4WHEELS
END_FOCUS
BEGIN_CAMERA
TARGET CHANGE4WHEELS
MODE Extern
POS 3.869257 149.047557 -9.024085
TRACKMODE TargetRelative
FOV 58.27
END_CAMERA
BEGIN_HUD
TYPE Surface
END_HUD
BEGIN_SHIPS
ISS:ProjectAlpha_ISS
STATUS Orbiting Earth
RPOS -3907959.291 -5025223.859 2196319.383
RVEL -6095.9511 4687.9888 -121.4701
AROT 82.729 26.522 6.242
VROT 0.0938 -0.0522 0.0073
AFCMODE 7
IDS 0:588 100 1:586 100 2:584 100 3:582 100 4:580 100
NAVFREQ 0 0
XPDR 466
END
CHANGE4:CHANGE4BODY1
ARM0 0.5000
ARM1 0.5000
ARM2 0.5000
CAMY 0.5000
CAMZ 0.5000
CAMMAST 1.0000
CAM1 0.5000
PANEL 0 0.0000
ANT1 0 0.0000
STATUS Landed Moon
POS -80.6758980 28.5227620
HEADING 0.0
ALT 1.997
AROT 46.121 -60.996 17.073
ATTACHED 0:1,CHANGE4WHEELS
AFCMODE 7
NAVFREQ 0 0
END
CHANGE4WHEELS:GV_CHANGE4WHEELSnew
STATUS Landed Moon
POS 177.6053431 -45.4711951
HEADING 0.00
ALT 0.869
AROT -1.334 -3.722 -135.351
AFCMODE 7
NAVFREQ 0 0
END
END_SHIPS
const double totalweight = MASS + FUELMASS ;
const double xtx_target = -0.1;
const double xtst = (-1)*(totalweight*9.80655) / (3 * xtx_target);
const double xtda = 0.9*(2 * sqrt(totalweight*xtst));
static const DWORD ntdvtx_geardown = 4;
static TOUCHDOWNVTX tdvtx_geardown[ntdvtx_geardown] = {
{ _V(-4, -3.28, -4), xtst, xtda, 30.0, 30 },
{ _V(4, -3.28, -4), xtst, xtda, 30.0, 30 },
{ _V(4, -3.28, 4), xtst, xtda, 30.0, 30 },
{ _V(-4, -3.28, 4), xtst, xtda, 30.0 }
};
th_hover[0] = CreateThruster(_V(0, 0, 0), _V(0, 1, 0), 10000, ph_main, RCS_ISP);
AddExhaust(th_hover[0], 1, 0.3, _V(0, -2.8, 0), _V(0, -1, 0));
thg_hover = CreateThrusterGroup(th_hover, 1, THGROUP_HOVER);
if (GetAttachmentStatus(Queqiaobottom)){
SetMeshVisibilityMode(DISHOPEN, MESHVIS_ALWAYS);
SetMeshVisibilityMode(DISHCLOSED, MESHVIS_NEVER);
}
const double pesototal = MASS +FUELMASS;
const double xtx_target = -0.1;
const double xtst = (-1)*(pesototal*9.80655) / (3 * xtx_target);
const double xtda = 0.9*(2 * sqrt(pesototal*xtst));
static const DWORD ntdvtx_geardown = 4;
static TOUCHDOWNVTX tdvtx_geardown[ntdvtx_geardown] = {
{ _V(-4, -3.2806, -4), xtst, xtda, 0.0, 0 },
{ _V(4, -3.2806, -4), xtst, xtda, 0.0, 0 },
{ _V(4, -3.2806, 4), xtst, xtda, 0.0, 0 },
{ _V(-4, -3.2806, 4), xtst, xtda, 0.0 }
};
{
// physical specs
SetSize (1.5);
SetEmptyMass(MASS);
SetCW (0.3, 0.3, 0.6, 0.9);
SetWingAspect (0.1);
SetWingEffectiveness (0.1);
SetCrossSections (_V(6.05,15.26,6.17));
SetRotDrag (_V(0.1,0.1,0.1));
if (GetFlightModel() >= 1) {
SetPitchMomentScale (1e-4);
SetBankMomentScale (1e-4);
}
SetPMI (_V(4.08,1.31,4.18));
SetTrimScale (0.05);
SetCameraOffset (_V(0,2,.731));
double ro = Passo;
//SetTouchdownPoints(tdvtx, ntdvtx);
//SetTouchdownPoints(_V(0, .001, 1), _V(-1.6, .001, -1), _V(1.6, .001, -1));;
SetTouchdownPoints(tdvtx_geardown, ntdvtx_geardown);
SetSurfaceFrictionCoeff(20, 30);
void CHANGE4LANDER::clbkSetClassCaps(FILEHANDLE cfg)
{
// physical specs
SetSize (1.5);
SetEmptyMass(MASS);
SetCrossSections (_V(6.05,15.26,6.17));
SetRotDrag (_V(0.1,0.1,0.1));
//if (GetFlightModel() >= 1) {
// SetPitchMomentScale (1e-4);
// SetBankMomentScale (1e-4);
//}
SetPMI (_V(4.08,1.31,4.18));
SetTrimScale (0.05);
SetCameraOffset (_V(0,2,.731));
double ro = Passo;
//SetTouchdownPoints(tdvtx, ntdvtx);
//SetTouchdownPoints(_V(0, .001, 1), _V(-1.6, .001, -1), _V(1.6, .001, -1));;
SetTouchdownPoints(tdvtx_geardown, ntdvtx_geardown);
SetSurfaceFrictionCoeff(50, 40);
EnableTransponder (true);
mesh_MSL = AddMesh(oapiLoadMeshGlobal("change4lander3"));
SetMeshVisibilityMode(mesh_MSL, MESHVIS_ALWAYS); //Main ship mesh
//LR2 = CreateAttachment(false, _V(0, -1.06, -.371), _V(0, 1, 0), _V(0, 0, -1), "ROVER", false);
LR2 = CreateAttachment(false, _V(0, -2.130815, -.671), _V(0, 1, 0), _V(0, 0, 1), "ROVER", false);
//0, -2.130815, -1.388644
ph_main = CreatePropellantResource(FUELMASS);
th_hover[0] = CreateThruster(_V(5, 0, 5), _V(0, 1, 0), 10000/4, ph_main, RCS_ISP);
th_hover[1] = CreateThruster(_V(-5, 0, 5), _V(0, 1, 0), 10000/4, ph_main, RCS_ISP);
th_hover[2] = CreateThruster(_V(5, 0, -5), _V(0, 1, 0), 10000/4, ph_main, RCS_ISP);
th_hover[3] = CreateThruster(_V(-5, 0, -5), _V(0, 1, 0), 10000/4, ph_main, RCS_ISP);
AddExhaust(th_hover[0], 1, 0.3, _V(0, -2.8, 0), _V(0, -1, 0));
thg_hover = CreateThrusterGroup(th_hover,4, THGROUP_HOVER);
Some images of the launch of the satellites
The lander is what I am still having issues with. Sure it can be static on the lunar surface. But I am trying to get the thruster/flight right so if someone wanted to try to land her.
I have done all that I know. Ran the mesh and got the cross reference and pmi. I spread the hover thrust out.
But as soon as I apply hover thrust I start to rotate
Code:void CHANGE4LANDER::clbkSetClassCaps(FILEHANDLE cfg) { // physical specs SetSize (1.5); SetEmptyMass(MASS); SetCrossSections (_V(6.05,15.26,6.17)); SetRotDrag (_V(0.1,0.1,0.1)); //if (GetFlightModel() >= 1) { // SetPitchMomentScale (1e-4); // SetBankMomentScale (1e-4); //} SetPMI (_V(4.08,1.31,4.18)); SetTrimScale (0.05); SetCameraOffset (_V(0,2,.731)); double ro = Passo; //SetTouchdownPoints(tdvtx, ntdvtx); //SetTouchdownPoints(_V(0, .001, 1), _V(-1.6, .001, -1), _V(1.6, .001, -1));; SetTouchdownPoints(tdvtx_geardown, ntdvtx_geardown); SetSurfaceFrictionCoeff(50, 40); EnableTransponder (true); mesh_MSL = AddMesh(oapiLoadMeshGlobal("change4lander3")); SetMeshVisibilityMode(mesh_MSL, MESHVIS_ALWAYS); //Main ship mesh //LR2 = CreateAttachment(false, _V(0, -1.06, -.371), _V(0, 1, 0), _V(0, 0, -1), "ROVER", false); LR2 = CreateAttachment(false, _V(0, -2.130815, -.671), _V(0, 1, 0), _V(0, 0, 1), "ROVER", false); //0, -2.130815, -1.388644 ph_main = CreatePropellantResource(FUELMASS); th_hover[0] = CreateThruster(_V(5, 0, 5), _V(0, 1, 0), 10000/4, ph_main, RCS_ISP); th_hover[1] = CreateThruster(_V(-5, 0, 5), _V(0, 1, 0), 10000/4, ph_main, RCS_ISP); th_hover[2] = CreateThruster(_V(5, 0, -5), _V(0, 1, 0), 10000/4, ph_main, RCS_ISP); th_hover[3] = CreateThruster(_V(-5, 0, -5), _V(0, 1, 0), 10000/4, ph_main, RCS_ISP); AddExhaust(th_hover[0], 1, 0.3, _V(0, -2.8, 0), _V(0, -1, 0)); thg_hover = CreateThrusterGroup(th_hover,4, THGROUP_HOVER);
void CHANGE4LANDER::clbkSetClassCaps(FILEHANDLE cfg)
{
// physical specs
SetSize (1.5);
SetEmptyMass(MASS);
SetCrossSections (_V(6.05,15.26,6.17));
SetRotDrag (_V(0.1,0.1,0.1));
//if (GetFlightModel() >= 1) {
// SetPitchMomentScale (1e-4);
// SetBankMomentScale (1e-4);
//}
SetPMI (_V(4.08,1.31,4.18));
//SetTrimScale (0.05);
SetCameraOffset (_V(0,2,.731));
double ro = Passo;
//SetTouchdownPoints(tdvtx, ntdvtx);
//SetTouchdownPoints(_V(0, .001, 1), _V(-1.6, .001, -1), _V(1.6, .001, -1));;
SetTouchdownPoints(tdvtx_geardown, ntdvtx_geardown);
SetSurfaceFrictionCoeff(50, 40);
EnableTransponder (true);
mesh_MSL = AddMesh(oapiLoadMeshGlobal("change4lander3"));
SetMeshVisibilityMode(mesh_MSL, MESHVIS_ALWAYS); //Main ship mesh
//LR2 = CreateAttachment(false, _V(0, -1.06, -.371), _V(0, 1, 0), _V(0, 0, -1), "ROVER", false);
LR2 = CreateAttachment(false, _V(0, -2.130815, -.671), _V(0, 1, 0), _V(0, 0, 1), "ROVER", false);
//0, -2.130815, -1.388644
ph_main = CreatePropellantResource(FUELMASS);
th_hover[0] = CreateThruster(_V(0, 0, 0), _V(0, 1, 0), 10000, ph_main, RCS_ISP);
//th_hover[1] = CreateThruster(_V(-5, 0, 5), _V(0, 1, 0), 10000/4, ph_main, RCS_ISP);
//th_hover[2] = CreateThruster(_V(5, 0, -5), _V(0, 1, 0), 10000/4, ph_main, RCS_ISP);
//th_hover[3] = CreateThruster(_V(-5, 0, -5), _V(0, 1, 0), 10000/4, ph_main, RCS_ISP);
AddExhaust(th_hover[0], 1, 0.3, _V(0, -2.8, 0), _V(0, -1, 0));
thg_hover = CreateThrusterGroup(th_hover,1, THGROUP_HOVER);
Not sure if the issue is the hover thruster at 0,0,0 is not at the center of the mesh?