Upload
terence-leslie-townsend
View
220
Download
2
Tags:
Embed Size (px)
Citation preview
Introduction to the Atlas Platform
Mobile & Pervasive Computing LaboratoryDepartment of Computer and Information Sciences
and EngineeringUniversity of Florida
Gainesville, FL, U.S.A.
Introduction
sensors
Homes
Homeland Security
Logistics
Structural monitoring
Actuators
Motivation
How do I integrate sensors and
actuators into my
application??
Atlas – In a Nutshell•A Plug and Play Service Oriented Sensor and Actuator Platform
•Represents each of the devices (sensors and actuators) connected to it as software services
• New devices automatically appear as services inside service framework upon power-up.
• Application Developers do not require hardware knowledge or need to learn embedded systems programming to integrate sensors and actuators into their applications.
• Sensors and actuators can be discovered, accessed and controlled through high-level software mechanisms
•Provides homogeneous interface to heterogeneous devices
OSGi• Open Services Gateway initiative. Founded by Sun Microsystems, IBM,
Ericsson and others in March 1999. Java based open standard.
• A standard, service oriented software component framework for manufacturers, service providers, and developers.
• Allows applications to dynamically discover and use services running inside the OSGi Service framework.
• OSGi provides life cycle management for services and applications running inside framework.
• Services/Applications (called Bundles) are installed with a standardized deployment format and can be started, stopped, updated, and uninstalled without requiring the JVM to be restarted.
Atlas Components
• Hardware nodes
• Software– Firmware running on hardware nodes– Components running inside OSGi framework– Service Bundles– Tools
Atlas Node Hardware
• Modular Hardware Design
– Processing Layer
– Device Connection Layer
– Communication Layer
Communication Layer
Processing Layer
Device Connection Layer
Firmware
• Runs on the Processing Layer of each Atlas node
• Controls communications and processing on the node including low level interaction with the sensors and actuators
• Written in C / compiled using AVR-GCC
Firmware Components
• Device Controller
• Communications Module
• Command Handler
• Onboard Processing Engine
OSGi based components
• Runs inside an OSGi (Open Services Gateway initiative) framework such as Knopflerfish, Equinox or Felix.– OSGi is a Java based open standard– Provides mechanisms for service discovery and delivery– Runs on a single JVM and provides a sandbox execution
environment
• Core Components– Atlas Manager– Service Bundle Repository
• Web based Configuration & Admin Tool• Eclipse Plug-in for creating smart space applications
OSGi Components
• Network Communicator
• Bundle Repository• Device Service
Bundles• Configuration
Manager• Network Manager• Desktop Viewer• Web based
Configuration & Admin Interface
Bundles• Service Bundle Repository allows users to manage
various sensor & actuator service bundles such as Pressure Sensor Bundle, Servo Bundle etc.
• Bundles are Java applications packaged in a standard JAR file along with a manifest file containing certain OSGi specific headers
• A Bundle can export its functionality as services to other bundles and can import other services for its own use
• Bundle can be installed, started, stopped, uninstalled and updated inside the framework
Glucose Monitoring Device
Atlas Nodes
OSGi Service Framework
Temperature Service Glucose Monitor Service
Client Application
Atlas ManagerWeb based Config Tool
Bundle Repository
Temperature Sensor
Typical Atlas deployment External
Application