OOI CI LCA REVIEW August 2010 Ocean Observatories Initiative Instrument and Platform Agent Architecture (IPAA) Steve Foley, David Everett Life Cycle Architecture.

Slides:



Advertisements
Similar presentations
Campus02.at don't stop thinking about tomorrow DI Anton Scheibelmasser Setubal ICINCO /25 Device integration into automation systems with.
Advertisements

COM vs. CORBA.
H. 323 Chapter 4.
WHAT IS AN OPERATING SYSTEM? An interface between users and hardware - an environment "architecture ” Allows convenient usage; hides the tedious stuff.
ARCH-05 Application Prophecy UML 101 Peter Varhol Principal Product Manager.
CCNA – Network Fundamentals
Snejina Lazarova Senior QA Engineer, Team Lead CRMTeam Dimo Mitev Senior QA Engineer, Team Lead SystemIntegrationTeam Telerik QA Academy SOAP-based Web.
Libraries in FE Colleges Capita Library Management System Demonstration May 2013.
MotoHawk Training Model-Based Design of Embedded Systems.
Network Management Overview IACT 918 July 2004 Gene Awyzio SITACS University of Wollongong.
Basic Input/Output Operations
© 2004, The Trustees of Indiana University 1 OneStart Workflow Basics Brian McGough, Manager, Systems Integration, UITS Ryan Kirkendall, Lead Developer.
Software System Integration
–Streamline / organize Improve readability of code Decrease code volume/line count Simplify mechanisms Improve maintainability & clarity Decrease development.
TrendReader Standard 2 This generation of TrendReader Standard software utilizes the more familiar Windows format (“tree”) views of functions and file.
Effective Methods for Software and Systems Integration
The Design Discipline.
IP Ports and Protocols used by H.323 Devices Liane Tarouco.
Software Engineering Chapter 15 Construction Leads to Initial Operational Capability Fall 2001.
Chapter 2 The process Process, Methods, and Tools
-Nikhil Bhatia 28 th October What is RUP? Central Elements of RUP Project Lifecycle Phases Six Engineering Disciplines Three Supporting Disciplines.
Data Flow Diagrams.
Kevin Gomes, SENSORS Overview and Architecture OOI Cyberinfrastructure: Sensing and Acquisition Workshop San Diego August 5-7, 2008.
THE GITB TESTING FRAMEWORK Jacques Durand, Fujitsu America | December 1, 2011 GITB |
Protocols and the TCP/IP Suite
OOI CI LCA REVIEW August 2010 Ocean Observatories Initiative Instrument and Platform Agent Architecture (IPAA) Steve Foley Life Cycle Architecture Review.
OOI CI LCA REVIEW August 2010 Ocean Observatories Initiative Common Execution Environment Kate Keahey, Tim Freeman, Alex Clemesha, John Bresnahan, David.
© Janice Regan, CMPT 300, May CMPT 300 Introduction to Operating Systems Principles of I/0 hardware.
Identify steps for understanding and solving the
EPE Release 2 IOC Review August 7, 2012 Ocean Observatories Initiative OOI EPE Release 2 Initial Operating Capability Review System Development Overview.
(More) Interfacing concepts. Introduction Overview of I/O operations Programmed I/O – Standard I/O – Memory Mapped I/O Device synchronization Readings:
Moving into Implementation SYSTEMS ANALYSIS AND DESIGN, 6 TH EDITION DENNIS, WIXOM, AND ROTH © 2015 JOHN WILEY & SONS. ALL RIGHTS RESERVED.Roberta M. Roth.
OOI CI LCA REVIEW August 2010 Ocean Observatories Initiative Common Execution Environment Kate Keahey, Tim Freeman, Alex Clemesha, John Bresnahan, David.
OOI CI LCA REVIEW August 2010 Ocean Observatories Initiative OOI Cyberinfrastructure Architecture Overview Michael Meisinger Life Cycle Architecture Review.
(Business) Process Centric Exchanges
OOI CI LCA REVIEW August 2010 Ocean Observatories Initiative Instrument and Platform Agent Architecture (IPAA) Steve Foley, David Everett Life Cycle Objective.
OOI CI LCA REVIEW August 2010 Ocean Observatories Initiative Construction Plan John Graybeal Life Cycle Architecture Review La Jolla, CA.
OOI CI EOI LCA REVIEW December 13, 2010 Ocean Observatories Initiative External Observatory Integration Christopher Mueller Life Cycle Architecture Review.
Ocean Observatories Initiative OOI Cyberinfrastructure Life Cycle Objectives Review January 8-9, 2013 Tom O’Reilly Monterey Bay Aquarium Research Institute.
Ocean Observatories Initiative Data Management (DM) Subsystem Overview Michael Meisinger September 29, 2009.
OOI CI LCA REVIEW August 2010 Ocean Observatories Initiative External Observatory Integration Christopher Mueller, Matt Arrott, John Graybeal Life Cycle.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
© 2004 Mercury Computer Systems, Inc. FPGAs & Software Components Graham Bardouleau & Jim Kulp Mercury Computer Systems, Inc. High Performance Embedded.
OOI CI LCA REVIEW August 2010 Ocean Observatories Initiative OOI Cyberinfrastructure Common Operating Infrastructure Subsystem Michael Meisinger Life Cycle.
OOI CI LCA REVIEW August 2010 Ocean Observatories Initiative OOI Cyberinfrastructure Architecture Assessment John Graybeal, Michael Meisinger Life Cycle.
TTCN-3 MOST Challenges Maria Teodorescu
March 2004 At A Glance NASA’s GSFC GMSEC architecture provides a scalable, extensible ground and flight system approach for future missions. Benefits Simplifies.
Fast Fault Finder A Machine Protection Component.
Ocean Observatories Initiative OOI Cyberinfrastructure Data Management Michael Meisinger & David Stuebe OOI Cyberinfrastructure Life Cycle Objectives Milestone.
EGOS LLC CCSDS 14/ Question Question; Why a Service Viewpoint? Short Answer; Because a service viewpoint provides a useful additional level.
Mantid Stakeholder Review Nick Draper 01/11/2007.
SA R1C3 Wrap-up Presentation slide 1 Sensing and Acquisition Release 1 Construction 3 Wrap-up Presentation May 19, 2011 Alon Yaari, SA Team Lead.
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
Software Engineering Issues Software Engineering Concepts System Specifications Procedural Design Object-Oriented Design System Testing.
IT3002 Computer Architecture
OOI CI LCA REVIEW August 2010 Ocean Observatories Initiative Sensing and Acquisition Subsystem Arjuna Balasuriya Life Cycle Architecture Review La Jolla,
Slide 1 2/22/2016 Policy-Based Management With SNMP SNMPCONF Working Group - Interim Meeting May 2000 Jon Saperia.
Ocean Observatories Initiative OOI Cyberinfrastructure Life Cycle Objectives Review January 8-9, 2013 Scientific Workflows for OOI Ilkay Altintas Charles.
OOI CI LCA REVIEW August 2010 Ocean Observatories Initiative External Observatory Integration: Christopher Mueller Life Cycle Objectives Review La Jolla,
March 2004 At A Glance The AutoFDS provides a web- based interface to acquire, generate, and distribute products, using the GMSEC Reference Architecture.
OOI CI LCA REVIEW August 2010 Ocean Observatories Initiative User Experience Susanne Jul, Carolanne Fisher, Tom Auer, Chris Quintana Life Cycle Architecture.
Software Architecture Architecture represents different things from use cases –Use cases deal primarily with functional properties –Architecture deals.
Real-Time Systems Laboratory Seolyoung, Jeong JADE (Java Agent DEvelopment framework )
(on behalf of the POOL team)
Sabri Kızanlık Ural Emekçi
API Documentation Guidelines
Software System Integration
Chapter 13: I/O Systems.
OOI Cyberinfrastructure Integrated Elaboration Demo
Presentation transcript:

OOI CI LCA REVIEW August 2010 Ocean Observatories Initiative Instrument and Platform Agent Architecture (IPAA) Steve Foley, David Everett Life Cycle Architecture Review La Jolla, CA

OOI CI LCA REVIEW August 2010 Agenda IPAA background Release 1 Product Description Use Case Overview Architectural Overview Technology Challenges and Achievements Progress in Elaboration Phase (from LCO to LCA) LCA Accomplished Use Cases Demonstrated Use Cases

OOI CI LCA REVIEW August 2010 IPAA Subsystem Overview Provides interface between instruments and the rest of CI Configures and commands instruments Collects data from instruments and publishes into CI Intended to be more production of drivers than development of CI core concepts after initial data plumbing is complete

OOI CI LCA REVIEW August 2010 Release 1 Product Description Use Case Overview Responsible for: #18 Command An Instrument Supporting: #2 Hello Instrument #19 Direct Instrument Access #20 Command a Resource #24 Version a Resource

OOI CI LCA REVIEW August 2010 Command an Instrument Use Case Initial use case is to command an instrument User determines commands to apply to an instrument Instrument Agent has already been created and registered Commands are issued to Instrument Agent Commands have been redirected to Instrument Driver specific to the instrument Commands are applied to the instrument by the driver Responses are passed back to the user Does not handle permissions or direct access

OOI CI LCA REVIEW August 2010 Architectural Overview 2 sides to the IPAA black box: AMQP protocol to talk to CI’s registries, services, agents, UIs, etc. RS-232/Ethernet with instrument-specific text or binary protocols to communicate with instrument. Between the 2 sides are the agent and driver that provide access control, locking, translation, buffering across slow links, instrument/driver specific logic

OOI CI LCA REVIEW August 2010 Simplified Architecture Overview Basic flow of commands to instruments Return path is the same Instrument Management Services Instrument Agent Instrument Driver Instrument Agent Instrument Driver Instrument AMQP TCP AMQPAMQP

OOI CI LCA REVIEW August 2010 Instrument Agent Interface: CI Side Generic common interface for system-wide interaction Extensible at lower levels for instrument-specific work Based on getting and setting parameters and executing commands Announces capabilities and uses registries for discovery Potentially capable of transactions and sequences

OOI CI LCA REVIEW August 2010 Instrument Agent Interface Execute commands (CI and Instrument) Get/Set parameters (CI and Instrument) Get status (CI and Instrument) Get capabilities (CI and Instrument) Get translator function (CI) Get/Set CI lifecycle state (CI) Get registry entries (CI)

OOI CI LCA REVIEW August 2010 Test Instrument: SBE49 SeaBird Electronics SBE49 CTD has been our simple, text-based test example instrument, easy to mock up and test. Some commands: DS – Status & params Polled sampling PUMPON / PUMPOFF TS – Take single sample Autonomous sampling START / STOP NAVG=x – Samples to average Settings BAUD=x OUTPUTFORMAT=x …various coefficients to set

OOI CI LCA REVIEW August 2010 General Instrument State Model SBE49 model is already a degenerate form of this, logic is partially there Will work to generalize instrument agent software to support this model

OOI CI LCA REVIEW August 2010 Instrument Driver Interface: Instrument Side S>navg=16# set a few parameters S>autorun=y S>pumpdelay=30 S>ds# display some settings SBE 49 FastCAT V 1.3a SERIAL NO number of scans to average = 16 pressure sensor = strain gauge, range = minimum cond freq = 3273, pump delay = 30 sec start sampling on power up = yes output format = raw HEX temperature advance = seconds celltm alpha = 0.03 celltm tau = 7.0 real-time temperature and conductivity correction enabled, not applied to raw data S>outputformat=2# Raw Tmp, Cond, Pres, Sal S>ts# Test single sample , , , S>start# Start streaming , , , , , , , , , …

OOI CI LCA REVIEW August 2010 Instrument Driver Interface: Instrument Side Takes Get/Set/Execute based calls Translates to/from instrument protocol Maintains necessary protocol state/mode with instrument Needs to know what commands are valid SBE49 has very little state to track, other instruments will have more

OOI CI LCA REVIEW August 2010 Status of Progress Elaboration period has been focused on infrastructure for process management, data flow, and proper interaction with registries End-to-end exchanges of messages demonstrate complete data pathway and interface sanity “Command An Instrument” use case was addressed and can be demonstrated.

OOI CI LCA REVIEW August 2010 Technology and Interface Choices AMQP between Agent and Driver May be changed during construction if performance or situation requires it AMQP between Agent and CI registries Currently TCP with text protocol to serial device (would be through a serial-to-Ethernet device)

OOI CI LCA REVIEW August 2010 Technology Challenges and Achievements Agent registration  discoverable Instrument Agents Separation of agent and driver  decoupled processing Simulated device  testing of data plumbing Protocol interaction with device  science data flows Start data flowing from instrument, acquiring by driver, and publishing to subscribers  complete data path coverage

OOI CI LCA REVIEW August 2010 Challenges – Registration Registries did not initially exist, but have been developed with the Data Management team, and their contents defined Instruments are the first working agents, so plenty of work needed to be done to organize registries Sequence is a bit involved, but easy to use at higher levels

OOI CI LCA REVIEW August 2010 Challenges – Registration

OOI CI LCA REVIEW August 2010 Challenges – Separation of Agent/Driver Having the driver and agent in the same process was problematic for both CI interactions and instrument interactions happening simultaneously Agent and driver communicate via AMQP messages Separate agent and driver allows for independent development, testing, profiling, maintenance, and improvement as needed Messaging layer is added complexity

OOI CI LCA REVIEW August 2010 Challenges – Simulation Did not initially have instruments Have multiple developers Need simple, repeatable, controllable, far end for commands/queries We developed a simulator that handles very simple requests from our code. Allows for a quick guess at compatibility before a test instrument is ready. Definitely not a substitute for a real instrument

OOI CI LCA REVIEW August 2010 Challenges – Interacting with devices All instruments behave a little differently Initial simulator should fit protocol spec…but no guarantees First cut of interaction with a sensor is to a mocked up SeaBird Electronics SBE-49 Allows for commanding an instrument and flowing data Rest of instrument agent flows data through completed data plumbing

OOI CI LCA REVIEW August 2010 Achievement – Putting It All Together Initial setup and registration

OOI CI LCA REVIEW August 2010 Challenges – Interaction and instrument command

OOI CI LCA REVIEW August 2010 Challenges – Interaction and data publishing

OOI CI LCA REVIEW August 2010 Early Work Completed - RSN While platform agent work is not on the Release 1 agenda, investigations were made into RSN software platform command and control interfaces to prevent problems in the future. Initial plans are for the interface to be Python (AMQP?) based, SNMP may also be an option if needed Interfaces to interact with RSN platform software elements are being specified with RSN team

OOI CI LCA REVIEW August 2010 Early Work Completed – CGSN Work has been done to plan integration with the CGSN platforms. On-board controller will be Linux based embedded ARM processor (Technologic Systems TS-7370) Python capable, early versions of code function without modifications. Capability Container is slow, needs tuning More use case work needs to be done

OOI CI LCA REVIEW August 2010 One More Elaboration Iteration IPAA has one more iteration to go before IPAA moves on to construction. This iteration will include the following work: Support for direct access mode Streamline data flow Generalize and improve instrument state management Keep up with core CI refactoring and improvements Continue work with RSN and CGSN teams Add drivers for an ADCP (binary format) Add Q330 data logger driver (3 rd party Antelope software)

OOI CI LCA REVIEW August 2010 Significant Risks Performance on CGSN embedded device Profiling indicates that OOI logic in python is fine for the anticipated load, but Capability Container messaging is slow Other libraries exist and may be worth testing. If Python is too slow, we may port of some code to C Common data format is still unspecified, will affect translation complexity and effort Simulators are only so good…will need real devices soon Instrument behavior is sometimes surprising/unexpected Staffing – We need the people to write the drivers

OOI CI LCA REVIEW August 2010 Addressing the Key Issues Thanks ! Questions ?