sot / cheta

Cheta Telemetry Archive
https://sot.github.io/eng_archive
BSD 3-Clause "New" or "Revised" License
3 stars 4 forks source link

Use Telescope Bus 5 and Bus 6 state to calculate relevant derived thermal parameters #218

Closed matthewdahmer closed 3 years ago

matthewdahmer commented 3 years ago

Description

The heater zones within the Telescope Bus 5 and Bus 6 cannot be commanded if either of these busses are disabled, such as when the Telescope Bus 6 is disabled to turn off the stuck on Zone 50 heater. From what I can tell, the bilevel heater telemetry for these zones does not depend on bus state, but rather commanding from the OBC, so if a temperature were to drop below the heater set point within a zone in Bus 5 or Bus 6, the relevant bilevel MSID would likely falsely indicate the heater is ON.

This update uses the Telescope Bus 5 and Bus 6 state to correct any false Telescope Bus 5 or Bus 6 bilevel telemetry, including within Zone 50.

Testing

Functional testing

Local testing of functions (@matthewdahmer )

I completed some testing by redefining the DerivedParameterThermal and affected classes locally (in a notebook), and was able to confirm that the code functions as expected in this context, resulting in a drop in zone 50 power to zero when the Telescope Bus 6 is disabled.

Testing within update processing code on HEAD (@taldcroft)

After checking out this branch on HEAD:

cd ~/git/eng_archive
git fetch origin
git checkout zone_50_disable
mkdir data
python -m cheta.add_derived --start=2016:100 --stop=2016:105 --data-root=$PWD --content=dp_thermal
python -m cheta.update_archive --date-start=2016:100:00:00:00 --date-now=2016:100:04:00:00 \
    --data-root=$PWD --content=dp_thermal

This ran to completion with no errors, indicating that the derived parameter code updates are running. Functional testing that the values are correct was done with the local testing.

taldcroft commented 3 years ago

This will need at least some testing similar to standalone testing at the function level that you've done before. There should be an obvious change in the P50 (zone 50) value during the test intervals.

matthewdahmer commented 3 years ago

I completed some testing by redefining the DerivedParameterThermal and DP_P50 classes locally (in a notebook), and was able to confirm that the code functions as expected in this context, resulting in a drop in zone 50 power to zero when the Telescope Bus 6 is disabled.

matthewdahmer commented 3 years ago

There's another update I may tack on to this PR. The DP_HADG calculation in cheta is incorrect does not match what is in G_TREND24 and MAUDE, so I am generating an update to fix this.

matthewdahmer commented 3 years ago

@taldcroft The HADG fix has been posted, and passes my local test.

matthewdahmer commented 3 years ago

Thank You!