Skip to content

Engineering/multiray_test.xml.tl

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
mission multiray_test {
  """
  This mission is designed to run in the lab only. Cycles through MultiRay light modes
  """

  arguments {
    MissionTimeout = 5 minute
      """
      How long to let the mission run.
      """

    LightDuration = 5 second
      """
      How long to wait before changing light modes
      """

    LightMode0 = 0 count
      """
      Light mode = 0
      """

    LightMode1 = 1 count
      """
      Light mode = 1
      """

    LightMode2 = 2 count
      """
      Light mode = 2
      """

    EnabledMultiray = Sensor:MultiRay.loadAtStartup
      """
      Automatically set to true if the Multiray is enabled.
      """
  }

  timeout duration=MissionTimeout

  readData strategy="MinError" {
    while ( EnabledMultiray )

    Sensor:MultiRay.lightModeLog
  }

  # <ReadDatum>
  #            <Sensor:MultiRay.lightModeLog/>
  #    </ReadDatum>

  assign in sequence Sensor:MultiRay.lightModeCommand = LightMode0

  behavior Guidance:Wait {
    run in sequence

    set duration = LightDuration
  }

  assign in sequence Sensor:MultiRay.lightModeCommand = LightMode1

  behavior Guidance:Wait {
    run in sequence

    set duration = LightDuration
  }

  assign in sequence Sensor:MultiRay.lightModeCommand = LightMode2

  behavior Guidance:Wait {
    run in sequence

    set duration = LightDuration
  }

  assign in sequence Sensor:MultiRay.lightModeCommand = LightMode0

  behavior Guidance:Wait {
    run in sequence

    set duration = LightDuration
  }

  assign in sequence Sensor:MultiRay.lightModeCommand = LightMode1

  behavior Guidance:Wait {
    run in sequence

    set duration = LightDuration
  }

  assign in sequence Sensor:MultiRay.lightModeCommand = LightMode2

  behavior Guidance:Wait {
    run in sequence

    set duration = LightDuration
  }

  assign in sequence Sensor:MultiRay.lightModeCommand = LightMode0

  behavior Guidance:Wait {
    run in sequence

    set duration = LightDuration
  }

  assign in sequence Sensor:MultiRay.lightModeCommand = LightMode1

  behavior Guidance:Wait {
    run in sequence

    set duration = LightDuration
  }

  assign in sequence Sensor:MultiRay.lightModeCommand = LightMode2

  behavior Guidance:Wait {
    run in sequence

    set duration = LightDuration
  }

  assign in sequence Sensor:MultiRay.lightModeCommand = LightMode0

  behavior Guidance:Wait {
    run in sequence

    set duration = LightDuration
  }
}