SM&C Mission Operations Services:Prototype Demonstration
SM&C Core & Common Layer DemonstrationESA/BNSC Collaborative Prototype
Presented by:Roger Thompson
SM&C Prototype DemoJune 2006
2
Introduction
Overview of SM&C Mission Operations Services Service Oriented Architecture Identification and Prioritisation of MO Services Generic Pattern of Interaction Service Layering
Prototype Context Multi-Agency Collaboration Alternative Messaging Layer Implementations Plug-In Applications Demonstration Configuration
Demonstration
SM&C Prototype DemoJune 2006
3
Service-Oriented Architecture:Plug-in Components
Components
Services
Infrastructure
SM&C Prototype DemoJune 2006
4
Mission Operations [MO] Services
External Node(s)
Ground Nodes
Remote Node (Spacecraft, Groundstation, Simulator etc)
Location Service
SoftwareManagement Service
OperatorNotification &
Interaction
Core M&C Service
Automation Service
Scheduling Service
Interaction Service
Flight Dynamics Service
Planning Service
Data Product Management Service
RemoteSpacecraft
M & C
RemoteSoftware
ManualOperations
(M&C Displays)
RemoteData
Managment
RemoteScheduleExecution
RemoteProcedure/Function
Execution
AutomationProxy
SpacecraftM & CProxy
External
ScheduleProxy
SoftwareProxy
DataManagment
Proxy
RemotePlanning
PlanningProxy
LocationProxy
RemoteLocation
Automation(ProcedureExecution)
ScheduleExecution
FlightDynamics
Planning
TimeProxy
RemoteTime
Time Service
SoftwareManagement
Analysis
SM&C Prototype DemoJune 2006
5
Mission Operations [MO] ServicesName Service Objects and Operations Priority
Core Monitoring & Control Parameters: publish status; setActions [Commands]: publish status; invoke/sendAlerts [Events]: notify; raise
1
Time Time: report; set; correlate; notify 2
Software Management On-board Software: load; dump 2
Planning Request Planning Request/Goal: request; response 3
Scheduling Schedule: distribute; edit; control; progress reporting 3
Automation Procedure/Function: control; progress reporting 2
Data Product Management Data Product [Payload Data File]: directory; transfer 3
Location Position: tracking, ranging, onboard positioning 3
Flight Dynamics Orbit/Attitude/Predicted Events: determination, propagation, manoeuvre preparation
4
Operator Interaction Message/Alarm/Query: notify; operator response 4
Remote Buffer Management Buffer: catalogue; retrieve; clear 4
SM&C Prototype DemoJune 2006
6
Mission Operations Services: Concept
Interfaces: Point to Point, Data Flow Oriented, Full Protocol Stack Services: Many to Many, Information Oriented, One Layer of Stack
Service Objects: represent Domain Specific Information Event Messages synchronise the Consumer’s View Control Messages allow the Consumer to invoke Operations
Each MO Service has its own specialised Information Model Generic Common Service: publish Events and invoke Operations
ServiceProvider
ServiceConsumer
Object Object View
Events
Service Object
Operations
SM&C Prototype DemoJune 2006
7
Generic Service Pattern: Parameter Example
Service Layer
Service Provider
Service ConsumerHCI Displays
Other Applications
ServiceConfiguration
Database
ServiceHistoryArchiveO
bse
rve C
on
tro
l Man
ag
e
Archive
Replay, Retrieve
Access
Access
Parameter Class
Parameter Object Definitions
Parameter History
Parameter Events
Set Parameter Action
Disable/Enable Monitoring Checks
Dynamic History Replay:Observer view
Block Retrieval
SM&C Prototype DemoJune 2006
8
SM&C Mission Operations Framework
SM&C: Mission Operations ServicesSM&C Core Service: Parameters Actions Alerts
SM&C MO ServiceFramework
ConsumerApplication
ProviderApplication
MO DomainSpecificApplications
TechnologyAdaptors
SAP: Service Access PointPlug-inApplications
Infrastructure Services
Message Exchange; File Transfer; Mail
TechnologySpecificInfrastructure
Communications Services
SM&C: Protocol
Message Exchange; File Transfer; Mail
SM&C: Common Services
Interoperable Protocol (PDUs)
SM&C Prototype DemoJune 2006
9
CCSDS SM&C Layers
SM&C Mission Operations Services
Core, Time, Software Management …
SM&C Common Services
Directory,Replay Control
SM&C Protocol
Messaging[AMS]
File Transfer[CFDP]
Mail[SMTP/SMS]
Messaging File Transfer Mail
Consumer/Provider
Generic Interaction Patterns
MOIMS SM&CServices
SM&C Prototype DemoJune 2006
10
Scope of Demonstration
CCSDS MO Service Prototype Context
SM&C CoreSM&C Common
AMS/JMS/SOAP
Network
Plug-in AppsBNSC
SIM/ESA
SM&C CoreAdapter
SM&C Common
AMS/JMS/SOAP
SM&C Protocol
SM&C Protocol
MCS 1/CNESSM&C Core
SM&C Common
AMS/JMS/SOAPSM&C Protocol
MCS 2/JPLSM&C Core
SM&C Common
AMS/JMS/SOAPSM&C Protocol
SM&C Prototype DemoJune 2006
11
SM&C Prototype Components & Deployment ESA Provided “Spacecraft”
GOCE Simulator BNSC Provided “Plug-in” Applications
APEX: Procedure Automation X3DMON: 3d Visualisation
Provider Side and Consumer Side SM&C Protocol Stacks ESA Implementation of Provider Side BNSC Implementation of Consumer Side
Separate Components for each SM&C Protocol Layer: Layer API Binding to Lower Layer
3 Deployment Cases for different Messaging Technologies SM&C Protocol / CCSDS Asynchronous Messaging Service
(AMS) Java Messaging Service (JMS) SOAP + Bespoke “EGSE” Router
SM&C Prototype DemoJune 2006
12
Prototype SM&C Side Protocol Stacks
Satellite [Simulator]Ground M&C
Any MCS
SM&C Protocol
MCS Adaptor
SM&C Core
SM&C Common
CCSDS AMS
Comms Layer
Any Simulator
SIM Adaptor
SM&C Core
SM&C Common
Comms Layer
APIs
Consumer SideTechnology/Platform A
Provider SideTechnology/Platform B
CCSDS AMS
SM&C Protocol
SM&C Prototype DemoJune 2006
13
SM&C Prototype Deployment over SMCP & AMS
NASA/JPL
AMS
ESABNSCCNES
Common Service(Java over SMCP)
Common Service(Java over SMCP)
Core Service(Java over Common)
Application Adaptor
GOCE SimApps
Common Java API
SMCP C API
SMCP SMCP
Core Service(Java over Common)
Apps
SMCP
SMCP C API
Common Java APICommon Java API
Core Java APICore Service
(Java over Common)
Core Java API
Application Adapter
Core Java API
Application Adaptor
BNSC provided
CNES provided
ESA provided
NASA/JPL provided
Common Service(Java over SMCP)
SMCP C API
SM&C Prototype DemoJune 2006
14
SM&C Prototype Deployment over JMS
Standard Message Middleware
JMS
ESABNSCCNES
Core Service(Java over Common)
Application Adaptor
GOCE SimApps
Common Java APICommon Service(Java over JMS)
Core Service(Java over Common)
Apps
Common Java APICommon Java API
Core Java APICore Service
(Java over Common)
Core Java API
Application Adapter
Core Java API
Application Adaptor
Common Service(Java over JMS)
Common Service(Java over JMS)
Java JMS API Java JMS API Java JMS API
BNSC provided
CNES provided
ESA provided
Standard
SM&C Prototype DemoJune 2006
15
SM&C Prototype Deployment over SOAP/EGSE
Bespoke Messaging Middleware
EGSE SOAP Messaging System
ESABNSCCNES
Core Service(Java over Common)
Application Adaptor
GOCE SimApps
Common Java API
Apps
Common Java API
Core Java APICore Service
(Java over Common)
Core Java API
Application AdapterApplication Adaptor
Common Service(Java over EGSE/SOAP)
Common Service(Java over EGSE/SOAP)
Common Service(Java over EGSE/SOAP)
Core Service(Java over Common)
Common Java API
Core Java API
Java SOAP API Java SOAP API Java SOAP API
BNSC provided
CNES provided
ESA provided
Standard
SM&C Prototype DemoJune 2006
16
APEX: Automated Procedure Execution Key Features:
Operations & Test Automation Model-based Execution and History Graphical Editor and Status Display Client-Server Separation Distributable: Multisat, Multimission Lightweight Java Implementation Portable and Scalable
Deployed at EUMETSAT
Primary Thread
Procedure Execution
Phase
Procedure Trigger (wait & check condition)
Procedure TriggerPhase
Procedure Confirmation(wait & check condition)
Procedure Confirmation
Phase
Secondary ThreadsOutlining
Flow Control
Step Body
Step Trigger
Step Confirmation
SinglePass
MultiPass
Primary Thread
Procedure Execution
Phase
Primary ThreadPrimary Thread
Procedure Execution
Phase
Procedure Trigger (wait & check condition)
Procedure TriggerPhase
Procedure Confirmation(wait & check condition)
Procedure Confirmation
Phase
Procedure Confirmation(wait & check condition)
Procedure Confirmation
Phase
Secondary ThreadsOutlining
Flow Control
Step Body
Step Trigger
Step Confirmation
Secondary ThreadsOutlining
Flow Control
Step Body
Step Trigger
Step Confirmation
Outlining
Flow Control
Step Body
Step Trigger
Step Confirmation
SinglePassSinglePass
MultiPassMultiPass
Ste
pS
tep
Co
nfi
rmC
on
firm
Tri
gg
er
Tri
gg
er Wait for TriggerWait for Trigger
Bo
dy
Bo
dy
Check Pre-Condition
Initiate Body
Wa
tch
Body Executes
Check Pre-Condition
Initiate Body
Wa
tch
Body Executes
Check Post-ConditionCheck Post-Condition
Re
co
ve
ry Ac
tion
sR
ec
ove
ry Ac
tion
s
Trigger Timeout
Precondition Failure
Body Initiation Failure
Watch Condition Occur.
Body Failure
Confirmation Timeout
Post-Condition Failure
Re
co
ve
ry Ac
tion
sR
ec
ove
ry Ac
tion
s
Trigger Timeout
Precondition Failure
Body Initiation Failure
Watch Condition Occur.
Body Failure
Confirmation Timeout
Post-Condition Failure
Body Completes
Wait to Confirm
Body Completes
Wait to Confirm
Asynchronous Execution (Thread Blocked, Waiting)Asynchronous Execution (Thread Blocked, Waiting)
Wait Condition:Wait For Date-Time, Event or Condition with Timeout
Wait Condition:Wait For Date-Time, Event or Condition with TimeoutWait Condition:Wait For Date-Time, Event or Condition with Timeout
Wait Condition:Wait For Date-Time, Event or Condition with Timeout
Recovery Actions:Associated with Failure ConditionSpecified at Procedure or Step Level(Step Level takes precedence)
Recovery Actions:Associated with Failure ConditionSpecified at Procedure or Step Level(Step Level takes precedence)
APEX Server Node
APEXAutomated Procedure Execution
ICOL Action/Data Server API
ICOLExpression Evalution
Core APEXApplication
SM&C Provider Protocol Stack
MCSAny MCS
SM&C Action/Data Server Binding
SM&C Client Protocol Stack
SM&CPlug-in
SM&C Prototype DemoJune 2006
17
X3DMON Overview
X3DMON (X3D MONitoring tool) was developed as the LogicaCMG contribution to the BNSC sponsored SM&C prototyping activity.
X3DMON is a diagnostic tool that can be used by operators to view parameter updates visually on a 3D spacecraft model. It relies on CCSDS SM&C services for the delivery of parameter data. It is written entirely in Java.
X3D is a emerging open XML based standard for 3D models, which aims to promote interoperability. It is widely expected to supersede VRML (Virtual Reality Modelling Language) in the near future.
The Xj3D API has been used to provide 3D capabilities. Xj3D is a project of the Web3D Consortium focussed on creating a toolkit for X3D content written in Java. The Xj3D API has been developing rapidly and release 1.0 was made on 17th April 2006.
Xj3D is an open source product licensed mostly under LGPL. A key development for 3D applications running on the linux platform has
been the move from XFree86 to X.org for the X-windowing implementation. This has allowed hardware 3D acceleration to be utilised by applications and makes a dramatic difference to performance.
A particularly useful feature of X3DMON is the ability to associate parameters with views of the 3D model.
SM&C Prototype DemoJune 2006
18
Ethernet Hub
SM&C Core and Common over SOAP
Demonstration Configuration
GOCE Simulator X3DMONAPEX