Rover Mission Using JAVA Technology

Man who is a good explorer by nature is trying to invade his next planet, the Mars, with the help of JAVA enabled rovers. Both JAVA and rovers are wonders created by man.

Java technology today is good for general purpose computing and GUIs, but it was not ready for use with control systems like the software on the Rover. The Golden Gate project seeks to use RTSJ (Real Time Specification for JAVA) to develop a system of control software that can be used on a Rover.

The places where NASA scientists have used Java for this mission is all on the groundside right now. They have created this collaborative command and control system called Maestro, which does this combination of data visualization, collaboration, command and control.

Java RTS enables developers of real-time applications to take full advantage of the Java language ecosystem while maintaining the predictability of current real-time development platforms. Java RTS also brings the world of real-time programming to developers currently using Java technology to create applications that reach into the physical world.

Golden Gate project is being worked on which will create code that would replace the proprietary APIs and real-time operating system code (Wind River) in future missions. Java 3D and Java Advanced Imaging technology are also key to the software JPL (Jet Propulsion Laboratory) is using to render and interpret real time images captured by the Rover.

JAVA, due to its unique features like, platform independency, rich set of API libraries such as 3-D modeling APIs, Advanced Imaging APIs and its Mission Data System to control physical systems fuelled the Mars exploring rover mission.

NASA's twin Mars rovers, Spirit and Opportunity, are exploring opposite sides of the Red Planet to search for evidence of past or present water and to map its geological and climate history. On Jan. 3, 2004, the Spirit rover landed in Gusev Crater on Mars, kicking off a mission planned to last 90-days. Two years later, Spirit and fellow robotic explorer Opportunity, which landed Jan. 24, 2004, are still going strong. Each Martian morning, the rovers receive a full day of instructions. They operate autonomously all day, and transmit the resulting images and data back to earth at the end of the day. The operations staff lives on "Mars time", each day is approximately 24 hours, 40 minutes. Planning is done during the Martian night, and there are strict deadlines for the uplink of new rover instructions.

The places where NASA scientists have used Java for this mission is all on the groundside right now. They have created this collaborative command and control system called Maestro, which does this combination of data visualization, collaboration, command and control. In the current mission, the software used on the ground to create commands to send to the Rover, and the control software that actually sits on the Rover, are two very different systems with nothing in common whatsoever. What's being used up on the Rover is a well-known real-time operating system from Wind River Systems. Golden Gate is being worked upon which will create code that would replace the proprietary APIs and real-time operating system code (Wind River) in future missions. Sun Labs, Carnegie Mellon-West, a campus of Carnegie Mellon located near Sun Labs in Silicon Valley, and the Jet Propulsion Labs (JPL) are working together on this project. Work is being done on implementation of a software architecture developed at JPL called


MDS, or Mission Data System. Greater commonality is being created between the flight system on the Rover and the ground system -- all essentially using Real-Time Specification for Java (RTSJ), and a more seamless development environment for the entire system. Java language pioneer James Gosling calls the ground-side control system that sent signals to the Mars Rover,” the coolest Java app ever".

Mars Exploration Rovers Mission

CONCLUSION

We all know how JAVA emerged from the hands of Gosling’s team who were trying to program an application which could work efficiently on electronic devices. It was a success and soon java spread over the world due to its unique feature, platform independency to be used in web applications. Now JAVA and its rich set of API are even helping us drive to our next planet MARS.

Now we have two rovers on mars each exploring the red planet. These are working efficiently since January 2004 only with the help of the best ground control system powered by JAVA.

Sun is working to implement java in physical systems like rovers and power plants .Sensing plays a key role in these projects. This could be considered a mile stone in the fields of Artificial Intelligence and Robotics.

Now that Java has helped us get to Mars, who knows what "Java Everywhere" will mean in the future?