Developer Guide¶
The Hexapod CSC is implemented using ts_salobj and ts_hexrotcom.
API¶
The primary class is:
HexapodCsc
: the CSC.
lsst.ts.hexapod Package¶
Functions¶
check_negative_value (value, name, min_value) |
Check that a numeric value is in range min_value <= value < 0. |
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, and temperature. |
Config |
Hexapod configuration. |
ControllerConstants (sync_pattern, …) |
Constants needed to communicate with a hexapod controller. |
FourierSeries (coeffs) |
A real-valued Fourier series. |
FrameId |
Frame IDs for Camera and M2 hexapod telemetry and configuration. |
HexapodCommander (index, enable) |
Command the Hexapod CSC from the command line. |
HexapodCsc (index[, config_dir, …]) |
MT hexapod CSC. |
MockMTHexapodController (index, log[, host, …]) |
Mock MT hexapod controller that talks over TCP/IP. |
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 |
Hexapod telemetry. |
Build and Test¶
This is a pure python package. There is nothing to build except the documentation.
make_idl_files.py ATDome
setup -r .
pytest -v # to run tests
package-docs clean; package-docs build # to build the documentation
Contributing¶
lsst.ts.hexapod
is developed at https://github.com/lsst-ts/ts_hexapod.
You can find Jira issues for this module using labels=ts_hexapod..