Robot software and programming
Robots are typically controlled by software that takes into account the physical size and capabilities of the robot; the size and shape of the objects it handles; and the tasks it performs. Robot software takes advantage of data from input devices such as touch sensors and machine vision to guide its motions. It also allows for large numbers of different instruction sets to be stored, thus making the robots useful for a wide variety of tasks.
Robotic software for industrial robots
The most widespread use of robot software is in industrial environments. Industrial robots are used in situations that demand versatility and precision, to perform tasks such as assembly, quality control, and product handling.
As such, industrial robot software is often quite sophisticated. As the complexity of the robot increases (in terms of its dexterity and sensor inputs) the software used must be intelligent enough to control all of the robot's motions, compute how they influence one another, and predict how they impact the task at hand.
Artficial Intelligence in Robots
Some robot software aims at developing intelligent mechanical devices. Though common in science fiction stories, much development is required in the field of artificial intelligence before they can approach the fictional possibilities. Pre-programmed hardware may include feedback loops such that they can interact with their environment, but these reactive mechanisms only mimic intelligence.
Addressing Safety Issues
Robot software should include safety-related functions that prevent a robot from injuring nearby workers. The software should be designed to accepted inputs from emergency stop buttons, as well as sensors that might indicate that a robot arm is operating beyond its intended field of reach.
The power and size of industrial robots means they are capable of inflicting severe injury if programmed incorrectly or used in an unsafe manner. One such incident occurred on July 21, 1984 when a man was crushed to death by an industrial robot. That accident showed the potential risks of working with robots, and the need to insure that they are carefully controlled.
Robotics software projects
- Player/Stage Project: A very popular free software robot interface and simulation system, used for robotics research and teaching worldwide.
- OROCOS: The Open Robot Control Software project provides a free software toolkit for realtime robot arm and machine tool control.
External articles
- "The Basics - Robot Software". Seattle Robotics Society.
- "Robot software components". Sluggish Software.
- G.W. Lucas, "Rossum Project".
- "Mobile Autonomous Robot Software (MARS)". Georgia Tech Research Corporation.
- "Tech Database". robot.spawar.navy.mil.
- Adaptive Robotics Software at the Idaho National Laboratory
|