/* * params_alg.h * * Created on: 26 июн. 2020 г. * Author: Yura */ #ifndef SRC_MAIN_PARAMS_ALG_H_ #define SRC_MAIN_PARAMS_ALG_H_ // разпрет расчета км на слейве, берем с мастера #define DISABLE_CALC_KM_ON_SLAVE 0//1 #define DISABLE_WORK_BREAK 0 // запрнтить работу с тормозными #define SENSOR_ALG_22220 1 #define SENSOR_ALG_23550 2 #define SENSOR_ALG SENSOR_ALG_22220 //#define SENSOR_ALG SENSOR_ALG_23550 #define NOMINAL_U_ZARYAD 2520 // Задание напряжения заряда ЗПТ #define NOMINAL_U_BREAK_LEVEL 2580 // начало работы тормозных + IQ_DELTA_U_START_RECUP=100V #define NOMINAL_SET_IZAD 910 // ток от поста #define NOMINAL_SET_K_U_DISBALANCE 40//20 // Задание К напряжения дисбаланса коэф. обратной связи по дисбалансу, надо >0 чтоб работал алгоритм #define NOMINAL_SET_LIMIT_POWER 6300 // запас мощность от поста /////////////////////////////////////////////////////////////// #define U_D_MAX_ERROR_GLOBAL IQ_I_U_VALUE_PLUS_2850 //U_D_MAX_ERROR_GLOBAL_2850 #define MAX_U_PROC_SMALL 2.5 //1.4 #define MAX_U_PROC 1.1 //1.11 //1.4 #define MIN_U_PROC 0.8 //0.7 #define ADD_U_MAX_GLOBAL 200.0 //V Насколько поднимаем уставку GLOBAL относительно ZadanieU_Charge #define ADD_U_MAX_GLOBAL_SMALL 500.0 //V Насколько поднимаем уставку GLOBAL относительно ZadanieU_Charge #define LEVEL_DETECT_U_SMALL 1000.0 //V Насколько поднимаем уставку GLOBAL относительно ZadanieU_Charge #define KOEF_IM_ON_TORMOG 0.65// 0.75 // на сколько уменьшать возможную мощность при торможении #define KOEF_IM_ON_TORMOG_WITH_MAX_TEMPER_BREAK 0.1// с перегревом томозных на сколько уменьшать возможную мощность при торможении /////////////////////////////////////////////////////////////// #define MZZ_ADD_1 0.5 // 0.25 //0.5 интенсивнось набора момента за 1 мсек #define MZZ_ADD_2 0.15 ///0.1 //0.05 //0.1 интенсивнось набора момента за 1 мсек #define MZZ_ADD_3 0.25 //0.05 ///0.1 //0.05 //0.1 интенсивнось набора момента за 1 мсек #define FZAD_ADD_MAX 0.08 //0.005 //0.08 интенсивнось набора fzad за 1 мсек #define FZAD_DEC 0.0004 //интенсивнось спада fzad за 1 мсек #define POWERZAD_ADD_MAX 0.08 //0.005 //0.08 интенсивнось набора fzad за 1 мсек #define POWERZAD_DEC 0.0004 //интенсивнось спада fzad за 1 мсек #define POLUS 6 //6 // число пар полюсов #define BPSI_NORMAL 0.22 //0.3 // скольжение константа #define BPSI_MAXIMAL 0.35 //0.3 // скольжение константа #define BPSI_MINIMAL 0.05 //0.3 // скольжение константа #define PROVOROT_F_HZ 0.2 // проворот #define PROVOROT_OBOROTS 10 // проворот #define ADD_KP_DF (1000.0/NORMA_MZZ)//(500.0/NORMA_MZZ)//(50.0/NORMA_MZZ) #define ADD_KI_DF (2000.0/NORMA_MZZ)//(1000.0/NORMA_MZZ)//(100.0/NORMA_MZZ) #define ADD_KP_DPOWER (1000.0/NORMA_MZZ)//(500.0/NORMA_MZZ)//(50.0/NORMA_MZZ) #define ADD_KI_DPOWER (2000.0/NORMA_MZZ)//(1000.0/NORMA_MZZ)//(100.0/NORMA_MZZ) #define MIN_MZZ_FOR_DF 210 #define MIN_MZZ_FOR_DPOWER 210 //////////////////// #define PID_KP_IM 0.036 //0.018 //0.0013// 0.018 //0.036 //0.018 //0.18 //0.095 // PID Kp #define PID_KI_IM 0.32 // 0.16 //0.32 //0.16 //0.08//0.8//0.025 //0.08 // PID Ki #define PID_KD_IM 0.0000 //*100 // PID Kd #define PID_KC_IM 0.09 // PID Kc #define PID_KP_F 12.0//6.0//12.0 //6.0 //18 //12//6//26//12 //40 //20 //12 //20 //60.0 //20.0 //0.095 // PID Kp #define PID_KI_F 0.00020 //0.00010 // 0.008 // PID Ki //#define PID_KI_F 0.00030 //0.00010 // 0.008 // PID Ki #define PID_KD_F 0.000 //*100 PID Kd #define PID_KC_F 0.00005//0.005 // PID Kc //#define PID_KC_F 0.000 // PID Kc #define PID_KP_POWER 9//3//26//12 //40 //20 //12 //20 //60.0 //20.0 //0.095 // PID Kp //#define PID_KI_F 0.00020 //0.00010 // 0.008 // PID Ki #define PID_KI_POWER 0.00030 //0.00010 // 0.008 // PID Ki #define PID_KD_POWER 0.000 //*100 PID Kd #define PID_KC_POWER 0.0001 // PID Kc /////////////////// // макс. k ограничено электроникой #define K_STATOR_MAX 0.93 // 0.91 // для DEF_PERIOD_MIN_MKS = 60 мкс #define K_STATOR_MIN 0.020 // 0.91 // для DEF_PERIOD_MIN_MKS = 60 мкс //#define K_STATOR_MAX 0.89 //для DEF_PERIOD_MIN_MKS = 80 мкс #define MAX_ZADANIE_I_VOZBUD 200.0 // A #define MAX_ZADANIE_U_CHARGE 2800.0//1500.0 //V //#define MAX_ZADANIE_F_ROTOR 70 #define MAX_ZADANIE_OBOROTS_ROTOR 230.0 //340 //240 1000 //260.0 // +/- ob/min #define MIN_ZADANIE_OBOROTS_ROTOR -230.0 //-180.0 //-230.0 // 1000 //260.0 // +/- ob/min #define MAX_1_ZADANIE_OBOROTS_ROTOR 120.0 //340 //240 1000 //260.0 // +/- ob/min #define MIN_1_ZADANIE_OBOROTS_ROTOR -90.0 //-230.0 // 1000 //260.0 // +/- ob/min #define DEAD_ZONE_ZADANIE_OBOROTS_ROTOR 10.0 #define MAX_ZADANIE_I_M 950.0// 1000.0 //750.0 // A #define MAX_ZADANIE_POWER 6300.0 // kWt #define MIN_ZADANIE_POWER -6300.0 // kWt #define MAX_1_ZADANIE_POWER 3000.0 // kWt #define MIN_1_ZADANIE_POWER -3000.0 // kWt #define SUPER_MAX_ZADANIE_LIMIT_POWER 6500.0 // kWt #define MAX_ZADANIE_LIMIT_POWER 6300.0 // kWt #define MAX_1_ZADANIE_LIMIT_POWER 2000.0 // kWt #define MIN_ZADANIE_LIMIT_POWER 100.0 // kWt #define MIN_ZADANIE_LIMIT_POWER_FROM_SVU 50.0 // kWt #define POWER_ZAPAS_FOR_UOM 5 //50 // доп запас для УОМ #define DEAD_ZONE_ZADANIE_POWER 50.0 // kWt #define DEAD_ZONE_ZADANIE_LIMIT_POWER 50.0 // kWt #define MAX_ZADANIE_K_M K_STATOR_MAX // A #define MAX_ZADANIE_F 30.0 // Hz #define MIN_ZADANIE_F -30.0 //60.0 // Hz #define MAX_ZADANIE_K_U_DISBALANCE 2.0 //1.0 // k #define MAX_ZADANIE_KPLUS_U_DISBALANCE 1.0 // k #define T_NARAST_ZADANIE_F 5.0 // sec #define T_NARAST_ZADANIE_OBOROTS_ROTOR 80.0 //20.0 //30.0 //15.0 // sec #define T1_NARAST_ZADANIE_OBOROTS_ROTOR_PLUS 80.0 //20.0 //30.0 //15.0 // sec #define T1_NARAST_ZADANIE_OBOROTS_ROTOR_MINUS 40.0 //20.0 //30.0 //15.0 // sec #define T2_NARAST_ZADANIE_OBOROTS_ROTOR_PLUS 80.0 //160.0 //20.0 //30.0 //15.0 // sec #define T2_NARAST_ZADANIE_OBOROTS_ROTOR_MINUS 40.0 //20.0 //30.0 //15.0 // sec #define T_SLOW_NARAST_ZADANIE_OBOROTS_ROTOR_PLUS 600.0 //160.0 //20.0 //30.0 //15.0 // sec #define T_SLOW_NARAST_ZADANIE_OBOROTS_ROTOR_MINUS 600.0 //20.0 //30.0 //15.0 // sec #define T_NARAST_ZADANIE_K_M 15.0 // sec #define T_NARAST_ZADANIE_I_M 15.0 // sec #define T1_NARAST_ZADANIE_POWER_PLUS 80.0 //30.0 // sec #define T1_NARAST_ZADANIE_POWER_MINUS 30.0 //30.0 // sec #define T2_NARAST_ZADANIE_POWER_PLUS 80.0 //30.0 // sec #define T2_NARAST_ZADANIE_POWER_MINUS 30.0 //30.0 // sec #define T_NARAST_ZADANIE_LIMIT_POWER 5.0 //30.0 // sec #define T1_NARAST_ZADANIE_LIMIT_POWER_PLUS 30.0 //30.0 // sec #define T1_NARAST_ZADANIE_LIMIT_POWER_MINUS 5.0 //30.0 // sec #define T2_NARAST_ZADANIE_LIMIT_POWER_PLUS 80.0 //30.0 // sec #define T2_NARAST_ZADANIE_LIMIT_POWER_MINUS 5.0 //30.0 // sec #define T_NARAST_ZADANIE_U_CHARGE 2.0 // sec #define T_NARAST_ZADANIE_K_U_DISBALANCE 15.0 // sec #define T_NARAST_ZADANIE_KPLUS_U_DISBALANCE 15.0 // sec #define T_NARAST_ZADANIE_IMITATION_OBOROTS_ROTOR 30.0 // sec #define ENABLE_DECR_MZZ_POWER_IZAD 1 // запас мощности при задании мощности от СВУ #define POWER_AIN_100KW 186413 #define DELTA_LEVEL_POWER_AIN_DECR_MZZ_DEF (3*POWER_AIN_100KW) // 300 kW // 559240 //300 кВт//186413 //100kW // iqP = P (W) /3000/3000 * 2^24 // #define MIN_DELTA_LEVEL_POWER_AIN_DECR_MZZ_DEF (5*POWER_AIN_100KW) // 500 kW #define SMEWENIE_LEVEL_POWER_AIN_DECR_MZZ_DEF 0 //(1*POWER_AIN_100KW) // 100 kW // меняется от 1 - полный размах до 0 - нет ограничения #define MAX_KOEF_OGRAN_POWER_LIMIT CONST_IQ_05 // 0.5 #define EXP_FILTER_KOEF_OGRAN_POWER_LIMIT 4.40//2.22 // в секундах #endif /* SRC_MAIN_PARAMS_ALG_H_ */