A Distributed Computing Architecture for Small Satellite and Multi-Spacecraft Missions

A Distributed Computing Architecture for Small Satellite and Multi-Spacecraft Missions

SSC02-IV-6 A Distributed Computing Architecture for Small Satellite and Multi-Spacecraft Missions Bryan Palmintier*, Christopher Kitts*, Pascal Stang* and Michael Swartwout** *Robotic Systems Laboratory, Santa Clara University, Santa Clara CA 95053 (408) 554-4382, [email protected], [email protected], [email protected] **Department of Mechanical Engineering, Washington University in St. Louis, St. Louis MO 63130 (314) 935-6077, [email protected] Abstract. Distributed computing architectures offer numerous advantages in the development of complex devices and systems. This paper describes the design, implementation and testing of a distributed computing architecture for low-cost small satellite and multi-spacecraft missions. This system is composed of a network of PICmicro® microcontrollers linked together by an I2C serial data communication bus. The system also supports sensor and component integration via Dallas 1-wire and RS232 standards. A configuration control processor serves as the external gateway for communication to the ground and other satellites in the network; this processor runs a multitasking real-time operating system and an advanced production rule system for on-board autonomy. The data handling system allows for direct command and data routing between distinct hardware components and software tasks. This capability naturally extends to distributed control between spacecraft subsystems, between constellation satellites, and between the space and ground segments. This paper describes the technical design of the aforementioned features. It also reviews the use of this system as part of the two-satellite Emerald and QUEST university small satellite missions. Table of Contents have an architecture that enables collaborative processing focused on a specific task (e.g. parallel 1. Introduction computation), and/or each may be optimized to 2. Advantages of a Linear Bus Architecture efficiently execute particular tasks or control specific 3. System Design subsystems (e.g. smart peripherals). 4. Application to Small Satellite Missions 5. The Architecture as an Experiment The architecture of a computing system (whether 6. Future Work centralized or distributed) refers to the physical and 7. Conclusions logical framework used to interconnect components. It 8. Acknowledgements determines the pathways for inter-subsystem data transfer and may have a large bearing on both wiring harness size and modularity. As depicted in Figure 1, 1. Introduction typical architecture definitions include the following (in some cases, they are not mutually exclusive): Distributed computing architectures offer numerous · A star (centralized or distributed) architecture advantages in the development of complex devices and consists of a central processing unit that is directly systems. These advantages include well-defined connected via dedicated links to every other interfaces, flexible composition, streamlined computational unit; this approach often leads to integration, straightforward function-structure large wiring harnesses and a dependency of the mappings, standardized components, incremental central computer’s hardware/software on the testing, and other benefits. design of the peripheral units. From a computational point of view, a star configuration is In the context of this paper, distributed computing the prototypical example of a centralized refers to computational decentralization across a architecture when the connected components don’t number of processors which may be physically located have processors. A star configuration, however, in different components, subsystems, systems, or can be used in a distributed framework if these facilities. These processors may be general-purpose components have processors. computers with data/application sharing capabilities · In a ring (distributed) computing architecture, (e.g. a typical personal computing network), they may processors are linked in a closed chain with Palmintier 1 16 th Annual AIAA/USU Conference on Small Satellites communication typically facilitated by a “token” communication protocols for arbitration, error handling which is passed from one processor to another; and other functions is a straightforward strategy. rings typically lead to small wiring harnesses, Ultimately, even the command and data handling cause minor design dependencies among interface can be standardized. For the current subsystem implementations, and may suffer from development effort, the ultimate goal of this interrupted communication if/when subsystems are standardization was to achieve component-level disconnected or fail. modularity such that components could be easily · Linear bus distributed computing architectures connected, disconnected, replaced, swapped and/or typically consist of a standardized, shared, linear upgraded in a rapid and transparent manner. data bus to which all subsystems are connected; while this often leads to small wiring harnesses and While distributed computing systems and their non-problematic (dis)connections to/from the bus, advantages are common in modern personal computer, it requires a well-designed communication protocol consumer product, industrial automation, automotive, governing when processors can transmit data over and other industries, they have been slowly adopted in the bus. the satellite industry. Recent initiatives such as the · Hybrid architectures occur when one or more NASA/JPL X2000 development program have instances of the aforementioned architectures are recognized the advantages of distributed computing used to link different processors within a single strategies and are beginning to develop such systems system. This is often done given that different for space flight. inter-processor communication requirements often are best addressed by different architectures. The authors (all of whom have served as systems · Layered architectures arise when more than one of engineers and/or managers of one or more university the aforementioned architectures is used to link to small satellite projects with centralized computing the same processors within a single system. For architectures) are pursuing the development and use of example, the same processor may have a low data a linear bus command and data handling architecture rate bus architecture for command and control for use in small and mu lti-spacecraft systems. The information but a direct, dedicated, high data rate adoption of this strategy is in and of itself an connection for science data. This is often done experiment that explores the true benefits and costs of given that different processor functions often are such an approach. The team currently believes that the 1 best addressed by different architectures. following benefits will be realized: · In the design stage, the dis tributed system will simplify the command and data flow within the 2. Advantages of a Linear Bus Architecture satellite by clarifying which specific component is responsible for each task and what information The use of a linear bus distributed computing exchange is required to initiate the task; ideally, architecture leads to a simple and relatively small data each functional block in the system’s signal flow bus that promotes standardized methodologies for diagram will map directly to a physical box on the interfacing at a range of levels. At the signal level, satellite. Furthermore, this characteristic will allow standardization of physical interconnections is a natural easy hierarchical scaling of the functional and data objective. At higher levels, standardization of data flow designs for multi-satellite missions and comprehensive space/ground segment systems. CPU Power Telem. Science Comm Data Bus (a) Centralized Architecture. (b) Ring Architecture (c) Linear Bus Architecture. Figure 1 – Comparison of Typical Computing Architectures. Palmintier 2 16 th Annual AIAA/USU Conference on Small Satellites · During development and integration, the subsystem development and to leverage economies of distributed architecture will promote the rigorous scale, a standard subsystem motherboard based around and independent test/verification and the the PIC16F877 microcontroller was developed. This controlled, incrementally integration of each standard motherboard, shown in Figure 2, includes subsystem/component. Such an achievement will power/data connectors, power control circuitry, latch- assist in de-coupling the reliance of one up protection, and full access to the PIC’s ports. subsystem’s development on the operation of another (e.g. such as the central processing unit in PIC16F877 Micro Controller most centralized architectures). Furthermore, with network bus “gateways”, components can be easily The PIC16F877 is a single chip computer, requiring integrated remotely using TCP/IP or other only an external clock source. It resides in a 40-pin protocols to bridge and test subsystems being package with 8 kwords of ROM and 384 bytes of developed at different locations. RAM. This particular PICmicro® has many built-in 2 · On-orbit, the distributed architecture will simplify peripherals, including I C capabilities and an 8 channel resource sharing (e.g. computational power, A/D converter. Another attractive feature is its low memory, etc.) among components, subsystems, and power consumption: less than 100 mW at max speed even satellites. It also promotes fault tolerance (20Mz) and less than100mW in its low-power sleep since computational functions can be supplied by mode. The PICmicro® also has a simple “RISC” other units (possibly

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    11 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us