`
`IROBOT 2012
`Shenzhen Zhiyi Technology v. iRobot
`IPR2017-02061
`
`
`
`U.S. Patent
`
`Sheet 1 of 6
`
`Nov. 20, 1984
`
`4,484,294
`
`2
`
`
`
`U.S. Patent
`
`Nov. 20, 1984
`
`Sheet 2 of 6
`
`4,484,294
`
`SIMULATOR
`ROBOT
`
`ROBOT
`
`WORK
`
`
`- COMPUTER
`~ BUFFER
`REGISTERS
`
`
`
`
`
`POSITION +.
`TRANS-
`
`>
`
`
`
`INCRE MENT
`= ACCUMULATING
`COUNTER
`
`COUNTER
`CONTROL
`
`3
`
`
`
`U.S. Patent
`
`Nov. 20, 1984
`
`4,484,294
`
`
`
`
`
`
`FETCH POSITION
`COMMAND FROM
`ROBOT
`
`
`CONTROLLER RAM
`
`
`INPUT ACTUAL POSITION
`OF ROBOT LINK FROM
`LINK POSITION TRANS-
`DUCER TO ROBOT
`
`CONTROLLER
`
`Jl
`
`
`
`COMPUTE ERROR IN
`ROBOT CONTROLLER
`BETWEEN COMMAND
`
`AND ACTUAL LINK
`
`POSITIONS
`
`
`OUTPUT ERROR FROM
`ROBOT CONTROLLER TO
`ROBOT LINK ACTUATOR
`
`Je
`
`
`
`I7
`
` Sheet 3 of 6
`
`ISAMPLE DESIRED;
`ON/OFF SW.
`CONDITION—
`
`FORMAT & BUFFER |
`STORE DESIRED
`
`F
`S IN
`
`REGISTERS ____.
`
`WRITE DESIRED
`
`POSITIONS & ON/OF
`SW. CONDITIONS Nn
`CONTROLLER RAM
`
`
`
`FETCH ON/OFF Ss
`
`
`CONDITION COMMAND
`
`
`FROM CONTROLLER RAM
`
`
`
`
`OUTPUT ON/OFF SW.
`CONDITION COMMAND TO
`FROM ROBOT CONTROLLER
`ROBOT _ON/OFF S
`
`
`
`ROBOT CONTROLLER
`SIMULATOR_ROBOT
`PROGRAM EXECUTION
`DATA CONVERSION
`
`
`EELerp0Ld
`
`4
`
`
`
`U.S. Patent
`
`Nov.20, 1984
`
`Sheet 4 of6
`
`4,484,294
`
`START© 300
`
`581)
`
`
`
`IS EITHER
`
`POSITIVE OR NEG.
`
`
`INCREMENT SWITCH OR
`
`
`RETURN SWITCH
`
`
`ACTIVATED
`?
`
`F ROBOT
`
`LINK
`
`FROM |
`
`
`
`
`
`FETCH POSITION 1]
`
`COMMAND FROM |
`CONTROLLER RAM}
`
` INPUT ACTUAL POSITION}
`
`
`
`oT
`
`457
`
`
`
`
`
` COMPUTE ERROR IN |
`FETCH POSITION COMMAND
`ROBOT CONTROLLER|
`FROM RAM AND LOAD INTO
`
`BETWEEN COMMAND |
`BUFFER REGISTER
`
`AND ACTUAL LINK
`|
`
`
`POSITIONS ene!
`
`
`
`
`
`FIR.
`
`
`OUTPUT ERROR FROM |
`MODIFY POSITION
`ROBOT CONTROLLER TO
`COMMAND BY ACCUMULATED
`
`ROBOTLINK ACTUATOR|
`INCREMENT VALUE IN
`
`COUNTER
`
`
`
`
`
`FSS.
`STORE MODIFIED POSITION
`COMMAND IN RAM
`Ty
`
`
`
`
`48
`YES
`FETCH ON/OFF SW]
`
`CONDITION COMMAND.
`| “3,
`FROM CONTROLLER RAM}
`REAL TIME POSITION
`
`COMMAND EDITING
` OUTPUT ON/OFF SW.
`ROUTINE
`!
`
`CONDITION COMMAND TO |
`
`ROBOT ON/OFF SW.
`
`LFROM ROBOTCONTROLLER)
`
`
`
`
`JEi
`
`J&R-WES
`
` L
`
`EXECUTION WITH POSITION COMMAND EDITING
`
`
`5
`
`
`
`U.S. Patent
`
`Nov. 20, 1984
`
`Sheet 5 of 6
`
`4,484,294
`
`
` 500
`POSITIVE
`
`NEITHER
`INCREMENT
`
`CHECK
`
`SWITCH
`SWITCH
`
`
`
`POSITIVE AND
`ACTIVATED
`ACTIVATED
`
`NEGATIVE INCREMENT
`
`
`SWITCH STATUS
`
`
`
`ATIVE DELAY DURING STORAGE
`
`
`IN RAM AND
`EXECUTION
`
`508
`OF UNMODIFIED
`|
`
`
`POSITION. COMMAND BY ROBOT
`
`
`ADD ONE POSITION
`
`
`INCREMENT VALUE
`
`TO COUNTER
`
`SUBTRACT ONE POSITION]
`INCREMENT VALUE
`
`counTeR
`
`
`
`904 DELAY DURING STORAGE OF
`COMMAND EXECUTION BY ROBOT
` SITION
`Fetexpe5b
`
`
`POSITIVE/NEGATIVE INCREMENT SWITCH SUBROUTINE
`
`Oo
`
`
`
`NOT ACTIVATED
`
`
` ADD ONE
`
`
`
`POSITION
`SUBTRACT ONE
`INCREMENT VALUE|
`POSITION
`
`
`
`TO COUNTER
`INCREMENT VALUE FROM COUNTER
`
`
`
`
`
`
`
`
`DELAY DURING STORAGE OF
`
`
`MODIFIED COMMAND IN. ite
`
`
`AND EXECUTION THEREOF BY ROBOT
`
`SIS
`
`
`
`DELAY DURING STORAGE IN
`RAM AND EXECUTION OF
`UNMODIFIED POSITION
`
`COMMAND 8Y ROBOT
`
`
`RETURN SWITCH SUBROUTINE_FZep0c
`@
`
`6
`
`
`
`U.S. Patent
`
`Nov. 20, 1984
`
`Sheet 6 of6
`
`4,484,294
`
`eR
`POSITION
`:
`3maces
`
`
`IE.
`
`LINK
`
`N,
`
`Ne
`
`Np
`
`Ne
`
`Ng Ne
`
`Nn
`
`COMMAND IDENTITY
`
`Peeptf
`
`7
`
`
`
`1
`
`4,484,294
`
`METHOD AND APPARATUS FOR
`MODIFICATION OF A PRERECORDED
`PROGRAMMED SEQUENCE OF MOTIONS
`DURING EXECUTION THEREOF BY A ROBOT
`
`5
`
`2
`manual manipulation ofthe joy stick. The outputs of the
`robotlink position transducers of the robot are periodi-
`cally sampled and stored for subsequent execution by
`the robot without the aid of the joystick.
`In a second approach,a lightweight “training robot”
`is used which, except for the mass of the training robot
`and the absenceofactuators for the links, is identical in
`all respects to the considerably more massive work
`robot being programmed. To program the work robot,
`the output elementofthe training robotis grasped man-
`ually by the individual doing the programming and
`moved through a sequence of motions which it is de-
`sired to have the work robot subsequently execute.
`Sincethe training robotis lightweight, it can be moved
`manually by the operator with little difficulty. As the
`training robot is being moved through the desired se-
`quence of motions, position transducers at the joints of
`its links provide electrical link position signals which
`are recorded for subsequent reproduction and input to
`the actuator servoloops of the work robot.
`A third method of robot programming involves by-
`passing or decoupling the actuators of the work robot
`and counter-balancing the work robot such that the
`operator may moreeasily move it through the desired
`path. The robot link position transducer outputs are
`recorded during this manual programming phase such
`that they can be subsequently replayed for execution by
`the robot.
`A still further approach involves providing the work
`robot with motion or force sensing transducers When
`an operator attempts to move the work robot during
`manual programming, the force or motion sensors de-
`tect the force or motion applied by the operator to the
`robot. The force or motion sensor outputs are input to
`the actuators for moving the individual work robot
`links in accordance with the manual force or motion
`applied thereto by the operatorAsthe robot links move
`under powerassistance,
`the link position transducer
`outputs are recorded for subsequent replay and execu-
`tion by the robot.
`During training of a spray painting robot having a
`manual trigger-operated ON/OFFsolenoid valve de-
`signed to control the flow of coating from the spray
`gun, and in conjunction with periodic sampling and
`storing of the robot link position transducer outputs to
`produce the recorded motion sequence whichis desired
`to thereafter replay for execution by the robot, the
`status of the manual, trigger-operated ON/OFF flow
`control solenoid valve is sampled and stored as solenoid
`valve commands. Whenthe robot program is thereafter
`replayed, the recorded sequence of ON/OFFsolenoid
`valve commands are output to the spray gun in syn-
`chronism with the sequence of robot position com-
`mands,
`thereby coordinating spray coating emission
`with spray gun position.
`In robots used for spray coating objects of various
`configurations and shapes, it sometimes occurs that the
`position of the object being coated relative to the robot
`during the programming phase has changed since the
`robot was programmed,with the result that if the pro-
`gram is executed by the work robot, the part will not be
`satisfactorily spray coated because the part is not in the
`same position relative to the work robot during pro-
`gram execution as it was during programming. The
`changein therelative position of the robot andarticle
`being coated may be due to a changein the location of
`the conveyor on whichthe articles are transported, a
`
`This invention relates to a work-performing robot
`which executes a prerecorded sequence of motions
`stored in a robot controller memory, and more particu-
`larly, to an apparatus and method for editing, or modi-
`fying, a program during processing by the robot con-
`troller immediately prior to input to the robot such that
`the program, as modified, is both executed by the robot
`and stored in the controller memory for subsequent
`repetitive reply or re-execution by the robot.
`A work-performing robot, or manipulator, typically
`includes a plurality of links which are pivotally con-
`nected end-to-endat joints. Located at each joint is a
`rotary actuator, usually of the electrohydraulic type,
`which is responsive to an electrical signal for control-
`ling the relative position, or angle, between the two
`links connected at the joint. Also located at each jointis
`an angular position transducer, for example, a resolver,
`which provides anelectrical output signal correlated to
`the relative position or angle of the links at the joint. At
`the outboard end of the outermost link, a device, such as
`a spray coating gun, is secured for performing work on
`a workpiece located at a work station as the robot exe-
`cutes a prerecorded sequence of motions.
`Associated with the work robot is a computerized
`robot controller in which is stored in a memory thereof
`a prerecorded sequenceof position commands. During
`program execution,or replay, the stored position com-
`mandsare sequentially fetched from the memory, com-
`pared with current samplesofactual robot position, and
`positional errors calculated corresponding to the differ-
`ence between the position commandsand the then cur-
`rent actual robot position, and the positional errors
`output from the controller to the robot to drive the
`robotto the desired or commandposition.
`Since the robot has plural axes or links which are
`separately controlled and driven by their respective
`actuators, each position command in the prerecorded
`sequencein reality constitutes a set of individual posi-
`tion command components corresponding to thediffer-
`ent axesorlinks of the robot. Depending upon the data
`processing capability of the controller, the individual
`position command componentsassociated with the dif-.
`ferent robot links will be processed either serially or in
`parallel by the controller in thecourse of producing the
`positional error signals outputto the different robotlink
`actuators. The set of position command components,
`regardless of whether individually processed by the
`controller in series or parallel, are retrieved from the
`controller memory for execution by the robot on a
`serial basis. If a programmed sequence of motions has N
`position commandsand the robot has M axes,there are -
`NMdiscrete robot link position commands which are
`grouped in N sequential sets of M link commands. Dur-
`ing program execution, the N sets of M.link commands
`are executedserially by set, and eitherserially or paral-
`lel by link command.
`Production of the prerecorded motion sequence,
`knownasrobot“training”or “teaching”, can be accom-
`plished in several ways. In accordance with one ap-
`proach,a joystick is used to control the robotactuators
`during programming such that the robot links move to
`position the robot output element in accordance with
`
`25
`
`30
`
`45
`
`35
`
`60
`
`65
`
`8
`
`
`
`4,484,294
`
`25
`
`30
`
`40
`
`45
`
`3
`change in the length of the hooks on whichthearticles
`are supported from the conveyor, or thelike.
`Whenthere is a change in the article-robot relation-
`ship between robot programming and program execu-
`tion, reprogramming may be necessary, particularly if
`the difference is substantial. If reprogramming is neces-
`sary, typically the entire program must be redonesince
`all position commands are adversely affected by the
`changed relationship between the robot andthearticle
`being coated.
`Another circumstance giving rise to the necessity to
`reprogram an entire spray painting robot motion se-
`quence is when the nozzle of the spray gun is changed
`such that the spray pattern is directed at a different
`angle relative to the spray gun whichis secured to the
`output link of the robot. While the relative position
`between the article being coated and the robot has not
`changed, because the spray gun nozzle has been
`changed, in turn changing the direction of the spray
`pattern, the relative position of the article being coated
`and the spray pattern changes, necessitating reprogram-
`ming of the entire motion sequence.
`A farther situation arising in practice necessitating
`reprogramming, albeit not of the entire motion se-
`quence, is when the size or shape ofthe article being
`coated is changed between the time of robot program-
`ming and program execution by the robot. For example,
`if the design ofa vertically suspended rectangular frame
`is altered such that a horizontal reinforcing bar span-
`ning opposite vertical sides of the rectangular frameis
`raised or lowered relative to the upper and lower ex-
`tremities of the frame, the portion of the prerecorded
`sequence of motions which control the robot, to spray
`coat thehorizontal reinforcing bar will no longer prop-
`erly locate the spray gunrelative to the bar, although
`proper location of the gun relative to the rectangular
`frame will be provided. Under such circumstances, and
`while it is unnecessary to reprogram the portion of the
`motion sequencecorrelated to spray coating the rectan-
`gular frameitself, it is necessary to reprogramthat por-
`tion of the motion sequencecorrelated to spray coating
`the repositioned, transverse, frame-reinforcing bar.
`Accordingly,it has been an objective of this inven-
`tion to provide a simple, inexpensive, and convenient
`apparatus and method for editing, or modifying, a pro-
`grammed sequence of motions for a work robot link
`such that the modified sequence wheninputto the work
`robot will result in producing motion ofthe robot link
`which compensates for the change in either the spray
`gun nozzle and/or the position or configuration of the
`workpiece which rendered the previously recorded
`program partially or totally unusable. This objective
`has been accomplished in accordance with certain prin-
`ciples of the invention by conducting program editing
`or modification, with the aid of suitable manually-
`activated input means, during program processing by
`the robot controller immediately prior to input of posi-
`tion commandsto the robot such that the program, as
`modified, is both executed by the robot and stored in the
`controller memory for subsequent replay or re-execu-
`tion, thereby achieving what effectively constitutes real
`time program editing during program execution by the
`robot. An important advantageofthis invention is that
`the operator, via the manually-activated input means,
`can not only edit the program under manual control,
`but can actually monitor the edited program asit is
`being executed by the robot, making further program
`changes as necessary and, again, on a real time basis.
`
`4
`In a preferred form of the invention, position com-
`mand incrementing means responsive to activation of a
`manual “positive increment” switch or “negative incre-
`ment” switch associated with a given robot link is pro-
`vided which is operative to generate, and positive or
`negatively accumulate, sequential discrete signals cor-
`related to positive or negative position increments by
`whichit is desired to modify,i.e., increase or decrease,
`the position commandsfor a given robotlink stored in
`the robot controller memory. The continuously chang-
`ing, either increasing or decreasing, cumulative position
`increment
`is used to successively modify, either by
`adding or subtracting the cumulative increment,
`the
`individual position commands associated with a given
`robotlink which are sequentially fetched from the robot
`controller memory prior to processing by the robot
`controller, which processing is effective to compare the
`successively modified position commandsfor the link in
`question with successively input actual robotlink posi-
`tions and derive therefrom for input to the robot link
`actuator successive positional error signals for succes-
`sively driving the robot link to the successively modi-
`fied commandpositions. Concurrent with processing of
`the modified position commands for execution by the
`work robot, the modified commandsare also stored in
`the controller memory as substitutes for the original,
`unmodified position commands.
`In the preferred form of the invention, when the
`manually activated “positive increment” or “negative
`increment” switch is released, the accumulated posi-
`tional increment is preserved and added, or subtracted,
`as the case may be,to all subsequent position commands
`of the recorded sequence occurring after deactivation
`of the positive/negative increment switch means. As a
`" result, the modification of the position command occur-
`ring immediately prior to deactivation of the positive/-
`negative increment switch meansis applied to all subse-
`quently occurring position commands without further
`intervention of the operator. Thepractical effect of this
`is thatif the fan spray relative to the article to be coated
`was several inches too, low, due to either changing of
`the gun nozzle between program recording and pro-
`gram execution, a changein position of the articles on
`the conveyor, a change in position of the conveyor
`relative to the robot, or the like, once the proper posi-
`tion command modification has been achieved to re-
`store the desired orientation between the robot and the
`workpiece, it is maintained for the remainder of the
`program without continued operator intervention.
`In accordance with a further, and equally important
`aspectof the invention, a method and apparatusis pro-
`vided, responsive to deactivation of the positive/nega-
`tive increment switch, for automatically reducing to
`zero, in a controlled manner, the cumulative command
`position increment. In accordance with further princi-
`ples of this invention, this objective is accomplished by
`automatically reducing the cumulative positional incre-
`mentby oneposition increment upon execution of each
`position command subsequent to deactivation of the
`positive/negative increment switch until such time as
`the cumulative positional increment has been reduced
`to zero. Once zero is reached, subsequently occurring
`position commandsare stored in memory and executed
`by the robot free of modification. Position commands
`fetched from memory during the interval between de-
`activation of the. positive/negative increment switch
`and reduction of the cumulative position increment to
`
`60
`
`65
`
`9
`
`
`
`20
`
`25-
`
`30
`
`35
`
`4,484,294
`5
`zero are modified by cumulative increments of succes-
`sively decreasing:size..
`Summarizing, with this invention a. prerecorded se-
`quence of robot commands can be modified and stored
`for subsequent replay simultaneously with execution of
`the modified commandsby the work robot. In this way,
`it
`is possible for’ the operator to effectively. modify
`under manual control a program while it is being exe-
`cuted by the robot. An advantage of this approach to
`editing position commands of a robot program is that
`the operatorcan: see:the effect of the position command
`program editing as‘actually executed by the work robot
`during the editing process. Stated differently, the opera-
`tor can edit the program ona real time basisasit is being
`executed by the work robot. Moreover, the position
`commandediting which occursis on a cumulativebasis,
`with the result that the duration of activation of the
`positive/negative increment switch meansdirectly con-
`trols the size of the corrections. of the position. com-
`mands. Thus, the longer the’ positive/negative incre-
`ment switch meansis activated, the greater the correc-
`tion that is achieved.
`These andother features, objectives, and advantages
`of the invention will become more readily apparent
`from a detailed description thereof taken in conjunction
`with the drawings in which:
`FIG. 1 isa perspective view,in schematic form, of a
`typical work-performing robot, or manipulator, show-
`ing the general relationship of the relatively massive
`robot links and theirrespectively associated actuators:
`and position transducers.
`FIG. 2 is a perspective view,in schematic form, of a
`lightweight, hand manipulabie simulator robot, or train-
`ing arm, showingthe generalrelationship of the simula-
`tor links and associated position transducers.
`FIG.3 is a circuit diagram in block formatof a pre-
`ferred embodimentof the invention.
`FIG.4a is a flowchart of simulator robot data con-
`version for a robot: system with which this invention is
`useful.
`FIG. 46 is a-flow chart of robot controller program
`execution for a robot system with whichthis invention
`is useful.
`*
`FIG. 5a is aflow.‘chart of robot controller program
`execution with position commandediting in accordance
`with an embodiment ofthe invention.
`FIG.5d is a flow chart of a positive/negative incre-
`mentswitch subroutine for an embodimentofthe inven- ”
`tion.
`50
`FIG.5cis a flowchart of a return switch subroutine
`for an embodimentof the invention.
`FIG,6 isa perspective view ofa robot work station,
`including conveyor and workpiece.
`FIG. 7 is a plot of the magnitude ofposition com-
`mandversusposition command (time) foranillustrative
`robot program designed to spray coat the workpiece
`shownin FIG.6.
`With reference to FIG.1, a typical work-performing
`robot, or manipulator, with respect to which this inven-
`tion is useful for providing real time incrementing of
`position commands motions which the robot is to exe-
`cute relative to a workpiece contained in a programmed
`series, is seen to include a base 10 which rests on the
`floor or other appropriate surface for supporting the
`robot. Extending from the base 10 are plural, series-con-
`nected, elongated, articulated. members.orlinks 12, 14,
`16, 18, 20 and 22 which, in the preferred embodiment,
`provide the robot with several, in this instance six, de-
`
`6
`greesof freedom.In practice,the links 12, 14, 16, 18, 20,
`and 22 collectively constitute a relatively large mass.
`For example,the links‘12, 14, and 16 are each approxi-
`mately 1-4. feet in length, and typically weigh in the
`’ range“of 10-400: pounds each. The links 18, 20, and 22
`which, in the work-performing robot shown in FIG. 1
`constitute a wrist, typically are significantly less mas-
`sive than thelinks 12, 14 and 16, although this is not
`necessarily the case.
`The link 12is vertically disposed and mounted to the
`base 10° bya suitable: joint which permits the link to
`rotate‘about its longitudinal axis which is coincident
`with’the X:axis.:An ‘actuator 23 is associated with the
`link 12; and is responsive to a position error signal pro-
`vided bya conventional robotcontroller (not shownin
`FIG. 1) to facilitate selective, bidirectional, angular
`motion of the-link:12 in an azimuthal direction aboutits
`longitudinalaxis to the desired link position. Also asso-
`ciated with the link 12 is a position transducer 24 which
`provides an electrical signal correlated to the actual
`angular, or azimuthal, position ofthe link 12 relative to
`the base 10.
`-
`Thelink 14‘at‘its lower énd iis connected to the upper
`end ‘of‘the’ link 12 by a suitable joint for permitting
`pivotal, elevational movementofthe link 14 in a verti-
`cal plane aboutahorizontal axis 26 whichis perpendic-
`ular to’the X‘axis ‘and parallel to the Y-Z plane. Associ-
`ated withthe link 14 is an actuator 28 whichis respon-
`sive to’a position étror signal from the robot controller
`and facilitates :‘selective, bidirectional, elevational, piv-
`otal movementofthe link 14 about horizontalaxis 26 to
`the desired link position. Also associated with the link
`14 is a position transducer 30 which providesanelectri-
`cal signalcorrelated to the actual elevational position of
`thelink 14 relative to:the link 12.
`.
`Thelink 16 atits inner end is connected to the upper
`end ofthe link 14 by a suitable joint for permitting the
`link 16to movein’a Vertical plane about horizontal axis
`32 whichis parallel to axis 26. A suitable transducer 34
`is associated withthe link 16 for providing an electrical
`signal correlated to the actual angular elevational posi-
`tion‘of the link 16 with respect to the link 14. An actua-
`tor 33, associated with the link 16, is responsive to a
`_ position error signal from the robot controller andfacil-
`itates selective, bidirectional, elevational, pivotal move-
`mentof’ thelink 14 about horizontal axis 32 to the de-
`sired link position.
`The actuator 23 which bidirectionally drives the link
`12.about the X axis provides the work-performing robot
`with one degreeoffreedom, namely, azimuthal posi-
`tioning’ motion, whilé the actuators 28 and 33 which
`bidirectionallydrive the link 14 and link 16, respec-
`tively, provide therobot with two degrees of freedom,
`each in an elevational direction.
`hearticulated links 18, 20, and 22 collectively con-
`stitute a wrist. Link 18 at its inner end is connected via
`a suitable joint to the outer end of the link 16. An actua-
`tor 44 is associated withthe wrist member 18 forbidi-
`rectionally rotating, wheninput with suitable position
`errorsignals fromtherobot controller, the wrist mem-
`ber 18to the desiredlink position aboutits longitudinal
`axiswhichis coincidentwith the longitudinal axis of the
`link 16. A suitable position’ transducer 46 is associated
`with the link18 for providingan electrical signal corre-
`lated to the actualrelative rotational position ofthe link
`18 with respect to the link 16.
`The link 20 is connected atits inner end via a suitable
`joint to the outer end ofthe link 18 for providing rota-
`
`45
`
`60
`
`65
`
`10
`
`10
`
`
`
`4,484,294
`
`10
`
`- 5
`
`20
`
`25
`
`30
`
`7.
`tional movementof link 20 aboutits. longitudinal, axis
`which is perpendicular to. the longitudinal axis of link
`18. An actuator 48 is associated with link 20, and when
`input with suitable position error signals from the robot
`controller, bidirectionally rotates link 20 aboutits longi-
`tudinal axis perpendicular to the longitudinalaxis of link ©
`18 to the desired link position. Asuitable position. trans-
`ducer50is. also-associated with link.20.for providing an :~
`electrical outputcorrelated to the actual rotationalposi-
`tion. of this link relative to link 18.
`Link 22 is connected via a suitable joint to the outer
`end of link 20 tofacilitate rotation of link 22 aboutits.
`longitudinal axis which is disposed perpendicularly to
`the longitudinal axis of link 20. An actuator.52 associ-
`ated with link 22, when input with suitable position
`error signals from the:robot controller, facilitates bidi-
`rectional motion oflink 22 aboutits longitudinal axis to
`the desired link position..A transducer 54, also associ-
`ated: with link 22, provides an electrical signal output
`correlated to the actual relative rotational position of
`link 22 relative to link 20.
`Link 22 constitutes the mechanical output element of
`the work-performing robot. While the mechanical out-
`put of the robot can beutilized for positioning-a wide
`variety of devices, in the preferred form of the inven-
`tion the work-performing robotis utilized to position a
`spray coating gun 58 having a barrel 58¢ with a nozzle
`586 which emits coating particles. The gun handle $8c is
`mounted to the upper end of the wrist link 22. The gun
`handle 58c mounts a suitable. trigger mechanism 58d
`which, when actuated by a suitable’ signal-operated
`device (not shown),functions to control theemission of —
`coating particles from the nozzle 586 of the spray gun
`58
`ae
`The longitudinalrotational axes of wrist links 18, 20,
`and 22 are mutually perpendicular, and accordingly
`constitute three degrees of freedom forthe robot. These
`three degrees of freedom, coupled with the three de-
`grees of freedom of the links 12, 14, and 16, provide a
`total of six degrees of freedom for the work-performing
`robot.
`In the operation ofthe work-performing robot shown
`in FIG. 1, a series of programmed, i.e., desired, link
`position commandsignals stored in a suitable memory
`device of the robot controller are periodically retrieved
`and compared against the actual link position signals
`provided by the link position transducers 24, 30, 34, 46,
`50, and 54, and in response thereto the link positional
`error signals are generatedfor each ofthe links 12, 14,
`16, 18, 20, and 22. The positional error signals for the
`various links 12, 14, 16, 18, 20, and 22 are then input to
`the various link actuators, 23, 28, 33, 44, 48, and 52,
`which typically are of the servo-controlled electrohy-
`draulic type, for moving the links to the desired, or
`programmed, commandpositions which in turn reduce
`the positional error signals to zero. Thus, the links of the
`work-performing robot of FIG. 1 are driven through
`the programmed sequence of desired motions, or com-
`mandpositions, utilizing closed-loop servo techniques,
`by periodically comparing desired position command
`signals retrieved from the memoryofthe robot control-
`ler with actual link position signals from their associated
`position transducers, and using the resulting positional
`error signals associated with thedifferent links to drive
`the various link actuators to the desired, or pro-
`grammed, commandpositions.
`Since the robot controller, actuators, position trans-
`ducers, closed-loop servo controls, and thelike of the
`
`°
`
`8
`work-performing robot of FIG. 1 are well known and
`form no part. of this invention,
`they are not further
`discussedin detail herein, except to the extent necessary
`to an understandingof the flow charts of FIGS. 4 and5.
`The robot simulator, or training arm, shown in FIG.
`2, which is useful in preparing a programmed sequence.
`of motions for input to the work robot for..execution
`thereby relative to a workpiece, includes a tripod base ©
`110 from. which extends vertically a link 112 which is
`connected to the base for rotational movement about a
`vertical axis by a rotary joint 123. A position transducer
`124 associated with the link 112 and base 110 provides
`an electrical signal correlated to the actual angular
`position of the link 112 relative to the stationary base.
`Pivotally connected to the upper end ofthe link 112 by
`a rotary joint 128 is a link 114 which pivots about axis
`126. An angular position transducer 130 associated with
`the joint 128 and the link 114 provides an electrical
`signal correlated to the actual angular position of the
`link 114 with respect to the link 112. A link 116 con-
`nects to the link 114 via a rotary joint 133 for pivotal
`movement about axis 132. An angular position trans-
`ducer 134 associated with the joint 133 and the link 116
`provides an electrical signal correlated to the actual
`angular position of the link 116 with respect to. the link .
`114.
`Also includedin the robot simulator depicted in FIG.
`2 are links 118, 120, and 122 which are pivotally con-
`nected to links 116, 118, and 120, respectively, via ro-
`tary joints 144, 148, and 152, respectively. Angular
`position transducers 146, 150, and 154 associated with
`the rotary joints 144, 148, and 152, respectively, and the
`links 118, 120, and122, respectively, provide electrical
`’ signals correlated to the actual angular position of the
`links 118, 120, and 122 with respect to the links 116, 118,
`and 120, respectively.
`Mountedtothe link 122 is a spray gun 158 having a
`barrel 1580, a nozzle 158b, and a handle 158¢ which
`mounts an ON/OFFswitch 158d.
`The length of the links 112, 114, 116, 118, 120, and
`122 ofthe simulator robot of FIG. 2 are identical to the
`lengths of the links 12, 14, 16, 18, 20, and 22, respec-
`tively, of the work-performing robot shownin FIG.1.
`Ofcourse, the mass ofthe links 112, 114, 116, 118, 120,
`and 122 of the simulator robot of FIG. 2 are a mere
`fraction of that of their counterpart links 12, 14, 16, 18,
`20, and 22 of the considerably more massive work-per-
`forming robot shown in FIG. 1. Similarly, the joints
`123, 128, 133, 144, 148, and 152 of the simulator robot.
`permit the same type of pivotal motion between their
`respectively associated links 112, 114, 116, 118, 120, and
`122 as their counterpartrotary actuators 23, 28, 33, 44,
`48, and 52 providefortheir respectively associated links
`12, 14, 16, 18, 20, and 22 of the work-performing robot.
`When the spray gun 158 is moved manually by an
`operator grasping the handle 158c thereof through a
`sequence of motions necessary to spray coat an object,
`which is possible due to its lightweight construction,
`the various links 112, 114, 116, 118, 120, and 122 of the
`simulator robot move through a sequence of motions.
`Simultaneously, the transducers 124, 130, 134, 146, 150,
`and 154 of the simulator robot associated with the vari-
`ous simulator robotlinks 112, 114, 116, 118, 120, and 122
`provide electrical outputs corresponding to the actual
`sequence of positions, or motions, through which the
`simulator robot links move in the course of manually
`moving the gun throughthe positions necessary to coat
`the object. These transducer signals corresponding to
`
`40.
`
`45
`
`50
`
`65
`
`11
`
`11
`
`
`
`4,484,294
`
`9
`the actual positions ofthe different simulator robot links
`can beinput directly to the robot controller memory or
`recorded by any suitable means (not shownin FIG.2)
`and thereafter the recorded signals input to the robot
`controller of the work-performing robot wherethey are
`compared with signals correlated to the actual work
`robotlink positions and link position error signals de-
`rived for input to the work robot link actuators to cause
`the work robot links to reproduce the motion of the
`simulator robot
`links in the manner previously de-
`scribed.
`In the course of moving the gun 158 associated with
`the simulator robot through the sequence of motions
`necessary to spray coatthe desired object, the operator
`periodically manually actuates the trigger 158d to per-
`mit spray coating material from the gun nozzle 1584. By
`recording signals corresponding to the position of
`switch 158d in conjunction with recording the position
`signals provided by the actual position transducers 124,
`130, 134, 146, 150, and 154 of the simulator robotfor the
`entire sequence of motions of the simulator robot