diff --git a/McZapkie/Oerlikon_ESt.cpp b/McZapkie/Oerlikon_ESt.cpp index db1da53e..b2063976 100644 --- a/McZapkie/Oerlikon_ESt.cpp +++ b/McZapkie/Oerlikon_ESt.cpp @@ -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; diff --git a/McZapkie/Oerlikon_ESt.h b/McZapkie/Oerlikon_ESt.h index de6a3f9a..f5d669f0 100644 --- a/McZapkie/Oerlikon_ESt.h +++ b/McZapkie/Oerlikon_ESt.h @@ -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 diff --git a/McZapkie/hamulce.cpp b/McZapkie/hamulce.cpp index d6d32ddd..bf226edc 100644 --- a/McZapkie/hamulce.cpp +++ b/McZapkie/hamulce.cpp @@ -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 diff --git a/McZapkie/hamulce.h b/McZapkie/hamulce.h index 132d1c0d..7e3b25b9 100644 --- a/McZapkie/hamulce.h +++ b/McZapkie/hamulce.h @@ -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); } }; diff --git a/McZapkie/mctools.cpp b/McZapkie/mctools.cpp index 5b363a1e..bba7b142 100644 --- a/McZapkie/mctools.cpp +++ b/McZapkie/mctools.cpp @@ -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)) diff --git a/McZapkie/mctools.h b/McZapkie/mctools.h index 5c78acbf..e777f8cb 100644 --- a/McZapkie/mctools.h +++ b/McZapkie/mctools.h @@ -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*/