M.A.A.R.: Map Acquiring Autonomous Rover


Project Report:
by Neil Otero

The idea for this project came from the Mars Pathfinder mission. The severe drawback in the human controlled rover is that signals take 5 minutes to travel to and from Mars. The easy solution of course is to have automated rovers.

I was unlucky enough to have missed the first session of this class so all the groups had already formed. I found one group (Neil Otero and Lei Deng) planning on building a "dumb rover" that would drive in a straight line until it's way was blocked, and another group (Linh Hoang and Lien Trinh) working on wireless communication. I convinced them to all work with me and incoperate the projects together. The teams stayed as they were, and I set out building and testing sensor systems, with the plan of combining them when we had all finished.

The division of labor worked rather well, we kept a team message board to keep track of changes that we made or would like to make that would affect other groups. My sensors were finished early and I spent my time floating between groups to give help where I could and make sure everything would fit together in the end.

In the end, everything worked out quite nicely. We had to settle for a slightly dumber AI as we ran out of program space, but it managed to miss the hazards and not fall off the table for the demo, so its all good.

It's a rather funny story about the program, I'd been writing the AI and simulating it in RAM instead of burning it to the EEPROM, never realizing that I'd gone way overbudget. With about 4 days left I discovered my folly, there was no time to order a larger EEPROM and remap it so I'd have to hack and slash the AI. I had a method that I had used to finish up my cs160 project: french bread, cheese, coke (cola!) and eyedrops. Hunger grips you and you snack on the cheese and bread, the saltiness of the cheese brings you to drink more and more coke. And for what used to be the bane of my all nighters, eyedrops would cure me of the burning need to close my eyes after a hard day spent infront of a CRT. The old AI was written lavishly with no concern for diskspace, barely anything was salvagable. I remained in lab 3 days programming a leaner (considerably stupider) AI. It was the afternoon, I recognized the afternoon regulars coming in for the third time. I burned my latest version onto the rover and started testing the tower routines. Smoke started billowing out of the creases of the stepper motor. I ripped the power cords off and started shutting down everything I could, expelling profanities and exclaimations all the while. I blew the smoke away and reached out with my hand to touch it. It was cold. I froze at the realization, I had hallucinated the entire event. I got up slowly, aware that everyone in the lab was staring at me, walked outside and fell immediately to sleep on the couch. I slept through my "History of Jazz" final (though I didn't know it at the time) and awoke amidst a study group that had taken all the seats around me to prepare for some final. Not knowing the time or day (or caring) I got up and walked back to lab to finish the program.