Uploaded image for project: 'Data Management'
  1. Data Management
  2. DM-38333

Configure weather station ESS instance

    XMLWordPrintable

    Details

    • Type: Story
    • Status: Done
    • Resolution: Done
    • Fix Version/s: None
    • Component/s: None
    • Labels:
    • Story Points:
      3
    • Sprint:
      TSSW Sprint - Mar 13 - Mar 27
    • Team:
      Telescope and Site
    • Urgent?:
      No

      Description

      Configure a new ESS instance to read the Young weather station. Use index 301 (the first in a new range for external sensors).

        Attachments

          Issue Links

            Activity

            Hide
            rowen Russell Owen added a comment - - edited

            Notes:

            • The weather station does not yet have a rain gauge, but it has all the other supported sensors. Thus no sensor name or scale for rain.
            • It is configured to output data at 2 Hz. I set the configuration to report air flow every 20 samples, so every 10 seconds, and temperature every 60 samples, so every 30 seconds.
            • The scales and offsets are those expected for our sensors (as documented in the schema).
            • Once we attach a rain gauge we will have data at 15 Hz (I'll have to study the manual to be sure, but that's what's listed in table 3-1: ASCII format (no precip) is output at 2 Hz, and PRECIPITATION (ASCII with rain gauge) is output at 15 Hz. No big deal, if true (though surprising to me: tipping bucket rain gauges do not respond quickly!). But it means the number of samples should be increased when we make the switch.

            Other issues:

            • I found and fixed two bugs in Young32400WeatherStationDataClient and the same bugs (presumably copied) in SiglentSSA3000xSpectrumAnalyzerDataClient. This suggests are unit tests could be improved! I originally went with hard-coded data to make it easier to specify and predict the data. But a mock ethernet server would exercise the code that was broken. I filed DM-38341 for that work.
            • Young32400WeatherStationDataClient needs to report dew point. Fixed on this ticket.
            • In order to fix that, I wanted dew point computation from ts_ess_common, which was a static method on Hx85baSensor in ts_ess_common. I made it a free function.
            • If the data client times out the CSC stays in enabled mode. We should think about ways to improve this, preferably in a way that works for all data clients. I filed DM-38344 to fix that.

            ESS 301 is running on azar02 and seems to be working. Wouter van Reeven please shut that instance down and deploy on Kubernetes when you have time (preferably after this code has been merged and tagged).

            Pull request:

            Show
            rowen Russell Owen added a comment - - edited Notes: The weather station does not yet have a rain gauge, but it has all the other supported sensors. Thus no sensor name or scale for rain. It is configured to output data at 2 Hz. I set the configuration to report air flow every 20 samples, so every 10 seconds, and temperature every 60 samples, so every 30 seconds. The scales and offsets are those expected for our sensors (as documented in the schema). Once we attach a rain gauge we will have data at 15 Hz (I'll have to study the manual to be sure, but that's what's listed in table 3-1: ASCII format (no precip) is output at 2 Hz, and PRECIPITATION (ASCII with rain gauge) is output at 15 Hz. No big deal, if true (though surprising to me: tipping bucket rain gauges do not respond quickly!). But it means the number of samples should be increased when we make the switch. Other issues: I found and fixed two bugs in Young32400WeatherStationDataClient and the same bugs (presumably copied) in SiglentSSA3000xSpectrumAnalyzerDataClient. This suggests are unit tests could be improved! I originally went with hard-coded data to make it easier to specify and predict the data. But a mock ethernet server would exercise the code that was broken. I filed DM-38341 for that work. Young32400WeatherStationDataClient needs to report dew point. Fixed on this ticket. In order to fix that, I wanted dew point computation from ts_ess_common, which was a static method on Hx85baSensor in ts_ess_common. I made it a free function. If the data client times out the CSC stays in enabled mode. We should think about ways to improve this, preferably in a way that works for all data clients. I filed DM-38344 to fix that. ESS 301 is running on azar02 and seems to be working. Wouter van Reeven please shut that instance down and deploy on Kubernetes when you have time (preferably after this code has been merged and tagged). Pull request: https://github.com/lsst-ts/ts_config_ocs/pull/158 https://github.com/lsst-ts/ts_ess_common/pull/31 https://github.com/lsst-ts/ts_ess_csc/pull/86
            Hide
            wvreeven Wouter van Reeven added a comment -

            Reviewed on GitHub. Thanks for all the useful additions and code improvements.

            Show
            wvreeven Wouter van Reeven added a comment - Reviewed on GitHub. Thanks for all the useful additions and code improvements.
            Hide
            rowen Russell Owen added a comment -

            Tagged:

            • ts_config_ocs v0.23.5
            • ts_ess_common v0.12.0
            • ts_ess_csc v0.15.0
            Show
            rowen Russell Owen added a comment - Tagged: ts_config_ocs v0.23.5 ts_ess_common v0.12.0 ts_ess_csc v0.15.0

              People

              Assignee:
              rowen Russell Owen
              Reporter:
              rowen Russell Owen
              Reviewers:
              Wouter van Reeven
              Watchers:
              Brian Stalder, Russell Owen, Wouter van Reeven
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Jenkins

                  No builds found.