9. A computer readable medium having computer executable instructions thereon, which when executed on a processor provide a generic robot architecture, comprising: a hardware abstraction level configured for developing a plurality of hardware abstractions for defining, monitoring, and controlling a plurality of hardware modules available on a robot platform; a robot abstraction level configured for defining a plurality of robot attributes comprising at least one of the plurality of hardware abstractions; and providing a robot behavior level configured for defining a plurality of robot behaviors comprising at least one of the plurality of robot attributes; wherein: each robot attribute of the plurality is configured for substantially isolating the robot behaviors from the plurality of hardware abstractions; each hardware abstraction of the plurality is configured for substantially isolating the plurality of robot attributes from a corresponding hardware module of the plurality; at least two hardware abstractions provide substantially similar hardware information to at least one of the plurality of robot attributes; and the at least one of the plurality of robot attributes combines the hardware information from each of the at least two hardware abstractions to form attribute information for the at least one of the plurality of robot attributes and can disregard the hardware information from one of the at least two hardware abstractions in forming the attribute information.
9. A computer readable medium having computer executable instructions thereon, which when executed on a processor provide a generic robot architecture, comprising: a hardware abstraction level configured for developing a plurality of hardware abstractions for defining, monitoring, and controlling a plurality of hardware modules available on a robot platform; a robot abstraction level configured for defining a plurality of robot attributes comprising at least one of the plurality of hardware abstractions; and providing a robot behavior level configured for defining a plurality of robot behaviors comprising at least one of the plurality of robot attributes; wherein: each robot attribute of the plurality is configured for substantially isolating the robot behaviors from the plurality of hardware abstractions; each hardware abstraction of the plurality is configured for substantially isolating the plurality of robot attributes from a corresponding hardware module of the plurality; at least two hardware abstractions provide substantially similar hardware information to at least one of the plurality of robot attributes; and the at least one of the plurality of robot attributes combines the hardware information from each of the at least two hardware abstractions to form attribute information for the at least one of the plurality of robot attributes and can disregard the hardware information from one of the at least two hardware abstractions in forming the attribute information. 11. The computer readable medium of claim 9 , wherein at least two hardware abstractions provide substantially different hardware information to at least one of the plurality of robot attributes, and wherein the at least one of the plurality of robot attributes combines the different hardware information from each of the at least two hardware abstractions to form the attribute information for the at least one of the plurality of robot attributes when the attribute information involves a combination of the different hardware information.