DUSBL.xml

Page auto-generated from XML file.

Failure

The generated TethysL source could not be parsed, likely due to source XML not being well-formed.

Below is the compile error at the TethysL level, as well as the source XML.

The TethysL file name shown below does not necessarily indicate the file exists, but hints about the actual corresponding .xml file.

Syntax error:
   --> lrauv-application/Missions/Maintenance/DUSBL.xml:57:5
    | 
 53 | 
 54 | 
 55 |   readData  {
 56 | 
 57 |     when ( EnabledDUSBL )
    |     ^^^^
 58 | 
 59 |     Universal:acoustic_contact_range
 60 | 
 61 |     Universal:acoustic_contact_direction_vehicle_frame
    | 
Unexpected: `when`
One of the following is possible:
  """
  while
  timeout
  break
  interval
  period
  someID
  Universal:...
 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
mission DUSBL {
  """
  This mission is requests a DUSBL arming.
  """
  arguments {
    MissionTimeout = 90 minute
      """
      How long to let the mission run.
      """

    NumberOfRequests = 10 count
      """
      Number of pings to requst.
      """

    TransponderCode = 2 count
      """
      Transponder Address.
      """

    NumberOfPings = 1 count
      """
      Number of pings requested each time.
      """

    EnabledDUSBL = Sensor:DUSBL_Hydroid.loadAtStartup
      """
      Automatically set to true if the DUSBL is enabled. Set to false to
      disable reading from the DUSBL.
      """

  }

  timeout duration=MissionTimeout
  behavior Guidance:Pitch  {

    run in parallel


    set Guidance:Pitch.massPosition = Control:VerticalControl.massDefault

  }


  behavior Guidance:SetSpeed  {

    run in parallel


    set Guidance:SetSpeed.speed = 0 meter_per_second

  }


  readData  {

    when ( EnabledDUSBL )

    Universal:acoustic_contact_range

    Universal:acoustic_contact_direction_vehicle_frame

  }
  aggregate RequestRepeater {
    run in sequence repeat=NumberOfRequests
    assign in parallel Sensor:DUSBL_Hydroid.transponderCode = TransponderCode
    assign in parallel Sensor:DUSBL_Hydroid.pingRequested = NumberOfPings
    behavior Guidance:Wait  {

      run in sequence


      set Guidance:Wait.duration = 90 second

    }


  }

}
 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
<?xml version="1.0" encoding="UTF-8"?>
<!-- ====================
     Generated by TethysL
     ==================== -->
<Mission xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns="Tethys"
         xmlns:Units="Tethys/Units"
         xmlns:Guidance="Tethys/Guidance"
         xmlns:Control="Tethys/Control"
         xmlns:Sensor="Tethys/Sensor"
         xmlns:Universal="Tethys/Universal"
         xsi:schemaLocation="Tethys http://okeanids.mbari.org/tethys/Xml/Tethys.xsd
                             Tethys/Units http://okeanids.mbari.org/tethys/Xml/Units.xsd
                             Tethys/Guidance http://okeanids.mbari.org/tethys/Xml/Guidance.xsd
                             Tethys/Control http://okeanids.mbari.org/tethys/Xml/Control.xsd
                             Tethys/Sensor http://okeanids.mbari.org/tethys/Xml/Sensor.xsd
                             Tethys/Universal http://okeanids.mbari.org/tethys/Xml/Universal.xsd"
       Id="DUSBL">

    <Description>
        This mission is requests a DUSBL arming.
    </Description>

    <DefineArg Name="MissionTimeout"><Description>
        How long to let the mission run.
    </Description><Units:minute/><Value>90</Value></DefineArg>

    <DefineArg Name="NumberOfRequests"><Description>
        Number of pings to requst.
    </Description><Units:count/><Value>10</Value></DefineArg>

    <DefineArg Name="TransponderCode"><Description>
        Transponder Address.
    </Description><Units:count/><Value>2</Value></DefineArg>

    <DefineArg Name="NumberOfPings"><Description>
        Number of pings requested each time.
    </Description><Units:count/><Value>1</Value></DefineArg>

    <DefineArg Name="EnabledDUSBL"><Description>
        Automatically set to true if the DUSBL is enabled. Set to false to
        disable reading from the DUSBL.
    </Description><Sensor:DUSBL_Hydroid.loadAtStartup/></DefineArg>

    <Timeout Duration="MissionTimeout"/>

    <Guidance:Pitch>
        <Parallel/>
        <Setting><Guidance:Pitch.massPosition/><Control:VerticalControl.massDefault/></Setting>
    </Guidance:Pitch>

    <Guidance:SetSpeed>
        <Parallel/>
        <Setting><Guidance:SetSpeed.speed/><Units:meter_per_second/><Value>0</Value></Setting>
    </Guidance:SetSpeed>

    <ReadData>
        <When>
            <Arg Name="EnabledDUSBL"/>
        </When>
        <Universal:acoustic_contact_range/>
        <Universal:acoustic_contact_direction_vehicle_frame/>
    </ReadData>

    <Aggregate Id="RequestRepeater">

        <Sequence Repeat="NumberOfRequests"/>

        <Assign><Parallel/><Sensor:DUSBL_Hydroid.transponderCode/><Arg Name="TransponderCode"/></Assign>

        <Assign><Parallel/><Sensor:DUSBL_Hydroid.pingRequested/><Arg Name="NumberOfPings"/></Assign>

        <Guidance:Wait>
            <Sequence/>
            <Setting><Guidance:Wait.duration/><Units:second/><Value>90</Value></Setting>
        </Guidance:Wait>

    </Aggregate>

</Mission>