New VARH einbinden + Code verschönern,syntax check
This commit is contained in:
@ -133,7 +133,7 @@ LOCAL CONST osEventFlagsAttr_t stEventAttribute =
|
||||
// Description: Definition of local functions (visible by this module only).
|
||||
//=================================================================================================
|
||||
|
||||
PRIVATE VOID PECO_vTask( PVOID arg );
|
||||
PRIVATE VOID vTask( PVOID arg );
|
||||
BOOL boSetPeltierVoltage( FLOAT Voltage );
|
||||
PRIVATE VOID vEventCallback( PVOID pvData );
|
||||
|
||||
@ -165,9 +165,9 @@ BOOL PECO_boInitializeModule( VOID )
|
||||
{
|
||||
BOOL boOK = TRUE;
|
||||
|
||||
boOK &= ((m_pstThreadID = osThreadNew( PECO_vTask, NULL, &stTaskAttribute )) == NULL ) ? FALSE : TRUE;
|
||||
boOK &= ((m_pstEventID = osEventFlagsNew( &stEventAttribute )) == NULL) ? FALSE : TRUE;
|
||||
boOK &= (m_pstUpdateTimer = osTimerNew( vEventCallback, osTimerPeriodic, (PVOID)EVENT_TIMER_UPDATE, &stTimerAttribute )) == NULL ? FALSE : TRUE;
|
||||
boOK &= ( ( m_pstThreadID = osThreadNew( vTask, NULL, &stTaskAttribute ) ) == NULL ) ? FALSE : TRUE;
|
||||
boOK &= ( ( m_pstEventID = osEventFlagsNew( &stEventAttribute ) ) == NULL) ? FALSE : TRUE;
|
||||
boOK &= ( m_pstUpdateTimer = osTimerNew( vEventCallback, osTimerPeriodic, (PVOID)EVENT_TIMER_UPDATE, &stTimerAttribute ) ) == NULL ? FALSE : TRUE;
|
||||
|
||||
boSetPeltierVoltage(0);
|
||||
|
||||
@ -218,12 +218,12 @@ BOOL PECO_isEnabled( VOID ){
|
||||
//=================================================================================================
|
||||
|
||||
//-------------------------------------------------------------------------------------------------
|
||||
// Function: PECO_vTask
|
||||
// Description: PECO_vTask
|
||||
// Function: vTask
|
||||
// Description: Task
|
||||
// Parameters: None
|
||||
// Returns: None
|
||||
//-------------------------------------------------------------------------------------------------
|
||||
VOID PECO_vTask( PVOID arg )
|
||||
VOID vTask( PVOID arg )
|
||||
{
|
||||
|
||||
UNUSED( arg );
|
||||
@ -241,21 +241,21 @@ VOID PECO_vTask( PVOID arg )
|
||||
if( u32Flags & EVENT_TIMER_UPDATE )
|
||||
{
|
||||
|
||||
if (VARH_uGetVariableData(VARH_eMode).u32Val == PECO_eConstTemp)
|
||||
if ( VARH_u32GetVariableData( VARH_eMode ) == PECO_eConstTemp )
|
||||
{
|
||||
// TODO: check the measurements, everything ok?
|
||||
|
||||
|
||||
// PID Regelung
|
||||
|
||||
FLOAT kp = VARH_uGetVariableData(VARH_ePID_kp).flVal;
|
||||
FLOAT ki = VARH_uGetVariableData(VARH_ePID_ki).flVal;
|
||||
FLOAT kd = VARH_uGetVariableData(VARH_ePID_kd).flVal;
|
||||
FLOAT max = VARH_uGetVariableData(VARH_ePID_Max).flVal;
|
||||
FLOAT min = VARH_uGetVariableData(VARH_ePID_Min).flVal;
|
||||
FLOAT kp = VARH_flGetVariableData( VARH_ePID_kp );
|
||||
FLOAT ki = VARH_flGetVariableData( VARH_ePID_ki );
|
||||
FLOAT kd = VARH_flGetVariableData( VARH_ePID_kd );
|
||||
FLOAT max = VARH_flGetVariableData( VARH_ePID_Max );
|
||||
FLOAT min = VARH_flGetVariableData( VARH_ePID_Min );
|
||||
|
||||
FLOAT Tnow = VARH_uGetVariableData(VARH_eTemp_C).flVal;
|
||||
FLOAT Tset = VARH_uGetVariableData(VARH_ePID_Temp).flVal;
|
||||
FLOAT Tnow = VARH_flGetVariableData( VARH_eTemp_C );
|
||||
FLOAT Tset = VARH_flGetVariableData( VARH_ePID_Temp );
|
||||
|
||||
// -error
|
||||
FLOAT error = Tnow - Tset;
|
||||
@ -268,24 +268,24 @@ VOID PECO_vTask( PVOID arg )
|
||||
FLOAT I = ki * integral;
|
||||
|
||||
// derivative term
|
||||
FLOAT D = kd * (error - last_error) / dT;
|
||||
FLOAT D = kd * ( error - last_error ) / dT;
|
||||
last_error = error;
|
||||
|
||||
// total
|
||||
FLOAT output = P + I + D;
|
||||
|
||||
// limitter
|
||||
if (output > max){
|
||||
if ( output > max ){
|
||||
output = max;
|
||||
} else if (output < min){
|
||||
} else if ( output < min ){
|
||||
output = min;
|
||||
}
|
||||
|
||||
boSetPeltierVoltage(output); // set the output
|
||||
boSetPeltierVoltage( output ); // set the output
|
||||
|
||||
} else if (VARH_uGetVariableData(VARH_eMode).u32Val == PECO_eConst_Voltage)
|
||||
} else if ( VARH_u32GetVariableData( VARH_eMode ) == PECO_eConst_Voltage )
|
||||
{
|
||||
boSetPeltierVoltage(VARH_uGetVariableData(VARH_eControlVoltage).flVal); // set the output
|
||||
boSetPeltierVoltage( VARH_flGetVariableData( VARH_eControlVoltage ) ); // set the output
|
||||
}
|
||||
|
||||
}
|
||||
@ -307,7 +307,7 @@ BOOL boSetPeltierVoltage( FLOAT Voltage ){
|
||||
if( Voltage > 12 ) Voltage = 12;
|
||||
if( Voltage < -3 ) Voltage = -3;
|
||||
|
||||
ANPO_boSetVoltage( (((FLOAT)Voltage) + 20.088) / 34.103 );
|
||||
ANPO_boSetVoltage( ( ( (FLOAT)Voltage ) + 20.088) / 34.103 );
|
||||
|
||||
return( boOK );
|
||||
}
|
||||
|
Reference in New Issue
Block a user