Power and Computing Systems
Although the vehicle comes equipped with a 330 V battery, we determined that it was adequate to run all of our additional systems off the regular 12 V system. Therefore, a 1500 Watt inverter/charger was added to constantly supply power to Prospect Twelve’s systems. Like Prospect Eleven, the inverter/charger only charges the 12 V battery when the vehicle is off and plugged in to a conventional outlet.

All of Prospect Twelve’s processing requirements are handled by four independent servers each custom-built with off-the-shelf parts. Each computer has a Core2Duo processor and 4 GB of DDR2 RAM, and each is housed in a standard 1U server enclosure and mounted to small 12U rack with shock-absorbent rubber feet provided by Shock Tech. The computers are networked with a gigabit-ethernet switch. Two routers, one configured as a wireless client and one as an access point, allow the computers to connect to the internet and developers to connect remotely. Most of the peripherals are connect via USB, with the exception of the cameras which all interface using firewire.
Software
All of Prospect Twelve‘s servers run Microsoft Windows Server 2003. The choice to run Windows was made because it allowed us to easily develop code using the Microsoft Visual Studio IDE, and also because many of the sensors and peripherals we connected already had Windows-compatible drivers. The vast majority of our code for the Urban Challenge was written in C#, with the exception of our vision code, which was written entirely in C++.

We chose the then recently released MSRS (Microsoft Robotics Studio) as our software framework for the 2007 Urban Challenge. Robotics systems in MSRS are composed of independent services which communicate in real time to achieve a desired goal. MSRS is composed of two main components: The CCR (Coordination and Concurrency Runtime), and the DSSP (Decentralized Software Services Protocol). The CCR provides powerful concurrency primitives that allow us to take full advantage of our dual-core machines. The DSSP handles messaging between services and across computers.

When the entire system was up and running, there were over 25 MSRS services running concurrently across our servers. To the best of our knowledge, this is the most demanding demonstration of MSRS’s capabilities to date.

The services in our vehicle are decomposed into three regimes: Sensing, Planning, and Acting. Sensor inputs are processed by the top layer and fused to form an estimate of the robot’s surroundings. The middle layer is responsible for determining a desired path based on the current sensory information. The lowest level implements the desired path, and comprises all the software modules responsible for communicating with Prospect Twelve’s electronic actuators. Visit the technologies section to learn more about some of the underlying software and hardware technologies implemented on Prospect Twelve.
You must be logged in to post a comment.