mirror of
https://gitlab.com/lander-team/lander-cpp.git
synced 2025-07-23 22:51:26 +00:00
initial commit
This commit is contained in:
70
include/sVars.h
Normal file
70
include/sVars.h
Normal file
@@ -0,0 +1,70 @@
|
||||
#include <array>
|
||||
|
||||
#ifndef SVARS_H
|
||||
#define SVARS_H
|
||||
|
||||
struct sVars
|
||||
{
|
||||
double x, y, z;
|
||||
double xPrev, yPrev, zPrev;
|
||||
double vx, vy, vz;
|
||||
double vxPrev, vyPrev, vzPrev;
|
||||
double vxBody, vyBody, vzBody;
|
||||
double ax, ay, az, axPrev, ayPrev, azPrev;
|
||||
|
||||
double yaw, pitch, roll;
|
||||
double phidot, thetadot, psidot;
|
||||
double yawPrev, pitchPrev, rollPrev;
|
||||
double yawdot, pitchdot, rolldot;
|
||||
double yawdotPrev, pitchdotPrev, rolldotPrev;
|
||||
double yawddot, pitchddot, rollddot;
|
||||
double yawddotPrev, pitchddotPrev, rollddotPrev;
|
||||
|
||||
double m, m0, mp, mb, mdot;
|
||||
double vehicleHeight, vehicleRadius;
|
||||
|
||||
double tb;
|
||||
double vb;
|
||||
double thrust, thrust_prev, burnElapsed, burnStart;
|
||||
double LQRx, LQRy, Fx, Fy, Fz;
|
||||
double momentX, momentY, momentZ;
|
||||
|
||||
double I11, I22, I33;
|
||||
double I11prev, I22prev, I33prev;
|
||||
double I11dot, I22dot, I33dot;
|
||||
|
||||
int maxServo;
|
||||
double xServoDegs, yServoDegs;
|
||||
|
||||
double simTime;
|
||||
int stepSize;
|
||||
|
||||
std::array<std::array<double, 2>, 26> thrustCurve = { { {0.148, 7.638},
|
||||
{0.228, 12.253},
|
||||
{0.294, 16.391},
|
||||
{0.353, 20.210},
|
||||
{0.382, 22.756},
|
||||
{0.419, 25.260},
|
||||
{0.477, 23.074},
|
||||
{0.520, 20.845},
|
||||
{0.593, 19.093},
|
||||
{0.688, 17.500},
|
||||
{0.855, 16.225},
|
||||
{1.037, 15.427},
|
||||
{1.205, 14.948},
|
||||
{1.423, 14.627},
|
||||
{1.452, 15.741},
|
||||
{1.503, 14.785},
|
||||
{1.736, 14.623},
|
||||
{1.955, 14.303},
|
||||
{2.210, 14.141},
|
||||
{2.494, 13.819},
|
||||
{2.763, 13.338},
|
||||
{3.120, 13.334},
|
||||
{3.382, 13.013},
|
||||
{3.404, 9.352},
|
||||
{3.418, 4.895},
|
||||
{3.450, 0.000}} };
|
||||
};
|
||||
|
||||
#endif
|
10
include/sim.h
Normal file
10
include/sim.h
Normal file
@@ -0,0 +1,10 @@
|
||||
#include "sVars.h"
|
||||
|
||||
void burnStartTimeCalc(struct sVars&, double g);
|
||||
void thrustSelection(struct sVars&, int t);
|
||||
void lqrCalc(struct sVars&);
|
||||
void TVC(struct sVars&, double g);
|
||||
void vehicleDynamics(struct sVars&, int t);
|
||||
void write2CSV(struct sVars&, std::fstream& outfile, int t);
|
||||
double derivative(double x2, double x1, double dt);
|
||||
double integral(double x2, double x1, double dt);
|
Reference in New Issue
Block a user