Skip to main content

Über dieses Buch

This book contains 26 papers presented at the NATO Advanced Research Workshop on "CAD Based Programming for Sensory Robots," held in IL CIOCCa, Italy, July 4-6, 1988. CAD based robot programming is considered to be the process where CAD (Computer Based) models are used to develop robot programs. If the program is generated, at least partially, by a programmer interacting, for example, with a computer graph i c d sp i 1 ay of the robot and its workce 11 env ironment, the process is referred to as graphical off-line programming. On the other hand, if the robot program is generated automatically, for example, by a computer, then the process is referred to as automatic robot programmi ng. The key element here is the use of CAD models both for interact i ve and automat i c generat i on of robot programs. CAD based programmi ng, therefore, bri ngs together computer based model i ng and robot programmi ng and as such cuts across several discipl ines including geometric model ing, robot programming, kinematic and dynamic modeling, artificial intelligence, sensory monitoring and so-on.



CAD Based Modeling


Solid Modelling — A 1988 Update

Geometric modelling of physical solid objects is rapidly becoming a well-established interdisciplinary field, whose importance for robotics and automation is widely acknowledged both in academia and industry. The scientific literature in the field has increased dramatically, the first two textbooks that address solid modelling have been published [Mortenson 1985, Mäntylä 1988], solid modelling systems offered by many vendors are being used industrially in increasing numbers, and market projections for the technology are bright [Brown 1986, Marks 1986]. The fundamental concepts of solid modelling, as well as the state of the art in the early 1980s are described in [Requicha & Voelcker 1982, 1983]. The present paper assesses the progress in solid modelling and its applications over the last five years. The literature citations below are meant to be representative rather than exhaustive.
Aristides A. G. Requicha

A Geometric Modeler for an Automatic Robot Programming System

Because of the increasing complexity of computer vision and robotic software along with the need of powerful representations of the real world, solid modelers are now considered of primary importance. In particular, the automatic synthesis of part-mating programs from CAD-based descriptions requires to reason on both numerical and symbolical representations of the real environment. In this paper we describe some concepts and modeling tools which we have developped within the scope of the SHARP project. Because of the reasoning aspect of planning, this model should fulfil three requirements: a quantitative description, a qualitative one and a control of physical properties.
Pascal Theveneau, Michel Pasquier

A Relational Data Base Supporting CAD-Oriented Robot Programming

Programming of action sequences for multirobot assembly cells involves the representation, the specification and the modelling of the cell activities. For this purpose a chain of activities producing and consuming information has to be performed. Process planning in manufacturing requires that a product’s design must be translated into the best method for the product’s manufacture. The final plan will consist of information about the manufacturing process to be applied, its process parameters, the machines to be used and the time schedule. Synthesizing of the process information and the use of decision logic may be performed by a human expert aided by CAD and CAM software tools or by high sophisticated automatic planner software systems. The bridge between CAD, CAM and Robotics would be the use of a database management system, which supports each activity with appropriate information. A basic representation scheme for the different information and object classes used for planning and programming facilitates the common share of information. In this paper the use of the NF2 data model is discussed to build manufacturing cell models, to construct product assembly plan information and to specify elementary robot actions. The steps for constructing an executable robot assembly program is illustrated. The program is tested with the aid of the graphical Robot Simulation system ROSI and the data base management system R2D2.
R. Dillmann, M. Huck

World Modeling for CAD Based Robot Programming and Simulation

The design of a world modeling system for CAD based robot programming and simulation is presented. The system can support interfaces to actual robot workcell environments allowing for calibration of the workcell model for inaccuracies and its use for robot control. The system models geometrical, spatial, relational and physical properties of the world allowing for geometrical and spatial reasoning as well as reasoning about the mechanics of manipulation. It supports simulation of several sensory functions and multiple arm coordinated control. It also supports representation of assemblies and aggregation of multiple devices. The system design presented is the basis of a world modeling system for model based robot task planning, simulation and control currently under development.
Bahram Ravani

A Workcell Application Design Environment (WADE)

This paper describes the architecture and implementation of a software environment (WADE) intended to aid a designer in the process of workcell application design. An informal characterization of this process is presented as a basis f or a discussion on the problems a designer faces and the information required to solve them. Since modeling and simulation are key to helping the designer, a reasonably general approach is described for modeling a wide range of industrial equipment, programming them in as powerful a manner as their control languages, simulating workcell applications with multiple programmable and non-programmable equipment, and analyzing the performance in flexible ways. WADE’s design embodies this approach and is object-oriented and open-ended, suitable for easy experimentation, extension, and refinement. Its implementation is based on a modern language called AML/X with object oriented programming features and a powerful and production quality solid modeling system called GDP. WADE provides an interactive environment integrating tools for the modeling and simulation of workcell applications. At present, a workcell designer can create equipment models for programmable and non-programmable equipment, select and layout equipment for a workcell, interconnect communication lines among equipment, program equipment, simulate the dynamic processes of the workcell and analyze its performance. The use of WADE for workcell application design is illustrated with two example applications and the paper is concluded with a discussion of our experiences in designing and implementing WADE and some issues for consideration in future work.
Rangarajan Jayaraman, Anthony Levas

Task Specification and Programming Systems


Simplification of a Robot Task Specification by Incorporating a Structured Geometric Database into an Off-Line Robot Programming System

A structured geometric database to be used in an off-line robot programming system is presented which actively supports the use of relative frame variables for describing the robot manipulator as well as the robot environment. The database is implemented such that it continuously reflects the actual structure of the environment. Including this structured geometric database into an off-line robot programming system relieves the programmer from the (numerical) details in a task specification. As a result, the programmer can simply reason on objects and their features by means of their names.
L. Van Aken, H. Van Brussel, J. De Schutter

Planning Robot Motions in the SHARP System

Automating the programming of assembly robots necessitates to develop methods for planning robot motions. In this paper we describe the geometric models and the reasoning techniques we have implemented as part of the SHARP system (SHARP is an automatic robot programming system currently under development at the LIFIA laboratory). We first present which modelling facilities are required for constructing a suitable representation of the robot world. Then, we show how this representation has been used for implementing two classes of reasoning functions: functions aimed at computing collision free trajectories for the robot and its payload, and functions allowing to automatically generate contact based motions under uncertainty constraints (i.e motions involved in grasping and in part-mating operations). Our method for solving the first motion planning problem operates in the configuration space. It is based on two types of techniques aimed at computing the valid ranges of values associated with some selected motion directions, and at constructing and searching a graph representation of the free space. Solving the second planning problem makes it necessary to construct an explicit representation of the involved contacts along with their associated moving constraints. It leads to reason on the morphological properties of the manipulated objects.
Christian Laugier

Robot Simulation and Off-Line Programming — An Integrated CAE-CAD Approach

Teaching a robot with traditional on-line programming techniques is a time-consuming process requiring trial-and-error procedures. Furthermore, the on-line method of robot programming requires the use of an actual robot and the entire work cell, in which the robot is physically put through its sequence of actions with equipment mockups and product prototype parts. Interactive computer graphics simulation and off-line programming of robots offer the potential to overcome these limitations and are therefore becoming increasingly important in factory automation, military, and space robotic applications.
This paper describes a general purpose computer program for robot kinematic and dynamic simulation that enables a designer to evaluate the performance of robot manipulators in potential working environments. The designer can base evaluation on a time-and-motion study of task performance.
The robot modeling capability of the program is generic. The user can interactively create and edit any one- to twelve-axis robot manipulator, articulated or Cartesian. This includes many of the existing industrial robots, plus a variety of prototype robot designs containing up to twelve axes. The robot can have three types of joints: revolute (turning joint), prismatic (sliding joint), and cylindrical (turning and sliding simultaneously). The program has a general purpose kinematic and dynamic analysis algorithm that includes both forward and inverse solutions.
Robot off-line programming allows robots to remain on-line performing manufacturing tasks, while being programmed for another job. This makes it easier to specify and develop optimum robot motion paths, permits programming of robots earlier in the product and tooling design cycle, and reduces the safety problems related to robots. Off-line programming of robots will accelerate trends towards fully utilized robot-based flexible manufacturing systems.
I. Imam, J. E. Davis

CAD-Based Verification and Refinement of High Level Compliant Motion Primitives

Primitives are presented for specifying compliant motion tasks. They are based on a task frame with orthogonal force, velocity and tracking directions. High level primitives are primitives with default parameter values. They need to be developed to support a user with little experience, or a high level task planner. An approach is given to use a CAD system for verification and refinement of compliant motion primitives before downloading to the robot.
J. De Schutter, P. Simkens

Experiences with Off-Line Robot Programming via Standardized Interfaces

Automation components within the individual production areas of manufacturing facilities are increasingly being integrated into an overall CIM concept. The goal of this endeavor is to develop an integrated information processing link between all components from design through production control. To achieve this, the communication problems of the various hardware and software systems within the manufacturing facility must be overcome.
M. Weck, R. Clemens

Off-Line Programming of Robots Using a 3D Graphical Simulation System

The development of a robot cell using the GRASP 3D graphical simulation system and the process of off-line programming a KUKA industrial robot is demonstrated. An example component is produced using the MEDUSA CAD system and the geometrical data is then transferred via an interface to GRASP where the robot programming and cell design are performed. Finally when the robot program is fully developed, the procedure of running through a post processor and down loading to the robot is described. The advantage of this method is that if at a later date it becomes necessary to modify the program this can be performed in GRASP while the robot is still operating. Thus production need only be stopped while the new program is loaded onto the robot controller.
K. Young, J. Bennaton

Sensor Based Planning and Programming


Integrating Planning and Execution for Sensor-Based Robots

We are interested in developing planning techniques that are appropriate to control robots in real-time. To be more specific, we want to enable robots to navigate safely in environments with an arbitrary number of moving obstacles and to perform assigned tasks. We want to enable robots to avoid obstacles even when obstacles move on unknown trajectories and with unknown velocities. Due to the nature of the problem complete planning cannot be done in advance. However, some planning needs to be done to guarantee that the robot will eventually reach its destination and perform its task. Task level planning is needed for the robot to perform meaningful tasks, but planning cannot be done without some knowledge of the environment that needs to be gathered by sensors. In this paper we describe how to integrate planning with sensing and execution.
Maria Gini

CAD-Based Computer Vision: The Automatic Generation of Recognition Strategies

Three-dimensional model-based computer vision uses geometric models of objects and sensed data to recognize objects in a scene. Likewise, Computer Aided Design (CAD) systems are used to interactively generate three-dimensional models during the design process. Despite this similarity, there has been a dichotomy between these fields. Recently, the unification of CAD and vision systems has become the focus of research in the context of manufacturing automation.
This paper explores the connection between CAD and computer vision. A method for the automatic generation of recognition strategies based on the geometric properties of shape has been devised and implemented. This uses a novel technique developed for quantifying the following properties of features which compose models used in computer vision: robustness, completeness, consistency, cost, and uniqueness. By utilizing this information, the automatic synthesis of a specialized recognition scheme, called a Strategy Tree, is accomplished. Strategy Trees describe, in a systematic and robust manner, the search process used for recognition and localization of particular objects in the given scene. They consist of selected features which satisfy system constraints and Corroborating Evidence Subtrees which are used in the formation of hypotheses. Verification techniques, used to substantiate or refute these hypotheses, are explored. Experiments utilizing 3-D data are presented.
Charles Hansen, Thomas Henderson

Model-Based Integration of Environment Description and Task Execution

This paper describes a model-based manipulation system being developed at Electrotechnical Laboratory. The system is composed of a direct-drive 6-revolute-joints manipulator ETA-3, a 3-D data acquisition system, an environment modeler with a geometric reasoning subsystem, and a programming system ETAlisp. Conventional CAD modeler provides idealized geometric description, while the robot system must executes tasks in the real world where a variety of constraints, errors and uncertainties must be treated. The system described in this paper is an integration to overcome these problems. A model base structure, a real world modeling system, a spatial calibration among coordinate frames, and a task execution system are described.
Tsutomu Hasegawa, Takashi Suehiro, Tsukasa Ogasawara

Sensor-Based Modification of Local Models for Robotic Manipulation

Nominal local models are used to represent constrained manipulation tasks. Based on sensor feedback, the nominal local models are updated for trajectory modification. Algorithms for altering the models and trajectories are developed from kinestatic filtering techniques which have been previously applied to hybrid twist and wrench control.
Harvey Lipkin

Integration of AI and Path Planning


From CAD Models to Knowledge Bases

This paper approaches the problem of integrating design and manufacturing. CAD systems used for the design should be more strongly connected to the object models needed in manufacturing and assembly processes. In this paper we limit our attention to the phases of manufacturing that require robots.
Existing robot programming languages should be improved in many ways. New methods are necessary for programming sensor-based robots. Facilities for more efficient programming, off-line simulation, interaction with data bases should be provided. The available languages are poor at describing the robot environment and the robot tasks. Moreover they are usable by skilled programmers only.
We will see how the off-line programming of robots requires models and how these models can be built. An evolution of the capabilities of CAD systems and object modeling systems, namely their integration into a general framework for design and manufacturing, is strongly desired.
Giuseppina Gini

Contact Formations and Design Constraints: A New Basis for the Automatic Generation of Robot Programs

In order to achieve an ultimate goal of automatically generating assembly programs for robots from design information, it is necessary that one be able to devise part-mating strategies that will work in spite of sensor, control and manufacturing errors. In general, this is almost certainly unachievable. However, if appropriate design and motion constraints relating nominal and error parameters (of the system) are enforced, significant progress can be made. As the first step in our approach, we introduce a concept of contact formations to describe contacts among parts in a system, aiming at reducing the dimensionality of assembly verification. We also describe a technique for identifying contact formations in spite of system errors. Next, we develop a replanning strategy together with design and motion constraints sufficient to guarantee the success of the strategy for certain insertion tasks. The constraints are reasonable in the sense that they do not impose unrealistic conditions on typical designs. Simulation results uphold the theoretical derivations and show empirically that the theoretical constraints can be relaxed somewhat with excellent results still obtained.
Rajiv Desai, Jing Xiao, Richard A. Volz

Geometric reasoning for grasping: a computational point of view

Geometry is used in robotics as a convenient framework to represent not only the shape of objects but also their mechanical and physical behaviour (e.g. one knows if an object will stick or slide on another object by determining whether the velocity vector is inside the friction cone or not). Considering that automatic robot programming is based on reasoning about both the geometry and the mechanics of objects, a major task to develop a system for automatic robot programming lies in the implementation of great amounts of geometric algorithms. Unfortunately computational geometry is still a bottleneck for most of the topics related to CAD-based system development (in robotics, graphics, computer vision…): even for well-known problems, it happens that implementing some theoritical results (e.g. the configuration space approach for spatial planning) is a very difficult and sometimes tedious task for two major reasons: (1) geometry is very combinatorial and (2) geometry is complex (by complex we mean both that even for simple problems much of the code is devoted to singular cases and happens to be very long, and that it leads to manipulate computationally complex mathematical objects).
The purpose of this paper is not to present a “geometric programming methodology” but rather to show how these two problems have been tackled in the implementation of an algorithm for the accessibility analysis of grasping. Let us recall that the problem is to reason about potential obstacles in a cluttered environment to generate a destination and a collision-free trajectory to reach the object to be grasped. The approach is described and the necessary geometric tools are presented in full details.
Jocelyne Pertin-Troccaz

Off-Line Programming and Path Generation for Robot Manipulators

An interactive computer graphics system has been developed which allows an operator to more readily plan and evaluate robot tasks. The program gives the operator the ability to plan and preview manipulator motions on a graphics screen prior to commanding the robot to execute the desired function. The motion planning and path evaluation algorithms developed for the system serve as a basis for the development of autonomous control algorithms to be utilized in materials handling and logistics support operations. This system is currently operational at Belvoir RD&E Center’s Robotics Laboratory, providing host control for two Cincinnati Milacron industrial robots. The robotics facility serves as a test bed for continuing research in the areas of materials handling, logistics support and countermine technology.
Carl D. Crane, Joseph Duffy, Mark Locke

An Algorithm for CAD-Based Generation of Collision-Free Robot Paths

Generating efficient collision-free paths interactively through computer simulation is one of the main goals of offline programming. These paths can be difficult to create, especially for redundant robots. In addition, the efficiency of the path is dependent upon the expertise of the programmer. Automatic path planning is an attractive option for eliminating these problems.
This paper presents a new method for planning collision-free paths for robots with any number of joints [4–7]. It is particularly well suited for use with kinematically redundant robots. In fact, it is the first configuration space algorithm which allows full use of the redundant joints along the entire path. The algorithm is general in that it does not impose restrictions on the robot’s geometry and motion, the payload or the obstacles. It does not try to locate an optimal path. Instead, it attempts to locate an efficient path while mapping a minimal amount of configuration space. The method involves iteratively modifying a connected path between the starting and goal positions to avoid all intervening obstacles. World model information is used to guide the path modification. This approach is of particular value in high dimensional cases for which exhaustive searches are impractical. Two example paths for a seven jointed robot are presented. A discussion of future directions in path planning is included.
Pierre E. Dupont, Stephen Derby

Optimal Planning of Trajectories for Robots

Two levels of optimal trajectory planning problems are solved for robot manipulators. On the first level the manipulator path is specified, and the constraints are due to limitation on actuator torques/forces. On the second level the manipulator path is unspecified, and the constraints are due to both limitation on actuator torques/forces and presence of workspace obstacles. The first-level problems are solved by dynamic programming and the second-level problems by a recursive quadratic programming algorithm.
M. C. Leu, S. K. Singh

Emulation of Robot Mechanics and Applications


Model Generation and Modification for Dynamic Systems from Geometric Data

We are experimenting with a prototype implementation of a simulation system for rigid body motion where the objects to be simulated are specified by a geometric description and a few symbolic data, such as object density, the type of hinge between certain bodies, and environmental factors. In our approach, the system automatically generates the appropriate mathematical model describing the current system dynamics, and revises the model so as to account for unanticipated changes in the system’s topology. For example, when simulating impact behavior, the system will not know in advance what objects might collide at which points, thus invalidating the usual approach of defining constraint forces between point pairs that are negligible except when the points are in close proximity. We describe the overall organization of the system, and give a general method to effect this self-modification. Focusing on characteristic cases such as gaining or losing contact and low-velocity collision, we discuss our experience with the system, its flexibilities, and its limitations.
Christoph M. Hoffmann, John E. Hopcroft

Modeling of Robot System Dynamics for CAD Based Robot Programming

A new symbolical formalism is introduced to derive the nonlinear control laws involved in controlled mechanisms. It is shown that the approach called the Direct Nonlinear Decoupling Method (DNDM) allows a direct derivation of the explicit form of control laws from the Lagrangian itself so that dynamical equations of mechanisms are not needed in the analysis and a reduction of the amount of calculations. Finally because the method works for many systems in giving the differential equations of motion, the DNDM is a good candidate for the design of computer codes involved in CAD graphics systems.
Michel Cotsaftis, Claude Vibet

A Geometric Database for the Oxford Autonomous Guided Vehicle

The Oxford Autonomous Guided Vehicle Project has the general goal of developing vehicles that can perform useful roles within semi-structured environments. We are currently working with an industrial vehicle, to enable it to cope with the uncertainties which are inherent within the real world. This involves adding a number of sensors to the vehicle, and studying how the information so gathered can be incorporated within a geometric database. This paper discusses the requirements for this database, and outlines the extensions to an existing geometric modelling system (ROBMOD) to provide the three-dimensional components of this database.
Stephen Cameron

Computer Aided Application Program Synthesis for Industrial Robots

Today overall performance of application programs for robots in manufacturing systems and the time required for program generation is strongly dependent on the individual motivation and qualification of the programmer. Due to the robot system inherent complexity and the limited human ability only sub-optimal solutions can be reached even by highly qualified operators. In future adequate computer aided methods and tools are required to improve the quality of the process execution planning.
The paper presents a concept for computer aided robot program synthesis based on a set of tools which support the human operator during the task execution planning. The concept is based on off-line programming concepts and system architectures. The concept includes that the tasks of the operator are stepwise taken over by intelligent system modules. Examples of solutions for specific planning tasks are presented.
Günter Spur, Uwe Kirchhoff, Rolf Bernhardt, Johann Held

CAD-Based Off-Line Programming Applied to a Cleaning and Deburring Workstation

This paper describes a research project for CAD-based off-line robot programming. The research focuses on the specific problem of programming robots in the Cleaning and Deburring Workstation in the Automated Manufacturing Research Facility (AMRF) at the National Bureau of Standards (NBS). A baseline capability is first established with a commercially available off-line programming software package. From this experience, the package will be modified to incorporate geometric reasoning, an object oriented database, and an NBS hierarchical control system. Eventually, the off-line programming techniques will produce executable programs which will be run by the NBS hierarchical control system.
Ronald Lumia
Weitere Informationen