The harmonization of the two industry standards JAUS and STANAG

advertisement
Land, Sea and Air:
The Application of JAUS and STANAG 4586 for
Cross-Domain Unmanned Vehicle Control
Mike Meakin, B. Sc., PMP
President, InnUVative Systems
Prepared for: SAE AS-4 JAUS Working Group, April 2010
1
Outline
•
•
•
•
•
•
Background
Description of STANAG 4586 system
JAUS VSM Implementation Process
Difficulties & Successes Encountered
Results
Path Forward/ Future Harmonization
Approaches
• Conclusion
2
Who am I?
Mike Meakin- Background
• 8 years as a Naval Combat Systems Engineering Officer
• 6 years as Project Lead on the US Army Tactical Unmanned Air
Vehicle (TUAV) Shadow 200 control station software
– From initial stages of competing in and winning the US Army fly-off,
– To fielding this system to Iraq (now over 450,000 combat flying hours)
– Also during this period led the development of :
• The US Army Remote Viewing Terminal (also fielded in Iraq);
• Integrated the Tactical Common Data Link (TCDL);
• Extended the Shadow 200 control station software to control a Shadow 400
maritime UAV system; and
• Led the integration of the US Army Hunter UAV into the existing TUAV control
station.
• Have served on board of directors of Canadian UV organization
since 2006
3
Company Background
• Software development company founded in January 2007
by three individuals with more than 19 years experience
in the UAV software development industry
• Specifically targeted at the unmanned vehicles industry
– Specializing in UV software development
• Using well recognized engineering practices within an
established and controlled development environment
– Follow fundamental project management principles as
recognized by the Project Management Institute
4
Description of 4586 System Elements
• The 4CE Control Station© software is
our flag ship product
Payload
– Command, Control, Communication,
Coordination & Execution
– It is compliant with STANAG 4586
Interoperability standard
AV
VSM
CORE
UCS
CCI
CCISM
C4I
SYSTEM
HCI
DLI
• The Vehicle Specific Module (VSM)
is really a System Specific Module as
OPERATOR(S)
it applies to sensors, datalinks and
other systems as well
– STANAG 4586 is a complex standard and
is still undergoing changes so specialist
knowledge is necessary
– Likewise JAUS for ground vehicles
• CCISM is less specialized but will be
5
added as well
JAUS VSM Implementation: Requirements
• The SysML approach allowed the two ICDs to be placed into the
same format for increased ease in mapping of ICD elements,
despite the fact that the two ICDs were constructed in totally
different manners:
6
JAUS VSM Implementation: Requirements
• Reviewing the two ICDs side-by-side certainly highlights the differences
between the two:
– JAUS assumed commands such as iris and gain settings and location wrt CofG
for a camera that STANAG does not include as part of its basic message set
– JAUS assumes information such as the platform boundaries, platform geometry,
turn radius, static rollover limit, etc. would be important
– STANAG assumes barometric pressure is important information to be exchanged
• Each protocol clearly reflected it’s heritage…
• The JAUS protocol was well-suited to supporting intra-system “plug n
play” hardware and utilizes protocol extensibility via use of
“experimental” messages to achieve this
• STANAG protocol is designed with inter-system interoperability as its
explicit goal and uses abstraction via the use of standard graphical
interfaces to achieve this
• The conclusion was that JAUS is truly a well thought out architecture with
a protocol that is extensible while STANAG is a truly well thought out
7
protocol with little to no aspirations as an architecture…
JAUS VSM Implementation: Requirements
• The original intent was to make this exercise as challenging to a
VSM implementation as possible:
– Identified specific datalink, vehicle and manipulator messages to support
• Opportunity arose with a vehicle manufacturer who was
interested in using our VSM for a sea vehicle demo
– Modified version of STANAG from 2.1 to 2.4 and JAUS from 3-2 to 3-3
– Also changed manipulator messages for camera messages
• Set of JAUS messages supported (uplink and downlink):
– 10 of 23 system messages;
– 4 of 8 datalink messages (start/ stop, hi/ low power, point, etc. supported);
– 10 of 41 vehicle messages (steering, attitude, engine and waypoint
supported);
– 6 of 18 camera messages (pointing, zoom, focus, etc. supported)
– Zero manipulator messages
• No support for service connections (just queried periodically)8
this accounted for most of the unsupported system messages
JAUS VSM Implementation: Design
• The mappings themselves were able
to be made explicitly within the tool,
showing which fields mapped to
which and explicitly defining any
conversions required for the
developer
• Remaining within the SysML and
UML compliant tool used for
requirements analysis, the high level
and detailed design could be
documented, such as the VSM GUI
with mappings
• The use of the gcc compiler and wx
widgets allowed both Windows and
9
Linux to be supported in parallel
JAUS VSM Implementation: Test Tool Devt
• As part of the code
development we also
needed to develop test
tools against which unit
and system level testing
could be conducted
• A test tool was designed
and constructed for each
of JAUS and STANAG4586
• These were developed
independently from and
in parallel to the VSM
development
• These tools allowed
comprehensive testing of
the protocols at each end
of the VSM
10
JAUS VSM Implementation: Test Execution
• Still utilizing the SysML based tool that had been used for Requirements
Analysis, the system level tests were also developed independently of and in
parallel to the VSM, providing full traceability
• Test Result
• Link to Design
Element (“use”)
• Test Step
• Test Case
• Links to Requirements
11
Difficulties & Successes Encountered
• Change to STANAG 4586 version and modification to target
messages for JAUS
– The lack of backwards compatibility- even from STANAG 2.1 to 2.4made this kind of switch non-trivial
– Use of the SysML approach to requirements shielded the developers from
these issues
• Ambiguity in ICDs
– Vehicle_ID_Update: “This is the vehicle ID that will be replace the
current Vehicle ID”  this was corrected but is an example of the issues
found when actually implementing an ICD for real
• STANAG Connection Logic
– Need sequence diagram and use cases to explain
– Intent of virtual vehicles may not be needed in real life…
• SVN proved very capable of rolling back code when needed
• Support for Presence Vector within JAUS was not clearly 12
understood by developers in first implementation
Results of JAUS VSM Implementation
As a measure of the VSM capability itself, we had:
• A total of 321 tests were developed and executed for the VSM, with
only12 failures (only minor functionality) for a 96.3% pass rate
• The EA tool allowed explicit checks of traceability to ensure that all
requirements have both a “Realization” link and a “Test” link
• The level of effort expended for this development effort was
approximately one person year
– This yielded not only a functional JAUS VSM but also two test tools and a reusable code base that makes the futureVSM development much faster and
lower risk
13
Path Forward
There are several paths forward that are being pursued:
• Integration of this VSM into a STANAG CUCS for basic
control of JAUS-compliant datalinks, vehicles and payloads;
• Extension and use of either or both of these test tools for testing
purposes on other systems;
• Extension of this VSM to the full JAUS message set, including
Service Connections and Manipulators;
• Utilization of the JAUS half of this VSM for development of
translation modules to enable other vehicle systems to become
JAUS compliant
• Potentially, develop the “reverse VSM” that allows control of
STANAG vehicles from a JAUS control station…
…all moving towards harmonization of JAUS and STANAG
4586…
14
The Future of Interoperability
• Based on our experience of developing this
System Specific Module for JAUS, InnUVative
Systems has developed an approach to
interoperability between the two standards that
allows a high degree of supported functionality
between units, even in the absence of specific
training on a given vehicle or system...
15
4586 UAV Interoperability
Combined UAV Combat Operations
It’s useful for the soldier to know:
• There is a fire fight two blocks North
• A bridge is out three blocks East
• Etc.
•Giving the soldier an organic air
capability is important
•Allowing that organic air capability to
leverage off wide area surveillance
platforms allows him to put what he sees
into context with the wider battle…
Mixed assets:
•C7
•mortars and
•artillery
Likewise:
•micro/ small
•tactical and
•MALE UAVs
Need mixed assets
for different tasks
16
Interoperability with STANAG 4586
STANAG
4586
Core Msg
Vehicle
Specific
STANAG
4586
Core Msg
Vehicle
Specific
Vehicle
Specific
Module
STANAG 4586 Compliant
control station with no
Vehicle Specific Module
• Level of Interoperability
3/4 (~80% mission
capability after launch)
STANAG 4586 Compliant control
station with Vehicle Specific Module
• Level of Interoperability 5 (FULL)
17
Interoperability
• It is important to note that the common protocol
solution is only one part of the interoperability
problem
1. Need common waveform solution (STANAG 7085
TCDL, STANAG 4660 Common C2 link, etc.)
2. For given control station, features supported by
common protocol are presented as the same user
interface across all systems
•
•
Allows operators untrained on specific systems to safely
take control knowing system will behave as expected
Greatly reduces delta training as new UV systems are
added
18
Cross Domain Interoperability
Combined UGV/ UAV Combat Operations
•Giving the soldier the ability to see what
threats are around the corner has been
extremely important
•The next step is to relieve the soldier of
having to be first around the corner to
address the threat
• Some systems have already anticipated
the push to arm UGVs
•Integration of
armed UGVs- via
JAUS or native
protocol- into
STANAG
4586 allows the combined
operations goal identified in the
UAS Roadmap from OSD
19
STANAG 4586/ JAUS Interoperability
Use of domain agnostic control
and status interfaces is key to
allowing operator control of
different systems
STANAG
4586
Core Msg
JAUS
Core
Msg
Vehicle
Specific
JAUS
Experimental
Msg
Support for JAUS Core
message set allows
operation of most of a
mission even by operators
unfamiliar with the system
Vehicle
Specific
Module
JAUS
VSM
STANAG 4586 Compliant control
station with JAUS VSM
• Level of Interoperability 3/4 (~80%
20
of mission??)
STANAG 4586/ JAUS Interoperability
STANAG
4586
Core Msg
JAUS
Core
Msg
Vehicle
Specific
JAUS
Experimental
Msg
Vehicle
Specific
Module
JAUS
VSM
An additional plug-in
translates the JAUS Exp
Msg set to 4586 and VSM
GUI
Veh Spec
Module
STANAG 4586 Compliant control
station with JAUS VSM + Veh
specific tranlsation
21
• Level of Interoperability 5 (FULL)
Harmonization of 4586 & JAUS
• Not surprisingly, there is a large overlap between the two
core message sets already
• Coordination between the two standards authorities could
further increase this overlap, thus improving interoperability
between systems, even in the absence of vehicle-specific
support
JAUS
Message
Set
4586
Message
Set
22
Conclusions
• Interoperability between STANAG 4586 and JAUS is
possible to a significant degree right now
• Greater interoperability is inevitable in the future
• The two standards do not have to be treated as
competitive but can instead be complementary
• Coordination between the two standards bodies could
define a largely common core message set that supports
the “~80% mission” via the core message sets only
– This then supports many of the inter-unit and international
interoperability goals
• Use of a common control station supporting domainagnostic control interfaces will allow interoperation
23
with low risk and very low training overhead
Questions?
24
Join us in November at the Unmanned
Systems Canada conference in Montreal
25
Download