design and analysis of a coding and classification

412
DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION SYSTEM FOR A SYSTEMATIC INTERACTIVE COMPUTER-AIDED ROBOT SELECTION PROCEDURE (CARSP) by ONYEBUCHI FELIX OFFODILE, B. S., M. S. in I. E. A DISSERTATION IN INDUSTRIAL ENGINEERING Submitted to the Graduate Faculty of Texas Tech University in Partial Fulfillment of the Requirement for. the Degree of DOCTOR OF PHILOSOPHY Approve^ August, 1984

Upload: truongnhu

Post on 03-Jan-2017

242 views

Category:

Documents


11 download

TRANSCRIPT

Page 1: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION SYSTEM FOR A SYSTEMATIC INTERACTIVE

COMPUTER-AIDED ROBOT SELECTION PROCEDURE (CARSP)

by

ONYEBUCHI FELIX OFFODILE, B. S., M. S. in I. E.

A DISSERTATION

IN

INDUSTRIAL ENGINEERING

Submitted to the Graduate Faculty of Texas Tech University in

Partial Fulfillment of the Requirement for.

the Degree of

DOCTOR OF PHILOSOPHY

Approve^

August, 1984

Page 2: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

m

/ / : %

ACKNOWLEDGEMENTS

I would like to express my sincere gratitude and indet

tedness to my advisors, Dr. Richard A. Dudek and Dr. Bria

K. Lambert, for their continuous guidance, supervision an

support that led to the completion of this research.

My gratitude also goes to other members of my committe

--Dr. William M. Marcy, Dr. Lebert R. Alley, and Dr. Jame

L. Smith, for their ideas and constructive criticism.

I am especially indebted to Dr. Marcy for his exper

guidance in the development of the computer software an

general design procedure used in this study. My specia

thanks also go to Dr. Smith, for his usual positive sugges

tions and proofreading at various stages of this study, Dr

Alley, for galvanizing my interest in computers and robot

ics, and to all members of the Industrial Engineering facul

ty and staff for their technical assistance in varioL

forms.

Finally, I must express my indebtedness to my brothe

and mentor, Dr. Chukwuezugo Offodile, for his support ar

sacrifices in keeping the family together after our fathe

passed away, my mother Mrs. Beatrice Chi Offodile, fc

raising us well and providing for us in spite of the har

times, my brother, Ndigwe and sisters Mabel and Ogoegbunan

for their encouragement and support.

i i

ll"""-|WPi-J- I

Page 3: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

ABSTRACT

A coding and classification system (ROBOCODE) was de

veloped for robots, and used to model a computer based robo

selection algorithm.

Forty attributes were used to design a taxonomic syste

for robots and provided a fast and easy standard basis fo

comparing robots. The system is semi-polycode structure

and was readily computerized for easy storage and retrieva

of information on robots.

The goal of the ROBOCODE system was a user oriente

computer-aided robot selection procedure (CARSP). The CARS

system software is interactive, and its design showed tha

the ease with which the vast amount of data on robots, an

the number of robots, could be handled was limited primaril

by the disc storage space of the computer rather than th

computer memory. Coding and classification was found t

augment this storage space by a factor of about ten.

The same coding system was used to code the tasks th

robot was to perform in order to establish an effectiv

matching procedure between the task and the robot. For som

task variables that could not be matched directly, a

indirect matching procedure was developed.

Ill

Page 4: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

A set of cost equations was developed and used t

measure the performance of the robots under shop conditions

The necessary condition for selecting a robot was that th

codes for the robot be as good as or superior to the corres

sponding task codes, and the sufficient condition was tha

the robot had a total minimum operating cost.

The robot selection model was evaluated using a statis

tical procedure to investigate the stability of the model ii

selecting the cost effective robot. Experimental result;

showed that the model was fairly stable in selecting thi

cost effective robot based on the robots' first period tota

operating cost. For a robot selection problem in which om

machine was used to perform one type of task on one type o

product (1/1/1), the cost effective robot was selected 67'

of the time, and 54% of the time for the robot selectioi

problem in which one machine was used to perform one type o

task on four different types of products (1/1/4).

IV

Page 5: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

CONTENTS

ACKNOWLEDGEMENTS i i

ABSTRACT i i i

LIST OF SYMBOLS xiv

V

CHAPTER

I. THE EQUIPMENT SELECTION PROBLEM 1

Introduction 1 Problem Statement 3

The Robot Selection Problem 10 Prerequisites for Successful Use of Robots 12 Reasons for Using a Robot 13

Product Quality 14 Increased Productivity 14 Reliability 15 Hazardous Conditions 15 Economy 16

Objectives and Research Outline 17

II. LITERATURE REVIEW 20

Introduction 20, , Robot Selection and Robotics 21 Group Technology 26

Production Flow Analysis Approach (PFA) 27 Parts Coding and Classification 31

Structures of Coding and Classification Systems 31

Coding and Classification Systems 34 Brisch System 34 CODE System 36 MICLASS System 38 SAGT System 4 0 Opitz System 42

Grouping Algorithms 46 Cluster Analysis 47 Similarity Coefficient 49

Conclusions 53

Page 6: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

III. ROBOT CODING AND CLASSIFICATION (ROBOCODE) SYSTEM 57

Introduction 57 1st Digit—Robot Class 63

Servo - Precision 65 Servo - Continuous Path 65 Servo - Point To Point 66 Non-Servo Point To Point 68

2nd Digit—Applications 69 Assembly 72 Arc Welding & Finishing Operations 74 Spot Welding 75

3rd - 11th Digits—Performance Characteristics 76 3rd Digit—Type of Sensors 77

Visual Sensors 79 Tactile Sensors 79 Proximity Detection 80 Contact Sensors 80 Force/Torque Sensors 80

4th Digit—Diagnostics Capability 81 5th Digit—Repeatability 83 6th Digit—Positioning Accuracy 87 7th Digit—Load Range 88 8th & 9th Digits—Velocities 91 10th Si 11th Digits—Reliability 94

12th - 21st Digits—Physical Attributes 98 12th Digit—Coordinate System 99 13th Digit—Number of Axis 101 14th Digit—Horizontal Reach 106 15th Digit—Vertical Reach 111 16th Digit—Arm Sweep 115 17th - 19th Digits—Wrist Movements 119 20th Digit—Robot Weight 119 21st Digit—Floor Space Requirements 123

22nd - 31st Digits—General Characteristics 125 22nd Digit—Memory Type 125 23rd Digit—Memory Capacity 127 24th Digit—Number of I/O Channels 130 25th Digit—Drive Train 131 26th Digit—Program Method 134 27th Digit—Effectors 136 28th Digit—Multiple Grippers 138 29th Digit—Safety Features 139 30th Digit—Mounting Position 144 31st Digit—Price Range 146

32nd - 36th Digits—Power Requirements 146 32nd Digit—Energy Consumption 146 33rd - 36th Digits—Electric Power

Requirements 149 37th - 40th Digits--Operating Environmental

Conditions 153 Conclusions 156

Coding the Robots 153

vi

Page 7: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

f

IV. DESCRIPTION OF TASKS FOR THE CARSP SYSTEM 159

Introduction 159 Coding the Robots 161

Subroutine DATABASE 161 The ADD Subsystem 163 The UPDATE Subsystem 167 The DELETE Subsystem 171 The LIST Subsystem 173 The SUMMARIZE Subsystem 176

Subroutine SELECT 178 Subroutine SORTER 183

Assumptions Concerning the Models 188 Estimating Robot Travel Distances 188

Necessary and Sufficient Conditions for Select­ing a Robot 202

Example on Definition of the Problem Con­straints 204

V. COST COMPONENTS IN THE ROBOT SELECTION PROBLEM 217

Introduction 217 Cost Components in the Robot Selection Problem 218 Identification of the Cost Components 219

Investment Cost (CI ) 220 Overhead Cost (CH ) 222 Production Cost (CPr) 224 Total Operating Cost (CT^) 228

VI. EVALUATION OF THE CARSP SYSTEM 2 30

Introduction 230 Sensitivity Analysis of the Selection Problem 230

Probability Distribution 232 Net Present Worth 233

Statistical Sensitivity Analysis 235 Generation of Codes for Robot Database 238 Generation of Task Codes 238

Defining the Range of the Task Codes 238 Generation of the Task Codes 240

Generation of Cost Values 242 Selection Criteria 246

Minimum Operating Cost 246 Sensitivity Analysis: Mininimum Total

Operating Cost Criterion 248 Net Present Worth 250

Conditions of Test 251 Sensitivity Analysis: Interactive Mode 262 Summary of Test Results 263

vii

Page 8: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

VII. CONCLUSIONS 265

Introduction 265 Summary of Research and Conclusions 265 Recommendations for Future Research 270

REFERENCES 2 74

APPENDIX

A. FORTRAN PROGRAM CODES FOR EVALUATION MODELS OF

CHAPTER 6 287

B. CARSP SYSTEM USER MANUAL 314

C. EXAMPLE QUESTIONAIRE FOR INTERACTIVE EVALUATION 380

D. STRUCTURE OF THE OPITZ CODING SYSTEM 392

Vlll

Page 9: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

LIST OF TABLES

1. PFA Methodology in Matrix Form 30

2. Some Common Coding Systems 34

3. PCA Methodology in Matrix Form 45

4. ROBOCODE - First position 64

5. ROBOCODE - Second Position 71

6. ROBOCODE - Third Position 78

7. ROBOCODE - Fourth Position 8 3

8. ROBOCODE - Fifth Position 86

9. ROBOCODE - Sixth Position 89

10. ROBOCODE - Seventh Digit 91

11. ROBOCODE - Eighth Position 93

12. ROBOCODE - Ninth Position 94

13. ROBOCODE - Tenth Position 96

14. ROBOCODE - Eleventh Position 98

15. ROBOCODE - Twelfth Position 100

16. ROBOCODE - Thirteenth Position 106

17. ROBOCODE - Fourteenth Position 111

18. ROBOCODE - Fifteenth Position 115

19. ROBOCODE - Sixteenth Position 118

20. ROBOCODE - Seventeenth To Nineteenth Positions 121

21. ROBOCODE - Twentieth Position 122

22. ROBOCODE - Twenty First Position 124

IX

Page 10: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

23. ROBOCODE - Twenty Second Position 126

24. ROBOCODE - Twenty Third Position 128

25. ROBOCODE - Twenty Fourth Position 132

26. ROBOCODE - Twenty Fifth Position 133

27. ROBOCODE - Twenty Sixth Position 135

28. ROBOCODE - Twenty Seventh Position 137

29. ROBOCODE - Twenty Eight Position 142

30. ROBOCODE - Twenty Ninth Position 143

31. ROBOCODE - Thirtieth Position 145

32. ROBOCODE - Thirty First Position 147

33. ROBOCODE - Thirty Second Position 148

34. ROBOCODE - Thirty Third Position 150

35. ROBOCODE - Thirty Fourth Position 151

36. ROBOCODE - Thirty Fifth Position 151

37. ROBOCODE - Thirty Sixth Position 152

38. ROBOCODE - Thirty Seventh Position 154

39. ROBOCODE - Thirty Eight Position 155

40. ROBOCODE - Thirty Ninth Position 156

41. ROBOCODE - Fortieth Position 157

42. Ranking Robot Attributes in Descending Order of Use 197

43. Number of Robots Found for Given Number of Con­

straints 200

44. Tightening Selection Constraints ' 202

45. Necessary Condition for Example Problem 205

46. Cumulative Probability Matrix For Robot Codes 236

47. Data for Studying Contributions of the Cost Components 239

Page 11: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

48. Job and Robot Codes 241

49. Minimum Total Operating Cost for Candidate Robots: CASE A 24 7

50. Minimum Total Operating Cost for Candidate Robots:

CASE B 248

51. Reliability of the Selection Criterion: CASE A 249

52. Reliability of the Selection Criterion: CASE B 250

53. Test Conditions 253

54. Projected Total Operating Costs for 5 Year Period:

CASE A 2 54 55. Expected Total Operating Costs for 5 Year Period:

CASE A 255

56. Results of the Net Present Worth Analysis: CASE A 256

57. Projected Total Operating Costs for 5 Year Period:

CASE B 259 58. Expected Total Operating Costs for 5 Year Period:

CASE B 260

59. Results of the Net Present Worth Analysis: CASE B 261

XI

Page 12: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

LIST OF FIGURES

1. Robot Installation Projections {117} 6

2. Comparison of US Productivity {60} 7

3. Comparison of Robot and Manual Costs {36,117} 8

4. Robot Segment {138} 25

5. Benefits of Group Technology {3} 28

6. Example of a Part Coded in the BRISCH System 35

7. Example of a Part Coded in the CODE System 37

8. Example of a Part Coded in the MICLASS System 39

9. Example of a Part Coded in the SAGT System 41

10. Example of a Part coded in the Opitz System 43

11. Grouping of Digit Positions 62

12. Distribution of Robot Repeatability 85

13. Distribution of PA 88

14. Distribution of Payload 90

15. Robot Coordinate Systems 102

16. Distribution of Robot Coordinate Systems 104

17. Distribution of Number of Axis 105

18. Robot Movements 107

19. Robot Horizontal Reach 108

20. Distribution of Robot Horizontal Reach 110

21. Robot Vertical Reach 112

22. Distribution of Robot Vertical Reach 114

xii

Page 13: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

23. Robot Arm Sweeps 116

24. Movements at the Wrist 120

25. Independently Controlled Multiple Grippers {36} 140

26. Simultaneously Controlled Multiple Grippers {103} 141

27. ADD Subsystem/User Interaction 165

28. UPDATE Subsystem/User Interaction 168

29. DELETE Subsystem/User Interaction 172

30. LIST Subsystem/User Interaction 174

31. SUMMARIZE Subsystem/User Interaction 176

32. SELECT System/User Interaction 179

33. Line and Cell Type Layouts 186

34. Estimating Robot Travel Distances: n/l/K Model 189

35. Estimating Robot Travel Distances: n/I/K Model 190

36. Mapping the Travel Distances 193

37. Number of Robots vs First 1 Significant Constraints 199

38. Model Layout for the Example Problem 206

39. SORTER System/User Interaction 209

Xlll

Page 14: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

LIST OF SYMBOLS

a,b,c = the three sides of a triangle

ai = distance between any two equipment

A = objective function vector

bi = components of the requirements of each robot's attribute

Bi = each task constraint vector

Cp = cost/kilowatt hour of power supply

C = cell type layout

^a'^m'^b " respectively the optimistic, most likely and pessimistic cost values of a beta distributed cost function.

(Ca)r ' planning and consultation costs for robot r

CA = each component of the total operating cost

(Cb)r - initial cost of basic unit of the robot

(Cg)i- = cost for retraining personnel

CHj. = overhead cost for robot r

Cij = cell representation of the state of a part j on machine i, and has a value of 0 or 1.

CIj. = investment cost for robot r

(Ci)j. = costs of labor

( m r " maintenance cost for robot r

( p)r " cost for power supply for robot r

CPj. = production cost for robot r

(Cs)r = installation and startup cost for robot r

(Ct)r " cost for special tooling dte to robot r

xiv

Page 15: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

CTj. = total operating cost (CT) for robot r

(CT)^t = total operating cost for robot r at time period t

(C )j- = cost for workplace redesign due to robot r

di = arc distance between any two equipment

D = total distance between all equipment

Dij = dissimilarity coefficient between parts i and j

E(CH) = ecpected overhead cost

E(CI) = expected investment cost

E(CP) = expected production cost

E(CT) = expected total operating cost

E(T) = expected mean of a variable T

h-| = hourly cost of labor at setup shop

h^ = other hourly costs of labor (e.g., quality inspection)

I = number of operations/product

K = number of products

KvA = kilovolt amperes

1 = number of attributes specified as the task constraint

L = line type layout

m = number of robot motions

M = number of discrete variables in a data set

n = number of machines in a work cell

n/I/K = a robot selection model (with the variables as defined ealier).

N = total number of parts

NPW(i)r- = net present worth of the cost function for robot r at a MARR of i

XV

Page 16: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

P = number of personnel

PW(i)j- = present worth of the cost function on robot r with a minimum acceptable rate of return i

qj = lot size for product k

Q; = yearly demand for product k

R = radius of an arc described by a robot arm sweep

Rl = inner radius of a robot's arm

R2 = outer radius of a robot's arm

Si = setup time due opeartion i

S]^ = setup time due to product k

Sij = similarity coefficient between parts i and j

Sj- = total setup time on robot r

t = time

ti = actual operating time per product

t2 = handling time per product

( c k ~ cycle time for product k

u = number of working days per year

V = number of working hours per day

V = velocity

V(CE) = variance of the production cost

V(CI) = variance of the investment cost

V(CT) = variance of the total operating cost

VNPW(i)j- = variance of the NPW of the cost function for robot r at a MARR of i

Vp = minimum velocity required to complete a task

Vj- = velocity of the robot

XV i

Page 17: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

V(T) = variance of the expected mean of a variable T

W = total number of components/constraint

XQ = objective function decision variable

X^ = robot i with attribute vector X

X^i = number of parts using only machine i

Xij = number of parts using both mdrhines i -iiiH j

Xjj = number of parts using only machine j

Yj = task j with attribute vector Y

Z\^ = environment k with attribute vector Z

P[ = set of operations required on component i

3j = set of operations required on component j

A = number of cost components

n = number of time periods

e = the angle of a triangle

xvii

Page 18: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

CHAPTER I

THE EQUIPMENT SELECTION PROBLEM

Introduction

The problem of machine selection has been of concern to

both manufacturing engineers and managers for a long time.

This is true now, more than previously, since machines have

become more complicated. As a result, the selection process

is more critical due to the high investment costs that are

usually involved. In robotics, this problem is becoming

more and more interesting because of the varying capabili­

ties of robot systems, their complexity and several other

attributes. However, robots have certain structural charac­

teristics not found in most conventional machines which an

engineer can use to advantage to enhance the selection pro­

cess .

The Robot Institute of America (RIA), defines a robot

as a "reprogrammable, multifunctional, manipulator designed

to move materials, parts, tools or special devices through

variable programmed motions for the performance of a variety

of tasks" {117}. The keywords in this definition have been

underscored, and taken collectively they mean flexibility.

This flexibility is the main reason for the increasing use

1

Page 19: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

of robots in manufacturing industries. Reprogrammability

makes it possible to adapt the robot to batch type manufac­

turing where the switch from one part or batch to another

can be effected by merely changing the program of instruc­

tions. In multifunctionality lies the versatilty of the ma­

chine as the robot can perform a wide variety of tasks. It

is important at this point to differentiate a robot from

other forms of programmable automation systems. This dif­

ferentiation is in the manipulative capabilities of the ro­

bot. With its ability to move materials through space the

robot can be more readily declassified from its progenitor,

the classical numerical control machine. With these attri­

butes, robots have given the manufacturing engineer both the

capability of automation and the flexibility of manual la­

bor. Even though the throughput of the robot is still below

that of dedicated and fixed automation, it is relatively

higher than that of manual labor.

In recent years through the impetus of reduced cost,

improved power and intelligence offered by advancements in

computer technology, robot systems have become more sophis­

ticated than ever before. The criterion for their use has

either shifted from the usual safety standpoint or expanded

to other criteria. Consequently, more and more manufac­

turing engineers and managers are beginning to employ robots

in varying capacities.

Page 20: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

Problem Statement

Manufacturers of consumer goods have always been faced

with the problem of reducing the cost of production, a prob­

lem they have often addressed by investing heavily in dedi­

cated equipment for very high production volumes. One major

disadvantage in this system is that it is not flexible.

Once a production line is arranged to fabricate a given com­

ponent it is usually impossible to rearrange it for a dif­

ferent product line. The manufacturer is, therefore, often

left with a useless multi-million dollar investment at the

end of a production run. Even when rearrangement is possi­

ble, the cost of doing so is usually so high that it makes

the venture unattractive. Flexibility is needed so that the

customers' insatiable appetite for varied and better quality

products at lower costs can be met. This means that manu­

facturers of consumer goods will have to deal with a great

variety of products, general purpose equipment and different

routing and tooling requirements. Technically, this calls

for the production system to be flexible, a trait that is

typical of the batch type manufacturing. Unfortunately,

however, the level of productivity for the economy of scale

as can be found in a mass production system is lost with the

batch type manufacturing system.

Page 21: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

since about 75% of all metal working industries are of

the batch type, there has been a concerted effort on the

part of machine designers to design a machine that can si­

multaneously address the productivity and flexibility prob­

lems. In the early 1950's their effort was rewarded with

the development of the numerical control machine. Although

the numerical control machine and the Computer- and Direct

Numerical Control (CNC & DNC) machines fell short of the

level of productivity of dedicated machines, they filled the

flexibility gap so superbly that the productivity problem

was almost non-existent.

With the passage of the Occupational Safety and Health

Act in 1971, batch manufacturers were faced with yet another

problem of even greater dimensions. Soon the gains made by

using N/C machines were begining to erode as manufacturers

had to invest heavily in safety equipment, insurance and

workmans compensation. These measures were only cosmetic,

however, as cost of production continually soared and pro­

ductivity declined. Manufacturers therefore sought avenues

to remove the worker from the hazard areas completely.

Meanwhile, some manufacturers, for example the die casting

industry, had begun experimenting with robots. With ad­

vancements in computer technology during this period, the

robot went through numerous improvements and attracted other

users in the manufacturing industries.

Page 22: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

In the past five years, the total number of robot

installations in the United States has increased by as much

as 530% after a 130% increase over the five previous years

{117}, Figure 1. Many projections expect this increasing

trend to continue for the next several years, and for the

current 7,000 robot installations in the United States to

increase to about 100,000 by the year 1990 {65,117}. Two

major factors have contributed to this increase. First, for

the past twenty years, the productivity rate of the United

States has lagged compared to that of overseas competitors

{60}, Figure 2. Second, during the same period, direct la­

bor cost was increasing at an alarming rate as manufacturing

personnel were given wage concessions for performing unplea­

sant, hazardous and/or monotonous jobs {36,117}, Figure 3.

Manufacturing engineers and managers saw in robots the solu­

tion to this escalating cost of labor and decreasing growth

rate per employed person.

With this boom in robot technology, came the problem of

standardization. In the US alone there are well over 50 ro­

bot manufacturers each with its own unique ideas on robot

configurations and programming languages. On the other hand,

the robot user, probably due to his eagerness to acquire the

machine, often does not have the patience, and in most

cases, the time to search through the literature or contact

Page 23: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

CUMULATIVE TOTAL OF U.S, ROBOTS 2S0H

200-

1

a ISO-B 0 T s I N s r L 100-L

0

50-

0-

/ /

/ /

/ /

/ y

1960 1982 196M 1968 1986

TEARS

1. JtOBOTS INS7ALLXD IRI IN (000)

1990 1992

Figure 1: Robot Installation Projections {118}

Page 24: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

7

JAPAN

GERMANY

FRANCE

CANADA

UNITED KINGDOM

UNITED STATES

9.1%

AVERAGE YEARLY PRODUCTIVITY GAIN IN MFG 1950 - 1975

Figure 2: Comparison of US Productivity {60}

Page 25: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

^s, i^ufr^^rar'TifSPP^ -on^J. ^OBOT JN Tiaus V^n^

/

J 975

LEGCNOJ NUMBER

TEAR 1980

'• - M ? . K ^ - - - - <v

ises

figure 3: •• Comparison of Robot

and Manual Costs f36,lI8i

i X.

Page 26: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

as many vendors as possible to determine the systems

available to him. With the varying robot capabilities,

species, and manufacturers available to the potential user,

it becomes exigent to devise a systematic methodology for

selecting the right equipment for a given task.

It is, at best, difficult and impractical to get all

robot manufacturers to agree to a standard robot configura­

tion or programming language and method. However, these

variations can be made readily available to the potential

robot user in a more systematic manner. Under the assump­

tion that a manufacturing concern has decided to use a robot

for a given operation, the objective in this research was to

introduce the concept of standardization into the robot se­

lection process. Specifically, a systematic interactive

computer algorithm was developed that could be used for se­

lecting robots for a given operation. This was with the

hope that such an interactive algorithm could help the po­

tential robot user save valuable time and money by providing

him a good tool for selecting the robot system most suited

for his operational needs.

Page 27: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

10

The Robot Selection Problem

Consider a task j, with attributes (characteristics) Y,

to be done by a robot. The task may vary in complexity from

a simple pick and place routine to spot welding, and to a

higher degree of complexity of arc welding or assembly.

Further characteristics of the task may include the weight,

shape, size and design data of the part to be moved, etc.,

and may be represented by,

Y. = (y ,y ,...,y.,...,y^). i.i J 1 2 J n 3

Also consider the environment k, where the task is to be

performed, with attributes (characteristics) Z. The envi­

ronment could vary from normal to extremely hot or cold,

from narrow to spacious, or from single to multiple machine

servicing. The environmental attributes may also include

distance between the machines, the ambient temperature,

etc., and may be represented by,

^k " ^^1'^2 " ' *'^k'• • *'^m^k - '

The problem is to select the robot i, with attributes

(characteristics) X, that can perform the task within its

environment at a minimum production cost. The robot attri­

butes may be the maximum permissible weight of lift, energy

consumption, number of degrees of freedom, work envelop,

repeatabiIty, etc., and may be represented by,

Page 28: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

11

Xi = (x^,X2,...,xi,...,xi)i 1.3

The Objective function can then be stated as follows:

Minimize CTr = Z CA. 1.4 6 = 1 ^

S. T. X-L >= Yj + Zk 1.5

Xi,Yj,Zk >= 0

where,

CTj. = The total cost incurred by using a given robot r

CA^ = Each component of this incurred cost

A = The number of these cost components

X-L,Yj and Z]^ are respectively, the robot, task and en­

vironmental variables.

The complexity of this selection problem, perhaps, can

be better appreciated when one realizes there are over one

hundred potential robot attributes that may have to be con­

sidered {1051. With over fifty robot manufacturers and

about two hundred robot species {64,105,135}, the net effect

of this complexity is that the engineer or manager wanting

to select a robot for an operation ends up spending too much

time and money without much degree of certainty that he has

made the right choice. The selection procedure as intro-

Page 29: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

12

duced in this study was geared toward minimizing the search

process by employing the speed and memory capacity of the

computer.

Prerequisites for Successful Use of

Robots

In spite of the recent developments in robot technolo­

gy, robot systems still require an orderly working environ­

ment in order to effectively perform their assigned tasks.

The operation sequence should be as repetitive as possible,

and should require little or no judgment. Perhaps the most

important thing is to realize that a robot is a machine.

Most users tend to compare robots with humans and are disap­

pointed when certain expectations are not met. In some op­

erations, human presence is indispensable and should be used

to complement the robot, and vice versa. The onus of the

analyst is to identify those tasks that can be better per­

formed by robots due to their design, dexterity, strength,

consistency, ability to withstand hostile environments, etc.

Finally, the main concern in any form of business endeavor

is cost. Some managers are apprehensive of robots merely

because of their costs, and some analysts find it difficult

to justify them. Robot experienced users {36,99,131} have

found that the best way to justify the installation of a

• 4 .

Page 30: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

13

robot is to argue for its merits in bottleneck production

situations. Then, as the robot proves its worth in these

bottleneck situations, it would be a lot easier to convince

management to try it in other production areas. Bottleneck

situations include direct economic and non-economic fac­

tors. Tanner {130} contends, however, that "even the 'non-

economic' considerations are, in the final analysis, basi­

cally economic in nature" {p. 127}. Some managers tend to

look only at the effects of bottleneck: reduced productivi­

ty or net loss in profit margin. Bottleneck situations are'

caused in part by conditions that are not conducive to effi­

cient factory operations. These causes and .effects are the

main reason for the continued increase in the use of robots

in the manufacturing industry. Some of these causes and ef­

fects of bottleneck situations are discussed subsequently.

Reasons for Using a Robot

Until about ten years ago, robots had been used mainly

in those manufacturing processes where the operational pro­

cedure was hazardous to the human operator. This was the

main reason for the early successful use of robots in the

foundry industry. In recent years, however, robot users

also cite product quality, eco-nomy, productivity, and

reliability as some other reasons for using a robot.

Page 31: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

14

Product Quality

A robot is not liable to be detracted by changes in the

working environment as a human being would. Thus, where the

quality of physically demanding jobs or those in a hazardous

environment may deteriorate with the mood of the human oper­

ator, it may not with robots. Once the program of instruc­

tions is fed into the system, the output always conforms to

quality specifications. This avoids the problem associated

with different operator working practices. Scrap and re­

jects are reduced resulting in increased productivity.

Increased Productivity

Robots do not necessarily work at faster rates than

skilled human operators. In certain tasks requiring complex

motions, a human can actually work faster than a robot.

However, unlike the robot, the longer the work cycle gets,

the slower and more inconsistent the human worker tends to

become due to fatigue. Robots can therefore work continu­

ously for a greater number of hours and the variation in the

quality of finished goods is less than that of humans. Be­

cause of their consistency in turning out better quality

products, the net total output for a robot is higher than it

would be for a human. This results in a greater output per

hour of labor input. With improved quality in products,

there is less scrap and rework and, higher productivity.

Page 32: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

15

Reliability

Robots "work without complaint, start on time, are nev­

er absent and take no breaks or vacations" {137}. This

quote was from a specification sheet by one of the US major

robot manufacturers. The statement is neither meant to be

callous nor sarcastic. Rather, it is a very straight for­

ward way of making a point. One of the problems in most

manufacturing industries is that of absenteeism. Although

in some cases the cause of absenteeism could be traced back

to the factory floor, the fact remains that a robot is not

subject to any of these conditions. Applications experi­

ence {36,101,131,139} has shown that robots have fairly high

reliability in terms of their uptimes, and that an uptime of

98% is common {36,103}.

Hazardous Conditions

Since the enactment of the Occupational Safety and

Health Act (OSHA) in 1971, safety has become of great con­

cern to all manufacturers who have been finding it increas­

ingly difficult to abide by all the OSHA regulations. The

heat and fumes from molten metals in the die cast industry

is a good example. One way manufacturers have found

expedient to avoid run-ins with the agency is by automation.

The human operator is given a supervisory role over the

Page 33: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

\

16

machines, thereby removing him from the danger zone. On the

other hand, management is saved some money on personal pro­

tective equipment which the operator may seldom use. Insur­

ance premiums are relatively lower, and legal fees and po­

tential workmans compensation are minimized. The robot has

fostered the manufacturer's automation capabilities due to

its reprogrammability, multifunctionality and manipulative

capabilities. One of the most common industrial accidents

is that resulting in back injuries. In the past 10 years,

these injuries have gained a major research effort as ergo-

nomists tried to find the best lifting posture and maximum

acceptable weight of lift. Of course the problem with

these standards is in the enforcement phase. Every human

operative has his own unique way of doing things, and usual­

ly finds it cumbersome to adapt to changes regardless of

whether his health depends on it or not. With the robot

this problem is essentially eliminated.

Economy

In a survey of some industrial robot users, Sanderson,

et al. {117} found that the main reason for using robots for

a given operation was economic. This is both due to

escalating cost of labor, cost for personal protective

equipment, in process inventory, poor quality products and

Page 34: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

17

possible scrap and rework. Due to the escalating cost of

labor, for example, it is becoming increasingly attractive

to substitute automatic equipment for manual labor. Al-

though initial higher investments are involved, the operat­

ing costs on these machines remain relatively constant while

that of manual labor increases exponentially {36,117}. From

the general shape of the learning curve, it can also be ar­

gued that employees are more expensive to maintain after a

given time period. They move into management positions, go

up in the salary structure, are entitled to more company

benefits- longer vacations, family insurance, pensions, etc.

All these add up to increases in the total overhead cost of

the company.

Objectives and Research Outline

The major objectives of this research are:

1. To introduce the concept of standardization into the

robot selection process.

2. To choose appropriate robot characteristics for the

creation of Robot Descriptive Database (RDD).

3. Development of a Robot Coding and Classification

System (ROBOCODE) using these characteristics.

4. Development of a grouping algorithm that can group

robots based on a given criterion.

Page 35: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

18

5. Translation of task variables to those of the robots

in the RDD.

6. Development of a procedure for matching task vari­

ables to those of the robots in the RDD.

7. Choosing of the right robot through an economic anal­

ysis model.

8. Integration of these objectives through an interac­

tive computer algorithm.

In Chapter 2, previous research work on the robot se­

lection problem are reviewed. Since this research effort

was designed around Group Technology (GT) principles, some

coding and classification systems are reviewed together with

techniques for grouping families of parts.

In Chapter 3 the robot coding and classification system

is designed and presented. Chapter 4 deals with the task

analysis aspect of the selection procedure. The objective

here is to define and establish relationships between the

task and environment characteristics which the user can use

as input into the system. The task-robot matching process

is also discussed in this chapter. Other supporting subrou­

tines in the Computer-Aided Robot Selection Procedure

(CARSP) system are also presented and explained in this

chapter.

Page 36: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

19

Once the robots that match the specified task are

found, they are subjected to an economic analysis model.

These cost models are presented in Chapter 5, and the com­

puter program ECONOMY is the subroutine in the CARSP system

used for this purpose.

The methods used to evaluate the CARSP system are pre­

sented in Chapter 6. Although some examples are given with­

in each chapter or segment of this study, a problem is posed

and solved in this chapter so that the whole solution proce­

dure can be integrated. Results of a similar problem solved

in an interactive mode by users other than the designer are

also presented. The robot selection problem and the solu­

tion procedure used in this study are summarized and recom­

mendations for further research studies on this problem sug­

gested in Chapter 7.

The appendices at the end of this study are of particu­

lar interest as they will help to enhance the clarity of the

subject matter. The reader who is interested in the mechan­

ics of the CARSP system is advised to refer to these append­

ices as often as possible.

Page 37: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

CHAPTER II

LITERATURE REVIEW

Introduction

Robot technology has been around for more than half a

century now, but it wasn't until a little over ten years ago

that industries realized the need for more diversified use

of the system. With new developments in computer technolo­

gy, robot technology has gained even more attention. Engel-

berger's "Robotics In Practice" {36} probably did as much

for the increased interest in robotics as did computer tech­

nology. The book was probably the first concise work on the

subject, and "remains the single most useful introductory

book on industrial robots" {64, p. 178}. Starting with the

history of the technology, Engelberger described its appli­

cations and advantages and concluded with the current state

of the art and future developments. Since then more re­

search materials have been published in the literature. Nof,

et al. {91}, for instance, proposed a man-robot job assign­

ment criteria. And most recently, Kamali, et al. {69} sug­

gested a robot-human-automation framework for integrated

assembly systems.

20

Page 38: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

21

Robot Select ion and Robotics

Some of the major problems in robotics are not as much

those of technology as they are of administration. Because

even as the technology is continuously progressing, the ro­

bot user is still lagging in his efforts to optimize its

use. There are at least 7000 operational robots in the US

today, as was seen in Figure 1, and well over fifty manufac­

turers each very eager to control the market. Consequently,

there are thousands of salesmen haranguing potential robot

users with all the benefits of robotics in the manufacturing

industries.

In the past, robots were used mainly in those manufac­

turing systems where the operational procedure was hazardous

to the human operator, for example, the heat and fumes of

the foundry industry. Then, justifying and evaluating a ro­

bot system was relatively straight foward; it was going to

take the operator out of a danger zone. In the modern man­

ufacturing industry, however, the criterion for using a ro­

bot system has either shifted or broadened and users now

cite productivity, operating cost reduction, dependability

and quality as their main reasons for using a robot

{117,131}. Because of these varied criteria and the varia­

tion in the species of robots that can meet them, there is

an ever increasing need for the potential robot user to know

Page 39: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

22

which robot system is best suited for his particular

operation. Many researchers have tried to address this need

by proposing some task assignment criteria for robots and

alternative machines {69,91,93,102}.

Several research papers have been written on methods of

determining the appropriate robot for a given task

{76,91,93,102}. Paul and Nof {102} introduced a Robot Time

and Motion (RTM) methodology for the analysis and design of

robot work. Compared to the Methods Time and Measurement

(MTM) for humans, the authors found that while the MTM meth­

odology may be desirable for work method analysis for ro­

bots, different motion elements and parameters should be de­

fined for robot work. From a table of RTM values developed

for distance, weight and tolerance, it is possible, in an

industrial setting, to transform a given robot performance

to that of a human.

Nof, et al. {91} carried the Paul and Nof study even

further. They reported on a comparative robot-man skills

and characteristics guide for choosing between robot and man

for a given task. Once the decision was made to use robots

the authors then provided information on the characteristics

of the robot that should perform the task. Although the

study is general in nature, it does provide a framework for

evaluating alternative robot models for a given task.

Page 40: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

23

Since the work of Paul and Nof, researchers have

developed additional models of robot production systems.

For instance Kamali, et al. {69} proposed a methodology for

designing tasks involving the choice between man, robots and

automation.

Most recently, Nof and Lechtman {93} described the Paul

and Nof RTM system in detail. The three main components of

their model are;

1. RTM,

2. Robot performance models, and

3. The RTM annalyzer.

The methodology has the capabilities of

1. Systematically specifying a work method for a given robot in a simple, straight forward manner.

2. Applying computer aids to evaluate a speci­fied method by time-to-perform, number of steps, positioning tolerances and other re­quirements so that alternative work methods can be compared.

3. Repeating robot evaluation for alternative robot models {93, p. 38}.

The RTM system has ten general work elements which the

authors have divided into four major groups: Motion,

Sensing, Tool and Delay Elements. Under each element group,

pertinent parameters have been specified and may vary frorr;

Page 41: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

24

one robot to another. Within these parameters, the authors

have identified four modeling approaches for each element

group.

1. Element tables: Tables of data obtained from actual

motion and time measurements for a variety of robot

systems. The authors developed such tables for the

Stanford Arm and the Cincinnati Milacron T .

2. Regression Equations: Used for predictive purposes

when observation values are random.

3. Motion Control: Used when information on the robot

engineering design is available.

4. Path Geometry: By specifying the path geometry, the

motion time can be found based on the robot's joint

and link velocities.

The use of this method for the robot selection problem will

involve the analysis of both the design and mechanics of ro­

bots under each of the four categories. For a manufacturer,

this may not only be time consuming and laborious, but also

expensive.

Vukobratovic {138} has, however, shown that the spheri­

cal robot is superior to all others in terms of speed and

energy consumption based on the following assumptions:

1. The robot can make the required geometric moves.

Page 42: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

25

2. The stresses in the robot segments do not exceed

certain permitted values.

3. The driving motors of the robot joints can produce

the forces and torques necessary for the task.

4. The deviation due to elastic deformations of the seg­

ments do not exceed certain permissible values.

In developing his models, Vukobratovic further assumed that

the robots are all constructed with a cylindrical tubing

(Fig 4). He then formulated the optimization problem as

that of minimizing R^, by setting the ratio R /R equal to a

constant.

R7 -^

Figure 4: Robot Segment {138}

Page 43: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

26

Group Technology

Two of the objectives of this study were to develop a

coding system for robots, and subsequently use the coding

system to design a classification system for use in the

CARSP system selection algorithm. Coding and classification

are components of a manufacturing technique known as Group

Technology, and will be discussed in this section.

The objective in Group Technology (GT) is to identify

and classify only permanent and logical characteristics of

the grouping entities in order to take advantage of their

similarities in manufacturing and design. The concept of GT

is therefore that of problem solving defined by Solaja {124}

as that of realizing "that many problems are similar and

that, by grouping similar problems, a single solution can be

found to a set of problems thus saving time and effort."

Loss of time and effort are the main reasons it has not been

possible to achieve an economy of scale in the batchshop

comparable to that of mass production systems. Not only

does the batch manufacturer have to contend with different

part configurations, general purpose machines and different

tooling requirements, but also transportation of these parts

between machines and the set-up of each machine for a given

part. Merchant {in 134} notes that an average part spends

only about 5% of its time in an actual metal removal

Page 44: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

27

operation, and about 95% either waiting for a machine to be

available or on transportation between machines. Since the

introduction of GT the transportation and setup times have

been reduced resulting in improved productivity. Figure 5

{3} shows some other benefits from the introduction of Group

Technology. The grouping of similar parts means that they

can use the same machine setup and can be transported to the

machine in one trip. As a result of using these GT prin­

ciples in the batch manufacturing systems, small and medium

size productions are actually integrated to form semi mass

production systems. Different aspects of this GT concept

will now be discussed so 'as to lay the ground work for their

use in this research. Grouping similarity can be based on

manufacturing or design attributes, known respectively as

Production Flow Analysis and Parts Coding and Classifica­

tion.

Production Flow Analysis Approach

(PFA)

The manufacturing attribute classification system is

concerned with the analysis of the operation sequence and

machine routing used for the production of the grouping

entities. This methodology, known as the PFA, is based on

the premise that grouping parts with similar process routes

Page 45: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

28

will minimize the risk of capital expenditure on additional

machines that may not be needed. The methodology was first

introduced by Burbidge {14,15,19}, and since his work, sev­

eral other researchers have introduced different versions of

the technique {21,24,72}.

Productivity

Effective Machine Operation

Reliability of Estimates

Component Stondord-izotion and Rationalization

Can Increase

Costing Accuracy

Customer Service

Order Potential

GROUP T E C H N O L O G Y

Planning Effort Can Reduce Overall Cost

Paper Work

Setting Time

Down Time

n

Work in Progress

Finished Ports Stock

Overall Production Times

Work Movement

Figure 5: Benefits of Group Technology {3}.

Page 46: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

29

The PFA methodology as enunciated by Burbidge can be ap­

proached in the following manner.

1. Analyze parts with respect to routes.

2. Group parts that use the same set of machines.

3. Arrange machines to minimize or eliminate backtrack­

ing.

4. Use the same tools and materials within each machine

groups.

Production flow analysis methodology can be represented

in a matrix form as shown in Table 1. The representation is

based on the cell admissibility principles. A cell is ad­

missible only if the part requires processing on the corre­

sponding machine, and it is not otherwise. Then,

il if part i can be processed on machine j.

0 otherwise,

where,

Cij = The state of part i in machine j.

This approach to GT is limited in its capabilities, however.

This is because even though the methodology can be used to

effectively form groups of parts and machines, it does not

give any insight into the actual production systems. For

instance information on the types of material for the parts,

Page 47: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

30

batch quantity for each part, or the degree to which a given

machine can perform an operation on a part. The methodology

apparently assumes that every other requirement is met and

the objective is to make the most effective use of available

facilities through group formation.

TABLE 1

PFA Methodo logy in M a t r i x Form

P A R T S

m

M

A

C

H

I

N

E

S

n

Page 48: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

31

Parts Coding and Classification

The design attributes classification system or Parts

Coding and Classification Analysis (PCA) is mostly concerned

with the use of individual part design features for group

formation. Such features include tolerances, materials re­

quirement, part shapes and sizes. This concept of using de­

sign features for the purpose of describing and grouping

similar parts was introduced by Mitrofanov {87}. Opitz

{96,97} later extended the idea to production cells and de­

veloped a comprehensive coding and classification system for

work pieces. Since these two pioneering works several other

coding and classification systems have been developed. Some

of these systems will be discussed later in this chapter.

All of these are restricted to component parts, however, and

can be of any of three possible structures.

Structures of Coding and Classif i-cation Systems

Coding and classification systems generally fall into

one of three categories: monocode, polycode or hybrid.

In the Monocode, the meaning of a given digit depends

on the meaning of those digits preceding it in the code

number string. For example, the last digit of a lottery

number has no meaning if the digits preceding it are not

Page 49: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

32

known. Monocode is therefore a system of synthesis and

analysis. In synthesis, the entire population of items are

divided into a small number of subgroups each with a dis­

tinct common attribute. Much like in a decision tree, it is

the code for this common attribute that governs the rest of

the code number for each subgroup. In analysis, each sub­

group is broken down into its unique attributes until divi­

sions are no longer necessary or the lowest class of divi­

sion is reached. The major advantage of this coding system

is that more information can be contained in fewer code num­

ber strings.

The Polycode classification system views the "popula­

tion of items to be classified and decides on a set of ques­

tions to be asked about each collection" {30, p. 89}. The

answers to these questions if asked, recorded and coded in

the same order constitute a polycode structure. Unlike the

monocode, the presence of a given feature of the coded com­

ponent does not depend on the presence or absence of any

other feature. The meaning of any digit in the code is

therefore self contained, and the order of the digits may be

reversed without any loss of generality. However, as a

matter of expedience, an order is maintained in which the

most important features are coded first. This is also

particularly desirable as one inherent problem with the

Page 50: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

33

polycode system is that the code may be intractable if the

number of variables are not restricted. Starting with the

most important features down to the least important ones al­

leviates this problem as the code number can be truncated if

it is determined that the major features have been coded.

Eckert {30} contends that most coding systems used in

industries are Hybrid. The hybrid system combines the best

of monocode (synthesis into subgroups), and the best of po­

lycode (individual feature coding independence). The mono-

code is usually the first digit in a hybrid structured cod­

ing system, and the polycode makes up the rest of the

digits. - It is possible in some cases for the polycodes to

even diverge to start a new monocode structure and so on.

An example is the Opitz coding system which is "a collection

of small number of polycodes and, within each one, the dig­

its are independent of other digits" {30, p. 90}.

The advantage of the polycode or semi-polycode over the

monocode is in the ease of computer cataloguing and retriev­

al of independent digits. With the monocode, this exercise

is extensive and some time very difficult. Table 2 shows

some common coding systems, the number of digits each

supports, and the types of code each uses. Over the years

several different coding systems have been developed to help

manufacturers handle part data problems. A few of these

Page 51: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

TABLE 2

Some Common Coding Systems

34

System Number of Digits Type of Code

PNC

CODE

MICLASS

OPITZ

TELKA

6

8

12

9

12

Monocode

Semi-Polycode

Semi-Polycode

Semi-Polycode

Polycode

systems will now be discussed. The example part used for

each system was cylindrical so that better comparison could

be made between the respective coding systems.

Coding and Classification Systems

Brisch System

The Brisch coding system is tailor-made to code parts

for a particular organization, and consists of from 4 to 6

digits {30,59,60}. The main objective of this system is for

component retrieval and variety reduction. The basic part

Page 52: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

35

of the system is design oriented and monocode in structure.

With the coding system as is, such production attributes as

materials, operations, proportions and size are not embodied

in the main code. This has made the system suspect for cod­

ing and sorting of specific components and for planning of

production operations. An example of a part coded in the

BRISCH system is shown in Figure 6.

CODE 325312

300000 Sinp.le Piece Part 320000 Axial Component 325000 Axial Component Stc[)ped 325300 Single Through Hole 325310 Inside Diameter .5"<ID^. 5^" 325312 Outsid-e Diameter .8"<:0D^. 90"

Figure 6: Example of a Part Coded in the BRISCH System

Page 53: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

36

Since the development of the main codes, production

oriented secondary codes have been added, and like the main

code, they are tailor-made to satisfy individual organiza-«

tional needs. Unlike the main code, however, the secondary

code is polycode in structure and is conducive to computer

storage and retrieval. The overall coding system is there­

fore semi-polycode.

CODE System

The CODE system, developed by Jay Bergen and Associ­

ates, a division of Manufacturing Data Systems Incorporated,

is a semi-polycode made up of 8 digits {6,11,31}. The first

six digits are the major divisions and classify parts by

shape. The digit designations are as follows:

1^^ Digit Major shape of manufactured part

2^^ Digit External shape features

3^^ Digit Internal shape features

4^^ Digit Holes

5^^ Digit Cuts

6 Digit Slots, flats, other machining operations

7^^ Digit Outside diameter

8^^ Digit Overall length

Page 54: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

37

The first digit governs the rest of the digits 2 through 8,

which are polycode structured, hence the semi-polycode na­

ture of the system. This makes the system easy to learn in

spite of the fact that it codes a sizeable amount of infor­

mation. It does not contain production information like

workpiece material and tolerance, however, and is therefore

only design oriented. An example of a part coded in the

CODE system is shown in Figure 7.

^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ; ^ ^ ^ ^ ^ ^ ^ < ^ ^ ^

^^^^:^^^s:^^^^^^S^^^:^\^^

< 2 .5" ^

CODE 11200043

Cylindrical Part Sinrle Outside Diameter Single Internal Through Hole

No Other Holes

Outside Diameter . 2 7" <;0D>^ . 44" Length 1.6"<L>$ 2.7"

Figure 7: Example of a Part Coded in the CODE System

Page 55: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

38

MICLASS System

MICLASS, an acronym for Metal institute Classi f icat ion

is a semi-polycode structured coding and classification sys­

tem. The number of digits may vary from 12 to 30, and the

system is both design and production oriented {56,57}. It

is also capable of handling some management functions, like

economic analysis. The first 12 digits of the system are

universal and are designated as follows:

1^^ Digit Main shape

2nd ^ 3rd Digits Shape elements

4^" Digit Position of shape elements

5^ St 6 Digits Main dimensions

7^^ Digit Ratio of dimensions

8^^ Digit Auxilliary dimensions

9^^ Digit Dimensional tolerance & rough­

ness

10^^ Digit Form tolerance

11^^/12^^ Digits Material code

The other ^possible 18 digits are used for other workpiece

manufacturing information specific to a particular company.

Some of these may include lot size, setup time, machining

time and machine tools to be used.

Page 56: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

39

One very unique attribute of the MICLASS system is that

it can be used conversationally. The user only needs to

supply the workpiece information interactively to a computer

that in turn generates the code number for the part. The

number of questions varies with the complexity of the part

to be coded, "the minimum is seven for a simple workpiece,

and the average is between ten and twenty" {56, p. 166}.

The complete coding system also includes a Computer-Aided

Process Planning (CAPP) capability and can be run in four

different languages: English, French, German and Dutch in

either the British or metric system. An example of a part

coded in the MICLASS system is shown in Figure 8.

CODE 1120 2231 XXXX

1120 2231 XX XX

X Material Type To ieranccs Di mens i ons Main Shape f\ Shape I.:lcmcnts

Figure 8: Example of a Part Coded in the MICLASS System

Page 57: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

40

SAGT System

The Systematic Approach to Group Technology (SAGT)

classification system is an 18 digit alphanumeric coding

system for cylindrical work pieces {1}. The system is poly­

code structured and is both design and production oriented.

The digits are designated as follows:

Digit 1 Longest diameter

Digit 2 L/D ratio

Digits 3,4,5,6 External shape

Digits 7,8 Internal shape

Digit 9 Holes (non central)

Digit 10 Gears and splines

Digit 11 Plane surface machining

Digits 12,13 Material shape and type

Digits 14, 15, 16 Finish and tolerance requirements

Digits 17,18 Production control information

The SAGT system is both extensive and detailed, and is con­

ducive to design and production planning and control infor­

mation retrieval. Two draw backs with the system, however,

are that it uses alphanumeric codes, and is rotational

workpiece specific. An example of a part coded in the SAGT

system is shown in Figure 9.

Page 58: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

41

CODE 7H0000200003500068

7H 0000 2 0 0 0 0 3 5 0 0 0 6 8

I Lead Time 11-15 Days

Batch Size 101^150 Pieces

Not Defined

Surface Finish Not Indicated

— Originally Round & Wrought

— Low Carbon Alloy Steel

No Surface Machining

No Gears

No Other Holes

Not Stepped in 2 Directions

Through Bore

External Shape Elements

L/D Ratio 4.001 " 4 L/D 5.000"

Maximum Diameter 1.0281" D ^1.1593"

Figure 9: Example of a Part Coded in the SAGT System

Page 59: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

42

Opitz System

The Opitz coding and classification system is a compre­

hensive method of identifying and grouping similar workpiec-

es by means of symbols. Although originally developed for

workpieces, the methodology is general in nature and can be

adapted to structurally define machine tools {30,40,78}.

The system is of a semi-polycode structure and is made

up of nine digits {96,97,98}. The first five digits, called

the "Geometric (Form) Code" describes, as the name implies,

the geometric shapes and dimensions of the parts, and is

therefore design oriented. The last four digits are the

"Supplementary Codes" and further describe other information

about the workpiece not covered in the Form Code (see Appen­

dix D). Although the system is more design than production

oriented, it is flexible and "can be further extended by a

series of secondary codes indicating the operation type and

sequence, thereby facilitating the rationilization of pro­

duction methods" {40, p. 164}.

Figure 10 shows an example of a workpiece coded with

the Opitz system. In the Opitz system each digit's position

in the code number (001 004 690) represents a particular

characteristic of the part, while the digit itself

represents variations in the level of the characteristics.

Page 60: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

43

liM ^ ^ ^

^

- «

^ ^ ^

T ,

^

^

2.0"

CODE 001 014 690

Figure 10: Example of a Part coded in the Opitz System

Page 61: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

44

For the part of Figure 10 with the Opitz code number (001

004 690), the interpretation is as follows:

0 Rotational Component with L/D <= 0.5

0 No Shape Elements

1 Smooth Bore

0 No Surface Machining

1 No Auxilliary Holes or Gear Teeth

4 Diameter > 4.0 <= 6.5

6 Heat Treated Alloy Steel

9 Pre-Machined Component

0 No Coding Accuracy Specified

The methodology for this coding and classification system as

developed by Opitz follows this systematic approach:

1. Develop a system to classify parts with respect to

their descriptive characteristics.

2. Classify parts with this system.

3. Group parts with similar code numbers.

4. Group machines indicated in the process of these

parts.

Like the PFA, the PCA can also be represented in a ma­

trix form, (Table 3). The parts to be coded are listed on

the vertical axis and their respective design and processir.c

Page 62: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

45

features are listed on the horizontal axis. Each cell entry

represents a particular attribute of a given characteristic

on the horizontal axis, and the string of numbers on each

row represents the code number in the coding system.

TABLE 3

PCA Methodology in Matrix Form

DESIGN & PROCESSING FEATURES

m

R

1 0

n

Page 63: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

46

Grouping Algorithms

In order that subsets of robots can be determined for a

given task, a grouping procedure was designed into the CARSP

system using file management procedures. The number of ro­

bots admitted into a group can be controlled by the user.

If the number of constraints is large, fewer robots would be

admitted, and if small, more would be admitted into the

group. In the later case, the constraints can be tightened

to achieve the same effect as in the first case. This flex­

ibility guarantees that, should there be no one-to-one match

in code numbers of the task and any robot, the analyst can

have access to the data on the robots that are most similar

to the "ideal" robot. The analyst, therefore, will have

the option of either redesigning his task to suit the best

available robot (i.e., relax the constraints), or decide not

to use a robot at all. A review of existing grouping al­

gorithms now follows.

Some researchers have used the cell matrix approach for

grouping parts and machines in GT problems {21,72,82,107}.

The two most common techniques for forming production groups

are manual (or inspection methods) and computer methods.

The former is limited to small problems although Burbidge

{19} reported on a successful procedure for large problems.

King {72} and Carrie {21}, however, doubt this assertion and

Page 64: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

47

respectively went on to say that "whilst intuitive manual

methods may be adequate for small problems, they become pro­

gressively less manageable and very time consuming and prone

to error when applied to larger problems" {72, p. 215};

"Burbidges' assertion that manual sorting of the matrix is

suitable for problems with up to 2000 components is grossly

over-optimistic" {21, p. 406}. From the foregoing then, it

can be concluded that for flexibility on most practical

problems, computer grouping techniques should be used when­

ever possible. This is the procedure reported by Carrie,

King, Rajagopalan and Batra {108}, and McAuley {82}. Carrie

{21} used Ross' {111} algorithm which was based on the sin­

gle linkage cluster analysis method developed by Sneath, and

reported in Sokal and Sneath {123}. The method uses simi­

larity coefficients between pairs of data of the grouping

problem.

Cluster Analysis

Cluster analysis has been used extensively in such dis­

ciplines as plant taxonomy in botany, information storage

and retrieval, medical sciences, behavioral sciences and

several others. In recent years cluster analysis study has

been increasingly used in engineering sciences for pattern

.recognition and artificial intelligence studies {2}. In

Page 65: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

48

Group Technology, cluster analysis has been utilized to form

groups of parts and machines of manufacturing systems by

some researchers {21,82}. By definition, cluster analysis

is the method of uncovering the fine underlining structure

of a given data set. A cluster is, therefore, a group of

this data set that are structurally similar or related.

Several types of clustering techniques have been discussed

in the literature {2,12,38,66,112}. There are four basic

classes of the clustering problem {112}; hieracial, non-hi-

erachial, statistical and non-statistical. The Hierachial

clustering method {38} has attracted the most attention, and

is often divided into agglomeritive and devisive methods.

In either case, clusters of the N problem data are formed

successively into finer partitions so that a tree-like

structure results. The Non-Hierachial clustering method

{2,66} is different from the the hierachial method in that

all levels of similarity are considered simultaneously and

group memberships altered to achieve a better partition

without a tree-like structure. In some clustering problems,

the values of the variables are not known and have to be

predicted through a known distribution of the system behav­

ior. This type of problem is therefore highly Stat istical

{112}. On the other hand, the data to be grouped may be

known a priori and the clustering problem is said t:o be

Page 66: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

49

Non-Statistical {112}. In the present study only the non-

statistical and non-hierachial type GT problems will be con­

sidered. . This is because the processing capabilities of the

robots to be grouped are known with certainty, and reports

in the literature tend to indicate that machine groups have

little or no tree-like structures {21,72,107}.

Similarity Coefficient

Similarity coefficients are used extensively in cluster

analysis to summarize the relationship between pairwise com­

bination of the entities of a given data set {21,27,108}.

Three types of similarity coefficients have been identified

in the literature; distance, correlation and association

{2,38,66,115,123}. The Distance type similarity coefficient

is used to measure the disperity between two points in a set

of data. In most cases this coefficient is defined as the

distance formula. In the Correlation Coefficlent type meas­

ure of similarity, correlation prediction equations are used

to establish the mutual relationship between pairs of data

to be grouped. The last type of similarity coefficient is

Assoc iat ion. It measures the level of similarity between

pairs of a given data set using binary codes. Similarity

coefficient by association has been defined in several ways.

However, the definition that seems to have gained the most

Page 67: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

50

acceptance is the ratio of the total "number of observed

matches to the total number of possible matches [21,112}.

Then,

Sij = — i — - 1 - 2.1

M(e^OB.)

where,

Sj j = The similarity coefficient between parts i and j

M = number of discrete variables in the data set

3i = Set of operations required on component i

3j = Set of operations required on component j

This was the definition suggested by Carrie [21} for the

component part grouping problem in Group Technology.

A similar definition was suggested earlier by McAuley

[82} for the machine grouping problem in Group Technology.

Similar definitions have also been used in several other

clustering problems. From the definition, it is readily

seen that Sj ^ will always have a value between 0 for maximum

dissimilarity, and 1 for maximum similarity. This is the

main difference between association type similarity

coefficient and distance type coefficient measures. Since

the later can take on any positive value, similarity

Page 68: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

51

coefficient by association is preferred to the distance

measure coefficient for GT problems. This is also justified

by the fact distance coefficients tend to favor dissimilar

pairs of data more than similar pairs, since the coefficient

gets larger the further apart (dissimilar) the pairs of data

are.

In summary then, Sj_- has the following relationships.

1. 0 <= S^j <= 1

2. Sj_-: = 1 implies maximum similarity

3. S -; = 0 implies minimum similarity

4. Sj_-; = S-jj_ implies symmetric properties

Instead of similarity coefficient, the dissimilarity

coefficient is sometimes used in some cluster analysis

problems {66,115}. Dissimilarity and similarity are comple­

mentary {123}. Thus if D^j. is the dissimilarity between two

parts i and j,

then,

Dij = 1 - Sij 2.2

and has the same properties as described for Sj_j above.

Dissimilarity coefficients are often used in studies of evo­

lution {115}.

Rajagopalan and Batra's {108} approach is different

from Carrie's or McAuley's in that they used a

Page 69: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

52

graph-theoretic method to design machine cells instead of

the 0-1 method. The authors defined similarity coefficient

as McAuley {82} and is expressed as:

X. . S = il 2.3

where,

Sj - = Similarity between machines i and j

X.. = Number of components using both machines i and j

X.. = Number of components using only machine i

X.. = Number of components using only machine j.

As in Carrie's definition of similarity, S-• in the' above

definition also lies between 0 and 1 for maximum dissimilar­

ity and similarity respectively.

Once the similarity between the different pairs of ma­

chines are calculated, machine groups are then formed. Mem­

bership to a group is possible if and only if their similar­

ity coefficients are greater than a threshold value T,

established by the analyst.

Bond Energy Method was developed by McCormick, et al.

{84} to represent similarity between pairs of data to be

grouped. The method is derived from the cell admissibility

principles and the authors theorize that this admissibility

creates a bond energy between the machine/part pairs. They

Page 70: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

53

defined the bond energy as the product of the values of the

adjourning element pairs.

Another grouping method, called the Rank Order Cluster­

ing Method (ROC) was developed by King {72} for the PFA

grouping problem. The basic principles of the method are to

read the machine component cell entries in binary word and mark them in order of descending binary value. The ranks of the cells are arranged and rearranged in order of descending rank for both the rows and the columns until an arrangement i+1 is the same as the arrangement i. At this point the arrangement is optimal {72}.

King reported that the ROC is advantageous to either

the single linkage or the bond energy clustering methods in

"its ability to deal with the problem of exceptional ele­

ments and bottleneck machines" {72}.

Conclusions

It is clear from the literaure on robot selection that

most researchers have channeled their efforts toward solving

the robot-man and robot-man-automation evaluation problems.

For those who addressed the problem of evaluating alterna­

tive robot models {15,93,138}, no interactive computerized

methodology was proposed. Although the Nof and Letchman

{93} RTM system is a very good model for robot selection, it

can be time consuming and expensive to a potential robot

user who does not already have the required facilities. The

Page 71: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

54

use of actual robot models for the repetition of "robot

evaluation for alternative robot models" {93, p. 38} pre­

cludes the use of this model in a practical sense.

The robot selection methodology as introduced in the

present study was designed to utilize the speed and memory

capacity of the computer to both minimize the search process

and the need to initially use physical robot systems. This

approach will not only save the engineer valuable time and

money but also reduce the need for using highly skilled en­

gineers for the purpose of choosing a robot. The system

narrows the search spectrum to a point where further inves­

tigation, if necessary, can be undertaken more successfully.

In reviewing the coding systems discussed in this

study, it was realized that most are design oriented, and

that very few address the production aspect of the grouping

entities. This oversight, whether by design or default,

makes these coding systems suspect as analytic tools that

they are supposed to be. In robotics for instance, such an

oversight will limit the use of the coding system to robot

users only. The robot manufacturer who probably needs the

coding system more is left with nothing to work with.

One of the reasons production attributes are not

included in some of these coding systems could be the fact

that production attributes are more varied than design

Page 72: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

55

attributes. For instance, while cubic components can either

be milled or planed to shape through different process

routes, the final shape of the component remains cubic, how­

ever.

Whether a coding system is design or production orient­

ed or both depends on what it is desired to accomplish. De­

sign oriented systems are better for design retrieval while

production oriented systems are better for manufacturing

process planning. Many researchers advocate combining the

two systems into a common coding scheme {1,97}. The MICLASS

and SAGT systems are of particular interest in this regard.

The robot coding system dicussed in the next chapter is

strictly design oriented as it is designed from the point of

view of the robot user rather than that of the manufacturer.

It does, however, contain more information than can be found

from mere examination of a robot's descriptive geometry.

Irrespective of the structure and attributes of a cod­

ing system, Hyde {60} recommends that it:

1. Be all embracing and be able to classify all existing

items and accept future items as the need arises.

2. Be mutually exclusive and use clearly defined

parameters.

3. Classify only the permanent and logical parameters of

the item to be coded.

Page 73: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

56

4. Be based on the point of view of the user and not the

code designer's.

These concepts were kept in mind while designing the robot

coding system (ROBOCODE).

Page 74: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

CHAPTER III

ROBOT CODING AND CLASSIFICATION (ROBOCODE) SYSTEM

Introduction

Robots have certain structural characteristics which an

engineer can use to advantage to enhance the selection, pro­

duction and planning problems of manufacturing. An indus­

trial robot is made up three major distinct parts. These

are the arm, the controller and the power units.

The mechanical unit of an industrial robot, often

called the arm, is the "robot" as the layman sees it. It

consists of several linkages that have kinematic properties

in several axes. These axes are called the degrees of free­

dom of the robot, and vary from two to as high as nine or

even more. Degrees of freedom will be discussed fully later

in this chapter. The shape of this mechanical unit is also

of interest and varies as the degrees of freedom.

The controller unit is the portion of the industrial

robot that determines its level of flexibility and adapt­

ability. The unit varies from a simple mechanical logic

sequencer (stops, limit switches, etc) to electronic type

sequencers (computers). There are therefore, two distinct

classes of controllers. One is the non-servo controlled

57

Page 75: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

58

unit, often called low technology controller unit, and the

other is the servo controller unit or the high technology

controller unit.

The power unit of the industrial robot can be electric,

hydraulic, pneumatic or any combinations of these depending

on the precision, speed and/or power to weight ratio de­

sired.

In this chapter these structural characteristics will

be defined, and used to design a coding and classification

system for robots. There are several species of robots cur­

rently available on the market with obviously different pro­

duction methods. Thus, to classify a robot completely re­

quires that the following technological areas be considered.

1. Basic shape of the robot.

2. Dimensions of the robot.

3. Types of control and power units.

4. Operational characteristics of the robot.

5. Materials used to manufacture the robot.

6. The number of each robot design to be manufactured

(lot size), and manufacturing lead times.

Point numbers 1, 2, 3, and 4 are design related while

the others are production related. For the purpose of this

study, only the design oriented aspects of robots will be

discussed. These design attributes can be further classi-

Page 76: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

59

fied as static or dynamic {120}. Static attributes (1, 2,

and 3) are those like the mechanical, power and control

units which do not vary over time. The dynamic criterion is

the robot's operational charateristics (4), and include its

speed, load carrying capacity, sensory feedbacks, and reli­

ability. The ROBOCODE is designed with these static and dy­

namic criteria using the data obtained from robot drawings

and manufacturers' specifications. Like most other coding

and classification systems, "it is, in essence, a transla­

tion of drawing and technical data into numerical form" {79,

p. 72}. The robot coding system'and the resulting computer-

aided robot selection procedure (CARSP) are intended as

tools and do not in any way attempt to displace the need for

prospective suppliers' experimental demonstrations. Al­

though the coding system presented here is more design than

production oriented, the system can be expanded to include

production aspects in robotics.

Several factors have led to the omission of this pro­

duction aspect from the code. Some of these are:

1. The manufacturing processes for robots are not as

well defined in the literature as are manufacturing

processes for standard workpieces.

2. The manufacturing processes for robots are not as

standardized as those for conventional workpieces.

Page 77: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

60

For instance, most components may have to be ordered

from different vendors.

3. As a result of 1 & 2, far more experience than can be

used to design a classical production oriented coding

system for workpieces is needed.

4. The present study is robot user oriented, and the ro­

bot manufacturer oriented (or production oriented)

aspects of the research will be completed in future

studies.

As was observed in the previous chapter, most coding

systems in the literature are restricted to component parts.

So far, no coding system has been developed for'robots, nor

for that matter is there a systematic interactive methodolo­

gy for robot selection. The final goals of the robot coding

system introduced in this chapter are:

1. To provide a coding system for robots.

2. Provide a database system for an interactive method­

ology for robot selection.

3. Minimize the time required for defining robot struc­

tural configurations.

4. Provide a reference manual for robot systems.

In a later chapter the coding system presented here will be

used to code available robots in the market in order to es­

tablish a database for the interactive software of the CARS?

Page 78: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

61

system. The advantages of the ROBOCODE system are multi­

fold. A few of these are:

1. It will facilitate the design of the proposed robot

selection methodology.

2. It will better enhance the storage and retrieval of

the information on robots.

3. It will minimize the amount of computer memory, and

is therefore efficient.

4. Groups of robots based on chosen characteristics can

be better formed by referencing their position in the

code structure.

The first digit of the ROBOCODE system is divided into

ten different categories according to class. Class is de­

fined as the degree of sophistication or technological level

of the robot. The code system is comprised of 40 digits and

for each string of code numbers related attributes are fur­

ther subgrouped to facilitate the storage and retrieval pro­

cess, as shown in Figure 11.

Each robot attribute in the coding system can have a

value between 0 and 9. These number levels are weights and

are assigned as discussed on pages 85 and 86, and based on

the researcher's subjective evaluation of the competing

variables.

Page 79: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

ROBOT CLASS

APPLICATIONS

PERFORMANCE

PHYSICAL

GENERAL

POWER RQMTS

ENVIRONMENT

1

12

22

32

37

13

23

33

38

14

24

34

39

15

25

35

40

7

16

26

36

8

17

27

18

28

10

19

29

11

20

30

21

31

Figure 11: Grouping of Digit Positions

62

"The choice of weights is not a matter of neat mechanical

devices; it is one of the principal means through which the

analyst can shape the analysis to his objectives" {2}. Some

researchers have questioned the validity of weighting

variables {38,123}; however, it is impossible for all the

Page 80: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

63

variables that can be involved in any problem to be

accounted for in solving the problem. For those variables

not represented in the problem, their weights, for all prac­

tical purposes are taken as zero compared with those that

are represented {38}.

1st Digit—Robot Class

It has been determined from robot literature that ro­

bots can be classified according to their control systems

{4,132,139} .

The task of the control system is primarily to provide a logical sequence for the operating pro­gram. It provides the theoretical position values required to each program step, continuously meas­ures the actual position during the movement, and processes the theoretical/actual difference, to­gether with other measured values (travelling speeds) and stored data (e.g. theoretical speeds, dwell times) into actuating variables for the drives {139, p. 17}.

Two control systems have been identified, servo and non-ser­

vo. The servo controlled robots have feedback capabilities

that make it possible to monitor their performance. Within

this servo robot species, further subdivisions into the type

of precision, motion and task complexities were made result­

ing in the classes of robots shown in Table 4.

This first code number governs the rest of the code for

a given robot, and is monocode structured. Digit combina-

Page 81: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

64

tions, for example 2 & 3, mean that a robot model is

available in both the servo continuous path and the servo

point-to-point.

TABLE 4

ROBOCODE - First position

ROBOT CLASS

0. Unspecified

1. Servo Precision

2. Servo Continuous Path

3. Servo Point-To-Point

4. Non-Servo Point-To-Point

5. 2 and 3 Available

6. 2 and 4 Available

7. 3 and 4 Available

8. RESERVED

9. OTHERS

Page 82: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

65

Servo - Precision

This group of robots are those that have unique per­

formance capabilities that can not be found in an ordinary

servo continuous type robots. In addition to having the ba­

sic internal sensors characteristic of all servo controlled

robots, they also have external sensors that enable them to

monitor their environment. Depending on the external input

received at any time, they can make decisions on the next

sequence of steps to execute. Typical sensory inputs in­

clude cameras for object tracking and identification, tac­

tile sensing for positioning, etc. They include electronic

component type assembly robots and those that are used in

laser inspection operations. Due to the degree of precision

and intelligence required in such tasks, these robots have

high repeatability, positioning accuracy values and more so­

phisticated sensory capabilities.

Servo - Continuous Path

Robots in this category are those that engage in high

level controlled smooth motions. They are mostly used for

manipulative purposes, and tools are attached to their

extremities for the purpose of accomplishing a task that

requires continuous type motion. Because of the continuous

nature of the motion, robots in this class generally have

Page 83: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

66

more memory capacity and more degrees of freedom than can be

found in point to point type motions. Tasks that can be

performed by robots in this class include most finishing

(for example, spray painting), and machining operations (for

example, deburring, routing, etc.), and arc welding.

Servo - Point To Point

This class of robots is the least sophisticated of the

servo control models. In general, they require less memory

and control abilities than the two previous classes. As the

class name, point to point, implies these robots are mostly

used for tool and material transfer purposes without regard

to the points in between the starting and ending positions.

Robots in this class include those used for machine loading

and unloading operations. Examples are those used to man

punch presses, die casting machines, and CNC machines. Be­

cause of the heavy materials they have to transport, servo

point to point robots usually have more payload capacity

than either the precision or the continuous path servo ro­

bots.

One unique characteristic of the servo controlled

robots, apart from the fact that they are servo controlled

is that they usually have more degrees of freedom than

non-servo controlled robots. But for the point to point

Page 84: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

67

class, they do in general have less load carrying capacity

than the non-servo models. However, load carrying capacity

is more a function of the drive system than it is of the

control system. As reported by Simons {121}, other features

peculiar to the servo controlled robot models are:

1. the various manipulator members can be com­manded to stop anywhere within their limits of travel;

2. the velocity, acceleration and deccelera-tion of the members in the various axes can be controlled;

3. accuracy of operation can be varied by con­trolling the magnitude of the relevant er­ror signals;

4. programming is achieved by human initiation of the signals to the servo valves as re­quired, and then recording the output of the feedback devices into the controller memory;

5. smooth motions and high operational flexi­bility are possible;

6. multi-program operation is facilitated;

7. microprocessor- or minicomputer-based con­trollers allow the robot to select between alternative actions within a program {120, p. 41}.

Page 85: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

68

Non-Servo Point To Point

This class of robots, often called limited sequence or

pick-and-place robots, have similar operational characteris­

tics as the servo point-to-point above except that they are

not servo controlled. Their memory devices are often me­

chanical in nature and are independently set for each axis

of the robot. They therefore involve the simplest of mo­

tions and controllers. Robots in this class are generally

low cost and have better repeatability than any other class

of robots. They are mostly used in tasks where motions be­

tween the starting and the ending points are not important.

This includes most material handling tasks such as palletiz­

ing, and materials transfer and transport. They usually do

not have any sensory capabilities and are typical of the

earlier model robots. Special care must be taken in plan­

ning the workplace for these types of robots as they can not

avoid obstacles which are not preprogrammed into their memo­

ry. The path of motion of the manipulator in space is some­

time erratic, otherwise it takes the shortest path between

two points. Simons {121} identified other features that

characterize this class of robots as follows:

1. the manipulator members move until end stops limit the travel, so there are usually only two positions for each axis to assume (in some cases there may be intermediate stops);

Page 86: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

69

2. the sequencer allows many motions in a program, but only to the axis end points;

3. decceleration, as the end points are ap­proached, may be provided by shock absor­bers;

4. programming is achieved by setting up the desired sequence of moves and by adjusting the axis end stops;

5. the manipulator is usually small, so high operational speeds can often be achieved, with repeatability to within 0.25mm;

6. these robots are relatively low-cost, easy to operate and maintain and are highly re­liable. At the same time they have lim­ited flexibility in terms of programming and positioning capabilities {120, p. 40}.

2nd Dig it--Applications

Robotic applications spectrum have become increasingly

large in the last five to ten years. Unlike the traditional

pick-and-place type tasks, robots can now do such complex

tasks as inspection, assembly, welding, painting and machin­

ing, just to name a few. Although certain types of opera­

tions are commonly performed by a given robot class, these

operations are seldom exclusive to any robot class. Rather,

in some cases ability of one robot to perform a given task

is more a function of memory capacity and type. Execution

of any task by a robot will usually follow one of two types

of motions: point-to-point or continuous path. A third

Page 87: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

70

classification may be the ability of a robot to execute the

above two types of motions simultaneously. Although contin­

uous path motions are exclusive to servo precision or con-

tinuous path robots, servo point-to-point robots can be made

to approximate a continuous path motion if the memory capac­

ity is relatively large. However, in view of the cumbrous

nature of such a venture, and the fact it is economically

unattractive, it is usually discouraged.

It is not practical to design a robot coding system in

which every task that can be performed by robots is repre­

sented exclusively by one level of the coding system. Even

if it were, the dynamic nature of robot technology precludes

the longevity of such a system since more application av­

enues could be developed. In view of this and for the pur­

pose of the present study, robot applications have been

grouped into nine categories as shown in Table 5. The user

is therefore encouraged to categorize his task according to

Table 5.

It is debatable whether or not application is a perma­

nent robot characteristic. As stated in Chapter 2, a coding

system should be mutually exclusive and based on permanent

characteristics. On one hand application is a permanent

charateristic because some robots are designed to do one

task and one task only. On the other hand it is not a per-

Page 88: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

71

TABLE 5

ROBOCODE - Second Position

APPLICATIONS

0. Unspecified or OTHER

1. Assembly/Inspection/Self Learning

2. Arc Welding

3. Finishing Operations (e.g. Painting)

4. Machining Operations (e.g. Drilling)

5. Spot Welding

6. Machine Tool Load/Unload (e.g. CNC)

7. Die Type Machine Load/Unload

8. Material Handling

9. Operations 1-8

manent characteristic as robots can be readily adapted to

perform different tasks. Therein lies the problem. For the

purpose of this study, application is treated as a permanent

robot attribute. There is no violation in the rule stated

earlier in that application does not need to be stated as a

selection criterion when choosing robots described in the

database of this literature. Rather, the pertinen

Page 89: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

72

variables needed to perform a task are declared and the

viable robots for the task chosen regardless of their code

values at code position 2. Some of the most common robot

applications are discussed subsequently.

Assembly

Assembly operations are high precision type tasks. Ro­

bots for this type of task usually have high repeatability

and positioning accuracy values, for accurate positioning,

fastening and mating of components and/or parts. Although

robots are currently engaged in some forms of assembly oper­

ations, such engagements are limited in scope, however, due

to the fact that such robots are usually quite expensive and

therefore seldom justifiable economically. In most cases

robot setups for assembly are in the form of pilot or exper­

imental studies. Where robot assembly operations are of any

measurable scope, they are usually of a pick-and-insert va­

riety. In such cases the succcess of the system is highly

dependent on the accuracy with which the parts are presented

to the robot. The parts feeders and orienters are usually

of high precision and places the parts as exactly as

possible in the same spot every time. More complex assembly

operations have necessitated the use of more complex sensing

devices like vision, tactile, and high level prograniming

Page 90: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

73

languages. Research efforts in these areas are quite

commendable. One of such efforts has lead to the Unimate

Programmable Universal Machine for Assembly (PUMA). The

PUMA robot series incorporates a high level programming lan­

guage called the VAL. Some of the uniqueness of this lan­

guage are {36} :

1. It operates in real time.

2. Has editing capabilities.

3. Has built in diagnostics.

4. Has speed scaling.

5. Has line tracking capability.

Assembly operations usually involve a high degree of

component variability. This means therefore that the robot

system must be flexible in its gripper changing capability.

Alternatively, a universal gripper that can accommodate the

assembly component variety could be used. The advantage of

this approach is that it saves the time that would otherwise

be used for gripper changing. The approach also saves money

that would have been used for the purchase of different

grippers and gripper accessories. A majority of the compo­

nents for assembly are usually within the 5 lb. weight

range. As reported by Engelberger {36}, about "90% of the

parts used in automobiles weigh less than 5 pounds" {p.

137} .

Page 91: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

Of the robots in the literature quoting some form of

assembly capability, about 80% of them are of the jointed

arm design, and about 90% have five degrees of freedom or

more. Most assembly layouts are of the line type, where the

assembled units pass through multiple workstations for the

components to be inserted and mated. The parts are fed to

the robots through vibratory bowl feeders and magazines ar-

^ranged around it. Since most robot assembly setups are not

'yet quite advanced, human operators are some times used some

where on the line to perform those tasks too complex for the

robot, or are otherwise not economically justifiable using a

robot. The General Motors PUMA assembly line is an example

of such a setup.

Arc Welding & Finishing Operations

Arc Welding and Spray Painting operations basically in­

volve the same types of motions, although arc welding in­

volves more forces and requires more tracking capability

from the robot. Currently, welding operations constitute a

majority of robot application areas, about 48% {117}. Arc

welding is a much more complex operation, however, and the

robot must guide the welding tool as precisely as possible

along the arc seam. The robot's tracking ability is

therefore very important in arc welding tasks. Some of the

Page 92: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

75

tracking devices used are in the form of sensors, software

and/or control systems. Welding operations are so involved

that no attempt will be made to present any sort of planning

procedure in this study. Most robots for arc welding jobs

have a minimum of 5 degrees of freedom.

Finishing operations include all aspects of spray

painting and application of adhesives, etc. Robots that are

specifically designed for these tasks are usually light

weight, slender and long. They usually have poor lifting

capacity since the tools they manipulate are part of the ro­

bot .

Spot Welding

Spot welding is a very strenuous operation involving

tremendous amount of forces. The majority of robots cur­

rently employed in welding operations are used for spot

welding as is especially true in the automotive industry.

Robots for spot welding operations are generally sturdy and

usually have hydraulic and/or pneumatic drive systems.

These types of drive systems are necessary for the type of

power to weight ratio and high gripping forces needed for

spot welding. Spot welding robots, therefore, have good

load carrying capacity and generally require larger work

envelop. The disadvantage of the hydraulic and pneumatic

Page 93: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

76

drive systems is that the rigid connecting cables exert ex­

tra forces on the robot.

3rd - 11th Digits--Performance Characteristics

The third and fourth positions of the robot coding sys­

tem are related to the robot's intelligence. "Intelligence"

when used for robots and other machines is usually preceded

by the adjective "artificial" or noun "machine," to differ­

entiate it from human intelligence. By definition, artifi­

cial intelligence is the branch of computer science whose

primary concern is the programming of computers to carry out

tasks that would require intelligence if carried out by man.

The factors that are associated with robot intelligence

are numerous, and which of these factors to address is a

matter of need. Therefore establishing the need for a given

intelligence system is the prerequisite for applying it eco­

nomically and successfully. Researchers in artificial in­

telligence (AI) have not reached a concensus on what consti­

tutes a good intelligent robot. Where the vision advocate

will argue in favor of vision, the tactile sensor advocate

will argue in favor of his pet project too. The net result

of this is that several AI options are available, but at

costs very few organizations can afford. Some robots there-

Page 94: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

77

fore end up being too "intelligent" to be affordable to the

average user. Some researchers argue that potential robot

users are actually turned off by intelligent robots. Where

some users look on robots with awe, others think they con­

stitute some kind of threat to them. Yet others believe

that at such high prices, robots with intelligence are the

prerogatives of the multibillion dollar industries. "Unfor­

tunately, this approach has put off many potential users.

Amid the harsh realities of an unsophisticated plant, many

industrial engineers cannot imagine how they can use these

'high technology, gleaming, computer-controlled robots,' let

alone robots with vision" {101, p. 34}. A study by Harmon

{51} seems to confirm Ottinger's views. Harmon reported

that "management is reluctant to purchase more exotic ma­

chines" in that some of the relatively simple ones are yet

to be fully utilized {51, p. 4}.

3rd Digit--Type of Sensors

The importance of AI in robots cannot be overempha­

sized. However, the scope of such a technology is highly

debatable. For example, robot teaching methodologies are

forms of AI, and so also are its controller systems.

Without AI a servo controlled robot may not be able to get

feedback information about its environment. The technology

Page 95: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

78

is available to manufacture a fairly high level intelligent

robot, but most of these robots are not yet economically

justifiable. Table 6 is the list of the types of sensors as

used in this study.

TABLE 6

ROBOCODE - Third Position

SENSORS

0. Unspecified

1. Visual Sensors

2. Tactile Sensors

3. Force/Torque Sensors

4. Range/Proximity Sensors

5. 1 & 2

6. 1 & 3

7. 1 Sc 4

8. 1, 2, 3 & 4

9. Others

Page 96: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

79

Visual Sensors

The robot "sees" the features of a particular component

through the lens of a TV camera, and recognizes it as good

or bad. Good if it matches the component in its memory, and

bad otherwise. Vision is one of man's most valued sense,

and will play an important role in freeing the robot from

its dependence upon supporting equipment {68, p. 27}. Vi­

sion is also used for tool changing purposes where varying

part geometry require different gripper design. Recognition

of a given part geometry may require the robot to use a par­

ticular gripper design. For example, if a robot senses a

flat object like glass the tool changing mechanism could be

triggered to exchange the present gripper for a vacuum grip­

per, or a mechanical gripper if small blocks for assembly

were sensed.

Tactile Sensors

"Tactile sensing refers to skin-like properties with

which areas of force-sensitive surfaces are capable of re­

porting graded signals and parallel patterns of touching"

{51, p. 3}. They include microswitches and strain gauges.

Page 97: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

80

Proximity Detection

Proximity detection is the ability of a robot to sense

the nearness of objects along its path of motion. This

ability can be aided by vision, sound or heat. This ability

is used to advantage in programming the robot operating

speeds. The robot is allowed to travel at as high a rate of

speed as possible between the starting position and a few

inches to the point where a task is to be performed. It

then slows down once the part to be worked on is detected

within a given tolerance limit.

Contact Sensors

Lack of contact sensing capability is usually a menace

in some robots, especially if no other form of sensing is

available. Contact sensing enables the robot to "feel" the

presence or abscence of any type of object even if the ob­

ject were encountered before a destination point was

reached. Contact sensors are sometimes used in tandem with

visual or proximity sensing to enhance the robot sensing ca-

pabi1ity.

Force/Torque Sensors

Different objects have different properties and tex­

tures that will necessitate special handling procedures.

Page 98: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

81

Force and torque sensing are used in robots to achieve this.

For example, the robot can be programmed to use a force of 1

oz. to pick up an egg and 50 lbs. to pick up a finished met­

al part. Force sensing is also necessary so the robot can

detect when it has lost its grip of an object regardless of

the texture (hard or limp) of the object. As shown in Table

6 a robot may incorporate more than one type of sensor, for

example, a force/torque sensor may be combined with a vision

sensor. The former may be used to detect that a part has

been lost from grip and the later used to search for it.

4th Digit—Diagnostics Capability

Sensing and diagnostics capabilities are very closely

related and in some cases, a very clear distinction may not

exist. In this study, diagnostics capability (Table 7) is

defined as the ability of a robot with sensing capability to

go beyond the basic "Yes" or "No" decision making process.

The question that can be asked of diagnostics in robots is

"what level of diagnostics is acceptable?" Robot diagnos­

tics are usually logical program statements of the type:

IF <something happens> THEN <do this or that>, or

ON ERROR <do something else>.

Page 99: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

82

Where "something happens," "do this or that," and "do

something else" are logical expressions. Of course, this is

under the premise that the robot can recognize these expres-

sions. It could be sight or touch or loss of such senses.

To minimize the time the robot spends trying to correct (di­

agnose) the situation, such routines or loops should be kept

as short as possible. Even though computer speeds are fast,

letting the robot go into an infinite loop, or until it cor­

rects the situation can be both counterproductive and ex­

pensive. A discrete number of such self diagnostics should

be provided and other provisions made whereby the robot can

signal the operator if self-correction is unsuccessful. For

example, the robot drops a tool and starts searching for

it. This requires that the robot have some type of visual

and tactile sensors. These add to the cost of the robot.

It is much cheaper and faster for the robot to just realize

that the part is lost (tactile or force/torque sensing) and

go get another one, instead of searching the whole workarea

for it. However, if it loses two or three in a row or as

may be determined by the work place designer, it should sig­

nal the operator for help or adjustment.

The keyword on robot intelligence is need. Use it if

it is absolutely necessary, and keep it as simple as possi­

ble. Robot intelligence is usually found but not limited

Page 100: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

83

TABLE 7

ROBOCODE - Fourth Position

DIAGNOSTICS

to the so called high technology robots. The addition

of "intelligent" equipment (e.g., camera) on robots means

that it has to rely on more component parts to operate.

This poses reliability and maintainability problems.

5th Digit--Repeatability

The repeatability of a robot is a measure of how well

the robot can reach a given position after a prolonged peri­

od of operation. Some people often use positioning accuracy

interchangeably with repeatability. This should not be the

case since there is a distinct difference between the two.

Repeatability is expressed in thousandths of the unit of

measurement, usually the inch or millimeter. Being a

tolerance limit, it is expressed with both a negative and

Page 101: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

84

positive sign. For example a repeatability of ±.002" means

that during the next cycle the robot can reach to a point at

least .002" either side of the reference point. If this

reference point were 12" in space, then 11.998" is the lower

limit, 12" the mean and 12.002" the upper limit.

Clearly the more zeros there are immediately after the

decimal point in a repeatability value, the more desirable

the value. In reviewing the repeatability of seventy (70)

robots, it was found that more than 50% of them have a re­

peatability of ±.01" or better. Figure 12. It is therefore

important that 50% of the codes for this robot attribute be

allocated to these groups of robots (Table 8).

The criteria used for the assignment of digits within

each robot attribute describing ranges of values are given

below.

1. Natural Breaks: Natural breaks in the groups of ro­

bots that fall within a range in the attribute under

consideration are used to partition the attributes

into its different levels. These robots are regarded

as belonging to the same family and are therefore as­

signed a family code number.

2. Cluster Strength: If the number of clusters in (1)

is more than 9, two or more clusters are assigned the

same code level value if they are not too far apart

Page 102: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

85

0.001 0.002 0.003 O.OOU 0.005 0.003 O.OiO 0,020 0.030 O.OWO 0.050

REfEflTflaiLJTT IN INDIES

CALL 7ALUSS AJiX BKD POINTS) (j.c ^00r, .oor'OiX='002 ETC.)

(.060 IS rOR K^.04O)

Figure 12: Distribution of Robot Repeatability

Page 103: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

TABLE 8

ROBOCODE - Fifth Position

REPEATABILITY

86

4-

1 0.

1 1.

1 2.

1 3.

1 4.

1 5.

1 6.

1 7.

1 8.

1 9.

INCHES

Unspec

R < =

.001

.002

.004

.007

.010

.015

.025

R .>

.

<

<

<

<

<

<

<

.(

if ied

001

R < =

R < =

R < =

R < =

R < =

R < =

R < =

330

.002

.004

.007

.010

.015

.025

.030

0.

1.

2.

3.

4.

5.

6.

7.

8.

9.

MILLIMETERS

Unspec

R <

.025

.050

.102

.178

.255

.380

.635

R

=

<

<

<

<

<

<

<

>

: ified

.025

R

R

R

R

R

R

R

< =

< =

< =

< =

< =

< =

< =

.760

.050

.102

.178

.255

.380

.635

.760

• \

in the range and fall within i3 standard deviation of

the lowest or highest values in the range. This cri­

terion is maintained so long as the number of robots

within this range is not particularly large.

Page 104: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

87

3. Attribute Value Frequency: If the number of robots

having a particular attribute value is relatively

high, a code number is reserved for this group of ro­

bots, and the group is excluded from criterion 2.

This is in order to avoid the possibility of having

too many robots sharing one digit value while a digit

value is vacant or shared by one or two robots.

6th Digit--Positioning Accuracy

Positioning accuracy is measured very much like repeat­

ability. It is therefore expressed as a range. This may be

the reason it is often confused with repeatability. The

difference between the two lies in the fact that positioning

accuracy may not be obtainable in some robots, while repeat­

ability is always measurable in all robots. Accuracy is the

degree to which a robot can locate to a specific target

point. This measurement is meaningful only in those robots

where positioning information is determined from calculated

values. These robots are computer controlled and therefore

have calculative capabilities. Figure 13 shows that about

60% of the robots surveyed have a positioning accuracy of

± .01 or better. The breakdown of codes for positioning

accuracy as used in this study is shown in Table 9.

Page 105: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

88

18 -

i« -:

••* -

>2 -

10

8 -

8 -

"4 -

2 -

^ %

V

0 0 1

0 a 2

0 0 3

0 0 4

0 0 5

0 0 6

0 0 7

0 0 s

0 0 9

0 2 0

0 3 0

0 11 0

0 s 0

/ ;

WXUMCT IH JNChES

'XU. rXLVSS XRX SNV FOmTS) 'i.e. B.OOI, .0Ot<A<=.002 XTC.)

(.069 IS ron 2>.040)

Figure 13: Distribution of PA

7th Digit--Load Range

The load capacity of a robot is the maximum load it can

carry at a normal operating speed including the weight of

the gripper. This range varies from as low as 1 lb. or less

for some instructional or high precision assembly robot

Page 106: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

89

models to as high as 2000 lbs. or more for some gantry type

robots. Load or payload capacity is a very important meas­

ure of performance for those robots that are used solely for

material handling operations. This is particularly true of

non-servo and servo point to point robot models. In small

TABLE 9

ROBOCODE - Sixth Position

POSITIONING ACCURACY

INCHES MILLIMETERS

0. Unspecified

1. PA <= .001

2. .001 < PA <= .002

3. .002 < PA <= .004

4. .004 < PA <= .007

5. .007 < PA <= .010

6. .010 < PA <= .015

7. .015 < PA <= .025

8. .025 < PA <= .030

9. PA > .030

0. Unspecified

1. PA <= .025

2. .025 < PA <= .050

3. .050 < PA <= .102

4. .102 < PA <= .178

5. .178 < PA <= .255

6. .255 < PA <= .380

7. .380 < PA <= .635

8. .635 < PA <= .760

9. PA > .760

Page 107: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

90

parts assembly type robots, payload values are not usually

critical. The same is also true of robots used for most

types of finishing operations. The distribution of payload

for the robots surveyed and the breakdown of the codes for

this robot attribute are shown in Figure 14 and Table 10 re­

spectively.

PERCLMT

22 A

20 -

18 -

16 -

m -

12 -

10 -

8 -

5 -

H -

2 -

/ .

10 20 30 140 SO 60

PflTLOPO IN POUNOS

70 80

(ALL 71LUIS ARI SND POINTS) (E.G. L<r10. 10<J.<:=2Q XTC.)

(101 IS ran lyioo)

90

F i g u r e 14: D i s t r i b u t i o n of Pay load

101

Page 108: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

TABLE 10

ROBOCODE - Seventh Digit

PAYLOAD

91

0.

1.

2.

3.

4.

5.

6.

7.

8.

9.

POUNDS

Unt

PL

10

20

35

60

100

200

300

speci f

<

<

<

<

<

<

<

<

PL > =

10

PL

PL

PL

PL

PL

PL

PL

900

ied

< =

< =

< =

< =

< =

< =

< =

20

35

60

100

200

300

900

0.

1.

2.

3.

4.

5.

6.

7.

8.

9.

KILOGRAMS

Unspeci f

PL

5

9

15

27

45

90

136

PL

<:

<

<

<

<

<

<

<

>

= 5

PL

PL

PL

PL

PL

PL

PL

40£

'ied

<= 9

<= 15

<= 27

<= 45

<= 90

<= 136

<= 408

!

8th & 9th Digits--Velocities

Velocities are very difficult robot performance

parameters to measure because most manufacturers list them

without category. It is therefore difficult to ascertain

w hether it is the velocity the manipulator can attain

Page 109: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

92

without any tooling attachments or that it can attain at

maximum load. For those robots that are custom made to per­

form only such tasks as inspection, painting, welding and

assembly of small components, the specified velocity can be

taken as that for both minimum and maximum load. This is

because the tool forms part of the robot. For all others,

however, this will not be true and the user is encouraged to

talk to the robot manufacturer if this value is important in

making a final decision.

In robots with two or more degrees of freedom (except

for rectangular type robots which do not have angular mo­

tions) motions are usually linear and angular. While the

linear velocities are measured in inches or millimeters per

second (in/s or m/s), angular velocities are measured in de­

grees or radians per second (d/s or r/s). Where different

values are given for the arm sweep, wrist bend, yaw and/or

swivel, the arm sweep value has priority over the others.

Otherwise, the mean of the given values is taken as repre­

sentative of the angular velocity if the arm sweep value is

unavailable. The reasons for this are:

1. The wrijst motions are so short that they will not

affect the decision in any way. The important point

here, however, should be whether or not the robot can

make the required moves rather than the speed at

which such moves can be made.

Page 110: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

93

2. The arm sweep motion is more meaningful since it

covers a much larger travel space.

ROBOCODE values for linear and angular velocities are shown

respectively in Tables 11 and 12.

TABLE 11

ROBOCODE - Eighth Position

LINEAR VELOCITY

INCHES/SECOND MILLIMETERS/SECOND

0. Unspecified

1. LS <= 5

2. 5 < LS <= 10

3. 10 < LS <= 20

4. 20 < LS <= 30

5. 30 < LS <= 40

6. 40 < LS <= 50

7. 50 < LS <= 60

8. 60 < LS <= 70

9. LS > 70

0. Unspecified

1. LS <= 127

2. 127 < LS <= 254

3. 254 < LS <= 508

4. 508 < LS <= 762

5. 762 < LS <= 1016

6. 1016 < LS <= 1270

7. 1270 < LS <= 1524

8. 1524 < LS <= 1778

9. LS > 1778

Page 111: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

94

TABLE 12

ROBOCODE - Ninth Position

ANGULAR VELOCITIES

DEGREES/SECOND

0. Unspecified or Undefined

1. AS <= 30

2. 30 < AS <= 50

3. 50 < AS <= 80

4. 80 < AS <= 110

5. 110 < AS <= 140

6. 140 < AS <= 170

7. 170 < AS <= 200

8. 200 < AS <= 300

9. AS > 300

10th Sc 11th Digits — Reliability

Reliability is defined in most statistic books as the

probability that an equipment will perform its intended

function without failure for a specified period of time. In

robots this value is usually high. Some robot users report

Page 112: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

95

a reliability of 90% to 99% with 97% being the mode

{36,117}.

As can be expected, reliability experience is dependent

on the type of operation. In terms of numbers, manufactur­

ers and users of robots alike have found that its mean time

between failure (MTBF) or uptime, and its mean time to re­

pair (MTTR) or down time when breakdown occurs, are better

indicators of the robots reliability. The MTBF figure var­

ies from as low as 200 hrs to more than lOOOhrs (Table 13).

While a high MTBF is desirable, high MTTR's are not accepta­

ble. Therefore, a robot with a high MTBF .may not be attrac­

tive if it has an equally high MTTR. As a rule of thumb,

the more complex a robot becomes, the less reliable it tends

to get {132, p. 9}. This follows from classical reliability

theory where the reliability R of the whole system is a com­

bination of the reliabilities of each component.

In order to assure that high and acceptable MTBF values

are achieved, robot manufacturers will have to take extra

measures to ensure that every component going into the robot

final assembly meets a specified reliability level.

Self diagnostics in robots will help minimize the MTTR.

So would having an in-house maintenance crew who can be used

for most minor repairs without having to wait for the robot

manufacturer's crew to arrive. Probably the one aspect of

Page 113: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

TABLE 13

ROBOCODE - Tenth Position

MEAN TIME BETWEEN FAILURE

96

0.

1.

2.

3.

4.

5.

6.

7.

8.

9.

(IN HOURS)

Unspecified

MTBF

200 <

300 <

400 <

500 <

600 <

700 <

800 <

MTBF :

<= 200

MTBF <=

MTBF <=

MTBF <=

MTBF <=

MTBF <=

MTBF <=

MTBF <=

> 1000

300

400

500

600

700

800

1000

0.

1.

2.

3.

4.

5.

6.

7.

8.

9.

(PERCENT)

Unspeci fied

MTBF

60

65

70

75

80

85

90

<

<

<

<

<

<

<

MTBF

<= 6C

MTBF

MTBF

MTBF

MTBF

MTBF

MTBF

MTBF

> 95

)

< =

< =

< =

< =

< =

< =

< =

65

70

75

80

85

90

95

robotics that can play a very important role in robot MTTR

and MTBF is design. Two robots with identical components

will not necessarily have identical MTTR function. For

example, if one had replaceable and easily accessible

components compared to the other, its MTTR would be shorter

Page 114: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

97

than that of the other, even though their MTBF may be

identical. This is because the faulty components can be re­

placed with a new one in a fraction of the time it would

take to repair it. The faulty component can then be taken

to the comfort of the facilities of the maintenance shop

where it can be repaired at an opportune time.

To improve on the robots MTBF, many robot users have

adapted some form of preventive maintenance policies. The

robot is serviced on weekends or holidays or any presche-

duled time before any major breakdown occurs. An MTTR of 2%

or 3% of the MTBF is a fairly reasonable value to shoot for.

For a robot with an MTBF of 400 hours this value will be

about 8 hours. This way the robot can be brought back into

production within a work day of its failure. Robot users

having a long line of robots have found that backup systems

improve on both the MTBF and MTTR, as the maintenance work­

ers are much less pressured to bring up the equipment as

fast as possible. Using an MTBF of 400 hours as average,

MTTR values are calculated as a percentage varying from 1 to

12% (Table 14). This range is within that reported by most

researchers {36,117}.

Page 115: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

TABLE 14

ROBOCODE - Eleventh Position

MEAN TIME TO REPAIR

98

1

1 0.

1 1.

1 2.

1 3.

1 4.

1 5.

1 6.

1 7.

1 8.

1 9.

(IN HOURS)

Unsp<

MTTR

8 -

12

16

20

24

28

36

5cified

<= 8

< MTTR <=

<

<

<

<

<

<

MTTR

MTTR <=

MTTR <=

MTTR <=

MTTR <=

MTTR <=

MTTR <=

> 40

12

16

20

24

28

36

40

0.

1.

2.

3.

4.

5.

6.

7.

8.

9.

(PERCENT)

Unsp(

MTTR

Bcified

<= 5

5 < MTTR <= 10

10

15

20

25

30

35

<

<

<

<

<

<

MTTR

MTTR <= 15

MTTR <= 20

MTTR <= 2 5

MTTR <= 30

MTTR <= 3 5

MTTR <= 40

> 40

+

12th - 21st Digits—Physical Attributes

Digit positions 12 through 21 describe the robot's

physical characteristics. Of particular interest in this

group is the robot's work envelop. A majority of robots

are stationary, either floor, ceiling or wall mounted and

Page 116: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

99

machines, conveyors and other equipment are arranged around

them. The components to be worked on therefore have to pass

by the robot. The extent to which this is possible will de­

pend a great deal on the robot's reaching ability in all di­

rections. If this capability is limited, then the amount of

machines and/or equipment that can be interfaced with the

robot will be too few and small to offer any meaningful ad-

vantange in using a robot. An average robot is able to com­

pete effectively because of its ability to service multiple

machines simultaneously.

12th Digit—Coordinate System

Traditionally robots have been known to conform to one

of four basic geometric configurations: Rectangular, Cylin­

drical, Spherical and Jointed-Arm. As demand for more flex­

ible systems has grown, some other robot coordinate systems

have emerged. While some of these are usually combinations

of two or more of the basic coordinate systems (Table 15),

others are so completely different that no precise defini­

tion exists for them. What the code for this feature will

try to accomplish is to classify the well known configura­

tions while making provisions for future developments in

this area.

Page 117: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

100

TABLE 15

ROBOCODE - Twelfth Position

COORDINATE SYSTEM

0. Unspecified

1. Rectangular

2. Cylindrical

3. Spherical

4. Jointed-Arm

5. 1 and 2

6. 2 and 4

7. 3 and 4

8. Other Combinations Above

9. OTHERS

The simplest of these coordinate systems is the rectan­

gular or cartesian coordinate where all motions in each of

the three coordinate axis are translational. This configu­

ration also allows for ease of control of the robot move­

ments. It is limited in use, however, in that a fairly

large floor area is needed to attain a level of flexibility

near to that obtained by using other coordinate systems,

Page 118: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

101

Figure 15. The other three coordinate systems incorporate

angular movements in one or more axes excluding those at the

wrist. Figure 15. The two major advantages of these designs

over the all translational model are in the ease of design­

ing such mechanically simpler devices, and the fact that

they can generate a larger work envelop while utilizing a

minimum amount of floor space. Because of the multiple

joints in the jointed-arm design, for example, they are usu-

ally more difficult to control. It can be seen from Figure

16 that about 45% of all robots surveyed are of the jointed-

arm configuration. Another robot coordinate system that is

gaining in popularity is the jointed-arm-spherical coordi­

nate combination. Some robots of this design have an arm

over-head swing of up to 300 degrees. The robot therefore

has two work areas, one on both the front and the back. The

Unimate PUMA series and the Bendix AA-160 are examples of

such robots.

13th Digit—Number of Axis

The number of axes in a robot usually indicates its de­

gree of flexibility. This number varies from as low as two

for the simplest manipulator system to as high as nine or

more for the very complex models. Figure 17 (page 105)

clearly shows that 5 degrees of freedom is the most popular.

Page 119: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

102

Although the number of axes can be as high as 9, this is not

standard, and are usually offered to the potential robot

user as an option (Table 16 page 106).

1) RECTANGULAR COORDINATE

" Z (.ELEVATION)

Y(REACH)

X(BASE TRAVEL)

2) CYLINDRICAL COORDINATE

Z(ELEVATION)

R(REACH)

9(BASE ROTATION)

• ^

Figure 15: Robot Coordinate Systems

Page 120: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

103

3) SPIILRICAL COORDINATE

A(ELEVATION)

R(REACH) "

8(BASE ROTATION)

4) JOINTHD-AllM COORDINATE

^(ELEVATION)

9(RASE ROTATION)

Figure 15: Continued

Page 121: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

104

P«C£NT

US -

no i

30 -:

25 -i

20 ^

15 -

10 -

S -

C J R

TTPE Of CaBRDJWTE STSTEh

A' mCTlNGXfUJL C: CYLINBRICLL S: SPSSRICIL. J: JOINTJD-ARM

y

Figure 16: Distribution of Robot Coordinate Systems

Page 122: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

105

Robot reaching abilities are called the robot's degrees

of freedom or axes of movement. Figure 18 (page 107) shows

these movements in a model robot. Some robots may have more

or less freedom of movement. The first three of these mo­

tions describe the arm and body movements and will be de­

scribed subsequently.

PtRCENT

qo -

35 -,

30 -

25 -.

20 -i

IS -

10 -

S -

>>

^

14 5

NUH8W Of PXES

<*.

x<v<

(5 IS FOR UJS<~S) (7 IS FOR AJisye)

Figure 17: Distribution of Number .of Axis

Page 123: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

106

TABLE 16

ROBOCODE - Thirteenth Position

NUMBER OF AXIS

0. OTHER

1. Unspecified

2. 2 AXES

3. 3 AXES

4.

5.

6.

7.

8.

9.

4

5

6

7

8

9

AXES

AXES

AXES

AXES

AXES

AXES

14th Digit—Horizontal Reach

Horizontal reach (Figure 19 page 108), for floor or

ceiling mounted robots, is measured from the vertical line

dividing the robot ' into a front and back portions (frontal

plane) to the maximum horizontal point that can be reached

by the robot's wrist. For wall mounted robots, horizontal

reach as defined here will be the absolute vertical reach of

Page 124: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

107

the robot when floor mounted, for task description purposes.

Since robot manufacturers do not usually include end effec­

tors as standard items, it is important that the user in de­

fining or designing work envelops add enough allowance to

accommodate for the end effectors of interest. Figure 20,

(page 110) shows that about 50% of all robots surveyed have

a horizontal reach of 50" or better, and Table 17 (page 111)

shows a breakdown of the robot codes for this attribute.

ELBOW EXTENSION

SHOUL06« SWIVEL

F i g u r e 18 : Robot Movements

Page 125: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

108

1) R1:CTAN(]ULAR COORDINATE

dJ

tl 11

-2J

I M • !

Lj-i ! ' ; 1 1 ' !

\\R >

2) SPHERICAL COORDINATE

K - HR

o«*^

R - >

Figure 19: Robot Horizontal Reach

Page 126: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

109

3) JOINTED-ARM COORDINATE

T ii=^^==:^Sja nL

HR ^

Figure 19: Continued

Page 127: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

110

30 HO 50 50 70

HORIZONTAL REPCH IN INCh£S

(ALL VALUES ARE END POINTS) (E.a.MB^10, 10<BR<p20 ETC.)

(101 IS FOR HRyiOO)

Figure 20: Distribution of Robot Horizontal Reach

Page 128: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

TABLE 17

ROBOCODE - Fourteenth Position

HORIZONTAL REACH

11

INCHES MILIMETERS

0. Unspecified

1. HR <= 10

2. 10 < HR <= 20

3. 20 < HR <= 40

4. 40 < HR <= 50

5. 50 < HR <= 60

6. 60 < HR <= 80

7. 80 < HR <= 100

8. 100 < HR <= 150

9. HR > 150

0. Unspecified

1. HR <= 254

2. 254 < HR <= 508

3. 508 < HR <= 1016

4. 1016 < HR <= 1270

5. 1270 < HR <= 1524

6. 1524 < HR <= 2032

7. 2032 < HR <= 2540

8. 2540 < HR <= 3810

9. HR > 3810

15th Digit--Vertical Reach

For floor 6r ceiling mounted robots, the vertical reach

of the robot is the maximum vertical height, measured from

the base of the robot, that the arm can attain when fullv

extended. For a wall mounted robot, vertical reach is no

Page 129: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

112

well defined since it is primarily a function of how high

the robot is mounted above the floor. However, the value of

the horizontal reach of the robot when mounted on the floor

could be used as the absolute vertical reach of the robot

when wall mounted. Figure 21 shows this value for some ro­

bot models. Figure 22 shows that about 50% of all robots

have a vertical reach of 50" or better, and Table 18 (page

115) shows the breakdown of this robot attribute.

1) RECTANGULAR COORDINATE

I 1 . ^ K i ^

— ' 1 — 1 ••

• 1 •"

1 1

-r'-i

' ' 1 1 I I I

i i 1 1

' 1 LIE

1 1

1

±

Figure 21: Robot Vertical Reach

Page 130: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

113

2) SPHERICAL COORDINATE

3) JOINTED-ARM COORDINATE

Figure 21: Continued

Page 131: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

1 1 4

20 30 140 SO 60 70 50

VttTlCa. REPd IN INOCS

90 100 101

(ALL VALUSS ARE 3ND POINTS) (I,G»7n<^10, 10<y7t<^20 ETC.)

(tot IS FOR vn}ioo)

Figure 22: Distribution of Robot Vertical Reach

Page 132: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

TABLE 18

ROBOCODE - Fifteenth Position

VERTICAL REACH

115

INCHES MILLIMETERS

0. Unspecified

1. VR <= 10

2. 10 < VR <= 30

3. 30 < VR <= 40

4. 40 < VR <= 60

5. 60 < VR <= 80

6. 80 < VR <= 90

7. 90 < VR <= 100

8. 100 < VR <= 150

9. VR > 150

0. Unspecified

1. VR <= 254

2. 254 < VR <= 762

3. 762 < VR <= 1016

4. 1016 < VR <= 1524

5. 1524 < VR <= 2032

6. 2032 < VR <= 2286

7. 2286 < VR <= 2540

8. 2540 < VR <= 3810

9. VR > 3810

16th Digit—Arm Sweep

Arm sweep measures the rotation of the cylindrical,

spherical or jointed-arm robot about ins base, or the

traversal of the rectangular robot about the x-axis. In the

former case this value is given in degrees, and in the later

Page 133: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

116

case, in inches or millimeters. The values may be given as

a range, for example ± 120 degrees. For the purpose of this

study, these values will be given to cover the total angle

or distance that can be covered by the robot arm. In this

context then, 240 degrees and 40 inches will mean the same

as ±120 degrees and ±20 inches respectively. The reason for

this convention is because some robot arm sweeps are noi

symmetrical about the neutral or resting position. Figure

23 shows some robot arm sweeps, and Table 19 shows :he

breakdown of the codes for this robot attribute.

1) RECTANGULAR COORDINATE

nra

, . 1 T""

1

T__l„....^_J — - 4 - — - - - - - -

— - --

A

CO <

7

Figure 23: Robot Arm Sweeps

Page 134: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

<

» — t

Q Qi O O U

< I

Q W

o

to

AS T3 0) D C

•H 4-1

O

u

w <

Q

O O CJ

< U

UJ X D-

rs j

m CM

(D

•H fa

Page 135: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

118

TABLE 19

ROBOCODE - Sixteenth Position

ARM SWEEP

ANGULAR i LINEAR

DEGREES 1 INCHES 1 MILLIMETERS

0. Unspecified 1 0. Unspecified 10. Unspecified

1. AS <= 100 11. X <= 30 11. X <= 762

2. 100 < AS <= 1401 2. 30 < X <= 50 |2. 762 < X <= 1270

3. 140 < AS <= 1901 3. 50 < X <= 60 13. 1270 < X <= 1524

4. 190 < AS <= 2001 4. 60 < X <= 80 |4. 1524 < X <= 2032

5. 200 < AS <= 2501 5. 80 < X <= 90 15. 2032 < X <= 2286

6. 250 < AS <= 2701 6. 90 < X <= 10016. 2286 < X <= 2540

7. 270 < AS <= 3001 7. 100 < X <= 12017. 1540 < X <= 3048

8. 300 < AS <= 3601 8. 120 < X <= 18018. 3048 < X <= 4572

9. AS > 360 1 9. X > 180 19. X > 4572

Page 136: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

119

17th - 19th Digits--Wrist Movements

The other three standard motions of a robot are within

its wrist. These movements are usually expressed in degrees

and are depicted in Figure 24. Some robots may exhibit more

or less than three wrist movements depending on the design.

The major robot wrist motions: the pitch, yaw and swivel,

are discussed next, and their code values are shown in Table

20.

1. Wrist Bend (Pitch) is the up and down movement of the

wrist about the axis of the arm.

2. Wrist Swivel (Roll) is the rotation of the wrist

about a plane perpendicular to the end of the arm.

3. Wrist Yaw is the rotational movement of the wrist

about a horizontal plane.

As can be expected, there is less freedom of movement at the

bend than either the swivel or the yaw, due to impedance

from the robot arm.

20th Digit--Robot Weight

Robot weights vary from a few pounds for some table top

educational models (for example, the Microbot Minimover

weighs about 8 lbs.) to well over 2 tons for some indus-

trial models (e.g., the Cincinnati Milacron T 566 weighs

about 5,000 lbs.).

Page 137: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

120

Wrist bend

~G Radial Traverse

PITCH

ROLL Wrist yaw

Wnst swivel

Figure 24: Movements at the Wrist

Page 138: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

121

TABLE 20

ROBOCODE - Seventeenth To Nineteenth Positions

WRIST MOVEMENTS (IN DEGREES)

SEVENTEENTH

POSITION BEND

EIGHTEENTH

POSITION SWIVEL

NINETEENTH

POSITION YAW

0. Unspecified/ Unattainable

1. B <= 100

2. 100 < B <= 150

3. 150 < B <= 180

4. 180 < B <= 200

5. 200 < B <= 210

6. 210 < B <= 240

7. 240 < B <= 250

8. 250 < B <= 350

9. B > 700

0. Unspecified/ Unattainable

1. S <= 100

2. 100 < S <= 200

3. 200 < S <= 250

4. 250 < S <= 270

5. 270 < S <= 300

6. 300 < S <= 350

7. 350 < S <= 400

8. 400 < S <= 700

9. S > 700

0. Unspecified/ Unattainable

1. Y <= 100

2. 100 < Y <= 200

3. 200 < Y <= 250

4. 250 < Y <= 270

5. 270 < Y <= 300

6. 300 < Y <= 350

7. 350 < Y <= 400

8. 400 < Y <= 700

9. Y > 7000

Although some manufacturers have tried to list both the ma­

nipulator weight, and the weight of the control unit and the

power unit, some do not. It is therefore difficult to

Page 139: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

TABLE 21

ROBOCODE - Twentieth Position

ROBOT WEIGHT

122

POUNDS KILOGRAMS

0. Unspecified

1.

2.

4.

9.

W <= 50

50 < W <= 200

3. 200 < W <= 400

400 < W <= 600

5. 600 < W <= 1000

6. 1000 < W <= 2000

7. 2000 < W <= 4000

8. 4000 < W <= 10000

W > 10000

0. Unspecified

1. W <= 23

2. 23 < W <= 91

3. 91 < W <= 181

4. 181 < W <= 272

5. 272 < W <= 454

6. 454 < W <= 907

7. 907 < W <= 1814

8. 1814 < W <= 4536

9. W > 4536

differentiate between those weights when only one value is

quoted (Table 21). Therefore, in order to keep this robot

coding scheme as tractable as possible, only one figure will

be used to code robot weights. Where figures are available

for both the robot and the peripheral units (power and

Page 140: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

123

control units if different from the robot main design) the

weight is taken as their arithmetic sum. The user is there­

fore encouraged to find out from the manufacturer whether or

not the figure quoted includes the peripheral units.

21st Digit--Floor Space Requirements

Robots vary in size and weight according to the type of

task they are designed to perform. Generally, the heavier

robot models tend to require more space area than the light­

er models. Even within robots of the same weight class,

variations do exist in space area requirements. Two of the

major factors that determine this requirement are: drive

train and design. There are four major types of robot drive

trains as discussed on page 131. Hydraulic drive trains

tend to be more bulky than, for example, pneumatic drive

trains. Electrical drive trains are the least bulky.

In some robots the controller system and the power unit

are housed within the robot, while in others these may be

designed as three, or two different entities (one unit plus

a combination of the other two). It is not clear in the

literature which of these three conventions was used in

describing some robots. Therefore, the code levels for

space requirements was designed as the total sum of the

space requirement for the robot 1) mechanical unit, 2)

Page 141: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

TABLE 2 2

ROBOCODE - Twenty First Position

ROBOT SPACE REQUIREMENTS

124

0.

1.

2.

3.

4.

5.

6.

7.

8.

9.

SQ. FEET

Unspecif

SR

5

10

20

30

40

50

60

SR

<

<

<

<

<

<

<

>

< =

SR

SR

SR

SR

SR

SR

SR

70

5

< =

< =

< =

< =

< =

< =

< =

ied

10

20

30

40

50

60

70

0.

1.

2.

3.

4.

5.

6.

7.

8.

. 9.

SQ. METERS

Unspeci f ied

SR < =

18.3

36.6

73.2

109.7

146.3

182.8

219.5

SR

<

<

<

<

<

<

<

>

18.3

SR < =

SR < =

SR < =

SR < =

SR < =

SR < =

SR < =

256.0

36.6

73.2

109.7

146.3

182.8

219.5

256.0

control unit, and 3) power unit (Table here.). If this

robot attribute (floor space requirement) is critical in the

selection process, it is suggested that the user verify with

the robot manufacturer, what is covered in the data supplied

in his literature for this attribute.

Page 142: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

125

22nd - 31st Digits--General Characteristics

22nd Digit--Memory Type

There are four basic types of robot memory: mechanical,

semi conductor, electrical and air logic (table 23). The

mechanical type includes disc cams and punched tapes. These

are typical of the early robot models. In later model robot

designs, mechanical type memories are giving way to semi

conductor or core type memory devices. One disadvantage of

semi conductor or mechanical type memory is that its content

is usually lost in case of a power loss. Robots with these

types of design, therefore, have provisions for bridging

power losses through the use of external batteries. If the

memory content is required for a very long period of time,

an external storage device in the form of magnetic tapes is

provided, and used to save the program. When needed the

program is simply played back into the memory.

In the servo precision and continuous type robots,

where more memory capacity (discussed in the next section)

is needed to accommodate the sequence of points that make up

the continuous motion, more sophisticated memory devices are

used, for example, electronic type memories. These include

such microprocessor type devices as RAM, ROM and EPROM,

magnetic tape cassettes and floppy discs. Other memory

Page 143: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

126

TABLE 2 3

ROBOCODE - Twenty Second Position

MEMORY TYPE

0. Unspecified

1. Mechanical

2. Semi Conductor

3. Air Logic

4. Electrical Patch Boards

5. Electronic (Tapes)

6. Microprocessor(RAM,ROM)

7. 4 and 5

8. 5 and 6

9. Other

devices include electrical memories such as patch boards.

Some times memory devices are used in tandem. For instance

a magnetic disc may be used in conjunction with an electri­

cal type memory.

Page 144: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

127

23rd Digit--Memory Capacity

Memory capacity 'can be used as a measure of the com­

plexity of the type of motion the robot can undergo, and/or

the amount of information the robot's computer is capable of

storing. The higher this value, the more complex the motion

and the more the number of information. Like the numerical

control machine, robot motions are usually a series of point

to point movements. However, these movements can be taken

at infinitesimal increments to approximate continuous

curves.

Memory capacity may be expressed in one of four ways

depending on the type of memory used in the robot and the

type of motion it can generate (Table 24).

1. The number of program steps are used mostly to ex­

press the memory capacity of a point to point type

robot, or a continuous type robot that strictly uses

point to point motion to approximate a continuous

path motion.

2. The kilobytes of RAM available for programming the

robot are used mostly for microprocessor type memo­

ries. These types of memories come in 4, 8, 16 or

more bit microprocessors. The majority of these

processors are expandable and can be exclusively used

for robot programming, or can be used as a central

Page 145: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

TABLE 24

ROBOCODE - Twenty Third Position

MEMORY CAPACITY

128

#

0.

1.

2.

3.

4.

5.

6.

7.

8.

9.

Program St

Unspecifi

MC < =

250

300

450

600

800

1000

2000

MC

<

<

<

<

<

<

<

>

25C

MC

MC

MC

MC

MC

MC

MC

eps

ed

< =

< =

< =

< =

< =

< =

< =

2500

300

450

600

800

1000

2000

2500

0.

1.

2.

3.

4.

5.

6.

7.

8.

9.

# Kilobytes

Unspeci f ied

MC <= 5

5 < MC <= 16

16 <

32 <

48 <

64 <

80 <

128 <

MC >

MC <= 32

MC <= 48

MC <= 64

MC <= 8 0

MC <= 128

MC <= 256

256

Page 146: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

Table 24: Continued

MEMORY CAPACITY

129

#

0.

1.

2.

3.

4.

5.

6.

7.

8.

9.

Main ]

Unsp<

MC

5

10

20

50

100

200

500

MC

<:

<

<

<

<

<

<

<

>

Programs

reified

= 5

MC < =

MC < =

MC < =

MC < =

MC < =

MC < =

MC < =

1000

10

20

50

100

200

500

1000

0.

1.

2.

3.

4.

5.

6.

7.

8.

9.

«

Max Program Cycle (SECONDS)

Unspeci f i

MC < =

200 <

300 <

500 <

600 <

800 <

1000 <

3000 <

MC >

20C

MC

MC

MC

MC

MC

MC

MC

.ed

)

< =

< =

< =

< =

< =

< =

< =

6000

300

500

600

800

1000

3000

6000

processing unit for other programming functions in

the manufacturing shop.

3 The number of main and subprograms that can be stored

and accessed simultanoeusly by the robot is also used

for describing memory capacity. This measure is not

straight forward, however, and can be deceiving at

times. For example, a 2000 line main program and a

Page 147: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

130

500 line subprogram will require more storage space

than a 1000 line main program and a 100 line subpro­

gram if in both cases the programs were run simulta-

nously. But by this definition the programs have the

same capacity of 2. Since the length of a program

is not really a true measure of memory usage (the

program logic can be quite complex in one and not the

other) this approach is suspect for memory capacity

def inition.

4. The maximum program cycle time is another measure of

memory capacity. This is a more meaningful measure

than the number of main programs. This is because if

the program logic of one set of programs is more com­

plex than that of another, then even if they both

have the same number of lines, the more complex pro­

gram will take longer time to execute.

The digit for this robot attribute has been subdivided to

include these variations, Table 24.

24th Digit--Number of I/O Channels

The number of input and output channels in a robot is

the number of direct addressable logic lines in and out of

the robot. For example, if a robot had eight input chan­

nels, and eight output channels, it means that the robot can

Page 148: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

131

receive eight simultaneous signals from the outside world,

and give out the same number of signals to the outside

world. The number of input and ouput signals are exclusive

of the computer controlled robots, where the number actually

represents the word length of the robot computer. This

number can be as low as four and as high as desired. In

practice, however, the maximum is 16. Although thirty two

bit computers exist, such word length systems were found to

be uncommon for robots at the time of this writing. Table

25 shows a breakdown of the number of input and output chan­

nels as used in the current literature.

25th Digit—Drive Train

Three basic types of robot drive trains have been iden­

tified in the literature: hydraulic, pneumatic and electri­

cal (Table 26). These are basically mechanisms used to con­

vert one form of energy to another. The end result is

motion and power in the robot's mechanical arm that can be

used to perform some useful work.

Hydraulic Drives have higher power to weight ratio than

either the pneumatic or electric drives, and are mostly used

in robots where large gripping and lifting forces are

desirable. Especially as is required for the transportion

of large and heavy loads. Hydraulic drives are also gen-

Page 149: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

132

erally faster, less precise and can be servo or non-servo

controlled.

Pneumatic Drives make up a majority of robot drive sys­

tems. This could be due to their low cost and handling ease

nature. For example, compared to hydraulic drives, there

are limited number of heavy hoses and oil spills to contend

TABLE 2 5

ROBOCODE - Twenty Fourth Position

NUMBER OF I/O CHANNELS

0. Unspecified

1. I/O <= 4

2. 4 < I/O <= 8

3. 8 < I/O <= 16

4. 16 < I/O <= 22

5. 22 < I/O <= 32

6. 32 < I/O <= 48

7. 48 < I/O <= 64

8. 64 < I/O <= 128

9. I/O > 128

Page 150: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

133

TABLE 26

ROBOCODE - Twenty Fifth Position

DRIVE TRAIN

0. Unspecified

1. Electrical Drive Motors

2. Hydraulic Drives

3. Pneumatic Drives

4. 1 & 2

5. 1 & 3

6. 2 & 3

7. 2, .3 Sc 5

8. RESERVED

9. RESERVED

with. They can also generate considerable degree of grip­

ping force, although not as high as the hydraulic system.

Electrical Drives are mainly in the form of electric

stepper motors and direct current servo motors. Robots

driven electrically are generally slower than, and not as

strong as those driven by a hydraulic or pneumatic system.

They are, however, more precise and require less amount of

Page 151: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

134

floor space. Electric power is quite expensive, but cleaner

than either of the above power systems.

26th Digit—Program Method

There are three basic methods of addressing the memory

of a robot. This could be by manual method, leadthrough or

walkthrough methods (Table 27). Whichever programming meth­

od (teaching method) that is used will depend in large meas­

ure on the type of memory device used in the robot.

Manual programming methods are mostly used for pro­

gramming robots with mechanical, pneumatic and electrical

type memories. The teaching entails setting of switches,

arranging wires, connecting air logic tubings, and so on.

Generally, robots with this type of programming method have

a limited number of degrees of freedom, usually in the order

of from 2 to 4. Their memory capacity is also limited be­

cause of the time and amount of connecting wires and tubes

needed to program the desired number of steps.

Leadthrough methods are used in more sophisticated ro­

bots with electronic (magnetic tapes and discs) and micro­

processor type memories. Using a control console or push

button, the programmer leads the robot through the sequence

of motions required to go from one point to another. Using

the "record" button at each point, the programjner addresses

Page 152: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

135

the robot's memory to record these movements for the robot

to repeat on command at a later time. Leadthrough can also

be used to define continuous path motions by defining sever­

al intermediate points between the two end points.

TABLE 27

ROBOCODE - Twenty Sixth Position

PROGRAMMING METHOD

0. Unspecified

1. Manual Method

2. Leadthrough Method

3. Walkthrough Method

4. Teaching Pendant

5. CRT/Keyboard

6. Remote

7. 2, 3, 4, 5, 6 or 7

8. RESERVED

9. RESERVED

Page 153: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

136

Walkthrough programming method is very much the same as

leadthrough only in as much as they both apply to robots

with the same type of memory devices. Their main difference

is that the walkthrough method defines mostly continuous

path motions. The robot is physically guided through the

sequence of motions it is desired to undergo. This type of

teach method is used to program robots for such tasks as

spray painting and arc welding.

27th Digit--Effectors

End effectors are anything that can be attached to the

end of a robot arm for the performance of a specific task.

They are therefore tools, and can be classified according to

the type of task they are designed to perform (Table 28).

For materials handling and manipulative purposes, they are

called grippers, and are usually mechanical in nature. In

order to minimize the problem of changing mechanical grip­

pers frequently when handling parts of different shapes and

sizes, attraction type grippers are some times used. This

may be in the form of electromagnets for ferrous materials

or vacuum cups for non-ferrous or delicate materials, for

example, flat glasses. On occassion end effectors are

specifically designed for one form of manufacturing

operation or another. For some special purpose robots, that

Page 154: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

137

TABLE 28

ROBOCODE - Twenty Seventh Position

EFFECTORS

0. Unspecified/OTHER

1. Mechanical

2. Magnetic

3. Vacuum

4. Welding Gun (ARC) Spray Gun

5. Welding Gun (SPOT)

6. Pneumatic: Nut runners.

Drills, Wrenches

7. Routers, Sanders, Grinders

8. Tool Changing

9. Universal Gripper

is those that are adapted to performing only one function,

the end effector may be permanently fixed on the robot arm.

For example, a high volume arc welding robot may have its

arc welding gun permanently fastened to its wrist. In most

manufacturing operations, multiple operations may be

performed on the same part with different tools. For an

Page 155: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

138

industrial robot to be able to adapt to this situation, it

is usually equipped with tool changing capabilities. The

tool changing operation is programmed into the operating cy­

cle of the robot. In some highly "intelligent" robots,

tool wear or breakage detection is possible and the robot

can, on input from the tool, change the tool as well, or

signal the operator.

28th Digit--Multiple Grippers

The use of multiple grippers in one robotic arm is be­

coming common practice in robotic designs. The advantage of

this capability is obvious - more tasks can be executed in

the same space of time. This is particularly useful in ro­

botic assembly operations. For example, one gripper could

be used to hold a screw, and the other the screw driver. In

so doing, two operations are performed in one step, thereby

saving time, actual travel distance and storage space for

additional grippers. The number of grippers in a robot var­

ies from the standard one arm concept to two or even higher

in some cases. The number is a function of the type and

complexity of the task to be performed by the robot.

It is important to define "multiple grippers" as used

in this study. The robot in Figure 25 can be classified as

having double (multiple) grippers even though the two

Page 156: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

139

grippers are attached to the same arm. Obviously, the robot

in Figure 26 can also be classified as having double (multi­

ple) grippers. This robot, however, is not classified as

having eight grippers even though it can pick up the eight

bottles at the same time. In this study, therefore, a robot

is said to have multiple grippers if any gripper can be in­

dependently manipulated without disturbing the grip force in

the other grippers. Therefore, in Figure 26 even though

four bottles can be picked up at the same time in one arm,

the task is done with a single command of the robot arm.

The advantage of this design is noted and can not be overem­

phasized. However, it does not meet the gripper criterion

as defined in this study, to be classified as having more

than two grippers. The breakdown of codes for number of

grippers as used in this study are shown in Table 29.

29th Digit—Safety Features

One of the major factors that led to the development of

industrial robots is safety engineering. This is evident by

the successful application of robots in the foundry indus­

try. One might say that safety innovated robotics is aided

by the economics in applying it, because in recent years the

main point of emphasis for robotic applications is econom-

Page 157: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

140

Figure 25: Independently Controlled Multiple Grippers [36}

Page 158: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

141

V3

0)

a • r-l

a

o

C o u

c/J

o a; c

a o • — « I — (

C/3 v-w

0)

• .-(

Page 159: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

142

TABLE 29

ROBOCODE - Twenty Eight Position

NUMBER OF GRIPPERS

0. Unspecified

1. One Gripper Only

2. Up to 2 Grippers Possible

3. Up to 3 Grippers Possible

4. Up to 4 Grippers Possible

5. Up to 5 Grippers Possible

6. 6 or more Grippers Possible

ics. This may be in the form of improved product quality,

increased productivity, reduction in direct labor costs or

even safety-- savings in insurance and safety equipment for

employees. The major types of safety features used in ro­

bots, and their codes are shown in Table 30. Safety is a

very important and interesting point to be addressed in ro­

botics in that robots can be taught to anticipate "unfore­

seen" circumstances within its work envelop. In spite of

recent advancements and proliferation in the use of robots,

there has been little or no established Occupational Safety

Page 160: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

143

and Health Administration (OSHA) guidelines for their use.

Although robots are not specifically mentioned, there are,

however, some OSHA guidelines that could be applied to ro­

bots and their working environment. These guidelines are

the jobs, machines, and working condition codes listed under

subparts G, I, 0 and P of the Act. Specifically, these are:

TABLE 30

ROBOCODE - Twenty Ninth Position

SAFETY FEATURES

0. Unspecified

1. Emmergency Stops

2. Hydraulic Brakes

3. Limit Switches

4. Light Curtains

5. 1, 2 , Sc 3

6. 3, 4 Sc 6

7. RESERVED

8. RESERVED

9. RESERVED

Page 161: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

144

1. Occupational Health and Environmental controls,

2. Personal Protective Equipments,

3. Machinery and Machine Guarding, and

4. Hand and Portable Tools and other Hand-Held Equip­

ments.

Robot users should realize that robots are highly visi­

ble equipment that are also controversial, and should take

all necessary precautions when using them. The areas of op­

eration for the robot should be clearly marked and guarded

at all times. The employees and people who might come in

contact with the robot must be properly educated on how to

use it, and extra effort made to defuse the mystique and in­

hibitions they may have about robots. Adherence to these

safety practices will make the built-in safety functions of

the robot even more efficient. Some of these functions are

shown in Table 30.

30th Digit--Mounting Position

While some robots can adapt to most mounting positions,

some are limited to only one or two. The major mounting po­

sitions are floor, ceiling or side walls (Table 31).

Ceiling mounted robots may be stationary or mobile in the

form of gantry trollies. The advantage of ceiling mounting

is that it keeps the floor free so that more room is

Page 162: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

145

provided for other equipment and material interfacing. As a

gantry, the robot has more working envelop than floor or

wall mounted robots.

TABLE 31

ROBOCODE - Thirtieth Position

MOUNTING POSITIONS

0. Unspecified

1. Floor (Fixed)

2. Floor (Chain/Belt Driven)

3. Wall

4. Ceiling (Fixed)

5. Ceiling (Gantry)

6. 1 Sc 4

7. 2 Sc 3

8. 1, 3 Sc 4

9. OTHER

Page 163: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

146

31st Digit--Price Range

Robots vary in costs from a little under $2,000 to well

over $650,000. The cost depends to a great extent on the

types of tasks the robot can be adapted to perform, the per­

formance characteristics and the number of peripherals need­

ed to perform these tasks, etc. ROBOCODE values for robot

costs are shown in Table 32.

32nd - 36th Digits—Power Requirements

32nd Digit—Energy Consumption

In evaluating alternative robot models, engineers had

focused their attention mainly on cost. However, these

costs had been mostly those due to capital investments, and

little or no attention had been paid to costs due to energy.

In these times of high energy costs, engineers can no longer

afford to ignore energy consumption costs.

Most robot manufacturers do not include this pariticu-

lar attribute in their specification sheets. Most do, how­

ever, furnish the information on request. The user who

finds this robot attribute important may want to consult the

particular robot manufacturer for more information.

ROBOCODE values for energy consumption are shown in Table

33.

Page 164: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

147

TABLE 3 2

ROBOCODE - Thirty First Position

PRICE RANGE

IN (000) DOLLARS

0. Unspec i f ied

1. P <= 5

2. 5 < P <20

3. 20 < P <= 30

4. 30 < P <= 50

5. 50 < P <= 60

6. 60 < P <= 80

7. 80 < P <= 100

8. 100 < P <= 200

9. P > 200

Page 165: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

TABLE 3 3

ROBOCODE - Thirty Second Position

ENERGY CONSUMPTION

148

KvA (KW) KW HRS

0. Unspecified

1. P <= 1

2. 1 < P <= 2

3. 2 < P <= 2.5

4. 2.5 < P <= 3

5. 3 < P <= 4

6. 4 < P <= 5

7. 5 < P <= 10

8. 10 < P <= 20

9. P > 20

0. Unspecified

1. P <= 2000

2. 2000 < P <= 4000

3. 4000 < P <= 5000

4. 5000 < P <= 6000

5. 6000 < P <= 8000

6. 8000 < P <= 10000

7. 10000 < P <= 20000

8. 20000 < P <= 40000

9. P > 40000

1 Based on 8 hrs/day, 250 days/year, 100% duty cycle.

Page 166: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

149

33rd - 36th Digits—Electric Power

Requirements

Electric power requirements for industrial robots are

usually described with four variables: voltage, current,

phase and frequency. The voltage of the power is the elec­

tromotive force measured in volts that drives the electric

current measured in amperes that is needed to run the robot.

For alternating current, it is sometime necessary to know

how often the current is changing its direction and at what

phase it is operating. The frequency is usually measured in

cycles per second or the Hertz. In the US, the standard

voltage is 110 volts alternating current (110 VAC) at 50 cy­

cles per second and phase 1. Most robots operate at a much

higher voltage but are usually available in several voltage,

frequency and phase models. Alternatively, the input volt­

age can be stepped up or down to meet a particular robots

requirement. The various electric power requirements and

their codes are shown in Tables 34 to 37.

Page 167: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

^ n

TABLE 3 4

ROBOCODE - Thirty Third Position

OPERATING VOLTAGE

0. 1 Unspecified 1

1. 1 1 VDC <= 12 1 1 VOLTS 1 1

1 DC 1 1 2.1 1 VDC > 12 1

3. 1 1 VAC <= 110 1

4 . 1 V 1 110 < VAC <= 120 1

5 . 1 0 1 120 < VAC <= 230 1

1 A 1 1 6. 1 L 1 230 < VAC <= 380 1

1 C 1 1

7. 1 T 1 380 < VAC <= 460 1

8. 1 S 1 460 < VAC <= 500 1

9. 1 1 VAC > 500 1

Page 168: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

151

TABLE 35

ROBOCODE - Thirty Fourth Position

VOLTAGE PHASE

0. Unspecified

1. 1

2. 2

3. 3

4. OTHER

TABLE 3 6

ROBOCODE - Thirty Fifth Position

VOLTAGE FREQUENCY

0. Unspecified

1. 50 Hertz

2. 60 Hertz

3. OTHER

Page 169: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

152

TABLE 37

ROBOCODE - Thirty Sixth Position

CURRENT REQUIREMENTS

(AMPERES)

0. Unspecified

1. A <= 5

2. 5 < A <= 10

3. 10 < A <= 15

4. 15 < A <= 20

5. 20 < A <= 25

6. 25< A <= 30

7. 30 < A <= 40

8. 40 < A <= 50

9. A > 50

Page 170: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

153

37th - 40th Digits--Operating Environmental Conditions

Robot operating environment is that of the traditional

blue-collar worker. Earlier robotic applications, being"

concentrated in the die cast or foundry industry required

that robots be tough enough to withstand the harsh environ­

ment of heat, dust, molten metals, etc. As robotic applica­

tions varied over the years, this special requirement of

toughness was relaxed and included only as an option. Some

of these features are the robot's ability to withstand very

low temperatures as required of robots used in cold room

type operation and the ability to withstand high tempera­

tures as required of robots for foundry type operations.

Tables 38 to 41 show the codes for the robot operating envi­

ronments used in this literature.

Humidity is a measure of the amount of moisture in the

atmosphere. A robot that was designed without consideration

to this factor may not fair very well in a relatively humid

environment as the circuits may tend to short out. Knowing

that these limitations exist in some robots will help the

potential robot user guard against unnecessary expenses. In

a paint shop, for example, a robot that relies heavily on

its sense of vision to perform the task will be at a

complete disadvantage, because in time the lens of the

Page 171: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

154

camera will tend to smear from spray paint deposits. When

this happens, the robot user usually ends up bearing the

cost for either loss of productivity or maintenance.

TABLE 38

ROBOCODE - Thirty Seventh Position

RECOMMENDED OPERATING MIN TEMPERATURES

DEGREES FEREINHEIT

0. Unspecified

1. MT<=32

2. 32<MT<=40

3. 40<MT<=50

4. 50<MT<=60

5. MT>60

DEGREES CENTIGRADE

0.

1.

2.

3.

4.

5.

Unspecif ied

MT< = 0

0<MT<=5

5<MT<=10

10<MT<=15

MT > 15

OSHA regulations on air contaminants, nuclear radiation

and other forms of adverse emvironments are very explicit,

and have meant added overhead costs for manufacturers.- To

alleviate this problem many manufacturers have turned to

robots. If a wrong robot is chosen in this type of

Page 172: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

155

situation, the user may end up spending as much or more

money as he would using conventional procedures. All ro­

bots are not created equal, and the user should research

their variations before selecting any specific robot. Most

robot manufacturers can custom fit a robot to do most types

of tasks in just about any type of environment. Nothing is

free, however, and the question is 'why spend that extra

money on custom fitting if there is a robot some where that

can do the same task at no additional cost.'

TABLE 39

ROBOCODE - Thirty Eight- Position

RECOMMENDED MAX OPERATING TEMPERATURES

DEGREES FARENHEIT

0. unspecified

1. MXT<=100

2. 100<MXT<=120

3. 120<MXT<=140

4. 140<MXT<=160

5. MXT > 140

DEGREES CENTIGRADE

0.

1.

2.

3.

4.

5.

Unspeci f ied

MXT<=40

40<MXT<=50

50<MXT<=60

60<MXT<=70

MXT > 60

Page 173: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

156

TABLE 40

ROBOCODE - Thirty Ninth Position

HUMIDITY

0.

1.

2.

3.

4.

5.

6.

7.

Unspeci

0 -

0 -

5 -

5 -

8 -

8 -

0 -

90

100

90

95

80

90

80

8. RESERVED

9. RESERVED

Conclusions

The main objective of this chapter was to provide a

more efficient method for managing the vast amount of infor­

mation in the field of robotics. This has been done through

the application of a coding and classification concept.

The forty attributes used to describe robots in this

study are representative of most of the robots surveyed.

They are as compact and exhaustive as can be with little or

Page 174: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

157

no redundancy. By representing these 40 attributes in a

code form, a more elegant and fast database management sys­

tem will be developed to further help the potential robot

user better retrieve these robot information.

TABLE 41

ROBOCODE - Fortieth Position

TOLERABLE ADVERSE ENVIRONMENTS

0. Unspecified

1. Dirty Environment

2. Chips

3. Air Contaminants

4. Water or Coolant

5. Greasy Environment

6. Vibration

7. Electromagnetic Radiation

8. Nuclear Radiation

9. OTHER

Page 175: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

158

Coding the Robots

Having defined the robot attributes in a code form, the

major robots that are currently available in the market were

coded and stored in the computer-aided robot selection pro­

cedure (CARSP) database. So far about two hundred of such

robots exist {64,104,122,135}. The CARSP system was de­

signed to accommodate the dynamic nature of robot technolo­

gy, so that more robots can be added to the system's data­

base as they become available. The respective CARSP system

segments used for this and other purposes are discussed in

Chapter 4. A user manual explaining the CARSP system archi­

tecture and operating instructions is documented in Appendix

B.

Page 176: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

CHAPTER IV

DESCRIPTION OF TASKS FOR THE CARSP SYSTEM

Introduction

In Chapter 3 the Robot Coding and Classification System

was developed for use in the coding of descriptive parame­

ters for robots and their operating environments. In the

present chapter, the same system will be used to code tasks

or jobs the robots are required to perform. This is neces­

sary in order to ensure consistency in the matching of these

tasks to the appropriate robots. ' For example, a task envi­

ronment in which the maximum distance between two adjacent

points is 24" would have the same code value as a robot with

a reach of 24." Therefore if under this attribute (reach)

the robot is given a code number of 1, then the task envi­

ronment would be given the same code number.

It is clear that some robot variables may not have a

direct descriptive relationship with some task variables.

For example, robot weights can not be compared directly to

the weight of an object to be lifted. However, it can be

compared directly to the structural, limitations of the

building, which in this case is the corresponding

environmental constraint associated with the task. Another

159

Page 177: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

160

example is the robot programming method. As far as exe­

cution of the task is concerned, this variable has no place

in the robot selection problem. Even in terms of the envi­

ronment, there is no known factor that this variable can be

directly equated to. However, when one studies the overall

shop performance and the administrative structure of the

manufacturing concern, one can easily equate it to the abil­

ity of the maintenance or programming personnel. If the

programming method involves the setting of mechanical

switches and relays, for example, then far more experience

would be required of the setup personnel than would be the

case if the programming method were by a teach-in. This

task attribute would, therefore, be coded based on the

user's estimate of the level of experience of the program­

ming personnel.

Quite obviously, too, the parameters used to select a

robot for one task may not be valid for another task. As an

example, while a robot for material handling tasks may be

selected on the basis of its load lifting capacity, one for

painting will not--its ability to generate the required

moves would be the primary selection criterion. This is the

basis for the design of the robot coding system in which

nine of the ten code levels of digit 2 represent groups of

operations. This concept not only eliminates the diffi-

Page 178: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

161

culty in representing each task with a code level, if it

were possible to represent all present and future robot

tasks, but also gives the system a wider scope of use. The

user therefore has to determine in which of the nine catego­

ries his task belongs and code the task accordingly.

Coding the Robots

One of the main objectives of this study was to offer

the robot user a fast and efficient robot selection algor­

ithm in an interactive mode. In pursuing this goal, it was

important that the user be given control, as much as possi­

ble, over the data that go into the system. Two segments of

the CARSP system: SELECT and SORTER are used exclusively for

this purpose, while another segment, DATABASE is used for

all of the housekeeping functions. These subroutines are

discussed subsequently.

Subroutine DATABASE

The primary function of the DATABASE subroutine is to

aid the user in the management of the vast amount of infor­

mation that is used to describe robots. One source lists

150 pieces of information describing a robot {104}. For a

database with 200 robots, a total of about 30,000 pieces of

information will have to be searched in order to select the

Page 179: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

162

target robot. Although only 40 attributes were used to

describe the robots in the CARSP system database, a consid­

erable amount of information is still being manipulated.

The DATABASE routine has built-in screen editing functions

that make this data manipulation more manageable. These

editing functions are described in the CARSP system manual

(Appendix B).

The measure of effectiveness of any interactive system

is in its ability to provide the intended service as clearly

as possible to the end user. This ability is often referred

to as the systems "user friendliness" or "flexibility." In

designing the DATABASE subroutine extra care was taken to

make this goal tenable. DATABASE has five major subsystems

as follows:

1. ADD,

2. UPDATE,

3. DELETE,

4. LIST, and

5. SUMMARIZE.

These five subsystems will now be described. A more elabo­

rate description of these and other subroutines of the CARSP

system are given in Appendix B, and the reader is encouraged

to refer to this appendix as often as possible.

Page 180: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

163

The ADD Subsystem

The ADD subsystem, as the name implies, is used for the

addition of new robots to the database. This capability is

of utmost importance in robotics in view of the dynamic na­

ture of the technology. New products are constantly intro­

duced to the market, and the user can readily include them

in this database within a fraction of the time it would take

him to read the product literature. The ADD subsystem is

therefore fast and simple, and incorporates a help routine

that automatically displays the valid codes for any robot

attribute in the database. Although the robot attributes

are represented in a code form-, the ADD subsystem can dis­

play them in user understandable form. Sprague and Carlson

{125} identified five capabilities required of a database

system as follows:

1. The ability to combine a variety of data sources through a data capture and extrac­tion process.

2. The ability to add and delete data sources quickly and easily.

3. The ability to portray logical data struc­tures in user terms so that the user understands what is available and can specify needed additions and deletions.

4. The ability to handle personal and unofficial data so that the user can experiment with alternatives based on personal judgment.

Page 181: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

164

5. The ability to manage this wide variety of data with a full range of data management functions {p. 32}.

These functions were designed into the CARSP system archi­

tecture as diligently as possible, to enhance the robot se­

lection process. Figures 27A to 27C show the typical steps

that would be taken when adding robots to the database using

the ADD subsystem.

The figures and explanations given here assume that the

DATABASE program has been loaded. From the DATABASE menu of

Figure 27A, the user enters A for ADDition, resulting in the

screen display of Figure 27B. This figure shows the first

nineteen codes of the robot coding system, plus three extra

codes for other information on the robot besides those de­

scribed in the previous chapter.

The robot to be added to the database can now be coded

using the robot coding system described in Chapter 3. A de­

tailed example of the ADD subsystem and other DATABASE man­

agement procedures are discussed in the CARSP user-manual

documented in Appendix B. The exact code value for any ro­

bot attribute can be found by entering the CTRL-J keys at

the CODE value of interest. An example on this procedure is

depicted in Figure 27C which shows the last 21 codes of the

coding system. The CTRL-J entry was for CODE 33:. The

Page 182: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

165

A

TOTAL MUHBEB OF flOBOT DESCRIPTIONS: 199 NUMBER OF DELETED ROBOT DISCRIPTIONS: 0

LAST UPDATED: 09/12/83

A-OD A ROBOT OESCRIPTIOM U-PDATE AN EIISTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L-IST ONE OR ALL ROBOT DESCRIPTIONS S-UHHARIZE ALL ROBOT DESCRIPTIONS E-HD

COHNAND: *J FOR HELP

B

*:s/i(AS«SEJii 900 Dir tzoi

•oior iNootriFiUkiioa: wiE i: WE ::

cose 91: COSE 92: COS! 91: C08E 94: COSE 99: COSE 9t: COSE 97: COSE 91: COSE 9T: COSE IO: COSE II: cose 17: cose 13: COSE i<; COSE 13: COSE It: COSE 17: COSE \r. cose It:

0

cose ;o: COSE 21: COSE ; ] : COSE 23: COSE 21: COSE IV COSE 2k: COSE 27: CODE 21: COSE IV. :m 30: COSE :i: CODE 32: CODE n : COSE J«: COSE 33: COSE 34: COSE 37: COSE :B: COSE ]T: COSE <o:

l:8«IAMSE.IIII H I KIT 1201

COSE 33: YAIIS COSES

I mftim voiitsE: Nor STECIFIE* 10 y<i |2 VSC V K I « « (

20 V) I7 VSC VOLIASE

30 V ( i | | 0 V«C VdlASE

*0 I IS<V(i |2S VAC V011A6E

30 I29(V(>230 VAC 'IXHH

to 230<y<-]B0 VAC voirASE

70 3IO(V<i460 VAC VOIAIEE

90 <tO<V(«)00 VAC V0(.«(6E

to V>J0O VAC VOIIAK

Figure 27: ADD Subsystem/User Interaction

Page 183: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

166

codes for each attribute is shown on the first column of the

valid code table and the rest of the entries describe the

particular robot attribute. Notice that two digits have

been used to represent the codes described in Chapter 3, for

example, instead of a code of 2, a code of 20 is used and so

on. This convention is necessary so that should there be

any need to expand the current maximum of 10 levels for any

attribute, it can be done without necessarily rewriting the

CARSP system software. That is, the code levels may then

vary from 00 to 99 for a maximum of 100 levels. This would

be difficult, if not impossible, with the manual format (0

to 9) of Chapter 3, as non-numeric characters like "."

(i.e., 1.1, 1.2, etc.) would have to be used.

Once all the available information on the robot to be

added to the database have been coded, the user then enters

CTRL-W to write the description to the database. On enter­

ing this command, the DATABASE menu of Figure 27A is shown

again with the database count incremented by 1, to 201. The

above procedure is then repeated until all the robots have

been coded. To exit the DATABASE menu, the E option is en­

tered at which point the user is returned to the main MENU

program.

Page 184: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

167

The UPDATE Subsystem

The UPDATE subsystem is very much like the ADD subsys­

tem except that in this case the robot to be updated already

exists in the CARSP system database. Sometime the user or

manufacturer of robots may want to increase or improve the

robot's capability by rebuilding it, or equiping it with a

more powerful control system. The UPDATE subsystem provides

the user the tool with which to document these changes in

the database. For example, suppose that robot 100 were to

be UPDATEd from servo continuous path/point-to-point

(CP/PTP) to servo continuous path (CP). To effect this

change, a U is entered from the DATABASE menu as shown in

Figure 28A.

The system then requests for the number of the robot to

be UPDATEd (Figure 28B). To be valid this number must exist

in the database. Therefore, it must be between 1 and the

"TOTAL NUMBER OF ROBOT DESCRIPTIONS:." For this example,

the number must be between 1 and 199, otherwise, a message

is printed as shown in Figure 28C to allert the user of the

error.

On entering 100 in Figure 28B, the screen of Figure 2SD

is displayed showing all the current information on robot

100. As can be seen from these figures, the ADD and the

UPDATE subsystems use identical procedures except that in

Page 185: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

168

the l a t e r c a s e t he r o b o t to be UPDATEd a l r e a d y e x i s t s in t he

CARSP sys tem d a t a b a s e .

To UPDATE CODE 01 from s e r v o CP/PTP to s e rvo CP, the

u s e r maneuvers t h e c u r s o r wi th t h e h e l p of t he CARSP s y s ­

t e m ' s s p e c i a l l y d e f i n e d keys ( f o r example , f a s t forward and

backward, c h a r a c t e r , word and l i n e d e l e t i o n keys as d e ­

s c r i b e d in Appendix B) . The CTRL-J keys a r e then used to

r e c a l l t h e v a l i d codes for CODE 01 ( F i g u r e 28E). The c o r ­

r e c t code of 20 i s then e n t e r e d , and s i n c e no more UPDATEinc

i s to be done , t h e CTRL-W keys a r e used to r e c o r d the change

in t he d a t a b a s e . CARSP r e q u e s t s for more robot numbers to

be UPDATEd, and s i n c e t h e r e a r e no more r o b o t s for UPDATE-

ing , a RETURN key i s e n t e r e d and t he u s e r i s r e t u r n e d bacK

to the DATABASE menu of F i g u r e 28F.

TOtAL NUMBER OF ROBOT DESCRIPTIONS: 199 LAST UPDATED: 0 9 / 1 2 / 8 3 NUMBER OF DELETED ROBOT DISCRIPTIONS: 0

A-OD A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L- IST ONE OR ALL ROBOT DESCRIPTIONS S-UHHARIZE ALL ROBOT DESCRIPTIONS E-ND

COHHAND: Lf '^ ^^^ ^^^^

Figure 28: UPDATE Subsystem/User Interaction

Page 186: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

169

B

TOTAL NUNBER OF ROBOT DESCRIPTIONS: 199 NUHBER OF DELETED ROBOT DISCRIPTIONS: 0

• ~ \

LAST UPDATED: 09/12/83

A-DD A ROBOT DESCRIPTION U-POATE AN EIISTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L-IST ONE OR ftLL ROBOT DESCRIPTIONS S-UNHAR12E ALL ROBOT DESCRIPTIONS E-NO

COHHAND: U 'J FOR HELP

ENTER THE HUHBER OF THE ROBOT OSC. YOU «ANT TO UPDATE: 3 0 0

V i m THE NUHBER OF THE ROBOT DSC. TOU W N T TO UPDATE: TOTAL NUHBER OF ROBOT DESCRIPTIONS: 199 LAST UPDATED: NUHBER OF DELETED ROBOT DISCRIPTIONS: 0

09/12/93

A-DD A ROBOT DESCRIPTION U-PDftTE AH E1ISTIN8 ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L-IST ONE OR ALL ROBOT DESCRIPTIONS S-UHHARlZE ALL ROBOT DESCRIPTIONS E-ND

COHHAND: U *J FOR HELP

ENTER THE NUHBER OF THE ROBOT DSC. YOU MANT TO UPDATE: 3 U 0 ENTER A NUHBER FROH I TO 200 -- OR '.' TO EIIT ENTER THE NUHBER OF THE ROBOT DSC. YOU KANT TO UPDATE: I 0 0

D

A:OATABASE.RBT UPOT R8T 1100

ROBOT INDENTIFICATION: IDEVILBISS TR-3300S|

NOTE i; NOTE 2: CODE oi: CODE 02: CODE 03: CODE 04: CODE 05: CODE 06: CODE 07: CODE OS: CODE 09: CODE 10: CODE 11: CODE 12: CODE 13: CODE M : CODE 13: CODE CODE CODE CDCE

1&: 17: 19: \v.

DEVILBISS COHPANY, THE 30O PHILLIPS AVE., TOLEDO, OH. 43692 30 30 70 10 90 90 0 ro 0 0 0 0 60 30 50 0 0 0 0

•19-470-21691

Figure 28: Continued

Page 187: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

170

E

f

A:DATABASE.RBT UPDT R6T 1100

ROBOT INDENTIFICATION: |DEVILBISS TR-3500S| NOTE i: NOTE 2: CODE Ol: CODE 02: CODE 03: CODE 04: CODE 05: CODE 06: CODE 07: CODE 08: CODE 09: CODE 10: CODE 11: CODE 12: CODE 13: CODE 14: CODE 15: CODE 16: CODE 17: CODE 18: CODE 19:

DEVILBISS COHPANY, THE | 300 PHIUIPS AVE., TOLEDO, OH. 43692 419-470-21691 50 ' 30 70 10 90 90 0 20 0 0 0 0 60 30 50 0 0 0 0

CODE 01: VALID CODES

0 ROBOT SYSTEM CLASS NOT SPECIFIED 10 SERVO • PRECISION 20 SERVO - CONTINUOUS PATH 30 SERVO - POINT TO POINT 40 NON SERVO - POINT TO POINT 30 SERVO - CP/PTP 60 SERVO - CP/NON SERVO - PIP 70 SERVO - PTP/NON SERVO - PTP 30 RESERVED 90 OTHER TYPES OF CONTROL SYSTEM

\

/

TOTAL NUHBER OF ROBOT DESCRIPTIONS: 199 NUHBER OF DELETED ROBOT DISCRIPTIONS: 0

LAST UPDATED: 09/12/83

A-DD A ROBOT DESCRIPTION U-PDATE AN EHSTINO ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L-IST ONE OR ALL ROBOT DESCRIPTIONS S-UHHARIZE ALL ROBOT DESCRIPTIONS E-ND

COHHAND: J FOR HELP

Figure 28: Continued

Page 188: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

171

The DELETE Subsystem

In spite of all the sales pitches one may have heard,

robots can and do become obsolete. Sometime the robot manu-

facturer may want to discontinue a particular robot model

due to lagging sales or other reasons. The DELETE subsystem

provides the user a means of telling the CARSP system not to

consider this particular robot in future selections. How­

ever, the robot is not completely deleted from the database.

This is a special feature of the CARSP system, that makes it

possible to reactivate the robot with the UPDATE subsystem

whenever necessary. The D option is entered from the

DATABASE menu as shown in Figure 29A. The system then re­

quests for a robot number to be DELETEd. On entering this

number as in Figure 29B, CARSP puts a "***DELETED***" tag on

the robot, simultaneously, showing the user that the dele­

tion has been completed (Figure 29B), and automatically re­

turns to the DATABASE menu (Figure 29C). The count on the

number of robots DELETEd is now incremented by 1, to 1, Fig­

ure 29C. The UPDATE subsystem may be used to restore the

DELETEd robot back to active file.

Page 189: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

B

TOTAL NUHBER OF ROBOT DESCRIPTIONS: 199 LAST UPDATED: 09/12/83 NUHBER OF DELETED ROBOT DISCRIPTIONS: 1

A-DO A ROBOT DESCRIPTION U-PDATE AN EIISTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L-IST ONE OR ALL ROBOT DESCRIPTIONS S-UHHARIZE ALL ROBOT DESCRIPTIONS E-ND

COHHAND: D J FOR HELP

1 7 2

TOTAL NUHBER OF ROBOT DESCRIPTIONS: 199 LAST UPDATED: 09/12/83 NUHBER OF DELETED ROBOT DISCRIPTIONS: 0

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L-IST ONE OR ALL ROBOT DESCRIPTIONS S-UHHARIZE ALL ROBOT DESCRIPTIONS E-ND .

COHHAND: D J FOR HELP

ENTER THE ROBOT DSC. NUHBER TO BE DELETED: 1 0 0

ROBOT OSC. 100 HAS BEEN DELETED

t

TOTAL NUHBER OF ROBOT DESCRIPTIONS: 199 LAST UPDATED: 09/12/83 NUHBER OF DELETED ROBOT DISCRIPTIONS: 0

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L-IST ONE OR ALL ROBOT DESCRIPTIONS S-UHHARIZE ALL ROBOT DESCRIPTIONS E-ND

COHHAND: *J FOR HELP

F i g u r e 2 9 : D E L E T E S u b s y s t e m / U s e r I n t e r a c t i o n

Page 190: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

173

The LIST Subsystem

Other subroutines of the CARSP system; SELECT, SORTER

and ECONOMY do not have data management capabilities. For

example, in a SORTER routine five robots have been found to

be potential candidates for a given task. The user can not

directly review them from this routine as the robots are

represented by only their numbers and descriptions in the

database. However, with these two pieces of information,

the user can exit from the SORTER routine to the MENU rou­

tine, then enter the DATABASE routine and use the LIST sub­

system to review these robots. The robots can now be seer,

in both their code forms and their user understandable

forms.

To LIST the robot of the UPDATE example, an L is en­

tered from the DATABASE menu as shown in Figure 30A. The

system then responds with the screen display of Figure SOB

at which point the user enters 100. CARSP then gives the

user the options of a line printer output and on screen out­

put. Figure 30C. All the information on robot 100 is then

LISTed to the screen (C option) or to the printer (P option)

to obtain a hard copy. Figure 30D is an example of a hard

copy obtained for the information on robot 100. Once all

the information has been LISTed, the system returns the user

back to the DATABASE menu once again (Figure 30A).

Page 191: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

TOTAL NUHBER OF ROBOT DESCRIPTIONS: 199 NUHBER OF DELETED ROBOT DISCRIPTIONS: 1

LAST UPDATED: 09/12/83

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L-IST ONE OR ALL ROBOT DESCRIPTIONS S-UHHARIZE ALL ROBOT DESCRIPTIONS E-ND

COHHAND: L J FOR HELP

1 7 4 • ^

B

TOTAL NUMBER OF ROBOT DESCRIPTIONS: 199 NUHBER OF DELETED ROBOT DISCRIPTIONS: 1

LAST UPDATED: 09/12/83

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L-IST ONE OR ALL ROBOT DESCRIPTIONS S-UHHARIZE ALL ROBOT DESCRIPTIONS E-ND

COHHAND: L J FOR HELP

ENTER A SINGLE ROBOT DSC. NO., 2 ROBOT DSC. NO.'S SEPARATED BY A DASH, AN 'A' TO LIST THE ENTIRE FILE, OR (RETURN) TO RETURN TO HENU 1 0 0

TOTAL NUHBER OF ROBOT DESCRIPTIONS: 199 NUHBER OF DELETED ROBOT DISCRIPTIONS: 1

LAST UPDATED: 09/12/83

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L-IST ONE OR ALL ROBOT DESCRIPTIONS S-UHHARIZE ALL ROBOT DESCRIPTIONS E-ND

COHHAND: L J FOR HELP

ENTER A SINGLE ROBOT DSC. NO., 2 ROBOT DSC. NO.'S SEPARATED BY A DASH, AN 'A' TO LIST THE ENTIRE FILE, OR <RETURN> TO RETURN TO MENU l O U IS OUTPUT BEING SENT TO PRINTER OR CRT CP' OR ' O ? P SET UP THE PRINTER AND PRESS RETURN

F i g u r e 3 0 : L I S T S u b s y s t e m / U s e r I n t e r a c t i o n

Page 192: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

1 7

091283 ROBOT DESCRIPTIONS A:OATABASE.fiBT

ROBOT DSC. I 100 » H » I DELETED H I M

ROBOT INDENTIFICATION: DEVILBISS TR-3300S NOIE l: DEVILBISS COHPANY, THE

300 PHILLIPS AVE., TOLEDO, OH. 43692

D

NOTE 2: CODE Ol:

CODE 02:

CODE 03: CODE 04: CODE 03; CODE 06: CODE 07: CODE 08: CODE 09: CODE to: CODE ii: CODE 12: CODE 13: CODE 14: CODE 15:

CODE 16: CODE 17:

CODE la: CODE 19: CODE 20: CODE 21: CODE 22: CODE 23: CODE 24: CODE 25: CODE 26: CODE 27:

CODE 28: CODE 29: CODE 30: CODE 31: CODE 32:

CODE 33: CODE 34: CODE 35: CODE 36: CODE 37:

CODE 38: CODE 39:

CODE 40:

301 50 30 70 10 90 90 0 20 0 0 0 0 60 30 50 0 0 0 0 60 10 80 0 0 30 20 40 10 0 10 70 0 50 30 20 0 10 20 0 0

419-470-2169 SERVO - CP/PTP F1NISHIN8 OPERATIONS VISUAL/RAN8E-PR0X1HITY SENSORS YES: DIAGNOSTICS AVAILABLE R>.030' ! R>.760flH REPEATABILITY PA>.030* I PA>.760«H ACCURACY PAYLOAD IN POUNDS/KILOGRAMS UNSPECIFIED 5<LV<«10 IPS I 127<LV<=254 MHPS VELOCITY ANGULAR VELOCITY (DEGREES): NOT SPECIFIED NTBF (HRS OR I): UNSPECIFIED NTTR (HRS OR I): UNSPECIFIED COORDINATE 3YSTEH NOT SPECIFIED 6 AIES 20'<HR(=40' I 309MH<HR(»IOl6Hn H. REACH 60*<VR<«80* I 1524Mn<VR<>2032«H V. REACH ARH SHEEP (DEGREES/IN/HH): UNSPECIFIED XRIST BEND/PITCH (DEGREES): UNSPECIFIED/UNAVAILABLE URIST YAK (DEGREES): UNSPECIFIED/UNAVAILABLE WRIST SHIVEL/ROLL (DEGREES): UNSPECIFIED/UNAVAILABLE 1000<«<=2000 LflS I 434(«<=907 KGS FS<=5 SD. FT. I FS<=19.3 SB. H. ELECTRONlC/niCROPROCESSOR TYPES MEMORY MEMORY CAPACITY (I STEPS,BYTES,PROGRAflS):UNSPECIFlED NUHBER OF 1/0 CHANNELS NOT SPECIFIED HYDRAULIC DRIVE LEADTHROUGH PROGRAH METHOD ARC HELDIHG/SPRAY SUN ONE GRIPPER ONLY SAFETY FEATURES NOT SPECIFIED FLOOR MOUNTED (FIIED) 90000<C(=<100000 COST/ROBOT POWER CONSUMPTION: NOT SPECIFIED 120<V<s230 VAC VOLTAGE VOLTAGE PHASE » 3 VOLTAGE FREg. » 60 HERTZ CURRENT (AMPERES): NOT SPECIFIED T(«32 DEG. F I T<=0 DES, C MIN TEMP. 100<HIT(=I20 OES. F ! 40(MIT<»50 DEG C MAI TEMP. ENVIRONMENTAL HUMIDITY: NOT SPECIFIED TOLERABLE ADVERSE ENVIRONMENTS:UNSPECIFIED

Mi» PRESS ANY KEY TO RETURN TO MAIN HENU »»#»

Figure 30: Continued

Page 193: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

176

The SUMMARIZE Subsystem

The SUMMARIZE subsystem is similar to the LIST subsys­

tem except that in this case, all the robots in the database

are listed or printed out. This provision is especially

useful when a particular robot's identification number is

not known. The robots are listed in a code form, and once

the target robot is found the LIST subsystem can be used to

recall and review the individual robot thoroughly. S is en­

tered from the DATABASE menu as shown in Figure 31A. The

system then displays the screen of Figure 31B to give the

user the output options. Once the choice is made, the whole

robots currently residing in the database are listed out in

their code form (Figure 31C). The user is then returned to

the DATABASE menu for more input commands.

TOTAL NUHBER OF ROBOT DESCRIPTIONS: 199 NUHBER OF DELETED ROBOT DISCRIPTIONS: 1

LAST UPDATED: 09/12/83

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L-IST ONE OR ALL ROBOT DESCRIPTIONS S-UHHARIZE ALL ROBOT DESCRIPTIONS E-ND

COHHAND: S J FOR HELP

F i g u r e 3 1 : S U M M A R I Z E S u b s y s t e m / U s e r I n t e r a c t i o n

Page 194: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

B

1 7 7

TOTAL NUHBER OF ROBOT DESCRIPTIONS: 199 NUHBER OF DELETED ROBOT DISCRIPTIONS: 1

LAST UPDATED: 09/12/83

A-DO A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L-IST ONE OR ALL ROBOT DESCRIPTIONS S-UHHARIZE ALL ROBOT DESCRIPTIONS E-ND

COHHAND: S J FOR HELP

IS OUTPUT BEING SENT TO CRT OR PRINTER CP' OR ' O ? p

091283 A:DATABASE.RBT LIST OF ROBOT DESCRIPTIONS

NO. IDENTIFICATION (CLASSIFICATION FOLLONS) 1 NUHAN I \ II

20I70I30I10I50!50I50I40!OIO!OI40!50I70!80!70!3010!60!60!40!70!20!OIO!40I9010!OIO 2

0!0!OIO!OIOIO!OIO!0!0!OIO!OIO!0!0!OIOIOIO!0!0!0!OIO!0!0!0!OIO!0!0!OIO!OIOIO!0!OI

78 HODEL FR-200 30110!0l0l70!1010l50l0l90!10l80l0l0!0l0l0l0!0l30!30!010l0ll0!30!60l0!30l60l40!0!70!:

79 COPPERWELD CR-5 30I90!70I10!30I50I10I0I0!0I0!20!50!0!0I0I0I0I0!30110I60I20I0I10140!10I1010I10I2010I

80 COPPERWELD CR-10 40I90I70I10!30!50I10IOIO!OIOI20!50!0!0!01010!0!30!10160!2010!20140I10110!OI1012010!

81 COPPERNELD CR-50 40190!70!10l50150!20!0!0!010l20!50!010l0!0l010!40!30!60!20!0!20!40!10!101011013010!

82 COPPERNELD CR-100 70190170!10!20I10I10I30IOIOIOI10I30130!2010!0!0140!30I90!80!2010120!4019010!10190!'

83 SPR-64 PAINTER 30I30!OI10!90!0!20I8010IOI0160I60!60180!30170!30!30!60I10!50!60!20!30!40!0!1010101

Figure 31: Continued

Page 195: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

178

Subroutine SELECT

The purpose of this segment of the system is to enable

the user to select robots of a given technological level.

Robot technological levels are as described in Chapter 3,

and are repeated here for convenience.

1. Servo Precision,

2. Servo Continuous Path (CP),

3. Servo Point-To-Point (FTP), and

4. Non-Servo Point-To-Point

5. Servo-CP and Servo-PTP

6. Servo-CP and Non-Servo PTP

7. Servo-PTP and Non-Servo PTP

8. RESERVED

9. OTHERS

A. By Company Name

Among these options is the user's ability to select a robot

by company name. Over the years, some robot users have

grown comfortable with a particular manufacturer, and this

option makes it possible for such users to look for what

they want only within a specified company. Given these ro­

bots, the user can review them individually with the

DATABASE program segment, or use the SORTER segment to

further constrain the selection criteria.

Page 196: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

179

Suppose that a user wanted to search the database for

servo continuous path class of robots. Option 2 is entered

from the MENU program (Figure 32A) resulting in the screen

of Figure 32B. Since the search criterion is type of con­

trol system, option 1 is entered. The screen of Figure 32C

is displayed showing the various search categories. On en­

tering option 2, the system then searches the database for

robots that are of the servo continuous path type. Found

robots are automatically echoed to the screen (Figure 32D),

and the user can review their code values immediately.

After all the robots have been searched, a tally of the

found robots is kept and echoed again to the screen showing

their database reference numbers and descriptions (Figure

32E). A <CR> is entered to return the user to Figure 32C

again. The process can be repeated for other search cri­

teria or the 0 option used to exit back to the MENU program.

^

A

1 ENTER SYSTEH COHHAND ! /«ftf«»»«ffft}»f*»<ffifif>«\

! 1 DATA BASE MANAGEHENT ! 2 ROBOT SELECTION/MATCH I 3 ECONOHIC ANALYSIS ! 4 USER INFORHATIONS/INSTR. ! 0 END OF SESSION \if»if«««>iffif»fi»f«i«iiii/

ENTER COHHAND :

Figure 32: SELECT System/User Interaction

Page 197: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

1 8 0

ROBOT SELECTION OPTIONS

B

1 SEARCH A DATABASE by type of Robot CONTROL SYSTEH (ROBOT CLASS) 2 HATCH A TASK TO A ROBOT by type of APPLICATION 3 RESERVED 0 RETURN TO HAIN HENU

ENTER COHHAND:

1 2 3 4 5 6 7 8 9 A 0

SEARCHING DATABASE BY ROBOT CLASS

SERVO PRECISION SERVO CONTINUOUS PATH SERVO POINT TO POINT NON-SERVO POINT TO POINT SERVO CP/SERVO PTP SERVO CP/NON-SERVO PTP SERVO PTP/NON-SERVO PTP RESERVED NOT IHPLEHENTED OTHER TYPES OF CLASS COHPANY NAHE Ist 3 LETTERS RETURN TO HENU

ENTER COHHAND: 2

DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX:

B:PRECISON.NDX B:CONPATH.NDX B:SERVOPTP.NDX BlNONSERVO.NDX B:SCP-SPTP.NDX B:SCP-NONS.NDX B:SPTP-NON.NDX BlRESERVED.NDX B:OTHER-APP.NDX B:COHPANY.NDX

Figure 32: Continued

Page 198: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

D

r 1 8 1

SEARCHING ROBOT NO.: 1 1

NUHAN U II

ACCUHATIC HACHINE CORPORATION (PLUS OPTNS. 6 i 8) 3537 HILL AVE., TOLEDO, OH. 43607 419-535-7997

20I70I30I10!50!50I50!40!0I0!0I40150I70!80I70130!0!60!60!40! 70!20I010I40I90!0!OIOI60!OI7013010I30IOI010!01 SEARCHING ROBOT NO.: 2 SEARCHING ROBOT NO.: 3 SEARCHING ROBOT NO.: 4 SEARCHING ROBOT NO.: 5 SEARCHING ROBOT NO.: 6

SEARCHING ROBOT NO.: SEARCHING ROBOT NO.: 16

15 16

ELECTRO-ARH AIR TECHNICAL INDUSTRIES (EXCEPT OPTNS. 2 \ 4) 7501 CLOVER AVE., HENTOR, OH. 44060 216-951-5191 20!90I80110190I90!60190!010I0130I4010IOI010!0!0!70I30I 80120140110180IOIOI30I1014010I50I30I20IOIOI010101 SEARCHING ROBOT NO.: 17 SEARCHING ROBOT NO.: 18

SEARCHING ROBOT NO.: SEARCHING ROBOT NO.: SEARCHING ROBOT NO.: SEARCHING ROBOT NO.: SEARCHING ROBOT NO.: SEARCHING ROBOT NO.: SEARCHING ROBOT NO.: SEARCHING ROBOT NO.; SEARCHING ROBOT NO.: SEARCHING ROBOT NO.:

190 191 192 193 194 195 196 197 198 199

Figure 32: Continued

Page 199: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

182

INPUT TEST OF INDEX WRITTEN FOR SERVO CONTINUOUS PATH ROBOTS

ROBOT t 1 16 22 47 48 49 50

DESCRIPTION NUHAN I tl II ELECTRO-ARH ELECTROBOT HHU-SENIOR HHU-JUNIOR ASEA HHU-HINOR AUTOHATON-I

65 66 67 68 69 70 71 85 87 115 116

145 179 182 183

HILACRON T3-586 HILACRON T3-726 HILACRON T3-746 HILACRON T3-776 HILACRON HT3 LIHAT 200 SERIES LIHAT RT-2B0 HR AROS JP 6E AH-7A ARC MELDER GCA XR-3 GCA XR-4

COATING ROBOT SERIES-4000 SERIES-7000

TYRE P TO SEND OUTPUT TO PRINTER OR RETURN TO CONTINUE:

Figure 32: Continued

Page 200: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

183

Subroutine SORTER

Different manufacturing processes require different

workplace layouts, and sometime different operating environ­

ments. In selecting a robot, therefore, it is important to

describe different robot and environmental requirements for

different tasks. In this section the respective task groups

will be defined relative to the coding system. The SORTER

subroutine is used for this purpose. The routine is very

much like the SELECT routine except that it uses the robot

application code as the entry criterion. The chosen appli­

cation is then described to the system using the coding sys­

tem. The interactive nature of the procedure ensures that

the user can use different combinations of the task vari­

ables to analyze a given application.

As was defined in equations 1.4 and 1.5, the robot se­

lection problem was to minimize an objective function sub­

ject to the constraints that the robot meet or pass the

specified task and environmental variables. In symbols

then;

Minimize XQ = A 4.1

S . T. Yj , Z^ <= X^ ^.2

where,

A = objective function vector,

Y- = task variables,

Page 201: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

184

Z^ = environmental variables associated with the

task, and

X. = robot variables and its environmental variables,

as defined in the robot coding system.

In most aspects of manufacturing the following vari­

ables can usually be identified with the tasks to be per­

formed:

1. The number of products to be produced per shift--lot

size.

2. The number of products to be produced per year—de­

mand.

3. The weight of the products.

4. The dimensions of the products.

5. The part uniformity.

6. The condition of the parts—hot or cold.

7. The state of the parts—solid, limp.

8. The cycle times for each part.

9. The operation time for each part.

10. The handling time for each part.

11. The surface finish requirements.

12. The part and workpiece materials and other machining

variables. Such as speed, depth of cut and feed.

13. The layout type: cell, line or functional.

14. The number of machines to be serviced by the robot.

Page 202: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

185

15. The approximate machine spacings.

For the robot selection problem as defined in this litera­

ture let the following symbols be used to represent the cor­

responding variables.

K = number of products (e.g., flats, bolts, frames).

I = number of operations/product

(e.g., painting, drilling, welding)

Qj = yearly demand for product k.

qjt = lot size for product k.

(tc)k = cycle time for product k.

(t )^ = actual operating time for product k.

(t ) } = handling time for product k.

C = cell type layout.

L = line type layout.

n = number of machines or work stations (e.g., weld

or paint stations) serviced by each robot,

ai = equipment spacings.

Figure 33 shows the model layouts that will be referenced

for the remainder of this chapter. It shows respectively in

A the line, and B, the cell type layouts. It is assumed

that the maximum number of machines to be serviced by the

robots is four, and that the robots and machines are

stationary in each layout. This is consistent with the

requirements cited by some researchers {99,117}.

Page 203: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

186

IN

Mi ^

\ .

A-LlNE

V , r7]

ROBOT

/

M:

OUT

B - C E L L

IN OUT

Figure 33: Line and Cell Type Layouts

Page 204: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

187

For a robot to be able to perform any task one

condition must be met.

The code for any robot's attribute must be as good as or better than the code for the corresponding task attribute. For example, if the part weighs 40 pounds and the robot can only lift 30 pounds, then the robot can not perform the task of lifting that part.

This is quite straight forward for such task attributes as

weight and shape. However, it is not readily clear for such

attributes as lot size, surface finish and cycle time.

In classical machining operations it has been deter­

mined that machining speed affects surface finish more than

any other machining variables {29,45}. Other factors that

affect surface finish are, workpiece material, feed, depth

of cut, etc. The safe amount of speed that can be attained

on any given tool is a function of the tool material and

will not be considered any further. The weight of the part

can be coded directly from the CARSP system. The point of

interest then was, given that a task has lot sizes, cycle

times, etc., how can these attributes be equated to the ro­

bot variables in order to select the robot that can perform

the task? With the assumption of the layouts of Figure 33

four different cases of robot task descriptions can be seen

{55}.

1. 1 machine 1 operation and 1 product,

Page 205: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

188

2. n machines I operations and 1 product; I>=l,n>=2,

3. n machines 1 operation and K products; K>=l,n>=2,

and

4. n machines I operations and K products; I,K,n>=2.

Assumptions Concerning the Models

1. The robot should be kept as busy as possible.

2. The machines should be kept as busy as possible.

3. The cycle times are such that assumptions 1 & 2 are

true. That is, if the n machines are busy, once one

is unloaded it is reloaded before the robot can at­

tend to any other machine. And once it is loaded,

another machine is ready to be unloaded, and so on.

4. For the n/l/K cases (n,K>=l) the machines are identi­

cal and are capable of only one operation.

5. For the n/I/K, (n,I>=2, K>=1) cases, the machines are

different, perform different operations and each

product must visit each machine.

Estimating Robot Travel Distances

From the above assumptions, the possible number of

moves for the robot in each case is shown respectively in

Figures 34 and 35 assuming arc motions for the robots. For

example, the possible number of moves for the robot servic-

Page 206: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

189

IN OUT

1. Pick up a part 8. To output conveyor

2. Load machine 1 9. Unload machine 2

3. Pick up a part 10. To output conveyor

4. Load machine 2 11. Unload machine 3

5. Pick up a part 12. To output conveyor

6. Load machine 3 13. Return to starting point

7. Unload machine 1

Figure 34: Estimating Robot Travel Distances: n/l/K Model

Page 207: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

190

IN OUT

1. Pick up parti 13. 2. Load machine 1 14. 3. Load m/c 2 parti 15. 4. Pich up part2 16. 5. Load m/c 1 part2 17. 6. Unld m/c 2 parti 18. 7. Load m/c 3 parti 19. 8. Unld m/cl part2 20. 9. Load m/c 2 part2 21.

10. Pick up part3 22. 11. Load m/cl part3 23. 12. Unload machine 3 parti

To output conveyor Unload machine 2 part2 Load machine 3 Unload machine Load machine 2 Unload machine To output conveyor Unload machine 2 part3 Load machine 3 part3 Unload machine 3 part3 Return to starting point

part2 1 part3 part3 3 part2

Figure 35: Estimating Robot Travel Distances: n/I/K Model

Page 208: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

191

ing 4 machines was found to be 17 and 39, respectively, for

the n/l/K and n/I/K models of the cell-type machine layout.

In general the maximum number of motions m, for the n/l/K

model is given by:

4, n=l,

m = 4.3

4(n-2) + 9, n>=2.

Similarly, for the n/I/K case,

n=l,

m = 11 n=2, 4.4

.4(2^-M + 7 n> = 3.

In Figure 36, given the radius R, of the cell and the equip­

ment spacings aj_, i = l, 2 , . . , n+1, the arc distances covered by

the robot can be found using trigonometric functions. Thus,

in general,

a^ = b^ + c - 2*b*c*Cos A 4.5

where, a, b and c are the sides of a triangle, and A is the

angle subtended by side a. Expressing equation 4.5 in terms

of A gives,

Cos A = (b^ + c - a^)/(2*b*c) 4.6

Page 209: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

192

IN OUT

Figure 36: Mapping the Travel Distances

Page 210: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

193

A = Cos"^ ((b^ + c^ - a^)/(2*b*c) 4.7

Therefore, for any angle Q^ in Figure 36,

ei= Cos'"^((2*R ^ - a ^ )/(2*R^)) 4.8

Then, Arc d^^ = R* e , e^ in radians.

Similarly, Arc dij = R*e., i, j = l,2,...,n + 1.

For the n/l/K models of the cell-type layout, the total dis­

tance D covered by the robot when the number of parts vas

equal to the number of machines was found to be,

n + 1 D^ = 2*n Z dj_ 4.9

i = l

or for 1 part,

n + 1 D = 2 y d T 4. 10

' itl

In general, for N parts, the total distance D, is given by,

n + 1 D N = 2*N S d . 4.11

i = l ^

where,

di = arc distances between any two equipment,

D = total arc distances,

n = number of machines in the cell, and

ti = total number of parts.

Page 211: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

194

Similarly, for the n/I/K models, when the number of parts

was equal to the number of machines,

n D = 2*n(d, + d _, J + (6 + 4(n-2)) I d. 4.12 n 1 n+ 1 1 = 2

and for 1 part

n D, = 2(di + dn+i) + ((6 + 4(n-2))/n) Z d. 4.13

. i = 2

In general, for N parts

n Dj^ = 2*N(di + dn+i) + (N(6 + 4 ( n-1) )/n) ^di 4.14

Then,

Let total distance/part/machine cell = D 4.15

Total distance/cell/lot (s/c/1) = q*D 4.16

K Total s/c/1 for K products = E (q*D)

k=l

4. 17

Total handling time/lot = t2*q ^-^^

K Total handle time for K lots = I (t2*q) --^9

k=l

Velocity is defined as:

V = Distance/Time = D/t 4.20

Therefore, the minimum velocity V needed to complete the

task is given by:

Page 212: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

195

K E (q*D), k=l ^

Vp = ^21 K E (t2*q)^ k = l ^

The velocity of the robot V^, must therefore be greater than

or equal to that required to successfully execute the task.

Vj, >= Vp 4.22

The total handling time for '' lots given by equation

4.19 can not be greater than eight hours, less the total op­

eration time. Otherwise, the robot should be scheduled tor

two shift work days. Thus,

K K

k=l ^ " k = l ^ ^

From the above analysis it is inferred that the robot's

ability to meet the manufacturing constraints of the prod­

ucts is a function of its speed. The robot's work envelop

is also a direct measure of its ability to carry out the

task successfully under the terms of the constraints speci­

fied. One direct result of equations 4.21 and 4.22 is that

the robot's work place designer can now know in advance of

the purchase of any robot, whether or not the specifications

given for the task are consistent with what is available in

Page 213: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

196

terms of robot models. The questions raised by this

equation are:

1. Can a robot be used for the task?

2. Is it necessary to maintain the number of machines

specified?

3. Can the lot sizes specified be increased or reduced?

4. Consider multiple shifts if (2) is yes.

5. Consider multiple robots.

6. Consider customizing the robot.

The first level of each attribute in the CARSP system

was assigned a value of 0. This meant that either the at­

tribute being described was not defined for the given robot,

or that there was no data available for that attribute at

the time of this writing. In reviewing the robots in the

CARSP system database, it was found that some attributes had

an unusually high frequency of zero entries than others

while some had high frequency of entries other than zero.

This could be an indication of which attributes robot users

were always asking for information about from the robot man­

ufacturers, or an indication of the scarcity of applications

data for the given attribute. For example, one would expect

the robot user to be interested in the robot's mean time

between failure (MTBF) and mean time to repair (MTTR)

history. As can be seen in Table 42 this attribute ranks

Page 214: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

197

TABLE 4 2

Ranking Robot Attributes in Descending Order of Use

IRANKI

1 1 1

1 2 i

1 3

1 4

1 5

1 6

1 7

1 8

1 9

1 10

1 11

1 12

1 13

1 14

1 15

1 16

1 17

1 18

1 19

1 20

ATTRIBUTE I

Repeatability 1

Number of Axes 1

Applications 1

Robot Class 1

Program Method

Payload

Memory Type

Robot Weights

1 Diagnostics

1 Coord. System

1 Memory Capacity

1 Drive Train

1 Floor Space

1 Optg. Voltage

1 Voltage Phase

1 Cost of Robot

1 Sensors

1 Linear Velocity

1 Mountg Position

1 Effectors

P(X)%|

98.9 1

98.5 1

96.9 1

94.4 1

94.4 1

93.9 1

93.3 1

92.8 1

92.3 1

90.3 1

90.3 1

88-. 2 1

186.2 1

184.6 1

184.1 1

182.1 1

178.0 1

176.4 1

172.3 1

171.8 1

iRANKi

1 21 1

1 22 1

1 23 1

1 24 1

1 25 1

1 26 1

1 27

1 28

1 29

1 30

1 31

1 32

1 33

i 34

1 35

1 36

1 37

1 38

1 39

1 40

ATTRIBUTE 1

Voltage Freq. 1

Pos. Accuracy 1

Vertical Reach 1

Arm Sweep 1

Horizontal R. 1

Safety Features 1

Number Grippers 1

Wrist Roll 1

Max Temperature 1

Wrist Pitch

Power Usage

Min Temperature

1 Current

1 Adverse Environ.

1 Wrist Yaw

1 I/O Channels

1 Angular Velocity

1 MTBF

1 MTTR

1 Humidity

P(X)%

70.3

68.2

66.7

64.1

59.0

58.0

55.4

55.4

51.3

49.7

48.7

46.8

38.5

1 34.4

1 32.8

1 28.7

126.7

1 26.7

122.1

1 11.3

Page 215: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

198

rather low compared to, for example, repeatabiIty. The

P(X)% column in the table is the probability of finding a

robot in the CARSP system database for which the given at­

tribute was defined. That is, the attribute has a value

other than zero.

Since the robot codes are used for the task descrip­

tion, the maximum number of attributes that can be used to

describe a task is 40. However, it is not necessary that

all the forty attributes be used. Experience showed that

about five attributes were enough for describing a task.

The user, therefore, only has to specify those attributes

that apply in a particular application and use them as the

minimum conditions necessary for selecting a robot for fur­

ther consideration. The user has the option of specifying

any number of attributes less than or equal to 40.

Figure 37 shows a plot of the number of robots found

against the number of constraints used in the search. The

number of constraints were taken sequentially from Table 42

until no robots were found that could satisfy further con­

straint additions. This result follows the multiplicative

law of probability. That is, the probability of finding a

robot in the CARSP system database for which the given

attributes were defined (i.e., have values other than zero),

decreased as the number of constraints (attributes) in-

Page 216: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

199

NO. OF ROBOTS FOUND FOR GIVEN NO. OF CONSTRAINTS 200-j

1 8 0 -

1 6 0 -

H lUO U M 8 e R 120

fl F

ft 100 0 8 0 T S 80

f a u N 60-0

40-

20-

4

\ \

\

\

\

\

\

\

\

\

^ r ^ ^ ^ ^ T " " * ^ ™ ^ " " ^ ^ ^ " " ^ "

10 20

NUMBER OF CONSTRAINTS

- ^ ^ • ^ - ^ - ^ — T — ^ — • ^ '

30 HO

Figure 37: Number of Robots vs First 1 Significant Constraints

Page 217: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

200

creased. The data used for the plot of figure 37 is shown

in Table 43.

The constraints used to generate the data of Table 43

and Figure 37 were of the type:

X j_ > 0; i = l,2,...,n attributes.

TABLE 4 3

Number of Robots Found for Given Number of Constraints

# Constr. Used

1

5

10

15

20

25

Constr. Used

1

1-5

1-10

1-15

1-20

1-25

# Robots Found

184

184

137

75

34

0

Figure 37, therefore, showed the maximum number of robots

that can be found for' the number of constraints specified,

using attributes with the highest probability of occurrence.

Page 218: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

201

Figure 37 represents the best possible case. Different con­

straints and and/or different constraint values would result

in a different shape of Figure 37 and therefore the number

of robots found in Table 43. Applying the constraints as

before, the number of robots found can be reduced in some

cases by either tightening the values of the constraints,

reducing the number of constraints or both.

Suppose for example, that the robots found when n=8

were as shown in Table 44. The number of robots found can

be reduced to 3 if the constraints were,

0 < x- <= 40, as only robots 2, 15, and 133 would

remain.

Or, to 2 if it is also required that

X2,X5 = 30. In this case only robots 2 and 133

will remain in the solution space. The inconclusiveness of

the exact shape of Figure 37 indicates that more study is

needed in this area. Although 40 attributes were used to

describe robots in this study, it may well be that a lot

less than that number would be adequate.

Page 219: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

202

TABLE 44

Tightening Selection Constraints

RBT #

2

15

21

121

133

1

10

30

10

60

20

2

30

40

20

40

30

3

40

30

10

30

40

4

20

30

40

60

10

ATTRIBUTE 5 6 7 8

30

40

50

70

30

40

10

20

80

30

30

30

80

10

40

10

20

90

10

10

NUMBERS • • •

• • •

• • •

• • •

• • •

• • •

37

20

20

10

10

30

38

20

10

0

60

40

39

40

30

10

10

10

40

20

10

40

0

30

Necessary and Sufficient Conditions for Selecting a Robot

The flexibility of the SORTER routine as discussed

above can be used to advantage in the selection process.

The critical or most significant attributes of the selection

can be set at the minimum or maximum acceptable values, and

the values of the less significant attributes varied until

the best possible mix of attribute values is found. The

necessary condition for selecting any robot, therefore, is

the robot's ability to satisfy the minimum acceptable

requirements of the task. This condition is, however, in-

Page 220: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

203

sufficient for selecting a robot since several robots may

satisfy these basic requirements. If only one robot was

found that satisfied the pertinent constraints of the selec­

tion problem, then it may be used as the target robot and

the necessary condition considered as also sufficient. Oth­

erwise, a selection rule as defined in the next chapter was

used to select the best robot from the competing alterna­

tives. This selection rule was minimum operating cost, and

forms the objective function of the robot selection problem.

Therefore, the sufficient condition for selecting any candi­

date robot is that it has the least operating cost. The

constraints of the selection problem can now be defined as

follows:

Minimize X = A 4.24

S. T.

^ <b,*x,)^ >= B, 4.25 w=l

W E (b2*X2 )^ >= B2 4.26

w=l

S ^^i*H^^ >= i ^-2^ w=l

Page 221: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

204

W

where,

b , i=l,2,...,l are the components of the requirements

for each constraint of the robot.

x^, i=l,2,...,l are the robot's constraints, and

B^, i=l,2,...,l are the task and environment

constraints (Y-+Z] )

1 = number of constraints specified (1<=40).

Example on Def init ion of the Problem Constraints

Suppose that a material handling task were, to be per­

formed by a robot and that this task had the following vari­

ables.

1. Maximum weight of any part = 30 pounds.

2. The maximum machine to robot reach = 60 inches.

3. Accuracy in part loading is not critical.

4. 200 parts are to be produced each work day.

5. Three machines are to be serviced by the robot.

6. Cell type layout is in use.

7. Maximum permissible load on building floor = 2000

lbs.

8. The part cycle time = 20 seconds.

Page 222: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

205

9. Equipment spacings are known.

From these task constraints it can be seen that the first

four variables have a one-to-one correspondence with equiva­

lent robot variables. The last five do not, however, and

fall into the velocity relationship developed earlier.

Therefore, the total number of task constraints to be

matched is 5, and are defined as shown in Table 45.

TABLE 4 5

Necessary Condition for Example Problem

TASK Sc ROBOT VARIABLES

1.

2.

3.

4.

5.

Task

Part Weight = 30 lbs.

Layout = 60 "

Accuracy

Structural Limitat ions

a) # of Machines b) # of Parts c) Type Layout d) Cycle Times e) L/0 Spacing

Robot

Payload>=30 lbs.

Reach >= 60 "

Accuracy

Robot and Control Systems Weight

Linear Velocity

Constraint

>= 30 lbs

>= 60 "

>= 0

<=2K lbs.

3 200 Cell 20 seconds See Fig. 38

Page 223: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

206

These five constraints are the necessary conditions for

further analysis on any robot since they represent the bar­

est minimum values necessary to complete the task. The ve­

locity equivalence for the last task constraint is calculat­

ed using the formulations of equations 4.8 to 4.21. The

following figures show the user-CARSP system interaction in

specifying these constraints.

Figure 38: Model Layout for the Example Problem

Page 224: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

207

The SORTER routine is within the robot selection option

of the CARSP system, and can be accessed by using option 2

of the MENU program as shown in Figure 39A (page 209). On

entering this option, the screen of Figure 39B is displayed

showing the robot selection menu. Option 2 is entered for

the TASK MATCHING program to reveal its menu as shown in

Figure 39C. Since the example calls for material handling

operation, option 8 is entered resulting in the screen of

Figure 39D.

In order to have the system calculate the speed equiva­

lence for layouts, lot sizes and other task variables of

constraint 5, the C option is used resulting in the screen

of Figure 39E. The rest of Figures 39F to 39N show the

CARSP system user interaction for describing the task vari­

ables of Table 45.

The components of constraint 5 is described to the

CARSP system as in Figure 39F. The system then displays

Figure 39G so that the user can supply the layout data for

the layout type and number of machines specified. These

data are supplied as shown in Figure 39H. Using these data,

the system then calculates the minimum speed needed to

complete the task (Figure 391). On entering the RETURN key,

the screen of Figure 39C is displayed again. The user then

enters the original task matching category as before.

Page 225: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

208

Figure 39D is displayed again, and instead of entering the C

option as before, the U option is used since the speed task

variable relationship has been determined. The screen of

Figure 39J is then displayed and the user enters RETURN key

to reveal the rest of the robot codes (Figure 39K) as de­

scribed in Chapter 3. The number of constraints specified

is entered and described to the system one constraint at a

time. To describe constraint 5: linear velocity, for exam­

ple, 8 is entered as a "SIGNIFICANT ROBOT ATTRIBUTE."

To code the constraint, a code of 30 was entered as the

"LOW CODE" since this was the code for a minimum speed of 15

'Vs (Figure 39L1). A code of 40 was then entered as the

"HIGH CODE" as it was assumed that a maximum of 30 "/s was

enough for all tasks (Figure 39L2). To find the exact codes

for any constraint, a CTRL-J help command was entered as

shown in Figure 39L. The rest of the constraints were de­

scribed in this manner.

The system then used these constraints and their values

to search the database for robots that could perform the

task. Found robots were echoed to the screen (Figure 39M),

and a tally of all found robots was kept (Figure 39N) and

saved under the task gro.up name. The screen of Figure 39N

showed that 10 robots were found that could do the task,

therefore, further analysis was needed. The user may then

Page 226: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

209

exit the task matching program and use the economic analysis

model to choose the best robot from among the 10 found. As

was seen in the example, the SORTER routine is very flexible

and can handle both equality and inequality constraints,

provided that the variables are entered as a range.

I ENTER SYSTEM COHHAND !

1 DATA BASE MANAGEHENT 2 ROBOT SELECTION/HATCH

ECONOMIC ANALYSIS USER INFORMATIDNS/INSTR. END OF SESSION

\f»l«««»i»l«tl»«>t»ttt>4l»l/

! 3

I 0

ENTER COMMAND : 2

B

ROBOT SELECTION OPTIONS

1 SEARCH A DATABASE by type of Robot CONTROL SYSTEM (ROBOT CLASS) 2 MATCH A TASK TO A ROBOT by type of APPLICATION 3 RESERVED 0 RETURN TO MAIN HENU

ENTER COHHAND: 2

F i g u r e 3 9 : SORTER S y s t e m / U s e r I n t e r a c t i o n

Page 227: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

2 1 0

^

CHOOSE DESIRED ROBOT APPLICATION CATEBORt

i ASSEMBLY/INSPECTION: 2 ARC-WELDING 3 FINISHING OPERATIONS: 4 MACHINING OPERATIONS: 5 SPOT WELDING:

6 MACHINE LOAD/UNLOAD (CNC): 7 MACHINE LOAD/UNLOAD (DIE): 0 MATERIAL HANDLING: 9 OTHER TYPES OF OPERATIONS: 0 TO RETURN TO MAIN MENU

ENTER COMMAND: 8

APPLICATION INDEX: APPLICATION INDEX: APPLICATION INDEX: APPLICATION INDEX: APPLICATION INDEX: APPLICATION INDEX: APPLICATION INDEX: APPLICATION INDEX: APPLICATION INDEX:

BlASSEMBLY.lNS B:WELD!N8.ARC B:F!NISHNG.OPT B:MACHINE.OPT B:WELD1NG.SP0 B:MACHLOAD.CNC B:HACHL0AD.D1E D:MATER!AL.HDL

B:OTHERTPE.OPT

^

CHOOSE DESIRED ROBOT APPLICATION CATEGORY

1 ASSEMBLY/INSPECTION: APPLICATION INDEX 2 ARC-WELDING APPLICATION INDEX 3 FINISHING OPERATIONS: APPLICATION INDEX \ MACHINING OPERATIONS: APPLICATION INDEX 5 SPOT WELDING: APPLICATION INDEX 6 HACHINE LOAD/UNLOAD (CNC): APPLICATION INDEX 7 HACHINE LOAD/UNLOAD (DIE): APPLICATION INDEX 8 MATERIAL HANDLING: APPLICATION INDEX 9 OTHER TYPES OF OPERATIONS: APPLICATION INDEX 0 TO RETURN TO HAIN MENU

B:ASSEMBLY.INS B:WELDING.ARC B:FiNISHN6.0PT B:MACHINE.OFT B:WELD1N6.SP0

B:MACHLOAD.CNC D:MACHLOAD.DIE B:MATERIAL.HOL B:OTHERTPE.OPT

ENTER COMMAND: 8 (— MATERIAL HANDLING

It has been deteriined that ability of the robot to successfully conplete certain tasks is a function of it's speed.

If your task variables include lot size, cycle tine and layout analysis enter C-ARSP for system calculated robot nininuin acceptable speed.

Otherwise enter U-SER for user specified ainiflun acceptable speed.

Figure 39: Continued

Page 228: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

2 1 1

The purpose of this section of the CARSP systei -as to give you, the user in opportunity to analyze your layout intended for robotic installation.

The svstei has been designed to handle only up to 4 .achine layouts. Choose the applicable layout in your case and enter the "values as pronpted by the jystei.

One of the assu.ptions lade in this routine is that the nu.ber of ooerations are either equal to the nuiber of lachines or 1. That is, if you specified 3 lachines, either all the lachines are identical or they are all different.

In the first case the lachines therefore perfors the sate task and each jart visits only one lachine

In the second case the lachines perfori different tasks and each part or task lust visit, or be perforied on, each aachine.

Also, assuie that the aachines and the IN and OUT conveyor belts lie on the arc described by the robot's ara sweep.

ENTER RETURN KEY TO CONTINUE:

ENTER C-ELL OR L-INE FOR LAYOUT TYPE: C

ENTER THE NUMBER OF MACHINES: 3

ENTER NUHBER OF PRODUCTS; 1

ENTER NUMBER OF TASKS OR OPERATIONS: 1

ENTER LOT SIZE FOR PRODUCT 1 : 2 0 0

ENTER HANDLING TIME/UNIT FOR PRODUCT 1 (SECONDS) C f } < — - WAIT:

Figure 39: Continued

Page 229: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

I H2 I

2 1 2

I Ml t _ _ _

5/

I I

/ \

( R )

! M3

14 5\

IN I OUT

\/\/ \/\/

Consider the above 3 lachine CELL-type layout. Enter the distances in the order proated by the systeii.

ENTER VALUE OF DISTANCE 1 IN THE LAYOUT (INCHES):

1 H2

1 HI

H 5/

I I

/ \

( R )

M3

14 5\

IN 1 I OUT I

\/\/

Consider the above 3 lachine CELL-type layout. Enter the distances in order pronted by the systet.

the

ENTER VALUE OF DISTANCE ENTER VALUE OF DISTANCE ENTER VALUE OF DISTANCE ENTER VALUE OF DISTANCE ENTER VALUE OF DISTANCE

1 IN THE LAYOUT IN THE LAYOUT IN THE LAYOUT IN THE LAYOUT IN THE LAYOUT

(INCHES) (INCHES) (INCHES) (INCHES) (INCHES)

30 30 35 45 60

Figure 39: Continued

Page 230: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

213

1 H2

I HI I

5/

I / \

( R )

! H3

14 5\

IN !

\/\/

lOUT 1

\y\/

The MiniBua Speed required for this task is : 15 in/s. The code for this value should be used as the LOWER bound for the speed. It lay be repeated as the UPPER bound to achieve equality constraint. ENTER RETURN KEY FOR OTHER TASK DESCRIPTIONS OR R TO REDO THIS ANALYSIS;

CHOOSE DESIRED ROBOT APPLICATION CATEGORY

1 ASSEMBLY/INSPECTION: 2 ARC-WELDING 3 FINISHING OPERATIONS: 4 MACHINING OPERATIONS: 5 SPOT WELDING: 6 HACHINE LOAD/UNLOAD (CNC): 7 HACHINE LOAD/UNLOAD (DIE): 8 MATERIAL HANDLING: 9 OTHER TYPES OF OPERATIONS: 0 TO RETURN TO MAIN MENU

APPLICATION INDEX: APPLICATION INDEX: APPLICATION INDEX: APPLICATION INDEX: APPLICATION INDEX:

APPLICATION INDEX:

APPLICATION INDEX:

APPLICATION INDEX:

APPLICATION INDEX:

B:ASSEMBLY.INS B:WELDING.ARC B:F1NISHNG.0PT B:MACHINE.OPT B:WELDING.SPO B:MACHLOAD.CNC B:MACHL0AD.DIE B:HATERIAL.HDL B:OTHERTPE.0PT

ENTER COMMAND: 8 < • HATERIAL HANDLING

The Codes and Descriptors in the NEXT page have been used to represent the robots in this DATABASE. For the chosen application, YOU will be required to use these attributes to describe a task. Enter the desired range of values for each attribute when prompted.

ENTER RETURN KEY TO CONTINUE OR R TO RESTART:

Figure 39: Continued

Page 231: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

214

K

1 Robot Class (94.41)

2 Applications (96.9Z) 3 Type of Sensors (77.91) 4 Diaqnos. Ability (92.3Z) 5 Repeatability (98.91) 6 Positn. Accuracy (66.2X) 7 Payload (93.91) 8 Linear Velocity (76.41) 9 Angular Velocity (26.71) 10 H.T. B. F. (26.7X) 11 H.T. T. R. (22.11) 12 Coord. Systei (90.31) 13 Nuiber of Axes (98.51) 14 Horizontal Reach (64.IX) 15 Vertical Reach (59.OZ) 16 A n Sweep (66.7X) 17 Wrist Bend(Pitch)(49.71) 18 Wrist YaM (32.8X) 19 Wrist Roll(Snivel)(S5.4X) 20 Robot/Contrls Wt. (92.8Z)

21 Floor Sp.:Hountq.(86.21) 22 Heiory Type (93.3Z) 23 Heiory Capacity (90.31) 24 No. I/O Channels (28.7Z) 25 Drive Train (88.2Z) 26 Proqraiq. Hethods (94.4Z) 27 Std. Effectors (71.8Z) 28 Nuiber of Grpprs. (55.4Z) 29 Safety Features (57.9Z) 30 Mountinq Positn. (72.3Z) 31 Cost: Robot Unit(82.IZ) 32 PoNer Consuiption (48.7Z) 33 Operatinq Voltage (84.6Z) 34 Voltaqe Phase (84.IZ) 35 Voltaqe Frequency (70.3Z) 36 Operatinq Current (38.5Z) 37 Hin Environ. Teip (46.7Z) 38 Hax Environ. Teip (51.3Z) 39 Huiidity Ranqe (11.3Z) 40 Harsh Environ.(34.4Z)

HoM lany significant robot attributes do you want to select by? The sore nuiber of attributes you specify, the less the nuiber of robots that are available for consideration.

r

\

1 Robot CI M l (9*.4t) 21 Floor Sp. :Hou«tg.(8«.2« 2 Applicationi (9S.9X) I I Keaory Typt (93.31) I Tupt of Smorr (77.9:) 23 »»«Mri| Copocitu (98.31) 4 Oiowoi. Abiiitif (92.31) 24 Ho. I/O Chonntis (28.7Z) 5 Rcptitobilitu (98.9X) 2S Qrive Troin (88.2t)

CSOE» 8 VALia COOES

• LIHEAR VELOCITT (IHCHES/HILLIKETEBS): UHSPECIFIED II LV (= 5 IPS I LV (= 127 MPS vaOCITT 21 5(LV<=H IPS I 127(LV(=254 IUPS VELOCITT 31 lg(LV(=2»IPS 254(LV(=5I8 NUPS VELOCITT 41 2B(LV<=38IPS Si8(LV<=762 MPS VELOCITT 51 3I(LV(=4IIPS 762(LV(=IB16 MPS VELOCITT » 4I(LV(=58 IPS H16(LV(=127B MPS VELOCITT 71 58(LV(=M IPS 127B(LV(=1524 MPS VELOCITT 81 6B(LV(=78 IPS 1324(LV(=1778 MPS VELOCITT 91 LV>7» IPS I LV 1778 MPS VELOCITT

EHTER CODE VALUE RAHCE OF Lineor Velocilij (75.4:) FOR FIHISHIHC QPEBftTIW (EXftlPLE: 28.I.4I.9I. ETC. EUTER CTRL-i FOR HELP) (LQIft VALUE: 31 HIGH VALUE: V- •J FOR HELP

Figure 39: Continued

Page 232: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

215

t Kotot C t m (94.4t) 2RMlici t iont(96.9: ) 3 Typt ol Smort (77.9X) 4 Oiifnot; Abiliti (9E.3n SRiputibilitj(98.9t)

CODE I 8 VALIQ COOES

2t Floor Sp.:llowitf.(IS.2Z) 2E Riurg Typi (93.3t) 23Niior<|Copocitu(9f.3t). 24 HI. I/O Chinnils <Z8.7ti 25 Orivi Train (88 .2»

• LiHEAR VELOCITT (INCHES/RILLmETESS): UHSPECIFIEO II LV <= 5 IPS I LV (» 127 MPS VELOCITT 21 S(LV<stl IPS I 127(LV<:2!4 MPS VELOCITT 31 ll(Ly<=2IIPS 2S4(LV(>SBI MPS VELOCITT 41 2I(LV<=3I PS SB8(LV<<762 MPS VELOCITT SI 3I(LV(=4I PS 7(2(LV<>1B1S MPS VELOCITT fil 4B(LV<:SI PS lBlfi(LV<>t27l MPS VELOCITT 71 SI<LV(:(I PS 127B(LV(>I924 MPS VELOCITT 81 6i(LV<:7r PS lS24(LV<cl778 MPS VELOCITT 91 LV)7I IPS LV 1778 MPS VELOCITT

EHTE» CODE VALUE RAHCE OF Linior Vilocitf (75.4XJ FOR FIHISHIHC OPBaTIOH (EXAIFLEi 21.8.41.91. ETC. EHTER CTRL-i FOR HELP), ^ , ^^ (LQII VALUE: 31 HICH VALUE: 41 ): " i ^01 HELP

M

SEARCHING ROBOT NO.: 1 1

ACCUHATIC HACH. CORPORATION 3537 HILL AVE, TOLEDO, OH. 43607 NUHAN-I k n 2O(7OI3O{)0!50l50!50!40l0!0!0!40150l7O!80!70!30!0!60!60l401 70l2OI0!0!4O!90l0!OI0l60!O!7OI30IO!30!O!OI0!0i

419-535-7997

ACCUHATIC HACH. CORPORATION 3537 HILL AVE, TOLEDO, OH. NUHAN-I i II

43607

ORDER CODEI VALUE LONCODE 1 7 50 2 14 70 3 6 50 4 20 60 5 9 40

SEARCHING ROBOT NO.: 2 SEARCHING ROBOT NO.: 3

SEARCHING ROBOT NO.: 195 SEARCHING ROBOT NO.: 196 SEARCHING ROBOT NO.: 197 SEARCHING ROBL. NO.: 198 SEARCHING ROBOT NO.: 199 SEARCHING ROBOT NO.: 200

Fiqure

20 50 10 10 20

HICODE 90 90 90 60 90

419-535-7997

ROBOT 1= 1

39: Continued

J

Page 233: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

2 1 6

INPUT INDEX FOR HATERIAL HANDLING ROBOTS WRITTEN

N

ROBOT i 1 45 93 97 113 136 137 141 147 184

MIIHRPR HP

DESCRIPTION NUHAN M II IRB 60 OR 60/2 CYBOTECH V-15 ELECTRIC DEVILBISS TR-3500N GCA DKP-900 HODGES HRZ-5 HODGES TITAN HODULAR ROBOTICS PROBOT REIS RR-625

RnROTc pniiNn \ in

TYPE P TO SEND OUTPUT TO PRINTER OR RETURN TO CONTINUE:

Figure 39: Continued

Page 234: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

CHAPTER V

COST COMPONENTS IN THE ROBOT SELECTION PROBLEM

Introduction

Let a task to be performed with a robot be denoted by

the letter j, and its characteristics or associated vari­

ables by the vector Y. Similarly, let the robot be denoted

with the letter i, and its variables by the vector X. An­

other factor that will influence the performance or interac­

tion of the task and robot is the environment, which was de­

noted by k, and its variables by Z.

The most basic form of equipment selection problem is

one in which only one task is to be performed on one product

at any given time. There are several equipment (robot) op­

tions but only one must be selected. Other forms of single

equipment selection problems were identified in Chapter 4,

and are repeated here for convenience.

1. 1 machinel operation and 1 product,

2. n machines, I operations and 1 product; n>=2,I>=l,

3. n machines, 1 operation and K products; n>=2,K>=l,

and

4. n machines, I operations and K products; n,I,K>=2.

217

Page 235: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

218

The first three models are variations of the fourth model

for when n=I=K=l in (4), the first model results. Also the

second and third models result when the appropriate values

are substituted into the model. The decision criterion was

to minimize the total Operating Cost from using the chosen

robot system.

Cost Components in the Robot Select ion Problem

As discussed in Chapter 4, the constraints of the se­

lection problem can be taken directly from the robot coding

system. These variables are flexible, and since the selec­

tion process is "interactive, they can be made as tight as

possible to weed out as many undesirable robots as possible.

However, in some situations two or more robots may meet

these constraints. In this case a more decisive selection

rule was needed. The selection rule chosen for this study

was minimum operating cost, and in order to address this op­

erating cost concept, a set of cost models were developed.

Several cost models have been developed by some re­

searchers {47,48,76,95} for assessing the cost effectiveness

of a given production system. In developing these models,

these researchers have identified several cost components

some of which are:

Page 236: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

219

1. Operating cost

2. Job waiting cost

3. Machine idle cost

4. Opportunity cost

5. Investment cost

6. Overhead cost

7.. Labor cost

For example, Gupta and Dudek {48} in investigating the opti-

mality criteria for flowshop schedules indentified the first

four, while Knott and Ghetto {76}, in addressing the robot

selection problem looked at it from the cash flow point of

view and identified the last three.

Identification of the Cost Components

Minimization of total operating cost was stated earlier

as the decision criterion for selecting one robot system

over another. For the purpose of this study three distinct

cost components (Investment, Overhead and Production costs)

were identified and formulated. The first two (Investment

and Overhead costs) suggested by Knott and Ghetto {76} were

formally defined, analyzed and formulated for the robot

selection problem. Another cost component not addressed

explicitly by the researchers, and of interest in this study

Page 237: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

220

was production cost. From the four single equipment selec­

tion models identified earlier, and these three cost models,

twelve distinct problems needed to be formulated and solved.

However, this number can be reduced to three if only the

composite problems are formulated. A composite problem is

defined as that from which other problems can be derived.

Therefore, the formulation problems were those of the multi­

ple tasks and multiple products. Let I denote the number of

tasks, and K the number of products. Then for the four mod­

els identified earlier, the first two of the following

equipment selection cases were developed.

1. CASE A: applies if 1=1 and K=l

2. CASE B: applies if 1=1 and K>=2

3. CASE C: applies if I>=2 and K=l

4. CASE D: applies if I>=2 and K>=2

In later analysis these models will be referenced by their

case letters. These cost components (Investment, Overhead,

Production) are discussed subsequently for the CASE D equip­

ment selection model.

Investment Cost (CI^)

Investment cost is defined in this study as that ini­

tial cost expended for the purchase of the robot basic unit

and its tooling requirements. In some instances the work-

Page 238: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

221

place may have to be redesigned to accommodate the robot.

If this cost is the same regardless of the type of robot,

then it is task dependent and will not affect the choice of

any robot over another. It may therefore be left out of the

analysis. Otherwise it is included in the analysis. In ei­

ther case, these are costs that are incurred only once and

are carried over the rest of the productive life of the ro­

bot. The cost will depend to some extent on the number and

similarity of tasks the robot is expected to perform. For

example, if the robot belongs to robot class 2, and it is

also expected to perform a pick and place task, then there

are two distinct tasks, involving two different end of arm

tooling requirements.

Let C]3 represent the initial cost of the basic robot r

unit, and C^ the cost of redesigning the workplace and mod-r

ifying the interface machines due to robot r. Then the to­

tal investment cost CI;j , on robot r may be represented as:

I

CI^ = Cb ^ Cw - E (Ct )i ^ Cs > Ca 5.1 ^ r r i = i r r r

where,

CI^ = Investment cost for robot r

C = Initial cost of basic robot unit b r

C = Cost of workplace redesign due to robot r w r

C = Cost of special tooling and peripheral r

equipment for robot r

Page 239: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

222

Cg = Installation and start up cost for robot r r

C^ = Planning and consultation costs for robot r r

I = The number of unrelated functions the robot

is expected to perform.

Overhead Cost (CH .)

Overhead costs are those costs that can not be charged

to the line of product the robot is used to manufacture.

These costs include cost of maintaining the robot, cost of

power and other special services for operating the robot and

taxes and insurance charges. The installation of automation

devices, especially robots, may result in the direct loss of

human operators. In some industries these personnel are re­

trained for other jobs like robot programming and mainte­

nance. And still in some others, due to certain labor con­

tracts, they are retained in some capacity until attrition.

In this case personnel salaries are labor costs that are not

related to production, and are therefore overhead costs.

Let CH represent the total overhead cost for any robot r. r

Then,

CH^ = C^ - C * I (C ) . q 5.2 r r p=l ^r ' r

where,

CH = Overhead cost for robot r

Page 240: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

223

^m ~ ^ ° ^ ^ °^ maintenance/year using robot r r

(about 5-10% of the cost of the basic unit {117})

C = Cost of power supply per year with robot r ^r

C = Cost of retraining maintenance personnel ^r

for robot r

C, = Cost of indirect labor r P = Number of personnel

As was discussed in Chapter 3, equipment reliabilities

are often correlated with equipment complexity. Therefore,

the more complex a piece of equipment is, the more expensive

it is to maintain. This is not always the case, however,

and the best source for maintenance data is through applica­

tions experience. As of this writing no such data exist for

industrial robots. Estimates range from as low as 5% of

the cost of the robot basic unit to as high as 10% {117}.

The cost of power supply for robots can again be best

determined through applications experience. For those robot

systems that use all electric power units, this value can

usually be estimated using the KvA values quoted by the man­

ufacturers. Depending on whether the robot syste.m will op­

erate at full or half duty cycle, the power requirement C

can be estimated as: Pr

C = c (KvA)*(v)*(u) 5.2.1

where,

Page 241: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

224

Cp = Cost of power supply ($/hr)

Cp = Cost /kilowatt hour of power ($/hr)

KvA = Kilovolt amperes

V = Number of hours the robot operates/day

u = Number of working days/year

For other types of robot drive systems the power re­

quirement will be the sum total of the requirements for the

individual power components. Although there can be an all

electric robot drive system there can not be a robot that

does not use electric power directly or indirectly. A pneu­

matically driven robot needs some form of electric power to

generate the air pressure. Determining the exact power re­

quirement in this case becomes only more involved.

Production Cost (CP^)

This cost component is exceedingly important in light

of the very nature of robot systems. There are several

species of robots with varying types of operating capabili­

ties. This cost is therefore a function of the robot's de­

sign attributes. For example, programming method, geometric

configuration and number of coordinate axes vary from one

robot to another, and do affect the cost of using the robot

one way or another. Let the production cost of the robot be

denoted by CP .. If K represents the number of differer.t

Page 242: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

225

products, then the setup time in hours due to these products

is defined as;

K Sv = Z s, 5.3 ^ k=l ^

Also if I represents the number of different tasks, then the

setup time due to these tasks is defined as;

I Si = E Si 5.3.1

i = l

Let S^ denote the total setup time for robot r, then S is r

defined as;

K I Sr = E S]^ + Z Si 5.3.2

k=l i=l

The differences in setup times from one robot to another is

a function of each robot's operational characteristics.

Some of these robot variables can be taken directly from the

robot coding system and are:

1. Robot class

2. Number of axes

3. Coordinate system

4. Programming method

5. Memory type

Page 243: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

226

6. Memory capacity

7. Sensor technology

8. Diagnostics capability

9. Drive train

10. Work envelop

11. Number of grippers

Similarly, the differences in setup times from one task to

another is a function of the task complexity and can also be

taken directly from the coding system. Some of these are:

1. Applications code

2. Payload

3. Accuracy requirements

As was developed in Chapter 4, the lot sizes, cycle times

and other layout variables can also be estimated and used to

establish these differences. Different combinations of I

and K result in the following setup models.

Sr » Sj.;

I Sr « Z Si;

i«l

K

k«l

I K S_ « E s * Z s ^ i=l ^ k=l ^

if I - 1, K = 1,

if I >= 2, K =. 1,

if I « 1, K >= 2,

if I>»2, K>=2.

5.3.3

5.3.4

5.3.5

5.3.6

Page 244: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

227

Another component of production cost is cost due to

direct labor on the pieces or parts produced. Let Qj denote

the demand per year for each product k, and t ^he cycle ^k

time per product (time it takes one component of a product

to enter and leave the cell; i.e., operating time plus han­

dling time within the cell). Then the total cycle time for

the kth product is (t^*Q)]^. Therefore, the total cycle time

for K products is.defined as;

K t^ = Z <t *Q)j 5.3.7 ^ k=l

The total production cost is then defined as;

I K K CPr = bi( Z Si - Z s^) + h ( ^t^*Q)k 5.3.8

i=l k=l k=l

where h. is the hourly cost of labor at the setup shop, and

h^ is the hourly cost of labor for quality inspection,

transportation of parts from one machine to another, etc.

This is under the assumption that the robot is setup only

once during the analysis period. Otherwise, the production

cost is given by;

K K CP

^ 1 = 1 k = l •k=l ^

Page 245: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

228

K h2< Z (t^*Q)k) 5.3.9

k«l

where qj is the lot size for each type of product, and the

(Q/q)) term of equation 5.3.9 is the number of times the ro­

bot is setup per analysis period. Equation 5.3.9 can be

further analyzed and formulated to include the learning

curve of the setup personnel. For example, it would take

more time to setup the robot for the first time. However,

this time can be expected to decrease over the years as the

personnel garner more experience. For the purpose of this

study, only the terms of equation 5.3.8 will be used for the

production cost component.

Total Operating Cost (CT ,)

The total operating cost for using a robot can be taken

as the sum of all the cost components described above.

Therefore, if CT . represents the total operating cost incur­

red by using robot r, then,

CTr - CIr - CHr * CPr 5.4

Substituting equations 5.1, 5.2 and 5.3.8 into equation 5.4

gives

CT = C, - C ^ Z (C. ). - C * r b w : _ i t i s r r 1=1 r r

C a r

Page 246: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

229

P ^ ^ ^ Cp + z (c^ )p ^ q

r ^r p=i ^r ^ ^r I K K

^ hi( ^ s^ ^ Z Sj ) h2( Z (tc*Q)k) 5.4.1 i=l k=l k=l

The total operating cost due to robot r, is therefore

the sum of the costs due to investment, overhead and produc­

tion. A robot is chosen if this total operating cost is

minimum compared to those of other robot candidates. Drop­

ping the r subscripts, the robot selection problem can now

be formally stated as follows:

Minimize CT = CI -»• CP •»- CH 5.5

ST Y j + Z]^ <= Xi 5.6

where,

Xi = Descriptive variables for robot i

Y-j = Descriptive variables for task j

Zk = Descriptive variables for environment k

CT = Total operating cost

CI = Investment cost

CP = Production cost

CH = Overhead cost

Page 247: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

CHAPTER VI

EVALUATION OF THE CARSP SYSTEM

Introduct ion

In order to demonstrate conveniently that the CARS?

system is a good alternative to the current trial and error

methods of robot selection, a series of verification proce­

dures were undertaken. By definition, evaluation is the

process of determining the worth or validity of a method.

This process will be discussed subsequently in two parts.

In the first part, sensitivity analyses of the CARSP system

were conducted using statistical procedures. In the second

part, the ease of use and reliability of the CARSP system

were investigated. This part involved "users" who ran the

CARSP in an interactive mode.

Sensit ivity Analysis of the Selection Problem

Sensitivity analysis is used in most investigative

studies to observe the behavior of a proposed model when

subjected to random variates of the model parameters. Since

several robots will be subjected to the same model, the

immediate task for such a model would be to identify the

critical parameters of the competing systems vhich T.ay

230

Page 248: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

231

affect future costs. The robot system that has the minimum

total operating cost while meeting the desired performance

demands will be chosen as best among the competing alterna­

tives.

Ideally, the best method of carrying out this analysis

would be through some form of statistical analysis proce­

dure. This approach will not only provide a strong basis

for analysis (since the problem can be varied and several

options studied) but a greater number of problems for each

model can be studied simultaneously. Two approaches were

taken for the sensitivity analysis as follows.

1. A main frame computer was utilized to conduct a sta­

tistical sensitivity analysis using the beta distri­

bution to estimate the total operating cost of the

robots, and

2. A sensitivity analysis was conducted involving

"users" working the CARSP system in an interactive

mode on a microprocesor. In this case the input data

was from actual cost data of robots in the CARSP sys­

tem database. Given the possible range of cost val­

ues for each robot the mean and standard deviations,

assuming a normal distribution, were calculated and

used for this analysis.

Page 249: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

23 2

Probability Distribution

Robot systems vary in cost from a little under $2,000

for some table-top educational types to well over $650,000

for the most advanced industrial types {64,104}. Adding the

fact that the workplace may have to be redesigned to accom­

modate the robot, and a probable need for special tooling

devices, a varied initial capital expenditure will therefore

be incurred. There is no empirical basis to define a spe­

cific distribution for a robot's cash flow with certainty.

Some researchers of robotics {76,139} have, however, used

the beta distribution to solve the robot cash flow problem.

Because the exact values of the cost functions defined in

Chapter 5 are unknown, and the fact these cost values will

usually tend to concentrate around a central value, the beta

distribution was used in this study to estimate the expected

values of the mean and variance of the cost models of the

robot selection problem. One advantage of using the beta

distribution is that it has a flexible shape determined uni­

quely by the mode m, and the two extreme values a and b.

For the beta distribution, the expected value of the mean

and variance for a variable T, is given by:

E(T) = (a + 4*m +b)/6, and

V(T) = {(b - a)/6}^

Page 250: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

233

With this distribution assumed, the robot investment,

production and overhead costs are then given by their ex­

pected values as:

E(CI) = (CI^ ^ 4*CI^+ CIb)/6 6.1

V(CI) = {(CI^ - CIb)/6}^ 6.2

E(CP) = (CPa + 4*CPni + CPb)/6 6.3

V(CP) = {(CPa - CPb)/6}^ 6.4

E(CH) = (CHa + 4*CHn, + CI%)/6 6.5

V(CH) = {(CH^ - CHb)/6}^ 6.6

The a subscript is the optimistic, m the most likely (mean)

and b the pessimistic estimates respectively. The expected

value and variance for the total operating cost for each ro­

bot is given by:

E(CT) = E(CI) + E(CP) + E(CH) 6.7

V(CT) = V(CI) + V(CP) + V(CH) 6.8

Net Present Worth

Except for the investment cost, the cash flows calcu­

lated above are expected to occur some time in the future.

In order that a common basis for comparison can be

established for the alternative robot models, the Net

Present Worth (NPW) of the cash flows was used. The NPW was

used because:

Page 251: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

234

1. It recognizes the time value of money based on the

desired value of i,

2. The value of a given cash flow can be brought to any

given time frame, and

3. The present worth amount of a given cash flow is uni­

que for a given value of i.

The Present Worth formula is given as:

n PW{i)j- -^E^(CT)rt(l + i)"^ 6.9

where,

PW(i)r » The present worth at an expected rate of

return i on robot r.

(CT)rt ' Total cash flow for robot r for the time

period t.

n « The number of time periods.

The expected NPW and variance is:

n E{(NPW)(i)_} « E(CT)^ * Z E(CT)^(1 > i T^ 6.10

0 - =1 ^^

V{(NPW)(i)r} » Z {V(CT)rt(l * i) 1 6.11 t=l

Page 252: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

235

Statistical Sensitivity Analysis

Using the file of the robot codes and a random number

generator a database of 200 robots was created. In a random

number generator each number has an equal probability of oc­

currence. Therefore, each level of an attribute in the cod­

ing system has an equal probability of occurrence. These

code levels were then transformed into their probability

distributions {71}. As an example, the first attribute (Ro­

bot-Class) of the coding system has 10 levels, therefore,

its frequency distribution is given by;

0.10 0.10 0.10 0.10 0.10 0.10 0.10 0.10 0.10 0.10

Similarly, the frequency distribution for attribute 4 with

only 3 levels is,

0.33 0.33 0.33

and so on.

These probability distributions were calculated for ail

40 attributes of the coding system, and then transformed

into their cumulative probability distributions {^1}. These

values are shown in Table 46 as a transposed matrix. The

columns, therefore, represent the levels of each attribute,

and the rows represent the 40 attributes used to describe

the coding system. The matrix entries Cij are the cumula-

Page 253: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

236

TABLE 46

Cumulative Probability Matrix For Robot Codes

Code Level Values 00 10 20 30 40 50 60 70 80 90

1

A 3

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

T

T

R

I

B

U

T

E

N

U

M

B

E

R

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

0.33 0.67 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.: 0 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

Page 254: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

237

Table 46 Continued

Code Level Values

00 10 20 30 40 50 60 70 80 90

A

T

T

R

I

B

U

T

E

N

U

M

B

E

R

21 1

22 1

23 1

24 1

25 1

26 1

27 1

28 1

29 1

30 1

31 1

32 1

33 1

34 1

35 1

36 1

37 1

38 1

39 1

40 1

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.14 0.28 0.43 0.57 0.71 0.85 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.20 0.40 0.60 0.80 1.00

0.25 0.50 0.75 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.17 0.33 0.50 0.67 0.83 1.00

0.17 0.33 0.50 0.67 0.83 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

Page 255: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

238

tive probability distributions of getting a value ] for at­

tribute i. An "—" entry means that the given attribute was

not defined at the given level.

Generation of Codes for Robot

Database

A random number was drawn between the range 0 - 1 and

compared with those given in table 46 for the robot attri­

bute under consideration. If the random number was less

than or equal to a given cumulative probability value of the

attribute under consideration, the attribute was coded with

the code level value corresponding to this random number.

For example, suppose that the code for attribute 21 were to

be generated and that the random number drawn was 0.456.

Then the code value for attribute 21 would be 40. Similar­

ly, the code value for attribute 34 would be 20 if the same

random number was drawn. This process was continued until

all the codes for the 200 robots were generated.

Generation of Task Codes

Defining the Range of the Task Codes

Suppose for example, that a material handling task was

to be analyzed, and that the variables of the task are as

shown in Table 47. The first column of the table shows the

Page 256: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

239

TABLE 4 7

Data for Studying Contributions of the Cost Components

MATERIAL HANDLING TASK

Code No.

Task Variables

Case A: 1/1/1 Case B: 1/1/4 Code Value

2

7

21

38

39

Application

Weight

Floor Space

Temperature

Hum i d i t y

Mtl. Handling

30 #

60 Sq. Ft

80

0 - 90^

Mtl. Handling

30 #

60 Sq. Ft

80

0 - 90%

= 80

30<W<=70

0<FS<=70

T> = 10

H> = 10

codes for these task variables, and the last column shows

the code values as:

CODE # 7 21 38 39

VALUE = 80 > = 30 < = 70 >=10 >=10

This code was found by a table look-up of the given

attributes as described in Chapter 3. Recall that the

coding system is made up of 40 attributes and that each

attribute has levels varying from 3 to 10. As an example

Page 257: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

240

of the direction of the inequality signs. Table 47 indicates

that the maximum weight for any part is 30 lbs, or a code of

30. Therefore, the minimum lifting capacity for any candi­

date robot is 30 lbs. In order to allow for possible future

part weight variations, a greater than or equal to sign is

employed. Robots with less floor space requirements than

are currently available are more desirable, therefore a less

than or equal to sign is used. Following the same reasoning

a greater than or equal to sign was used for codes 38 and

39.

Generation of the Task Codes

A string of codes for which the attributes of Table 47

apply was generated using the random number generator. This

code was then compared with those of the robots in the data­

base to find those robots that can perform the task. The

code was discarded if no robot in the database could perform

the task. This process was continued until a task was gen­

erated which could be performed by at least 2 robots in the

database. Table 48 shows the task code and the codes of the

robots in the database that could perform the task. The

task number of 36 means that 35 tasks were generated earlier

but resulted in an unsuccessful database search.

Page 258: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

241

in

1-1

L

1 o 1 1 1

O o, 1

1 " 1 O 00

1 '-' rn 1 1 r-.

m 1

in 1

1 ' 1 1

m 1

'^ 1 fN '

n 1 r-1 '

' 1 o 1 ' 1

00 1

1

vo 1 fM 1 in 1

Si ^ \

P ^ 1 w 1 J ^ l H Q 3 1 r

^ 00 c H ^ 5 5 r- 1

VD 1

^ 1 ^ 1 S| 3 | ril ::JI o 1

1 ov 1

1 00 1

1 1 1

" 1 " • I - 1

§ ' 1 -1

o

o

o in o

o CO

o

o

O

O

o

o r-t

o CM

O VO

o 00

o r-t

o

O

n o r-t

o CM

3 o 3 <N ; o

< o t 0 0

o

o r-l

o

O

O i n

o 00

o r-i

o r-t

O

O

o

o

o

o

O 00

o 00

o

00

o

o

o

o m o

o

o

o

o VO

o

o i-t

o VO

o

o

o

o in

o

o m o r-t

o rH

O i n

o

o rri

O

O

o CM

O

o CM

O

o (N

O m

o n o

o VO

o r-t

o r-t

O

o CO

o r-t

r-t

o VO

o

o ft

o <N

o

o rn o

o in

o

o r-t

O t ^

O VO

o in o

o rH

O cn o CO

o

o 00

o CM

o CN

o

o r-t

o m o

o m o m o

o VO

o CN

o 00

o 00

o

o

o

o

o CN

o VO

o 00

o 00

VO

r-t

o CN

o 00

o

o

o

o fN

o r-t

o VO

o C7\

o CN

o CO

o

o VO

o

o

o m o VO

o 00

o m o

o

o

o <N

O r-t

O CN

O VO

o

o r-l

o in

o

o

o 00

o i n

o i n

o 00

o 00

o CN

o 00

o 00

o r-t

00 i n r^

o m o <JV

O

m o CN

o VO

o

o

o i n

o

o 00

o m o VO

o m o m o

O r-t

o CO

o r-H

o

o 1

o 1 r-l 1

O '

m o 1 00 1

o m 1 o in 1 O 1 rn o 00 1 o , oo o ,

o in o 1 CN '

o 1

o VO 1

00 1

C3 1 r-t 1

o 1 CTl

r-l

o 1

O , 00

° J s 1

Page 259: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

242

To investigate how reliable the robot selection model

was in choosing the cost effective robot, a set of selection

criteria was. defined as follows:

1. Choose the robot with minimum total first period op­

erating cost as defined by equation 5.4.1, and per­

form a sensitivity analysis on the selection to de­

termine how often the criterion selected the cost

effective robot, and

2. Choose a robot with minimum net present worth of a

projected life operating cost over a specified number

of future periods.

Generation of Cost Values

Except for the cost of the basic unit of each robot

which was determined by the value of code number 31, tne

costs for using each of these 5 robots were generated ran­

domly using the variables of the cost components defined by

equations 5.1, 5.2 and 5.3.8. In order that these costs can

be properly attributed to the given robot, they were weight­

ed using the codes of the robot attributes that are func­

tions of the corresponding cost component. This approach

guarantees that two robots that have the same cost value for

a given cost component, but otherwise have different code

values, will have different cost functions for the purpose

Page 260: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

243

of this analysis. To expound on this point, suppose two

robots had the following code values and that in generating

the setup time of the robots the same value of 2 hours was

CODES

1 . 12 13 . . 25 . 40

ROBOT #

66 30 . 20 40 . . 40 . 10

163 40 . 40 30 . . 30 . 10

returned in each case. Then by using the code value of co­

ordinate system (code 12) and number of axes (code 13), as

weighting factors for the respective robots, weighted setup

times of 2*(coordinate system + number of axes + ...) hours

would result. In this example where only codes 12 and 13

were used, weighted setup times of 2*(2 + 4)hrs and 2*(4 ^

3)hrs would be used respectively for robots 66 and 163. Re­

call that the robot coding system is a one digit one attri­

bute system that was upgraded to a two digit one attribute

system in order to enhance the CARSP system software design.

Therefore, in using the coding system to calculate the

weighted values used in this study, the one digit version

was used. Robot codes-were used in this manner when the

production and overhead cost components were calculated.

Page 261: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

244

The production cost of a robot, as defined on pages 224 to

228 is a function of several attributes of the robot. Some

of these attributes were identified as:

a) Robot Class: The lower the class code, (except 0

for Unspecified) the more expensive the robot will

tend to get. Therefore, as a weighting factor,

the reciprocal of this attribute was used. That

is, the weighting factor is inversely proportional

to the code number of the attribute.

b) Number of Axes: The more the number of axes, or

the higher the code for the number of axes, the

more expensive the robot will tend to get. There­

fore, direct proportionality was used.

c) Coordinate System, Programming Method, and Memory

Type or Capacity all have direct proportionality

with the weighting factors and are, therefore, ap­

plied directly.

Only these attributes were used for this study since they

are the most distinct attributes of a robot that could have

considerable impact on the cost of most robots. To simplify

the problem, a common value of h (hourly cost of labor) was

used in this analysis and was assumed to be $10/hr.

Before these cost functions were generated, however,

some restrictions on the values each component can take vere

made as follows.

Page 262: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

245

1. The maintenance cost for any robot model must not be

greater than about 10% of the cost of the basic robot

unit. This is the value that has been cited by some

researchers {117}. Therefore, the value generated

for the maintenance cost for any robot was between 5%

and 10% of the values used for the cost of the ro­

bot 's basic unit.

2. Setup times for any robot must not exceed 10% of the

uptime {117}. Therefore, the value generated for the

setup time on any robot was restricted to a value

which was between 5% to 10% of the total time needed

for the robot to complete the task. This total -com­

pletion time was calculated as the total cycle time

of the products (lot size multiplied by the cycle

t ime).

3. Due to randomness, some robot codes will be zero.

For those codes that were used in weighting the vari­

ous cost components, they must not be zero.

Suppose in generating the cost of power supply component of

overhead cost of the following robots that a value of 3 dol-

Page 263: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

246

CODES

1 . . 25 . . 32 . 40

ROBOT #

25 30 . . 20 . . 30 . 10

37 40 . . 30 . . 40 . 10

lars was returned. Then the actual cost of power supply on

robot 25 would be 3(energy consumption + 1/drive train) or

3*(code 32 + 1/code 25). Substituting the actual values of

these attributes, the weighted costs of power supply would

be 3*(3 + 1/2) and 3*(4 + 1/3) dollars respectively for ro­

bots 25 and 37. It is assumed here that an electrically

driven robot is more expensive to operate in terms of power

consumption, hence the reciprocal of the code for drive

train was used. In generating the code for drive train, for

example, it was, therefore, important to restrict the value

to a number other than zero.

Select ion Criteria

Minimum Operating Cost

The robots found from the above database search were

then subjected to the cost model of Chapter 5. The ccst_

components were generated randomly as explained earlier for

Page 264: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

247

each of the cost components of equation 5.4.1 to find the

total operating cost for the five robots. These costs are

shown in Tables 49 and 50 for the cases A and 3 of the se­

lection problem respectively. Using the minimum total oper­

ating cost as the selection criterion, robot 146 was select­

ed in case A and robot 158 was selected in case B.

TABLE 4 9

Minimum Total Operating Cost for Candidate Robots: CASE A

ROBOT #

84

137

146

158

168

CHOOSE RBT # 146

MIN

MIN

TOTAL OPTG. COST (00)

522

467

290

597

724

TOTAL OPTG. COST 290

Page 265: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

248

Sensitivity Analysis; Mininimum To­tal Operatinq Cost Criterion

Although the values used for the above analysis were

generated randomly, it was still necessary to ensure that

there was little or no bias in the procedure. For example,

it can not be proven conclusively, based on only one set of

cost data, that the selections made above were correct to

TABLE 50

Minimum Total Operating Cost for Candidate Robots: CASE B

ROBOT #

84

137

146

158

168

CHOOSE RBT #158

MIN

MIN

TOTAL OPTG. COST (00)

18360

6089

12157

1210

8217

TOTAL OPTG. COST 1210

Page 266: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

249

any degree of certainty. A change in the random number

generator seed could well have pointed to a different robot

as the cost effective robot in each case. To minimize this

possibility, costs were generated, as specified above, 1000

times and the selection rule exercised. A count of the ro­

bot chosen at end of each run was kept and is shown in Ta­

bles 51 and 52 for the respective cases. Column 2 of Tables

51 and 52 shows the values of the average minimum total op­

erating cost for the 1000 test problems. Columns 1 and 3

show respectively, the robot number and the number of times

TABLE 51

Reliability of the Selection Criterion: CASE A

IRBT #

1 t

1 84

1 137

1 146

1 158

1 168

1 T

AVG(MIN TOTAL (00)

589.65

700.41

361.36

562.56

946.14

COST) 1 1 NO JMIN 1 1

A. T 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1

1 . OF TIMES 1 COST CHOSEN 1

1 1 1. T 1

133 1 1

82 1 1

670 1 1

95 1 1

20 1 1

PERCENT

13.30%

8.20%

67.00%

9.50%

2.00%

+

Page 267: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

250

TABLE 52

Reliability of the Selection Criterion: CASE B

I RBT # I AVG(MIN TOTAL COST) I NO. OF TIMES I PERCENT I I I (00) IMIN COST CHOSEN I I I I I I I I 1 ^ ^ ^ I I I I I I 84 I 1 1 6 4 7 . 9 8 I 35 I 3.50% I I I I I I I 137 I 5 2 6 2 . 7 0 I 200 I 20.00% I

146 I 6 7 4 0 . 1 3 I 125 I 12.50% I 1 I

158 I 3 0 5 1 . 7 4 I 545 I 54.50%

168 I 6 9 2 6 . 3 7 I 95 I 9 . 50 o.

it was chosen as the cost effective robot during the 1000

times this criterion was exercised. Column 4 shows this

number as a percent of 1000. The cost effective robot in

each case, defined earlier as that with the minimum total

operating cost, was chosen 67% and 55% of the time in the

respective cases.

Net Present Worth

The cost components generated in the preceding section

were the first operating period costs for each robot. In

using the minimum total operating cost criterion the deci-

Page 268: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

251

sion to choose any robot was based only on the data generat­

ed for this first period operating cost of the robots. A

sensitivity analysis was then conducted to investigate the

reliability of this selection criterion in choosing the cost

effective robot.

Another variation of the above decision model is the

net present worth (NPW) amount of future costs of the ro­

bots. As discussed earlier, incorporation of NPW in a deci­

sion model has been used a great deal because it recognizes

the time value of money based on the desired minimum accep­

table rate of return (MARR) i, the value of a given cash

flow can be calculated over any given time frame, -and the

present worth amount of a given cash flow is unique for a

given value of i.

Conditions of Test

Three cost values were generated, for each cost compo­

nent of equations 5.1, 5.2 and 5.3.8, for each robot. These

cost values were assumed to be the optimistic (C ), most

likely (C2) and pessimistic (C3) costs of the cost component

under consideration, so long as the optimistic and

pessimistic costs were within 20% of the most likely cost.

This range is consistent with the range of costs on robot

units quoted in some literature {135}. The respective

Page 269: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

252

costs (optimistic, most likely and pessimistic) were then

summed in order to obtain the corresponding optimistic, most

likely and pessimistic costs for each robot's cost equa­

tions. As an example, summing the optimistic (C^), most

likely (C^) and pessimistic (C ) cost components for invest-

ment cost (CI) resulted in three investment cost values

(CI ,CI ,CI, ) for each robot. Three cost values were calcu-a m D

lated in this manner, for each robot, for other cost equa­

tions of Chapter 5 (overhead and production costs), for a

given test period. The first condition of these cost values

(Table 53) was of the form

c, <= C^ <= C^. 1 2 3

If C =C =C , then equality constraints apply and it is known

for certain what the values of the cost components are. If

C <C <C. , then strict inequality constraints apply in all

cases and it is not certain what the values of the cost com­

ponents are. However, it is known that this value varies

between C and C .

The expected values and variance of the total operating

cost were calculated for each robot by applying -the

corresponding values of the cost components of equations 6.1

to 6.8 to equations 6.10 and 6.11, and the PW amount was

calculated using equation 6.9. The total operating cost for

Page 270: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

TABLE 53

Test Conditions

253

1. Cj<=C,<=C3

2. Expected MARR on Investment = 30'

3. Number of test periods = 5 years

each of the candidate robots for the five year test period

are documented in Tables 54 and 57 (pages 254 and 259 re­

spectively) for the respective cases of the robot selection

problem. The expected values of the total operating costs

and variance of the total operating costs are shown in Ta­

bles 55 and 58 (pages 255 and 260 respectively), and the ex­

pected net present worth and variance of the net present

worth amount for the respective robots are documented in Ta­

bles 56 and 59 (pages 256 and 261 respectively).

Utilizing the NPW criterion, the cost effective robot

(robot 146) was chosen in case A. In case B, however, uti­

lizing the same NPW criterion robot 168 was chosen rather

than robot 158 (the cost effective robot). According to

Knott and Getto {76}, however, the general decision making

process with the net present worth procedure is to select

Page 271: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

254

TABLE 54

Projected Total Operating Costs for 5 Year Period: CASE A

1 Total

IRBT # 1 t I 1 1 la 1 84lm 1 lb 1 1 1 1 1 la 1 1371m 1 lb 1 1 1 1 1 la 1 1461m 1 Ic 1 1 1 1 1 la 1 1581m 1 Ic 1 1 1 1 1 la 1 1681m 1 lb ! 1

. Costs

0

906 923 965

1734 1857 2000

922 951 976

1340 1396 1446

2454 2497 2635

(Beta

1

1046 1116 1164

635 668 691

699 705 785

685 703 757

991 1046 1114

Distr.)

2

1355 1405 1461

865 895 943

727 751 842

841 891 963

1121 1167 1218

For Prds.

3

1500 1587 1604

776 812 832

563 579 594

764 767 860

1062 1130 1156

Indica

4

1358 1427 1497

641 672 704

700 736 769

705 735 737

866 898 947

ted (00)

5

1123 1180 1268

641 690 725

783 861 882

872 935 1013

744 771 833

+

"first the systems with the lowest E(NPV), followed by com­

parison of their respective V(NPV)" {p. 164}. Using these

guidelines, the following decisions can be made from the

results of Tables 56 and 59.

Page 272: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

255

TABLE 55

Expected Total Operating Costs for 5 Year Period: CASE A

I -

E(CT) and V(Cr) For Periods Indicated (00)

RBT #

r

84

137

146

158

E(CT)

V(CT)

E(CT)

E(CT)

v(cr)

E(CT)

V(CT)

168

. _ 1_

1

927 1112 1406 1575 1427

9662 38651 31187 30032 53638

1860 666 898

V(CT) 196514 8704 16900

950 717 762

8100 20534 36710

1395 709 894

809

8704

578

2662

782

672

11025

735

31187 14400 41330 25600

730

2840

1185

58370

687

19600

851

13225 27225

937

55225

E(CT) 2512 1048 1167 1123 900 776

V(Cr) 90962 42025 26114 24523 18225 21992

1. In c a s e A r o b o t s 137 , 146 and 158 were s e l e c t e d s i n c e

t h e y had the l o w e s t E(NPW), wi th robot 146 having the

l e a s t E(NPW). Comparison of t h e i r V(NPW) showed t h a t

the E(NPW) for the c o s t e f f e c t i v e robot v a r i e d the

l e a s t .

Page 273: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

256

r

^ f

I- +

00

o

VO to H CN iH rsi

CM

ro

ro ro 00 ro VD

O 00 00 ro ro

<7\ VO ro

o o

cvj

o ro ro ro

ro

o in

-1

H m

o

ro

CN

r-i ro

VD

ro 00

in in 00

M

r

ro CM

in

in VO

CNJ CM VO

iH

o

o

00 CM CM

CM VO VO

in 00

in ro CM

00 VO ro

ro in

CM

in

o VD 00

CM

in ro

ro o 00 r-i

iH

o in

in

in VO

CM CM

in CM

ro VO CN

o in

in in

o in <T\

r-i

CM VO

in in

ro in 00 CM

o in rH CM

o o rH 00

CM in CM

in in CM

in in ro

00 CM in

in

in

in cr> ro

in o o

00

ro

ro o ro in

o

o CM in 00

00

ro

cr> o CM

in r-t ro

in

o

VO

VO o 00

CM r-i m CM

in

in

ro CM CM

o 00 o in

ro

r-i

VO VO 00

CM

CM VO (y\ o as

U U W H

00 ro VD 00

in 00 VO

i 1

J

Page 274: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

257

Since earlier investigation (minimum total

operating cost for first period criterion) and the

current E(NPW) criterion pointed to the same robot as

being cost effective, it was concluded that robot 146

was the target robot. Robot 146 was therefore cho­

sen.

2. In case B, robots 84, 158 and 168 were selected as

having the lowest E(NPW), with robot 168 exhibiting

the least E(NPW) value. Comparison of the robots'

V(NPW) also showed that the E(NPW) for robot 168 var­

ied the least. Robot 168 was therefore chosen. The

fact earlier analysis favored robot 158 and the NPW

analysis favored another robot suggested that more

analysis was needed before any of the two robots

could be chosen as the cost effective robot. This

could be done by using a longer planning horizon or

different MARR values.

From Table 57, based on the first period costs of the

respective robots, it was quite obvious that robot 158 was

the cost effective robot, as was shown by the previous se­

lection criterion. However, the cash flow for the robot

revealed that the robot became quite expensive to use in

future years. This points up the need for projecting the

expected life of the robot and its operating costs over -. 1. i)

Page 275: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

258

time. The NPW also shows the influence the MARR value can

have. In the example if the MARR had been a value other

than 30, robot 158 may have had the lowest total operating

cost over its life even though production costs did increase

over time.

Given that the two selection criteria discussed here

selected the cost effective robot majority of the time, it

was concluded that the robot selection model as discussed in

Chapter 5 was stable and appropriate for the robot selection

problem.

Finally, it is important to comment on the cost values

for the robots shown in Tables 54 to 59. These' values are

estimates used to help in arriving at a decision, and may

not necessarily represent a real life situation. The inter­

est in using predictive models is in their ability to help

the user make the right decision rather than in their abili­

ty "to calculate exact but uncertain monetary values for the

alternatives, particularly if those exact values have no

utility at some future time period" {71, p. 164}.

Page 276: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

TABLE 57

259

Projected Total Operating Costs for 5 Year Period: CASE 3

84

137

146

158

168

a m c

a m c

a m c

a m c

a m c

146699 160716 164168

175476 180824 196945

145103 165875 166025

33269 34934 39023

159581 159924 161377

150892 152257 152890

130209 136437 143565

122212 122424 134653

28317 28613 30516

129402 152276 135799 171627 138614 172904

176448 104547 193825 112312 196421 124359

71842 115557 73022 127235 81626 130165

99772 113578 118005

43064 47033 47272

154706 127020 173185 147020 173766 147509

100474 101343 117977

21915 23300 24718

115827 172004 128988 181860 135275 191396

84157 136285 88551 140849 94824 157081

90296 94542 103998

182344 182784 190855

142155 143346 167934

145003 149712 173009

77290 80377 90857

Page 277: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

260

r T in

ro

CM

>-» o

o rH ^ in VO

r-i r-i ^ VO ^

^ fH O CM rH H

VO CM ^ ^ CM H

in ro rH CM in r-i

in in as 00 in rH

as 00 o CM iH CM in

r-^ o •^ rH as ^

^ ^ ^ as as CM CM as

as CM ro r* a\ CM

as 00 00 o iH r-i

r-i CM as ro l^

00

in in o •^ 00 r-i

00 VO p^ ro ""I" H

CM o CM o r>-rH

o 00 00 00 CM

r 00 in VO ro rH

as as r-i VD CM 00 r-i

^ CM r» o fH o CM

VO as ro in in

116

VD r as VO 00 o o H

VO in as ro ro rH

VO r o in in as

^ 00 o CM o CD CM

in 'T CM r rr fH

in o ro ro r-i

o r as ro o r-i

^ fH VO 00 VO rH

CM O CM in ro iH

00 ro ^ CM VO fH

VD fH VO in in ^ 00 fH

as oo o 00 rH CM

as 00 00 00 o in 00

^ ^ 00 as cH 811

in CM CM VO in ro CM

as VD iH as in fH CM

O rH 00 CM in rH

VD O 00 fH 00 fH

CM ^ 00 r> CM fH

in CM o ro iH fH

fH VO ro rH as fH

00 ro ro in ro

as 00 00 o 00 r n ^ CM 00 in ^

104

fH 00 O ^ o in o fH

** o CM ro o

109

^ 00 in in r

110

fH 00 VO as r-i as

as o VO fH 00

ro as t^ CM "er fH

^ VO 00 00 00

r» r r in CM r-i

as in CM ^ r»

as o fH o VD r-i

r-i CM r-i CM fH fH in

VO in rH ro fH

120

as CM r-r in r-i ro

VO in ro ^ CM as in

o o as VO in VO CM

r-i O '^ as 00

"1

ii ii ii ii ii pq> ^ > 5 > W > W >

L 00

I ro

VO 00 00 VD

J

Page 278: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

261

Page 279: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

262

Sensitivity Analysis; Interactive

Mode

Having shown that the cost models of the robot selec­

tion problem were stable in selecting a robot, what remained

to be done was translate these formulas into an interactive

software code. The formulas for the computer aided robot

selection procedure (CARSP) was coded in the Beginner's

All-Purpose Symbolic instruction Code (BASIC) using an Os­

borne Executive Computer. The Osborne is a CP/M (Control

Programming for Microprocessors) based personal computer

with 128 kilobytes of random access memory (128K RAM) and

two disc drives. The CARSP system software can, therefore,

run on most CP/M based computers with a minimum of 128K R; >1

and two disc drives.

The whole CARSP system BASIC codes with its supporting

files is about 5,000 statements long, and as a result, it

could not be documented in this dissertation. These source

codes and their compiled version are available at the Texas

Tech University Industrial Engineering Department. Inter­

ested readers can contact the Department for further

informat ion.

In evaluating the CARSP system in an interactive mode

the following items were tested by thirty students drawn at

random from the Texas Tech University student body.

Page 280: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

263

1. System Reliability (consistency in selecting the cost

effective robot), and

2. System User-Friendliness.

Summary of Test Results

The reliability of the system was tested to check how

consistently it selected the same robot using the same tas:-<

variables. The subjects were given the task variables docu­

mented in Appendix C and asked to select a robot for the

task using the CARSP system.

Ninety percent (90%) of the subjects reported the same

solution for the test problem. One hundred percent was ex­

pected, however, and it was realized that some of the sub­

jects had either entered the problem data incorrectly or in­

advertently used the variance, rather than the expected

total cost of the robot as the decision criterion.

One of the reasons for the above discrepancy, according

to the subjects, was that the problem information was not

explicit enough in describing the CARSP system procedures.

Following the subjects' experience and suggestion, a user

manual describing a step by step procedure for the system

was written. This manual is documented in Appendix 3.

Using this documentation, another set of subjects were

selected and resulted in a 100% solution responses for the

Page 281: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

264

example problem. In an evaluation study with the following

responses on user-friendliness: no opinion, strongly disa­

gree, disagree, agree and strongly agree, twelve of the sub­

jects (40%) strongly agreed that the CARSP system was user-

friendly, 50% agreed, and the rest had no opinion.

For those subjects who have had experience with inter­

active systems, 67% of them rated the CARSP system as user-

friendly as some of the systems they have used before.

As of this writing, there was no known interactive

software system available for the equipment selection prob­

lem. It was therefore impossible to compare the CARSP sys­

tem to any equivalent systems.

One of the major advantages of the robot coding system

was that it represented robot information in a compact form.

The 40 attributes used to describe robots in the study var­

ied from twelve characters (for example, "PAYLOAD 5LBS," has

twelve characters) to more than thirty characters (for exam­

ple, "MEAN TIME BETWEEN FAILURE 400HRS" has thirty two char­

acters) per attribute if described in words. For a typical

robot these characters averaged about twenty for each attri­

bute. However, in code form only two characters were used

for each attribute. Coding, therefore, improved the disc

storage space of the computer by a factor of about ten

(20 T 2) .

Page 282: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

CHAPTER VII

CONCLUSIONS

Introduction

The main objective of this study was to develop an ef­

ficient algorithm that could offer the potential robot user

a tool to help him better arrive at decisions when selecting

robots for a given operation. The procedure for attain­

ing this objective was outlined in the previous chapters of

the study. The purpose of the present chapter was to summa­

rize the results on the study, draw conclusions based on its

findings, and to suggest possible areas for further research

on the selection problem.

Summary of Research and Conclusions

The use of a coding and classification system in robot­

ics was investigated and found to offer many advantages to­

ward solution of the robot selection problem. The robot

coding system (ROBOCODE) developed in this study provided a

standard basis for categorizing and comparing robots. The

information on a robot which usually took several pages to

document could be represented with one line of cede for

faster and easier comparison. The coding system is semi-

265

Page 283: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

266

polycode structured and was readily computerized for easy

storage and retrieval of information on robots.

Robot design attributes are made up of three basic

units (power, mechanical, controller) and can be divided

into two major categories of static and dynamic components.

The study found that even though more than one hundred at­

tributes have been used to describe robots, forty was more

than adequate. In reviewing more than one hundred robots

currently in the market, it was found that some attributes

have very high frequency of use in describing robots while

some have very low frequency of use. The study found, for

example, that very few manufacturers provided a mean time

between failure data for their robot systems. This suggest­

ed that either the manufacturer has not been in the business

of manufacturing robots long enough to have these data or

just does not provide them in their product literature.

Searching a robot database with the most frequently used ro­

bot attributes revealed that the number of robots found de­

creased as the number of attributes increased, and when 25

attributes were specified for the search, the number of ro­

bots found was 0 (zero).

The ROBOCODE was designed from the viewpoint of the

robot user rather than that of the robot manufacturer. The

goal of the ROBOCODE system was a user oriented computer-

Page 284: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

267

aided robot selection procedure (CARSP). The CARS? system

is interactive, and the software design showed that the ease

with which the vast amount of data on robots, and the number

of robots, could be handled was limited primarily by the

disc storage space of the computer rather than the computer

memory. Coding and classification was found to augment this

storage space by a factor of about ten. Some of the unique

features of the CARSP system were the ease with which a ro­

bot could be added to, deleted from, and updated in the

database. These features overcame the need for the user to

be highly literate in computer programming or usage in order

to understand the CARSP system mechanics.

The research showed that a similar coding system as de­

veloped for robots could also be developed for tasks, and

that in so doing, a more effective matching procedure could

be established between robots and tasks. It showed that

some task variables, for example, lot sizes, cycle times and

certain layout dimensions could not be directly matched with

any of the forty robot attributes.

The study found that the necessary condition for se­

lecting a robot for a given task, defined as the requirem.ent

that the robot codes be as good as or superior to the

corresponding task codes was insufficient -since it was

usually satisfied by several robots. However, this

Page 285: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

268

condition provided a rapid method for generating a set of

feasible robots from the database. Under the classification

system of the CARSP system this set of feasible robots con­

stituted a subgroup for the task specified.

A measure of performance established for the robots

based on a probablistic total operating cost functions al­

lowed for a fast comparison of a range of robot costs. In

an evaluative study of the selection problem, a set of se­

lection criteria was defined in order to investigate the

stability of the selection model in choosing the cost effec­

tive robot. These selection criteria were the first period

minimum total operating cost of the robot, and the net pres­

ent worth amount of a cash flow of total operating cost for

the competing robots. The results from the experimental

study showed that the robot selection model developed m

this study was fairly stable in predicting the cost effec­

tive robot from among the competing alternatives. For the

one machine, one type of operation on one type of product

(1/1/1) type robot selection problem, the model predicted

the cost effective robot 67% of the time, and 54% of tne

time for the one machine, one type of operation on different

product mix (1/1/K) type robot selection problem. Using a

NPW selection criterion, however, an alternative robot was

selected for the 1/1/K model. An examination of the cash

Page 286: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

269

flow for these robots showed that the robot selected using

the previous criterion had a low minimum operating cost for

the first period, but that this cost got excessively high in

later years. This result showed the importance of studying

equipment costs over a range of period. For an equipment

that is expected to last for a very few number of years

(e.g., one or two), the first selection criterion (choose a

robot that has the lowest total operating cost in the first

period) will be adequate since it was found to be fairly ac­

curate in selecting the cost effective robot based on the

first period cost of its minimum total operating cost. How­

ever, as the number of years increase and'the time value of

money become critical, the net present worth criterion

should be considered. These test results stressed the im­

portance of treating each robot environment as uniquely as

possible. When different decision variables were involved,

as in the two robot selection models, there was no guarantee

that the decision in one environment can be adequately ap­

plied in the other. Therefore, different manufacturing

firms exploring robot application areas should not try too

hard to model their problems after another company's

solution to a similar problem.

The difference between the 1/1/1 and the 1/1/4 robot

selection models used in the example is that in ne : 1 rst

Page 287: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

2-0

model only one product was manufactured while in the second

model four products were manufactured. Since the production

cost equation is a function mainly of the number of opera­

tions and the number of products, and the setup time a func­

tion of the these variables, cost values in the 1/1/4 model

was noticeably larger than in the 1/1/1 model. These cost

differences could be part of the reason another robot (robot

168) was chosen in the 1/1/4 model when the NPW criterion

was used, hence the importance of considering setup times

due to individual operations and products when modeling ro­

botic systems.

Recommendations for Future Research

Increasing use of robots in the manufacturing industry

means that more research questions will be asked of re­

searchers interested in automation. The present study only

attempted to answer one such question 'how can I best choose

a robot for a given task.' In trying to answer this question

the study opened up more questions and avenues for research.

These questions and avenues are now discussed.

1. It was noted in Chapter 3 that for a robot coding

system to be complete, it should include both the design and

production aspects of robotics. Because the present study

was robot user oriented, only the design aspects of robots

Page 288: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

2 1

were considered in the present coding system. A separate

study should be undertaken to investigate the possibility of

developing a coding system, or extending the present coding

system, to include production aspects in robotics, for exam­

ple, lot sizes, manufacturing lead times and materials.

2. With increasing development and use of computers,

almost all aspects of manufacturing can now be computer con­

trolled. Of interest here is design. Computer aided design

(CAD) is an ever increasing popular tool in manufacturing,

and it would be interesting to investigate the possiblility

of using the robot coding system developed in this study to

form a CAD database for robots. The robot chosen for any

task can then be generated using its CARSP system codes.

The actual task environment with the machines and other

structures can also be generated and a stress analysis of

the robot carried out to evaluate the robot's performance in

real time.

3. A user-friendly CARSP system could be developed to

permit the user to develop his own cost equations. This

system would enhance the flexibility of the CARSP system

since the user could readily tailor the model to his system

and criteria to evaluate robots which would fit his

particular operational needs. The net present worth selec­

tion criterion and the total minimum operating cost

Page 289: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

272

criterion could be modelled into this system to enable the

user to determine the cutoff year for using either criterion

for robot selection in a given environment.

An alternative solution procedure for the robot selec­

tion problem could be goal programming. Considering the

fact that the decision criterion for choosing one robot over

another could be based on factors other than economy, goal

programming (or multiple objective programming) may give a

broader insight to each robot's ability to satisfy different

decision criteria.

4. Coding and classification techniques have been

studied and used extensively in the metal working industry

to alleviate some information management problems of manu­

facturing. The present study explored the use of this tech­

nique in selecting robots. The technique and the general

CARSP system methodology could be used for any other selec­

tion problem, for example, cutting tool selection. With

cutting tool species and grades at least as varied as ro­

bots, it will make for a good researh problem to develop a

similar selection procedure for cutting tools. Although the

technique of coding as discussed and used in this study has

been centered in the manufacturing industries, it is not

limited to this environment, nor should it be. It is

recommended that a similar studv be done for other

Page 290: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

273

desciplines, as, for example, medicine: for some over-the-

counter drugs; the computer industry: for-example, personal

computer selection, etc.

5. It was shown in Chapter 4 that the number of robots

found in the CARSP system database decreased as the number

of constraints increased. It was also shown that the number

of robots found when searching the database with the attri­

butes most frequently used in describing robots was 0 (zero)

when as many as 25 attributes were used to specify the ro­

bot. Different values of these attributes resulted in a

different number of robots being found. Although 40 attri­

butes were used in designing the robot coding system of this

study, the results tended to suggest that maybe this number

was even too high. Since the number of robots found when

using the best possible case (most frequently occurring at­

tributes) was zero by the time 25 attributes were specified,

it is likely that the appropriate number of attributes need­

ed for describing robots is in the neighborhood of 25. More

study is needed to determine what this exact number should

be.

Page 291: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

REFERENCES

1. Abou-Zied, Mohammed Raafat, "Group Technology and the Manufacturing Systems of the Jobshop." Industrial Engineering, Vol. 7, p. 32, May 1975.

2. Andeberger, R., Cluster Analysis for Applications, Academic Press, N.Y. 1973.

3. Arn, E. A., Group Technology, Springer-Verlag, N. Y. 1975.

4. Ayres, R. U., et al., "An Economic Assessment of Sensor Based Robot," Tenth Conference on Production Research and Technology, NSF, P-128, pp 183 - 189, Detroit, MI., 1983.

5. Backer, Eric, and Jain, Anil K., "A Clustering Performance Measure Based on Fuzzy Set Decomposition." lEEE-PAMI, Vol. 3, No. 1, Jan. 1981.

6. Bakanau, Frank E., "Implementation and Maintenance of a Parts Coding and Classification System," Proceedings of CAM-I's Seminar on CAPP Applications, P-77-PPP-01, pp 6 - 20, CAM-I, Arlington, Texas, 1977.

7. Barnes, Ralph H., Mot ion and Time Study Design and Measurement of work, John Wiley and Sons, N. Y. 1980. 2nd Edition.

8. Bennet, John L. , Building Effect ive Decision Support Systems, Addisson-Wesley Publishing Co., Reading, Massachussets, 1983.

9. Bergen, Jay H. , "Parts Classification as a Basis for Programmed Process Planning." HERTEC Corporation, 1975.

10. Birk, John R., et al., "An Orienting Robot For Feeding Workpieces Stored In Bins." lESE Transact ions on Systems, Man and Cybernatics, Vol. SMC-II, No. 2, Feb. 1981.

11. Bobrowicz, Vincent F., "Group Technology Classification Systems," Proceedings of CAM-I's Coding and Classification Workshop, P-7 5-PPP-01, pp 31 - 10 4, C.\.M-I, Arlington, Texas, 1975.

274

Page 292: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

2-^5

12. Bonner, R. E., "On Clustering Techniques." IBM Journal, Jan. 1964.

13. Bullers, William I., Nof Shimon, Y. and Whinston, Andrew B., "Artificial Intelligence In Manufacturing Planning And Control." AIIE Transactions, December 1980.

14. Burbidge, John L., "Production Flow Analysis," The Production Engineer, Vol. 42, No. 12, 1963.

15. Burbidge, J. L., "Production Flow Analysis," Production Engineer, Vol. 50, p 139, 1971.

16. Burbidge, John L., "AIDA and Group Technology," Int. J. of_ Prod. Res. , Vol. 11, No. 4, pp 315-324. 1973.

17. Burbidge, John L., The Introduction of Group Technology, Heinemann, London, 1975.

18. Burbidge, John L., Group Technology in the Eng ineer ing Industry. Stephen Austin, England 1979.

19. Burbidge, John L., "A Manual Method of Production Flow Analysis," Production Engineer, Vol. 56, No. 10, Oct. 1977.

20. Buzacott, J. A., and Shantakuman, J. G., "Models for Understanding Flexible Manufacturing System," AIIS Transact ions, December 1980.

21. Carrie, A. S., "Numerical Taxonomy Applied to Group Technology," Int. J. oj; Prod. Res. , Vol. 12, No. 4, 1974.

22. Cox, D. R., "Note On Grouping," American Statistical Journal, Dec. 1957.

23. Dallas, Daniel B., Tool and Manufacturing Engineers Handbook, SME. 20501 Ford Rd., Dearborn, MI. 19~b.

24. DeBeer, C., and DeWitte, J., "Production Flow Synthesis," Annals o^ CIRP, Vol. 27, p. 389, 1978.

25. Dedich, W. I., Soyster, A., and Ham, I., "The Optimal Formulation of Production Group Flowlines," Proceedings of NARARA-111, Second North American Metal Working Research Conference, 1974.

Page 293: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

2 6

26. Desai, Dilip, T. I., "How One Firm Put A Group technology Parts Classification System Into Operation," Industrial Engineering, Vol. 13, No. 11, pp 78 - 36, 1981.

27. De-Witte, J., "The Use of Similarity Coefficients in Production Flow Analysis," Int. J. of Prod. Res., Vol. 18, No. 4, 1980. ~

28. Dewhurst, P., Boothroyd, G. and Motherway, J., "Economic Application of Robots to Automatic Assembly," Tenth Conference on Production Research and Technology, NSF, P-128, pp 123 - 128, Detroit, MI., 1983.

29. Doyle, Lawrence E. et al., Manufacturing Processes and Materials for Engineers, Prentice-Hall, Inc., Englewood Cliffs, N. J. 1969.

30. Eckert, Roger L., "Codes and Classification Systems," American Machinist, Dec. 1975.

31. Eckert, Roger L., "Coding and Classification System Overview and Comparison," Proceedings of CAM-I's Seminar on CAPP Applications, P-77-PPP-01, pp 21 - 51, CAM-I, Arlington, Texas, 1977.

32. Edwards, G. A. B., "The Family Grouping Philosophy," Int. J. of; Prod. Res. , Vol. 9, No. 3, 1971.

33. El-Essawy, I. L., and Torrance, J., "Component Flow Analysis-An Approach to Production System Design," The Production Engineer, Vol. 52, No. 5, May 1972.

34. El-Midany, T. T. and Davis, B. J., "AUTOCAP - A Dialogue System for Planning the Sequence of Operations For Turning Components," Int. J. Mach. Tool Des. Res., Vol. 21, No. 3/4, pp 175 - 191, 1981.

35. Elgomeyel, Y. I., "Group Technology and Computer Aided Programming for Manufacturing," SME, 20501 Ford Road, Dearborn. MI. 48128. 1973.

36. Engelberger, Joseph F., Robotics j^ Practioe, AMAROM, 1980.

37. Eskicioglu, H. and Davis, 3. J., "An Interactive Process Planning System for Prismatic Parts (ICAPP)," Int. J. Mach. Tool Des. Res., Vol. 21, No. 3/4, pp 19 3 - 206, 1981.

Page 294: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

38. Everitt, Brian, Cluster Analysis, Halsted Press, N. Y., 2nd Ed., 1980.

39. Fisher, Walter D., "On Grouping for Maximum Homogeneity," American Statistical Assoc. Journal, December 1958.

40. Gallagher, C. C., Southern, G., and Knight, W. A., Group Technology, Butterworths, London 1973.

41. Gallagher, C. C., and Abraham, B. L., "A Factory Component Profile for Group Technology," Machinery and Production Engineering, Vol. 28, Feb. 1973.

42. Gombiniski, J., "Fundamental Aspects of Component Classification," Annals of; CIRP. , Vol. 27, 1969.

43. Grandjean, E., Fitting the Task to the Man: An Ergonomic Approach, Taylor and Francis Ltd., London 1981.

44. Grayson, T. J., "Some Research Findings On Evaluating the Effectiveness of Group Technology," Int. J. of Prod. Re^., Vol. 16, No. 2, pp -89-102, 1978.

45. Groover, Mikell P., Automation, Production Systems, and Computer Aided Manufacturing, Prentice-Hall Inc., Engelwood Cliffs, NJ. 1980.

46. Gudnason, C. H., and Sant, K. L., "A Matrix System For Production Management-A Description and an Application," Int. J. qf_ Prod. Res. , Vol. 16, No. 6, po 497-508, 1978.

47. Gupta, J. N. D., "Economic Aspects of Scheduling Theory," Unpublished PhD Dissertation in Industrial Engineering, Texas Tech University, Lubbock, Texas, 1969.

48. Gupta, N. D., and Dudek, Richard A., "Optimality Criteria for Flowshop Schedules," AIIS Transact ions. Vol. 3, No. 3, Sept. 1971.

49. Gupta, Rajiv M., and Tompkins, James A., "An Examination of the Dynamic Behaviour of Part-Families in Group Technology," Int. J. oj; Prod. Res., Vol. 20, No. 1, pp 73-86, 1982.

Page 295: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

278

50. Ham, Inyong, "Introduction to Group Technology" Proceedings of CAM-I's Coding and Classificarion Worksiio£, P-75-PPP-01, pp 25 -"90, Arlington; Texas, ly /b ,

51. Harmon, Leon D., "Automated Tactile Sensing," Int. J. Robotics Res., Vol. 1, No. 2, ISSN 0278 - 36497~pD 3 -32, 1982. '

52. Hartigan, J. A., Clustering Algorithms, John Wilev i Sons, NY. 1975.

53. Hartigan, J. A., "Consistency of Single Linkage for High-Density Clusters," J. oj; the American Stat. A^soc., Vol. 76, No. 374, June 1981.

54. Hasegawa, Yukio, "New Developments in the Field of Industrial Robots," Int. J. of Prod. Res., Vol. 17, Mo. 5, 1979. ~

55. Hertwick, Gerald, "An Equipment Selection Methodology for Job-Shop Design," Unpublished PhD Dissertation in Operations Research, University of Massachussets, Amherst, Mass., 1976.

56. Houtzeel, Alexander, "An Introduction to the MICLASS System," Proceedings of CAM-I's Seminar on CAPP Applications, P-75-PPP-01, pp 159 - 178, CAM-I, Arlington, Texas, 1975.

57. Houtzeel, Alexander, "Classification and Coding: 'A Tool to Organize Information'," Proceedings of IRSAPS Technical Sympos ium, pp 457 - 480, San Diego, Ca. , September, 1982.

58. Huchingson, R. Dale, New Horizon for Human Factors i n Design. McGraw-Hill Book Co., 1981.

59. Hyde, W. F., "Helping Management to Manage Better Through Classification and Coding the Data Base," Proceed ings of CAM-I's Coding and Class i f icat ion Workshop, P-77-PPP-01, pp 2 - 51, CAM-I, Arlington, Texas, 1977.

60. Hyde, W. F., Improving Productivity by CLASSIFICATION, CODING, AND DATA BASE STANDARDIZATION, Marcel Dekker, Inc., New York, 1981.

Page 296: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

279

61. Irtem, Ali, "Conscious Robots In Industries," Proceedings of the 7th International Symposium on Industrial Robots. October, 1977.

62. Ito, Yoshimi, and Shinno, Hidenori, "Structural Description and Similarity Evaluation of the Structural Configuration in Machine Tools," Int. J. Mach. Tool' Des. Re^., Vol. 22, No. 2, pp 97-110, 1982.

63. Iwata, K., and Takano, R., "Cost Analysis of Process Planning in Integrated Manufacturing Systems," Int. J. of Prod. Res., Vol. 15, No. 5, 1977.

64. Jablonowski, Joseph, "Robots: Looking Over the Specifications," American Machinist, Special Report 745, May 1982.

65. Jablonowski, Joseph, "Robots that Weld," American Machinist, Special Report 753, pp 113 - 128, April, 1983.

66. Jardine, Nicholas and Sibson, Romin. Mathematical Taxonomy, John Wiley & Sons Ltd., NY. 1971.

67. Jensen, R. E., "A Dynamic Programming Algorithm for Cluster Analysis," Operation Research, Vol. 17, pp 1034-1057, 1968.

68. Kafrissen, Edwards and Stephans, Mark, Industrial Robots and Robotics, Reston Publishing Co. Inc., Reston, Va., 1984.

69. Kamali, Jila et al., "A Framework for Integrated Assembly Systems:Humans, Automation and Robots," Int. J. o^ Prod. Res., Vol. 20, No. 4, 1982.

70. Klahorst, H. Thomas, "Flexible Manufacturing Systems: Combining Elements to Lower Costs, Add^ Flexibi 11 ty , " _ Industrial Engineering, Vol. 13, No. 11, ?p 112 - ll'', 1981.

71. Khator, Suresh Kuma, "A Loading Methodology for Job Shops Having Conventional and NC Machine Tools," Unpublished PhD Dissertation in Industrial Engineering, Purdue University, West Laffiette, Indiana, 1975.

72. King, J. R., "Machine Component Grouping in Production Flow'Analysis: An Approach Using a Rank Order Clustering Algorithm," Int. J. qf_ Prod. Res. , Vol. 13, No. 2, 1980.

Page 297: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

23 0

73. King, J. R., "Machine-Component Group Formation in Group Technology," Omega, Vol. 8, No. 2, 1980.

74. King, J. R., and Nakornchai, V., "Machine Component Group Formation in Group Technology: Review and Extension," Int. J. of Prod. Res., Vol. 20, No. 2, pp 117-133, 1982T" ~

75. Knight, W. A., "Component Classification System in Design and Production," Production Technology, Vol. 33, No. 4, 1972.

76. Knott, Kenneth and Getto, Robert D,, "A Model for Evaluating Alternative Robot Systems Under Uncertainty," Int. J. of Prod. Res., Vol. 20, No. 2, 1982.

77. Kobayashi, Kengo, et al., "Flexible Manufacturing Systems with an Idustrial Robot," Proc. of 7th. Int. Symposium on Industrial Robots, October 1977.

78. Koloc, J., '*The Use of Workpiece Statistics to Develop Automatic Programming for NC Machine Tools," Int. J. Machine Tool Des. Res., Vol. 9, pp 65-80, 1969.

79. Koloc, J., Preisler, J. and Vymer, J., "A Contribution to the Manufacturing-Sytem Concept in Production Engineering Research," Annals of the CIRP, Vol. 14, No. 1, pp 65 - 82, September, 1966.

80. Kruse, G., Swinfield, D. G. J., and Thornley, R. H,, "Design of Group Technology Plant and Its Associated Production Control System," The Product ion Engineer, July/Aug. 1975.

81. Mangold, Vern, "The Industrial Robot as a Transfer Device," Robotics Age, July/August, 1982.

82. McAuley, J., "Machine Grouping for Efficient Production," Prod. Engineer, Vol. 51, No. 2, p 53, 1972.

83. McCarthy, Michael and Wood, Sharon, 3eginer's Guide to the Osborne Executive Computer, Vol. 0, Osborne Computer Corporation, Hayward, Ca., 1983.

84. McCormick, W. T. et al., "Problem Decomposition and Data Reorganisation by a Clustering Technique," Operations Research, Vol. 20, p 995, 19^2.

Page 298: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

231

85 Middle, G. H., Cononolly, R. and Thornley, R. H., "Organization Problems and the Relevant Manufacturinc System," Ijvt. J. of Prod. Res., Vol. 9, No. 2, pp 297-309, 1971. ' ^

86. Miller, David M., and Bavis, Robert P., "The Machine Requirement Problem," Int. J. of Prod. Res., Vol. 15, No. 2, pp 219-231, 1977^" ~

87. Mitrofanov, S. P., "Scientific Principles of Group Technology Part I," Natl. Lending Library For Science and Technology, Boston SPA. 1966.

88. Moder, Joseph J. and Phillips, Cecil R., Project Management With CPM ajid PERT, 2nd. Edition, Van Nostrand Reinhold Company, New York, 1970.

89. Morishita, Kazuhiro and Boothroyd, Geofrey, "Group Technology: What Role for Robots?," Automation, Aucust 1973.

90. Muth, Enginhard J., "The Production Rate of a Series of Work Stations with Variable Service Times," Int. J. of Prod. Res., Vol. 11, No. 2,-pp 155-169, 1973.

91. Nof, Shimon Y., Knight, James L., and Salvendy, Gavriel S., "Effective Utilization of Industrial Robots-A Job and Skills Analysis Approach," AIIE Transact ions, Vol. 12, No. 3, 1980.

92. Nof, Shimon Y., et al., "Operational Control of Item Flow in Versatile Manufacturing Systems," Int. J. of Prod. Res., Vol. 17, No. 5, 1979.

93. Nof, Shimon Y., and Lechtman, Hannan, "Robot Time and Motion System Provides Means of Evaluating Alternative Robot Work Methods," Industrial Engineering, Vol. 14, No. 4, pp 38 - 48, 1982.

94. Oliva-Lopez, E. and Purcheck, G. F., "Load Balancing for Group Technology Planning and Control," Int. J. of Mach. Tool Des. Res., Vol. 19, pp 259-274, 19- 9.

95. Oliver, Charles E., "Analysis Of The Parts/Machine Grouping Problem In Group Technology Manufacturing Systems," Unpublished PhD Dessertation in Industrial Engineering, Texas Tech University, Lubbock, Texas. 1981.

Page 299: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

282

96. Opitz, H. et al., "Workpiece Classification and its Industrial Application," Int. J. of Machine Tool Des. Res., Vol. 9, pp 39-50, 1969. ~

97. Opitz, H. , A Classification System to Describe Workpieces, Parts I & II, Pergamon Press, N. Y., 1970.

98. Opitz, H., and Wiendal, H. P., "Group Technology and Manufacturing Systems in Small and Medium Quantity Production," Int. J. of Prod. Res., Vol. 9, No. 1, 1971. ~

99. Ottinger, Lester V., "A Plant Search for Possible Robot Applications," Industrial Engineering, Vol. 13, No. 12, pp 26 - 32, 198r^

100. Ottinger, Lester V., "Engineering a Robot System for a New Factory," Industrial Engineering, Vol. 14, No. 4, pp 86 - 90, 1982.

101. Ottinger, Lester V., "Robots for the IE: Terminology, Types of Robots," Industrial Engineering, Vol. 13, No. 11, pp 28 - 35, 1981.

102. Paul, Richard P., and Nof, Shimon Y., "Work Methods Measurement-A Comparison Between Robot and Human Task Performance," Int. J. oj; Prod. Res. , Vol. 17, No. 3, 1979.

103. Potter, Ronald D., "Practical Applications of a Limited Sequence Robot," Industrial Robots: Volume 1/ FUNDAMENTALS, 2nd. Edition, pp 277 - 285, SME, Dearborn, MI. 1981.

104. Productivity International Inc., A Survey of Industr ial Robots, 2nd. Edition, Leading Edge Publishing Inc., Dallas, Texas, 1982.

105. Pun, Lucas, Aracil, Javier and Abatut, Jean-Louis, Integrated Automated Pract ice, American Elsevier Publishing Co. Inc., N. Y. 1976.

106. Purcheck, G. J. K., "Combinatorial Grouping- A Lattice-Theoretic Method for the Design of Manufacturing systems," J. of; Cybernat ics, Vol, 4, No. 3, 1974.

107. Purcheck, G. J. K., "A Mathematical Classification as a Basis for the Design of Group Technology Production Cells," Production Engineer, Vol. 53, No. 1, 19^5.

Page 300: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

253

108. Rajagopalan, R., and Batra, J. L., "Design of Cellular Production System: A Graph-Theoretic Approach," Int. J. of Prod. Res., Vol. 13, No. 6, 1975. ~

109. Ross, G. J. S., "Minimum Spanning Tree," Applied Statistics, Vol. 18, No. 1, Algorithm AS13, 1969.

110. Ross, G. J. S., "Printing the Minimum Spanning Tree," Applied Statistics, Vol. 18, No. 1, Algorithm AS14,

111. Ross, G. J. S., "Single Linkage Cluster Analysis," Applied Statistics, Vol. 18, No. 1, Algorithm AS15, 1969.

112. Rubin, Jerrold. "Optimal Classification into Groups: An Approach for Solving the Taxonomy Problem," J. of Theoretical Biology, Vol. 15, pp 103-144, 1967.

113. Ruoff, Carl F., "Fast Trigonometric Functions for Robot Control," Robotics Age, Nov/Dec 1981.

114. Ryser, H. T., "Combinatorial Properties of Matrices of Zeros and Ones," Canadian J. of_ Mathematics, Vol. 9, pp 371-377, 1957.

115. Ryzin, J. Van, Classif icat ion and Clustering, Academic Press, NY. 1977.

116. Sage, Andrew P., Methodology For Large Scale Systems, McGraw-Hill, NY. 1977.

117. Sanderson, Ronald J., et al.. Industrial Robots; A Survey and Forecast ing for Manufacturing Managers, Tech Tran Corporation, 111. 1982.

118. Seger, Bengt, "Application of an Industrial Robot with Continuous Path Control," Proc. of 7th Int. Symposium on Ind. Robots, October 1977.

119. Shultz, D., and Ostwald P., "Cost Estimating for Strategical Decisions in Manufacturing Group Classified Design," ASME Paper, 74-DE-7, 1974.

120. Simons, G. L., Robots in Industry, H. Charlesworth Sc Co. Ltd., Huddersfield, England, 1981.

121. Snyder, Wesley E., "Microcomputer Based Path Control," Robotics Age, Spring 1980.

Page 301: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

284

122. Society of Manufacturing Engineers, Industrial Robots, ^ Productivity and Equipment Series, 1st. Edition, SME, Marketing Services Division, Dearborn, MI. 1983.

123. Sokal, Robert R. and Sneath, Peter H. A., Principles of Numerical Taxonomy, W. H. Freeman & Company, San Francisco, 1963.

124. Solaja, V. B., and Urosevic, S. M., "An Integral Concept of Group Technology," SME Technical Paper, 1971.

125. Sprague, Ralph H. , Jr. and Carlson, Eric D., Buildmc Effective Decision Support Systems, Prentice-Hall Inc., Englewood Cliffs, N.J., 1982.

126. Spur, G., Rail, G. and Weisse, W., "Model of a 'Flexible Manufacturing Cell' for Rotational Parts," Proc. of 7th Int. Symposium on Ind. Robots, October 1977.

127. Steeke, Kathryn and Solberg, James Jay, "Loading and Control Policies for a Flexible Manufacturing System," Int. J. of; Prod. Res. , Vol. 19, No. 5, 1981.

128. Svestra, Joseph A., et al., "On Improving the Productivity of Numerically Controlled Punch Presses," Int. J. of; Prod. Res. , Vol. 19, No. 5, 1981.

129. Taha, Hamdy A., Operat ions Research, MacMillan Publishing Co. Inc., N. Y. 1982.

130. Takase, K., Paul, Richard P. and Eilert, J., "A Structured Approach to Robot Programming and Teaching," IEEE Transact ions on Systems, Man and Cybernat ics, Vo1. SMC-11, No. 4, April 1981.

131. Tanner, William R., "'Selling' The Robot -Justification for Robot Installation," Industr ial Robots: Volume 1/ FUNDAMENTALS, 2nd. Edition, pp 127 -136, SME Dearborn, MI. 1981.

132. Tanner, William R., "Basics of Robotics," Industr ial Robots: Volume !£_ FUNDAMENTALS, 2nd. Edition, pp 3 -12, SME Dearborn, MI. 1981.

133. Tanner, William R. and Spiotta, Raymond H., "Industrial Robots Today," Industrial Robots: Volume 1/ FUNDAMENTALS, 2nd. Edition, pp 261 - 271, SME Dearborn, MI. 1981.

Page 302: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

» • » ' ' • ' • ' " • - "

255

134. Taraman, Khalil (Editor), CAD/CAM: Meeting Today's Productivity Challanqe, CASA/SME, One SME Drive, Dearborne, MI. 1980.

135. Technical Database Corporation, 1983 Robotics Industry Directory, Technical Database Corporation, Conroe, Texas, 1983.

136. Tilsley, R., and Lewis, F. A., "Flexible Cell Production Systems- A Realistic Approach," Annals of CIRP., Vol. 24, p 269, 1977.

137. Unimation Inc., Unimate Industrial Robots, Unimation Inc., Product Literature, 600 Ll-10/79, Danbury, Conn. 1979.

138. Vukobratovic, M. , Sclent if ic Fundamentals of Robots 1_: Dynamics of Manipulator Robots Theory and Applicat ions. Springer-Verlag, N. Y. 1982.

139. Warnecke, H. J. and Schraft, R. D. , Industrial Robots; Applications Experience, IFS Publications Ltd., U. K., 1982.

140. Warnekar, C. S., and Krishna, G., "An Algorithm to Detect Linearly Separable Clusters of Binary Patterns," Pattern Recognition, Vol. 11, pp 109-113, 1979.

141. White, Charles H., and Wilson, Richard C , "Sequence Dependent Setup Times and Job Sequencing," Int. J. of Prod. Res., Vol. 15, No. 2, 1977.

142. Winship, John. "Robots In Metal Working," American Machinist, Report No. 682, November 1975,

143. Young, Robert E., "Software Control Strategies For Use In Implementing Flexible Manufacturing Systems," Industrial Engineering, November 1981.

Page 303: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

286

APPENDICES

Page 304: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

APPENDIX A

FORTRAN PROGRAM CODES FOR EVALUATION MODELS OF CHAPTER 6

The following programs were used for the robot selec­

tion criteria described in Chapter 6. These selection cri­

teria were:

a) Selection based on first period Minimum Total Op­

erating Cost (CT), and a sensitivity analysis on

the selection to determine how often the criterion

selected the cost effective robot, and

b) Selection based on the Net Present Worth (NPW)

analysis of projected life operating cost over a

specified number of future periods.

Purpose

The purpose of these programs was to select a robot

from a set of robots that have satisfied the minimum re­

quirements for a task. This was done in the following or­

der:

1. Generate 200 robot codes and store them, in a data­

base ,

2. Use the codes for a given task and search this

database for robots that can perform the task,

3. Use the cost equations of Chapter 5 and in criterion:

287

Page 305: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

233

a) Choose the robot with the minimum first period

total operating cost, and perform a sensitivity

analysis of the selection to determine how often

the criterion selected the cost effective robot,

and

b) Use the NPW criterion to select the most viable

robot.

Definitions

1. Unsubscripted Variables:

a) NDGTS - number of two digit codes each robot may

have.

b) NLVLS - number of levels each robot attribute code

may have.

c) NJOBS - number of jobs to generate.

d) IX - an odd number used as a seed for the random

number generator.

e) IRATE - rate charged at the shop floor.

f) KF - a multiplication factor.

g) ICIS - cost for installation and setup for a ro­

bot ,

h) ICBU - cost for robot basic unit.

i) ICST - cost for special tooling

Page 306: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

289

j) IPCC - cost for planning and consultation for a

robot,

k) ST- setup time

1) NP - number of times robot was reprogrammed

m) IFUNC - number of tasks robot will perform

n) IMC - maintenance cost

o) ICPS - cost for power supply

p) ILC - labor cost

q) IRC - cost of retraining personnel

2. Subscripted Variables:

a) A(I,J) - probability distribution for a robot code

with I levels and J attributes.

b) ICODE(K,J) - a robot K whose attribute J is to be

found or compared.

c) RAND(I) - saves the values of the random numbers

generated

d) DMD(I) - demand for a product I

e) LOT(I) - lot size for a product I

f) CLT(I) - cycle time for a product I

g) INVTMC(K,L) - investment cost for robot K during

the Lth test period

Page 307: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

290

h) IPRODC(K,L) - production cost for robot K

during the Lth test period

i).IOHC(K,L) - overhead cost for robot K during the

Lth test period

j) ITOTC(K,L) - total operating cost for robot K

during the Lth test period (or

INVTMC(K,L) + IPRODC(K,L) + IOHC(K,L))

k) INPRD(K,L) - INVTMC(K,L) + IPRODC(K,L)

1) INVOH(K,L) - INVTMC(K,L) + IOHC(K,L)

m) IPDOH(K,L,) - IOHC(K,L) + INVTMC(K,L)

n) KPREF(K,I) - preference index for robot K using

the lth cost function.

o) KOUNT - number of times to execute criterion a.

The A, B and C added to the variables defined m pro­

grams is to show they are for beta distribution values. The

A means optimistic, B most likely and C pessimistic beta

variables respectively.

Subrout ines

1. MAIN - The main segment of this program.

It generates codes for the 200 robots,

calculates the various cost components and

calls the various subroutines.

Page 308: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

291

2. ORDER - Scans through each cost component values to

select the minimum cost generated. 4

3. RANDU - Generates random numbers.

4. BETA - calculates cost values for beta distribution

5. BUFFER - makes sure that the three random numbers

generated for the beta distribution are in

their ascending order of m.agnitude. If they

are not, BUFFER reorders them.

Page 309: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

Flow Charts:

A) MAIN Program

292

c START

L_ READ

NDGTS,NLVLS, NRBT,Ari,J),IX

GENERATE

DATABASE OF 200 ROBOTS

^ : < -

N

GENERATE

A JOB CODE JOB(I,K)

SEARCH

DATABASE

Y

N

Page 310: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

MAIN Continued.

293

INITIALIZE

COST VARIA-BLES

GENERATE

INVMTC.IOHC,

ITECHC.ITOTC

CALL PINDEX

CALL ORDER

Y

PRINT

ROBOTS,COST

N

Page 311: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

MAIN C o n t i n u e d .

>rY

K0UNT=K0UNT+1

Y

FIND # OF

TIME CHOSEN

FIND MOST CHOSEN ROBOT

294

N

N ^ 1

Page 312: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

295

MAIN C o n t i n u e d .

Page 313: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

296 B) S u b r o u t i n e BETA:

C START

< •

INITIALIZE

VARIABLES

CALL BUFFER

GENERATE

COSTS FOR BETA

VARIABLES

N

Page 314: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

Subroutine BETA Continued

297

CHOOSE RBT WITH

MIN NPW

I RETURN

N W 3

C END )

Page 315: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

C) Subroutine BUFFER: 298

START

CALL RANDU

N

REORDER R

< •

RETURN

Y

C END

Page 316: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

D) Subroutine RANDU: 299

C START

KS = KF

L=IX

^

GENERATE

RANDOM NO,

N

Page 317: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

300

C PROGRAM FOR TESTING SELECTION CRITERIA C MAIN PROGRAM

0001 DIMENSION ITOTC(200,50),JOB(200,50) 0002 DIMENSION IRBT(200,50),NDX(200) 0003 DIMENSION IPRODC(200,50),IOHC(200,50) 0004 DIMENSION INVOH(200,50),IPDOH(200,50) 0005 DIMENSION CLT(200),COST(200) 0006 DIMENSION A(10,40),RAND(100),

1 INVMTC(200,50),INPRD(200,50),DMD(200) 2 LOT(200)

0007 INTEGER SUMM,RBTS,COST,COUNT 0008 REAL LOT 0009 C0MM0N/BLK1/N,KF 0010 COMMON/BLK10/ITOTC,COST 0011 C0MM0N/BLK7/NDX,K

C 0012 READ (5,10) NDGTS,NLVLS,NRBTS,IX,MAX 0013 10 FORMAT (515) 0014 DO 20 J=l,NDGTS 0015 20 READ(5,30) (A(I,J), 1=1,NLVLS) 0016 30 FORMAT(10F5.3)

C 0017 IRATE=10 -0018 KF=1 0019 N=l 0020 DO 60 K=l,NRBTS 0021 DO 50 J=l,NDGTS 0022 CALL RANDU(IX,RAND) 0023 DO 40 1=1,NLVLS 0024 IF(RAND(1) .LE. A(I,J)) GO TO 45 0025 40 CONTINUE 0026 45 IRBT(K,J)=(I*10)-10 0027 50 CONTINUE 0028 60 CONTINUE

C 00 29 COUNT=0 0030 65 DO 500 IK=1,MAX 0031 DO 80 J=l,NDGTS 0032 CALL RANDU(IX,RAND) 0033 DO 70 1=1,NLVLS 0034 IF(RAND(1) .LE. A(I,J)) GO TO ^5 0035 70 CONTINUE 0036 75 JOB(IK,J)=(I*10)-10 0037 80 CONTINUE 0038 IF(J0B(IK,2) .LT. 80) GO TO 500 0039 IF(J0B(IK,7) . LT. 30 .OR. JCBIIK,-^)

1 .GT. 70) GO TO 500 0040 IF(J0B(IK,21) .EQ. 0 .OR. J0B(IK,21)

1 .GT. 70) GO TO 500

Page 318: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

301

0041 IF(J0B(IK,38) .LT. 10 .OR. JOB(IK,39) 1 .LT. 10) GO TO 500

0042 RBTS=0 0043 DO 100 K=l,NRBTS 0044 IF(J0B(IK,2) .GT. IRBT(K,2))G0 TO 100 0045 IF(J0B(IK,7) .GT. IRBT(K,7))G0 TO 100 0046 IF(J0B(IK,21).LT.IRBT(K,21))G0 TO 100 0047 IF(JOB(IK,38).GT.IRBT(K,38))G0 TO 100 0048 IF(JOB(IK,39).GT.IRBT(K,39))G0 TO 100 0049 RBTS=RBTS+1 0050 NDX(RBTS)=K 0051 100 CONTINUE 0052 IF(RBTS .GE. 5) GO TO 111 0053 500 CONTINUE

C 0054 111 DO 300 K=1,RBTS 0055 DO 200 L=l,50 0056 SP=0 0057 SUMM=0 0058 NST=0 0059 IMC=0 0060 ITAX=0 0061 ST=0 0062 ICPS=0 0063 ILC=0 0064 IRC=0 0065 ISETUP=0 0066 ISV=0 0067 IDC=0 0068 ICIS=0 0069 ICBU=0 0070 IPCC=0 0071 ICST=0 0072 IOC=0 0073 DO 105 1=1,5 0074 DMD(I)=0 0075 LOT(I)=0 0076 - CLT(I)=0 00' 7 105 CONTINUE 0078 KF=20 0079 N=3 0080 IF(IC0DE(K,1) .EQ. 0)ICODE(K,1)=10 0081 IF(IC0DE(K,31) .EQ. 0)ICODE(K,31)=10 0082 CALL RANDU(IX,RAND) 0083 ICIS=RAND(1) 0084 ICBU=RAND(2)*ICODE(K,31)

1 *(10/ICODE(K,1)) 0085 ICST=RAND(3) 0086 KF=50

Page 319: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

302

0087 0088 0089 0090 0091

0092 0093 0094 0095 0096 0097 0098 0099 0100

0101 0102 0103 0104 0105 0106 0107 0108 0109 0110 0111 0112

0113

0114

0115

0116

0117 0118 0119 0120 0121 0122 0123

0124 0125

1

1 2

N=2 CALL RANDU(IX,RAND) IPCC=RAND(1) IWKD=RAND(2) INVMTC(NDX(K),L)=ICIS+ICBU+ICST+IPCC + IWKD

KF=10000 N=l CALL RANDU(IX,RAND) DMD(1)=RAND(1) IF(DMD(1) .LT. 500) DMD(1)=500 KF=100 CALL RANDU(IX,RAND) L0T(1)=RAND(1) IF(L0T(1) .LT. DMD(1)*.01) LOT(1) =DMD(1)*.01 KF=1 CALL RANDU(IX,RAND) CLT(1)=RAND(1)*0.1 TCLT=0 TLOT=0 N=l CALL RANDU(IX,RAND) ST=RAND(1) TL0T=L0T(1) TCLT=L0T(1)*CLT(1) IF(ST .GT. TCLT*0.1) ST=TCLT*0.1 IF(IRBT(NDX(K),12) .EQ. IRBT(NDX(K),12)=10

0)

.EQ. 0) K),13) 13)=10 K),22) 22)=10 K),26) 26)=10 NDX(K),13) ,12)+IRBT(NDX(K) ,26))/10

.EQ. 0)

.EQ. 0)

22)

IF(IRBT(NDX IRBT(NDX(K) IF(IRBT(NDX IRBT(NDX(K) IF(IRBT(NDX IRBT(NDX(K) ST=ST*(IRBT +IRBT(NDX(K +IRBT(NDX(K SUM=0 SP=DMD(1)/L0T(1) SUMM=SP+.99999 NST=SUMM*ST PTIME=0 PTIME=CLT(1)*DMD(1) IPRODC(NDX(K) ,L) = I RATE*(PTIME + NST)

KF=1 N=5

Page 320: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

303

0126 0127 0128 0129

0130

0131 0132 0133 0134

0135

0136 0137 0138 0139 0140

0141 0142 Q143 0144 0145 0146 0147

0148 0149

0150

0151

0152 0153 0154

0155 0156 0157 0158 0159 0160 0161 0162 0163

200

300

340 1 2

350 360 370

425 1

405 1

410 1

420 1

430

435 1

440 450

CALL RANDU(IX,RAND) IMC=RAND(1)*10 IFdMC .LT. ICBU*.07) IMC= ICBU*0 . 0^ IF(IRBT(NDX(K),25) ,EQ. 0) IRBT(NDX(K),25)=10 ICPS =(RAND(2)* IRBT(NDX(K) ,3 2)/ (IRBT(NDX(K),25)))*100 ILC=RAND(3)*10 * IRATE IRC=RAND(4)*100 ITAX=RAND(5)*10 IOHC(NDX(K),L)=IMC+ICPS+ILC^IRC^ITAX ITOTC(NDX(K),L)=INVMTC(NDX(K),L) +ITECGC(NDX(K),L)+lOHC(NDX(K),L) CONTINUE CALL PINDEX CONTINUE WRITE(6,340) F0RMAT(1H1,5HJ0B #,5X, 4 2HCARSP DATABASE SYSTEM CODES FOR 200 ROBOTS) DO 350 K=l,NRBTS WRITE(6,360)K,(IRBT(K,J),J=1,NDGTS) FORMATdX, 15,4013) WRITE(6,410)RBTS WRITE(6,4 20)IK,(JOB(IK,J),J=1,NDGTS) WRITE(6,425) FORMAT(2X,13HROBOT NUMBERS,20X, IIHROBOT CODES) DO 405 1=1,RBTS WRITE(6,430)NDX(I),(IRBT(NDX(I),J), J=l,NDGTS) F0RMAT(1H1,2X,2 5HNUMBER OF ROBOTS FOUND= ,110/) FORMAT(2X,10HJOB NUMBER,2OX, 8HJ0B C O D E / I X , 1 5 , 4 0 1 3 / ) FORMATdX, 1 5 , 4 0 1 3 ) W R I T E ( 6 , 4 3 5 ) FORMATdX, 7HR0B0T #,10X,14HMIN TOTAL COST) DO 440 1=1,RBTS W R I T E ( 6 , 4 5 0 ) N D X ( I ) , C O S T ( N D X ( l ) ) F O R M A T ( 3 X , I 5 , 1 0 X , I 1 0 ) MIN=C0ST(NDX(1)) N0=NDX(1) DO 460 1=2,RBTS IF(MIN . L E . COST(NDX(I ) ) ) GO TO 460 MIN=COST(NDX(I)) NO=NDX(I)

Page 321: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

304

0164 460 CONTINUE 0165 WRITE(6,470)NO,MIN 0166 470 FORMAT(2X,12HCHOOSE RBT :, lOX, 14HMIN

1 TOTAL C0ST/,4X,I5,16X,110) 0167 800 CALL EXIT 0168 END

C 0001 SUBROUTINE PINDEX 0002 DIMENSION ITOTC(200,50),JI(200,50),

1 COST(200),NDX(200) 000 3 INTEGER COST 0004 C0MM0N/BLK7/NDX,K 000 5 COMMON/BLKIO/ITOTCCOST 0006 DO 10 1=1,50 0007 10 JI(NDX(K),I)=IT0TC(NDX(K) ,I) OQOa CALL ORDER(JI,JT) 0009 COST(NDX(K))=JT 0010 RETURN 0011 END

C 0001 SUBROUTINE ORDER(JI,JT) 0002 DIMENSION JI(200,50),NDX(200) 0003 C0MM0N/BLK7/NDX,K 0004 JE=JI(NDX(K),1) 0005 DO 10 1=2,50 0006 IF(JE .LE. JI(NDX(K),1)) GO TO 10 0007 JE=JI(NDX(K),I) 0008 10 CONTINUE 0009 JT=JE 0010 RETURN 0011 END

C 0001 SUBROUTINE RANDU(IX,RAND) 0002 DIMENSION RAND(IOO) 000 3 C0MM0N/BLK1/N,KF 0004 KS=KF 0005 L=IX 0006 DO 30 1=1,N 0007 L=65539*L 0008 IF(L)10,10,20 0009 10 L=L+2147483647+1 0010 20 YL=L 0011 YL=YL*.4656613E-9 0012 30 RAND(I)=YL*KS 0013 IX=L 0014 RETURN 0015 END

Page 322: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

305

0001 0002 0003 0004 0005

0006 0007 0008 0009 0010 0011 0012 0013 0014 0015 0016 0017 0018 0019 0020 0021 0022 0023

SUBROUTINE BETA(IX) DIMENSION ITOTCA(200,10),NPWEX(2C0) DIMENSION ITOTCC(200,10),RAND(200) DIMENSION NDX(200),IRBT(200,50) DIMENSION NPW(200,10),NPWV(20 0,10),

1 ITOTCB(200,10),ITOTEX(200,10), 2 ITOTVA(200,10),NPWVA(200) INTEGER RBTS,SUMMA,SUMMB,SUMMC C0MM0N/BLK1/N,KF C0MM0N/BLK7/NDX,K C0MM0N/BLK8/RAND C0MM0N/BLK9/RBTS,IRBT,IRATE JX=0

111 DO 112 1=1,RBTS NPW(NDX(I),JX)=0 NPWV(NDX(I),JX)=0

112 CONTINUE DO 109 1=1,RBTS DO 108 J=l,5 NPW(NDX(I),J)=0

108 NPWV(NDX(I),J)=0 NPWEX(NDX(I))=0

109 NPWVA(NDX(I))=0 KOUNT=0 KN=0

0024 0025 0026 0027 0028 0029 0030 0031 0032 0033 0034 0035 0036 0037 0038 0039 0040 0041 0042 0043 0044 0045 0046

107 DO 200 K=1,RBTS SPA=0 SPB=0 SPC=0 SUMMA=0 SUMMB=0 SUMMC=0 NSTA=0 NSTB=0 NSTC=0 IMCA=0 IMCB=0 IMCC=0 ITAXA=0 ITAXB=0 ITAXC=0 STB = 0 STC = 0 STA=0 ICPSA=0 ICPSB=0 ICPSC=0 ILCB=0

Page 323: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

306

0047 ILCC=0 0048 IRCB=0 0049 IRCA=0 0050 ISVB=0 0051 ISVC=0 0052 ILCA=0 0053 IRCC=0 0054 ISETUP=0 0055 ISVA=0 0056 IDCC=0 0057 ICISA=0 0058 IDCA=0 0059 IDCB=0 0060 ICISB=0 0061 ICISC=0 0062 ICBUA=0 0063 ICBUB=0 0064 IPCCB=0 0065 IPCCC=0 0066 ICSTA=0 0067 ICBUC=0 0068 ICSTB=0 0069 IOCB=0 0070 IOCC=0 0071 IPCCA=0 0072 ICSTC=0 0073 IOCA=0 0074 DMDA=0 0075 DMDB=0 0076 DMDC=0 0077 LOTA=0 0078 LOTB=0 0079 LOTC=0 0080 CLTA=0 0081 CLTB=0 0082 CLTC=0 0083 KF=20 0084 N=3 0085 IF(IRBT(NDX(K),1) .EQ, 0)

1 IRBT(NDX((K),1)=10 0086 IF(IRBT(NDX(K),31) .EQ. 0)

1 IRBT(NDX(K),31)=10 0087 CALL BUFFER(IX) 0088 ICISA=RAND(1) 0089 ICISB=RAND(2) 0090 ICISC=RAND(3) 0091 CALL BUFFER(IX) 00 92 ICBUA= RAND(1)* IRBT(NDX(K) ,31)

1 *(10/IRBT(NDX(K),1)

Page 324: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

30

0093

0094

0095 0096 0097 0098 0099 0100 0101 0102 0103 0104 0105 0106 0107 0108 0109 0110 0111 0112 0113 0114 0115 0116 0117

ICBUB = RAND(2)* IRBT(NDX(K) ,31) 1 *(10/IRBT(NDX(K),1)

ICBUC=RAND(3)* IRBT(NDX(K) ,31) 1 *(10/IRBT(NDX(K),1) KF=10 N=3 CALL BUFFER(IX) ICSTA=RAND(1) ICSTB=RAND(2) ICSTC=RAND(3) KF=50 N=3 CALL BUFFER(IX) IPCCA=RAND(1) IPCCB=RAND(2) IPCCC=RAND(3) CALL BUFFER(IX) IWKDA=RAND(1) IWKDB=RAND(2) IWKDC=RAND(3) INVA=ICISA+ICBUA+ICSTA+IPCCA+IWKDA INVB=ICISB+ICBUB+ICSTB+IPCCB-IWKDB INVC=ICISC+ICBUC+ICSTC+IPCCC+IWKDC IF (KOUNT .EQ". 0 ) GOTO 120 INVA=0 INVB=0 INVC=0

0118 0119 0120 0121 0122 0123 0124 0125 0126 0127 0128 0129 0130 0131 0132 0133 0134 0135 0136 0137 0138

120 KF=10000 N=3 CALL BUFFER(IX) DMDA=RAND(1) DMDB=RAND(2) DMDC=RAND(3) IF(DMDA .LT. 500) IF(DMDB .LT. 500) IF(DMDC .LT. 500) KF=100 N=3 CALL BUFFER(IX) LOTA=RAND(1) L0TB=RAND(2) L0TC=RAND(3)

DMDA=50 0 DMDB=500 DMDC=500

IF(LOTA .LT IF(LOTB .LT IF(LOTC .LT KF=1 N=3 CALL BUFFER(IX)

DMDA* DMDB* DMDC*

01) LOTA=DMDA*.01 •01) LOTB = DMDB*.01 01) LOTC=DMDC*.01

Page 325: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

308

0139 CLTA=RAND(1)*0.1 0140 CLTB=RAND(2)*0.1 0141 CLTC=RAND(3)*0.1 0142 TCLTA=0 0143 TCLTB=0 0144 TCLTC=0 0145 TLOTA=0 0146 TLOTB=0 0147 TLOTC=0 0148 N=3 0149 CALL BUFFER(IX) 0150 STA=RAND(1) 0151 STB=RAND(2) 0152 STC=RAND(3) 0153 N=3 0154 CALL BUFFER(IX) 0155 TLOTA=LOTA+TLOTA 0156 TLOTB=LOTB+TLOTB 0157 TLOTC=LOTC+TLOTC 0158 TCLTA=LOTA*CLTA+TCLTA 0159 TCLTB=LOTB*CLTB+TCLTB 0160 TCLTC=LOTC*CLTC+TCLTC 0161 IFiSTA .GT. TCLTA*0.1) STA=TCLTA*0.1 0162 IF(STB .GT. TCLTB*0.1) STB=TCLTB*0.1 0163 IF(STC .GT. TCLTC*0,1) STC=TCLTC*0.1 0164 IF(IRBT(NDX(K),12) .EQ. 0)

1 IRBT(NDX(K) , 12)=10 0165 IF(IRBT(NDX(K),13) .EQ. 0)

1 IRBT(NDX(K),13)=10 0166 IF(IRBT(NDX(K),22) .EQ. 0)

1 IRBT(NDX(K),22)=10 0167 IF(IRBT(NDX(K),26) .EQ. 0)

1 IRBT(NDX(K),26)=10 0168 STA=STA*(IRBT(NDX(K),13)

1 +IRBT(NDX(K),12) 2 +IRBT(NDX(K),22) 3 +IRBT(NDX(K),26))/10

0169 STB=STB*(IRBT(NDX(K),13) 1 +IRBT(NDX(K),12) 2 +IRBT(NDX(K),22) 3 +IRBT(NDX(K),26))/10

0170 STC=STC*(IRBT(NDX(K),13) 1 +IRBT(NDX(K),12) 2 +IRBT(NDX(K),22) 3 +IRBT(NDX(K),26))/10

0171 SUMA=0 0172 SUMC=0 0173 SUMB=0 0174 SPA=DMDA/LOTA

Page 326: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

309

0175 0176 0177 0178 0179 0180 0181 0182 0183 0184 0185 0186 0187 0188 0189 0190 0191 0192 0193 0194

0195 0196 0197 0198 0199 0200 0201 0202 0203 0204

0205 0206

0207

0208

0209 0210 0211 0212 0213 0214 0215 0216 0217 0218

SPB=DMDB/LOTB SPC=DMDC/LOTC SUMA=SUMA+SPA SUMB=SUMB+SPB SUMC=SUMC+SPC SUMMA=SUMA+.999999 SUMMB=SUMB+.999999 SUMMC=SUMC+.999999 NSTA=SUMMA+STA NSTB=SUMMB+STB NSTC=SUMMC+STC PTIMEA=0 PTIMEB=0 PTIMEC=0 PTIMEA=CLTA*DMDA+PTIMEA PTIMEB=CLTB*DMDB+PTIMEB PTIMEC=CLTC*DMDC+PTIMEC ITEA=(IRATE)*(PTIMEA+NSTA) ITEB=(IRATE)*(PTIMEB+NSTB) ITEC=(IRATE)*(PTIMEC+NSTC)

C KF=1 N=3 CALL BUFFER(IX) IMCA=RAND(1) IMCB=RAND(2) IMCC=RAND(3) IFdMCA .LT. ICBUA*.07) IMCA=ICBUA*.07 IFdMCB .LT. ICBUB*.07) IMCB=ICBU3*.07 IFdMCC .LT. ICBUC*.07) IMCC=ICBUB*,07 IF(IRBT(NDX(K),25) ,EQ. 0)

1 IRBT(NDX(K),25)=10 CALL BUFFER(IX) ICPSA=(RAND(1)* IRBT(NDX(K) ,3 2)/

1 (IRBT(NDX(K),25)))*100 ICPSB=(RAND(2)*IRBT(NDX(K),32)/

1 (IRBT(NDX(K),25)))*100 ICPSC=(RAND(3)*IRBT(NDX(K),32)/

1 (IRBT(NDX(K),25)))*100 CALL BUFFER(IX) ILCA=RAND(1)*(IRATE)*10 ILCB=RAND(2)*(IRATE)*10 ILCC = RAND(3)*(I RATE)* 10 CALL BUFFERdX) IRCA=RAND(1)*100 IRCB=RAND(2)*100 IRCC=RAND(3)*100 CALL BUFFER(IX) ITAXA=RAND(1)*10

Page 327: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

310

0219 ITAXB=RAND(2)*10 0220 ITAXC=RAND(3)*10 0221 IOHA=IMCA+ICPSA+ILCA+IRCA+ITAXA 0222 IOHB=IMCB+ICPSB+ILCB+IRCB+ITAXB 0223 IOHC=IMCC+ICPSC+ILCC+IRCC+-ITAXC

C 0224 ITOTCA(NDX(K),KOUNT)=INVA+ITEA+lOHA 0225 ITOTCB(NDX(K),KOUNT)=INVB+ITEB+I0H3 0226 ITOTCC(NDX(K),KOUNT)=INVC+ITEC+lOHC 0227 ITOTEX(NDX(K),KOUNT)=(ITOTCA(NDX(K),

1 K0UNT)+4*(ITOTCB(NDX(K),KOUNT)) 2 +ITOTCC(NDX(K),KOUNT))/6

0228 ITOTVA(NDX(K),KOUNT)=((ITOTCA(NDX(K) 1 KOUNT)-ITOTCC(NDX(K),KOUNT))/6)**2

C 0229 NPW(NDX(K),KOUNT)=(ITOTEX(NDX(K),

1 KOUNT))*(l./((1.30)**KOUNT)) 0230 NPWV(NDX(K),KOUNT)=(ITOTVA(NDX(K),

1 KOUNT))*(l./((1.30)**(2*KOUNT))) 0231 200 CONTINUE

C 0232 KN=KN+1 0233 IF(KN .LE. 1000) GO TO 107 0234 K0UNT=K0UNT+1 0235 IF(KOUNT .LE. 5) GO TO 107 0236 KOUNT=KOUNT-1 0237 WRITE(6,210) 0238 210 FORMAT(/,2X,39HPROJECTED TOTAL COSTS

1 FOR 5 YEAR PERIOD// 2 2X,11X,32HPR0JECTED COSTS FOR ROBOTS 3 FOUND/ 4 2X,5HRBT #,4X,'1',lOX,'2',lOX,'3', 5 lOX, 'X' ,1-0/, '5'/)

0239 DO 220 1=1,RBTS 0 240 WRITE(6,230)ITOTCA(NDX(I),JX),

1 (ITOTCA(NDX(I),J),J=1,KOUNT) 0 241 WRITE(6,240)NDX(I),ITOTCB(NDX(I),JX)

1 (ITOTCB(NDX(I),J),J=1,KOUNT) 0 24 2 WRITE(6,2 50)ITOTCC(NDX(I),JX),

1 (ITOTCC(NDX(I),J),J=1,KOUNT) CONTINUE FORMAT(/,7X,6 110) FORMAT(2X,15,6110) FORMAT(7X,6I10) WRITE(6,260) FORMAT(/,2X,3 6HEXPECTED TOTAL COSTS 13X,46HE(TOTAL COST) & V(TOTAL COST) FOR PERIOD INDICATED/ 2X,5HRBT #,4X,•1',10X,'2',10X,•3',

0243 0244 0245 0246 0247 0248

220 230 240 250

260 1 2 3

Page 328: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

311

0249 0250

0251 0252

0253 0254 0255 0256

0257 0258 0259

270 280 290 300

C

: lOX, '4' ,10X, '5V) DO 270 1=1,RBTS WRITE(6,280)ITOTEX(NDX(I),JX),

. (IT0TEX(NDX(I),J),J=1,KOUNT) WRITE(6,290)NDX(I) WRITE(6,300)ITOTVA(NDX(I),JX),

. (ITOTVA(NDX(I),J),J=1,KOUNT) CONTINUE FORMAT(/,7X,6I10) FORMAT(2X,15) FORMAT(7X,6I10)

DO 320 1=1,RBTS DO 310 J=l,KOUNT NPWEX(NDX(I))=NPWEX(NDX(I))

1 +NPW(NDX(I),J) 0260 NPWVA(NDX(I))=NPWVA(NDX(I))

1 +NPWV(NDX(I),J) 0261 310 CONTINUE 0262 NPWEX(NDX(I))=NPWEX(NDX(I))

1 +(NPW(NDX(I),JX) 0263 NPWVA(NDX(I))=NPWVA(NDX(I))

1 +(NPWV(NDX(I),JX) 0264 320 CONTINUE 0265 WRITE(6,330) 02 66 3 30 FORMAT(/,12X,2 7HRESULTS OF THE NPW

1 ANALYSIS// 2 13X,39HE(NPW) AND V(NPW) FOR PERIODS 3 INDICATED/ 4 2X,5HRBT #,4X,'1',lOX,'2',lOX,'3', 5 10X,'4',10x,'5V,lX, 'E(NPW) ' ,2X, 6 •V(NPW)'/)

0267 DO 340 1=1,RBTS 02 68 WRITE(6,350)NPW(NDX(I),JX),

1 (NPW(NDX(I),J),J+1,KOUNT), 2 NPWEX(NDX(I))

0269 WRITE(6,360)NDX(I) 0 270 WRITE(6,3 70)NPWV(NDX(I),JX),

1 (NPWV(NDX(I),J),J=1,KOUNT), 2 NPWVA(NDX(I))

0271 340 CONTINUE 0272 350 FORMAT(/,7X,7I10) 0273 360 F0RMAT(2X,15) 0274 370 F0RMAT(7X,6110,lOX,110) 0275 RETURN 0276 END

C 0001 SUBROUTINE BUFFER(IX) 0002 DIMENSION RAND(IOO)

Page 329: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

312

0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 0014 0015 0016 0017 0018 0019 0020 0021 0022 0023

0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 0014 0015

10

20

30

C

10 20

30

C0MM0N/BLK1/N,KF C0MM0N/BLK8/RAND CALL RANDU(IX,RAND) DAD=0 DO 10 1=1,3 DAD=RAND(I)+DAD A=RAND(1) DO 20 1=2,3 IF(A .LE. RAND(I)) GO TO A=RAND(I) CONTINUE B=RAND(1) DO 30 1=2,3 IF(B .GE. RAND(I)) GO TO B=RAND(I) CONTINUE RAND(1)=A RAND(3)=B RAND(2)=DAD-(A+B) RETURN END

- SUBROUTINE RANDU(IX,RAND) DIMENSION RANDdOO) C0MM0N/BLK1/N,KF KS = KF L=IX DO 30 1=1,N L=65539*L IF(L)10,10,20 L=L+2147483647+1 YL=L YL=YL*.4656613E-9 RAND(I)=YL*KS IX = L RETURN END

20

30

Page 330: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

Sample Input Data:

313

40 10 200 7321 0 . 1 0 0 . 1 0 0 . 1 0 0 . 3 3 0 . 1 0 0 . 1 0 0 . 1 0 0 . 1 0 0 . 1 0 0 . 1 0 0 . 1 0 0 .10 0 . 1 0 0 . 1 0 0 . 1 0 0 .10 0 .10 0 .10 0 . 1 0 0 . 1 0 0 . 1 0 0 . 1 0 0 .10 0 .10 0 . 1 0 0 .10 0 . 1 0 0 .14 0 . 1 4 0 . 1 0 0 . 1 0 0 . 1 0 0 . 1 0 0 . 2 0 0 . 2 5 0 . 1 0 0 . 1 7 0 . 1 7 0 . 1 0 0 . 1 0

0 . 2 0 0 . 2 0 0 . 2 0 0 . 6 7 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 8 0 . 2 8 0 . 2 0 0 . 2 0 0 . 2 0 0 . 2 0 0 . 4 0 0 . 5 0 0 . 2 0 0 . 3 3 0 . 3 3 0 . 2 0 0 . 2 0

0 . 3 0 0 . 3 0 0 . 3 0 1 .00 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 4 3 0 . 4 3 0 . 3 0 0 . 3 0 0 . 3 0 0 . 3 0 0 . 6 0 0 . 7 5 0 . 3 0 0 . 5 0 0 . 5 0 0 . 3 0 0 . 3 0

0 . 4 0 0 . 4 0 0 . 4 0

0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 5 7 0 . 5 7 0 . 4 0 0 . 4 0 0 . 4 0 0 . 4 0 0 . 8 0 1 .00 0 . 4 0 0 . 6 7 0 . 6 7 0 . 4 0 0 . 4 0

0 . 5 0 0 . 5 0 0 . 5 0

0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 0 . 7 1 0 . 7 1 0 . 5 0 0 . 5 0 0 . 5 0 0 . 5 0 1 .00

0 . 5 0 0 . 8 3 0 . 8 3 0 . 5 0 0 . 5 0

0 . 6 0 0 . 6 0 0 . 6 0

0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0 0 . 8 5 0 . 8 5 0 . 6 0 0 . 6 0 0 . 6 0 0 . 6 0

0 . 6 0 1 .00 1 .00 0 . 6 0 0 . 6 0

0 . 7 0 0 . 7 0 0 . 7 0

0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0 1 .00 1 .00 0 . 7 0 0 . 7 0 0 . 7 0 0 . 7 0

0 . 7 0

0 . 7 0 0 . 7 0

0 . 8 0 0 . 8 0 0 . 8 0

0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0

0 . 8 0 0 . 8 0 0 . 8 0 0 . 8 0

0 . 8 0

0 . 8 0 0 . 8 0

0 0 0,

0, 0. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0. 0. 0, 0, 0. 0, 0. 0. 0. 0.

0. 0. 0. 0 .

0.

0. 0 .

. 90

.90

.90

.90

.90

.90

.90

.90

.90

.90

.90

.90

.90

.90

.90

.90

.90

.90

.90

.90

.90

.90

.90

.90

.90

.90

,90 .90 .90 .90

.90

.90

.90

1.00 1.00 1.00

1 .00 1.00 1 .00 1 .00 1.00 1.00 1 .00 1 .00 1.00 1 .00 1.00 1 .00 1 .00 1.00 1 .00 1 .00 1 .00 1.00 1 .00 1 .00 1 .00 1.00 1 .00

1 .00 1 .00 1 .00 1.00

1 .00

1 .00 1 .00

Page 331: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

APPENDIX B

CARSP SYSTEM USER MANUAL

314

Page 332: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

C A R S P S Y S T E M 315

USER MANUAL

This short manual is intended as a guide to help prospective users of the Computer-Aided Robot Selection Procedure (CARSP) System better understand its mechanics.

The CARSP system was coded in the Beginer's All-Purpose Symbolic I_nstruction Code (BASIC) and is CP/M based. It can therefore run on most CP/M (Controlled Programming for Mic­roprocessors) based computers. The current literature was described for the Osborne Executive Computer (Fig. 1) on which the CARSP system was originally designed and coded. It is, however, expected to apply to any other computer without any loss in generality.

The Osborne is a CP/M based computer with 128K RAM memory and two disc drives. These minimum reguirements are essen­tial for the CARSP system to operate effectively.

r

Figure 1: The Osborne EXECUTIVE Computer [S3]

Page 333: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

316

The CARSP follows:

system is divided into five major segme: 1 l-O as

1) MENU 2) DATABASE MANAGEMENT 3) ROBOT SELECTION 4) TASK MATCHING 5) ECONOMIC ANALYSIS

The systems's architecture is shown in Figure 2 and is such that each segment always returns back to the MENU segment. The MENU segment is therefore the getway to the rest of the CARSP system.

This manual assumes that the computer has been BOOTED up to CP/M. For directions on how to BOOT up your computer system to CP/M, consult your User's Manual for the computer system in use.

BOOTing the computer prompt as follows:

A>

system to CP/M will give you the A

WHAT USER DOES CARSP RESPONSE

1. Insert the Disc Marked A into Drive A and that marked B into Drive B and close the Disc doors.

2. Type [M][E](N][U]

Figure 2: Disc Insertion [83]

A > M E N U

Make sure MENU is spelled correctly. Use the LEFT ARROW KEY (or press down on the CTRL key while pressing the H key) on the Computer keyboard to space back and make corrections.

Page 334: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

317

tD 2: W

s

t-i 2 cn 0 >-i 1—t

• • ^ H H K < U CJ U 2: 3 Z 2 H < Di 0

< H »-< w 2 u cn to CO-^HH 2 C/D < H S »-• W pq U C ^ c o < OJ 2 0 H H-J 0 pu, Q <; W U 2 Z Q CO ttJ t-t CU

i-i rv< to Tt o

r j (VI

1)

3

O

a -f—I

<

a;

<

Page 335: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

318

WHAT USER DOES

3. Press RETURN

CARSP RESPONSE

TEXAS TECH UNIVERSHV

CENTER FOR APPLIED RESEARCH IN

INDUSTRIAL AUTOMATION AND ROBOTICS

C C C A

CC C A A

CC AA A

CC AA A AA

CC C AA A RR

C C C AA A RR

RR R R R S S S S

RR R SS

RR R R R R S S S S

RR R SS

R S SS PP

R S S S S ??

P? P P ^

?P P

PP P P P P

PP

(Coiputer Aided-Robot Selection Procedure) J

COPY RIGHT (C) 1983 ALL RIGHTS RESERVED WORLDWIDE

By

FELIX 0 . OFFODILE

CARSP (Computer-Aided Robot Selection Procedure)

r^

K ENTER COHHAND :

•••*••••••••••••••••••

1 ENTER SYSTEM COMMAND !

1 1 DATA BASE MANAGEMENT 1 2 ROBOT SELECTION/HATCH 1 3 ECONOMIC ANALYSIS ! 4 USER INFORMATIONS/INSTR. 1 0 END OF SESSION \»*••••••••••••••#•••••••••/

Page 336: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

319

WHAT USER DOES CARSP RESPONSE

4. Press 4

ENTER COMMAND :

«««*f«»«*«»fiff«*«««««

! ENTER SYSTEM COMMAND !

: 1 DATA BASE MANAGEMENT I 2 ROBOT SELECTION/MATCH 3 ECONOHIC ANALYSIS

I 4 USER INFORMATIONS/INSTR. 0 END OF SESSION

USER INFORMATION/INSTRUCTIONS

(1) DATABASE MANAGEMENT

ALLOWS YOU TO: (a) A-DD a new robot to the DATABASE

(b) D-ELETE a robot frou the DATABASE (c) U-PDATE the status of any robot in the DATABASE.

For exauple, a DELETED robot can be res tored . (d) L-IST one or lo re robots in the DATABASE (e) S-UMHARIZE a l l robots in the DATABASE

ENTER SYSTEM COMMAND OR RETURN KEY FOR MORE INFORMATION:

5. P r e s s [RETURN|key u n t i l you a r e back to F igure 3 of s t e p

By us ing t h i s o p t i o n (USER INFORMATION/INSTRUCTION) you can see the r e s p e c t i v e s u b d i v i s i o n s of each segment of the CARS? system. You can e n t e r any of t he o t h e r cho ices ( 1 , 2 or 3) to a c c e s s t h a t program a t any t i m e . Each of t h e s e program segments w i l l now be d i s c u s s e d .

Page 337: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

FLOW CHART:

M : MENU:

320

( ^ START D LOAD/RUN

MENU PROGRAM

PRINT

MENU NOT ON LOGGED DISC DRIVE.

1 2 3 4

. CHOOSE DATABASE • SELECT/MATCH ECONOMIC ANAL INFO/INSTRUCT

0. END

Page 338: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

4: USER INFORMATION/INSTRUCTIONS:

321

Page 339: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

4 : CONTINUED:

322

Y

Page 340: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

323

4: CONTINUED:

PRINT

ECONOMIC ANAL INF( INSTR

N

Page 341: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

(1) DATABASE MANAGEMENT

324

The DATABASE Management segment of the CARSP system has five subprograms designed to make manipulation of the vast amounr of data used in describing robots more manageable.

WHAT USER DOES CARSP RESPONSE

1. Press [T] LOADING DATABASE MANAGEMENT PROGRAM PLEASE WAIT

DATABASE.BAS SERIES 1 COPYRIGHT (C) 1983

VERSION 1.00 SN:001 ALL RIGHTS RESERVED, WORLDWIDE

By

CENTER FOR APPLIED RESEARCH IN AUTOMATION AND ROBOTICS

•ROBOCQDE-

Robot Descriptive Database

TOTAL NUMBER OF ROBOT DESCRIPTIONS: 199

NUMBER OF DELETED ROBOT DISCRIPTIONS: 0

LAST UPDATED: 0 9 / 1 2 / 8 3

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION

D-ELETE A ROBOT DESCRIPTION L- IST ONE OR ALL ROBOT DESCRIPTIONS

S-UMMARIZE ALL ROBOT DESCRIPTIONS E-ND

COMMAND: ^J FOR HELP

Displayed on the SCREEN i s the f i r s t page of the DATABASE program showing the' f ive subdiv is ions of the segment. Only the f i r s t l e t t e r of each option need be entered to access t ha t op t ion . For example, to A-DD a robot to the da t abase , only an A i s reguired to run the ADD subprogram. A spec ia l f ea tu re of the DATABASE program is i t s screen e d i t i n g capa­b i l i t i e s . Several keys on the computer keyboard have beer. configured for t h i s purpose. To see these keys and t h e i r de-

Page 342: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

325

finitions, type CTRL-J by pressing down on the CTRL key and pressing the J key.

WHAT USER DOES CARSP RESPONSE

2. Pres s CTRL I - [ j ] Entsr Help Sourcs: d:fil3nafl».ext [defaul ts to ROBOT.3Ar:

3. Press default

RETURN f o r ROBOT HEl? INFORMATION

CTRL-W TO WRITE A DESCRIPTION CTRL-Q TO ABANDON CTRL- £ CURSOR UP CTRL-X CURSOR DOWN CTRL-D CURSOR RIBHT CTRL-S CURSOR LEFT CTRL-T ERASE AN ENTRY CTRL-S ERASE A CHARACTER CTRL-C CONTINUE TO NEXT SCREEN CTRL-R RETURN TO PREVIOUS SCREEN CTRL-V TOGGLE INSERT ON/OFF CTRL-J HELP ON AVAILABLE CODES

CODE GROUPINGS

CODE 01 ROBOT CLASS CODE 02 APPLICATIONS CODE 0 3 - CODE 11 PERFORMANCE CODE 12 - CODE 21 PHYSICAL CHARACTERISTICS CODE 22 - CODE 31 GENERAL CHARACTERISTICS CODE 32 - CODE 36 POWER REQUIREMENTS CODE 37 - CODE 40 ENVIRONMENT

Any Key t o E x i t H e l p Menu or CTRL-J f o r i c r e ' H e b '

These s p e c i a l keys are g u i t e handy and h e l p f u l when u s i n g the DATABASE program, e s p e c i a l l y when doing so for the f i r s t t i m e . They are the keys t o use t o maneuver your way around

Page 343: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

326

t h e s c r e e n when r u n n i n g t h e DATABASE p r o g r a m . You may w a n t t o make a c o p y of t h i s p a g e of t h e manua l so t h a t you c a n r e f e r t o i t a s o f t e n a s p o s s i b l e u n t i l you h a v e m a s t e r e d t h e k e y s . T h e s e k e y d e f i n i t i o n s ARE NOT v a l i d f o r o t h e r ? ^ 0 " g rams c a l l y m e n t s

of t h e CARSP s y s t e m , and u n l e s s you h a v e b e e n s p e c i r i -i n s t r u c t e d o t h e r w i s e , do n o t u s e them i n o t h e r s e g -

of t h e CARSP s y s t e m .

WHAT USER DOES CARSP RESPONSE

4 . P r e s s

RETURN TOTAL NUMBER OF ROBOT DESCRIPTIONS: 199 NUMBER OF DELETED ROBOT DISCRIPTIONS: 0

LAST UPDATED: 0 9 / 1 2 / 8 3

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L- IST ONE OR ALL ROBOT DESCRIPTIONS S-UMMARIZE ALL ROBOT DESCRIPTIONS E-ND

COMMAND: ^J FOR HELP

(a) ADD SUBPROGRAM

The A-DD s e g m e n t of t h e DATABASE p r o g r a m i s u s e d f o r a d d i n g r o b o t s t o t h e CARSP s y s t e m . To ADD a r o b o t t o t h e CARS? s y s t e m , o n l y t h e CODES f o r g i v e n r o b o t a t t r i b u t e s a r e u s e d f o r d e s c r i b i n g t h e r o b o t t o t h e s y s t e m . F o r t y (40) a t t r i b ­u t e s a r e u s e d f o r t h i s p u r p o s e p l u s t h r e e a d d i t i o n a l a t t r i b ­u t e s f o r s u c h i n f o r m a t i o n a s t h e r o b o t ' s model name o r i d e n t i f i c a t i o n n u m b e r , and t h e m a n u f a c t u r e r ' s a d d r e s s and phone n u m b e r s . To ADD t h e r o b o t of t h e e x a m p l e p r o b l e m o . A p p e n d i x D h e r e i s w h a t you d o .

WHAT USER DOES CARSP RESPONSE

TOTAL NUMBER OF ROBOT DESCRIPTIONS: 199 NUMBER OF DELETED ROBOT DISCRIPTIONS: 0

LAST UPDATED: 09 /12 /83

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L - I S T ONE OR ALL ROBOT DESCRIPTIONS S-UMMARIZE ALL ROBOT DESCRIPTIONS E-ND

COMMAND: ^J FOR HELP

Page 344: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

327

1: DATABASE SYSTEM

(i START D LOAD/RUN

DATABASE PROGRAM

SUBSYSTEMS

ADD LIST UPDATE END DELETE SUMMARIZE

< •

KEY DEFINITIONS]

Page 345: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

328

WHAT USER DOES CARSP RESPONSE

6. Type ANY ROBOT

USA

7 .

8 .

P r e s s

Type

RETURN

TEXAS TECH

DEPT, OF I . E . ,

CARIAR,

9 . P r e s s

1 0 . Type

RETURN

LUBBOCK

TEXAS, 79409

8 0 6 - 7 4 2 - 3 5 4 3

11. Press RETURN

The cursor now rests at CODE 01.

AiQATRBASE.EBT AOQ RBT I 2 M

n n r iNDEHTiFiCArioii: lAHT loior us* 1 MOTEl: HBTEZ:

CODE I t : COOEK: COOC 13: CQOE l « : CODE I S : CODE K : CODE 17: CODE I I : CODE 19: CODE I t : CODE 1 1 : CODE 12: CODE 13: CODE 14: COOC I S : COOElfi: CODE 17: COOE I t : C8>E19 :

TOftS TECH UmvEBSITY. OEPT. OF I . E . . C a i l l l . LUBBOCK. TQtAS 794M. 8 l t - 7 4 a - U t I

msaroi

1

The rest of the attributes are the actual robot descriptive parameters. They are numbered from CODE 01 to CODE 40. As a reminder, only the CODES and not the exact values of the at­tributes may be entered. Some of these attributes have a one attribute one code relationship, while others have a one code attribute - range relationship. To find out the codes to a given code number, maneuver the CURSOR to the desired code number and type CTRL-J.

Page 346: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

329

WHAT USER DOES CARSP RESPONSE

12. As an example, to code attri­bute 13, press and hold CTRL key and press the X key until CURSOR rests beside CODE 13. The RETURN key may be used for this excercise if CURSOR is above the attri bute to be coded. Use CTRL-E keys if the CURSOR is below. Then press and Hold CTRL key and press J.

»• otrsMsr > i r mm i z w

lorar iROonFicaTioir i i i r n M r o t t i NOTEl: NOTE 2:

COOE I t : rOOE K : COOE 13: COOE l « : COOE 13: COOE I t : COOE 17: COOE I t : CODE B9: CQOE 11: COOE 11: COOE 12: COOE 13: CODE 1«: COOC IS: CODE IC: COOC 17: COOC 11: COOC 19:

TEXAS TECI UnVEISITT. OEPT. OF I . r . C I I I I I ^ LUIIOCK. TnAS7MM. ttL-1»i-JSIX.

COOC 11: VAUDCOOES-t OTIIEff WmEI OF AXES 11 NimEE OF AXES UHSTECinEir 21- 2 AXES 31 I AXES 41 4 AXES SI SAXES 61 6 AXES 71 7 AXES 81 8 AXES 31 9 AXES

inaroa*

I

The valid codes are on the first column of the valid code display, and the rest of the columns are the actual des­criptions for the given robot attribute.

Since the value of CODE 13 (number of axes) to enter is 5-axis, find 50 as the valid code when the number of axes is 5 and enter it. The system has no way of checking that you have entered the right code value for the given- robot attri­bute. That is, the system does not know that you meant to enter 50 instead of 40. So make sure that your entries are correct. To correct any false entries, use the CTRL-Y key to to erase all entries for the given CODE and re-enter the correct code. Or, use the CTRL-G/T keys to erase one charac­ter or range of characters at a time. The system does, however, check that you have entered a valid code. So, while 10, 20, 30 and so on are valid codes for number of axes, they may not necessarily be correct codes for- the robot you are describing. Fifteen (15) is not a valid code for CODE 13 and can not be accepted by the system. Try entering a code that is not listed as a valid code and notice what happens. Entering an illegal code is an automatic CTRL-J.

To code Attribute 33, Type CTRL-C Use the RETURN key to move the CURSOR downwards or CTRL-E to move it upwards. Place the CURSOR at CODE 3 3 and type CTRL-J.

Page 347: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

330

WHAT USER DOES CARSP RESPONSE

13. Type

CTRL - C

14. Place cursor at CODE 33 and type

CTRL I -|T|

^

*a*TiiKCHr aHiiriiN» i i n r i » |

COK 21: I CQK 2t: i COK 22: • COOf 21: I can 2«: • CODE 2S: I con 2(: I COOE 27- I COOC 21: I COOE 21: I COOE I I : I COOE It : 1 CODE IZ: • COOE I I : COOE I«: 1 CODE 13: I COOE I k I CODE 17: I COOE I I : 1 COOS Ifr I CQH4IC I

COOCII' VHI9 CODES 1 omiTtic vnnu mrsnctricr II v o i z vot voirtCE. 21 V>I2 voc voiratc I I v ( < i i i y ( C v o i T u r 4»' i i i<v<. i2 i VIC v a i n e r » I2i(*<'2ii VIC vo truc i l 2Ii<V(>]U VIC VOITUC 71 in«V<.««l ViC VOIITCE I t 4U<V(*)N VIC VOUIO. )t- v>]N VIC mrits.

Page 348: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

331

WHAT USER DOES CARSP RESPONSE

15. Enter the valid code for the voltage re­quirement of 230 VAC

r

CODE 29: CODE 30: CODE 31: CODE 32: CODE 33: CODE 34: CODE .33: CODE 36:

v

>

0 0 0 0 50 0 0 0 y

Notice that if you had numbered the robot attributes, you would not have to be flipping between pages describing them.. You can just work down the codes in sequence skipping those attributes that have no code values until the last valued attribute has been coded.

To QUIT this exercise tions type CTRL-Q.

without saving the robot descrip-

WHAT USER DOES CARSP RESPONSE

16. Type CTRL - Q ABANDON ADDITION OF ROBOT DSC. • 200?

Page 349: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

332

WHAT USER DOES CARSP RESPONSE

17. Type [Y] for YES and press

RETURN

TOTAL NUMBER OF ROBOT DESCRIPTIONS: 199

NUHBER OF DELETED ROBOT DISCRIPTIONS: 0

LAST UPDATED: 0 9 / 1 2 / 9 3

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTIN6 ROBOT DESCRIPTION

D-ELETE A ROBOT DESCRIPTION L- IST ONE OR ALL ROBOT DESCRIPTIONS

S-UMHARIZE ALL ROBOT DESCRIPTIONS E-ND

COMMAND: J FOR HELP

To SAVE t h e d e s c r i b e d r o b o t t o t h e d a t a b a s e t y p e CTRL-W

WHAT USER DOES CARSP RESPONSE

1 8 . Type

CTRL W TOTAL NUMBER OF ROBOT DESCRIPTIONS: 199

NUMBER OF DELETED ROBOT DISCRIPTIONS: 0

LAST UPDATED: 0 9 / 1 2 / 8 3

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTIN6 ROBOT DESCRIPTION

D-ELETE A ROBOT DESCRIPTION L- IST ONE OR ALL ROBOT DESCRIPTIONS

S-UHHARIZE ALL ROBOT DESCRIPTIONS E-ND

COMMAND: J FOR HELP

Using e i t h e r t he CTRL-Q or CTRL-W w i l l r e t u r n you to zr.e DATABASE Menu. For more robo t d e s c r i p t i o n s use the A-DD op t ion as many t imes as p o s s i b l e u n t i l a l l the r o b o t s have been d e s c r i b e d . Other segments of the DATABASE program a r e d e s c r i b e d below.

Page 350: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

A: ADD SUBSYSTEM. 333

<r^

ENTER/CHANGE

ROBOT DESC.

N

N

N

PRINT

HELP FILE

Y ^ ABANDON X . ADD/UPDATE?

• ^

Page 351: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

3 3 4

(b) UPDATE SUBPROGRAM

The UPDATE s u b s y s t e m i s v e r y much l i k e t h e ADD s u b s y s t e m e x c e p t t h a t i n t h i s c a s e t h e r o b o t t o be UPDATEd a l r e a d y e x i s t s i n t h e CARSP sys t em d a t a b a s e . The r o b o t t o be UPDATEd must t h e r e f o r e have a r e f e r e n c e number . A l l r o b o t s i n t h e CARSP s y s t e m d a t a b a s e have r e f e r e n c e n u m b e r s .

WHAT USER DOES CARSP RESPONSE

TOTAL NUMBER OF ROBOT DESCRIPTIONS: 199 NUHBER OF DELETED ROBOT DISCRIPTIONS: 0

LAST UPDATED: 0 9 / 1 2 / 8 3

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L- IST ONE OR ALL ROBOT DESCRIPTIONS S-UHHARIZE ALL ROBOT DESCRIPTIONS E-ND

^ COHHAND: ^J FOR HELP J

19 . Type

flT] and

p r e s s

RETURN

TOTAL NUMBER OF ROBOT DESCRIPTIONS: 199 NUMBER OF DELETED ROBOT DISCRIPTIONS: 0

LAST UPDATED: 09/12/83

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L-IST ONE OR ALL ROBOT DESCRIPTIONS S-UHHARIZE ALL ROBOT DESCRIPTIONS E-ND

COMMAND: ^J FOR HELP

ENTER THE NUMBER OF THE ROBOT DSC. YOU KANT TO UPDATE:

Page 352: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

335

WHAT USER DOES CARSP RESPONSE

20. Type

[I][o][I] for this example and press

RETURN

The same screen as was seen in the ADD exercise is dis­played. You can now follow the same instructions given in the ADD subprogram. The only difference in this case is that you are making changes (UPDATEing) instead of making an all new robot entry. Suppose in ADDing robot 100 to the database that you had mistakenly listed it as SERVO CP/PTP instead of SERVO CONTINUOUS PATH only. To correct this mistake here is what you do.

WHAT USER DOES CARSP RESPONSE

21. Press

RETURN

key till CURSOR is at CODE 01

A:DATABASE.RBT

ROBOT INDENTIFICATION: JDEVILBISS TR-3500S| NOTE i: NOTE 2:

CODE 01: CODE 02: CODE 03: CODE 04:

DEVILBISS COMPANY, THE 300 PHILLIPS AVE., TOLEDO, OH. 43692 50 30 70 10

UPDT RBT 1100

1 419-470-21691

1

Page 353: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

336

WHAT USER DOES CARSP RESPONSE

22. Use

CTRL|-[T|

keys to erase the existing code entry of 50.

r A:DATABASE.RBT

ROBOT INDENTIFICATION: IDEVILBISS Tf{-3500Si NOTE l: IDEVILBISS COMPANY, THE NOTE 2: !300 PHIUIPS AVE., TOLEDO, OH. 43692

CODE 01: !S0! CODE 02: !30; CODE 03: 1701 CODE 04: 110!

UPDT RBT 1100

1 1

419-470-21691

J

23. Then use

CTRL| -[T]

to find the valid code for SERVO -CONTINUOUS PATH.

ftionausEJir unrnrii

lonr imanFiuriow: loniiBiss n-ism. | NOTE I: DEVILBISS Camwr. THE NOTE 2: 3 U PKlLUfS AVE.. TOlEaS. 01 . 43UZ.

CODE at : COOE K : I I COOEIX: 71 COOE 11: VILia COS? COOE 14: II • KotorsTsracussmrsRCiFiBt CODEtS: » II SEm-PKCISIOt COOE 1*1 SI 2* SEHB - COiTIIHUniS MT»-COOE 17: • » SEiro - PQIir T8 Pdiiir CODE 8 1 : 21 « • MM SEITO - POIRT T8 POIIT COOE Mr I 51 SEWB - CP/PTF COOE 11: • S i SEiVa - WWk S E I W - PTT COOE 11: I 7 i Savd - PTf/Wi SEIW - PTT COOE 12: • 8t iESEIVEB ^ ^ COOE 13: SI j r anaTTPESOFCQITnLSTSTEB' COOE ! • : 21 COOE 15: SI COOE IS: I CODE 17r i COOC I t : t COOC 19: •

41}->7Mia

Page 354: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

337

WHAT USER DOES

24. Enter valid code of 20 for SERVO -CONTINUOUS PATH.

CARSP RESPONSE

• lomttsciir unri

mar lannFiaiTiinr |Difiiiis&Ti-i3iis^ i NOTE I : " NOTE 2 :

COOCII : COOE I Z : CODE » : CaOE S«: CQOE I S : COOE Ifis-CGOE 17 : CQOE 8 1 : COOE 8 f r COOE l l r COOE 1 1 : COOE 12: COOE 12: COOE 1«: COOE I S : COOE I S : COOE 17: COOE l i r COOE I t r

QE?ILBISS CQVMr. THE l i t PHILLIPS AVE.. TOUmr. 01;. «ttSC:

CQOE It: vHiacncr 1 i O m STSTER CLASS NrSPEnHBT l i SaVO - PIECIS1Q» Z i SEIVO - CaiTINUaOS PATH 3 i sEiTB - PoiiT TO pomr 4 i NONSEna-PoiirTiiPOiir Si SEIVi-CP/PTf Si SUV8 - CP/Nfl» SElVir-PTT 7 i SElVi - PTF/NOi S E H t - P T f 8 i RESEITES 3t. aiHES TTPCS OF CSiTIOLSTSIEI

i i r i i » i mnm. •

1 4i}-*;i-«ia|

25. Use CTRL W

keys to record t h i s change in the da tabase .

ENTER THE NUHBER OF THE ROBOT DSC. YOU NANT TO UPDATE D

26. E n t e r n e x t ROBOT NO. t o UPDATE, <CR> i f no more . (En te r RETURN fo r t h i s example)

TOTAL NUMBER OF ROBOT DESCRIPTIONS: 199 NUHBER OF DELETED ROBOT DISCRIPTIONS: 0

LAST UPDATED: 0 9 / 1 2 / 8 3

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L- IST ONE OR ALL ROBOT DESCRIPTIONS S-UHHARIZE ALL ROBOT DESCRIPTIONS E-MD

COHHAND: ^J FOR HELP

This procedure can be used to make a l l the necessary changes on any robot cur ren t ly res id ing in the database . This sub­system i s not only useful for co r rec t ing e r ro r s but a l so for actual UPDATEing of robot a t t r i b u t e s . The manufacturer or user of a robot may some time in the future so rebui ld a robot tha t i t has more c a p a b i l i t i e s than i t had a t the time of i t s i n i t i a l entry in to the system's da tabase . The UPDATE subsystem can be used to record t h i s change.

Page 355: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

A: ADD SUBSYSTEM.

338

T

ENTER/CHANGE

ROBOT DESC.

N

N

PRINT

HELP FILE

Y

• ^

Page 356: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

339

(c) DELETE SUBSYSTEM

There comes a time when it may be necessary to igno robots in future database search. This could be bee robots have become obsolete or have been discontinue manufacturer for one reason or another. The DELETE s could be used to tell the CARSP system not to consid robots in the future. The robots are not erased f database, however, and can be restored or UPDATEd ( to active file) . If there are several of such robot database, they may artificially inflate the size database thereby taking up more storage space. If yo mine that a given robot should be ERASED from the d use the UPDATE subsystem to recall the robot, then u special keys erase all the entries and ADD a new r its place.

re some ause the d by the ubsystem er these rom t.he returned s in the of the u deter-atabase, sing the obot in

To DELETE a robot from the database here is what you do.

WHAT USER DOES CARSP RESPONSE

TOTAL NUHBER OF ROBOT DESCRIPTIONS: 199 NUMBER OF DELETED ROBOT DISCRIPTIONS: 0

LAST UPDATED: 09/12/83

A-DD A ROBOT DESCRIPTION U-PDATE AN EHSTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L-IST ONE OR ALL ROBOT DESCRIPTIONS S-UHHARIZE ALL ROBOT DESCRIPTIONS E-ND

COMMAND: ^J FOR HELP

J

27 . Type

and D

press

RETURN

TOTAL NUHBER OF ROBOT DESCRIPTIONS: 199 NUHBER OF DELETED ROBOT DISCRIPTIONS: 0

LAST UPDATED: 09/12/83

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L-IST ONE OR ALL ROBOT DESCRIPTIONS S-UMMARIZE ALL ROBOT DESCRIPTIONS E-ND

COMMAND: ^J FOR HELP

Page 357: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

340

WHAT USER DOES CARSP RESPONSE

28. En te r

nifoifoi

for this example and press

RETURN

TOTAL NUHBER OF ROBOT DESCRIPTIONS: 199 NUHBER OF DELETED ROBOT DISCRIPTIONS: 1

LAST UPDATED: 09/12/33

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L-IST ONE OR ALL ROBOT DESCRIPTIONS S-UMMARIZE ALL ROBOT DESCRIPTIONS E-ND

COHHAND: J FOR HELP

D: DELETE SUBSYSTEM.

ENTER

ROBOT NUMBER TO DELETE

,1.1—,^

Page 358: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

341

(d) LIST SUBSYSTEM

The LIST s u b s y s t e m i s used t o show t h e r o b o t s i n t h e d a t a ­b a s e i n a u s e r u n d e r s t a n d a b l e fo rm. You have t h e o p t i o n of LISTing t o a p r i n t e r t o o b t a i n a h a r d c o p y , o r LISTing t o t h e s c r e e n (CRT).

WHAT USER DOES CARSP RESPONSE

TOTAL NUHBER OF ROBOT DESCRIPTIONS: 199 NUMBER OF DELETED ROBOT DISCRIPTIONS: 1

LAST UPDATED: 0 9 / 1 2 / 8 3

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION

D-ELETE A ROBOT DESCRIPTION L- IST ONE OR ALL ROBOT DESCRIPTIONS

S-UHHARIZE ALL ROBOT DESCRIPTIONS E-ND

COHHAND: J FOR HELP

29 . Type [JL

and p r e s s

RETURN

TOTAL NUHBER OF ROBOT DESCRIPTIONS: 199 NUHBER OF DELETED ROBOT DISCRIPTIONS: 1

LAST UPDATED: 09/12/83

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L-IST ONE OR ALL ROBOT DESCRIPTIONS S-UMMARIZE ALL ROBOT DESCRIPTIONS E-ND

COMMAND: ^J FOR HELP

ENTER A SINGLE ROBOT DSC. NO., 2 ROBOT DSC. NO.'S SEPARATED BY A DASH, AN 'A' TO LIST THE ENTIRE FILE, OR (RETURN) TO RETURN TO MENU

Page 359: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

i ^

WHAT USER DOES CARSP RESPONSE

30. Enter

for this example and press

RETURN

TOTAL NUFIBER OF ROBOT DESCRIPTIONS: :9« KUflBER OF DELETED ROBOT DISCRIPTIW(S: 1

LAST JPOSTE;: 0 9 / I : 33

342

\

ft-DO A ROBOT DESCRIPTION U-PJiTE AM ElISMNS ROBOT :E5:'!PT::'<

D-ELETE A ROBOT DESCRIPTION L-IST 3NE OR ALL ROBOT JEJC'IPTIONS S-UHHARIZE ALL ROBOT DESCRIPTIONS E-ND

COHHAND: 'J FOR HELP

V

ENTER fl SINGLE ROBOT DSC. NO., 2 ROBOT OSC. NO.'S SEPARATED BY 4 AN "A' TO LIST THE ENTIRE FILE, OR (RETURN) TO RETURN TO ««£NU IS OUTPUT BEING SENT TO PRINTER OR CRT CP' OR C')' SET UP THE PRINTER AND PRESS RETURN

DASH,

3 1 . E n t e r

f o r CRT and p r e s s

RETURN .

091283 ROBOT DESCRIPTIONS A:DAIABASE.RBT

ROBOT DSC. I lOO >•*<* DELETED •<<»« ROBOT INDENTIFICATION: DEVILBISS TR-3500S NOIE l: DEVILBISS COHPANY, THE

300 PHILLIPS AVE., lOLEOO, OH. 43692 NOTE 2: COOE 01: CODE 02: CODE 03: CODE 01: CODE 05: CODE 04: CODE 07: CODE 08: CODE 09: CODE lo: CODE ll: CODE 12: CODE 13: CODE M : CODE is: COOE 1&: CODE 17: COOE 18: COOE 19: CODE 20: CODE 2l: CODE 22: CODE 23: CODE U: CODE 25: COOE 24: CODE 27: CODE 28: CODE 29: COOE 30: CODE 31: CODE 32: CODE 33: CODE 3«: COOE 35: COOE 34: CODE 37: COOE 38: CODE 39: CODE 40:

30 50 30 70 10 90 90 0 20 0 0 0 0 40 30 50 0 0 0 0 40 10 80 0 0 30 20 40 10 0 10 70 0 50 30 20 0 10 20 0 0

419-470-2149

V_

SERVO - CP/PTP FINISHING OPERATIONS VISUAL/RANGE-PROIIHITY SENSORS YES: DIAGNOSTICS AVAILABLE R>.030' I R).740(1fl REPEAIA8ILITY PA>.030' ! PA>.740HH ACCURACY PAYLOAD IN P0UN03/KIL06RAHS UNSPECIFIED 5<LV(.10 IPS I 127(LV(>25i HHPS VELOCITY ANGULAR VELOCITY (DEGREES): NOT SPECIFIED HTBF (HRS OR V\ UNSPECIFIED HTTR (HRS OR 1): UHSPECIFIEO COORDINATE SYSTEH NOT SPECIFIED 4 AIES 20'<HR(M0' I 508HH<HR<M014HH H. REACH 40VVR<»80* I 1524HH(VR<:2032MH V. REACH ARH SNEEP lOESREES/IM/HH); UNSPECIFIED MRIST BEND/PITCH (DEGREES): UNSPECIFIED/UNAVAILABLE WIST YAN (DEGREES): UNSPECIFIED/UNAVAILABLE NRIST SKIVEL/ROLL (DEGREES): UNSPECIFIED/UNAVAILABLE 1000<N<»2000 LB8 I 454(N(.907 iB5 FS<=5 SO. FT. I FS<«!8.3 SB. H. ELECIROMIC/HICROPROCESSOR FYPES flEMQRt HEHORY CAPACITY (I STEPS.8YlES,PR0GfiAHS):UNSPECIFIED NUHBER OF I/O CHANNELS NOT SPECIFIED HYDRAULIC DRIVE LEADTHROUGH PROGRAH HETHOD ARC NELDING/SPRAY GUN ONE GRIPPER ONLY

SAFETY FEAIURES NOT SPECIFIED FLOOR MOUNTED 1FHED) 90000<C<"«IOOOOO COSI/ROBOI PONER CONSUHPTION: NOT SPECIFIED 12O(V<«230 VAC VOLIAGE VOLTAGE PHASE • 3 VOLTAGE FREB. • 40 HERTZ CURRENT lAHPERES): NOT SPECIFIED T<«32 DES. F ! r<=0 DEG. C HIN lEHP. 100<Hn< = i:0 DEB. F ! 40(11I('50 DEG C HAI TEHP. ENVIRONHENIAL HUHIDITY: NOT SPECIFIED TOLERABLE ADVERSE ENVIR0NHENIS:UHSPEC1F1ED

u » i PRESS ANY KEY 10 RETURN '3 "fllN HENU «•••

Page 360: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

343

WHAT USER DOES CARSP RESPONSE

32. Press

RETURN TOTAL NUHBER OF ROBOT DESCRIPTIONS: 199 NUMBER OF DELETED ROBOT DISCRIPTIONS: 1

LAST UPDATED: 09/12/83

A-DD A ROBOT DESCRIPTION U-PDATE AH EXISTING ROBOT DESCRIPTION! D-ELETE A ROBOT DESCRIPTION L-IST ONE OR ALL ROBOT DESCRIPTIONS S-UMHARIZE ALL ROBOT DESCRIPTIONS E-ND

COMMAND: 'i FOR HELP

Page 361: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

344

(e) SUMMARIZE SUBSYSTEM

ALL The SUMMARIZE s u b s y s t e m i s u s e d t o l i s t t h e d a t a b a s e . L i k e t h e LIST s u b s y s t e m , c h o i c e o f CRT o r PRINTER. U n l i k e t h e LIST s u b s y s t e m , e v e r , t h e r o b o t s a r e l i s t e d i n t h e i r c o d e f o r m .

t h e r o b o t s m you a l s o h a v e a

how-

WHAT USER DOES CARSP RESPONSE

TOTAL NUMBER OF ROBOT DESCRIPTIONS: 199

NUMBER OF DELETED ROBOT DISCRIPTIONS: 1

LAST UPDATED: 0 9 / 1 2 / 8 3

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION

D-ELETE A ROBOT DESCRIPTION L- IST ONE OR ALL ROBOT DESCRIPTIONS

S-UMMARIZE ALL ROBOT DESCRIPTIONS E-ND

COHHAND: ^J FOR HELP

3. Type

S

and press

RETURN.

TOTAL NUMBER OF ROBOT DESCRIPTIONS: 199

NUMBER OF DELETED ROBOT DISCRIPTIONS: 1 LAST UPDATED: 0 9 / 1 2 / 8 3

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION

D-ELETE A ROBOT DESCRIPTION L- IST ONE OR ALL ROBOT DESCRIPTIONS S-UHHARIZE ALL ROBOT DESCRIPTIONS E-ND

COHHAND: J FOR HELP

IS OUTPUT BEING SENT TO CRT OR PRINTER C P ' OR '£')'> SET UP THE PRINTER, THEN PRESS RETURN

Page 362: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

345

WHAT USER DOES CARSP RESPONSE

34. Enter

for CRT and press

RETURN

091283 A:DATABASE.RBT LIST OF ROBOT DESCRIPTIONS

(CLASSIFICATION FOLLOWS) NO. IDENTIFICATION 1 NUMAN I k II

20170130!10!50!50!50!40!OIO!OI40!50!70I80I70!30!0160160!40!

2 OIO!0!OIOIOI010I010!0!0!OIO!0!0!OIOIO!OIOI010!0!010!OIOIO!C

3 0!0!0I01010!010!0I010!0!010!0I0!0!0I0!0!0!0!0!0!0I0!0!010!C

4 ACROBE AG-4 10!8010110!10I10!2010!20!OI0140190I010!0!0!0!0!20190!80I301

52

53

54

55

56

CYBERVISION 20190180110!30I50I20150!010!OI10150!20!20!20!6010!70!60I3C

ROBOVISION 20180180!101501013015010180!10140150140150170130170!601011

AUTOHATIX AID-80 2018010!015010!3010101010140150130130!0!01010101010101011(

BENDIX ML-360 CNC 30190140110140170160170140190!101401601701901014012017018(

BENDIX AA-160 30190140110120130!40170160190!10130160150!80180150130170!I

TOTAL NUMBER OF ROBOT DESCRIPTIONS: 199 NUMBER OF DELETED ROBOT DISCRIPTIONS: 0

LAST UPDATED: 09/12/83

A-DD A ROBOT DESCRIPTION U-PDATE AN EXISTING ROBOT DESCRIPTION D-ELETE A ROBOT DESCRIPTION L-IST ONE OR ALL ROBOT DESCRIPTIONS S-UMMARIZE ALL ROBOT DESCRIPTIONS E-ND

COMMAND: J FOR HELP

^

Page 363: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

346

WHAT USER DOES CARSP RESPONSE

35. Enter and <CR> to Exit the DATABASE program.

RETURNING TO MAIN MENU: PLEASE NAIT

c

ENTER COMMAND : V

»«f**f«***«««»*«»«*f«

1 ENTER SYSTEM COMMAND 1 /»f*««*«****««««ff««ff*«f«*\

! 1 DATA BASE MANAGEMENT 1 2 ROBOT SELECTION/MATCH 1 3 ECONOHIC ANALYSIS 1 4 USER INFORMATIONS/INSTR. 1 0 END OF SESSION \**««««««M««««f«*f««»t*«*f/

The CARSP system system by entering program.

MENU is displayed and you can 0, or any other key to work on

exit the a specific

As final notes on the DATABASE programs, you can not write beyond the right hand bar of the ADD or UPDATE tables. This is the system's way of controlling the number of information furnished for these robot attributes.

Normally you should be able to INSERT characters without erasing the already existing character. If this is true tne existing characters will be moved to the right. If not, you have accidentally turned OFF the INSERT switch. To turn it ON:

Hold down the CTRL key and press V once. The words INSERT ON should appear at the top right of your screen. If they not, repeat the CTRL-V command.

-- '

Page 364: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

(2) ROBOT SELECTION

347

This s e c t i o n of t h e CARSP sys t em i s d i v i d e d m e n t s . The SELECTION s u b s y s t e m a l l o w s you d a t a b a s e f o r r o b o t s w i t h a s p e c i f i c t y p e of o r r o b o t s m a n u f a c t u r e d by a s p e c i f i c company sys tem a l l o w s you t o d e s c r i b e a t a s k t o t h e t h e t a s k v a r i a b l e s f o r a d a t a b a s e s e a r c h of t o pe r fo rm t h e t a s k .

i n t o two s e g -t o s e a r c h t h e c o n t r o l s y s t e m ,

. The MATCH s u b ­sys t em and u s e

r o b o t s b e s t a b l e

If you came t h i s f a r from t h e d a t a b a s e program c o n t i n u e , e l s e b r i n g up t h e MENU program by p e r f o r m i n g t h e f i r s t 5 s t e p s of t h i s MANUAL. Then, t o RUN t h e SELECT program h e r e i s what you d o .

WHAT USER DOES CARSP RESPONSE

/

ENTER COHHAND : V

**********************

! ENTER SYSTEM COMMAND 1

! 1 DATA BASE MANAGEMENT 1 2 ROBOT SELECTION/MATCH 1 3 ECONOMIC ANALYSIS I 4 USER INFORMATIONS/INSTR. 1 0 END OF SESSION \»f •#§•«••••##••••••••••••/

\

J

1. Enter Option LOADING ROBOT SELECTION PROGRAM PLEASE WAIT

ROBOT SELECTION OPTIONS

1 SEARCH A DATABASE by type of Robot CONTROL SYSTEH (ROBOT CLASS) 2 HATCH A TASK TO A ROBOT by type of APPLICATION

3 RESERVED 0 RETURN TO MAIN MENU

ENTER COMMAND:

Page 365: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

348 A) ROBOT SELECTION: By type of Control System

To do a database search of robots with a given type of control system enter the 1 option. As an example, to search the database for robots manufactured by CINcinnati Milacron here is what you do. (Similarly, to search for robots of any control system, just enter the number corresponding to the desired control type).

WHAT USER DOES CARSP RESPONSE

Enter B 1 2 3 4 5 6 7 3 9 A 0

SEARCHING DATABASE BY ROBOT CLASS

SERVO PRECISION SERVO CONTINUOUS PATH SERVO POINT TO POINT NON-SERVO POINT TO POINT SERVO CP/SERVO PTP SERVO CP/NON-SERVO PTP SERVO PTP/NON-SERVO PTP RESERVED NOT IMPLEMENTED OTHER TYPES OF CLASS COMPANY NAME Ist 3 LETTERS RETURN TO HENU

ENTER COHHAND:

DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX:

B:PRECISON.NDX B:CONPATH.NDX B:SERVOPTP.NDX B:NONSERVO.NDX B:SCP-SPTP.NDX B:SCP-NONS.NDX B:SPTP-NON.NDX B:RESERVED.NDX B:OTHER-CL.NDX B:COMPANY.NDX

3. Enter A

to search

by Company Name.

1 2 3 4 5 6 7 3 9 A 0

SEARCHING DATABASE BY ROBOT CLASS

SERVO PRECISION SERVO CONTINUOUS PATH SERVO POINT TO POINT NON-SERVO POINT TO POINT SERVO CP/SERVO PTP SERVO CP/NON-SERVO PTP SERVO PTP/NON-SERVO PTP RESERVED NOT IMPLEMENTED OTHER TYPES OF CLASS COMPANY NAME Ist 3 LETTERS RETURN TO MENU

ENTER COMMAND:

DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX:

B:PRECISON.NDX B:CONPATH.NDX B:SERVOPTP.NDX B:NONSERVO.NDX B:SCP-SPTP.NDX B:SCP-NONS.NDX B:SPTP-NON.NDX B:RESERVED.NDX B:OTHER-CL.NDX B:COMPANY.NDX

ENTER THE FIRST THREE LETTERS IN THE COMPANY NAME. EXAMPLE: THE XYTZ COHPANY ==> XYT; AND, ABCD MANUFACTURING ==> ABC

COMPANY NAME:

Page 366: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

349

WHAT USER DOES

4. Type [C1[I][N] r and press

CARSP RESPONSE

RETURN ,

SEARCHING ROBOT NO.: SEARCHING ROBOT NO.: SEARCHING ROBOT NO. SEARCHING ROBOT NO.: SEARCHING ROBOT NO. SEARCHING ROBOT NO.. SEARCHING ROBOT NO. SEARCHING ROBOT NO. SEARCHING ROBOT NO. SEARCHING ROBOT NO.

*

«

SEARCHING ROBOT NO.

63

1 2 3 4 5 6

: 7 8

: 9 ; 10

: 63

HILACRON T3-756 CINCINNATI MILACRON, 215 S. NEST ST., LEBANON, OH. 45036 513-932-4400 20!90!90ll0i5010!50140!0!0!0!40!60!701901701601301901801301 8013010!10180180101501I017010170t30!20!0120120101901 SEARCHING ROBOT NO.: 64 64

HILACRON T3-566 CINCINNATI MILACRON, 215 S. WEST ST., LEBANON, OH. 45036 513-932-4400 20190180!10!9010!501601010!OI40160!70190150!0!201401801501 8013010130180180101501101601017013012010120120101901

SEARCHING ROBOT NO,: SEARCHING ROBOT NO.: SEARCHING ROBOT NO.: SEARCHING ROBOT NO.: SEARCHING ROBOT NO.: SEARCHING ROBOT NO.: SEARCHING ROBOT NO.:

193 194 195 196 197 198 199

marv

Page 367: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

350

WHAT USER DOES CARPS RESPONSE

INPUT TEST FOR INDEX WRITTEN FOR COMPANY NAME ROBOTS

HILACRON HT3

ROBOT f 63 64 65 66 67 68 69

MIIMRCQ HP

DESCRIPTION HILACRON T3-756 MILACRON T3-566 MILACRON T3-586 MILACRON T3-726 MILACRON T3-746 HILACRON T3-776 MILACRON HT3

cnpnTQ FniiwTi > 7

TYPE P TO SEND OUTPUT TO PRINTER OR RETURN TO CONTINUE:

Press

RETURN

r

1 2 3 4 5 6 7 8 9 A 0

SEARCHING DATABASE BY ROBOT CLASS

SERVO PRECISION DATA INDEX: SERVO CONTINUOUS PATH SERVO POINT TO POINT NON-SERVO POINT TO POINT SERVO CP/SERVO PTP SERVO CP/NON-SERVO PTP SERVO PTP/NON-SERVO PTP RESERVED NOT IMPLEMENTED OTHER TYPES OF CLASS COMPANY NAME 1st 3 LETTERS RETURN TO MENU

ENTER COMMAND:

DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX: DATA INDEX:

B:PRECISON.NDX B:C0NPATH.NDX B:SERVOPTP.NDX B:NONSERVO.NDX B:SCP-SPTP.NDX B:SCP-NONS.NDX B:SPTP-NON.NDX B:RESERVED.NDX B:OTHER-CL.NDX B:COMPANY.NDX

w

Page 368: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

351

The found robots are saved in a file named B:COMPANY.NAME and can be accessed using normal CP/M procedures. You can enter any other choice to search for the robots with the given type of control system, or enter 0 to exit the SELECT program. Realize, however, that repeating the database search by COMPANY name will destroy the first file and replace it with the new one created by the the last search. If the last search was unsuccessful, then no robot will be in that file. The robots found by using the SELECT program can be called up using the LIST subsystem of the DATABASE program, and the robot numbers as discussed ealier.

WHAT USER DOES CARSP RESPONSE

6. Press [o]

L

ROBOT SELECTION OPTIONS

1 SEARCH A DATABASE by type of Robot CONTROL SYSTEH (ROBOT CLASS) 2 MATCH A TASK TO A ROBOT by type oi APPLICATION 3 RESERVED 0 RETURN TO MAIN MENU

ENTER COMMAND:

7. P r e s s [oj RETURNING TO MAIN MENU PLEASE WAIT

ENTER COMMAND

1 ENTER SYSTEH COMMAND 1 /f«««f*««t««««f*«««««t«««»«\

1 DATA BASE MANAGEMENT I 2 ROBOT SELECTION/MATCH 3 ECONOMIC ANALYSIS 4 USER INFORMATIONS/INSTR. 0 END OF SESSION

J

Page 369: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

352

2: ROBOT SELECTION SYSTEM.

(i START )

LOAD/RUN

SELECT PROGRAM

SUBSYSTEMS

SELECTION MATCHING MENU

N

Page 370: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

2 : SELECTION- BY TYPE OF CONTROL SYSTEM,

353

SELECT OPTIONS

1. SERVO PREC.

0. SELECT MENU

LIST

ROBOT FILE

ENTER

COMPANY NAME

Y SEARCH DATABASE SAVE ROBC

SETUP PRINTER

Page 371: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

354

B) TASK MATCHING

This section of the CARSP system allows you to describe a task to the system and use the task variables to search the database for the robots that are best able to perform the task. This requires that the task be described to the system in the same manner that you would describe a robot. It is not expected, however, that the task would require up to 40 attributes for description. You only have to use those at­tributes that apply to the task and are codable in the CARSP system.

Some task attributes have direct one-to-one relationship with some robot attributes while some like lot sizes, cycle times and layout dimensions do not. If your task has these variables, the CARSP system has a way of matching the.T, tio a robot attribute.

To run the TASK MATCHing program bring up the MENU program as described earlier. Then access the SELECT program using the 2 option. Then use the 2 option of the SELECT program to access the TASK MATCHing program.

To describe the task of Appendix C here is what you do.

WHAT USER DOES

r C A R S P R E S P O N S E

1 ENTER SYSTEM COHHAND 1

1 DATA BASE MANAGEMENT ! 2 ROBOT SELECTION/MATCH 3 ECONOMIC ANALYSIS

I 4 USER INFORHATIONS/INSTR. 0 END OF SESSION

ENTER COMMAND :

1. Enter option |_2j LOADING ROBOT SELECTION PROGRAM PLEASE WAIT

Page 372: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

355

WHAT USER DOES CARSP RESPONSE

ROBOT SELECTION OPTIONS

1 SEARCH A DATABASE by type of Robot CONTROL SYSTEH (ROBOT CLASS) 2 HATCH A TASK TO A ROBOT by type of APPLICATION

3 RESERVED 0 RETURN TO MAIN MENU

ENTER COHHAND: \>.

2 . E n t e r

option [2J LOADING ROBOT-TASK MATCHING PROGRAM PLEASE WAIT

CHOOSE DESIRED ROBOT APPLICATION CATEGORY

1 ASSEMBLY/INSPECTION: APPLICATION INDEX 2 ARC-NELDING APPLICATION INDEX 3 FINISHING OPERATIONS: APPLICATION INDEX 4 MACHINING OPERATIONS: APPLICATION INDEX 5 SPOT WELDING: APPLICATION INDEX 6 MACHINE LOAD/UNLOAD (CNC): APPLICATION INDEX 7 MACHINE LOAD/UNLOAD (DIE): APPLICATION INDEX 8 MATERIAL HANDLING: APPLICATION INDEX 9 OTHER TYPES OF OPERATIONS: APPLICATION INDEX 0 TO RETURN TO MAIN MENU

ENTER COMMAND:

BlASSEMBLMNS B:WELDING.ARC B:FINISHNG.OPT B:MACHINE.OPT B:WELDING.SPO B:MACHLOAD.CNC B:MACHLOAD.DIE B:HATERIAL.HDL B:OTHERTPE.OPT

Choose the task group you are interested in. The robots found in the remainder of this exercise will be saved under the file name at the end of your task group choice. As an example, if you chose ARC WELDING, the robots found will be saved under a file named BrWELDING.ARC and can be accessed as explained earlier.

^

Page 373: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

356

WHAT USER DOES CARSP RESPONSE

Enter [T] for FINISHING OPERATION.

CHOOSE DESIRED ROBOT APPLICATION CATEGORY

1 ASSEMBLY/INSPECTION: 2 ARC-WELDING 3 FINISHING OPERATIONS: 4 MACHINING OPERATIONS: 5 SPOT WELDING: 6 MACHINE LOAD/UNLOAD (CNC): 7 MACHINE LOAD/UNLOAD (DIE): 8 MATERIAL HANDLING: 9 OTHER TYPES OF OPERATIONS: 0 TO RETURN TO MAIN MENU

APPLICATION APPLICATION APPLICATION APPLICATION APPLICATION APPLICATION APPLICATION APPLICATION APPLICATION

INDEX: INDEX: INDEX: INDEX: INDEX: INDEX: INDEX: INDEX: INDEX:

B:ASSEMBLY.INS B:WELDIN6.ARC B:FINISHN6.0PT B:MACHINE.OPT B:WELDING.SPO B:MACHLOAD.CNC B:MACHLOAD.DIE BlHATERIAL.HDL BlOTHERTPE.DPT

ENTER COMMAND: <• FINISHING OPERATION

It has been deteriined that ability of the robot to successfully cosplete certain tasks is a function of it's speed.

If your task variables include lot size, cycle ti»e and layout analysis enter C-ARSP for systei calculated robot linitua acceptable speed.

Otherwise enter U-SER for user specified liniiui acceptable speed.

4. Enter for lotsize declara­tion.

The purpose of this section of the CARSP systea Mas to give you, the user an opportunity to analyze your layout intended for robotic installation.

The systea has been designed to handle only up to 4 «achine layouts. Choose the applicable layout in your case and enter the values as proapted by the systei.

One of the assuaptions lade in this routine is that the nuaber of operations are either equal to the nuaber of lachines or 1. That is, if you specified 3 •achines, either all the aachines ^rs identical or they are all different.

In the first case the lachines therefore perforsi the saie task and each part visits only one aachine

In the second case the lachines perfori different tasks and each part or task aust visit, or be perforaed on, each aachine.

Also, assuae that the aachines and the IN and OUT conveyor belts lie on the arc described by the robot's ara sweep.

ENTER RETURN KEY TO CONTINUE:

^

Page 374: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

357

Read t h e i n s t r u c t i o n s of t h i s s e c t i o n of t h e s y s t e m . Then e n t e r t h e v a l u e s of t h e t a s k v a r i a b l e s a s p rompted by t h e s y s t e m . A f t e r you have e n t e r e d t h e c y c l e t i m e d e s i r e d , t h e sys tem w i l l now load t h e s p e c i f i e d l a y o u t f o r more d a t a i n p u t

WHAT USER DOES CARSP RESPONSE

5. E n t e r RETURN

Then e n t e r t a s k v a r i a b l e s and <CR> a f t e r each e n t r y .

ENTER C-ELL OR L- INE FOR LAYOUT TYPE:

ENTER THE NUMBER OF MACHINES:

ENTER NUMBER OF PRODUCTS:

ENTER NUMBER OF TASKS OR OPERATIONS:

ENTER LOT SIZE FOR PRODUCT 1 :

ENTER HANDLING TIME/UNIT FOR PRODUCT 1 (SECONDS):

• Ml 1

. _ >

A

11

f •

t 1

1 IN 1 1 1 1 1

/

/

2

5/

1 M2 «

i I

/

( R

1

?

\

)

\

3 \

5\

1 M3 1 < - - _ — *

A

1 1

14 1 1

• .

lOUT 1

L

\/\/ \/\/

Consider the above 3 aachine CELL-type layout. Enter the distances in the order proated by the systea.

ENTER VALUE OF DISTANCE 1 IN THE LAYOUT (INCHES):

Page 375: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

358

WHAT USER DOES CARSP RESPONSE

6. Enter the values of the layout dimensions specified.

r ENTER VALUE OF DISTANCE 2 ENTER VALUE OF DISTANCE 3 ENTER VALUE OF DISTANCE 4 ENTER VALUE OF DISTANCE 5

IN THE LAYOUT (INCHES): IN THE LAYOUT (INCHES): IN THE LAYOUT (INCHES): IN THE LAYOUT (INCHES):

• I

1 Ml 1 < - . — . '

A

11

1 1 1 1

! IN 1 1 1

/

/

2

5/

1 M2 < _ —

i I

/

( R

. 1 1

>

\

)

\

3 \

5\

> 1

1 H3 1 * - . — . '

A

14

• 1

1 1

lOUT 1 1 1 1 1

\/\/ \l\l

The Miniaua Speed required for this task is : 15 in /s . The code for th is value should be used as the LOMER bound for the speed. I t aay be repeated as the UPPER bound to achieve equality constraint. ENTER RETURN KEY FOR OTHER TASK DESCRIPTIONS OR R TO REDO THIS ANALYSIS:

The speed calculated is the barest minimum needed to suc­cessfully complete the task just specifed. This speed value can be used as the lower bound value when coding the task in the next page. It can also be used as an upper bound value to express an equality constrai it, or a higher value may be used to establish the upper bound. To return to the rest of the task variables, enter <CR>.

• * " ^

Page 376: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

3 5 9

WHi .T USER DOES CARSP RESPONSE

7. Enter

R E T U R N

CHOOSE DESIRED ROBOT APPIJCATION CATEBORY

1 ASSEMBLy/INSPECTlON: 2 ARC-WEUIN6 3 FTNISHIH8 OPERATIONS: 4 MACHININ8 OPERATIONS: 3 SPOT WELDIN8: 6 MACHINE LQAO/UNLOAO (CNC}: 7 MACHINE LOAO/UHLOAO (DIE}: a MATERIAL HAN0LIH6: 9 OTHER TYPES OF OPERATIONS: 0 TO RETURN TO MAIN MENU

ENTER COWIAHO:

APPLICATION INDEI APPLICATION INDEI APPLICATION INDEI APPLICATION INDEI APPLICATION INDEI APPLICATION INDEI APPIICATIDN INDEI APPLICATION INDEI APPLICATION INDEI

B:ASSE?»BLY.INS 3:)(EU}INe.ARC B:FINISHN8.flPT 9:flACHINE.0PT BIXELDINS.SPO 3:HACHLOAD.CNC 3:nAaiOAO.DiE BIHATERIAL.HOL

BIOTHERTPE.OPT

The menu screen of tihe TASK MATCHing program is displayed again. Choose the exact task group as in Step 3 above. You are again given a choice of U-ser or C-ARSP defined Speed values. Since you already used the C-ARSP option, and de-cer-mined the lotsize, etc., relationship, you may now excercise the U-ser option to access the rest of the task variables.

WHAT USER DOES

r CXSRS RESPONSE

S a. Enter for FINISHING OPERATION

CHOOSE DESIRED ROBOT APPLICATION CATE5QRY

I ASSEMBLY/INSPECTION: 2 ARC-«eUIN8 3 FTNISHIN8 OPERATIONS: 4 MACHININS OPERATIONS: 3 SPOT XELDINS: 6 MACHINE LQAD/UNLQAO (CNC): 7 MACHINE LOAD/UNLOAD (DIE}: 3 MATERIAL HAN0LIN6: 9 OTHER TYPES OF OPERATIONS: 0 TO RETURN TO MAIN MENU

ENTER COMMAND:

APPLICATION APPLICATION APPLICATION APPLICATION APPLICATION APPLICATION APPLICATION APPLICATION APPLICATION

INDEI: INDEI: INDEI: INOEl: INDEI: INDEI: INDEI: INOEl: INOEI:

B:ASSE?IBLY.INS 3:)1ELDIN6.ARC 3:.nMISHN6.flPT 3:.MACHINE.OPT 3:)(aDIN8.SPQ 3:.1ACHL0AD.C.NC 8:.MACKL0AO.:iE 3:MATERIAL.HDL 3:0THERTPE.flPT

< — FINISHIN6 OPERATION

it haa been datiraxntd that ability of tftf rooot to iuccmfuilv coaoiett csrtaii. taiki is a function oi i t ' i spttd.

If your talk variables indudt lot si:i, cydt tiat and layout analviis enter C-ARSP for sy'tea caicuiited robot iiniiua acce^tablt ?peed.

Othtrwisa tntar U-SER for user soecifiid iiniaua jccwtabit spttd.

»v

Page 377: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

360

WHAT USER DOES CARSP RESPONSE

9. Enter U

for User defined Speed.

CHOOSE DESIRED ROBOT APPLICATION CATE60RY

1 ASSEHBLY/INSPECTION: APPLICATION INDEI: 2 ARC-NELDIN8 APPLICATION INDEI: 3 FINISHIN8 OPERATIONS: APPLICATION INDEI: 4 MACHININ8 OPERATIONS: APPLICATION INDEX: 5 SPOT MELDIN8: APPLICATION INDEX: 6 MACHINE LOAD/UNLOAD (CNC): APPLICATION INDEI: 7 MACHINE LOAD/UNLOAD (DIE): APPLICATION INDEX: 3 MATERIAL HAN0LIN6: APPLICATION INDEX: 9 OTHER TYPES OF OPERATIONS: APPLICATION INDEX: 0 TO RETURN TO MAIN MENU

B:ASSEHBLY.INS B:)IELDIN8.ARC B:FINISHN6.0PT B:HACHINE.OPT B:MELDIN6.SP0

B:MACHLOAD.CNC

B:MACHLOAD.OIE

B:MATERIAL.HDL

B:OTHERTPE.OPT

ENTER COHHAND: < — FINISHIN6 OPERATION

The Codes and Descriptors in the NEXT paqe have been used to represent the robots in this DATABASE. For the chosen application, YOU will be required to use these attributes to describe a task. Enter the desired ranqe of values for each attribute Nhen proipted.

ENTER RETURN KEY TO CONTINUE OR R TO RESTART:

10. Enter

RETURN li«totCim(H.4n

3 Tiipaot SiMars(77n)

S RtfMtakilil9(9l.9t) ( Positn. Accurtt (i8.£Zl 7Pi9ioa«()3.n) 8L.nMrVitKiii)<7S.4» 9 ()ii9ilvVtlociti)(Z(.7t)

I I I.T. 8. F. Ui.m I I I.r. T. B. (22.U) izcow. si»itt«(jt.i:) 13 n^m-o* AitsOI.SX) 14Ntnzntat tncJi(M.lt) IS Vtrtictt Itwk (31 IU l iar»SMtt<(6.7t) 17 Urist BwMritcli)(4f.7» I I U r i f t r n ( 12.81) 19 Hrift lotUSiivtiXSI.m 21 ItM/Coiitrtt HI. ()2.SU

21F?o»SpL:iMilt.<l&in

22 towf Tn* ( n . m 23 RMWf Ctpacitf O t . m Z« M«. 1/0 CtaMit (2l.7tX 2S0ri««Tr«ia(lt.2n 2& Proqrsif. Ntthods (9«.4t) 27St4. E(ft<tan(7I.8t) 28 Nuakirof Crppn. (» .4X) 29 Silc<4 Features (S7 » ) 3illOttal 1119 Positn. (72.32) 31 Cast: Rolot Uiiit(B2.U) 32 Pour ConsuiptioR (4 l .7 t ) narnvtinf voito9*(8«.tt) 34VoitOf«Ph«s*(8«.U) 3S Voltsft Frunm^ (7l.3t) 3( OMT^inf Current ( I 8 .» ) 37 Rin Emiro*. Tcap (4».7I) I I Rn Emtros. T M » (5i.3U »Hw<«ityBM9*<11.3X) 4IHvsliEmirw.(I«.4X) - ^ ,a amirtiMflit i f ilw ••« of nek •ttrital* it th* Protabilitf ••

r i . ! X . . « i * « l i i r t l « l . El f tKWOTTICnrnMfc.

Page 378: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

361

WHAT USER DOES CARSP RESPONSE

11. Enter

RETURN

once you have read the in­structions displayed.

1 lakal Ctoss ( H 4t) 2 applicotiom (K .n ) 3 Tupn of SMSOTS (77 !t) • Oittaos. Akiliti) (92.32) S 8(fMtikilili)(38.n) S Positn. flttura(9(U.2Z) 7 PofioaA (93.n) 8 LiOHr Velocity (7S.4» 9 Aii9«lirVelociti)(2fi.7:)

11 I.r. 8. F. (2S.7:) 11 i.r. T. 9. (22.U) 12 Coor4. Si stcn (».3Z) 13 Nuatarof Aics (J8.SZ) 14 Horizontal KMCII (64 U ) 15 Vertical «et«h (59.81) 16 AraSicef (66.7Z) 17 Urist atii4<Pitch)(49.7Z) ISUrist ro«(32.8t) 19 Wrist Soll(Sai«en(S5.4t) 21 totot/Contrls Ut. (}2.8t)

21Ff«arSp.:taB»f.(N.BX W-t-tmik ITTXilJEii^^^^^^^H

23 Rtawf Ca»acilf (St.Stl 24 N*. 1/0 C U M I S (2l.7n 23 Oriva Traia (tt .2» 2( Pro raaf. Rathate (94.4U 27 St4. EHMtort ( 7 I . m 21 Naafew-of U$pn. (3S.4X) 29 Ssltt9 Faatoras (S7.9t) 38 Routing Positn. (72.3X1 31 Cast: Kotot Uait(82.It) 32 Poaer Coasaaption (40.7X1 33 aparotinf Voltof* (84.01 34 VolttfcPNasa (84.lt) 35 Voltofc Frc^aaac) (70.3X1 IS Optratinf Current (U.SX) 37 Rin Enviro*. Tea (4t.7X1 I I Rax Eaviro*. Teap (3I.3U I9Haai4it9 8a9»(l l . IXl 40 Hirsti Eiwiro».(34.4X)

TfM MT* -w-k— "« otlr.bulM m iMCil!|. tl» ! • « • ^ " - • » •» | rotots that or* aiatltbla for COMI4I •ratio*.

Determine the number of attributes of the task you are describing that correspond to those displayed on the screen for the robots in the CARSP system database. Then enter that number as the "number of attributes you want to SORT by". Notice that lotsize, layout variables, etc. are all treated as one atttribute of the robot (i.e. Speed). For the example problem, therefore, the number of attributes to SORT by is 3. The number in percentages at the end of each attribute indicates the probability of finding a robot in this data­base for which the given attribute was defined (i.e. has a value other than zero). Ideally, the more attributes you specify, the less this probability becomes.

Page 379: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

362

WHAT USER DOES

12. Enter |T]

and press

CARSP RESPONSE

RETURN

1 latol Clan (94.4X) 2 RppticatioM (H.9X) 3Ti|p*o» StMors(77n) 4 0ia9aas. Afeilit) (92.3X) 5 8cfeatakiliti |()8.n) S Positn. Accurotn (».2X) 7 Pofloa* (93.n) 8 Linear Velociti)(7C4t) 9 AM9BlorVelacitt)(26.7t)

10 n.T. 8. F. (26.;t) 11 O.T. T. 8. (22.U) 12 Coor*. Sijsten(90.3X) 13 Nuatarot Aies (J8.3X) 14 Horizontal Keacli ( (4 .U) 15 Vertical Beach (S9.8X) IS Am Sacef (6S.7t) 17 Urist Ben4(Pilch)(49.7X) 18 Urist roa (I2.8X) 19 Urist Boll(Sai«en(S5.4t) 21 Bofeat/Contrls lit. (92.8Z)

2t FtaarS^:lMtf.(8lLBI. 22 R 23 Raaarf Conacitf (9e.3XI 24 Na. I/O Ckaanait (21.7X1 23Dr.«aTrain(80.2X) 25 Proymy. Ratfeain (94.4X1 27 St4. EtfKtort (71.8X) 2IN«afearof ^rffrv. (SS .m 29 Saleli) Features (37 n ) lORoiMtmf Positn. (72.3X1 31 Cast: Bofeat Uait(82.U) 32 Poaar Caasaaptioa (40.7X1 33 Oparat.nf Voltaic (S4.su I4Velt(4tPliasa(84.U) 15 Voltifc Frc^aenc9 (71.3X1 IS Operating Current (I8.5X) 37 Rift Environ. Teap (4S.7X) IS Raz Environ. Tea* (31.3X) I9Huai4it9Baa9t(11.3X) 40 H«sk Emiran.(34.4Xl

E i r a MST siaiFiCRiir BOSOT AmiinTr FOI F i i i a w o r a o n s f c 01 I TO BESET ^

Enter these a t t r i b u t e s in t h e i r descending order o tance u n t i l a l l the a t t r i b u t e s have been entered, erase any entry by using e i t h e r the CTRL-H key or arrow ( < — ) key. To find out the v a l i d code a t t r i b u t e , use the CTRL-J keys , and to redo a l l e s t a r t , enter the R key. As an example, to code a t t r i b u t e Speed, Enter 8. Then enter the CODE for ca l cu la ted e a r l i e r as the LOW CODE and the code des ired upper bound value as the HIGH CODE.

f impor-You can the l e f t

s for any ntry from the task the speed

for the

WHAT USER DOES

13. Enter 3

CARSP RESPONSE

1 Rokot Clais (94 4t) 2 Apflicatioaa (SS.n) 3Tw»o« S«MV« (77 9X1 4 Diafaaa. RMIilf (92.1X1 3 Bi»artafeililf (S0.9X)

CQOE I I VILUCOOB

21 Floor S». II0M119 i ia c»i 22l)eaan|T((pn(93.3t) 23 Ranarf Copacitf (9*. 3X1 24 R*. I/O Claaaats (2I.7XX 2SDriv»Tr«ia(SI.2X)

I Liicii VELOCITT (ixcKS/RRLiRnEn): u i s r c c m a I I L» (= 5 IPS I LV (= 127 »RW VELOCITT 21 5(LV{*I0 IPS I 127(L¥<r2J4 RRTS VELOCITT I I 10<LV<=20 1PS 234(LV(=5SO RRW VELOCITT 41 20<LV<=I0 IPS ;n(LV(=7(2 RRTS VElOCITr SI 3KLV<=40 IPS 7S2(LV<=tSIS RRTS vaOCITT 61 40<LV(=3IIPS 1BI((LV<=I27I RRn VaOCITT 71 SO(LV<=SI IPS I27KLV(=I324 RRfS vaOCITT s r (0<LV<=7I IPS 1324<LV<=l77t RROS VEUUTT 9 t LV}7I IFS I LV}177I RSR VELOCITr

O n n CmC VSUE (MCC OF Liiiaap Vtlocilo (7C.4X) F9i FIIISIIK QfounK. iOamU: 21.0*40.». ETC. Eira CTIL-i'^ai NOP) (LUVMUfc ' NIQimUE: ): - i Fit NOF

Page 380: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

363

WHAT USER DOES CARSP RESPONSE

14. Enter

CTRLI -[J]

keys to find the va l id codes .

1 Botot Class (94 4X) 2 Ap9licatioM()S.n) 3 Tspn ol Season (77 9X1 4QiG9NS. Abilit()(92.3X) SBe9tatskilit()(3l.n) S PosilR. Accurati) (M.2X) 7 Po looA (93.9t) 8 Linear Velocitt|(7S.4t) 9An9ilarVelociti)(2S.7X)

10 O.T. 8. F. (2S.7:) 11 I.r. T. 8. (22.U) 12 CoorA. S4Sten(».3X) 13Haatarol Aies (38.51) 14 Horizontal Beach (&4.U) 15 Vertical BeacH (59.8X) 16 AraSoce9(6S.7X) 17 Urtst 8en4(Pilch)(4».7X) 18yristY«.(I2.8X) I jy r is t Boll(Sai«l)(55.4X)

22 Raaarf Tfp* (9I . IX) 23 Raaarf Capacitf ( 9 t . i n 24 Ra. I/O Ctaanatt (21.7X1 23 0ri««Tr«i«(SI.2X) 25 Pro^raaf. RatMB (9* .4U 27 St«. Elfecton (7I .St l 28 Noafear of Crf«r«. (35.4X1 29 Safety Featuras (37.9X1 38 Roaatinf Positn. (72.3X1 11 Cost: Botat Uai((SZ.lX) 12 Poaar Coasaaptioa (41.7X1 13 Oparetinf Valtaf* (84.SX1 14 Volt«4cPhas«(84.U) 13 Voltofc FfunMCf (71.1X1 15 Operat I nf Current ( I I . 3X1 17 Rin Ewiro*. Teap (44.7X1 18 RoK Efl»iro«. Teip (31.3X1 19 HBai4iti)Ban|»( 11.3X1 40 Horsk Ewriron.(I4.4X)

EITEi COOE VALUE BANCE OF L ' ^ J ^ ^ ^ " ' ! ' * „ j ^ , , (EXOmE: 20.0.40.90. ETC E8TEE CTIt-J FOI HElf» (LOVVMJIE: HIOIVRUIE:. ) : « i FW " u r

15. Enter CODE for minimum speed and

RETURN

ENTFT COOE VMUE BINCE OF Linear Veiociti| (7S.4X) FOi F l l i a i l C OTOin (EXOWIE: 20.0.40.90. ETC. EKTCI CTIL-J FOI HELP) (L0» VRIUE: I I HICH VRIUE: _ ): -J FOt RElf

16 . E n t e r CODE f o r uppe r l i m i t on speed and

RETURN

ENTrr COOE VILUE BRNCE OF Linear Valoeitg (7S.4X) FOI FI I ISI I IC OFOin (EXtMtE: 20.0.40.90. ETC. ERTEI CTBL-J FOI HELP) (LOU VM.UC: I I HIU VRUIE: 40 ): >J FOI HEtf

Enter the next s i g n i f i c a n t a t t r i b u t e of the task and Code the r e s t of the task v a r i a b l e s in t h i s manner.

Page 381: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

364

When the LEAST SIGNIFICANT attribute of the task has been coded, the CARSP system will then search the database for

echoed to the screen application category examine these echoed restart the program, the database has been

MATCHing robots. Any robot found is and saved in a file named after the chosen. To interrupt the program and robot codes, type CTRL-S keys, and to type CTRL-Q. Once the whole robots in exermined, the found robots are tallied and echoed back on the screen by their identification name and reference number in the database. If you do not have a PRINTER connected, take note of the robot numbers and use the RETURN key to exit to the MENU program.

WHAT USER DOES CARSP RESPONSE

SEARCHING ROBOT NO.: I SEARCHING ROBOT NO.: 2

147 SEARCHING ROBOT NO.: 147

PROBOT POSITECK CORPORATION, RUSH LAKE RD., LAURENS, lA. 50554 712-845-4548 40!30I40!20!70170I90140!0!0!0!50I60!70I30!80110I40I70!60!20! 70I010130I40I90I0I0!1016010110!10120150I0I20I0130I

PROBOT POSITECK CORPORATION, RUSH LAKE RD., ORDER CODE! 1 8 2 2 3 ''1

LAURENS, lA. 50554 VALUE LONCODE 40 30 30 30 20 10

SEARCHING ROBOT NO.: 148

HICODE 40 30 70

712-845-4548 ROBOT l« 147

INPUT INDEX FOR FINISHING OPERATION ROBOTS WRITTEN

ROBOT I 147 162

DESCRIPTION PROBOT SERIES s n

NUHBER OF ROBOTS FOUND > 2

TYPE P TO SEND OUTPUT TO PRINTER OR RETURN TO CONTINUE:

^v

Page 382: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

365

If only one (1) robot was found in this excercise, it may be used as the target robot, otherwise, an economic analysis model may be used to choose the most viable robot from among the competing alternatives. From the above table, it can be seen that 3 robots were found that could perform just described. Therefore, further analysis is Economic analysis is used for this purpose and the be accessed from the MENU program.

the task required, model can

The ECONOMIC analysis model does not accept in more than 10 robots. Therefore, if the robots more than 10, you may want to redo the tas excercise to reduce the number of robots found done by tightening the constraints declared, number of constraints used or both. For examp using a LOW CODE of 10 and a HIGH CDOE of 90, be used depending on the direction of the in straint. A <= constraint may require a 10/ constraint may require 30/90. Once this restr isfied, enter the 0 key to exit to MENU.

put values for found above is k description

This can be increasing the le, instead of a 10/60 could equality con-6 0 while a >= iction is sat-

WHAT USER DOES CARSP RESPONSE

17. Enter

RETURN

CHOOSE DESIRED ROBOT APPLICATION CATEGORY

1 ASSEMBLY/INSPECTION: 2 ARC-NELDING 3 FINISHING OPERATIONS: 4 NACHINING OPERATIONS: 5 SPOT MELDING: 6 HACHINE LOAP/UNLOAD (CNC): 7 MACHINE LOAD/UNLOAD (DIE): 8 MATERIAL HANDLING: 9 OTHER TYPES OF OPERATIONS: 0 TO RETURN TO HAIN HENU

ENTER COHHAND:

APPLICATION INDEX APPLICATION INDEX APPLICATION INDEX APPLICATION INDEX APPLICATION INDEX APPLICATION INDEX APPLICATION INDEX APPLICATION INDEX APPLICATION INDEX

B:ASSEMBLY.INS B:MELDING.ARC B:FINISHN6.0PT B:HACHINE.OPT B:MELDING.SPO B:HACHLOAD.CNC B:MACHLOAD.DIE B:MATERIAL.HDL B:OTHERTPE.OPT

Page 383: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

366

WHAT USER DOES CARSP RESPONSE

1 8 . E n t e r [O t o e x i t

• t o MENU RETURNING TO MAIN MENU PROGRAM PLEASE MAIT

TEXAS TECH UNIVERSITY

CENTER FOR APPLIED RESEARCH IN

INDUSTRIAL AUTOMATION AND ROBOTICS

A

C C C A CC C A A

CC AA A CC AA A AA CC C AA A

C C C AA A

RR R R R S S S S RR R SS

RR R R R R S S S S RR R SS

RR R S SS RR R S 5 S S

PP P P P PP P

PP P P P P PP

PP PP

(Coiputer Aided-Robot Selection Procedure)

/-

\

ENTER COMMAND :

! ENTER SYSTEM COMMAND ! /••f«*##«##*«##*#*f«f»»#\

I 1 DATA BASE MANAGEMENT 1 2 ROBOT SELECTION/MATCH ! 3 ECONOMIC ANALYSIS I 4 USER INFORMATIONS/INSTR. ! 0 END OF SESSION

y

Page 384: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

2 : TASK MATCHING SUBSYSTEM. 367

Q 2 : START 1 I

LOAD/RUN

TASK MATCH PROGRAM

^r<^ TASK GROUPS

1 . ASSEMBLY/IN «

9 . OTHER

N

• ^ H

M 9

'"««m^K

~- ~ T'li~l W ' 1 H « — I • I -.oAaaw-.'.

Page 385: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

CONTINUED.

368

2^

NvT

CHOOSE

ATTRIBUTES

DEFINE

CONSTRAINTS

SEARCH

DATABASE

PRINT

CONSTRAINT TOO TIGH'

wMpn^X

Page 386: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

369

2 2 : CONTINUED.

PRINTER V^ 0/T? .

PRINT TASK FILE

v > r SETUP PRINTER

•«i|iaNi>^

Page 387: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

2 ^ : CONTINUED.

2 ^ : LAYOUT ANALYSIS.

370

fe START )

ENTER

LAYOUT TYPE

ENTER

NUMBER OF MACHINES

ENTER

TASK PARAMETERS

N

N

•mmmmmmm • ^

Page 388: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

22: CONTINUED.

2^: CONTINUED.

371

ENTER LAYOUT

PARAMETERS

PRINT

ROBOT SPEED

ENTER

[RETURN/R]

N •W M

N

^^ 2

mmmmfm^imm^

Page 389: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

372

(3) ECONOMIC ANALYSIS

ECONOMIC analysis is the decision rule used in the CARSP system to choose between two or more robots that have otherwise satisfied the task constraints. To use this model:

1. The file for the application (task) category for which the analysis is desired must have been created. This can only be accomplished through the TASK MATCHing program.

2. The variables for the analysis are known a priori.

WHAT USER DOES CARSP RESPONSE

ENTER COMMAND : L

! ENTER SYSTEM COMMAND I /fftfffft*»*ff**«*********«\

1 DATA BASE MANAGEMENT I 2 ROBOT SELECTION/MATCH 3 ECONOMIC ANALYSIS

I 4 USER INFORMATIONS/INSTR. 0 END OF SESSION

1. Enter | option I 3 J I ENTER SYSTEM COMMAND !

/»«ff«*««ff**f«*«»*«*«*««#*\

1 DATA BASE MANAGEMENT 1 2 ROBOT SELECTION/MATCH 3 ECONOMIC ANALYSIS

I 4 USER INFORMATIONS/INSTR. 0 END OF SESSION \ * * * * * * * * * * * * * * * * * * * * * * * * * * /

ENTER COMMAND :

The Econoiic Analysis routine requires that the desired robot group files be created first.

If this has not yet been done use option 2 above. Then use the Task MATCHING Option to define a task. ENTER COMMAND:

^v

Page 390: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

373

WHAT USER DOES CARSP RESPONSE

2. Enter option

|T| if file

already exists.

r^ LOADING ECONOMIC ANALYSIS PROGRAM •••• PLEASE MAIT "••

L

>

__-•

3. Supply the task infor­mations re­quested and press

RETURN

ENTER NUMBER OF TASKS EACH ROBOT MILL PERFORH: E.G., PAINT, DRILL, LOAD/UNLOAD. ETC. ENTER NUMBER OF PRODUCTS TO BE PRODUCED: E.G., FLATS,BOLTS,FRAHES. ETC.

ENTER LABOR RATE IN DOLLARS/HR: CHOOSE SETUP OPTION 1 BY DAYS 2 BY MEEKS 3 BY MONTHS ENTER COMMAND: 3

ENTER SETUP FREQUENCY PER MONTH (E.G., 2 FOR TMICE A MONTH, ETC.):

1 CHOOSE ANALYSIS GROUP

1 ASSEMBLY/INSPECTION 2 ARC MELDING 3 FINISHING OPERATIONS 4 MACHINING OPERATIONS 5 SPOT MELDING 6 CNC TYPE HACHINE LOAD/UNLOAD 7 DIE TYPE MACHINE LOAD/UNLOAD 8 MATERIAL HANDLING 9 OTHER TYPE OF APPLICATIONS 0 TO RESTART OR E TO EXIT

ENTER COHHAND:

Page 391: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

374

WHAT USER DOES CARSP RESPONSE

4. Choose desired application category. For this example, [T] is entered.

ECQMIIC AMLYSIS FOI IWtt 1 U 7 < — p n i s r

11. i m

iNiEsmircasr

ENm COST OF BISIC UIIT FOI ROUr 1 1 4 7

1

5. Enter the Invesment Cost vari­ables for the robot whose data­base number and identi­fication are shown on the screen.

ECONOnC AIMIYSIS FOI ROROr > 147 < — PRoaar

I I . 1 3 I »

IHVESmEIIT COST

ant COST QF BASIC UMIT F N ROBOT • 1 4 7

COST OF SPECIAL TOOIIHC AND PERIPHERat EBUIPREHT FOI ROBOT 1 4 / QOIHC TASK: I

COST FOR PLAMNINC AttO COMSULrATIOII OUE Ttt ROBOT 147

COST FOR IHSTRLLArrOII AHB STMTHJP DUE TH ROBOT: 1 4 7

OTHEE I W E S T l E i r COSTS OOE TO ROBOT 147

lOpmiisnctnsr.uaiTi

71 It

I I

I X

C V 3 3

• /

Page 392: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

375

WHAT USER DOES CARSP RESPONSE

ECONQIIC AIMIYSIS FOI ROBOT • 147 < — PROBOT

11.1919

QVERHEAQ COST

EHTEI ftV6. MWTEJIANCE CQST/Y». FOR ROBOT: 147

I f yott enter 9 an«/or RETURN CARSP t i l l use St OF ROBOT'S basic cast.

ommsnc wsT.uniT|«ssi innq

'

V

6. Enter Overhead cost variables for the same robot

ECOHORIC ANALYSIS FOR ROBOT • 147 < — PROBOT

ll.l3i»

QvonEBBcosr

EHTEI AVC. niNTERMCE COST/Tf. FOR ROBOT: 147

I f t |w enter • aa^or RETORI CAISP t i l l use S I OF ROUT'S k a i c cost.

cosr pgia SOPPLT (R/YR) FOI RQIOT: 147

N U n a r OF RMRTEIMCE PEISOnO: I COST FOi RETHIMIIC PEfSOUEL I :

roTiL cosr imiErr LRHI FOI ROIS^ 147

TonLOTKioiaKiftcisis: Konr-} 147

OmRISTIClMSTHKLYlPESSWISnCI

^^

Page 393: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

376

Repeat steps 5 and 6 until all the competing robots have been accounted for. Then enter the Production cost values.

WHAT USER DOES CARSP RESPONSE

piooacnoM cosr

EHTER QERANI/YR FOI PROOOCTI

o m i i s n c wsT.uKLTjFEssnBnci

<

7. Enter the Production cost values. IQrniisnciTOST.LinLTi

PIOOaCTTON COST

EHTER aEROMUYR FOI PROOOCT 1

SETUP TIRE OUE TaPROlIBCr I

CYCLE TIRE PER PART FOR PROOOCT I INGLUOES HANOLIMC k OPESATIOi TIRES:

S E I W H R E DUE TO OPEMTIOI L

WIW^.II s .

Page 394: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

377

WHAT USER DOES CARSP RESPONSE

u r i Qprmsnc Hisr.urELT PESSIRISHC

147 i m U lUlBZ. l l l»7

i t t i m i t luiz i 1II13S

E(cn

llllBt

llllZZ

v(cn

4t.llll

38.827?

ERGIIEnB Tl KSnir 01E TO EXIT:

Choose the robot viable robot.

with the least E(CT) value as the most

WHAT USER DOES CARSP RESPONSE

8. Enter S to exit to the MENU program.

/

^

RETURNING TO MAIN MENU PLEASE WAIT

~ \

^

^\

Page 395: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

378

WHAT USER DOES CARSP RESPONSE

TExu m» uKivnsm c o m F N APPLIED RESEMCH IK

innSTIIAL AUTOMTIOII AND tOBOTIt.

• I I R I I SSSS f • • 11 > SS

M A I I I R R I SSSS PP M A i » I I I SS

A I I I S SS PP • I I I SSSS

(Ciifntar AiM4atot Salactiea ProtcAvc).

r

t»ttmm»mn:ttt I ENTER SYSTER CORHANO |

/n»x»st»»»mtxttt»t\ 1 DATA BASE RANACENENT 2 ROBOT SELECTION/NATCH 3 ECONORIC ANALYSIS 4 USER INFORRATIOHS/INSTR I END OF SESSION

\tusuunmxt»mmxu/ EHTEI CORIRNO : _

9. Enter 0

to EXIT the CARSP system. EXITIHC CARSP SYSTEII

Ef* a OF S E S S I O N

y ^

Page 396: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

3: ECONOMIC .ANALYSIS SYSTEM.

379

d START 1 1

ENTER

SYSTEM VARIABLES

I TASK FILES

1. SERVO PREC •

9. OTHER

ENTER

COST VARIABLES

CHOOSE

ROBOT WITH MIN E(CT1

N

PRINT

FILE NOT IN SYSTEM

"*-\

Page 397: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

APPENDIX C

EXAMPLE QUESTIONAIRE FOR INTERACTIVE EVALUATION

380

Page 398: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

381

CARSP SYSTEM QUESTIONAIRE

This questionaire is designed to help in the evaluation of a software system used for selecting robots for a manu­facturing environment. Your answers are therefore confiden­tial and will be used only as a research tool. Please answer the questions as objectively and completely as you possibly can. (NOTE: A=NOT AT ALL, B=A LITTLE, C=MODERATELY, D=QUITE A BIT, E=EXTREMELY)

OCCUPATION:

COMPANY NAME:

MANUFACTRING PROCESS EXPERIENCE (E.G., WELDING,PAINTING, ETC.)

YEARS OF EXPERIENCE:

COMPUTER PROGRAMMING SKILL

B D

FORTRAN BASIC SNOBOL PL/1 COMPACT II APT OTHER:

1. 2. 3.

KNOWLEDGE OF ROBOTICS:

HAVE YOU OPERATED A ROBOT BEFORE? YES NO

FOR HOW LONG?: YEARS > < = i > = 5

ABILITY TO USE SOFTWARE PACKAGES:

"\

Page 399: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

382

SOFTWARE PACKAGES YOU HAVE USED

B SPREAD SHEET: WORDPROCESSOR: FINANCIAL MGR.: SIMULATION SYSI OTHERS:

1.

?EM:

2. : 3. :

NAME:

WERE THESE 1 : SOFTWARE 2 PACKAGES 3 EASY TO USE?: 4

NAM!

WERE THESE 1 SOFTWARE 2 PACKAGES USER 3 FRIENDLY?: 4

WHAT DID YOU LIKE THE

WHAT DID YOU LIKE THE

J •

MOS 1. 2. 3. 4.

LEA 1. 2. 3. 4.

T ABOUT THE SOFTWARE PACKAGES?:

ST ABOUT THE SOFTWARE PACKAGES?:

WERE ANY OF THESE PACKAGES OF THE EQUIPMENT SELECTION TYPE?

YES NO

IF YES NAME OF SOFTWARE PACKAGE: 1 2 3 4

m-mmtmmmKxm «^v

Page 400: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

383

CARSP SYSTEM: TEST PROBLEM

Perform the following tests using the CARSP system segments indicated. Please read the instructions given within each section carefully before proceeding to work in that section.

1) Use the DATABASE System to:

a) ADD the given robot to the database. (See Robot Specification Sheet on Page 2)

b) DELETE the robot just ADDed. c) UPDATE the robot DELETEd. d) LIST the same robot and obtain Hard Copy.

2) Use the SELECT System to:

a) Find robots of the SERVO - PRECISION Class i) Number of Robots Found =

11) Enter Robot Numbers Seperated By Commas.

b) Find robots made by Cincinnati Milacron i) Number of Robots Found =

ii) Enter Robot Numbers Seperated By Commas

3) Use the TASK MATCHING System to:

a) Match the given task to robots. (See Task Variables on Page 3) i) Number of Robots Found =

ii) Enter Robot Numbers Seperated By Commas

4) Use the ECONOMIC ANALYSIS System to analyze the robots found in (3).

(See Economic Analysis Variables on Page )

5) Choose robot based on MINIMUM EXPECTED TOTAL COST E(CT)

i) Enter Robot Number Chosen.

ii) Use LIST Subsystem to list Robot Chosen. (Obtain Hard Copy)

Page 401: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

384

ADD

ATTRIBUTE NO

CODE: 1

4

5

7

8

9

12

13

14

15

16

17

19

20

21

22

23

24

25

26

29

32

33

37/38

DESCRIPTION VALUE

Robot Class: Servo - Precision

Diagnostics

Repeatability

Payload Capacity

Linear Velocity

Angular Velocity

Coordinate System

Number of Axes

Horizontal Reach

Vertical Reach

Arm Sweep

Wrist Bend (Pitch)

Wrist Roll (Swivel)

Robot Weight

Floor Space Reqmnts

Memory Type

Memory Capacity

Number I/O Channels

Drive Train

Program Method

Safety Features

Power Reqmnts.

Voltage Reqmnts.

Min./Max. Temperature

Yes

+ .008"

22.05 lbs

39.4 'Vs o

180 /s

Jointed/Spherical

50.4 "

69.6 " o

300 o

180 o

300

1100 lbs.

14 Sq. Ft

Electronic

1000 Pts.

32 In/Out

DC - Servo

Teach Pendanr

Emergency Brakes

18.5 KvA

23 0 VAC

•0/50 C

X

Page 402: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

385

TASK MATCHING PROBLEM

TASK VARIABLES:

1)

2)

Application Category:

Operation Variables: a) Layout Type b) Number of Machines c) Number Products: d) Number of Tasks: e) Lot Size/Product: f) Handling Time/Part

FINISHING OPERATION

CELL 3 1 1 200 PIECES 20 SECONDS

LAYOUT FOR PROBLEM

ENTER THE FOLLOWING LAYOUT DIMENSIONS.

IN SPEED FOUND

ENTER RETURN (** CONTINUED ON NEXT PAGE **)

Page 403: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

386

1) Enter APPLICATION Category

2) Use _U-ser OPTION for the Task Variables

3) Number of ATTRIBUTES = 3

1) Application: (Use Application Category CODE for both LO & HI Values)

2) Maximum Floor Space Available: 60 SQUARE FEET (Use CODE for 10 Sq. Ft as LO & for 60 Sq. Ft. as HI)

3) Linear Velocity: (Use CODE for Speed found earlier as LOW, & IMMEDIATE higher CODE as HIGH values)

**** CARSP WILL NOW SEARCH DATABASE FOR VIABLE ROBOTS ****

RETURN TO PAGE , QUESTION 3

***** EXIT TO MAIN MENU *****

ECONOMIC ANALYSIS

1) Number of Tasks:

2) Number of Products

3) Labor Rate:

4) Setup Option:

5) Setup Frequency:

6) Analysis Group:

$10/HOUR

MONTHLY (3)

ONCE (1)

FINISHING OPERATIONS

Page 404: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

387

FIRST ROBOT FOUND

INVESTMENT COST

1) COST FOR BASIC ROBOT UNIT:

2) COST FOR SPECIAL TOOLING:

3) COST FOR PLANNING:

4) COST FOR INSTALLATION:

5) OTHER INVESTMENT COSTS

OPT,

60

2

3

5

6

(COSTS M IN 000 .LKLY

70

3

3

5

6

OF $ )

PESS.

80

3

3

5

6

OVERHEAD COST

1) AVERAGE MAINTENANCE COST/YR: 0

2) COST OF POWER SUPPLY/YR: 3

3) NUMBER OF MAINTENANCE PERSONNEL: 1

4) RETRAINING COST/PERSONNEL: 5

5) COST OF INDIRECT LABOR: 7

6) OTHER OVERHEAD COSTS:

0

3

5

8

5

0

3

5

8

5

Page 405: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

388

SECOND ROBOT CHOSEN

INVESTMENT COST (COSTS IN 000 OF $)

OPT. M.LKLY PESS

1) COST FOR BASIC ROBOT UNIT

2) COST FOR SPECIAL TOOLING:

3) COST FOR PLANNING:

4) COST FOR INSTALLATION:

30 40 50

5) OTHER INVESTMENT COSTS 7 7

OVERHEAD COST

1) AVERAGE MAINTENANCE COST/YR: 0

2) COST FOR POWER SUPPLY/YR: 2

3) NUMBER OF MAINTENANCE PERSONNEL: 1

4) RETRAINING COST/PERSONNEL: 5

5) COST OF INDIRECT LABOR: 8

6) OTHER OVERHEAD COSTS:

0

2

5

8

6

0

2

5

8

6

PRODUCTION COST

1) DEMAND/YEAR FOR PRODUCT 1: 500

2) SETUP TIME DUE TO PRODUCT 1: 10

3) CYCLE TIME/PART FOR PRODUCT 1: 20

4) SETUP TIME DUE TO OPERATION 1: 15

500

10

20

15

500

10

20

15

Page 406: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

389

CARSP SYSTEM QUESTIONAIRE

Having used'the Computer-Aided Robot ^election proce­dure (CARSP), please answer the following questions as ob­jectively and completely as you possibly can. (NOTE:A=NO OPINION, B=STRONGLY DISAGREE, C=DISAGREE, D=AGREE, C=STRONGLY AGREE).

A B O D E CARSP SYSTEM WAS EASY TO USE:

CARSP SYSTEM WAS USER FRIENDLY:

COMPARED TO SOFTWARE PACKAGES YOU HAVE USED: CARSP SYSTEM WAS EASY TO USE.

COMPARED TO SOFTWARE PACKAGES YOU HAVE USED: CARSP SYSTEM WAS USER FRIENDLY.

THE CODE DEFINITIONS OF THE CARSP SYSTEM WERE SUFFICIENT FOR UTILIZATION:

THE USER INFORMATIONS &_ INSTRUCTIONS WERE EXPLICIT AND HELP­FUL:

THE PROGRAM ARCHITECTURE WAS EASY TO UNDERSTAND:

WHAT AREAS OF THE SOFTWARE WOULD YOU LIKE TO SEE IMPROVED?

AREA IMPROVE.lENT

1. CODE DEFINITIONS:

2. USER INFORMATION/INSTRUCTIONS:

Page 407: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

390

3. PROGRAM ARCHITECTURE:

4. OTHER: SPECIFY.

5. ADDITIONAL COMMENTS:

WHAT DID YOU LIKE THE MOST ABOUT THE CARSP SYSTEM?:

WHAT DID YOU LIKE THE LEAST ABOUT THE CARSP SYSTEM?:

FROM YOUR KNOWLEDGE OF ROBOTICS & MANUFACTURING PROCESSES, THE FORTY CODES WERE:

1. NOT EXHAUSTIVE 2. FAIRLY EXHAUSTIVE 3. MODERATELY EXHAUSTIVE 4. EXHAUSTIVE 5. REDUNDANT

WHAT DO YOU THINK IS MISSING FROM THE CODING SYSTEM?:

WHAT DO YOU THINK SHOULD BE DELETED FROM THE CODING SYSTEM?

WHAT DO YOU THINK IS MISSING FROM THE CARSP SYSTEM IN GENERAL?:

Page 408: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

391

WHAT KIND OF CONTRIBUTIONS DO YOU THINK THE CARSP SYSTEM CAN MAKE TO YOUR DECISION MAKING PROCESS?:

IF YOU HAD A CHOICE BETWEEN YOUR PRESENT EQUIPMENT SELEC­TION METHOD AND THE CARSP SYSTEM, WHICH WOULD YOU CHOOSE?:

HOW LONG DOES IT TAKE YOU TO REACH A DECISION USING YOUR METHOD?

HOW LONG DID IT TAKE YOU TO REACH A DECISION USING THE CARSP SYSTEM?

WHAT DOES IT USUALLY COST YOU TO DO AN EQUIVALENT ANALYSIS USING YOUR PRESENT SYSTEM?

WHAT WOULD IT COST YOU USING THE CARSP SYSTEM?

iMiiaiiiiKMicv

Page 409: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

APPENDIX D

STRUCTURE OF THE OPITZ CODING SYSTEM

392

Page 410: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

3 9 3

>-cr <

z UJ

tu

a. a. D in

UJ

Q O U 1 5

Aat jnaav

s|«ijai«uj AA«j fo uuo^ |wiiiu|

| t u « i a ^

tuoiauauiiQ

.r "3 •£ a a £ e e o i - • £ f = 5 0

<

^ 1 -3 < o

- « c

5 = J» •=

•t 0.

ca • c

• u -r c « .S ^ r X

LU

Q O U

< u

lU

o UJ

as O •a

a e C

5 5 |

« « a a • <« M

•= -= e

•s 5 £ £ - . 2 s « «

= o * a _ •

•a o c

(N O •

« 0 • "3 £ a X « c ? £ £ • w >

— • 0 - » v t 5 0 <

a a c

• u r « r J : a, 3

(A

Mac

«

',9lt^

ion

in

ir

ala

IS

I

r •= c « =

LU

o _ o > 2 : J 5 5

a = e u ; c fl : fl ~ —

« • a a fl 10 M

w - =

Hi a Ul

= s a c "•

Q Q. «

;; £ < J

u

U9

o

o - . Q

•a

s > 0

9

. £ V)

c o

— fl

5 I

-.IQ

~ fl

5 1

^ Q

9

a

t}u«ucKjujoo jvuouatoy

CN n LO

, c

u

< I 03.7

3 C

3 ; -J 3

3 u

< | a ]

3

u

u

S t U A U O a u j O Q i B u o i i e i O j - i i O M

CO r CO (D

Page 411: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

394

UJ Q O U

TR

ICA

L

EO

ME

a

'5i 5 X

51

O X

a Q •0

5 i

a c

5>

••

• ^

c •

"M

X 0

3 <

3 .s U) X

2 SJ is

a « a a a fl <•

•= -C c

• 1 £ c £ • S « • i -

• a a 3 . fl a «

X X -WJ - S

"i c = 5 » 0 a 2 "5

^

• c •

£ u 0

(J

> •

3 1 a 0

z

0

a a

-1 ^ c 3 X

^1

0

a « e 0 '— c — "S"? c

— -s a a a

m * a a > -0 X fl

£ -0 a 15 2 o> = 5.5 - 2 =

«« 0 e - • a • • > to

• ^ X a •S "3 * i 2 w — fl s 2 a =

• " * C a V to

"a c

^ ! • ~ " u 5 : -g ° "= 2 "r a :! 5 f 2 2 | 5 u s e a to n a a \

is Mtaaijasb ou

^ -

e a — 0 -o a a

" u •-2 a u £ " • ^ a -

•fl 3 2

« -0 Ui C

a

»—

(N

• X U 0 5 'T;

rlii 3 0 -O • c e a a 3 c a 0 - g 5 1 2 2 a 2 3 « a "2

UJ a 2 ^ a

rsj

CO

a >

a : 1 | to ^

2 = UJ

n

'3-

Ex

iein

al

tplin

a

an

d/o

r P

oly

go

n

^

"fl » E • 5 : 2 a :: — to <j a 0 • to. V. = ? •0 "S 2 c - = a 9 z

_• -5 -3 fl a > • c •= a .3 •a M N. a a "0 « 0 = -3 a «

1

U5

a U to fl 0

~ V a 3 "D C •• c .r a fl a

5 S " - •§ a • * to Q

2 1 -• a

Ui

ir3

1

1 to

«< X

to » 3 9 a " ••

• «

— c • 9 « > -a 0

a

a "3 to V 9 IJ

0

giaai jaao uii>v\

0

a fl

e a fl .

• Q . = _ \ fl -3 -.

c z ' 2 " e

;o

r- 1

a I ~ > 10" ^

30

"fl _ = 3

2 - 5 X = 3 •5 - s.

K _; ' c 9 -g

r CO

3

3

0

•«

0

CT

a 0 X

a — 3 0 0 X

l | 3 3 0

X

3

0

a a a

X

•t <•

2 =

e a

£ 0

lA

a

^ I Q

^luauoa

1 0

a "

X 2 " c 0 • e a

a a

£x 1 1

a to u •

c •

c a 3

pug auo 01 paddais JO g ioo ius

r - 1 CM

1 = 2 a - £ c a

"0 a a

x |

II to u a

n

a C a

X ^ >

> U 9

1 -

CIIOOUJS JO

OU9 auo 01 poddais

^ - CN

n V

V

0

(n „

- 1°

cn

e 0

^ a > a •a

(S

J I Q

ujoQiBuoaejoypot is loy

1 - CN 1 n

a •

• '1 i £ 0 ^ c •

|«asa« ipug u

T

a •»

•1 •= c « c 0 ^ C a

( S 9 S 8

spug u

^

c 0

•* a > a

•0 X

1 (M

-.IQ

^

TJ a <

X 2 i 1

a to u m

I J 3 U I a i d

t o o o t p i

UD

•fl fl a

€ X

11 a to u m

SJ3UI a i d

loq 01 p

m

m

0 3 c •T 3 C 2 - "

u) 3 C S O

u

U l

" f l C 9

X 3 > z ^ 0

J u 0

3 ra

nnyrjl »ddais

to

a fl

c

_3

U

e 3

0 1 r»

fl = 9

J 0 a

J ^

i l | " V M l

addais

1 0

a a a

"fl e 0

u

3

r

1

2 <»

l<|u c 0 n (J

u K l c D

c a C 0 a

1 " c 3<\o 1 d u j o o

(^ r*

: -3 fl 2 9 _3

d ~

00

3 3 •g

2 3 s _£

( 5 "

03

•« ^ 0 *

5

= < i | a

'•J r i

3 U < l C D

J - 10 J J O N

J ^

a

— ^ : 3 5 u C —

C o ;

,

02

fl

- M •< •'^ • . -I u 9 3 -^ - *" 0 0 5

1 ^ — — ^

— • •• c -

S 2 =

3 2 3 1= ?

3 , ^ | u

•^JO^J

Page 412: DESIGN AND ANALYSIS OF A CODING AND CLASSIFICATION

395

o

o 2 o o u 2 ta > 5 ^ 5 s 3 U u <

a

u &

<0

u a

ecu

< 0 2

o

N

-

m

CNI

«

n

«

' 't

n fl

s M

in

and

N

CO

IO

and

r^

»

and

n

CD

z w

to

r4

O)

Q fl to

n

: c o I k

< ^ 2

j >

u a 2 • OB

fl C 3 O

K

o

X 9

4

3 o SC

' -

• • •

M k e

• •1 e o a 9 s ;

il a

CN

9 e 2 3

CO

fl

i S . 0

a

a E < •

nr

a a X M

Ifl

a

la a

nd S

a

CD

a c

2 0 o u

r

> X e • Hi

< fl a fl ? S

00

• c a e e a C

U fl a C

u a E a

CT>

fl e

MA

TE

RIA

L

Caa

t Ir

on

o

Mo

du

lar

gra

ph

itic

caa

t

Iron

arM

i mal

laab

ia c

ast

iron

9^

e S "o c • o • •• • » d

v / f S z

10

CN

• 3 | *§ 5

•V • d

§ si • o ^

*» 2 ? • a -S

•* fl

n

Sta

ala

2 a

nd 3

Haat

trea

tad

' ^

fl a

: : •» r

2

LT:

Allo

y S

laal

Haa

t tr

aa

lad

CD

No

n-l

arr

ou

a M

ala

l

r*

Ug

hl

Allo

y

00

Olh

ar M

aia

ria

lt

05

<

k s Ui ^

Ul 0 Ul

1 ^ 5 O

Ul

m X u

s

00

o v

o r . /*

O

e f^

v 00

o A

e

^Jf o r>r

A

--

O w

e f«i

A

s \7 o to

A

CN

I B

«

e • A

o «o

v s A

CO

o o

V/ IO

« A

o to I N

v/ o

A

"^

o «o

o o

A

s

o «N

A

LD

o IO or

e « A

s v §

A

CD

o o V

V, o IO

/',

§ 'v

s I B

A

r

o o OD

o o

/

s o r<i

O o o

CO

o o 00

o o o «>J

0 )