Paul Vincent Craven
All Rights Reserved
This research project was an assembly of technologies that do not directly relate to power management of solar cars. While there is little previous research into power management of solar cars, there are many proven technologies which I employed to accelerate development. Proper use of software engineering methodologies helped manage the large project. Sensor and embedded computer technology allowed us to retrieve information on the operation of the solar car. Differential GPS systems provide the necessary fast and accurate positioning of the solar car and its path.
Understanding the advanced features of the operating system we used required a lot of reading. Windows NT™ provides many of the features one would expect in today's high-end operating system. For the advanced features of the operating system, such as multi-threading, synchronization, services, security, registry, pipes, and communications, I referred to the "Win32 System Services" book by Marshall Brain . This book provided excellent explanations and sample code that helped make the power management software more flexible and powerful. Syntax on the Windows NT™ Application Programmer's Interface (Win32 API) was obtained from the on-line help file from Microsoft that was included with the Borland compiler we used .
Information about how to correctly handle coding style and multi-user projects came from "Code Complete" , and "Writing Solid Code"  from the Microsoft Press. Since this project has more than one person working on it and will be passed down the line to the next director of power management, proper coding techniques are essential. If the code is not maintainable by future generations of students, the solar car team can not make use of it. Undocumented and hard to read code can spell the end of any project, no matter how well it works.
The theory behind the object-orientedobject-orientated program development was derived from Borland's Object Windows Library (OWL) . Many of the power management system's classes were inherited (in the object-oriented sense) from base classes that were in the OWL. This reduced the amount of code that had to be written and debugged. The object library from BorlandBorland provided much of the default behavior of the components in the interface. If we needed additional or different tasks for the code, we just added to or overrode the default behavior.
Information about the Global Positioning SystemsGlobal Positioning Systems (GPSGPS's) came from Keith Cunningham from Sokkia Technology, Inc. who donated the high-end GPS systems and provided training for their proper use. This allowed us to create accurate maps of the upcoming terrain and estimate our power usage.
The equations for estimating energy usage came from Jeff Shapiro, a UMR alumni who works for National Renewable Energy LaboratoryNational Renewable Energy Laboratory (NREL), and who was the Headquarters Manager during SunrayceSunrayce '95. The equationsequations for energy usage are also in the '93 Sunrayce Technical Report by Chester Kyle. These equations allow us to predict our total energy during the race.