Какие-то тесты и построение алгоритма. Но ничего прям интересного
This commit is contained in:
@@ -23,7 +23,7 @@
|
||||
#include "modbus_devid.h"
|
||||
|
||||
/* DEFINE DATA FOR MODBUS */
|
||||
MB_DataStructureTypeDef MB_DATA = {0};; ///< Coils & Registers
|
||||
MB_DataStructureTypeDef MB_DATA = {0}; ///< Coils & Registers
|
||||
MB_DataInternalTypeDef MB_INTERNAL;
|
||||
|
||||
/**
|
||||
|
||||
@@ -65,7 +65,7 @@
|
||||
//#define FILTER_MEDIAN_MAX_SIZE ///< Максимальный размер окна медианного фильтра (по умолчанию 5)
|
||||
//#define FILTER_AVERAGE_MAX_SIZE ///< Максимальный размер окна усредняющего фильтра (по умолчанию 8)
|
||||
//#define FILTER_POLY_MAX_ORDER ///< Максимальный порядок полинома (по умолчанию 4)
|
||||
|
||||
#define FILTERS_DISABLE_MOVING_AVERAGE
|
||||
/** GEN_CONFIG
|
||||
* @}
|
||||
*/
|
||||
@@ -96,9 +96,12 @@
|
||||
*/
|
||||
|
||||
|
||||
//#define BENCH_TIME_ENABLE ///< Включить бенч времени
|
||||
#define BENCH_TIME_MAX_CHANNELS 16 ///< Максимальное количество каналов измерения
|
||||
#define BENCH_TIME_ENABLE ///< Включить бенч времени
|
||||
#define BENCH_TIME_MAX_CHANNELS 5 ///< Максимальное количество каналов измерения
|
||||
|
||||
#define BT_ADC 0
|
||||
#define BT_PWM 1
|
||||
#define BT_SYSTICK 2
|
||||
/** GEN_CONFIG
|
||||
* @}
|
||||
*/
|
||||
@@ -133,7 +136,7 @@ extern float dbg[16];
|
||||
#define INCLUDE_TRACKERS_LIB ///< Подключить библиотеку с трекерами
|
||||
//#define INCLUDE_TRACE_LIB ///< Подключить библиотеку с трейсами
|
||||
#define INCLUDE_GENERAL_PERIPH_LIBS ///< Подключить библиотеку с периферией
|
||||
//#define INCLUDE_BENCH_TIME ///< Подключить библиотеку с бенчмарком времени
|
||||
#define INCLUDE_BENCH_TIME ///< Подключить библиотеку с бенчмарком времени
|
||||
#define INCLUDE_FILTERS ///< Подключить библиотеку с фильтрами
|
||||
|
||||
#endif //MATLAB
|
||||
|
||||
@@ -18,12 +18,12 @@
|
||||
#define assert_upp(_struct_) check_null_ptr_2(_struct_, (_struct_)->f.Initialized)
|
||||
|
||||
/* Дефайны для индексов */
|
||||
#define U_BA 0
|
||||
#define U_AC 1
|
||||
#define U_BC 2
|
||||
#define I_C 0
|
||||
#define I_A 1
|
||||
#define I_B 2
|
||||
#define U_BA 0
|
||||
#define U_AC 1
|
||||
#define U_BC 2
|
||||
#define I_C 0
|
||||
#define I_A 1
|
||||
#define I_B 2
|
||||
#define TEMP_1 0
|
||||
#define TEMP_2 1
|
||||
|
||||
@@ -34,6 +34,19 @@
|
||||
* @brief Дефолтные параметры для внешней памяти. Они применятся по команде или по ошибке
|
||||
* @{
|
||||
*/
|
||||
/* Параметри мониторинга сети */
|
||||
#define PM_EXP_ALPHA_COEF_DEFAULT 0.01
|
||||
|
||||
/* Номинальные параметры */
|
||||
#define NOM_PHASE_NUMB 3
|
||||
#define NOM_U_V_DEFAULT 690
|
||||
#define NOM_U_DEVIATION_PLUS_PERCENT_DEFAULT 6
|
||||
#define NOM_U_DEVIATION_MINUS_PERCENT_DEFAULT 10
|
||||
#define NOM_F_HZ_DEFAULT 50
|
||||
#define NOM_F_DEVIATION_PLUS_PERCENT_DEFAULT 5
|
||||
#define NOM_F_DEVIATION_MINUS_PERCENT_DEFAULT 5
|
||||
#define NOM_I_A_DEFAULT 5
|
||||
|
||||
/* Параметры ПУИ */
|
||||
#define PUI_Iref_PERCENT_DEFAULT 150
|
||||
#define PUI_Tnt_MS_DEFAULT 300
|
||||
@@ -52,8 +65,8 @@
|
||||
#define ADC_I_ZERO_DEFAULT 2048
|
||||
|
||||
/* Параметры определения перехода через ноль */
|
||||
#define ZERO_CROSS_HYSTERESIS_V_DEFAULT 10.0
|
||||
#define ZERO_CROSS_DEBOUNCE_10US_DEFAULT 2.5*100 // (2.5 * 100 = 2.5 мс)
|
||||
#define ZERO_CROSS_HYSTERESIS_PERCENT_DEFAULT 2.0
|
||||
#define ZERO_CROSS_DEBOUNCE_10US_DEFAULT 2*100 // (2.5 * 100 = 2.5 мс)
|
||||
|
||||
/* Параметры ШИМ для тиристоров */
|
||||
#define PWM_THYR_FREQUENCY_HZ_DEFAULT 20000
|
||||
@@ -70,11 +83,11 @@
|
||||
* @brief Параметры устанавливаемые на этапе компиляции. Без перепрошивки их не поменять
|
||||
* @{
|
||||
*/
|
||||
#define PM_U_NOM_V 690
|
||||
#define PM_I_NOM_V 5
|
||||
#define PM_F_NOM_HZ 50
|
||||
/* Периоды вызова всякого */
|
||||
#define PM_ADC_PERIOD_US 10 ///< Период опроса АЦП в мкс
|
||||
#define PM_SLOW_PERIOD_10US 50 ///< Период обновление медленных расчетов в 10мкс
|
||||
#define PM_TEMP_PERIOD_10US 5000 ///< Период обновление датчиков температуры в 10мкс
|
||||
|
||||
#define PM_ADC_PERIOD_MKS 10 ///< Период опроса АЦП в мкс
|
||||
/* Частоты таймеров в МГц*/
|
||||
#define ADC_TIM8_FREQ_MZH 180 ///< Частота тиков таймера АЦП
|
||||
#define PWM_TIM1_FREQ_MHZ 180 ///< Частота тиков таймера ШИМ (1-4 каналы)
|
||||
|
||||
@@ -29,7 +29,8 @@ typedef enum {
|
||||
WM_Not_Init = 0, ///< УПП не инициализирован
|
||||
WM_Ready = 1, ///< УПП в готовности
|
||||
WM_Running = 2, ///< УПП в работе, управляет тиристорами
|
||||
WM_Error = 3, ///< УПП в аварии
|
||||
WM_Done = 3, ///< УПП закончил свою работу
|
||||
WM_Error = 4, ///< УПП в аварии
|
||||
} UPP_WorkModeType_t;
|
||||
|
||||
/**
|
||||
@@ -147,7 +148,8 @@ typedef struct {
|
||||
* @brief Дефайны УПП которые используютяс исключительно внутри программы
|
||||
* @{
|
||||
*/
|
||||
#define ANGLE_PERIOD_MS (((float)1/(PM_F_NOM_HZ*2))*1000)
|
||||
#define ANGLE_PERIOD_MS(_freq_) (((float)1/(_freq_*2))*1000)
|
||||
|
||||
/**
|
||||
* @brief Состояния полуволны
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user