lsst.ts.ess.csc¶
Overview¶
The ESS Commandable SAL Component (CSC) reads various environmental sensors at the Vera C. Rubin Observatory, and publishes the resulting data in ESS telemetry topics. There will be at least one, and likely several, ESS CSC(s) running at Rubin Observatory.
User Guide¶
To run the ESS CSC:
run_ess_csc.py sal_index
Each sal_index
you specify must have a matching entry in the configuration you specify in the start
command, else the command will fail.
This command-line script supports --help
.
Configuration¶
Configuration files are stored in ts_config_ocs.
There should be one standard configuration file for each site. Each configuration file specifies configuration for all ESS SAL indices supported at that site. To run all ESS CSCs appropriate for a site, examine the configuration file and run one ESS CSC for each entry in it.
The ESS CSC uses “data clients” to communicate with environmental data servers and publish the telemetry, in order to flexibly handle different kinds of servers. Each data client class has its own configuration schema.
A CSC configuration file primarily contains of a list of sal_index: configuration for a data client.
There is presently one data client: RPiDataClient
.
More are planned, including a LabJack data client in ts_ess_labjack
.
Developer Guide¶
Data clients do most of the work for the CSC: reading and publishing environmental data. The CSC constructs the clients specified in the config file and runs them.
This package defines one data client: RPiDataClient
, which uses TCP/IP to communicate with Raspberry Pi 4 data servers.
The environmental sensors are connected to the Raspberry Pi 4 servers, and the servers are scattered around the observatory.
The Raspberry Pi 4 servers use code from ts_ess_controller.
The protocol used to communicate with Raspberry Pi 4 servers is described in RPi Communication Protocol:
This package and ts_ess_controller share common code in ts_ess_common.
Python API reference¶
lsst.ts.ess.csc Package¶
Functions¶
|
Compute the circular mean and circcular standard deviation of an array of angles in degrees. |
|
Compute the median and estimated standard deviation using quantiles. |
Classes¶
|
Accumulate air flow data from a 2-d anemometer. |
|
Accumulate air turbulence data from a 3-d anemometer. |
|
Get environmental data from sensors connected to an ESS Controller. |
|
Accumulate electric field data from a detector. |
|
Upper level Commandable SAL Component for the Environmental Sensors Support. |
|
Get lightning and electrical field strength data from a Raspberry Pi. |
|
Mock Young 32400 data server. |
|
Get environmental data from a Raspberry Pi with custom hat. |
|
Generate simulated raw data for the Young 32400 weather station. |
|
Get environmental data from Young 32400 weather station serial interface. |
Class Inheritance Diagram¶
Contributing¶
lsst.ts.ess.csc
is developed at https://github.com/lsst-ts/ts_ess_csc.
You can find Jira issues for this module using labels=ts_ess_csc.