Mars mission
Author: snow birds email: xu_xinyu@tom.com
This year, human Mars detectors boarded the Mars, which sent a large number of photos and other large amounts of information about Mars high-definition. Make human awareness of Mars. Java has played a huge role in this Mars mission. This application about JAVA is called "the coolest Java app built in James Gosling".
I believe that the programmer as China should also pay attention to some such applications, but it is difficult to find information about this, so I translated such an article, let everyone know about this information. My English is not very good. I have not fully translated time when I translate. Many of them are written according to my understanding of the original text. It may not be very clear. English good friends can see the original http://www.sun.com/aboutsun/media/features/mars.html. I don't know if there is a friend who is interested in this problem. In fact, I hope that we can also make your own contribution to our space exploration career.
This article is an interview with James Gosling. In this interview, James GosLing introduces the roles and roles of Java in Mars Detective Tasks.
Q: What kind of role does Java play in the Mars Snapers?
A: Currently in this project, NASA scientists use Java's places all on the ground. The command and control system of this collaboration they created is called Maestro. This system will be combined with some of the following works, including: data visualization, collaboration, command, and control. It allows scientists to view pictures, create a 3D recovery graphic for terrain, enabling different workers to study local landscapes and topography, browse the picture database, participate in the work they want to participate. Moreover, these work can be accomplished through a remote, distributed, collaborative manner. This allows scientists around the world to participate, they are not only looking for data, and they can collaborate to decide the next task. The best thing to do JPL is: they have developed an app for ordinary people, called Maestro.
Q: How does Java help scientists control Mars detectors on the ground?
A: A Java's API is called Java Advanced Imaging, which is used to capture photos of the panoramic camera that produces a picture with extremely detailed details. These panoramic photos are combined by photos taken by two different cameras on the Mars detector. So, I get two pictures through two lenses, just like you have two eyeballs. So your brain can produce three-dimensional effects, know how far you can see you. Because they can get these stereoscopic images, it is possible to perform a process of processing that is called stereoscopic images. This allows each pixel on the image, and knows the actual position and distance of something on the image.
Through this information, Scientists of JPL can calculate how far each stone is far, each picture of each picture, millions of pixels on these images. You can get the depth at every point. These are the three-dimensional cameras give you. When you get depth information, you can actually create a 3D model, the actual model of the terrain. You can map the picture to the model. This is the world of a colorful, 3D model.
Q: Do they actually direct Mars detectors with Java?
A: For commands and control systems, large parts are such large Java applications. There are many parts to include in this system. There is also a computer on the Mars detector, and there is no Java in that computer. But at one end of the ground, a large part of the work is made by Java, which makes up the entire command and the control chain to control the detector. Not every subsystem is based on Java code. But most of them are Java, especially data visualization, front-end user interface, and a large part of the database work. Q: How does the public version of the Maestro application work?
A: If you come to Maestro's website (http://mars.telascience.org), you will find two categories of downloads. One is the Maestro application itself, and the other part is data from Mars. There are different versions for different platforms. There is a Solaris version, Linux version, and also for Windows versions, etc. This is how powerful that the portability of Java is displayed. How is the cross-platform implementation. In fact, all version of the program is the same, but it is only packaged.
So, when you download the data of the first part. There are some scripts run to let you see this. With your own 3D model, use your mouse, you can actually operate this 3D model, you can get a scene, as if you stay away from the landing location, you can look at it behind the detector. You can actually turn around around the login point. You can see rocks. You can see an airbag and is not completely exhausted. All of these 3Ds can control the visualization of their motion is done using standard Java APIs, such as Java 3-D API, Java Advanced Imaging API, Java Networking API, API, API, API, API, API, Java Networking Apis, and User Interface.
By using the Maestro program they distribute, you can't just see the 3D model of the terrain, you can also see a 3D model of the detector. You can drive a detector on this virtual terrain. It makes this "video game" more real. In addition to driving a Mars detector on a model model, it is true. That is a real Mars data to construct this terrain. It is not like playing "Dunes" games, where you are completely in a virtual maze.
Q: In this project, how does it work with JPL scientists?
A: I have spent a lot of time and JPL, not only communicating with them, but I am still a member of their advisory group. Since there are very many geniuses here, IQ values per square meter are also very high, here is an amazing place. What they do here is in the eyes of the average person. Many people have read the sci-fi story of driving a Mars on Mars. And the people here are realizing such a dream. They know how to fly in the Star. I have talked with those who are star travel navigation, they are some very weird people. You must actually pay attention to relativism, time is not a constant fact - the faster you go, the slower things. They work in a relatively important world (do not understand).
JPL is a place that can make your thoughts part, they are full of energy because they do. They are a group of people living in a dream. What they do is such a superior, such incredible. What they do is very heroic, noble, adventure and exciting. They are the only part of the US government that can make people excited groups. NASA has such a top public program because they know what they love, and know this is a huge public service. They have a lot of cooperation with the school. In fact, they disclose this streamlined Maestro is an amazing public range expansion (do not understand).
Q: For such applications, Java has to attract them? A: The answer is not only one reason, but there are many reasons. A very important part is that Java can run on a lot of different platforms. If you visit JPL, you will find that they have Solaris, Linux, Windows, Apple, who works on all of these platforms. If you look at the standard API library provided by Sun, you will find a lot of tools available. For example, a 3D model API, advanced graphics API, and all user interface APIs and network APIs. JPL people use all of these tools. They can regulate all of these standard tools.
In addition, there are many experiences on Java, such as development efficiency. For example: You can compare the time comparison of the time used by Java, C / C development software, in fact, all test methods have only twice the efficiency of Java to C / C . So if a team should use C with C in 10 months, it takes only 5 months. For a fully equipped group such as JPL, do anything needs a careful plan and budget, which means you can compress your work to 5 months, or 10 months, but you can use only half of people. jobs.
There are other aspects of Java, mainly to create a reliable application. Creating a reliable system makes easier. A large part of Java is about security issues. It is usually very easy to build a safer system, and the destruction is rarely happened, so you don't have to worry about your computer being blown into a crush. So when you see some things such as their large database, you will find the integrity is what they need to carefully consider - security is very important. So these are all answers to this question. Whenever you talk to Java developers, you will get different answers about "why using java?". Although this is a common question.
Q: Is this the first time to use Java in such a type of application - use in space in cosmic?
A: In fact, I don't think so. I have talked about using Java in the ground control station of satellites, as well as control systems for controlling huge astronomical telescope. People have done a lot of applications about space. The reason why this JPL project is being taken by people, because it sounds very cool.
Note: The Maestro application mentioned in the article can be downloaded, I have already downloaded a look. Simple use, it is still very interesting. Interested friends can download to play.