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

merged upstream changes

This commit is contained in:
tmj-fstate
2017-01-23 12:40:14 +01:00
75 changed files with 9745 additions and 9755 deletions

View File

@@ -12,7 +12,7 @@ http://mozilla.org/MPL/2.0/.
MaSzyna EU07 - SPKS
Brakes.
Copyright (C) 2007-2014 Maciej Cierniak
*/
*/
/*
@@ -23,13 +23,13 @@ moze jeszcze jakis SW
/*
Zrobione:
ESt3, ESt3AL2, ESt4R, LSt, FV4a, FD1, EP2, prosty westinghouse
duzo wersji ¿eliwa
duzo wersji żeliwa
KE
Tarcze od 152A
Magnetyki (implementacja w mover.pas)
Matrosow 394
H14K1 (zasadniczy), H1405 (pomocniczy), St113 (ep)
Knorr/West EP - ¿eby by³
Knorr/West EP - żeby był
*/
#pragma once
@@ -77,7 +77,7 @@ static int const s_fv4a_t = 4; //wyplyw z czasowego
/*pary cierne*/
static int const bp_P10 = 0;
static int const bp_P10Bg = 2; //¿eliwo fosforowe P10
static int const bp_P10Bg = 2; //żeliwo fosforowe P10
static int const bp_P10Bgu = 1;
static int const bp_LLBg = 4; //komp. b.n.t.
static int const bp_LLBgu = 3;
@@ -87,12 +87,12 @@ static int const bp_KBg = 8; //komp. w.t.
static int const bp_KBgu = 7;
static int const bp_D1 = 9; //tarcze
static int const bp_D2 = 10;
static int const bp_FR513 = 11; //Frenoplast FR513
static int const bp_Cosid = 12; //jakistam kompozyt :D
static int const bp_PKPBg = 13; //¿eliwo PKP
static int const bp_FR513 = 11; // Frenoplast FR513
static int const bp_Cosid = 12; // jakistam kompozyt :D
static int const bp_PKPBg = 13; //żeliwo PKP
static int const bp_PKPBgu = 14;
static int const bp_MHS = 128; //magnetyczny hamulec szynowy
static int const bp_P10yBg = 15; //¿eliwo fosforowe P10
static int const bp_MHS = 128; // magnetyczny hamulec szynowy
static int const bp_P10yBg = 15; //żeliwo fosforowe P10
static int const bp_P10yBgu = 16;
static int const bp_FR510 = 17; //Frenoplast FR510
@@ -103,17 +103,17 @@ static int const sf_CylU = 8; //cylinder - oproznianie
static int const sf_rel = 16; //odluzniacz
static int const sf_ep = 32; //zawory ep
static int const bh_MIN = 0; //minimalna pozycja
static int const bh_MAX = 1; //maksymalna pozycja
static int const bh_FS = 2; //napelnianie uderzeniowe //jesli nie ma, to jazda
static int const bh_RP = 3; //jazda
static int const bh_NP = 4; //odciecie - podwojna trakcja
static int const bh_MB = 5; //odciecie - utrzymanie stopnia hamowania/pierwszy 1 stopien hamowania
static int const bh_FB = 6; //pelne
static int const bh_EB = 7; //nagle
static int const bh_EPR = 8; //ep - luzowanie //pelny luz dla ep k¹towego
static int const bh_EPN = 9; //ep - utrzymanie //jesli rowne luzowaniu, wtedy sterowanie przyciskiem
static int const bh_EPB = 10; //ep - hamowanie //pelne hamowanie dla ep k¹towego
static int const bh_MIN = 0; // minimalna pozycja
static int const bh_MAX = 1; // maksymalna pozycja
static int const bh_FS = 2; // napelnianie uderzeniowe //jesli nie ma, to jazda
static int const bh_RP = 3; // jazda
static int const bh_NP = 4; // odciecie - podwojna trakcja
static int const bh_MB = 5; // odciecie - utrzymanie stopnia hamowania/pierwszy 1 stopien hamowania
static int const bh_FB = 6; // pelne
static int const bh_EB = 7; // nagle
static int const bh_EPR = 8; // ep - luzowanie //pelny luz dla ep kątowego
static int const bh_EPN = 9; // ep - utrzymanie //jesli rowne luzowaniu, wtedy sterowanie przyciskiem
static int const bh_EPB = 10; // ep - hamowanie //pelne hamowanie dla ep kątowego
static double const SpgD = 0.7917;
@@ -137,28 +137,28 @@ static int const i_bcpno = 6;
//klasa obejmujaca pojedyncze zbiorniki
class TReservoir {
protected:
protected:
double Cap = 1.0;
double Vol = 0.0;
double dVol = 0.0;
public:
void CreateCap(double Capacity);
void CreatePress(double Press);
virtual double pa();
virtual double P();
void Flow(double dv);
void Act();
public:
void CreateCap(double Capacity);
void CreatePress(double Press);
virtual double pa();
virtual double P();
void Flow(double dv);
void Act();
TReservoir() = default;
};
typedef TReservoir *PReservoir;
typedef TReservoir *PReservoir;
class TBrakeCyl : public TReservoir {
public:
public:
virtual double pa()/*override*/;
virtual double P()/*override*/;
TBrakeCyl() : TReservoir() {};
@@ -167,7 +167,7 @@ class TBrakeCyl : public TReservoir {
//klasa obejmujaca uklad hamulca zespolonego pojazdu
class TBrake {
protected:
protected:
std::shared_ptr<TReservoir> BrakeCyl; //silownik
std::shared_ptr<TReservoir> BrakeRes; //ZP
std::shared_ptr<TReservoir> ValveRes; //komora wstepna
@@ -188,7 +188,7 @@ class TBrake {
int BrakeStatus = 0; //flaga stanu
int SoundFlag = 0;
public:
public:
TBrake(double i_mbp, double i_bcr, double i_bcd, double i_brc, int i_bcn, int i_BD, int i_mat, int i_ba, int i_nbpa);
//maksymalne cisnienie, promien, skok roboczy, pojemnosc ZP, ilosc cylindrow, opoznienia hamulca, material klockow, osie hamowane, klocki na os;
virtual void Init(double PP, double HPP, double LPP, double BP, int BDF); //inicjalizacja hamulca
@@ -212,14 +212,14 @@ class TBrake {
void ASB(int state); //hamulec przeciwposlizgowy
int GetStatus(); //flaga statusu, moze sie przydac do odglosow
void SetASBP(double Press); //ustalenie cisnienia pp
virtual void ForceEmptiness();
int GetSoundFlag();
virtual void ForceEmptiness();
int GetSoundFlag();
virtual void SetED(double EDstate) {}; //stan hamulca ED do luzowania
};
class TWest : public TBrake {
private:
private:
double LBP = 0.0; //cisnienie hamulca pomocniczego
double dVP = 0.0; //pobor powietrza wysokiego cisnienia
double EPS = 0.0; //stan elektropneumatyka
@@ -228,7 +228,7 @@ class TWest : public TBrake {
double TareBP = 0.0; //cisnienie dla proznego
double LoadC = 0.0; //wspolczynnik przystawki wazacej
public:
public:
void Init(double PP, double HPP, double LPP, double BP, int BDF)/*override*/;
void SetLBP(double P); //cisnienie z hamulca pomocniczego
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
@@ -244,13 +244,13 @@ class TWest : public TBrake {
class TESt : public TBrake {
private:
private:
protected:
std::shared_ptr<TReservoir> CntrlRes; //zbiornik steruj¹cy
double BVM = 0.0; //przelozenie PG-CH
protected:
std::shared_ptr<TReservoir> CntrlRes; // zbiornik sterujący
double BVM = 0.0; // przelozenie PG-CH
public:
public:
void Init(double PP, double HPP, double LPP, double BP, int BDF)/*override*/;
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
void EStParams(double i_crc); //parametry charakterystyczne dla ESt
@@ -262,17 +262,17 @@ class TESt : public TBrake {
inline TESt(double i_mbp, double i_bcr, double i_bcd, double i_brc, int i_bcn, int i_BD, int i_mat, int i_ba, int i_nbpa) :
TBrake( i_mbp, i_bcr, i_bcd, i_brc, i_bcn, i_BD, i_mat, i_ba, i_nbpa)
{
{
CntrlRes = std::make_shared<TReservoir>();
}
}
};
class TESt3 : public TESt {
private:
private:
//double CylFlowSpeed[2][2]; //zmienna nie uzywana
public:
public:
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
inline TESt3(double i_mbp, double i_bcr, double i_bcd, double i_brc, int i_bcn, int i_BD, int i_mat, int i_ba, int i_nbpa) :
@@ -282,14 +282,14 @@ class TESt3 : public TESt {
class TESt3AL2 : public TESt3 {
private:
private:
std::shared_ptr<TReservoir> ImplsRes; //komora impulsowa
double TareM = 0.0; //masa proznego
double LoadM = 0.0; //i pelnego
double TareBP = 0.0; //cisnienie dla proznego
double LoadC = 0.0;
public:
public:
void Init(double PP, double HPP, double LPP, double BP, int BDF)/*override*/;
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
void PLC(double mass); //wspolczynnik cisnienia przystawki wazacej
@@ -297,42 +297,42 @@ class TESt3AL2 : public TESt3 {
inline TESt3AL2(double i_mbp, double i_bcr, double i_bcd, double i_brc, int i_bcn, int i_BD, int i_mat, int i_ba, int i_nbpa) :
TESt3( i_mbp, i_bcr, i_bcd, i_brc, i_bcn, i_BD, i_mat, i_ba, i_nbpa)
{
{
ImplsRes = std::make_shared<TReservoir>();
}
}
};
class TESt4R : public TESt {
private:
private:
bool RapidStatus = false;
protected:
protected:
std::shared_ptr<TReservoir> ImplsRes; //komora impulsowa
double RapidTemp = 0.0; //aktualne, zmienne przelozenie
public:
public:
void Init(double PP, double HPP, double LPP, double BP, int BDF)/*override*/;
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
inline TESt4R(double i_mbp, double i_bcr, double i_bcd, double i_brc, int i_bcn, int i_BD, int i_mat, int i_ba, int i_nbpa) :
TESt( i_mbp, i_bcr, i_bcd, i_brc, i_bcn, i_BD, i_mat, i_ba, i_nbpa)
{
{
ImplsRes = std::make_shared<TReservoir>();
}
}
};
class TLSt : public TESt4R {
private:
// double CylFlowSpeed[2][2]; // zmienna nie u¿ywana
private:
// double CylFlowSpeed[2][2]; // zmienna nie używana
protected:
protected:
double LBP = 0.0; //cisnienie hamulca pomocniczego
double RM = 0.0; //przelozenie rapida
double EDFlag = 0.0; //luzowanie hamulca z powodu zalaczonego ED
public:
public:
void Init(double PP, double HPP, double LPP, double BP, int BDF)/*override*/;
void SetLBP(double P); //cisnienie z hamulca pomocniczego
void SetRM(double RMR); //ustalenie przelozenia rapida
@@ -348,7 +348,7 @@ class TLSt : public TESt4R {
class TEStED : public TLSt { //zawor z EP09 - Est4 z oddzielnym przekladnikiem, kontrola rapidu i takie tam
private:
private:
std::shared_ptr<TReservoir> Miedzypoj; //pojemnosc posrednia (urojona) do napelniania ZP i ZS
double Nozzles[ 11 ]; //dysze
bool Zamykajacy = false; //pamiec zaworka zamykajacego
@@ -359,7 +359,7 @@ class TEStED : public TLSt { //zawor z EP09 - Est4 z oddzielnym przekladnikiem,
double LoadC = 0.0;
public:
public:
void Init(double PP, double HPP, double LPP, double BP, int BDF)/*override*/;
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
double GetEDBCP()/*override*/; //cisnienie tylko z hamulca zasadniczego, uzywane do hamulca ED
@@ -368,14 +368,14 @@ class TEStED : public TLSt { //zawor z EP09 - Est4 z oddzielnym przekladnikiem,
inline TEStED(double i_mbp, double i_bcr, double i_bcd, double i_brc, int i_bcn, int i_BD, int i_mat, int i_ba, int i_nbpa) :
TLSt( i_mbp, i_bcr, i_bcd, i_brc, i_bcn, i_BD, i_mat, i_ba, i_nbpa)
{
{
Miedzypoj = std::make_shared<TReservoir>();
}
}
};
class TEStEP2 : public TLSt {
private:
private:
double TareM = 0.0; //masa proznego
double LoadM = 0.0; //masa pelnego
double TareBP = 0.0; //cisnienie dla proznego
@@ -383,7 +383,7 @@ class TEStEP2 : public TLSt {
double EPS = 0.0;
public:
public:
void Init(double PP, double HPP, double LPP, double BP, int BDF)/*override*/; //inicjalizacja
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
void PLC(double mass); //wspolczynnik cisnienia przystawki wazacej
@@ -397,51 +397,51 @@ class TEStEP2 : public TLSt {
class TCV1 : public TBrake {
private:
private:
double BVM = 0.0; //przelozenie PG-CH
protected:
std::shared_ptr<TReservoir> CntrlRes; //zbiornik steruj¹cy
protected:
std::shared_ptr<TReservoir> CntrlRes; // zbiornik sterujący
public:
public:
void Init(double PP, double HPP, double LPP, double BP, int BDF)/*override*/;
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
double GetCRP()/*override*/;
void CheckState(double BCP, double & dV1);
double CVs(double BP);
double BVs(double BCP);
double CVs(double BP);
double BVs(double BCP);
inline TCV1(double i_mbp, double i_bcr, double i_bcd, double i_brc, int i_bcn, int i_BD, int i_mat, int i_ba, int i_nbpa) :
TBrake( i_mbp, i_bcr, i_bcd, i_brc, i_bcn, i_BD, i_mat, i_ba, i_nbpa)
{
{
CntrlRes = std::make_shared<TReservoir>();
}
}
};
//class TCV1R : public TCV1
//{
//{
//private:
// TReservoir *ImplsRes; //komora impulsowa
// bool RapidStatus;
// TReservoir *ImplsRes; //komora impulsowa
// bool RapidStatus;
//public:
// // function GetPF(PP, dt, Vel: real): real; override; //przeplyw miedzy komora wstepna i PG
// // procedure Init(PP, HPP, LPP, BP: real; BDF: int); override;
// // procedure Init(PP, HPP, LPP, BP: real; BDF: int); override;
// inline TCV1R(double i_mbp, double i_bcr, double i_bcd, double i_brc,
// int i_bcn, int i_BD, int i_mat, int i_ba, int i_nbpa,
// inline TCV1R(double i_mbp, double i_bcr, double i_bcd, double i_brc,
// int i_bcn, int i_BD, int i_mat, int i_ba, int i_nbpa,
// 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) { }
//};
// , i_BD, i_mat, i_ba, i_nbpa, PP, HPP, LPP, BP, BDF) { }
//};
class TCV1L_TR : public TCV1 {
private:
private:
std::shared_ptr<TReservoir> ImplsRes; //komora impulsowa
double LBP = 0.0; //cisnienie hamulca pomocniczego
public:
public:
void Init(double PP, double HPP, double LPP, double BP, int BDF)/*override*/;
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
void SetLBP(double P); //cisnienie z hamulca pomocniczego
@@ -449,16 +449,16 @@ class TCV1L_TR : public TCV1 {
inline TCV1L_TR(double i_mbp, double i_bcr, double i_bcd, double i_brc, int i_bcn, int i_BD, int i_mat, int i_ba, int i_nbpa) :
TCV1( i_mbp, i_bcr, i_bcd, i_brc, i_bcn, i_BD, i_mat, i_ba, i_nbpa)
{
{
ImplsRes = std::make_shared<TReservoir>();
}
}
};
class TKE : public TBrake { //Knorr Einheitsbauart — jeden do wszystkiego
class TKE : public TBrake { //Knorr Einheitsbauart — jeden do wszystkiego
private:
private:
std::shared_ptr<TReservoir> ImplsRes; //komora impulsowa
std::shared_ptr<TReservoir> CntrlRes; //zbiornik steruj¹cy
std::shared_ptr<TReservoir> CntrlRes; // zbiornik sterujący
std::shared_ptr<TReservoir> Brak2Res; //zbiornik pomocniczy 2
bool RapidStatus = false;
double BVM = 0.0; //przelozenie PG-CH
@@ -469,7 +469,7 @@ class TKE : public TBrake { //Knorr Einheitsbauart
double RM = 0.0; //przelozenie rapida
double LBP = 0.0; //cisnienie hamulca pomocniczego
public:
public:
void Init(double PP, double HPP, double LPP, double BP, int BDF)/*override*/;
void SetRM(double RMR); //ustalenie przelozenia rapida
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
@@ -485,41 +485,41 @@ class TKE : public TBrake { //Knorr Einheitsbauart
inline TKE(double i_mbp, double i_bcr, double i_bcd, double i_brc, int i_bcn, int i_BD, int i_mat, int i_ba, int i_nbpa) :
TBrake( i_mbp, i_bcr, i_bcd, i_brc, i_bcn, i_BD, i_mat, i_ba, i_nbpa)
{
{
ImplsRes = std::make_shared<TReservoir>();
CntrlRes = std::make_shared<TReservoir>();
Brak2Res = std::make_shared<TReservoir>();
}
}
};
//klasa obejmujaca krany
class TDriverHandle {
private:
// BCP: integer;
private:
// BCP: integer;
public:
public:
bool Time = false;
bool TimeEP = false;
double Sounds[ 5 ]; //wielkosci przeplywow dla dzwiekow
virtual double GetPF(double i_bcp, double PP, double HP, double dt, double ep);
virtual void Init(double Press);
virtual double GetCP();
virtual void SetReductor(double nAdj);
virtual double GetSound(int i);
virtual double GetPos(int i);
virtual double GetEP(double pos);
virtual double GetPF(double i_bcp, double PP, double HP, double dt, double ep);
virtual void Init(double Press);
virtual double GetCP();
virtual void SetReductor(double nAdj);
virtual double GetSound(int i);
virtual double GetPos(int i);
virtual double GetEP(double pos);
};
class TFV4a : public TDriverHandle {
private:
double CP = 0.0; //zbiornik steruj¹cy
private:
double CP = 0.0; //zbiornik sterujący
double TP = 0.0; //zbiornik czasowy
double RP = 0.0; //zbiornik redukcyjny
public:
public:
double GetPF(double i_bcp, double PP, double HP, double dt, double ep)/*override*/;
void Init(double Press)/*override*/;
@@ -530,20 +530,20 @@ class TFV4a : public TDriverHandle {
class TFV4aM : public TDriverHandle {
private:
double CP = 0.0; //zbiornik steruj¹cy
private:
double CP = 0.0; //zbiornik sterujący
double TP = 0.0; //zbiornik czasowy
double RP = 0.0; //zbiornik redukcyjny
double XP = 0.0; //komora powietrzna w reduktorze — jest potrzebna do odwzorowania fali
double XP = 0.0; //komora powietrzna w reduktorze — jest potrzebna do odwzorowania fali
double RedAdj = 0.0; //dostosowanie reduktora cisnienia (krecenie kapturkiem)
// Sounds: array[0..4] of real; //wielkosci przeplywow dla dzwiekow
// Sounds: array[0..4] of real; //wielkosci przeplywow dla dzwiekow
bool Fala = false;
static double const pos_table[11]; // = { -2, 6, -1, 0, -2, 1, 4, 6, 0, 0, 0 };
double LPP_RP(double pos);
bool EQ(double pos, double i_pos);
double LPP_RP(double pos);
bool EQ(double pos, double i_pos);
public:
public:
double GetPF(double i_bcp, double PP, double HP, double dt, double ep)/*override*/;
void Init(double Press)/*override*/;
void SetReductor(double nAdj)/*override*/;
@@ -557,69 +557,69 @@ class TFV4aM : public TDriverHandle {
class TMHZ_EN57 : public TDriverHandle {
private:
double CP = 0.0; //zbiornik steruj¹cy
private:
double CP = 0.0; //zbiornik sterujący
double TP = 0.0; //zbiornik czasowy
double RP = 0.0; //zbiornik redukcyjny
double RedAdj = 0.0; //dostosowanie reduktora cisnienia (krecenie kapturkiem)
bool Fala = false;
static double const pos_table[11]; //= { -2, 10, -1, 0, 0, 2, 9, 10, 0, 0, 0 };
double LPP_RP(double pos);
bool EQ(double pos, double i_pos);
double LPP_RP(double pos);
bool EQ(double pos, double i_pos);
public:
public:
double GetPF(double i_bcp, double PP, double HP, double dt, double ep)/*override*/;
void Init(double Press)/*override*/;
void SetReductor(double nAdj)/*override*/;
double GetSound(int i)/*override*/;
double GetPos(int i)/*override*/;
double GetCP()/*override*/;
double GetEP(double pos);
double GetEP(double pos);
inline TMHZ_EN57(void) :
TDriverHandle()
{}
};
/* FBS2= class(TTDriverHandle)
private
CP, TP, RP: real; //zbiornik steruj¹cy, czasowy, redukcyjny
XP: real; //komora powietrzna w reduktorze — jest potrzebna do odwzorowania fali
RedAdj: real; //dostosowanie reduktora cisnienia (krecenie kapturkiem)
// Sounds: array[0..4] of real; //wielkosci przeplywow dla dzwiekow
Fala: boolean;
public
function GetPF(i_bcp:real; pp, hp, dt, ep: real): real; override;
procedure Init(press: real); override;
procedure SetReductor(nAdj: real); override;
function GetSound(i: int): real; override;
function GetPos(i: int): real; override;
end; */
/* FBS2= class(TTDriverHandle)
private
CP, TP, RP: real; //zbiornik sterujący, czasowy, redukcyjny
XP: real; //komora powietrzna w reduktorze — jest potrzebna do odwzorowania fali
RedAdj: real; //dostosowanie reduktora cisnienia (krecenie kapturkiem)
// Sounds: array[0..4] of real; //wielkosci przeplywow dla dzwiekow
Fala: boolean;
public
function GetPF(i_bcp:real; pp, hp, dt, ep: real): real; override;
procedure Init(press: real); override;
procedure SetReductor(nAdj: real); override;
function GetSound(i: int): real; override;
function GetPos(i: int): real; override;
end; */
/* TD2= class(TTDriverHandle)
private
CP, TP, RP: real; //zbiornik steruj¹cy, czasowy, redukcyjny
XP: real; //komora powietrzna w reduktorze — jest potrzebna do odwzorowania fali
RedAdj: real; //dostosowanie reduktora cisnienia (krecenie kapturkiem)
// Sounds: array[0..4] of real; //wielkosci przeplywow dla dzwiekow
Fala: boolean;
public
function GetPF(i_bcp:real; pp, hp, dt, ep: real): real; override;
procedure Init(press: real); override;
procedure SetReductor(nAdj: real); override;
function GetSound(i: int): real; override;
function GetPos(i: int): real; override;
end;*/
/* TD2= class(TTDriverHandle)
private
CP, TP, RP: real; //zbiornik sterujący, czasowy, redukcyjny
XP: real; //komora powietrzna w reduktorze — jest potrzebna do odwzorowania fali
RedAdj: real; //dostosowanie reduktora cisnienia (krecenie kapturkiem)
// Sounds: array[0..4] of real; //wielkosci przeplywow dla dzwiekow
Fala: boolean;
public
function GetPF(i_bcp:real; pp, hp, dt, ep: real): real; override;
procedure Init(press: real); override;
procedure SetReductor(nAdj: real); override;
function GetSound(i: int): real; override;
function GetPos(i: int): real; override;
end;*/
class TM394 : public TDriverHandle {
private:
double CP = 0.0; //zbiornik steruj¹cy, czasowy, redukcyjny
private:
double CP = 0.0; //zbiornik sterujący, czasowy, redukcyjny
double RedAdj = 0.0; //dostosowanie reduktora cisnienia (krecenie kapturkiem)
static double const pos_table[11]; // = { -1, 5, -1, 0, 1, 2, 4, 5, 0, 0, 0 };
public:
public:
double GetPF(double i_bcp, double PP, double HP, double dt, double ep)/*override*/;
void Init(double Press)/*override*/;
void SetReductor(double nAdj)/*override*/;
@@ -633,15 +633,15 @@ class TM394 : public TDriverHandle {
class TH14K1 : public TDriverHandle {
private:
private:
static double const BPT_K[/*?*/ /*-1..4*/ (4) - (-1) + 1][2];
static double const pos_table[11]; // = {-1, 4, -1, 0, 1, 2, 3, 4, 0, 0, 0};
protected:
double CP = 0.0; //zbiornik steruj¹cy, czasowy, redukcyjny
protected:
double CP = 0.0; //zbiornik sterujący, czasowy, redukcyjny
double RedAdj = 0.0; //dostosowanie reduktora cisnienia (krecenie kapturkiem)
public:
public:
double GetPF(double i_bcp, double PP, double HP, double dt, double ep)/*override*/;
void Init(double Press)/*override*/;
void SetReductor(double nAdj)/*override*/;
@@ -655,13 +655,13 @@ class TH14K1 : public TDriverHandle {
class TSt113 : public TH14K1 {
private:
private:
double EPS = 0.0;
static double const BPT_K[/*?*/ /*-1..4*/ (4) - (-1) + 1][2];
static double const BEP_K[/*?*/ /*-1..5*/ (5) - (-1) + 1];
static double const pos_table[11]; // = {-1, 5, -1, 0, 2, 3, 4, 5, 0, 0, 1};
public:
public:
double GetPF(double i_bcp, double PP, double HP, double dt, double ep)/*override*/;
double GetCP()/*override*/;
double GetPos(int i)/*override*/;
@@ -674,10 +674,10 @@ class TSt113 : public TH14K1 {
class Ttest : public TDriverHandle {
private:
private:
double CP = 0.0;
public:
public:
double GetPF(double i_bcp, double PP, double HP, double dt, double ep)/*override*/;
void Init(double Press)/*override*/;
@@ -688,18 +688,18 @@ class Ttest : public TDriverHandle {
class TFD1 : public TDriverHandle {
private:
private:
double MaxBP = 0.0; //najwyzsze cisnienie
double BP = 0.0; //aktualne cisnienie
public:
public:
double Speed = 0.0; //szybkosc dzialania
double GetPF(double i_bcp, double PP, double HP, double dt, double ep)/*override*/;
void Init(double Press)/*override*/;
double GetCP()/*override*/;
void SetSpeed(double nSpeed);
// procedure Init(press: real; MaxBP: real); overload;
void SetSpeed(double nSpeed);
// procedure Init(press: real; MaxBP: real); overload;
inline TFD1(void) :
TDriverHandle()
@@ -708,15 +708,15 @@ class TFD1 : public TDriverHandle {
class TH1405 : public TDriverHandle {
private:
private:
double MaxBP = 0.0; //najwyzsze cisnienie
double BP = 0.0; //aktualne cisnienie
public:
public:
double GetPF(double i_bcp, double PP, double HP, double dt, double ep)/*override*/;
void Init(double Press)/*override*/;
double GetCP()/*override*/;
// procedure Init(press: real; MaxBP: real); overload;
// procedure Init(press: real; MaxBP: real); overload;
inline TH1405(void) :
TDriverHandle()
@@ -725,11 +725,11 @@ class TH1405 : public TDriverHandle {
class TFVel6 : public TDriverHandle {
private:
private:
double EPS = 0.0;
static double const pos_table[ 11 ]; // = {-1, 6, -1, 0, 6, 4, 4.7, 5, -1, 0, 1};
public:
public:
double GetPF(double i_bcp, double PP, double HP, double dt, double ep)/*override*/;
double GetCP()/*override*/;
double GetPos(int i)/*override*/;