Date: Sat, 11 Feb 2006 16:25:04 -0600 (CST) Subject: lessons of stanley X-UID: 134 The last week was my "15 minutes of Warhol fame" for this project. While gratifying, it was also distracting. However, I think I needed a week off to figure out what to do next now that hardware development is done. There was a presentation at the PARC Forum about "Stanley's Brain": http://www.parc.com/cms/get_article.php?id=503 The presentation is: http://www.parc.com/events/forum/media/v1119.mp3 mms://216.93.180.194/parc_forum/v1119.wmv Note that you can save the WMV stream using: mencoder -oac mp3lame -ovc lavc mms://216.93.180.194/parc_forum/v1119.wmv I find that the MP3 is probably the best as the WMV is only 160x120 video anyway. The entire presentation is quite long, somewhere around 90 minutes. This talk is a goldmine of information. I'm still analyzing the presentation but here's what I've taken out of it so far. 1. Hand-tuned probabilistic heuristics are required with manual driving capability for collecting live sensor data - closed form analytical methods like Kalman filters are not enough 2. Reliability matters - it is better to have a small number of reliable systems even if they perform worse than you'd like 3. Development is iterative - test drive robot in field, analyze data, recode software, and repeat this over and over The Stanford effort had enormous resources. I didn't fully realize how much until hearing this talk. It involved multiple departments and private companies. Volkswagen's drive-by-wire vehicle was a one-of-a-kind prototype. They had a "dream team" of people and resources behind the machine. I just picked up a USB joystick and inverter. With the stick, I'll be able to manually drive the robot. This is necessary to collect sensor data for filter design. The presentation basically confirms the impracticality of designing a control system with an analysis mindset, even if you have lots of money. You have to collect experimental data from field operation and then respond to that. With the inverter, I can run the laptop in the car for as long as I still have gasoline in the tank. I can also recharge the NiMH battery packs for the drive motors. Those will drain quickly while the digital SLA battery should last for one to two hours. The first priority now is a remote control system. I know that some people are thinking, "Duh! That's obvious!" But the purpose of the remote control is to collect live run sensor datasets for design and tuning of the control system. It's not an extra option but required, sort of like how the motor control electronics could not be tested until the microcontroller was working. Some subsystems are critical points in the entire system. Without them, you can't connect them together and run end-to-end or even know if things are broken. I'm going to try and get a system together by tomorrow morning so I can, weather permitting, collect the first dataset. I'm probably going to use a flash drive key mounted on the robot to record the sensor data, especially video frames. Driving will be done over WiFi for now. 900 MHz radio will be used just as in the DARPA race for three functions: remote kill, pause, restart.