dodany kod c od Krzyska po wielu modyfikacjach przez Gemini zeby usunac zalezność od TI-RTOS

This commit is contained in:
2026-02-19 11:59:33 +01:00
parent bf9c4596b8
commit d086ef28de
336 changed files with 52294 additions and 1006 deletions

View File

@@ -8,8 +8,8 @@
#include <math.h>
#include "../tdefs.h"
#include "../misc.h"
#include "tdefs.h"
#include "misc.h"
#include "helper.h"
#include "analog_in.h"
#include "e_phi.h"
@@ -1010,17 +1010,17 @@ void ZDistA_komp(void *arguments, void *logic)
//#define K_SMALL = 0.03;
//energia dla wlasciwej petli >= 0.7...0.9 maksymalnej? Kluczowa w near-end, mniej znaczaca w far-end
//mozna dodatkowo sprobowac porownania kata impedancji? max 40..60stopni roznicy?
//wykryæ near-end mo¿na przez Z<0.15 Zlinii oraz I1>5...10*Inom
//wykry<EFBFBD> near-end mo<EFBFBD>na przez Z<0.15 Zlinii oraz I1>5...10*Inom
if(k0>(0.2f*0.2f) && /*k2<0.12 dodaæ? &&*/ Eratio>2.0f && (Zratio < 0.25f/* || near_end*/)) // 1ph-G... moznaby blokowaæ Pob_G gdy Zratio du¿y?
if(k0>(0.2f*0.2f) && /*k2<0.12 doda<EFBFBD>? &&*/ Eratio>2.0f && (Zratio < 0.25f/* || near_end*/)) // 1ph-G... moznaby blokowa<EFBFBD> Pob_G gdy Zratio du<EFBFBD>y?
{
typ_zw=1; // blokowac miedzyfazowe?
// zezwol_L1L2=0;
// zezwol_L2L3=0;
// zezwol_L1L3=0;
}
else if(k0<0.05f && k2>0.2f && Eratio>1.85f) // L-L [brak I0 za to pojawia siê I2]
else if(k0<0.05f && k2>0.2f && Eratio>1.85f) // L-L [brak I0 za to pojawia si<EFBFBD> I2]
{
typ_zw=2; // blokowac fazowe?
zezwol_L1=0;
@@ -1144,7 +1144,7 @@ void ZDistA_komp(void *arguments, void *logic)
float phi1,phi2;
// Kryterium Radka
// 4. K¹t (I0-I2) |fiI0_I2|
// 4. K<EFBFBD>t (I0-I2) |fiI0_I2|
phi1=get_phase(*log->sI0_ortb,*log->sI0_orta);
phi2=get_phase(*log->sI2_ortb,*log->sI2_orta);
fiI0_I2=get_phase_diff(phi1,phi2);
@@ -1178,7 +1178,7 @@ void ZDistA_komp(void *arguments, void *logic)
zakr_I0_I2 = *log->sI0 * _rcpsp(*log->sI2);
//if(Z_Z1<0.9f)
//jak sprawdziæ ¿e impedancja Z_L1/2/3 jest w przód lub w ty³
//jak sprawdzi<EFBFBD> <20>e impedancja Z_L1/2/3 jest w prz<EFBFBD>d lub w ty<EFBFBD>
///???
if(1/*blok_do_szyn*/)//zwarcie w przod
@@ -1225,24 +1225,24 @@ void ZDistA_komp(void *arguments, void *logic)
//*log->z[4]=A;
}
//Kryterium Radka B
//Blokada fa³szywych zwaræ doziemnych podczas poprawnego zwarcia doziemnego
//Blokada fa<EFBFBD>szywych zwar<EFBFBD> doziemnych podczas poprawnego zwarcia doziemnego
/* float fiI0_I2;
if((ZDISTA_POPRAWKA_4)&&(ZDISTA_POPRAWKA_5))
{
float phi3,phi4;
// Kryterium Radka
// 4. K¹t (I0-I2) |fiI0_I2|
// 4. K<EFBFBD>t (I0-I2) |fiI0_I2|
phi3=get_phase(*log->sI0_ortb,*log->sI0_orta);
phi4=get_phase(*log->sI2_ortb,*log->sI2_orta);
fiI0_I2=get_phase_diff(phi3,phi4);
//sprzwdzanie BRAK aktywnych pêtli zwaræ miêdzyfazowych LL
//sprzwdzanie BRAK aktywnych p<EFBFBD>tli zwar<EFBFBD> mi<EFBFBD>dzyfazowych LL
//????????????
//czy tylko w 1 strefie, czy we wszystkich trzeba sprawdziæ zwarcia LL
//czy tylko w 1 strefie, czy we wszystkich trzeba sprawdzi<EFBFBD> zwarcia LL
//sprawdzenie fi
// dla ka¿dej fazy
// dla ka<EFBFBD>dej fazy
if (((fabs(fiI0_I2)>30) && (fabs(fiI0_I2-120)<25)) ||(fabs(fiI0_I2+120)<25))
zezwol_L1 =0;
if (((fabs(fiI0_I2-120)>30) && (fabs(fiI0_I2)<25)) ||(fabs(fiI0_I2+120)<25))
@@ -1260,7 +1260,7 @@ void ZDistA_komp(void *arguments, void *logic)
if(ZDISTA_POPRAWKA_4C)
{
//----------------------------------------------------------------------------------
//Blokada fa³szywych zwaræ doziemnych podczas zwarcia miêdzyfazowego
//Blokada fa<EFBFBD>szywych zwar<EFBFBD> doziemnych podczas zwarcia mi<EFBFBD>dzyfazowego
// 1. |I0/I2|<0.25
float kdiff;
kdiff = *log->sI0 * _rcpsp(*log->sI2); // |I0|/|I2|
@@ -1415,7 +1415,7 @@ void ZDistA_komp(void *arguments, void *logic)
);
}
sprawdz_P( // blokada od pradow obcia¿enia
sprawdz_P( // blokada od pradow obcia<EFBFBD>enia
&log->dw.BL_Load[i],
(log->dw.Z.R[i] > local1 || log->dw.Z.R[i] < local2) &&
fabs(log->dw.Z.X[i]) < fabs(local3 * log->dw.Z.R[i]),
@@ -1531,7 +1531,7 @@ void ZDistA_komp(void *arguments, void *logic)
&log->dw.liczps[0][i],
l_powt, 5
);
log->dw.Pbk[0][i] = log->dw.P_s[0][i] && log->dw.Iogr && !(log->nast_.Bl_L[0] && log->dw.BL_Load[i]); // uwzglednienie blokady od pradow obcia¿enia oraz kryterium zwarc z udzialem ziemi
log->dw.Pbk[0][i] = log->dw.P_s[0][i] && log->dw.Iogr && !(log->nast_.Bl_L[0] && log->dw.BL_Load[i]); // uwzglednienie blokady od pradow obcia<EFBFBD>enia oraz kryterium zwarc z udzialem ziemi
log->dw.P_sss[0][i]= wk1;
}
@@ -1579,7 +1579,7 @@ void ZDistA_komp(void *arguments, void *logic)
&log->dw.liczps[1][i],
l_powt, 5
);
log->dw.Pbk[1][i] = log->dw.P_s[1][i] && log->dw.Iogr && !(log->nast_.Bl_L[1] && log->dw.BL_Load[i]); // uwzglednienie blokady od pradow obcia¿enia oraz kryterium zwarc z udzialem ziemi
log->dw.Pbk[1][i] = log->dw.P_s[1][i] && log->dw.Iogr && !(log->nast_.Bl_L[1] && log->dw.BL_Load[i]); // uwzglednienie blokady od pradow obcia<EFBFBD>enia oraz kryterium zwarc z udzialem ziemi
log->dw.P_sss[1][i]= wk1;
}
@@ -1629,7 +1629,7 @@ void ZDistA_komp(void *arguments, void *logic)
l_powt, 5
);
log->dw.Pbk[j][i-3] = log->dw.P_s[j][i-3] && log->dw.Iogr && !(log->nast_.Bl_L[j] && log->dw.BL_Load[i]); // uwzglednienie blokady od pradow obcia¿enia oraz kryterium zwarc z udzialem ziemi
log->dw.Pbk[j][i-3] = log->dw.P_s[j][i-3] && log->dw.Iogr && !(log->nast_.Bl_L[j] && log->dw.BL_Load[i]); // uwzglednienie blokady od pradow obcia<EFBFBD>enia oraz kryterium zwarc z udzialem ziemi
log->dw.P_sss[j][i-3]= wk1;
}
@@ -1678,7 +1678,7 @@ void ZDistA_komp(void *arguments, void *logic)
&log->dw.liczps[j][i-3],
l_powt, 5
);
log->dw.Pbk[j][i-3] = log->dw.P_s[j][i-3] && !(log->nast_.Bl_L[j] && log->dw.BL_Load[i]); // uwzglednienie blokady od pradow obcia¿enia oraz minimalnej wartosci pradu
log->dw.Pbk[j][i-3] = log->dw.P_s[j][i-3] && !(log->nast_.Bl_L[j] && log->dw.BL_Load[i]); // uwzglednienie blokady od pradow obcia<EFBFBD>enia oraz minimalnej wartosci pradu
log->dw.P_sss[j][i-3]= wk1;
}
}
@@ -1767,7 +1767,7 @@ void ZDistA_komp(void *arguments, void *logic)
// *log->z[5]=Zm_vect;
if (!check_struct(&log->Bl_K))//jeœli nie ma blokady kierunku
if (!check_struct(&log->Bl_K))//je<EFBFBD>li nie ma blokady kierunku
{
for(j=0;j<2;j++)
{