Operating Systems for Wireless Sensor Networks in Space Abdul-Halim Jallad and Tanya Vladimirova
Outline of Presentation • Applications of wireless sensor networks in space • Formation flying missions overview • Requirements analysis of operating systems for formation flying missions • Testbed development • Conclusions
Wireless Sensor Networks: Convergence of Technologies Wireless communications: optical and RF communications enable networking between nodes Embedded computing: Small and low-cost processors that are networked together facilitate collaboration through information and resource sharing Sensors: Miniaturization and micromachining makes tiny and low-cost sensors available commercially Wireless sensor networks
2) Spaced-based formation flying wireless sensor networks 3) Spacecraft Diagnostics and monitoring Temperature Sensors Wireless Sensor Networks in Space 1) Manned Spacecraft missions: e.g. crew health monitoring 4) Inter-planetary Exploration Figure from http://sensorwebs.jpl.nasa.gov/
Multi-Satellite Missions: Terminology • A Virtual Satellite is a spatially distributed network of individual satellites collaborating as a single functional unit, and exhibiting a common system-wide capability to accomplish a shared objective. • A Distributed Space System (DSS) is a system that consists of two or more satellites that are distributed in space and form a cooperative infrastructure for science measurement data acquisition, processing analysis and distribution. • A Constellation is a group of satellites that have coordinated coverage, operating together under shared control, synchronised so that they overlap well in coverage and reinforce rather than interfere with other satellites' coverage. • A Cluster is a functional grouping of spacecraft, formations, or virtual satellites. • A Sensor Web is a system of intra-communicating spatially distributed sensor crafts that may be deployed to monitor environments. Sensor webs may involve many non-space elements and are therefore not completely covered by DSS. • A Formation is a multiple-spacecraft system with desired position and/or orientation relative to each other or to a common target. Formation flying is the term used for the tracking and maintenance of a desired relative separation, orientation or position between or among spacecraft.
Formation-Flying Missions:Types • Signal Combination: Distinct sensors on separate nodes collect data from different sources and merge this data on-board of the formation to extract global information of a particular phenomenon e.g. Earth observation-1 mission. • Signal Coverage: A Sensor Web with identical sensors on the nodes with the purpose of covering wide areas of surface (e.g. multi-point sensing). • Signal Separation: Measurements from the same source are collected by spatially distributed sensors on-board different nodes in the formation e.g. large synthetic apertures.
Formation-Flying Missions: The Information System Sensors and Actuators: These may be divided into three classes – spacecraft specific, formation-flying specific and payload specific • On-Board Computing: • Hardware is to be power and memory efficient while being fault-tolerant. • Software includes: • mission software • middleware • an operating system to support distributed services. • Inter Satellite Communications: • Intersatellite links are different from terrestrial WSN wireless links in two main aspects: • large distances involved and • predictability Formation- Flying Missions: Information System
Model Application Mission Model The Network Aims of Research • To investigate the advantages and disadvantages of distributed computing on-board of formation-flying (FF) missions • To study possible implementations of distributed computing on-board FF missions • To propose an optimal operating system architecture for such missions • For the purpose of narrowing down the scope of this investigation we focus on a particular type of FF missions – virtual satellites • Application: • Sensor web: Imaging • Signal Separation: Synthetic apertures • The satellite nodes: • Mass <= 1 Kg • Area <= 1 cm3 • Power <= 2 Watts • Orbit = Low Earth Orbit (LEO) ~ 600Km • Separation distances = in the order of kilometers • Use of directional antennas.
Formation-Flying Mission: Information System Architecture Application App1 App2 App3 Power Management Algorithms Modules Services Virtual Machine Middleware Middleware management System Threads Address space Files Transport Operating System Network Data Link Physical Hardware Drivers Sensor Driver Hardware Hardware Sensor
OS Design for Formation-Flying Missions Main Functions: Process Description and Control • Process description and control: • Fault-tolerance: e.g. process replication • Memory considerations • Concurrency: • FF missions are distributed systems and involve concurrency • Memory management: • Use of bulk memory • Program memory wash • Input/output management • File management: • Fault-tolerance • Networking: • Space protocol for ISL and ground space links • Security • Scheduling: • Real-Time scheduling • Low-power scheduling Scheduling Concurrency Memory Management Input/Output Management File Management Networking Security
OBDH The architecture of the on-board data handling system (e.g. distributed, centralized, multi-processor etc.) affect the operating system design ISL The OS needs to consider the bandwidth, power consumption and unreliability of the inter-satellite links while making distributed decisions Formation Flying (FF) The effect of the relative dynamics brought by FF on the OS design needs to be investigated On-board Software The nature of the applications running on-board and its distribution among the FF nodes may have a direct impact on the OS design Constraints The limited size and therefore available energy for computation and communication is an important factor that the OS design has to consider OS Design Factors for Formation-Flying Missions Factors Operating System
Time-Scale = ??? On-Board Data Handling for Pico-Satellites OBDH * = system-on-a-chip: may involve various technologies including mixed-signals (analog/digital) on a single substrate Ultra-low Power SOC* Reconfigurable hardware Advanced Packaging Multi-processor Systems SiGe on SOI FPGAs ASICs
Commands received Events initiated Tasks Frame Commands made Events received The TinyOS: Component-Based OS TinyOS TinyOS Component TinyOS Application • Operating system specifically designed for wireless sensor networks • Applications consist of scheduler and a graph of components • “Higher-level” components issue commands to and respond to events from “Lower-level” components • Components contain: Set of command handlers, Set of event handlers, A fixed size storage frame, Collection of simple threads which can be scheduled. Components can be implemented in hardware or software. Events propagate upward in the hierarchy Commands propagate downward in the hierarchy.
Operating System Design for Swarms of Pico-Satellites • Fault tolerance • Small foot-print • Low-power consumption • Support for reconfigurable computing. • Distributed system support • Scalability • Support for inter-satellite link communications Design Requirements Component-Based Model Execution-Model Thread-based model Event-based model Component library • The system uses a main thread, which hands off tasks to individual task-handling threads • High context switch overhead • Tasks perform computations • Tasks are implemented as finite state machines • States of tasks are transitioned through events Conclusion: The component-based structural model provides flexibility, reusability and is suitable for distributed systems design while the event-based behavioural model provides speed, low power and memory efficiency.
Distributed Computing for Formation-Flying Missions: Testbed Windows XP PC Visualization STK Matlab STK Advanced AO Satellite Tool Kit TCP/IP server Simulink STK/ Connect Ethernet GR-PCI-XC2V-FT XSV800 XSV800 LEON-3 Multiprocessor OBC LEON-3 Multiprocessor OBC LEON-3 Multiprocessor OBC RS232 Linux development platform DDD GCC Compiler Programming Environment DSU Monitor
GR-PCI-XC2V-FT XC2V3000 Virtex-II FPGA Ethernet PHY interface LEON-FT core Support On-board memory SRAM SDRAM Flash PROM System Emulation Distributed System Emulation Hardware Node Emulation Hardware • XSV800 • XCV800 Virtex FPGA • Ethernet PHY interface • On-board memory • SRAM • Flash Prom • Mica2 motes • 916MHz Multi-channel Radio Transceiver • ATMEL128L 8-bit low-power processor • Compatible with TinyOS (specifically designed for sensor networks). Figure from the “LEON-PCI-XC2V Development board user manual” Figure from the www.xess.com website Figures from mica2 datasheet
The chosen processor is the LEON-3 soft IP core 32-bit SPARC V 8 architecture Could be used in a multi-processor system Soft core (suitable for developing system-on-chip prototypes) Power-down mode is supported Embedded Hardware Debug Support Unit (DSU). Pico-Satellite Computing Platform LEON-3 in a multi-prosessor configurationFigure from www.gaisler.com
Conclusions • Wireless sensor networks are a promising technology for space applications including orbital formation-flying (FF) missions and inter-planetary exploration. • This research focuses on implementation of distributed computing on-board FF missions employing the wireless sensor networks concept. • The various factors that affect the operating system (OS) design of FF missions may be divided into two categories: • Traditional OS requirements: e.g. code efficiency and real-time performance. • Specific requirements for FF missions: e.g. fault-tolerant distributed computing, orbit dynamics etc. • A novel OS for multi-satellite FF missions should have the following features: • An event-based execution model allowing to achieve low-power consumption and to fulfil the concurrency requirement with minimal amount of code. • A component-based structural model allowing to achieve the modularity requirement and enabling the hardware/software boundary crossing, which provides support for reconfigurable and distributed computing. • The TinyOS is selected as the baseline OS to be studied and adapted for use in distributed FF satellite missions.