ESA UNCLASSIFIED – For Official Use Example of EDS usage in SOIS [recap from SAFI meeting 23/6/2012] F. Torelli CCSDS SOIS WG, Darmstadt 17/04/2012
Example of SOIS EDS | F. Torelli | ESTEC | 23/06/2011 | Slide 2 ESA UNCLASSIFIED – For Official Use Introduction 1.Objective: –To give an example of how SOIS C&DA services and EDS can map to Star Tracker TM/TC ICD. 2.Inputs: –STR_TM_TC_packets_V4.xls –Report from CCSDS SOIS Spring Meeting 2011 –Notes from CCSDS SOIS Fall Meeting Entities involved: –Dictionary of Terms (DoT) –Electronic Data Sheet (EDS) –Device Access Service (DAS) –Device Virtualisation Service (DVS)
Example of SOIS EDS | F. Torelli | ESTEC | 23/06/2011 | Slide 3 ESA UNCLASSIFIED – For Official Use SOIS PnP Architecture Device Enumeration Service Device Enumeration Service Device Virtualisation Service Device Virtualisation Service Device Access Service Device Access Service Subnetwork Packet or Memory Access Service Subnetwork Packet or Memory Access Service Subnetwork Protocol Implementations Subnetwork Protocol Implementations Subnetwork Device Discovery Service Subnetwork Device Discovery Service Subnetwork Plug-and-Play Protocol Subnetwork Plug-and-Play Protocol Subnetwork Management and Configuration Subnetwork Management and Configuration Policy SOIS Subnetwork Implementation Hardware Applications DoT Standardised interface including semantics. Ref. sheet 1 in STR_TM_TC_packets_V4. Device specific functional interface. Ref. sheet 2, 3, 4 in STR_TM_TC_packets_V4. Contains syntactic and semantic types. Contains the ICD of the devices w.r.t. the SOIS service interfaces. EDS
Example of SOIS EDS | F. Torelli | ESTEC | 23/06/2011 | Slide 4 ESA UNCLASSIFIED – For Official Use Dictionary of Terms & Electronic Data Sheet –The DoT contains the attributes to be used to describe the device and in particular its interfaces (i.e. syntactic and semantic types). –The DoT is the vocabulary used to build the EDS for a particular device. –The elements of the DoT arranged (and instantiated) in the EDS for a specific device allow to associate a meaning to the raw data in the “TM and TC” of that device. –The EDS describes the mapping between the layers in the SOIS Command & Data Acquisition (C&DA) in terms of service primitives and their parameters. –The EDS describes the mechanisms to send/receive data to/from the devices and how to elaborate them along the C&DA stack.
Example of SOIS EDS | F. Torelli | ESTEC | 23/06/2011 | Slide 5 ESA UNCLASSIFIED – For Official Use Example of DoT (1/2) Basic Syntactic Types: Type IdentifiedMax RangeComment Real (single precision) Type[-inf, inf]Ranges of specific attributes can be smaller Real (double precision) Type[-inf, inf]Ranges of specific attributes can be smaller Integer (32bits) Type[-2 31, ]Ranges of specific attributes can be smaller Natural (32bits) Type[0, ]Ranges of specific attributes can be smaller Natural (16bits) Type[0, ]Ranges of specific attributes can be smaller Time (64bits) Type[(0, 0), ( , )]CUC format (s, sub-s) Composite Syntactic Types: Type IdentifierStructureRangeComment Quaternion TypeArray of 4 Real(double)[-1, 1] Real Vector TypeArray of 3 Real(double)[-inf, inf] Ranges of specific attributes can be smaller Integer Vector TypeArray of 3 Integer(32bits)[-2 31, ]Ranges of specific attributes can be smaller The provided types are examples used along the presentation for practical reasons, but are not the finalised elements of the SOIS DoT.
Example of SOIS EDS | F. Torelli | ESTEC | 23/06/2011 | Slide 6 ESA UNCLASSIFIED – For Official Use Example of DoT (2/2) Semantic Types: Type IdentifierSyntactic TypeUnitComment Final AttitudeQuaternion Type-Reference frame: J2000 frame --> sensor frame Final Attitude Measurement Time Time Types, ms Time elapsed between the last synchronisation signal and measurement Final Angular RateReal Vector Typerad/sw = vector(3) Reference frame: sensor frame vs inertial frame Final Angular Rate Measurement Time Time Types, ms Time elapsed between the last synchronisation signal and measurement ModeNatural or Enum Type-Sensor mode Direct CommandNatural or Enum Type-Command Id (e.g. reset, Standby) Linear VelocityReal Vector Typem/sS/C velocity vector = vector (3) in J2000 frame Raw AttitudeQuaternion Type-Reference frame: J2000 frame --> sensor frame Raw Linear VelocityInt Vector Typem/sVelocity / Rc SubNetwork AddressNatural Type-Global address of the unit among the subnetwork Service TypeNatural or Enum Type-SOIS Service Id (e.g. PS, DAS) The provided types are examples used along the presentation for practical reasons, but are not the finalised elements of the SOIS DoT.
Example of SOIS EDS | F. Torelli | ESTEC | 23/06/2011 | Slide 7 ESA UNCLASSIFIED – For Official Use Example of EDS for DAS Subset of EDS for SODERN HYDRA (DAS Subnetwork) EDS content for User (DAS)EDS content for Target (Subnetwork) DoT ItemValueDoT ItemValue –Device Id–STR-A–Subnet Addr –Service Type –Service Class –STR address discovered by the subnetwork services –Packet Service –Best Effort … –Service Primitive –Value Id –Acquire_From_Device –QRsFil –Service Primitive –Channel –Pkt Type –Pkt Field Position –Pkt Field Size –Packet_Receive –SAInfo –Attitude Tracking Mode Telemetry –Byte pos. 16 –32bytes … –Service Primitive –Value Id –Command_Device –VabYc –Service Primitive –Channel –Pkt Type –Pkt Field Position –Pkt Field Size –Packet_Send –IdUpdate –Linear Velocity Update Command –Byte pos. 8 –32bytes Global subnetwork address is function of the subnetwork type (i.e. Mil1553), STR address within the subnetwork (i.e. RT 03), but also of the subnetwork management policy.
Example of SOIS EDS | F. Torelli | ESTEC | 23/06/2011 | Slide 8 ESA UNCLASSIFIED – For Official Use Example of DAS implementation using EDS information To acquire the value Quat of QRsFil (filtered fused attitude quaternion), the Device Access Service user shall invoke the following service primitives: Acquire_From_Device.request(DASAP, TransId, STR-A, QRsFil); … Acquire_From_Device.indication(DASAP, TransId, Quat, ErrorCode); DAS service primitives can then be implemented by means of Packet Service primitives calls, for example as follows: Acquire_From_Device.indication(DASAP, TransId, Val, ResultMeta) { Packet_Receive.indication(PSSAP, Mil-RT03, BE, SAInfo, PktData); for (I = 0;I < Pkt Field Size; I++) Val[I] = PktData[I + Byte Pos]; } In red, relevant output parameters In blue, elements of the EDS
Example of SOIS EDS | F. Torelli | ESTEC | 23/06/2011 | Slide 9 ESA UNCLASSIFIED – For Official Use Example of EDS for DVS Subset of EDS for SODERN HYDRA (DVS DAS) EDS content for User (DVS)EDS content for Target (DAS) DoT ItemValueDoT ItemValue –Device Id–STR-Nom–Device Id–STR-A … –Service Primitive –Attribute Id –Conversion Law –DVS_Acquire –Final Attitude –Identity –Service Primitive –Value Id –Acquire_From_Device –QRsFil … –Service Primitive –Attribute Id –Conversion Law –DVS_Command –Linear Velocity –Double-To-Int –Service Primitive –Value Id –Command_Device –VabXc –Service Primitive –Value Id –Command_Device –VabYc –Service Primitive –Value Id –Command_Device –VabZc
Example of SOIS EDS | F. Torelli | ESTEC | 23/06/2011 | Slide 10 ESA UNCLASSIFIED – For Official Use Example of DVS implementation using EDS To command the update of the linear velocity (VabXc, VabYc, VabZc) to value Vel, the Device Virtualisation Service user shall invoke the following service primitives: Command_Device(STR-Nom, Linear Velocity, Vel, ErrorCode); DVS service primitives can then be implemented by means of DAS primitives calls, for example as follows: Command_Device(Device Id, Attribute Id, Value, ResultMeta) { if (Device Id == STR-Nom) Dev = STR-A; else Dev = STR-B; if (Attribute Id == Linear Velocity) { VelX = Double-To-Int(Value[0]); VelY = Double-To-Int (Value[1]); VelZ = Double-To-Int (Value[2]); Command_Device.request(DASAP, TransId0, Dev, VabXc, VelX); Command_Device.request(DASAP, TransId1, Dev, VabYc, VelY); Command_Device.request(DASAP, TransId2, Dev, VabZc, VelZ); } In green, relevant input parameters In blue, elements of the EDS More elaborated conversion law can be applied here
Example of SOIS EDS | F. Torelli | ESTEC | 23/06/2011 | Slide 11 ESA UNCLASSIFIED – For Official Use SOIS PnP Architecture - Recap Device Enumeration Service Device Enumeration Service Device Virtualisation Service Device Virtualisation Service Device Access Service Device Access Service Subnetwork Packet or Memory Access Service Subnetwork Packet or Memory Access Service Subnetwork Protocol Implementations Subnetwork Protocol Implementations Subnetwork Device Discovery Service Subnetwork Device Discovery Service Subnetwork Plug-and-Play Protocol Subnetwork Plug-and-Play Protocol Subnetwork Management and Configuration Subnetwork Management and Configuration Policy SOIS Subnetwork Implementation Hardware Applications DoT Device specific functional interface, uses the existing equipment capabilities and fits in the SAVOIR-FAIRE SW architecture. Types to be defined with the main contribution of SAVOIR-SAFI WG. EDS contains different sections covering the different SOIS service/abstraction layers. Its content is mainly filled in by equipment manufacturer. EDS Framework, specifications of formats and mechanisms need to be defined by SOIS WG to enable definition and usage of DoT, EDS and C&DA services.
Example of SOIS EDS | F. Torelli | ESTEC | 23/06/2011 | Slide 12 ESA UNCLASSIFIED – For Official Use Summary –Examples of DoT and EDS using elements of the provided Star Tracker TM/TC ICD have been presented as well as a possible service implementation. –EDS, DVS and DAS allow flexibility in the usage and implementation, still preserving standard service interfaces. –DAS interface (device specific functional interface) and the related sections of the EDS can be defined and used with the existing equipment without modifications. –The mechanisms to access DoT and EDS and their formats are under definition by the SOIS WG. –The implementation of DAS and DVS can easily follow a recurrent design pattern, which would in the future also enable auto-coding of part of the services and user applications. –SAVOIR-SAFI in the short term would be very helpful in contributing to the definition of the Common Data Dictionary content (semantic and syntactic types) in order to represent the interfaces of the existing equipments.