Обновление
This commit is contained in:
parent
99e71c5e83
commit
56ef9cfdd7
|
|
@ -7,7 +7,7 @@
|
||||||
#include "HVAC_model.h"
|
#include "HVAC_model.h"
|
||||||
#include "LinActuatorWork.h"
|
#include "LinActuatorWork.h"
|
||||||
|
|
||||||
#include "ADC_Temp_Table.h"
|
#include "ADC_Temp.h"
|
||||||
|
|
||||||
|
|
||||||
const char LOG_TASK_ARB[] = "Arb";
|
const char LOG_TASK_ARB[] = "Arb";
|
||||||
|
|
@ -222,8 +222,10 @@ void LoadDataInFromModel(tMma *env) {
|
||||||
|
|
||||||
if (osMutexAcquire(env->ModelTask.access, 5000) == osOK) {
|
if (osMutexAcquire(env->ModelTask.access, 5000) == osOK) {
|
||||||
|
|
||||||
rtDW.ADC_Key_Data_Model.ST_ReservePower = GpioPinGet(&env->gpios->power.BTS4175SGAXUMA1_ReservePowerOutput.ST_ReservePower);
|
rtDW.ADC_Key_Data_Model.ST_ReservePower = GpioPinGet(
|
||||||
rtDW.ADC_Key_Data_Model.ST_BATTChiller = GpioPinGet(&env->gpios->power.BTS4175SGAXUMA1_ShutOFFValveBatteryChiller.ST_BATTChiller);
|
&env->gpios->power.BTS4175SGAXUMA1_ReservePowerOutput.ST_ReservePower);
|
||||||
|
rtDW.ADC_Key_Data_Model.ST_BATTChiller = GpioPinGet(
|
||||||
|
&env->gpios->power.BTS4175SGAXUMA1_ShutOFFValveBatteryChiller.ST_BATTChiller);
|
||||||
rtDW.ADC_Key_Data_Model.EmergencyAirCleanSwitch = GpioPinGet(&env->gpios->EmergencyAirCleanSwitch);
|
rtDW.ADC_Key_Data_Model.EmergencyAirCleanSwitch = GpioPinGet(&env->gpios->EmergencyAirCleanSwitch);
|
||||||
rtDW.ADC_Key_Data_Model.FireExtinguishSwitch = GpioPinGet(&env->gpios->FireExtinguishSwitch);
|
rtDW.ADC_Key_Data_Model.FireExtinguishSwitch = GpioPinGet(&env->gpios->FireExtinguishSwitch);
|
||||||
rtDW.ADC_Key_Data_Model.Ign_Wakeup = GpioPinGet(&env->gpios->Ign_Wakeup);
|
rtDW.ADC_Key_Data_Model.Ign_Wakeup = GpioPinGet(&env->gpios->Ign_Wakeup);
|
||||||
|
|
@ -247,16 +249,18 @@ void LoadDataInFromModel(tMma *env) {
|
||||||
|
|
||||||
|
|
||||||
rtDW.PWM_Set_Model.pwmPercentFront = env->pwms->pwmFrontCaptureIO.getPwm(env->pwms->pwmFrontCaptureIO.env);
|
rtDW.PWM_Set_Model.pwmPercentFront = env->pwms->pwmFrontCaptureIO.getPwm(env->pwms->pwmFrontCaptureIO.env);
|
||||||
rtDW.PWM_Set_Model.pwmPercentRear= env->pwms->pwmRearCaptureIO.getPwm(env->pwms->pwmRearCaptureIO.env);
|
rtDW.PWM_Set_Model.pwmPercentRear = env->pwms->pwmRearCaptureIO.getPwm(env->pwms->pwmRearCaptureIO.env);
|
||||||
rtDW.PWM_Set_Model.pwmPercentFrontReserved = env->pwms->pwmFrontCaptureIO.getPwm(env->pwms->pwmFrontReservedCaptureIO.env);
|
rtDW.PWM_Set_Model.pwmPercentFrontReserved = env->pwms->pwmFrontCaptureIO.getPwm(
|
||||||
rtDW.PWM_Set_Model.pwmPercentRearReserved= env->pwms->pwmRearCaptureIO.getPwm(env->pwms->pwmRearReservedCaptureIO.env);
|
env->pwms->pwmFrontReservedCaptureIO.env);
|
||||||
|
rtDW.PWM_Set_Model.pwmPercentRearReserved = env->pwms->pwmRearCaptureIO.getPwm(
|
||||||
|
env->pwms->pwmRearReservedCaptureIO.env);
|
||||||
|
|
||||||
|
|
||||||
env->pwms->pwmFrontIo.setActivePercent(env->pwms->pwmFrontIo.env, PWM_Get.pwmPercentFront);
|
env->pwms->pwmFrontIo.setActivePercent(env->pwms->pwmFrontIo.env, PWM_Get.pwmPercentFront);
|
||||||
env->pwms->pwmRearIo.setActivePercent(env->pwms->pwmRearIo.env, PWM_Get.pwmPercentRear);
|
env->pwms->pwmRearIo.setActivePercent(env->pwms->pwmRearIo.env, PWM_Get.pwmPercentRear);
|
||||||
env->pwms->pwmFrontReservedIo.setActivePercent(env->pwms->pwmFrontReservedIo.env, PWM_Get.pwmPercentFrontReserved);
|
env->pwms->pwmFrontReservedIo.setActivePercent(env->pwms->pwmFrontReservedIo.env,
|
||||||
env->pwms->pwmRearReservedIo.setActivePercent(env->pwms->pwmRearReservedIo.env, PWM_Get.pwmPercentRearReserved );
|
PWM_Get.pwmPercentFrontReserved);
|
||||||
|
env->pwms->pwmRearReservedIo.setActivePercent(env->pwms->pwmRearReservedIo.env, PWM_Get.pwmPercentRearReserved);
|
||||||
|
|
||||||
|
|
||||||
rtDW.t_now = GetSystemTick();
|
rtDW.t_now = GetSystemTick();
|
||||||
|
|
@ -280,7 +284,12 @@ static _Noreturn void Mma_Thread(tMma *env) {
|
||||||
// Запуск устройства
|
// Запуск устройства
|
||||||
Mma_InitStage(env);
|
Mma_InitStage(env);
|
||||||
|
|
||||||
init_fast_lookup_table(ALG_STEINHART);
|
// Инициализируем обе таблицы одновременно с разными значениями R1
|
||||||
|
init_both_tables(3000.0f, // R1 для KST45
|
||||||
|
3000.0f, // R1 для INCAR
|
||||||
|
ALG_STEINHART);
|
||||||
|
|
||||||
|
|
||||||
can_rx_message_type frame_data;
|
can_rx_message_type frame_data;
|
||||||
|
|
||||||
// uint32_t step = 0;
|
// uint32_t step = 0;
|
||||||
|
|
@ -312,6 +321,20 @@ static _Noreturn void Mma_Thread(tMma *env) {
|
||||||
|
|
||||||
for (;;) {
|
for (;;) {
|
||||||
|
|
||||||
|
if (osMutexAcquire(env->adcTask0.access, 1000) == osOK) {
|
||||||
|
uint16_t adc_value = env->adcTask0.ADC0_Data.Sensor_Front_Duct1;
|
||||||
|
|
||||||
|
//ANALOG_SENSOR(env, "Sensor_Front_Duct1", env->adcTask0.ADC0_Data.Sensor_Front_Duct1);
|
||||||
|
// Получаем температуру для INCAR
|
||||||
|
int16_t temp_incar = get_temperature_log_fast_for_table(adc_value, TABLE_INCAR);
|
||||||
|
|
||||||
|
LoggerFormatInfo(LOGGER, LOG_TASK_ARB, "Sensor_Front_Duct1: ADC = %u, Temp = %.2f °C", adc_value,
|
||||||
|
temp_incar / 10.0f)
|
||||||
|
|
||||||
|
|
||||||
|
osMutexRelease(env->adcTask0.access);
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
env->pwms->pwmFrontIo.setActivePercent(env->pwms->pwmFrontIo.env, 40);
|
env->pwms->pwmFrontIo.setActivePercent(env->pwms->pwmFrontIo.env, 40);
|
||||||
env->pwms->pwmRearIo.setActivePercent(env->pwms->pwmRearIo.env, 50);
|
env->pwms->pwmRearIo.setActivePercent(env->pwms->pwmRearIo.env, 50);
|
||||||
|
|
@ -334,7 +357,7 @@ static _Noreturn void Mma_Thread(tMma *env) {
|
||||||
uint8_t pwm4 = env->pwms->pwmRearCaptureIO.getPwm(env->pwms->pwmRearReservedCaptureIO.env);
|
uint8_t pwm4 = env->pwms->pwmRearCaptureIO.getPwm(env->pwms->pwmRearReservedCaptureIO.env);
|
||||||
LoggerFormatInfo(LOGGER, LOG_TASK_ARB, "PWM (Rear Reserve) = %d", pwm4)
|
LoggerFormatInfo(LOGGER, LOG_TASK_ARB, "PWM (Rear Reserve) = %d", pwm4)
|
||||||
*/
|
*/
|
||||||
|
/*
|
||||||
LoadDataInFromModel(env);
|
LoadDataInFromModel(env);
|
||||||
|
|
||||||
LinActuatorWork(env, &env->linTaskActuator1,
|
LinActuatorWork(env, &env->linTaskActuator1,
|
||||||
|
|
@ -354,7 +377,7 @@ static _Noreturn void Mma_Thread(tMma *env) {
|
||||||
&env->ModelTask.triggerActuatorCmdBus_3,
|
&env->ModelTask.triggerActuatorCmdBus_3,
|
||||||
&env->actuator_Ch2_Input_Model_local_3,
|
&env->actuator_Ch2_Input_Model_local_3,
|
||||||
&rtDW.Actuator_Ch2_Status_Model, &env->ModelTask.triggerCommand3, "Ln3 ");
|
&rtDW.Actuator_Ch2_Status_Model, &env->ModelTask.triggerCommand3, "Ln3 ");
|
||||||
|
*/
|
||||||
SystemDelayMs(50);
|
SystemDelayMs(50);
|
||||||
|
|
||||||
GpioPinToggle(&env->gpios->led.LED_G);
|
GpioPinToggle(&env->gpios->led.LED_G);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue