Robots are, of course, comprised of several different elements, depending on their purpose. The hand of a robot, for instance, is referred to in the industry as an “end effector.” End effectors may be specialized tools, such as spot welders or spray guns, or more general-purpose grippers. Common grippers include fingered and vacuum types. Another central element of robotics control technology is the sensor. It is through sensors that a robotic system receives knowledge of its environment, to which subsequent actions of the robot can be adjusted. Sensors are used to enable a robot to adjust to variations in the position of objects to be picked up, to inspect objects, and to monitor proper operation (although some robots are able to adjust to variations in object placement without the use of sensors, provided they have sufficient end effector flexibility). Important sensor types include visual, force and torque, speed and acceleration, tactile, and distance sensors. The majority of industrial robots use simple binary sensing, analogous to an on/off switch. This does not permit sophisticated feedback to the robot as to how successfully an operation was performed. Lack of adequate feedback also often requires the use of guides and fixtures to constrain the motions of a robot through an operation, which implies substantial inflexibility in changing operations.
Robots are programmed either by guiding or by off-line programming. Most industrial robots are programmed by the former method. This involves manually guiding a robot from point to point through the phases of an operation, with each point stored in the robotic control system. With off-line programming, the points of an operation are defined through computer commands. This is referred to as manipulator level off-line programming. An important area of research is the development of off-line programming that makes use of higher-level languages, in which robotic actions are defined by tasks or objectives.