EIR-OPS-022: EMOD Configuration
Objective
To facilitate the Operator in configuring the EMOD experiment.
Introduction
This procedure will guide the Operator through the different parameters and actions that can be used to configure the EMOD experiment.
Procedure
This procedure contains a number of sub-procedures as follows:
Important
These sub-procedures have been grouped together in this procedure as they are all related to configuring parameters related to the EMOD experiment. However, each of the sub-procedures are standalone procedures that can be carried out individually to achieve the objectives/assess the settings stated in the sub-procedure titles (Sections B - C, however, do require that EMOD is powered ON as per Section A).
Note
A communication window is required for each of these sub-procedures.
A. Basic Settings
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!
A.1.
Getthe parameterplatform.EPS.actualSwitchStateswithFirst row=Last row= 9.If 1 is returned (i.e. EMOD is already ON), skip ahead to Step A.4.
Else, proceed to the next step.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
Yes |
Data Size |
2 bytes, 2 bytes |
Data Info |
|
Allowed Value(s) |
0-9, 0-9 (dec) |
Expected Value(s) |
9, 9 (dec) |
TM Details |
|
Data Expected from TC |
|
Data Size |
Boolean |
Data Info |
SwitchState = 0 (Off), SwitchState=1 (On) |
Allowed Value(s) |
0-1 |
A.2.
Invokethe actionplatform.EPS.turnOnEMOD.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
No |
TM Details |
|
Data Expected from TC |
No ( + ACK ) |
A.3.
Getthe parameterplatform.EPS.actualSwitchStateswithFirst row=Last row= 9.Ensure 1 is returned (i.e. EMOD is ON).
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
Yes |
Data Size |
2 bytes, 2 bytes |
Data Info |
|
Allowed Value(s) |
0-9, 0-9 (dec) |
Expected Value(s) |
9, 9 (dec) |
TM Details |
|
Data Expected from TC |
|
Data Size |
Booleans |
Data Info |
SwitchState = 0 (Off), SwitchState=1 (On) |
Allowed Value(s) |
0-1 |
Expected Value(s) |
1 |
A.4.
To further ensure EMOD is now ON,
Getthe parameterpayload.EMOD.FirmwareVersion.Ensure the TM is as expected given the last firmware programmed onto the MSP.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
No |
TM Details |
|
Data Expected from TC |
|
Data Size |
3 bytes |
Data Info |
Firmware version of EMOD |
Allowed Value(s) |
0000 - FFFF (hex) |
A.5.
Getthe parameterpayload.EMOD.ResetCounterto determine the number of times EMOD has reset since EMOD was last reprogrammed.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
No |
TM Details |
|
Data Expected from TC |
|
Data Size |
1 byte |
Data Info |
Number of EMOD resets |
Allowed Value(s) |
0-127 |
A.6.
Getthe parameterpayload.EMOD.LastResetTypeto determine the type of EMOD reset(s) that have occurred (if any).
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
No |
TM Details |
|
Data Expected from TC |
|
Data Size |
1 byte |
Data Info |
Last EMOD reset type |
Allowed Value(s) |
Event values between 00 - 2E (inclusive) |
Where…
|
Reset Type |
|---|---|
02 |
Brownout |
06 |
SW reboot |
14 |
SW reboot |
16 |
Watchdog reset |
B. Mode Change
B.1.
To check what mode EMOD is currently operating in,
Getthe parameterpayload.EMOD.EMODMode.If the desired mode is returned, proceed to Section C .
Else, proceed to the next step.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
No |
TM Details |
|
Data Expected from TC |
|
Data Size |
Int4 |
Data Info |
Mode of EMOD |
Allowed Value(s) |
0 or 1 (see table below) |
Where…
|
Mode |
|---|---|
0 |
Idle |
1 |
Experiment Running |
B.2.
If the EMOD Mode needs to be changed,
SettheEMODModeparameter to the correct value now.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
Yes |
Data Size |
Int4 |
Data Info |
Mode of EMOD |
Allowed Value(s) |
0 or 1 (see table above) |
TM Details |
|
Data Expected from TC |
No ( + ACK ) |
B.3.
Confirm the
Setin the previous step with aGet(i.e. confirm the value was set successfully).
B.4.
If
EMODModewas set to 0 (i.e. Idle Mode) in the previous step, then proceed directly to Step A.9.However, if
EMODModewas set to 1 (i.e. Experiment Mode), OBC-EMOD time syncing should now be enabled. To do this:Setthepayload.EMOD.SyncTimePeriodMultiplierparameter to ~30 (dec).
Note
This period multiplier used to determine when EMOD’s time is (re-)synced with the OBC. This occurs as part of the PollPages task, which has a 1 minute task period. On a task period where time syncing occurs, the OBC skips polling new pages from EMOD. If this multiplier is set to 0, time syncing is disabled. A minimum non-zero value of 5 (i.e. time syncing every 5 minutes) is allowed.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
Yes |
Data Size |
2 bytes |
Data Info |
Period multiplier used to determine when EMOD’s time is (re-)synced with the OBC. |
Allowed Value(s) |
0 - 65535 (dec) |
Expected Value(s) |
30 (dec) |
TM Details |
|
Data Expected from TC |
No ( + ACK ) |
B.5.
Confirm the
Setin the previous step with aGet(i.e. confirm the value was set successfully).
C. RTD Sampling Settings
C.1.
To confirm which RTDs are currently being sampled as part of the EMOD experiment,
Getthe parameterpayload.EMOD.RTDEnabledMask.If the desired output is returned, proceed to Section D .
Else, proceed to the next step.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
No |
TM Details |
|
Data Expected from TC |
|
Data Size |
1 byte |
Data Info |
bitmap of which RTDs are (1) and are not (0) being sampled |
Allowed Value(s) |
0000/none sampled - 1111/all sampled (bitfield) |
C.2.
Setthe parameterpayload.EMOD.RTDEnabledMaskto change which RTDs are currently being sampled as part of the EMOD experiment.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
Yes |
Data Size |
1 byte |
Data Info |
bitmap of which RTDs are (1) and are not (0) being sampled |
Allowed Value(s) |
0000 - 1111 (bitfield) |
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. Sampling Rate Settings
D.1.
To determine what delta time is currently being used between RTD measurements,
Getthe parameterpayload.EMOD.deltaT.If the desired output is returned, proceed to Section E .
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
No |
TM Details |
|
Data Expected from TC |
|
Data Size |
2 bytes |
Data Info |
Time (in seconds) between RTD measurements |
Allowed Value(s) |
0001 - FFFF (hex) |
Expected Value(s) |
>0 |
D.2.
To change the delta time between RTD measurements
Setthe parameterpayload.EMOD.deltaT.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
Yes |
Data Size |
2 bytes |
Data Info |
Time (in seconds) between RTD measurements |
Allowed Value(s) |
0001 - FFFF (hex) |
Expected Value(s) |
>0 |
TM Details |
|
Data Expected from TC |
No ( + ACK ) |
D.3.
Confirm the
Setin the previous step with aGet(i.e. confirm the value was set successfully).
E. Auto Poll Page Settings
E.1.
Prior to enabling OBC polling of pages from EMOD,
Getthepayload.EMOD.NextPageAddrToPollparameter.Ensure that the next memory address to poll is as desired.
If auto polling of pages is already enabled, this parameter should be increasing and represents the last memory address from which a page was accessed.
If output is as desired, proceed to Section F.
Tip
The payload.EMOD.NextPageAddrToPoll parameter is configurable and can be set to any value the Operators wants. However, the parameter is also persisted by the OBC and keeps track of the next memory address that should be polled assuming the operator wants to poll the pages from sequential memory addresses. As a result we usually do not need to set this parameter.
Warning
If the Separation Sequence has been restarted, or if the spaceccraft’s persisted configuration data has been wiped, the most recent row of EMOD data in the OBC storage channel should be downlinked to determine what page memory address to begin streaming from. Follow EIR-OPS-011: Downlink Data From Storage to do this.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
No |
TM Details |
|
Data Expected from TC |
|
Data Size |
2 bytes |
Data Info |
The next flash memory address to poll a page of data from when auto polling of pages is enabled |
Allowed Value(s) |
0-65535 (dec) |
E.2.
To enable/disable OBC polling of EMOD pages,
Setthepayload.EMOD.AutoPollPagesparameter to 0x01 (enabled) or 0x00 (disabled).
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
Yes |
Data Size |
1 byte |
Data Info |
Enable (1) or Disable (0) OBC polling of EMOD data |
Allowed Value(s) |
0-1 |
TM Details |
|
Data Expected from TC |
No ( + ACK ) |
E.3.
Confirm the
Setin the previous step with aGet(i.e. confirm the value was set successfully).
F. Turn Off EMOD
Note
This section should only be followed if the operators desired to turn OFF EMOD.
F.1.
Setthepayload.EMOD.AutoPollPagesparameter to 0 to ensure auto polling of pages is disabled prior to power OFF.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
Yes |
Data Size |
1 byte |
Data Info |
Enable (1) or Disable (0) OBC polling of EMOD data |
Allowed Value(s) |
0-1 |
Expected Value(s) |
0 |
TM Details |
|
Data Expected from TC |
No ( + ACK ) |
F.2.
Confirm the
Setin the previous step with aGet(i.e. confirm the value was set successfully).
F.3.
Setthepayload.EMOD.SyncTimePeriodMultiplierparameter to 0 to ensure OBC-EMOD time syncing is disabled prior to power OFF.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
Yes |
Data Size |
2 bytes |
Data Info |
Period multiplier used to determine when EMOD’s time is (re-)synced with the OBC. |
Allowed Value(s) |
0 - 65535 (dec) |
Expected Value(s) |
0 |
TM Details |
|
Data Expected from TC |
No ( + ACK ) |
F.4.
Confirm the
Setin the previous step with aGet(i.e. confirm the value was set successfully).
F.5.
To turn OFF EMOD,
Invokethe actionplatform.EPS.TurnOffEMOD.
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
No |
TM Details |
|
Data Expected from TC |
No ( + ACK ) |
F.6.
Getthe parameterplatform.EPS.actualSwitchStateswithFirst row=Last row= 9.Ensure o is returned (i.e. EMOD is OFF).
TC Details |
|
MCS Operation |
|
Action/Param Name |
|
Data Expected with TC |
Yes |
Data Size |
4 bytes, 4 bytes |
Data Info |
|
Allowed Value(s) |
0-9, 0-9 |
Expected Value(s) |
9, 9 |
TM Details |
|
Data Expected from TC |
|
Data Size |
SwitchState = 0 |
Data Info |
SwitchState = 0 (Off), SwitchState=1 (On) |
Allowed Value(s) |
0-1 |
Expected Value(s) |
0 |
END OF PROCEDURE