throbber
1
`
`IROBOT 2012
`Shenzhen Zhiyi Technology v. iRobot
`IPR2017-02061
`
`

`

`U.S. Patent
`
`Nov. 20, 1984
`
`Sheet 1 of6
`
`4,484,294
`
`
`
`2
`
`

`

`U.S. Patent
`
`Nov, 20, 1984'
`
`Sheet 2 of6
`
`4,484,294
`
`SIMULATOR
`ROBOT
`
`ROBOT
`CONTROLLER A? 5
`
`WORK
`ROBOT
`
` -COMPUTER
`
`-BUFFER
`
`REGISTERS
`
`
`
`
`""" — -
`POSITION :“Am
`
`
`TRANS-
`:-
` DUCERS :- Ii
`
`
`
`
` FETCHED
`
`COMMAND
`BUFFER
`
`‘
`
`ADDER
`
`
`
`INCREMENT
`, ACCUMULAflNG
`
`COUNTER
`
`COUNTER
`CONTROL
`
`
`'
`
`
`
`RETURN;
`
`435
`0
`
`- 1%«5
`
`3
`
`

`

`U.S. Patent
`
`Nov. 20, 1984
`
`Sheet 3 of 6
`
`4,484,294
`
`300
`
`SAMPLE DESIRED
`ON/OFF sw.
`_ N'T'ON ‘2
`
`
`
`
` 3&4
`
`
`_7
`
`..
`
`30.5
`
` 4%?
`
`
`FETCH POSITION
`COMMAND FROM
`
`
`ROBOT
`
`
`CONTROLLER RAM
`
`
`INPUT ACTUAL POSITION
`
`0F ROBOT LINK FROM
`
`LINK POSITION TRANS-
`
`
`DUCER TO ROBOT
`
`CONTROLLER
`
`3/4
`COMPUTE ERROR IN
`
`
`ROBOT CONTROLLER
`
`
`BETWEEN COMMAND
`AND ACTUAL LINK
`
`
`POSITIONS
`
`OUTPUT ERROR FROM
`
`
`ROBOT CONTROLLER TO
`
`ROBOT LINK ACTUATRO
`
`3/7
`
`FETCH ON/OFF S .
`CONDITION COMMAND
`
`
`
`FROM CONTROLLER RAM
`3/9
`OUTPUT ON/OFF SW.
`
`
`CONDITION COMMAND TO
`
`ROBOT ON/OFF SW.
`
`FROM ROBOT CONTROLLER
`
` 35/
`
`
`
`ROBOT CONTROLLER
`
`PROGRAM EXECUTION
`
`FORMAT 8| BUFFER 2
`STORE DESIRED
`=‘
`POSITIONS 8s ON/OFF
`
`
`SW. CONDITIONS IN
`CONTROLLER
`
`REGIEST “
`
`
`
`
`WRITE DESIRED
`POSITIONS 8| ON/OFF
`SW. CONDITIONS IN L
`CONTROLLER RAM
`
`‘
`
`
`
`
`
`
`
`SIMULATOR ROBOT
`DATA CONVERSION
`
`
`
`£12» 45
`
`4
`
`

`

`U.S. Patent Nov.20, 1984
`
`Sheet4 Of6
`
`4,484,294
`
`START ,.. 3/20
`
`36/2
`
`FETCH POSITION a
`COMMAND FROM ‘
`ROBOT
`;
`
`
`
`
`415/
`
`
`
`
`
`IS EITHER
`
`POSITIVE OR NEG.
`
`INCREMENT SWITCH OR
`CONTORRLLE RAM
`RETURN SWITCH
`
`
`ACTIVATED
`
`?
`
`
` INPUT ACTUAL POSITION
`
`
`0F ROBOT LINK FROM I;
`LINK POSITION TRANs-
`YES
`
`
`DUCER TO ROBOT
`
`
`
`
`COMPUTE ERROR IN j 3/4
`FETCH POSITION COMMAND
`ROBOT CONTROLLER
`FROM RAM AND LOAD INTO
`BETWEEN COMMAND
`BUFFER REGISTER
`
`AND ACTUAL LINK
`I
`
`
` 4.92?
`' 3/5
`
`OUTPUT ERROR FROM I
`MODIFY POSITION
`ROBOT CONTROLLER To
`COMMAND BY ACCUMULATED
`ROBOT I, ,'-.K ,
`INCREMENT VALUE IN
`
`
`
`POUNTER
`
`
`
`5
`
`BN8
`
`
`
` IYES
`1
`FETCH ONIOFF SW.
`
`; \fl—h—J
`CONDITION COMMAND
`OMCOR
`REAL TIME POSITION
`
`COMMAND EDITING
`
`
`ROUTINE
`OUTPUT ON/OFF sw.
`
`CONDITION COMMAND TO »
`ROBOT ONIOFF sw.
`;
`
`, FROM ..0T_)
`
`
`L
`EXECUTION WITH POSITION COMMAND EDITING
`
`
`5
`
`

`

`U.S. Patent
`
`Nov. 20, 1984
`
`Sheet 5 Of6
`
`4,484,294
`
`DELAY DURING STORAGE
`IN RAM AND EXECUTION
`OF UNMODIFIED
`
`POSTION ,cIOvIAND
`
`
`
`
`
` 500 POSITIVE
`
`
`
`
`
`
`ACTIVATED
`POSIT'VE AND
`ACTIVATED
`
`
`
`
`NEGATIVE INCREMENT
`SWITCH STATU°
`
`
`
`
`EGATIVE
`
`
`INCR EM ENT
`
`SWITCH
`
`508
`T
`
`ACTIVATED
`
`
`
`ADD ONE POSITION
`INCREMENT VALUE
`
`
`TO COUNTER
`
`
`
`
`SUBTRACT ONE POSITION
`INCREMENT VALUE
`OM COUNTER
`
`7
`
`-
`
`
`
`
`
`
`
`504
`DELAY DURING STORAGE OF
`
`
`MODIFIED COMMAND IN RAM
`
`AND MODIFIED POSITION
`
`COMAND EXCUTION BYR-BOT
`
`POSITIVE/NEGATIVE INCREMENT SWITCH SUBROUTINE
`O
`_%ao£46
`
`CHECK
`RETURN SWITCH
`
`NOT ACT'VATED
`
`OSITION
`VALUE
`R ,
`
`'
`
`SUBTRACT ONE
`POSITION
`INCREMENT VALUE
`FROM COUNTER
`
`
`
`DELAY DURING STORAGE OF
`55/; MODIFIED COMMAND IN RAM
`ADN EECUTON THEREOF BY ROBOT
`
`DELAY DURING STORAGE IN
`RAM AND EXECUTION OF
`UNMODIFIED POSITION
`COMMAND BY ROBOT
`
`o
`
`@953
`
`
`RETURN SWITCH SUBRO UTINE
`
`6
`
`

`

`US. Patent
`
`Nov. 20, 1984
`
`Sheet 6 of6
`
`4,484,294
`
`
`
`LINK
`POSITION
`
`
`
` \
`
`
`
`\MODIFIED
`PROGRAM
`
`COMMAND IDENTITY
`
`Ilia/c!
`
`TIME
`
`7
`
`

`

`METHOD AND APPARATUS FOR
`MODIFICATION OF A PRERECORDED
`PROGRAMMED SEQUENCE OF MOTIONS
`DURING EXECUTION THEREOF BY A ROBOT
`
`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-end at 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 joint is
`an angular position transducer, for example, a resolver,
`which provides an electrical 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 sequence of position commands. During
`program execution, or replay, the stored position com-
`mands are sequentially fetched from the memory, com-
`pared with current samples of actual robot position, and
`positional errors calculated corresponding to the differ-
`ence between the position commands and the then cur-
`rent actual robot position, and the positional errors
`output from the controller to the robot to drive the
`robot to the desired or command position.
`_
`Since the robot has plural axes or links which are
`separately controlled and driven by their respective
`actuators, each position command in the prerecorded
`sequence in reality constitutes a set of individual posi-
`tion command components corresponding to the differ-
`ent axes or links of the robot. Depending upon the data
`processing capability of the controller, the individual
`position command components associated with the dif—.
`ferent robot links will be processed either serially or in
`parallel by the controller in the'course of producing the
`positional error signals output to the different robot’link
`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 commands and the robot has M axes, there are ‘
`NM discrete 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 executed serially by set, and either serially or paral-
`lel by link command.
`Production of the prerecorded motion sequence,
`known as robot “training” or “teaching”, can be accom-
`plished in several ways. In accordance with one ap-
`proach, a joy stick is used to control the robot actuators
`during programming such that the robot links move to
`position the robot output element in accordance with
`
`15
`
`20
`
`25
`
`30
`
`35
`
`4O
`
`45
`
`50
`
`55
`
`60
`
`65
`
`1
`
`4,484,294
`
`5
`
`10
`
`2
`manual manipulation of the joy stick. The outputs of the
`robot link position transducers of the robot are periodi-
`cally sampled and stored for subsequent execution by
`the robot without the aid of the joy stick.
`In a second approach, a lightweight “training robot”
`is used which, except for the mass of the training robot
`and the absence of actuators for the links, is identical in
`all respects to the considerably more massive work
`robot being programmed. To program the work robot,
`the output element of the training robot is 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.
`Since the training robot is 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 more easily 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 operator As the robot links move
`under power assistance,
`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/OFF solenoid 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 which is 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. When the robot program is thereafter
`replayed, the recorded sequence of ON/OFF solenoid
`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
`change in the relative position of the robot and article
`being coated may be due to a change in the location of
`the conveyor on which the articles are transported, a
`
`8
`
`

`

`3
`change in the length of the hooks on which the articles
`are supported from the conveyor, or the like.
`When there is a change in the article-robot relation-
`ship between robot programming and program execu-
`tion, reprogramming may be necessary, particularly if 5
`the difference is substantial. If reprogramming is neces-
`sary, typically the entire program must be redone since
`all position commands are adversely affected by the
`changed relationship between the robot and the article
`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 which is 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 further situation arising in practice necessitating
`reprogramming, albeit not of the entire motion se-
`quence, is when the size or shape of the article being
`coated is changed between the time Of robot program-
`ming and program execution by the robot. For example,
`if the design of a vertically suspended rectangular frame
`is altered such that a horizontal reinforcing bar span-
`ning opposite vertical sides of the rectangular frame is
`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 the horizontal reinforcing bar will no longer‘prop-
`erly locate the spray gun relative 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 sequence correlated to spray coating the rectan-
`gular frame itself, it is necessary to reprogram that por-
`tion of the motion sequence correlated 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 when input to the work
`robot will result in producing motion of the 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 commands to 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 advantage of this 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 as it is
`being executed by the robot, making further program
`changes as necessary and, again, on a real time basis.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35,
`
`45
`
`50
`
`55
`
`60
`
`4,484,294
`
`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
`which it is desired to modify, i.e., increase or decrease,
`the position commands for a given robot link 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
`robot link 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 commands for the link in
`questiOn with successively input actual robot link 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 command positions. Concurrent with processing of
`the modified position commands for execution by the
`work robot, the modified commands are 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 means is applied to all subse-
`quently occurring position commands without further
`intervention of the operator. The practical effect of this
`is that if 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, avchange in position of the articles on
`the conveyor, a change in position of the conveyor
`relative to the robot, or the like, once theproper 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
`aspect of the invention, a method and apparatus is 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-
`ment by one position 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 commands are 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
`
`65
`
`9
`
`

`

`5'
`
`10-
`
`15
`
`20
`
`'
`
`4,484,294
`5
`6
`zero are mOditied by cumulative increments of succes-
`grees of freedom In practice, the links 12, 14, 16, 18, 20,
`sively decreasing size.
`and 22 collectiVely constitute a relatively large mass.
`Summarizing, with this invention a prerecorded se-
`For example, the links 12, 14, and 16 are each approxi-
`quence of robot commands can be modified and stored
`mately 1—4 feetin length, and typically weighin the
`for subsequent replay simultaneously with execution of
`rangeof 10—400 pounds each. The links 18,20, and 22
`the modified commands by the work robot. In this Way,
`which, in the work-performing robot shown1n FIG. 1
`it
`is possible for the operator to effectively modify
`constitute a wrist, typically are significantly less mas-
`under manual control a program while it is being exe-
`sive than the links 12,14 and 16, although this1s not
`necessarily the case.
`cuted by the robot. An advantage of this approach to
`The link 12IS vertically disposed and mounted to the
`editing position commands of a robot program is that
`the operator can See the effect of the position command
`base 10 by a suitable joint which permits the link to
`program editing asactually executed by the work robot
`rotate about its lbngitudinal axis which is coincident
`during the editing process. Stated differently, the opera-
`with:' the X axis An actuator 231s associated with the
`tor can edit the program on a real time basis as it is being
`link 12, andIS responsive to a position error signal pro-
`executed by the work robot Moreover, the position
`vided by a Conventional robot controller (not shown'1n
`command editing which occurs is on a cumulative basis,
`FIG1) to facilitate selective, bidirectional, angular
`with the result that the duration of activation of the
`motion of the link 121n an azimuthal direction about its
`positive/negative increment switch means directly con-
`longitudinal axis to the desired link position. Also asso-
`trols the size of the corrections. of the position com-
`ciated with the link 121s a position transducer 24 which
`mands. Thus, the longer the positive/negative incre-
`provides an electrical signal correlated to the actual
`ment switch means is activated, the greater the correc-
`angular, or azimuthal, position of the link 12 relative to
`tion that15 achieved.
`the base 10.
`'-
`These and other features, objectives, and advantages
`The link 14atits lower end15 connected to the upper
`of the invention will become more readily apparent
`end of the link 12 by a suitable jOint for permitting
`from a detailed description thereof taken'1n conjunction
`pivotal, elevatiOnal movement of the link 141n a verti-
`with the drawingsin which.
`cal plane abOuta hOrizontal axis 26 which1s perpendic-
`FIG. 1 is a perspective View, in schematic form, of a
`ular tothe Xaxis and parallel to the Y-Z plane. Associ-
`typical Work-performing robot, or manipulator, show-
`ated with the link 14is an actuator 28 which1s respon-
`ing the general relationship of the relatively massive
`sive ‘to a position error signal from the robot controller
`robot links and their respectively associated actuators-
`and facilitatesselectiVe, bidirectional, elevational, piv-
`otal movement of the link 14 about horizontal axis 26 to
`and position transducers.
`,
`FIG. 21s a perspeCtive View, in schematic form, of a
`the desired link position. Also associated with the link
`lightweight, hand manipulable simulator robot, or train-
`14 is a positiOn transducer 30 which provides an electri-
`ing arm, showing the general relationship of the simula-
`cal signal correlated to the actual elevational position of
`the link 14 relative to the link 12.
`tor links and associated position transducers.
`.
`FIG. 31s a circuit diagram1n block format of a pre-
`The link 16 at its inner endis connected to the upper
`ferred embodiment of the invention.
`end of the link 14 by a suitable joint for permitting the
`FIG. 4a15 a floW chart of simulator robot data con-
`link 16_ to move in a vertical plane about horizontal axis
`32 which1s parallel to axis 26. A suitable transducer 34
`version for a robot system with which this invention is
`useful.‘ '
`is associated with the 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
`, pOSitio'n error Signal from the robot controller and facil-
`itates selective, bidirectiOnal, eleVational, pivotal move-
`ment of the link 14 about horizontal axis 32 to the de-
`sired l1nk position.
`The actuator 23 Which bidirectionally drives the link
`12'about the X axis provides the work-performing robot
`with one degree of freedom, namely, azimuthal posi-
`tioning motion, while the actuators 28 and 33 which
`bidirectionally drive the link 14 and link 16, respec-
`tively,provide therobot with two degrees of freedom,
`each'in an elevational direction.
`The articulated links 18, 20, and 22 collectively con-
`stitute a wrist. Link 18 at its inner end18 connected via
`a suitable joint to the outer end of the link 16. An actua-
`tor 441s as'Sociated with the wrist member 18 for bidi-
`rectionally rotating, when input with suitable position
`errbr signals from the robot controller, the wrist mem-
`ber 18 to the desired link position about its longitudinal
`axisWhichls coincident with the longitudinal axis of the
`link 16. A suitable position transducer 4618 associated
`with the link 18 for providing an electrical signal corre-
`lated to the actual relative rotational position of the link
`18 with respect to the link 16.
`The link 20 is COnnected at its inner end via a suitable
`joint to the outer end of the link 18 for providing rota-
`
`FIG. 5a15 a flowchart of robot controller program
`execution with position command editingin accordance
`with an embodiment of the invention.
`FIG. 5b'is a flow chart of a positive/negative'incre-
`ment switch subroutine for an embodiment of themven- ,
`tion.
`FIG. 5c1s a flowchart of a return switch subroutine
`for an embodiment of the invention
`'
`FIG 61s a perspective view ofa robot work station,
`including conveyor and workpiece.
`FIG 7 is a plot of the magnitude ofposition com-
`mand versusposition command (time) for an illustrative
`robot program designed to spray coat the workpiece
`shown1n FIG. 6.
`With reference to FIG. 1, a typical work-performing
`robot, or manipulator, with respectto which this'1nven-
`tion is useful for providing real time incrementing of
`position commands motions which the robotis to exe-
`cute relativeto a workpiece contained1n a programmed
`series, is Seen to 1nclude a base 10 which rests on the
`fl00r or other appropriate surface for supporting the
`robot. Extending him the base 10 are plural, series-con-
`nected, elongated, articulated members or links 12, 14,
`16, 18, 20 and 22 which, in the preferred embodiment,
`provide the robot with several, in this instance six, de-
`
`FIG. 4b1s a flow chart of robot controller program
`execution for a robot system with which this invention
`is useful.
`‘
`
`25
`
`30
`
`35
`
`40
`
`45
`
`'
`50
`
`55
`
`60
`
`65
`
`10
`
`10
`
`

`

`4,484,294
`
`‘
`
`10
`
`15
`
`20
`
`25
`
`30
`
`7 .
`tional movement of link 20 about its. 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, bidirec‘tionally rotates link 20 about its longi»
`tudinal axis perpendicular to the longitudinal axis of link '
`18 to the desired link position. A‘ suitable position trans-
`ducer 50 is also associated with link 20 for providing an ,
`electrical output correlated to the actual rotational posi-
`tion of this link relative to link 18.. _
`Link 22 is’conne’cted‘via a suitable.joint to the'outer
`end of link 20 to: facilitate rotation of link 22 about its
`longitudinal axis which is disposed perpendicularly to
`the longitudinal axis of link 20. An actuatorv52 associ-
`ated with link 22, when input with suitable position
`error signals from the robot controller, facilitates bidi-
`rectional motion of link 22 about its 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 be utilized for positioninga wide
`variety of devices, in the preferred form of the inven-
`tion the work-performing robot1s utilized to position a
`spray coating gun 58 having a barrel 58a with a nozzle
`58b which emits coating particles. The gun handle 58c'1s
`mounted to the upper end of the wrist link 22. The gun
`handle 58c mounts aisuitable trigger mechanism 58d
`which, when actuated by a suitable signal-operated
`device (not shown), functions to control theemission of
`coating particles from the nozzle 58b of the spray gun
`58.
`The longitudinal rotational 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 of the work-performing robot shown
`in FIG. 1, a series of programmed, i.e., desired link
`position command signals 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'1n response thereto the link positional
`error signals are generated for each of the 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 electrohye
`draulic type, for moving the links to the desired, or
`programmed, command positions 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-
`mand positions, utilizing closed-loop servo techniques,
`by periodically comparing desired position command
`signals retrieved from the memory of the robot control-
`ler with actual link position signals from their associated
`position transducers, and using the resulting positional
`error signals associated with the different links to drive
`the various link actuators to the desired, or pro-
`grammed, command positions.
`Since the robot controller, actuators, position trans-
`ducers, closed-loop servo controls, and the like of the
`
`8
`work-performing robot of FIG. 1 are well known and
`form no part of this invention,
`they are not further
`discussed in detail herein, except to the extent necessary
`to an understanding of- the flow charts of FIGS. 4 and 5.
`The robot simulator, or training arm, shown in FIG.
`2, which1s usefulin 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 of the 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. A11 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 1
`114.
`
`11
`
`Also included in 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, and>122, respectively, provide electrical
`’ signals correlated to the actual angular position of the
`35
`links 118, 120, and 122 with respect to the links 116,118,
`and 120, respectively.
`Mounted to the link 122is a spray gun 158 having a
`barrel 1580, a nozzle 158b, and a handle 158s which
`mounts an ON/OFF switch 158d.
`The length of the links 112, 114, 116, 118, 120, and
`122 of the 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 shown1n FIG 1.
`Of course, the mass of the 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 counterpart rotary actuators 23, 28, 33, 44,
`48, and 52 provide for their 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 1581: 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 robot links 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 through the positions necessary to coat
`the object. These transducer signals corresponding to
`
`50
`
`4s
`
`55
`
`65
`
`11
`
`

`

`4,484,294
`
`10
`
`9
`the actual positions of the different simulator robot links
`can be input directly to the robot controller memory or
`recorded by any suitable means (not shown in FIG. 2)
`and thereafter the recorded signals input to the robot
`controller of the work-performing robot where they are
`compared with signals correlated to the actual work
`robot link 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.
`
`20
`
`In the course of moving the gun 158 associated with
`the simulator robot through the sequence of motions
`necessar

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket