CIGI - A COMMON IMAGE GENERATOR INTERFACE
Download
Report
Transcript CIGI - A COMMON IMAGE GENERATOR INTERFACE
CIGI - A COMMON
IMAGE GENERATOR
INTERFACE
Robert Lechner/Willard Phelps
Boeing Training Systems and Services
- (September 2002) -
CIGI, What Is It?
Host Simulation
IG Run-Time
CIGI SDK
CIGI SDK
CIGI API
CIGI
CIGI API
CIGI Messages
CIGI
Data & Synchronization
• On-the-wire protocol for host-to-image generator interface
control definition.
• Provides a high level of abstraction, simple to use.
• Plug-and-play type interface.
• API provided to remove error-prone data packaging.
• Released open-source, non-proprietary under a GNU Lesser
General Public License.
2
Why do we need CIGI?
• Most image generators (IG’s) have a proprietary interface
that is labor intensive to integrate.
• System Integrators have spent hundreds of thousands of
dollars integrating image generators on various programs
over the years.
• While most IG’s share common controlling attributes, they
do not share a common interface, thus no mechanism to
capitalize on previous investments.
• These attributes can be collected into a generic interface
that can be standardized throughout the industry, thus
CIGI.
3
Common IG Control Attributes
•
•
•
•
•
•
•
Activating/deactivating objects
Moving objects in world space (6 DOF)
Moving view volumes in world space (6 DOF)
Defining the view in display space
Coordinate system definition
Data timing
Environment control
– time of day
– weather
4
How does it gain acceptance?
• Follow in the footsteps of other widely accepted standards
like OpenFlightTM and DIS:
–
–
–
–
–
–
–
–
5
Provide the interface as open-source.
Provide detailed documentation.
Ensure thorough testing on major platforms.
Provide tools to ease test and integration efforts.
Provide a common forum for distribution and bug tracking.
Provide engineering resources to manage the code base.
Show proven cost savings.
Get customer buy-in.
Availability
• All data and documentation are available on
www:\\cigi.sourceforge.net
– includes ICD, API, and SDK
– on-line forum for help, bug tracking, and distribution list
• ICD contains complete definition of all data packets
• ANSI C design tested on W2K, Linux, IRIX, AIX UNIX,
VxWorks, and Solaris.
• CIGI Host emulator test tool with scripting interface soon
to be available.
6
Benefits
• Greatly reduce integration and testing costs
– Reuse of existing code.
– Consistent database configuration interface.
– Off-line validation tool for IG functionality and database
compliance.
$600,000
$500,000
Existing Program Example:
Current IG integration cost $455,000
$400,000
$300,000
$200,000
$100,000
$0
7
CIGI integration cost estimate $50,000
with integration support from CIGI API.
CIGI Design Concepts
8
CIGI Design Concepts
• CIGI draws from the better interfaces being used today.
• Generic packet design that can be used by any IG.
– definition/control/data request/data response packet types
• Uses primitives as building blocks to construct simulation
scenarios:
–
–
–
–
visual display characteristics
entity manipulation
sensor behavior
atmospheric phenomena.
• Use Parent/Child relationship for linking/destroying
objects
9
Entity Creation Example
F-15 with bomb racks and collision lights
• Five Entity Control blocks
to instantiate
– F-15 parent
– Bomb rack child to F-15
parent
– Bomb child to bomb rack
parent
• Component Control block
activates lights embedded in
F-15
• Articulated Part Control
modifies stabilator
10
CIGI Design Concepts
• Double precision data
• Data synchronization
– Synchronous and asynchronous operation supported
– Master start of frame
• Version control
• API Specific
– Built-in Big Endian/Little Endian conversion, i.e.
MIPS/PPC to Intel/AMD.
– Multiple connections
11
Architectural Overview
• Interface Control Document
– detailed document defining data packets, coordinate systems, data
synchronization, and general usage
• Application Programmers Interface
– data initialization and packing/unpacking, endian conversion, error
checking
• Software Development Kit
– sample development code, messaging utilities
CIGI SDK
Client/Server Routines
Compatibility
Utility Routines
CIGI API
Message Buffering
CORE ROUTINES
12
Pack / Unpack
Current Status
CIGI 2.0 Packets
Control Packets
IG
Entity
Component
Articulated Part
Rate
Environment
Weather
View
Sensor
User-definable
Data Request Packets
Height Above Terrain
Height of Terrain
Line of Sight Occult
Line of Sight Range
14
Definition Packets
Trajectory
Special Effect
View
Collision Detect
Swept Volume
Data Response Packets
Start of Frame
Height Above Terrain
Height of Terrain
Collision Detection
Line of Sight Occult
Line of Sight Range
IG Response
User-definable
Documents and Software
• CIGI ICD Version 2.0 released.
• CIGI API Version 2.4 released.
• CIGI SDK Version 2.4 released.
• CIGI Host Emulator Version 2.0
released.
• CIGI Logo in design.
• CIGI ICD Version 3.0 in design.
Sample Logos
15
CIGI Test Tool
• CIGI Host Emulator
– Allows complete testing of a
CIGI compliant IG in the
absence of a trainer host.
– All CIGI packets implemented.
– Included record/playback
freeze/operate capabilities.
– Runs under Windows RTX for
real-time measurement and
performance.
– Scripting capability in design
16
Known CIGI Users
• Integrators
–
–
–
–
–
–
–
–
–
–
17
Boeing
Lockheed-Martin
AFRL
NAVAIR/JF Taylor
ESG
Norcontrol
Indra
Kanmatsu Aerospace
Symbionics
ISD
• Implementers
– CG2
– Aechelon
– Lockheed-Martin
Web Site Statistics
•
•
•
•
•
•
18
On-line since April 2001
Home page hits : > 1400
SourceForge page views: > 10,000
Download stats: 690
3 Bugs reported
2 Help requested
T- 45
RFP
F/A-18 DMT
RFP
Summary
• CIGI is designed to assist suppliers and integrators of IG
systems with ease of integration, code reuse, and cost
reduction.
• CIGI is being met with surprising acceptance throughout
the community.
• Boeing will continue to support CIGI, but we desire to
move CIGI to a standards organization.
• We desire assistance to foster future development and
advancement. All inputs, contributions, and ideas are
welcome!
19