HARDWARE ABSTRACTION LAYER (HAL) FOR A ROBOT
6 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatus that provide a hardware abstraction layer (HAL) for a robot are disclosed. A HAL can reside as a software layer or as a firmware layer residing between robot control software and underlying robot hardware and/or an operating system for the hardware. The HAL provides a relatively uniform abstract for aggregates of underlying hardware such that the underlying robotic hardware is transparent to perception and control software, i.e., robot control software. This advantageously permits robot control software to be written in a robot-independent manner. Developers of robot control software are then freed from tedious lower level tasks. Portability is another advantage. For example, the HAL efficiently permits robot control software developed for one robot to be ported to another. In one example, the HAL permits the same navigation algorithm to be ported from a wheeled robot and used on a humanoid legged robot.
37 Citations
7 Claims
-
1. (canceled)
-
2. A method of activating devices in a robot, the method comprising:
-
determining a device configuration for each of a plurality of devices, wherein each device configuration comprises; a) a unique device identifier, and b) a device type specifying a device class; instantiating a resource driver for each of the plurality of devices based, in part, on its associated device type; generating a dependency list for at least two of the plurality of the resource drivers, each dependency list identifying a plurality of other resource drivers and an order in which the other resource drivers must be activated prior to activation of the resource driver associated with the dependency list; and activating the plurality of resource drivers in accordance with the order specified in the associated dependency lists; whereby the resource drivers identified in each dependency list are activated prior to activation of the resource driver associated with the dependency list, for each device. - View Dependent Claims (3, 4, 5, 6, 7)
-
Specification