Complexity And Level Of Detail In Robot Programming
Programming one robot manipulator to assemble another robot manipulator is not a trivial task. The finest level of detail involves controlling the individual steps of the various stepping motors which in turn control the independent degrees of freedom of the manipulator.
In order to gain some insight into robot programming, the Replicating Systems Concepts Team visited Dr. Charles H. Spalding at the research laboratories of Unimation, Inc., in Mountain View, California. Dr. Spalding demonstrated the operation of the PUMA 500 robot manipulator for the team. This manipulator system consists of a five-degree-of-freedom electrically servocontrolled arm combined with an electronics package containing a DEC LSI-11 control computer, individual microcomputer systems for each degree of freedom, and drivers for the servo motors.
In a system such as the PUMA with separate microcomputers for each degree of freedom the individual microcomputers must receive commands specifying either the required rate of motion for their respective degrees of freedom, or the desired position of that degree of freedom, or both. In the PUMA, the individual microcomputers are controlled by a larger, more powerful microcomputer (a DEC LSI-11, a member of the PDP-11 family). The LSI-11 can direct the end effector of the robot manipulator to trace out a number of different predetermined paths in three-dimensional space. In the present configuration (depending on the complexity of the selected paths), on the order of 1000 programmed motion steps can be accommodated. The PUMA robot has about 500 distinguishable "parts," about 50 in the wrist assembly alone.
The next order of sophistication in robot control is at the level of elementary assembly operations. The command "put a washer on the bolt" requires the performance of subtasks such as:
Still more sophisticated operations include the joining of subassemblies. To join two subassemblies each one must be brought into the proper relative position and several washers, nuts, connectors, etc., must be installed. It is not clear, without further study, just how much of this hierarchy of operations could be controlled by the LSI-11 that has become an industry standard. However, the team has no doubt that a suitably powerful computer can be constructed in a module not exceeding 1 m3 in volume, which would also serve as a base for an advanced robot manipulator. Spaulding estimated that 5 years of adequate funding and manpower support could probably produce a robot manipulator system capable of assembling a duplicate of itself from prefabricated parts.
The team discovered no fundamental difficulties with the software, although the programming task will be extremely challenging. In current industrial robotics applications, each manipulator has a very limited number of tasks to perform. To use one manipulator to perform a many tasks, each of the complexity required by the SRS demonstration, the state-of-the-art in robot programming should be advanced considerably.
A top-level description of the steps required to product a robot manipulator system complete with control computer and required electronics support (see fig. 5.29) might include the following sequence:
Having been replicated as thus detailed, the new robot is on its own.