28.01.2015 Views

TPF-I SWG Report - Exoplanet Exploration Program - NASA

TPF-I SWG Report - Exoplanet Exploration Program - NASA

TPF-I SWG Report - Exoplanet Exploration Program - NASA

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

F ORMATION F LYING A L G O R I T H M D E V E L O P M E N T<br />

torque commands into thruster and reaction wheel commands. The FACS software is the same for all<br />

spacecraft, and so any spacecraft can assume the role of leader in the formation-control architecture.<br />

The FAST will be validated by simulating FCT formation scenarios. The FACS residing on the FCT robots<br />

has two additional subsystems, an absolute translation system (ATS) for positioning the robots<br />

independently on the experiment floor, and a formation drift controller (FDC) that keeps the formation<br />

approximately centered on the experiment floor without affecting formation performance. A secondary<br />

mode commander, called the FCT-FACS MDC, coordinates these additional subsystems. The ATS uses<br />

raw sensor data, and so it does not require an estimator.<br />

The Software Executive (SE) provides a flight-like environment for execution of the FACS and is designed<br />

to support a wide variety of formation-control architectures and algorithms. The SE provides commanding,<br />

telemetry handling, device-level communication, inter-spacecraft communication, and scheduling within<br />

the real-time VxWorks operating system. A TCL command interpreter functions as the command<br />

executive. The formation-control algorithms are also commanded via TCL commands. These commands<br />

are simple to implement, and we have found that adding new commands can be done in less than an hour.<br />

Telemetry is available in ASCII or binary format, and the process for generating telemetry has been<br />

automated in Matlab. In addition, telemetry identifiers, telemetry generation, telemetry decoding, and<br />

telemetry display code are all automatically coded from a telemetry specification written in a standard<br />

spreadsheet tool. We are able to automatically code the memory map describing the interface between the<br />

simulation and the VxWorks hardware boards, again based on a spreadsheet specification. The auto-coding<br />

tools were written in Java.<br />

Two crucial services provided by the SE are spacecraft-to-spacecraft clock offset estimation and controlcycle<br />

synchronization. Clock offsets are necessary for formation estimation. Control-cycle synchronization,<br />

which is the process of making control cycles on separate spacecraft start at the same true time, is required<br />

for the highest precision formation control. By using time echo packets similar to NTP, the SE Time<br />

Manager determines the clock offsets between spacecraft. Then, each spacecraft communicates the time at<br />

which its most recent control cycle started. With this data the SEs determine the amount to lengthen their<br />

control cycles. No shortening is allowed. The SEs then command their SCLKs to appropriately delay the<br />

next control-cycle interrupt to bring all the control cycles into synchronization. For example, if control<br />

cycles are 1 s in duration and SC1’s control cycle starts 100 ms before SC2, then the SE on SC1 would<br />

command the SCLK to send the next control cycle interrupt in 1.1 s. A refined version of this basic scheme<br />

has been implemented wherein the control cycles are resynchronized periodically. In steady state with no<br />

additional SCLK drift added to the inherent processor clock drift, cycle shifts are on the order of a few<br />

milliseconds.<br />

The SE also hosts the ISC manager. Currently, a time division multiple access (TDMA) architecture is<br />

implemented for sharing the wireless link between the ISC, the console uplink and downlink, the time-echo<br />

packets, and the control cycle synchronization messages. Existing communication protocols (such as TCP<br />

and user datagram protocol (UDP)) are not satisfactory since TCP can disrupt real-time performance<br />

through continual packet resends, and UDP is not robust to packet drops. A new protocol was developed<br />

called real-time UDP that adds timeouts and a limit to packet resends.<br />

187

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!