testAcTracking.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/RegressionTests/GazeboTests/testAcTracking.xml:39:3
    | 
 35 |     run in parallel
 36 |     set Guidance:Buoyancy.position = Control:VerticalControl.buoyancyNeutral
 37 |   }
 38 | 
 39 |   Derivation:Tracking #! xml2tethysl note: A non-behavior Tethys definition used by itself.
    |   ^^^^^^^^^^
 40 | 
 41 | 
 42 |   behavior Guidance:Wait {
 43 |     run in sequence
    | 
Unexpected: `Derivation`
One of the following is possible (total 12):
  aggregate
  assign
  behavior
  call
  insert
  readData
  readDatum
  sendData
  syslog
  touch
  macro
  }
 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
# -   Copyright (c) 2024 MBARI
# -   MBARI Proprietary Information. Confidential. All Rights Reserved
# -   Unauthorized copying or distribution of this file via any medium is strictly
# -   prohibited.
# -
# -   WARNING - This file contains information whose export is restricted by the
# -   Export Administration Act of 1979 (Title 50, U.S.C., App. 2401 et seq.), as
# -   amended. Violations of these export laws are subject to severe civil and/or
# -   criminal penalties.

mission test_ac_tracking {
  arguments {
    MissionTimeout = 2 minute
      """
      Maximum duration of mission
      """

    ContactLabel = 0 count

    NumberOfPings = 1 count

    TrackingUpdatePeriod = 15 second

    MassDefault = Control:VerticalControl.massDefault
  }

  timeout duration=MissionTimeout

  behavior Guidance:Mass {
    run in parallel
    set Guidance:Mass.position = Control:VerticalControl.massDefault
  }

  behavior Guidance:Buoyancy {
    run in parallel
    set Guidance:Buoyancy.position = Control:VerticalControl.buoyancyNeutral
  }

  Derivation:Tracking #! xml2tethysl note: A non-behavior Tethys definition used by itself.


  behavior Guidance:Wait {
    run in sequence
    set Guidance:Wait.duration = MissionTimeout
  }
}
 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
<?xml version="1.0" encoding="UTF-8"?>
<!--
-   Copyright (c) 2024 MBARI
-   MBARI Proprietary Information. Confidential. All Rights Reserved
-   Unauthorized copying or distribution of this file via any medium is strictly
-   prohibited.
-
-   WARNING - This file contains information whose export is restricted by the
-   Export Administration Act of 1979 (Title 50, U.S.C., App. 2401 et seq.), as
-   amended. Violations of these export laws are subject to severe civil and/or
-   criminal penalties.
-->

<Mission xmlns="Tethys"
         xmlns:Control="Tethys/Control"
         xmlns:Derivation="Tethys/Derivation"
         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/Derivation http://okeanids.mbari.org/tethys/Xml/Derivation.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="test_ac_tracking">

    <DefineArg Name="MissionTimeout"><Description>
        Maximum duration of mission
    </Description><Units:minute/><Value>2</Value></DefineArg>

    <DefineArg Name="ContactLabel"><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="NumberOfPings"><Units:count/><Value>1</Value></DefineArg>

    <DefineArg Name="TrackingUpdatePeriod"><Units:second/><Value>15</Value></DefineArg>

    <DefineArg Name="MassDefault"><Control:VerticalControl.massDefault/></DefineArg>

    <Timeout Duration="MissionTimeout"/>

    <Guidance:Mass>
        <Parallel/>
        <Setting><Guidance:Mass.position/><Control:VerticalControl.massDefault/></Setting>
    </Guidance:Mass>

    <Guidance:Buoyancy>
        <Parallel/>
        <Setting><Guidance:Buoyancy.position/><Control:VerticalControl.buoyancyNeutral/></Setting>
    </Guidance:Buoyancy>

    <Derivation:Tracking>
        <Parallel/>
        <Setting><Derivation:Tracking.contactLabelSetting/><Arg Name="ContactLabel"/></Setting>
        <Setting><Derivation:Tracking.numberOfSamplesSetting/><Arg Name="NumberOfPings"/></Setting>
        <Setting><Derivation:Tracking.updatePeriodSetting/><Arg Name="TrackingUpdatePeriod"/></Setting>
    </Derivation:Tracking>

    <Guidance:Wait>
        <Sequence/>
        <Setting><Guidance:Wait.duration/><Arg Name="MissionTimeout"/></Setting>
    </Guidance:Wait>

</Mission>