Distributed Control of an Evolving Space Structure
Today, the vast majority of spacecraft are assembled on the ground and placed into orbit by a single launch. The design of spacecraft is strictly limited by the volume constraints of the launch vehicles available. Spacecraft often require large structural elements such as booms, panels, and apertures, which must be stowed for launch and deployed upon reaching orbit. Deployable structures have allowed for more efficient use of limited launch volume, while larger launch vehicles have made more launch volume available. However, most space missions are still fundamentally limited by what can fit in a single rocket fairing. Recent advances in the field of autonomous in-space assembly could decouple space missions from the constraints of launch volume.
As a large structure is assembled in orbit, the mass properties (mass, moments of inertia, and location of the center of mass) will change. This presents a problem for spacecraft control. Conventional control techniques require mass properties to be accurately measured before flight and kept within tight tolerances for sufficient system performance. Pre-flight knowledge of the mass properties of the structure at each stage of the assembly will be limited, particularly if the structure is made of mass-produced modules subject to manufacturing errors. It may be valuable to reconfigure or augment the control actuators of the spacecraft (thrusters, reaction wheels, or CMGs) to compensate for the growing mass over the construction process. The structure may be so large that investing in the attitude control infrastructure up front is impractical, or the required attitude control system might be so large that it cannot fit in a single launch vehicle. This work presents a novel approach to spacecraft control which exploits the inherently modular nature of an on-orbit assembled structure. We propose a decentralized system where control actuators are distributed across multiple modules attached around the structure. As the structure grows, the control modules can be reconfigured to adapt to the changing mass properties, and new actuators can be added to increase system performance. This work explores the implications of such an implementation on the control system design.
We will use the USC SERC’s air bearing satellite simulators to demonstrate the hardware and software implementation of a decentralized control architecture. Each “Floatbot” is an independent robotic agent controlled by its own Raspberry Pi. The goal of our work is to design a computational architecture that supports a distributed multi-agent control scheme, so that the Floatbots can coordinate with each other and collectively move an attached structure. The Floatbots use an overhead camera and Apriltags to measure their position and orientation. A central processor uses each Floatbot’s position estimate to come to a consensus on the global position and orientation of the structure, which is used in an LQR control algorithm. The computed thruster commands are then distributed back to the corresponding Floatbots for execution.