Developer Guide¶
The MTHexapod CSC is implemented using ts_salobj and ts_hexrotcom.
API¶
The primary class is:
HexapodCsc
: the CSC.
lsst.ts.mthexapod Package¶
Functions¶
check_negative_value (value, name, min_value) |
Check that a numeric value is in range min_value <= value < 0. |
check_new_position_limits (limits, max_limits) |
Raise ExceptionClass if proposed new position limits are not with range of the maximum allowed position limits. |
check_position (position, limits[, …]) |
Raise ExceptionClass if a position is not within limits. |
check_positive_value (value, name, max_value) |
Check that a numeric value is in range 0 < value <= max_value. |
check_range (value, name, min_value, max_value) |
Check that a numeric value is range min_value <= value <= max_value. |
check_symmetrical_range (value, name, max_value) |
Check that a numeric value is in range -max_value <= value <= max_value. |
rot2d (xypos, ang) |
Rotate a 2-d position by the specified angle. |
rot_about_x (xyzpos, ang) |
Rotate a 3-d position about the x axis. |
rot_about_y (xyzpos, ang) |
Rotate a 3-d position about the y axis. |
rot_about_z (xyzpos, ang) |
Rotate a 3-d position about the z axis. |
Classes¶
CommandCode |
Values for the Command.code field. |
Compensation (*, elevation_coeffs, …) |
Compute hexapod compensation for elevation, azimuth, camera rotation, and temperature. |
CompensationInputs (elevation, azimuth, …) |
Input values for the compensation model. |
Config |
MTHexapod configuration. |
FourierSeries (coeffs) |
A real-valued Fourier series. |
HexapodCommander (index, enable) |
Command the MTHexapod CSC from the command line. |
HexapodCsc (index[, config_dir, …]) |
MTHexapod CSC. |
MockMTHexapodController (index, log[, host, …]) |
Mock MTHexapod controller that talks over TCP/IP. |
Position (x, y, z, u, v, w) |
The position and orientation of the hexapod pivot point. |
PositionLimits (maxXY, minZ, maxZ, maxUV, …) |
Position limits. |
RangedPolynomial (coeffs, min_x, max_x) |
A polynomial that is linear outside a specified range. |
SalIndex |
An enumeration. |
SetEnabledSubstateParam |
Substates for the ENABLED state. |
SimpleHexapod (base_positions, …) |
Simple model of a hexapod: 6 linear actuators in an arbitrary arrangement. |
Telemetry |
MTHexapod telemetry. |
Class Inheritance Diagram¶
Build and Test¶
This is a pure python package. There is nothing to build except the documentation.
make_idl_files.py MTHexapod
setup -r .
pytest -v # to run tests
package-docs clean; package-docs build # to build the documentation
Contributing¶
ts_mthexapod
is developed at https://github.com/lsst-ts/ts_mthexapod.
You can find Jira issues for this package using labels=ts_mthexapod..