Tank overnight test.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/Demo/tank_overnight_test.xml:69:39
    | 
 65 |       run in sequence
 66 | 
 67 |       behavior Guidance:SetSpeed {
 68 |         run in parallel
 69 |         set Guidance:SetSpeed.speed = .5 meter_per_second
    |                                       ^
 70 |       }
 71 | 
 72 |       behavior Guidance:Buoyancy {
 73 |         run in parallel
    | 
Unexpected: `.`
One of the following is possible:
  expression
  universal
  customUri
  number
  NaN
 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
mission tank_overnight_test {
  timeout duration=P25H

  behavior Guidance:AltitudeEnvelope {
    run in parallel
    set Guidance:AltitudeEnvelope.minAltitude = 0 meter
  }

  behavior Guidance:DepthEnvelope {
    run in parallel
    set Guidance:DepthEnvelope.minDepth = 0 meter
    set Guidance:DepthEnvelope.maxDepth = 15 meter
  }

  insert Insert/Surface.tl id="SURFACECOMMS"


  # GPS Update
  #     Once every 120 minutes

  aggregate NeedComms {
    run when (
      elapsed ( Universal:time_fix ) > 120 minute
    )

    call id="NEEDCOMMS" refId="SURFACECOMMS"
  }

  aggregate Loop {
    run in sequence repeat=48

    aggregate One {
      run in sequence

      behavior Guidance:SetSpeed {
        run in parallel
        set Guidance:SetSpeed.speed = 1 meter_per_second
      }

      behavior Guidance:Buoyancy {
        run in parallel
        set Guidance:Buoyancy.position = 100 cubic_centimeter
      }

      behavior Guidance:Pitch {
        run in parallel
        set Guidance:Pitch.massPosition = 3 centimeter
        set Guidance:Pitch.elevatorAngle = 14 degree
      }

      behavior Guidance:Point {
        run in parallel
        set Guidance:Point.rudderAngle = 14 degree
      }

      behavior Guidance:Wait {
        run in sequence
        timeout duration=P10M
      }

      call id="GPSFIX1" refId="SURFACECOMMS"
    }

    aggregate Two {
      run in sequence

      behavior Guidance:SetSpeed {
        run in parallel
        set Guidance:SetSpeed.speed = .5 meter_per_second
      }

      behavior Guidance:Buoyancy {
        run in parallel
        set Guidance:Buoyancy.position = 945 cubic_centimeter
      }

      behavior Guidance:Pitch {
        run in parallel
        set Guidance:Pitch.massPosition = -3 centimeter
        set Guidance:Pitch.elevatorAngle = -14 degree
      }

      behavior Guidance:Point {
        run in parallel
        set Guidance:Point.rudderAngle = -14 degree
      }

      behavior Guidance:Wait {
        run in sequence
        timeout duration=P10M
      }

      call id="GPSFIX2" refId="SURFACECOMMS"
    }
  }
}
  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
<?xml version="1.0" encoding="UTF-8"?>
<Mission xmlns="Tethys"
       xmlns:Control="Tethys/Control"
       xmlns:Guidance="Tethys/Guidance" 
       xmlns:Units="Tethys/Units"
       xmlns:Universal="Tethys/Universal"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="Tethys http://okeanids.mbari.org/tethys/Xml/Tethys.xsd
                           Tethys/Control http://okeanids.mbari.org/tethys/Xml/Control.xsd
                           Tethys/Guidance http://okeanids.mbari.org/tethys/Xml/Guidance.xsd
                           Tethys/Units http://okeanids.mbari.org/tethys/Xml/Units.xsd
                           Tethys/Universal http://okeanids.mbari.org/tethys/Xml/Universal.xsd"
       Id="tank_overnight_test">

    <Timeout Duration="P25H"/>

    <Guidance:AltitudeEnvelope>
        <Parallel/>
        <Setting><Guidance:AltitudeEnvelope.minAltitude/><Units:meter/><Value>0</Value></Setting>
    </Guidance:AltitudeEnvelope>

    <Guidance:DepthEnvelope>
        <Parallel/>
        <Setting><Guidance:DepthEnvelope.minDepth/><Units:meter/><Value>0</Value></Setting>
        <Setting><Guidance:DepthEnvelope.maxDepth/><Units:meter/><Value>15</Value></Setting>
    </Guidance:DepthEnvelope>

    <Insert Filename="Insert/Surface.tl" Id="SURFACECOMMS" />

<!-- GPS Update 
     Once every 120 minutes -->

    <Aggregate Id="NeedComms">

        <When>
            <Elapsed><Universal:time_fix/></Elapsed>
            <Gt><Units:minute/><Value>120</Value></Gt>
        </When>

        <Call Id="NEEDCOMMS" RefId="SURFACECOMMS"/>

    </Aggregate>

    <Aggregate Id="Loop">

        <Sequence Repeat="48"/>

        <Aggregate Id="One">

            <Sequence/>

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

            <Guidance:Buoyancy>
                <Parallel/>
                <Setting><Guidance:Buoyancy.position/><Units:cubic_centimeter/><Value>100</Value></Setting>
            </Guidance:Buoyancy>

            <Guidance:Pitch>
                <Parallel/>
                <Setting><Guidance:Pitch.massPosition/><Units:centimeter/><Value>3</Value></Setting>
                <Setting><Guidance:Pitch.elevatorAngle/><Units:degree/><Value>14</Value></Setting>
            </Guidance:Pitch>

            <Guidance:Point>
                <Parallel/>
                <Setting><Guidance:Point.rudderAngle/><Units:degree/><Value>14</Value></Setting>
            </Guidance:Point>

            <Guidance:Wait>
                <Sequence/>
                <Timeout Duration="P10M"></Timeout>
            </Guidance:Wait>

            <Call Id="GPSFIX1" RefId="SURFACECOMMS"/>

        </Aggregate>

        <Aggregate Id="Two">

            <Sequence/>

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

            <Guidance:Buoyancy>
                <Parallel/>
                <Setting><Guidance:Buoyancy.position/><Units:cubic_centimeter/><Value>945</Value></Setting>
            </Guidance:Buoyancy>

            <Guidance:Pitch>
                <Parallel/>
                <Setting><Guidance:Pitch.massPosition/><Units:centimeter/><Value>-3</Value></Setting>
                <Setting><Guidance:Pitch.elevatorAngle/><Units:degree/><Value>-14</Value></Setting>
            </Guidance:Pitch>

            <Guidance:Point>
                <Parallel/>
                <Setting><Guidance:Point.rudderAngle/><Units:degree/><Value>-14</Value></Setting>
            </Guidance:Point>

            <Guidance:Wait>
                <Sequence/>
                <Timeout Duration="P10M"></Timeout>
            </Guidance:Wait>

            <Call Id="GPSFIX2" RefId="SURFACECOMMS"/>

        </Aggregate>

    </Aggregate>

</Mission>