M1M3 Support System
|
Applies corrections for mirror cell temperature. More...
#include <ThermalForceComponent.h>
Public Member Functions | |
ThermalForceComponent (ForceActuatorApplicationSettings *forceActuatorApplicationSettings) | |
void | applyThermalForces (float *x, float *y, float *z) |
void | applyThermalForcesByMirrorTemperature (float temperature) |
void | postEnableDisableActions () override |
Called after enable/disable changes. | |
![]() | |
ForceComponent (const char *name, ForceComponentSettings *forceComponentSettings) | |
Construct ForceComponent. | |
const char * | getName () |
Returns force component name. | |
bool | isInitialising () |
Returns true if the force component is being initialised. | |
bool | isEnabled () |
Returns true if the force component is enabled. | |
bool | isDisabling () |
Returns true if the force component is being disabled. | |
bool | isActive () |
Returns true if the force compoment is active - shall be calculated. | |
void | enable () |
Enable the force component. | |
void | disable () |
Disable the force component. | |
void | update () |
void | reset () |
Protected Member Functions | |
void | postUpdateActions () override |
Called after update to forces. | |
Additional Inherited Members | |
![]() | |
float | xCurrent [FA_X_COUNT] |
measured actuator current X force | |
float | yCurrent [FA_Y_COUNT] |
measured actuator current Y force | |
float | zCurrent [FA_Z_COUNT] |
measured actuator current Z force | |
float | xTarget [FA_X_COUNT] |
target actuator X force | |
float | yTarget [FA_Y_COUNT] |
target actuator Y force | |
float | zTarget [FA_Z_COUNT] |
target actuator Z force | |
float | xOffset [FA_X_COUNT] |
difference (error) between current and target X force | |
float | yOffset [FA_Y_COUNT] |
difference (error) between current and target Y force | |
float | zOffset [FA_Z_COUNT] |
difference (error) between current and target Z force | |
Applies corrections for mirror cell temperature.
Fifth degree polynomial fit is assumed between temperature and force offsets,
TODO this is currently undefined, with all coefficients equal to 0. Needs to be refined once real glass and thermal systems are operational.
|
overridevirtual |
Called after enable/disable changes.
Publish a state change for the component Pure virtual, needs to be overriden in children.
Implements LSST::M1M3::SS::ForceComponent.
|
overrideprotectedvirtual |
Called after update to forces.
Check for forces that need to be clipped. Update SAL. Pure virtual, needs to be overriden in children.
Implements LSST::M1M3::SS::ForceComponent.