dodany kod c od Krzyska po wielu modyfikacjach przez Gemini zeby usunac zalezność od TI-RTOS
This commit is contained in:
104
src/ov_3ph_zezw.h
Normal file
104
src/ov_3ph_zezw.h
Normal file
@@ -0,0 +1,104 @@
|
||||
/*
|
||||
* ov_3ph_zezw.h
|
||||
*
|
||||
* Created on: 27-03-2018
|
||||
* Author: Krzysztof Jakubczyk
|
||||
*/
|
||||
|
||||
#ifndef OV_3PH_ZEZW_H_
|
||||
#define OV_3PH_ZEZW_H_
|
||||
|
||||
#include "tdefs.h"
|
||||
|
||||
struct Nastawy_przeliczone_ov3ph_zezw
|
||||
{
|
||||
float limit1_; ///< wartosc rozruchowa
|
||||
float limit2_; ///< wartosc powrotu
|
||||
u32 t_; ///< opoznienie czasu zadzialania przekaznika
|
||||
u8 on_; ///< wartosc nastawy aktywnosci przekaznika 1- aktywny
|
||||
u8 w_; ///< wartosc nastawy dzialania na wylaczeniee 1 - wylaczenie 0 - tylko sygnalizacja
|
||||
u8 bl_; ///< wartosc nastawy aktywnosci blokady dzialania 1- blokada aktywna
|
||||
u8 or_; ///< logika pobudzen "0" oznacza dzialanie w trybie "and", a "1" w trybie "or"
|
||||
};
|
||||
|
||||
struct dane_wewnetrzne_ov3ph_zezw
|
||||
{
|
||||
// Wyjscia_rejestratora R; ///< dane ostatniego zaklocenia
|
||||
// Time czas_; // moment wystapienia zaklocenia (rejestr tymczasowy - przed zapisem)
|
||||
u32 dl_; // dlugosc czasu trwania zaklocenia (rejestr tymczasowy - przed zapisem)
|
||||
float max1_; // maksymalna watosc wejscia 1 (rejestr tymczasowy - przed zapisem)
|
||||
float max2_; // maksymalna watosc wejscia 2 (rejestr tymczasowy - przed zapisem)
|
||||
float max3_; // maksymalna watosc wejscia 3 (rejestr tymczasowy - przed zapisem)
|
||||
short lp1; ///<licznik filtracji pobudzen faza 1
|
||||
short lp2; ///<licznik filtracji pobudzen faza 2
|
||||
short lp3; ///<licznik filtracji pobudzen faza 3
|
||||
u32 licz_t_; // licznik czasu od pobudzenia dla przekaznika czasowego
|
||||
u8 wsk_rej; // nowy zapis rejestracji parametrow zaklocenia (spelnienie kryterium identyfikacji)
|
||||
u8 pob;///< pobudzenie przekaznika
|
||||
u8 pob1;///< pobudzenie przekaznika faza 1
|
||||
u8 pob2;///< pobudzenie przekaznika faza 2
|
||||
u8 pob3;///< pobudzenie przekaznika faza 3
|
||||
u8 zad;///< zadzialanie przekaznika
|
||||
};
|
||||
|
||||
struct ov_3ph_zezw_logic
|
||||
{
|
||||
u8 *stan_bl;
|
||||
u8 stan_bl_bit_no;
|
||||
float *I1;
|
||||
float *I2;
|
||||
float *I3;
|
||||
u8 *test;
|
||||
u8 test_bit_no;
|
||||
u8 *W;
|
||||
u8 W_bit_no;
|
||||
u8 *Z;
|
||||
u8 Z_bit_no;
|
||||
u8 *P;
|
||||
u8 P_bit_no;
|
||||
u8 *PL1;
|
||||
u8 PL1_bit_no;
|
||||
u8 *PL2;
|
||||
u8 PL2_bit_no;
|
||||
u8 *PL3;
|
||||
u8 PL3_bit_no;
|
||||
|
||||
struct dane_wewnetrzne_ov3ph_zezw dw;
|
||||
struct Nastawy_przeliczone_ov3ph_zezw nast_;// struktura z parametrami
|
||||
};
|
||||
|
||||
struct ov_3ph_zezw_io
|
||||
{
|
||||
u32 stan_bl;
|
||||
u32 I1_float_in;
|
||||
u32 I2_float_in;
|
||||
u32 I3_float_in;
|
||||
u32 test_in;
|
||||
u32 W_out;
|
||||
u32 Z_out;
|
||||
u32 P_out;
|
||||
u32 PL1_out;
|
||||
u32 PL2_out;
|
||||
u32 PL3_out;
|
||||
}__attribute__((__packed__));
|
||||
|
||||
struct ov_3ph_zezw_params
|
||||
{
|
||||
u32 bity; ///< nastawy bitowe;
|
||||
double Wr_; ///< wartosc nastawy rozruchowej przekaznika w krotnosciach wartosci znamionowej
|
||||
double kp_; ///< wartosc nastawy wspolczynnika powrotu
|
||||
double t_; ///< wartosc nastawy czasu dzialania w sekundach
|
||||
}__attribute__((__packed__));
|
||||
|
||||
struct ov_3ph_zezw_args
|
||||
{
|
||||
struct ov_3ph_zezw_io io;
|
||||
struct ov_3ph_zezw_params params;
|
||||
// u16 crc;
|
||||
}__attribute__((__packed__));
|
||||
|
||||
extern void ov_3ph_zezw(void *args, void *logic);
|
||||
extern void ov_3ph_zezw_100hz(void *args, void *logic);
|
||||
extern int ov_3ph_zezw_initlog(void *arguments, void *logic);
|
||||
|
||||
#endif /* OV_3PH_ZEZW_H_ */
|
||||
Reference in New Issue
Block a user