Interview with Beagle-2 Mars mission’s Linux software principal developer
Jan 15, 2004 — by LinuxDevices Staff — from the LinuxDevices Archive — 1 viewsBelow is a brief interview with Stewart Hall, principal developer of the Linux-based Mission Control Software and Mission Planning Software for the European Beagle-2 Mars lander project (B2MCS and B2MPS, respectively).
Professor Colin Pillinger and Beagle 2 model
All Rights Reserved Beagle 2
The Beagle-2 is a Mars lander that was scheduled to land on Mars on December 25, 2003. So far, no contact has been made with the lander, however, another attempt will be made (using a different communications mode) on January 24.
Hall works for British IT technology firm SciSys, which develops a range of space craft control software and is “a serious advocate of Linux,” according to Hall. In the interview, Hall discusses B2MCS, B2MPS and other Linux-based software being used in a range of European space missions.
Warning: clear your acronym cache! Re-used acronyms are initially presented in bold, with their definitions in square brackets.
Q: Where is Linux used in the Beagle-2 Mars lander project? What kind of Linux are you using?
The Mission Control Software and Mission Planning Software runs on PCs using the SuSE 8.0 distribution of Linux, at the Lander Operations Control Centre (LOCC) (National Space Centre, Leicester, UK) and the Lander Operations Planning Centre (LOPC) (Open University, Milton Keynes, UK).
The Mission Control Software is a customization of ESA's [European Space Agency's] royalty-free SCOS [Spacecraft Control and Operations System] 2000 Mission Control System C++ application framework. This is a distributed application set that performs the following functions: Spacecraft telemetry processing, filing, distribution, and interpretation, engineering calibration, Spacecraft warning states and alarms, browsable archive of spacecraft telemetry, command load construction including engineering calibration, release, and execution verification. The customization was required to meet Beagle-2 telemetry processing needs and support the bi-direction interfaces to JPL [Jet Propulsion Laboratories] and ESOC [European Space Operations Centre] to comply with the store-and-forward data exchange architectures of the NASA [National Aeronautics and Space Administration] Odyssey and ESA Mars-Express orbiters.
The Mission Planning Software is two-part application set: Scheduler and Operation Planning Software (OPS), both owned by SciSys. Scheduler is a C++ Gannt chart based, manual scheduling tool that displays critical mission events and allows its operator to manually schedule science and housekeeping operations with respect to communication opportunities. OPS uses Perl and is fully integrated with Scheduler . It validates proposed schedules against the 'rules' and resource constraints of Beagle-2 (power, illumination, temperature, data storage space). Scheduler is fully integrated with the commanding software in the Mission Control Software, allowing validated schedules to be forwarded to Beagle-2. The Scheduler also sees service on the MSG [Meteosat Second Generation] and Rosetta missions.
Both software sets are used at the LOCC and LOPC. The LOCC uses them for active Spacecraft monitoring and master scheduling, command load preparation, and command forwarding. The LOPC uses them for: independent telemetry analysis, extraction of science telemetry for the generation of science products, prototyping science schedules, and viewing the master schedule.
Q: What is the hardware platform like?
Custom built PCs. B2MCS and B2MPS run on four multi-redundant PCs with cold spare + Internet gateway PC + cold spare gateway PC: all running SuSE8.0. Two GHz single processors, 60GB SCSI hard disks, CD rewriter, Matrox G450 dual head graphics using Xinerama, 2 x 22inch Ilyama monitors each, USB, floppy, basic soundcard and loudspeakers (to play system alarms, Spacecraft warning alarms and Blur callsign).
Q: What are the origins of SCOS?
ESA prefers the open-source, royalty-free software develoment approach. As a world leader in space software, SciSys has been a prime mover in the development of each generation of Mission Control Software including the VMS based MSSS [Multi-Satellite Support System] and SCOS1 and then the Solaris based SCOS2 and SCOS2000. With the recent evolution to support both Solaris and Linux, Sun and PC machines, SCOS2000 is now a major contentor in the Mission Control Software marketplace. It is currently 'flying:' Proba (PCLinux), Mars-Express (SunSolaris), Beagle-2 (PCLinux), Rosetta (SunSolaris), Smart-1 (SunSolaris) and Integral (SunSolaris). SCOS1 based missions: Envisat, Cluster and XMM [X-ray Multi-Mirror] will soon migrate to SCOS2000 on either PCLinux or SunSolaris. The forward development path for SCOS2000 looks very healthy as does its prospects for deployment on future ESA and Commercial missions. SCOS2000 will soon be flying the entire Eutelsat satellite TV constellation (PCLinux), is the best prospect for Galilleo GPS constellation (Europes biggest ever space mission) and a raft of planned deep space missions to Mars, Venus, and Mercury. Exciting isn't it?
Q: Why was Linux chosen over, say, Solaris as the platform for SCOS?
Sun workstations and servers are expensive compared with PCs of similar performance and reliability. The Solaris specific SCOS2000 component architecture requires COTS [Commercial Off The Shelf] libraries that attract licence fees. The 'evolution' to PCLinux was a deliberate policy to reduce future operating costs given that ESOC require computers and licences in ever increasing numbers as it expands to support new missions. However, back compatability to SunSolaris was required to maintain the value of their existing investment in Sun and Solaris. Beagle-2 selected the PCLinux option for ease of licencing and to minimize setup costs. By using PCs, we control the build state and quality of our machines and can fix them quickly rather than relying on service contracts. The SuSE 8.0 distribution included a lot of other useful tools: GCC, KDE desktop, Kcalc, KHexedit, Kylix, KDevelop, XEmacs, SSH, Perl, PHP, Apache, and StarOffice, used in development and operations.
A model of Beagle 2 fanned out in simulated data gathering mode
(Click for larger view)
All Rights Reserved Beagle 2
Q: What operating systems are actually used on the Beagle itself?
Like the B2MCS and B2MPS, the lander on-board software was written in our Bristol office. It runs on a tailored Ada run-time kernel (XGC) for the ERC32 processor [a radiation-tolerant SPARC V7 processor developed for space applications] rather than an OS due to restricted resource constraints and stringent reliability requirements. The on-board computer is a custom design and built in Bristol by S.E.A. systems of Frome, UK, and is specifically designed to withstand rigors of spaceflight, fit within a tiny space envelope (Beagle-2 is the size of a large car tire), and interface to the science instruments and A/D electronics.
About the interviewee — Steward Hall is 34, and lives in Wells, Somersetshire, England. He is principal analyst programmer at SciSys, and previously worked at Thales Defence Ltd. His track record includes Combat System Highway software, Radar Data-management/fusion software, Tactical Network Management software, Radar Tracking Systems, Vessel Traffic Management, and Radar Tracking Prototyping.
One source of information about the many European space missions discussed above is the Rutherford Appleton Laboratory's Missions Table.
This article was originally published on LinuxDevices.com and has been donated to the open source community by QuinStreet Inc. Please visit LinuxToday.com for up-to-date news and articles about Linux and open source.