Friday, September 21, 2012

PopSci Q&A: How Do You Drive a Car On Mars?


Curiosity's Journey, One Month In So far, Curiosity has put 109 meters on the odometer, and it's 89 meters from where it touched down at Bradbury Landing. It's headed for an outcrop dubbed Glenelg, about 400 meters away. NASA/JPL-Caltech
PopSci talks to Vandi Tompkins, Mars rover driver

After 30 Earth-days on the surface of the red planet, the Mars rover Curiosity has stretched its neck, zapped its first rock and taken its first strolls. More firsts are still to come in the next couple weeks - like scooping, drilling and baking rocks - but the rover is pretty much ready to go, spending the next two years trying to determine if Mars could ever play host to life.

For the next two years, engineers at JPL will drive this car on Mars, determining exactly how to spin Curiosity's wheels to send it wherever the science team wants it to go. Many of the Curiosity drivers earned their training wheels driving Spirit and Opportunity, but the rovers are very different. Curiosity is much bigger, to start with - and it's nuclear-powered, so tilting its body toward the sun is not a major concern, like it is with the Mars Exploration Rovers.

But there are some similarities. Like its forbears, Curiosity has six wheels, a head-like mast and cameras, and a team of engineers who will spend their entire days planning every inch of its journey. PopSci talked to rover driver Vandi Tompkins just as Curiosity was preparing to look around at its new home. An edited transcript of our interview follows.

PopSci: Why does it take so long to finally drive around?

Vandi Tompkins: We were landing with one version of software, and they have to transition over. This mission has got so much interesting complexity in its landing - but you don't need the landing part anymore, so the control systems will be updated. This rover doesn't have as much unfolding of its mobile system - MER had to unfold and drive out of the parachute. Here, that happens during EDL. We are on our wheels. So the rover driver in me is like, ‘Let's go!' But Spirit and Opportunity have been operating over 8 years. We have plenty of time. So we want to make sure we have all the checks.

We send all the instructions in one package. A lot of people will describe it as sending an email to Mars.

PS: When did you switch rovers?

VT: My last shift on MER was sol 3022, which is crazy to think about. I had to stop doing it because Curiosity is going to be on Mars time. MER is so extended, it's now on Earth time, and you can't be on Earth and Mars time at the same time. Most of us who were on MER are going to, temporarily at least, be doing Curiosity exclusively. Then after 90 days we'll go back to Earth time.

PopSci: How do you feel about living on Mars time?

VT: I was in grad school before on MER, so this is my venture into Mars time. I'm very excited about it. Working all these years that I have on this mission, you build this camaraderie. You're working through holidays and weekends; it's kind of like being in the field with the robot. Or you can think of it like camping. Everybody is there, you're around the campfire talking. It brings the team together.

PS: Would you ever drive both rovers on the same day?

VT: It's possible - I would love to do that. With Opportunity, we spent years driving across the plains and arriving at Endeavour crater, this crater with such incredible science potential. We haven't even barely been there, and we've already made incredible scientific discoveries. On my last shift there, I'm looking at the images, and it was like, ‘Wow, this is pretty cool.' It's nice to have two incredible things to choose from.


PS: How do you tell Curiosity what to do?

VT: Because of the time delay, even when we operate on Mars time, we don't send a command, wait for a response, and send another command. We send an entire sequence of commands to the rover. We get stereo images from the previous day, take the images and make a 3-D terrain map. We look at images with our goggles - you wear 3-D goggles at your desk. It's incredible how much more information there is in having a depth view. There might be something that looks really benign, but as soon as you put on the goggles, you can see there might be a curve to it, or a gap that we might not have seen.

After that, we have a tool where we sequence commands in it, the rover simulator. I wrote the code for the flight software engine that lives inside of that, that simulates what we do. If there are any tricks, we will detect it on Earth first.

PopSci: Why do you run it all through software first? Why can't you just drive?

VT:: We often don't have exact information about what is on Mars. Whether a terrain mesh has missing data at certain points, or we may make contact earlier, or when we are drifting, our wheels might slip. We can't predict where that might happen. So that becomes interesting. You have to try to go through your sequence, and think about all the places, do the what if - what if this were to happen, is this still good? - under all the conditions you could think of. Then we send it up.

PopSci: With 360 degrees of possibility, how do you decide where to go?

VT: The scientists pick the targets, and we ensure they are safe and that we can get them. Then the entire team looks at the rover simulation. We spend the day going through the commands, and everybody signs off on them, then we uplink it to the rover. We send it one package. A lot of people will describe it as sending an email to Mars. Then it does it, and then it goes to sleep. We have two eight-hour shifts - I come in at 6 a.m. [this is shifting by 40 minutes every day, as the team tracks with the Martian sol], the next person comes in at 3 p.m., and by that evening, we're ready to uplink it.

The timing of this all depends on the power, the data available, when the orbiters are ready, when the Deep Space Network is available, all of those things. Then it sends the data back to us, and we start the cycle again.

PopSci: Will Curiosity be able to decide for itself where to go, like Opportunity? Or can you tell it "do_Drive" and let it go?

VT: If it's something we are comfortable letting it handle on its own, we will have built a conditional - ‘if you encounter this situation, don't do this, but do this instead.' Sometimes, we need certain science and engineering analysis on the ground, and we will make sure nothing else happens, and it leaves itself in a safe configuration. Either we handle it, or we make sure that it ends up in a safe configuration, even if it doesn't complete what we intended.

If the rover goes outside of where we expect it should be, there's a check that will catch it. We use multiple checks to do that. We put these boundaries around regions we don't want to go, and we also have the ability to do autonomous navigation - ‘If you see terrain which is outside of this envelope, stop.'

So it's not just sending a drive command. Those sequences can have dozens of commands; depending on the complexity of the day, it can be 100. There are so many things it can do.

No comments:

Post a Comment