M1M3 Support System
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | List of all members
LSST::M1M3::SS::ThermalForceComponent Class Reference

Applies corrections for mirror cell temperature. More...

#include <ThermalForceComponent.h>

Inheritance diagram for LSST::M1M3::SS::ThermalForceComponent:
Inheritance graph
[legend]
Collaboration diagram for LSST::M1M3::SS::ThermalForceComponent:
Collaboration graph
[legend]

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.
 
- Public Member Functions inherited from LSST::M1M3::SS::ForceComponent
 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

- Protected Attributes inherited from LSST::M1M3::SS::ForceComponent
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
 

Detailed Description

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.

Member Function Documentation

◆ postEnableDisableActions()

void LSST::M1M3::SS::ThermalForceComponent::postEnableDisableActions ( )
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.

◆ postUpdateActions()

void LSST::M1M3::SS::ThermalForceComponent::postUpdateActions ( )
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.


The documentation for this class was generated from the following files: