EIR-OPS-008: ADCS Mode Change
Objective
To set-up logging of ADCS data, change the ADCS Mode and apply an ADCS Mode timeout.
Introduction
Using this procedure, the Operator can change the operational mode of the ADCS. The procedure also contains details on how to set up an ADCS Mode timeout (which will revert the ADCS Mode to Stand-by after an operator-defined period of time has elapsed) and details how to enable/disable logging of ADCS data.
Procedure
This procedure contains the following three sections/sub-procedures which all must take place during a communication pass:
A. Enable/Disable the ADCS Logger
Important
You are about to send the first TC of this procedure - Have you completed the EIR-OPS-003: Start a Communication Pass procedure? A Communication Pass must be started prior to carrying out the operations planned for the pass. Don’t forget to open and set up the parameters/actions that will be used during the pass in MCS before the pass begins!
ADCS HK Data
A.1.
To enable/disable the logging of ADCS HK data first,
Getthecdh.logging.ADCSHKLogger_Flash.enabledparameter.
Note
A version of this logger, at the SCDB path cdh.logging.ADCSHKLogger_MRAM, also exists for logging identical data to MRAM. The same steps in this section can be followed to enable/disable this logger.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
No |
TM Details |
|
Data Expected from TC |
|
Data Size |
Boolean |
Data Info |
Enabled state of ADCS HK Logger |
Allowed Value(s) |
00 or 01 (Hex) |
Where…
|
ADCS HK Logger |
|---|---|
00 |
Disabled |
01 |
Enabled |
A.2.
If the parameter is not as desired,
Setthecdh.logging.ADCSHKLogger_Flash.enabledparameter to 00 (i.e. disabled) or 01 (i.e.enabled), as required.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
Yes |
Data Size |
Boolean |
Data Info |
Enable (01) or disable (00) logging |
Allowed Value(s) |
00 or 01 (Hex) |
TM Details |
|
Data Expected from TC |
No ( + ACK ) |
Important
The Logger component only enables/disables at the end of the periodic task associated with their ‘poll-and-log’ cycle. This is to prevent data getting lost due to a Logger getting disabled mid-cycle. Therefore, you may have to wait ~minute to see the impact of this TC.
A.3.
Confirm the
Setin the previous step with aGet(i.e. confirm the value was set successfully).
ADCS Debug Data
A.4.
Getthecdh.logging.ADCSDebugLogger.enabledparameterConfirm it is 0 (i.e. disabled).
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
No |
TM Details |
|
Data Expected from TC |
|
Data Size |
Boolean |
Data Info |
Enabled state of ADCS Debug Logger |
Allowed Value(s) |
0 - 1 |
Expected Value(s) |
0 (i.e. disabled) |
A.5.
Prior to enabling the Logger, we must first enable the ADCS High Resolution Sampler, which ensures the Logger has access to the most up-to-date ADCS data.
To do this,
Setthecdh.telemetry.ADCSHighResSampler.enabledparameter to 1 (i.e. enabled).
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
|
Data Size |
Boolean |
Data Info |
Enable (1) or disable (0) parameter sampling |
Allowed Value(s) |
0 - 1 |
Expected Value(s) |
1 (i. e. enable) |
TM Details |
|
Data Expected from TC |
No ( + ACK ) |
A.6.
Confirm the
Setin the previous step with aGet(i.e. confirm the value was set successfully).
A.7.
To now enable the Logger,
Setthecdh.logging.ADCSDebugLogger.enabledparameter to 1 (i.e. enable).
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
|
Data Size |
Boolean |
Data Info |
Enable (1) or disable (0) logging |
Allowed Value(s) |
0 - 1 |
Expected Value(s) |
1 (i.e. enable) |
TM Details |
|
Data Expected from TC |
No ( + ACK ) |
A.8.
Confirm the
Setin the previous step with aGet(i.e. confirm the value was set successfully).
B. Set-Up an ADCS Mode Timeout
Note
The TimeAction component is used to automatically trigger an on-board action (i.e. to Invoke an action or Set a parameter) after a user-defined period of time. In this procedure, the TimeAction component will be used to set the ADCS mode to stand-by after the user-defined time period has elapsed. This is a safety procedure to limit the amount of time the ADCS can activate the magnetorquers and to save on power consumption.
B.1.
Warning
If failsafe is the current boot image when following this procedure, the action argument should instead = 0 in this step.
To first ensure the TimeAction is ready for use,
Invokethecdh.scheduling.TimeAction.restartRelativeEntriesaction with the action argument = 1.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
|
Data Size |
1 byte |
Data Info |
The index of the relative entry to restart |
Allowed Value(s) |
0 - 255 (dec) |
Expected Value(s) |
1 |
TM Details |
|
Data Expected from TC |
No ( + ACK ) |
Note
The second entry of the cdh.scheduling.TimeAction component contains the ADCS Mode Timeout by default. This is the reason for setting the action argument, and later First row and Last row , = 1. However, this is only the case while a primary image is booted! 0 should instead be used if failsafe is booted.
B.2.
Warning
If failsafe is the current boot image when following this procedure, First row = Last row = 0 should instead be used in this step.
Getthecdh.scheduling.TimeAction.entryListPackedparameter withFirst row=Last row= 1.Take note of the last 4 bytes (i.e. the last 8 hex characters) of this parameter, which follow ‘04’ when viewed in hex format, for use in the next step.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
|
Data Size |
2 bytes, 2 bytes |
Data Info |
The first and last rows/indexes of the parameter to get |
Allowed Value(s) |
0 - 511, 0 - 511 (dec) |
Expected Value(s) |
1, 1 |
TM Details |
|
Data Expected from TC |
|
Data Size |
19 bytes |
Data Info |
The schedule entry list as packed records |
B.3.
Warning
If failsafe is the current boot image when following this procedure, First row = Last row = 0 should instead be used in this step.
If the 4 bytes noted in the previous step do not match the desired mode/state to be implement by the TimeAction (i.e. when the TimeAction times-out/triggers), edit these bytes in the data field of the
cdh.scheduling.TimeAction.entryListPackedparameter window andSetthe parameter withFirst row=Last row= 1.Else, skip ahead to Step B.5.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
|
Data Size |
2 bytes, 2 bytes, 19 bytes |
Data Info |
The first and last rows/indexes of the parameter to set + the desired |
Allowed Value(s) |
0 - 511, 0 - 511 (dec), many variation allowed (hex) |
Expected Value(s) |
1, 1, last 4 bytes = desired |
TM Details |
|
Data Expected from TC |
No ( + ACK ) |
B.4.
Confirm the
Setin the previous step with aGet(i.e. confirm the value was set successfully).
B.5.
Warning
If failsafe is the current boot image when following this procedure, First row = Last row = 0 should instead be used in this step.
Warning
The specific timeout duration should account for the power levels on the spacecraft, and should not exceed 900 seconds (15 minutes). If in doubt, the ADCS or Power Engineers should be contacted.
Setthecdh.scheduling.TimeAction.entryTimeparameter, withFirst row=Last row= 1, to the desired TimeAction time-out (in seconds).
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
|
Data Size |
2 bytes, 2 bytes, 4 bytes |
Data Info |
The first and last rows/indexes of the parameter to set + the desired |
Allowed Value(s) |
0 - 511, 0 - 511 (dec), 00000000 - FFFFFFFF (hex) |
Expected Value(s) |
1, 1, the desired TimeAction time-out (in seconds) (< 900) |
TM Details |
|
Data Expected from TC |
No ( + ACK ) |
B.6.
Confirm the
Setin the previous step with aGet(i.e. confirm the value was set successfully).
B.7.
Warning
If failsafe is the current boot image when following this procedure, First row = Last row = 0 should instead be used in this step.
Prior to enabling this TimeAction,
Getthecdh.scheduling.TimeAction.entryEnabledparameter, withFirst row=Last row= 1.Ensure that it is 0 (disabled).
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
|
Data Size |
2 bytes, 2 bytes |
Data Info |
The first and last rows/indexes of the parameter to get |
Allowed Value(s) |
0 - 511, 0 - 511 (dec) |
Expected Value(s) |
1, 1 |
TM Details |
|
Data Expected from TC |
|
Data Size |
boolean |
Data Info |
Whether the TimeAction entry is enabled (1) or disabled (0) |
Allowed Value(s) |
0 - 1 |
Expected Value(s) |
0 |
B.8.
Warning
If failsafe is the current boot image when following this procedure, First row = Last row = 0 should instead be used in this step.
Setthecdh.scheduling.TimeAction.entryEnabledparameter, withFirst row=Last row= 1, to 1 (i.e. enabled).
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
|
Data Size |
2 bytes, 2 bytes, boolean |
Data Info |
The first and last rows/indexes of the parameter to set + the desired |
Allowed Value(s) |
0 - 511, 0 - 511, 0 - 1 (dec) |
Expected Value(s) |
1, 1, 1 |
TM Details |
|
Data Expected from TC |
No ( + ACK ) |
B.9.
Confirm the
Setin the previous step with aGet(i.e. confirm the value was set successfully).
C. Change the ADCS Mode
C.1.
Getthe parameterplatform.ADCS.adcsModeStateto determine the current ADCS mode and state.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
No |
TM Details |
|
Data Expected from TC |
|
Data Size |
4 bytes |
Data Info |
The current mode (2 MSB) and state (2 LSB) of the ADCS |
Allowed Value(s) |
See tables below |
Where…
|
ADCS Mode |
|---|---|
0000 |
Standby (Default) |
0001 |
Detumble |
0002 |
Spin Stabilised |
5550 |
Test |
|
ADCS State |
|---|---|
0000 |
Nadir (Default) |
AAA8 |
Test |
C.2.
Setthe parameterplatform.ADCS.adcsModeStateto the desired mode/state (see mode/state options in the tables above).
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
|
Data Size |
4 bytes |
Data Info |
ADCS Mode and State to set |
Allowed Value(s) |
See tables in Step C.1. |
TM Details |
|
Data Expected from TC |
No ( + ACK ) |
C.3.
Confirm the
Setin the previous step with aGet(i.e. confirm the value was set successfully).
D. Power ON the FSS
D.1.
To power ON the FSS PDM,
Setthe parameterplatform.EPS.expectedSwitchStateswithFirst row=Last row= 7 to 1.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
Yes |
Data Size |
4 bytes, 4 bytes, boolean |
Data Info |
|
Allowed Value(s) |
0-9, 0-9, 0-1 |
Expected Value(s) |
7, 7, 1 |
TM Details |
|
Data Expected from TC |
No ( + ACK ) |
D.2.
Confirm the
Setin the previous step with aGet(i.e. confirm the value was set successfully).
E. Enable the ADCS Manager
E.1.
To enable the ADCS Manager,
Setthemission.ADCSManager.enabledparameter to 1.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
Yes |
Data Size |
Boolean |
Data Info |
State of the ADCS Manager |
Allowed Value(s) |
0 (disable), 1 (enable) |
Expected Value(s) |
1 |
TM Details |
|
Data Expected from TC |
No ( + ACK ) |
E.2.
Confirm the
Setin the previous step with aGet(i.e. confirm the value was set successfully).
END OF PROCEDURE