Переход на оригинальную плату УПП

This commit is contained in:
2026-02-05 10:14:29 +03:00
parent 8ab06acfd2
commit 7c1062a6d9
7 changed files with 66 additions and 17 deletions

View File

@@ -22,9 +22,9 @@
* @{ * @{
*/ */
//#define UPP_DISABLE_ERROR_BLOCK ///< Отключить блокировку УПП при ошибках #define UPP_DISABLE_ERROR_BLOCK ///< Отключить блокировку УПП при ошибках
//#define UPP_SIMULATE_I ///< Симулировт токи (Iref/2) а не брать с АЦП //#define UPP_SIMULATE_I ///< Симулировт токи (Iref/2) а не брать с АЦП
#define UPP_DISABLE_PROTECT_BOARDPOWER ///< Отключить проверки питания плат (+24, +5 В) //#define UPP_DISABLE_PROTECT_BOARDPOWER ///< Отключить проверки питания плат (+24, +5 В)
//#define UPP_DISABLE_PROTECT_LOSS_PHASE ///< Отключить проверки на потерянные фазы //#define UPP_DISABLE_PROTECT_LOSS_PHASE ///< Отключить проверки на потерянные фазы
//#define ZC_DISABLE_HYSTERESIS_DEBOUNCE ///< Отключить гиситерезис и дребезг на определении перехода через ноль //#define ZC_DISABLE_HYSTERESIS_DEBOUNCE ///< Отключить гиситерезис и дребезг на определении перехода через ноль

View File

@@ -216,8 +216,7 @@ void PowerMonitor_FastCalc(PowerMonitor_t *hpm)
} }
} }
if(hpm->f.isI) Protect_Fast(&hpm->measured, u2f(PARAM_INTERNAL->pm.lImaxAmp, 100));
Protect_Fast(&hpm->measured, u2f(PARAM_INTERNAL->pm.lImaxAmp, 100));
/* Вообще фильтры должны рабтоать синхронно, но на всякий синхронизация */ /* Вообще фильтры должны рабтоать синхронно, но на всякий синхронизация */
//__SynchAvgFilters(hpm); //__SynchAvgFilters(hpm);

View File

@@ -107,8 +107,8 @@ int main(void)
MX_GPIO_Init(); MX_GPIO_Init();
MX_DMA_Init(); MX_DMA_Init();
MX_ADC3_Init(); MX_ADC3_Init();
MX_USART3_UART_Init(); MX_USART3_UART_Init();
MX_CAN1_Init(); //MX_CAN1_Init();
MX_IWDG_Init(); MX_IWDG_Init();
MX_TIM1_Init(); MX_TIM1_Init();
MX_TIM3_Init(); MX_TIM3_Init();

View File

@@ -75,11 +75,16 @@ int UPP_PreWhile(void)
dbg_polarity = 0; dbg_polarity = 0;
#endif #endif
UPP_DO.CEN(ENABLE); // UPP_DO.CEN(ENABLE);
MODBUS_SlaveStart(&hmodbus1, NULL); MODBUS_SlaveStart(&hmodbus1, NULL);
return 0; return 0;
} }
int test_cen = 0;
int test_err = 0;
int test_work = 0;
int test_ready = 0;
/** /**
* @brief Основной цикл УПП. * @brief Основной цикл УПП.
* @return 0 - если ОК, >1 если ошибка. * @return 0 - если ОК, >1 если ошибка.
@@ -107,17 +112,32 @@ int UPP_While(void)
razgon_done = 0; razgon_done = 0;
#endif #endif
// if(test_cen)
// UPP_DO.CEN(ENABLE);
// else
// UPP_DO.CEN(DISABLE);
//
// if(test_err)
// UPP_DO.Error(ENABLE);
// else
// UPP_DO.Error(DISABLE);
//
// if(test_work)
// UPP_DO.Work(ENABLE);
// else
// UPP_DO.Work(DISABLE);
//
// if(test_ready)
// UPP_DO.Ready(ENABLE);
// else
// UPP_DO.Ready(DISABLE);
// Обрабока ошибок и выставление итоговой Ошибки // Обрабока ошибок и выставление итоговой Ошибки
UPP_Errors_Handle(); UPP_Errors_Handle();
// Контроль парамеров // Контроль парамеров
UPP_Params_Control(); UPP_Params_Control();
#ifndef UPP_DISABLE_ERROR_BLOCK
// если ошибка вызываем СТОП
upp.call->stop = (errors.common != Err_None);
#endif
// Сброс на дефолтные по запросу // Сброс на дефолтные по запросу
if(upp.call->set_default_pui || upp.call->set_default_internal) if(upp.call->set_default_pui || upp.call->set_default_internal)
{ {
@@ -127,6 +147,11 @@ int UPP_While(void)
} }
#ifndef UPP_DISABLE_ERROR_BLOCK
// если ошибка вызываем СТОП
upp.call->stop = (errors.common != Err_None);
#endif
// Если СТОП - переходим в ошибку // Если СТОП - переходим в ошибку
if (upp.call->stop) if (upp.call->stop)
upp.workmode = UPP_Error; upp.workmode = UPP_Error;

View File

@@ -1,7 +1,7 @@
/** /**
****************************************************************************** ******************************************************************************
* @file upp_status.c * @file upp_status.c
* @brief Модуль определяющий состояние УПП * @brief Модуль определяющий состояние УПП (Input Регистры)
****************************************************************************** ******************************************************************************
* @details * @details
******************************************************************************/ ******************************************************************************/

View File

@@ -75,7 +75,7 @@
<OPTFL> <OPTFL>
<tvExp>1</tvExp> <tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<IsCurrentTarget>0</IsCurrentTarget> <IsCurrentTarget>1</IsCurrentTarget>
</OPTFL> </OPTFL>
<CpuCode>18</CpuCode> <CpuCode>18</CpuCode>
<DebugOpt> <DebugOpt>
@@ -135,7 +135,7 @@
<SetRegEntry> <SetRegEntry>
<Number>0</Number> <Number>0</Number>
<Key>JL2CM3</Key> <Key>JL2CM3</Key>
<Name>-U -O14 -S2 -ZTIFSpeedSel5000 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST0 -N00("ARM CoreSight JTAG-DP") -D00(4BA00477) -L00(4) -N01("Unknown JTAG device") -D01(06413041) -L01(5) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO7 -FD20000000 -FC1000 -FN1 -FF0STM32F4xx_1024.FLM -FS08000000 -FL0100000 -FP0($$Device:STM32F427ZGTx$CMSIS\Flash\STM32F4xx_1024.FLM)</Name> <Name>-U-O14 -O14 -S2 -ZTIFSpeedSel5000 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST0 -N00("ARM CoreSight JTAG-DP") -D00(4BA00477) -L00(4) -N01("Unknown JTAG device") -D01(790007A3) -L01(5) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO7 -FD20000000 -FC1000 -FN1 -FF0STM32F4xx_1024.FLM -FS08000000 -FL0100000 -FP0($$Device:STM32F427ZGTx$CMSIS\Flash\STM32F4xx_1024.FLM)</Name>
</SetRegEntry> </SetRegEntry>
<SetRegEntry> <SetRegEntry>
<Number>0</Number> <Number>0</Number>
@@ -155,13 +155,38 @@
<WinNumber>1</WinNumber> <WinNumber>1</WinNumber>
<ItemText>uwTick,0x0A</ItemText> <ItemText>uwTick,0x0A</ItemText>
</Ww> </Ww>
<Ww>
<count>1</count>
<WinNumber>1</WinNumber>
<ItemText>upp,0x0A</ItemText>
</Ww>
<Ww>
<count>2</count>
<WinNumber>1</WinNumber>
<ItemText>test_cen,0x0A</ItemText>
</Ww>
<Ww>
<count>3</count>
<WinNumber>1</WinNumber>
<ItemText>test_err,0x0A</ItemText>
</Ww>
<Ww>
<count>4</count>
<WinNumber>1</WinNumber>
<ItemText>test_work,0x0A</ItemText>
</Ww>
<Ww>
<count>5</count>
<WinNumber>1</WinNumber>
<ItemText>test_ready,0x0A</ItemText>
</Ww>
</WatchWindow1> </WatchWindow1>
<Tracepoint> <Tracepoint>
<THDelay>0</THDelay> <THDelay>0</THDelay>
</Tracepoint> </Tracepoint>
<DebugFlag> <DebugFlag>
<trace>0</trace> <trace>0</trace>
<periodic>0</periodic> <periodic>1</periodic>
<aLwin>1</aLwin> <aLwin>1</aLwin>
<aCover>0</aCover> <aCover>0</aCover>
<aSer1>0</aSer1> <aSer1>0</aSer1>
@@ -262,7 +287,7 @@
<OPTFL> <OPTFL>
<tvExp>1</tvExp> <tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<IsCurrentTarget>1</IsCurrentTarget> <IsCurrentTarget>0</IsCurrentTarget>
</OPTFL> </OPTFL>
<CpuCode>18</CpuCode> <CpuCode>18</CpuCode>
<DebugOpt> <DebugOpt>