16
0
mirror of https://github.com/MaSzyna-EU07/maszyna.git synced 2026-07-19 06:29:18 +02:00

Inicjacja wszystkich zapomnianych zmiennych w hamulcach

This commit is contained in:
firleju
2016-12-10 21:59:52 +01:00
parent 0659256619
commit df2365f353
6 changed files with 90 additions and 37 deletions

View File

@@ -324,22 +324,24 @@ void TNESt3::EStParams(double i_crc) // parametry charakterystyczne dla ESt
void TNESt3::Init(double PP, double HPP, double LPP, double BP, int BDF)
{
ValveRes->CreatePress(1 * PP);
BrakeCyl->CreatePress(1 * BP);
BrakeRes->CreatePress(1 * PP);
ValveRes->CreatePress(PP);
BrakeCyl->CreatePress(BP);
BrakeRes->CreatePress(PP);
CntrlRes = new TReservoir();
CntrlRes->CreateCap(15);
CntrlRes->CreatePress(1 * HPP);
BrakeStatus = int(BP > 1) * 1;
CntrlRes->CreatePress(HPP);
BrakeStatus = int(BP > 1);
Miedzypoj = new TReservoir();
Miedzypoj->CreateCap(5);
Miedzypoj->CreatePress(PP);
BVM = 1 * 1.0 / (HPP - 0.05 - LPP) * MaxBP;
BVM = 1 / (HPP - 0.05 - LPP) * MaxBP;
BrakeDelayFlag = BDF;
RapidStatus = false;
LoadC, LoadM, TareBP, TareM, Podskok, LBP = 0.0;
Zamykajacy = false;
Zamykajacy, Przys_blok = false;
if (!(typeid(FM) == typeid(TDisk1) || typeid(FM) == typeid(TDisk2))) // jesli zeliwo to schodz
RapidStaly = false;
@@ -491,10 +493,10 @@ void TNESt3::SetLBP(double P)
void TNESt3::SetSize(int size, std::string params) // ustawianie dysz (rozmiaru ZR)
{
static double /*?*/ const dNO1l = 1.250;
static double /*?*/ const dNT1l = 0.510;
static double /*?*/ const dOO1l = 0.907;
static double /*?*/ const dOT1l = 0.524;
static double const dNO1l = 1.250;
static double const dNT1l = 0.510;
static double const dOO1l = 0.907;
static double const dOT1l = 0.524;
int i;

View File

@@ -46,26 +46,26 @@ Co brakuje:
- PZZ dla dodatkowego
*/
static int /*?*/ const dMAX = 11; // dysze
static int /*?*/ const dON = 0; // osobowy napelnianie (+ZP)
static int /*?*/ const dOO = 1; // osobowy oproznianie
static int /*?*/ const dTN = 2; // towarowy napelnianie (+ZP)
static int /*?*/ const dTO = 3; // towarowy oproznianie
static int /*?*/ const dP = 4; // zbiornik pomocniczy
static int /*?*/ const dSd = 5; // zbiornik sterujacy
static int /*?*/ const dSm = 6; // zbiornik sterujacy
static int /*?*/ const dPd = 7; // duzy przelot zamykajcego
static int /*?*/ const dPm = 8; // maly przelot zamykajacego
static int /*?*/ const dPO = 9; // zasilanie pomocniczego O
static int /*?*/ const dPT = 10; // zasilanie pomocniczego T
static int const dMAX = 11; // dysze
static int const dON = 0; // osobowy napelnianie (+ZP)
static int const dOO = 1; // osobowy oproznianie
static int const dTN = 2; // towarowy napelnianie (+ZP)
static int const dTO = 3; // towarowy oproznianie
static int const dP = 4; // zbiornik pomocniczy
static int const dSd = 5; // zbiornik sterujacy
static int const dSm = 6; // zbiornik sterujacy
static int const dPd = 7; // duzy przelot zamykajcego
static int const dPm = 8; // maly przelot zamykajacego
static int const dPO = 9; // zasilanie pomocniczego O
static int const dPT = 10; // zasilanie pomocniczego T
// przekladniki
static int /*?*/ const p_none = 0;
static int /*?*/ const p_rapid = 1;
static int/*?*/ const p_pp = 2;
static int /*?*/ const p_al2 = 3;
static int /*?*/ const p_ppz = 4;
static int /*?*/ const P_ed = 5;
static int const p_none = 0;
static int const p_rapid = 1;
static int const p_pp = 2;
static int const p_al2 = 3;
static int const p_ppz = 4;
static int const P_ed = 5;
class TPrzekladnik : public TReservoir // przekladnik (powtarzacz)
@@ -101,6 +101,10 @@ class TPrzeciwposlizg : public TRura // przy napelnianiu - rura, przy poslizgu -
public:
void SetPoslizg(bool flag);
void Update(double dt) /*override*/;
inline TPrzeciwposlizg()
{
Poslizg = false;
}
};
class TRapid : public TPrzekladnik // przekladnik dwustopniowy
@@ -117,6 +121,11 @@ class TRapid : public TPrzekladnik // przekladnik dwustopniowy
void SetRapidParams(double mult, double size);
void SetRapidStatus(bool rs);
void Update(double dt) /*override*/;
inline TRapid()
{
RapidStatus = false;
RapidMult, DN, DL = 0.0;
}
};
class TPrzekCiagly : public TPrzekladnik // AL2
@@ -128,6 +137,10 @@ class TPrzekCiagly : public TPrzekladnik // AL2
public:
void SetMult(double m);
void Update(double dt) /*override*/;
inline TPrzekCiagly()
{
mult = 0.0;
}
};
class TPrzek_PZZ : public TPrzekladnik // podwojny zawor zwrotny
@@ -139,6 +152,10 @@ class TPrzek_PZZ : public TPrzekladnik // podwojny zawor zwrotny
public:
void SetLBP(double P);
void Update(double dt) /*override*/;
inline TPrzek_PZZ()
{
LBP = 0.0;
}
};
class TPrzekZalamany : public TPrzekladnik // Knicksventil
@@ -157,6 +174,10 @@ class TPrzekED : public TRura // przy napelnianiu - rura, przy hamowaniu - upust
public:
void SetP(double P);
void Update(double dt) /*override*/;
inline TPrzekED()
{
MaxP = 0.0;
}
};
class TNESt3 : public TBrake

View File

@@ -162,6 +162,7 @@ TReservoir::TReservoir()
// inherited:: Create;
Cap = 1;
Vol = 0;
dVol = 0;
}
void TReservoir::Act()
@@ -256,10 +257,16 @@ TBrake::TBrake(double i_mbp, double i_bcr, double i_bcd, double i_brc, int i_bcn
// inherited:: Create;
MaxBP = i_mbp;
BCN = i_bcn;
BCM = 1;
BCA = i_bcn * i_bcr * i_bcr * pi;
BA = i_ba;
NBpA = i_nbpa;
BrakeDelays = i_BD;
BrakeDelayFlag = bdelay_P;
DCV = false;
ASBP = 0.0;
BrakeStatus = b_hld;
SoundFlag = 0;
// 210.88
// SizeBR:=i_bcn*i_bcr*i_bcr*i_bcd*40.17*MaxBP/(5-MaxBP); //objetosc ZP w stosunku do cylindra
// 14" i cisnienia 4.2 atm
@@ -308,6 +315,7 @@ TBrake::TBrake(double i_mbp, double i_bcr, double i_bcd, double i_brc, int i_bcn
// inicjalizacja hamulca (stan poczatkowy)
void TBrake::Init(double PP, double HPP, double LPP, double BP, int BDF)
{
BrakeDelayFlag = BDF;
}
// pobranie wspolczynnika tarcia materialu
@@ -1397,7 +1405,7 @@ double TEStED::GetPF(double PP, double dt, double Vel)
if ((!Przys_blok))
{
ValveRes->CreatePress(0.75 * VVP);
SoundFlag = SoundFlag || sf_Acc;
SoundFlag = SoundFlag | sf_Acc;
ValveRes->Act();
Przys_blok = true;
}
@@ -2345,11 +2353,13 @@ double TFV4aM::GetPF(double i_bcp, double PP, double HP, double dt, double ep)
void TFV4aM::Init(double Press)
{
CP = Press;
TP = 0;
TP = 0.0;
RP = Press;
XP = 0;
XP = 0.0;
Time = false;
TimeEP = false;
RedAdj = 0.0;
Fala = false;
}
void TFV4aM::SetReductor(double nAdj)
@@ -2484,10 +2494,12 @@ double TMHZ_EN57::GetPF(double i_bcp, double PP, double HP, double dt, double ep
void TMHZ_EN57::Init(double Press)
{
CP = Press;
TP = 0;
RP = 0;
TP = 0.0;
RP = 0.0;
Time = false;
TimeEP = false;
RedAdj = 0.0;
Fala = false;
}
void TMHZ_EN57::SetReductor(double nAdj)
@@ -2737,6 +2749,7 @@ void TSt113::Init(double Press)
{
Time = true;
TimeEP = true;
EPS = 0.0;
}
//--- test ---
@@ -2918,6 +2931,7 @@ void TFVel6::Init(double Press)
{
Time = true;
TimeEP = true;
EPS = 0.0;
}
//END

View File

@@ -262,6 +262,7 @@ Knorr/West EP -
double PP, double HPP, double LPP, double BP, int BDF) : TBrake(i_mbp, i_bcr, i_bcd, i_brc, i_bcn
, i_BD, i_mat, i_ba, i_nbpa, PP, HPP, LPP, BP, BDF)
{
LBP, dVP, EPS, TareM, TareBP, LoadM, LoadC = 0.0;
Init(PP, HPP, LPP, BP, BDF);
}
};
@@ -302,7 +303,7 @@ Knorr/West EP -
{
private:
double CylFlowSpeed[2][2];
//double CylFlowSpeed[2][2]; //zmienna nie uzywana
public:
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
@@ -336,6 +337,7 @@ Knorr/West EP -
double PP, double HPP, double LPP, double BP, int BDF) : TESt3(i_mbp, i_bcr, i_bcd, i_brc, i_bcn
, i_BD, i_mat, i_ba, i_nbpa, PP, HPP, LPP, BP, BDF)
{
TareM, TareBP, LoadM, LoadC = 0.0;
Init(PP, HPP, LPP, BP, BDF);
}
};
@@ -351,7 +353,7 @@ Knorr/West EP -
protected:
TReservoir *ImplsRes; //komora impulsowa
double RapidTemp; //akrualne, zmienne przelozenie
double RapidTemp; //aktualne, zmienne przelozenie
public:
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
@@ -361,6 +363,7 @@ Knorr/West EP -
double PP, double HPP, double LPP, double BP, int BDF) : TESt(i_mbp, i_bcr, i_bcd, i_brc, i_bcn
, i_BD, i_mat, i_ba, i_nbpa, PP, HPP, LPP, BP, BDF)
{
RapidTemp = 0.0;
Init(PP, HPP, LPP, BP, BDF);
}
};
@@ -371,7 +374,7 @@ Knorr/West EP -
{
private:
double CylFlowSpeed[2][2];
// double CylFlowSpeed[2][2]; // zmienna nie u¿ywana
void Init(double PP, double HPP, double LPP, double BP, int BDF)/*override*/;
protected:
@@ -423,6 +426,8 @@ Knorr/West EP -
double PP, double HPP, double LPP, double BP, int BDF) : TLSt(i_mbp, i_bcr, i_bcd, i_brc, i_bcn
, i_BD, i_mat, i_ba, i_nbpa, PP, HPP, LPP, BP, BDF)
{
Przys_blok = false;
TareM, TareBP, LoadM, LoadC = 0.0;
Init(PP, HPP, LPP, BP, BDF);
}
};
@@ -451,6 +456,7 @@ Knorr/West EP -
double PP, double HPP, double LPP, double BP, int BDF) : TLSt(i_mbp, i_bcr, i_bcd, i_brc, i_bcn
, i_BD, i_mat, i_ba, i_nbpa, PP, HPP, LPP, BP, BDF)
{
TareM, TareBP, LoadM, LoadC, EPS = 0.0;
Init(PP, HPP, LPP, BP, BDF);
}
};
@@ -524,6 +530,7 @@ Knorr/West EP -
double PP, double HPP, double LPP, double BP, int BDF) : TCV1(i_mbp, i_bcr, i_bcd, i_brc, i_bcn
, i_BD, i_mat, i_ba, i_nbpa, PP, HPP, LPP, BP, BDF)
{
LBP = 0.0;
Init(PP, HPP, LPP, BP, BDF);
}
};
@@ -565,6 +572,8 @@ Knorr/West EP -
double PP, double HPP, double LPP, double BP, int BDF) : TBrake(i_mbp, i_bcr, i_bcd, i_brc, i_bcn,
i_BD, i_mat, i_ba, i_nbpa, PP, HPP, LPP, BP, BDF)
{
RapidStatus = false;
TareM, TareBP, LoadM, LoadC, RM, LBP = 0.0;
Init(PP, HPP, LPP, BP, BDF);
}
};

View File

@@ -113,6 +113,12 @@ bool iSetFlag(int &Flag, int Value)
return false;
}
bool UnSetFlag(int &Flag, int Value)
{
Flag &= ~Value;
return true;
}
bool FuzzyLogic(double Test, double Threshold, double Probability)
{
if ((Test > Threshold) && (!DebugModeFlag))

View File

@@ -101,6 +101,7 @@ inline double BorlandTime()
extern bool TestFlag(int Flag, int Value);
extern bool SetFlag( int & Flag, int Value);
extern bool iSetFlag( int & Flag, int Value);
extern bool UnSetFlag(int &Flag, int Value);
bool FuzzyLogic(double Test, double Threshold, double Probability);
/*jesli Test>Threshold to losowanie*/