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

#include <SSILCs.h>

Public Member Functions

 SSILCs (PositionController *positionController, ForceActuatorApplicationSettings *forceActuatorApplicationSettings, HardpointActuatorApplicationSettings *hardpointActuatorApplicationSettings, HardpointMonitorApplicationSettings *hardpointMonitorApplicationSettings, SafetyController *safetyController)
 
void buildBusLists ()
 (Re)-build all bus lists.
 
void writeCalibrationDataBuffer ()
 
void writeSetADCScanRateBuffer ()
 
void writeSetBoostValveDCAGainBuffer ()
 
void writeResetBuffer ()
 
void writeReportServerIDBuffer ()
 
void writeReportServerStatusBuffer ()
 
void writeReportADCScanRateBuffer ()
 
void writeReadCalibrationDataBuffer ()
 
void writeReadBoostValveDCAGainBuffer ()
 
void writeReportDCAIDBuffer ()
 
void writeReportDCAStatusBuffer ()
 
void writeSetModeDisableBuffer ()
 
void writeSetModeEnableBuffer ()
 
void writeSetModeStandbyBuffer ()
 
void writeSetModeClearFaultsBuffer ()
 
void writeFreezeSensorListBuffer ()
 
void writeRaisedListBuffer ()
 Called in enabled state (parked, raised,..).
 
void writeActiveListBuffer ()
 Called in enabled state (parked, raised,..).
 
void writeControlListBuffer ()
 Called in enabled state.
 
void triggerModbus ()
 
void waitForAllSubnets (bool realtime_loop)
 Wait for Modbus IRQs.
 
void read (uint8_t subnet)
 
void readAll ()
 
void flush (uint8_t subnet)
 
void flushAll ()
 
void calculateHPPostion ()
 
void calculateHPMirrorForces ()
 
void calculateFAMirrorForces ()
 
void clearResponses ()
 
void verifyResponses ()
 
void publishForceActuatorInfo ()
 
void publishForceActuatorStatus ()
 
void publishHardpointActuatorInfo ()
 
void publishHardpointStatus ()
 
void publishHardpointData ()
 
void publishHardpointMonitorInfo ()
 
void publishHardpointMonitorStatus ()
 
void publishHardpointMonitorData ()
 
void disableFA (uint32_t actuatorId)
 Disable given FA.
 
void enableFA (uint32_t actuatorId)
 Enables given FA.
 
void enableAllFA ()
 Enables all force actuators.
 
bool isDisabled (uint32_t actuatorId)
 Check if given actuator is disabled.
 
uint32_t hasDisabledFarNeighbor (uint32_t actuatorIndex)
 Check if any far neighbor of an actuator with given index is disabled.
 

Detailed Description

The SSILCs class used to communicate with the M1M3's 5 subnets. Uses BusList subclasses to send queries to FPGA.

See also
BusList

Member Function Documentation

◆ disableFA()

void SSILCs::disableFA ( uint32_t actuatorId)

Disable given FA.

Parameters
actuatorIdactutor ID (101..443) to disable
Here is the call graph for this function:

◆ enableFA()

void SSILCs::enableFA ( uint32_t actuatorId)

Enables given FA.

Parameters
actuatorIdactuator ID (101..443) to enable
Here is the call graph for this function:

◆ hasDisabledFarNeighbor()

uint32_t SSILCs::hasDisabledFarNeighbor ( uint32_t actuatorIndex)

Check if any far neighbor of an actuator with given index is disabled.

Parameters
actuatorIndexactuator index (0-155) of FA to check
Returns
disabled actuator ID (101..) or 0 when no disabled actuator was found
Here is the call graph for this function:
Here is the caller graph for this function:

◆ isDisabled()

bool LSST::M1M3::SS::SSILCs::isDisabled ( uint32_t actuatorId)
inline

Check if given actuator is disabled.

Parameters
actuatorIdActuator ID (101..443)
Returns
true when given actuator is disabled, false otherwise
Here is the call graph for this function:
Here is the caller graph for this function:

◆ waitForAllSubnets()

void SSILCs::waitForAllSubnets ( bool realtime_loop)

Wait for Modbus IRQs.

Parameters
realtime_loopif true, realtime loop timeouts are used. When false, config timeouts are used.

◆ writeControlListBuffer()

void SSILCs::writeControlListBuffer ( )

Called in enabled state.

Calls once writeRaisedListBuffer and twice (to get more data) writeActiveListBuffer.

Here is the call graph for this function:

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