TestStand steps provide the ability for the test sequence to save, retrieve, and clear state data from the real-time OS of the cRIO-9047 with the Save/Retrieve/Clear State Data step, described in detail in Save/Retrieve/Clear State Data Step.

Note Refer to the Sequence Recovery.seq example sequence installed with the Battery Test System Software when setting safe checkpoints for your system testing.

Use this sequence step to ensure that the host computer running TestStand can safely stop at and resume from a safe checkpoint if it encounters an IT interruption during a long-duration test.

Note You cannot reconnect to previous test data if the VeriStand target has not remained online. For the Battery Test System, the CompactRIO controller needs to remain online without interruption to keep the VeriStand engine running. Ensure you follow all recommended steps in this manual to maintain the CompactRIO controller with electrical backup using the supplied uninterruptible power supply (UPS).

Using this step, you can store data objects—for example, TestStand variable numbers, containers, etc.—on the real-time target by name and retrieve them at a later point in time.

Note You must know the structure of the data object to retrieve it.
Figure 1. Example Save/Retrieve/Clear Flow Chart


Retrieve State

Use this step to retrieve safe checkpoints or other states from the real-time target.

  1. Place a Save/Retrieve/Clear State Data step in your sequence.
  2. Configure the following:
    • BehaviorRetrieve State
    • Lookup Name—NI recommends that you define this name as a TestStand variable to limit erroneous string entries
    • Data Object—Select an object to recall; use a TestStand variable, such as a number, Boolean, or custom container
    • Already Existed—(Optional) Configure how to store previously saved objects; use a TestStand Boolean variable

Save State

Use this step to store safe checkpoints or other states on the real-time target.

  1. Place a Save/Retrieve/Clear State Data step in your sequence.
  2. Configure the following:
    • BehaviorSave State
    • Lookup Name—NI recommends that you define this name as a TestStand variable to limit erroneous string entries
    • Data Object—Select an object to save; use a TestStand variable, such as a number, Boolean, or custom container, for example, the cycle count that you are currently on
    • Already Existed—(Optional) Configure how to store previously saved objects; use a TestStand Boolean variable
Note If the state already existed, using this step with overwrite the data object with the new data being supplied here.

Clear State

Use this step to clear safe checkpoints or other states from the real-time target.

  1. Place a Save/Retrieve/Clear State Data step in your sequence.
  2. Configure the following:
    • BehaviorClear State
    • Lookup Name—NI recommends that you define this name as a TestStand variable to limit erroneous string entries
    • Data Object—Select an object to save; use a TestStand variable, such as a number, Boolean, or custom container, for example, the cycle count that you are currently on
    • Already Existed—(Optional) Configure how to store previously saved objects; use a TestStand Boolean variable

Clear All States

Use this step to clear all safe checkpoints or other states from the real-time target.

  1. Place a Save/Retrieve/Clear State Data step in your sequence.
  2. Set Behavior to Clear All States.

Stop and Resume Tests at a Safe Checkpoint

Use these steps in conjunction with the native Flow Control steps in TestStand to build sequences that ensure the test stops at or after a safe checkpoint.

The following figure displays two example sequences. Use the sequence on the left to ensure the DUT is not tested when it is in a safe state. The final Save State records the safe state condition and reads the condition back when the sequence resumes. Alternatively, program your test sequence to recover the DUT back to a safe condition and use the proposed example sequence as shown on the right in the following figure.

Figure 1. Using Save/Retrieve/Clear State Data Steps to Stop a Test at a Safe Checkpoint