WO2004108365A1 - 多関節ロボットのティーチングデータ作成方法 - Google Patents

多関節ロボットのティーチングデータ作成方法 Download PDF

Info

Publication number
WO2004108365A1
WO2004108365A1 PCT/JP2004/007627 JP2004007627W WO2004108365A1 WO 2004108365 A1 WO2004108365 A1 WO 2004108365A1 JP 2004007627 W JP2004007627 W JP 2004007627W WO 2004108365 A1 WO2004108365 A1 WO 2004108365A1
Authority
WO
WIPO (PCT)
Prior art keywords
articulated robot
data
work
teaching data
point
Prior art date
Application number
PCT/JP2004/007627
Other languages
English (en)
French (fr)
Other versions
WO2004108365A8 (ja
Inventor
Koji Takahashi
Shinji Aoki
Yutaka Mitsuhashi
Original Assignee
Honda Motor Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2003156239A external-priority patent/JP4000306B2/ja
Priority claimed from JP2003158254A external-priority patent/JP4000307B2/ja
Application filed by Honda Motor Co., Ltd. filed Critical Honda Motor Co., Ltd.
Priority to CA002526459A priority Critical patent/CA2526459C/en
Priority to US10/558,641 priority patent/US7248012B2/en
Priority to GB0524063A priority patent/GB2418033B/en
Publication of WO2004108365A1 publication Critical patent/WO2004108365A1/ja
Publication of WO2004108365A8 publication Critical patent/WO2004108365A8/ja

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • G05B19/425Teaching successive positions by numerical control, i.e. commands being entered to control the positioning servo of the tool head or end effector
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36461Teach for each next similar fixture, piece only some reference points

Definitions

  • the present invention relates to a method for creating teaching data for an articulated robot that includes an end effector and sequentially works on a plurality of continuous working points using the end effector.
  • offline teaching offline teaching
  • a model of a multi-joint robot, a work to be a work object, and a peripheral structure is constructed on a computer, teaching data is created using the model, and the teaching data is supplied to a multi-joint robot at a site.
  • teaching data is set mainly for the purpose of reducing the attitude deviation of the end effector.
  • the sliding force of the motion path may be impaired.
  • the time required for the end effector to enter the first working point and the time required for extracting the end working point from the last working point are not sufficient. Les, not considered. As a result, the cycle time as a whole may become longer, and the operator may make corrections again by trial and error.
  • the work points and work order of the articulated robot with respect to the work are set, the robot posture at each work point is obtained, and the work content of the work at each work point is set as a work attribute. It is created by setting as well as setting the operation method between work points as an operation attribute.
  • the robot posture data at the work point may include tool coordinate data indicating the posture of the end effector provided at the tip end.
  • the articulated robot is provided near a predetermined transfer line, and performs, for example, welding work on a vehicle transferred on the transfer line, but only one type of vehicle is transferred. Not necessarily. When the model that the articulated robot can handle is changed, new teaching data is created.
  • Patent Document 1 JP 2003-94363 A
  • Patent Document 2 Japanese Patent Application Laid-Open No. 2002-239955
  • Patent Document 3 Japanese Patent Application Laid-Open No. 2002-239957
  • Patent Document 4 JP 2003-117684 A
  • the present invention provides a multi-joint robot capable of smoothly operating the multi-joint robot when sequentially performing a plurality of consecutive work points with an end effector, thereby shortening the overall operation time.
  • An object of the present invention is to provide a method for creating teaching data of a joint robot.
  • Another object of the present invention is to provide a teaching method for a multi-joint robot that makes it possible to effectively use existing teaching data for an existing work and efficiently create teaching data for another work.
  • the purpose is to provide a data creation method.
  • a teaching data creation method for an articulated robot includes an end effector, and performs teaching work on a plurality of continuous working points sequentially by the end effector.
  • For each of the other working points gradually change the posture of the end effector of the articulated robot obtained in three steps.
  • the multi-joint at the first working point is so set as to reach the first working point in the shortest time at the teaching point force at the previous stage of the first working point. You should find the attitude of the mouth bot.
  • the end effector can quickly move to the first work point, and can perform an operation including the movement time before the start of the work in a short time.
  • the attitude of the articulated robot at the final working point is adjusted so that the teaching point at a stage subsequent to the final working point is reached in the shortest time with respect to the final working point. You may ask.
  • the end effector can quickly retreat from the place, and can perform the operation including the moving time after the work in a short time.
  • a first sub-step for obtaining a difference between each attitude of the end effector of the multi-joint robot obtained in the second step and the third step, and the first work point From the distance ratio (distance distribution ratio) of each work point from the first work point to the total path distance to the final work point, each posture of the end-effector of the articulated robot obtained in the second step and the third step And a second sub-step of setting a second provisional posture by apportioning (distributing) the data.
  • a first sub-step for calculating a difference between the postures of the articulated robot obtained in the second step and the third step is provided, and the final working point is calculated from the first working point.
  • a proportional distribution posture is obtained by proportionally distributing each posture of the articulated robot obtained in the second step and the third step, based on a distance ratio of each work point from the first work point to the entire path distance up to.
  • the method may include two sub-steps and a third sub-step of obtaining the end effector posture in the apportioning posture as a second temporary posture.
  • the end effector is simulated from the first working point to the final working point while moving at predetermined intervals.
  • the end effector When the end effector is simulated in the first sub-step, the end effector may be moved so as to minimize the movement time from the first work point to the final work point.
  • the end effector When the end effector is simulated in the first sub-step, the end effector may be moved linearly from the first working point to the final working point.
  • At least one of a plurality of parameters constituting the first temporary posture may be replaced with a parameter of the second temporary posture.
  • the first provisional posture is set so that the working unit of the end effector is straight with respect to the work, and in the fifth step, the working unit is configured to position the work unit with respect to the work.
  • the first temporary posture may be corrected so as to maintain a straight state.
  • the method for creating teaching data for an articulated robot includes the steps of: combining the first teaching data of the articulated robot corresponding to a plurality of work points in the first work with a plurality of work in the second work; In the method for creating teaching data of an articulated robot for converting to the second teaching data of the articulated robot corresponding to a point, the first teaching data and the second teaching data are transmitted to the articulated robot at the working point.
  • the tool coordinate data includes a plurality of parameters, in advance the second teaching data One of the parameters of the tool coordinate data is set, and the step of converting the tool coordinate data of the first teaching data into the tool coordinate data of the second teaching data so that the parameters coincide with each other is performed by a plurality of steps. The operation is performed for the work point.
  • the first teaching data is effectively used, and the second teaching data is efficiently used.
  • the tool coordinate data of the first teaching data When converting the tool coordinate data of the first teaching data into the tool coordinate data of the second teaching data, the tool coordinate data of the; L teaching data is converted and rewritten in its storage area. After that, the data may be transferred to the second teaching data storage area, or may be converted after being transferred to the second teaching data storage area. Further, the tool coordinate data of the first teaching data may be moved to a predetermined buffer area, converted in the buffer area, and then moved to the storage area of the second teaching data.
  • the first teaching data and the second teaching data may include approach direction data for the work point, and the approach direction data may be copied for each work point.
  • the first teaching data and the second teaching data include rotation information on a rotation angle of at least one joint for each of the working points, and may copy the rotation information for each of the working points. Good. This prevents the cable of the articulated robot from being twisted and prevents the corresponding shaft from rotating excessively between the work points.
  • the second teaching data passes through first temporary work point data indicating a temporary point immediately before reaching the first work point among the work points, and after the last work point.
  • Second temporary working point data indicating a temporary point the first temporary working point data is set based on the tool coordinate data of the first working point, and the second temporary working point data is set to the last working point data.
  • the setting may be based on the tool coordinate data of the work point.
  • FIG. 1 is a schematic diagram of an offline teaching device and an articulated robot of the present embodiment.
  • FIG. 1 is a schematic diagram of an offline teaching device and an articulated robot of the present embodiment.
  • FIG. 2 is a schematic perspective view showing the tool coordinates of the end effector and TCP.
  • FIG. 3 is a circuit configuration diagram of an offline teaching device according to the present embodiment.
  • FIG. 4 is a block diagram showing a schematic configuration of a teaching data creation circuit.
  • FIG. 5 is a schematic diagram showing a positional relationship between a work origin and a work point.
  • FIG. 6 is a diagram showing the contents of a path table.
  • FIG. 7 is a flowchart showing a procedure of teaching data creation method for smoothly operating the articulated robot to reduce the operation time.
  • FIG. 8 is a schematic diagram showing a first temporary posture of an end effector with respect to a work.
  • FIG. 9 is a schematic diagram showing a second temporary posture of the end effector with respect to a workpiece.
  • FIG. 10 is a schematic diagram showing the attitude of the end effector with respect to the workpiece after the first temporary attitude has been corrected with the second temporary attitude.
  • FIG. 11 is a flowchart showing a procedure of an approach direction determination template function.
  • FIG. 12 is a flowchart showing a procedure of a return direction determination template function.
  • FIG. 13 is a flowchart (part 1) showing a procedure for obtaining a second temporary posture of the end effector in the first creation method.
  • FIG. 14 is a flowchart (part 2) showing a procedure for obtaining a second temporary posture of the end effector in the first method.
  • FIG. 15 is a flowchart (part 1) showing a procedure for obtaining a second temporary posture of the end effector in the second creation method.
  • FIG. 16 is a flowchart (part 2) illustrating a procedure for obtaining a second temporary posture of the end effector in the second creation method.
  • FIG. 17 is a flowchart (part 1) showing a procedure for obtaining a second temporary posture of the end effector in the third creation method.
  • FIG. 18 is a flowchart (part 2) illustrating a procedure for obtaining a second temporary posture of the end effector in the third creation method.
  • FIG. 19 is a schematic diagram showing a positional relationship between a temporary movement route and a work point in the third creation method.
  • FIG. 20 is a schematic side view showing a work route based on first teaching data showing an operation of the articulated robot on an existing work.
  • FIG. 21 is a schematic side view showing a work path based on second teaching data showing an operation of the articulated robot on another workpiece.
  • FIG. 22 is a diagram showing the contents of first teaching data.
  • FIG. 23 is a schematic diagram showing correspondence between rotation information and rotation angles.
  • FIG. 24 is a diagram showing the contents of second teaching data.
  • FIG. 25 is a flowchart showing a procedure of a teaching data creation method for setting teaching data in another work using teaching data for an existing work.
  • FIG. 26 is a schematic perspective view showing a state in which data of a welding portion is copied and converted from first teaching data to second teaching data.
  • FIG. 27 is a schematic side view showing a state in which data of a difference working point is complemented.
  • FIG. 28 is a schematic side view showing a state in which data of an approach portion and an end portion are created.
  • FIG. 29 is a schematic side view showing a work route based on first teaching data indicating an operation of the articulated robot for an existing work provided with a jig.
  • FIG. 30 is a schematic side view showing a work path based on second teaching data showing an operation of the articulated robot on another work provided with a jig.
  • FIG. 1 shows an offline teaching device 10 to which the teaching data creation method of the articulated robot according to the present embodiment is applied, and an articulated robot 12 to which the teaching data created by the offline teaching device 10 is applied. The configuration is shown.
  • the articulated robot 12 is an industrial articulated robot, and includes a base 14, a first arm 16, a second arm 18, and a third arm 20 in order based on the base 14.
  • An end effector 22 as a welding gun is provided at the tip of the third arm 20.
  • the end effector 22 is detachable from the third arm 20.
  • the first arm 16 is rotatable by vehicles ftU and J2 which are rotatable horizontally and vertically with respect to the base 14.
  • 2nd arm Reference numeral 18 is rotatably connected to the first arm 16 by the tree 3.
  • the second arm 18 can be twisted and rotated by the tree 4.
  • the third arm 20 is rotatably connected to the second arm 18 by a tree 5.
  • the third arm 20 can be twisted and rotated by the tree 6.
  • Tree 4 and car ft [6 can rotate more than 360 °, respectively.
  • the end effector 22 is a C-shaped welding gun, and has a pair of electrodes (working portions) 22b and 22c that open and close at both ends of a yoke 22a.
  • the electrodes 22b and 22c When the electrodes 22b and 22c are closed, they come into contact with the workpiece W at a welding work point (hereinafter, referred to as a TCP (Tool Center Point)).
  • TCP Tool Center Point
  • a direction that coincides with the axis of the electrodes 22b and 22c on the TCP side is defined as a vector Zr, and a direction orthogonal to the solid Zr and directed to the outside of the end effector 22 is defined as a vector Xr. Also, a direction orthogonal to the vector Xr and the vector Zr is defined as a vector Yr.
  • the posture of the end effector 22 becomes as shown by the two-dot chain line in FIG. Then, the yoke 22a is moved to a position where the yoke 22a is rotated while maintaining a straight state with respect to the work W.
  • the position of the TCP is represented by three parameters of orthogonal coordinate values X, Y, and ⁇ ⁇ ⁇ as absolute coordinates from a predetermined origin ⁇ .
  • TCP is the value of each rotation angle ⁇ 1-—6 of the tree 1-1J6 and the number of joints. It is determined by the dimensions of each part of the robot 12.
  • the articulated robot 12 operates according to teaching data set in the robot control unit 24.
  • the articulated robot 12 and the robot controller 24 are arranged on a production line at the site where vehicles 200 and 202 (see FIGS. 20 and 21) are manufactured.
  • the connected end effector 22 can be moved to an arbitrary position near the vehicles 200 and 202 and can be set to an arbitrary direction. In other words, the end effector 22 can move in six degrees of freedom.
  • the articulated robot 12 may have an operation unit such as an expansion / contraction operation, a parallel link operation, and the like in addition to the rotation operation.
  • the offline teaching device 10 is configured by a computer. As shown in FIG. 3, the control unit 26 controls the entire offline teaching device 10 by using a CP. U28, ROM 30 and RAM 32 as recording units, a hard disk 36 for reading and writing data by a hard disk drive 34, and a recording medium for reading and writing teaching data to and from an external recording medium 38 such as a flexible disk and a compact disk A drive 40, a teaching data creation circuit 42 for creating teaching data of the articulated robot 12, and a simulation circuit 44 for performing an operation simulation of the articulated robot 12 based on the created teaching data.
  • the control unit 26 is connected to a display 46 for supporting teaching data creation work, displaying simulation images, and the like via a drawing control circuit 48, and as an input device via an interface 50. Keyboard 52 and mouse 54 are connected.
  • the hard disk 36 has a teaching data creation program 56 for creating teaching data of the articulated robot 12, the articulated robot 12, shape data 58 relating to work objects and other equipment, and the articulated robot 12.
  • Robot specification data 60 including the operation specifications of each axis are recorded.
  • the teaching data creation circuit 42 includes a robot operation planning unit 42 a for setting an operation plan of the articulated robot 12, and simulates the operation of the articulated robot 12, and performs multiple operations between them.
  • the teaching data creation circuit 42 also includes a mouth bot movement time calculation unit 42d for calculating a movement time when moving along a predetermined route, a robot posture teaching unit 42e for teaching the posture of the articulated robot 12, and records teaching data. And a robot teaching data recording unit 42f.
  • the articulated robot 12 works in order on the work points P1, P2, and one Pe shown in FIG.
  • These working points Pl, P2,. Pe indicate the position of the TCP and are arranged in a linear or curved order in order.
  • the work point P1 at one end is a point where work is performed first, and is also referred to as a first work point.
  • the working point Pe at the other end is the point where work is performed last, and is also called the final working point.
  • the articulated robot 12 is arranged at the work origin P0 before the work starts and after the work ends.
  • the teaching data of the multi-joint robot 12 includes the multi-joint at the work points Pl, P2, and 'Pe. It is created based on the path table 100 (see FIG. 6) in which the posture of the robot 12 and the posture of the end effector 22 are recorded.
  • the path table 100 is a rewritable table, and is recorded in a recording unit such as the RAM 32.
  • the path table 100 includes a “TCP position” column, a “end effector orientation” column, and a “axis angle” column indicating tool coordinate data.
  • TCP position data indicating the absolute coordinates of the end effector 22, that is, X, Y, and ⁇ values are recorded.
  • End effector orientation data indicating the absolute coordinates of the end effector 22, that is, X, Y, and ⁇ values are recorded.
  • the vectors Xr, Yr, and Zr of the coordinates indicating the attitude of the endehuekta22 are recorded.
  • the tool coordinate data is represented by six parameters, and is represented in the order of X, Y, Z, Xr, Yr, and Zr.
  • the "Each axis angle" column is composed of rotation angles ⁇ 1 ⁇ 6, and the respective rotation angles ⁇ 1— ⁇
  • the path table 100 is basically a table having the same structure as the first teaching data 150 (see FIG. 22) and the second teaching data 160 (see FIG. 24), which will be described later.
  • the “entry direction” column and the “rotation” column in the first teaching data 150 and the second teaching data 160 are omitted from the drawing.
  • the CPU 28 and the teaching data creation circuit 42 are executed by the operator directly by executing part of the force that is executed based on the teaching data creation program 56. I'm sorry.
  • the movement of the articulated robot 12 is virtual due to the function of the simulation circuit 44 and the like, and it is not necessary to actually operate the articulated robot 12.
  • the first creation method is shown in Figs. 7 and 14. It will be explained while doing so.
  • a teaching data creation program 56 is read from the hard disk 36, and the teaching data creation circuit 42 is read.
  • the shape data 58 relating to the multi-joint robot 12, the work object and other equipment, and predetermined data relating to the multi-joint robot 12, which is the robot specification data 60 are read from the hard disk 36.
  • step S2 the robot posture of the articulated robot 12, which is the initial posture when the end effector 22 is arranged at the work origin P0, is set.
  • This initial posture is set in consideration of the arrangement of the other articulated robot 12 in the vicinity.
  • step S3 the positions of the working points Pl, P2, of the end effector 22 and the tool posture thereof are set as a first temporary posture.
  • the first temporary posture is usually set so that the electrodes 22b and 22c are perpendicular to the surface of the workpiece W.
  • the posture of the end effector 22 set as the first temporary posture is, specifically, vectors Xr, Yr, Zr, which are data in the “end-effector orientation” column in the path table 100 of FIG. Coordinate values X, Y, and ⁇ ⁇ , which are data in the “TCP position” column.
  • the data in the “Each axis angle” column in the path table 100 may be blank at this time.
  • step S4 the approaching direction determination template function is executed by the teaching data creation circuit 42.
  • This approach direction determination template function uses the articulated robot at the first work point P1 so that it reaches the first work point P1 in the shortest time from the teaching point (that is, work origin ⁇ 0) before the first work point P1. Find 12 postures.
  • step S5 the teaching data creation circuit 42 executes the return direction determination template function.
  • the number of times at the final working point Pe is set so that the teaching point (that is, the working origin P0) at a later stage from the final working point Pe is reached in the shortest time. Obtain the posture of the joint robot 12.
  • step S6 the teaching data creation circuit 42 determines the first working point P1 and the first working point P1 based on each posture of the articulated robot 12 obtained by the approach direction determination template function and the return direction determination template function.
  • Final working point For other working points except Pe Set the second temporary posture of Ende Anlagena 22.
  • the second temporary posture is set as a posture in which the end effector 22 can move smoothly while moving from the first working point P1 to the final working point Pe.
  • steps S4, S5, and S6 are each processed as a subroutine, and the processes of these subroutines will be described later (see FIGS. 11, 10, and 11).
  • step S7 the first temporary posture is corrected with the second temporary posture, and the posture of the end effector 22 at each work point is set.
  • step S7 is generally performed when the attitude of the end effector 22 indicated by the first temporary attitude is straight with respect to the workpiece W as shown in FIG.
  • the correction may be performed so as to be in the same direction as the second temporary posture when viewed from the work W while maintaining a straight state with respect to the work W.
  • the data of the first provisional posture and the second provisional posture corresponding to Xr, Yr, and Zr in the “end effector direction” column in the pass tape nore 100 are Xra, Yra, Zra, and Zra, respectively.
  • Zra of the data of the first provisional posture is replaced with Zrb of the data of the second provisional posture. More specifically, since the data force corresponding to Zrb is set as correction data D [j] for each processing target point by the processing described later, it may be substituted as Zr ⁇ D [j]. .
  • the orientation force of the electrodes 22b and 22c of the end effector 22 is rotated around the electrodes 22b and 22c while maintaining a straight state with respect to the work W, and the second force when viewed from the work W Is set in the same direction as the temporary posture of
  • step S4 the approach direction determination template function executed in step S4 will be described in detail with reference to FIG.
  • step S101 the tool coordinate data of the first working point P1, which is the first working point, is recognized from the force of the path table 100 (FIG. 6), and the tool coordinate data is defined as Loci.
  • step S102 a teaching point at a stage before the first working point P1 is selected, and tool coordinate data at this point is set as Loc2.
  • this Loc2 is And
  • step S103 the articulated robot 12 is moved to a position indicated by Loc2.
  • step S104 it is confirmed whether or not the articulated robot 12 can move from Loc2 to Loci. If the movement is possible, the process proceeds to the next step S105, and if it is determined that the movement is not possible, the process proceeds to step S110.
  • step S105 the movement time Tm required for the articulated robot 12 to move from Loc2 to Loci is determined.
  • step S106 it is confirmed whether or not the buffer time Tb has been updated.
  • step S107 the buffer time Tb is compared with the movement time Tm at that time.
  • Tb> Tm the process proceeds to step S108, and when Tb ⁇ Tm, the process proceeds to step S110.
  • step S108 the buffer time Tb is replaced with the movement time Tm and updated.
  • step S109 the tool coordinate data Loci and the posture of the articulated robot 12 at that time are recorded as Posel.
  • Posel and Pose3 described later are represented by six parameters ⁇ 1 ⁇ 6 (see FIG. 6).
  • the buffer time Tb is updated, so that the shortest movement time is included in the buffer time Tb. Is set.
  • the posture of the articulated robot 12 at that time is recorded as Posel.
  • step S110 a search is performed to determine whether there is any other reachable posture of the articulated robot 12 from Loc2 to Loci. If there is another position that can be reached, the tool coordinate data indicating the position is set as Loc1, and the process returns to step S103. If there is no other reachable position, the process moves to the next step S111.
  • Step Sill at the first working point PI, a determination is made in the process of rotating the end effector 22 in a posture in which the electrode 22b is kept perpendicular to the workpiece W. If the end effector 22 has been rotated 360 ° from the predetermined posture, the process proceeds to step S113, and if the rotation angle is less than 360 °, the process proceeds to step S112.
  • step S111 may be performed based on an operation range table disclosed in Patent Document 3, for example, while taking into consideration the interference region with the workpiece.
  • step S112 the tool coordinate data obtained by rotating the end effector 22 by a predetermined minute angle while keeping the electrode 22b perpendicular to the workpiece W is reset as Loci, and the process returns to step S103 to perform processing.
  • the process of rotating the end effector 22 may be performed by changing the data of the vector Zr in the Loci of the tool coordinate data by a predetermined amount (see FIG. 2).
  • step S113 the Lo cl of the tool coordinate data recorded in step S109 and the posture Posel of the articulated robot 12 are recorded as the formal posture at the first working point PI.
  • the tool coordinate data Loci formally determined at this time is represented by six parameters xl, yl, zl, rxl, ryl, and rzl.
  • the entry direction determination template function By executing the entry direction determination template function as described above, the shortest approach path from the work origin P0 to the first work point P1, the posture of the multi-joint mouth bot 12 at the first work point P1, and the end effector 22 postures can be obtained.
  • the attitude of the end effector 22 at the first working point P1 obtained by the approach direction determination template function is shown by a vector VI in FIG.
  • This return direction determination template function is a process for obtaining the attitude of the articulated robot 12 at the work point Pe so that the work point Pe, which is the final work point, reaches the teaching point in the subsequent stage in the shortest time.
  • the work origin P0 is selected as the teaching point at a later stage.
  • This return direction determination template function is a process that replaces the first work point P1 in the approach direction determination template function with the final work point Pe and reverses the operation direction.
  • the other basic processes are the approach direction determination template function. Since the function is the same as the function, the detailed description of the return direction determination template function is omitted.
  • This return The orientation Pose3 of the articulated robot 12 at the final work point Pe and Loc3 (x3, y3, z3, rx3, ry3, rz3) of the Tonore coordinate data of the end effector 22 are determined by the direction determination template function. In addition, it is possible to obtain the return route in the shortest time from the final work point Pe to the work origin PO.
  • the attitude of the end effector 22 at the final work point Pe obtained by the return direction determination template function is indicated by a vector Ve in FIG.
  • the approach direction determination template function and the return direction determination template function may use the technology disclosed in the above-mentioned Japanese Patent Application Laid-Open Nos. 2002-239955 and 2002-239957.
  • step S301 the path table 100 is loaded on a predetermined recording unit.
  • step S302 Loci (xl, yl, zl, rxl, ryl, rzl) of the tool coordinate data, which are the processing results of the approach direction determination template function executed in step S4, and the multi-joint Load posture 12 of robot 12.
  • step S303 Loc3 (x3, y3, z3, rx3, ry3, rz3) of the tool coordinate data, which is the processing result of the return direction determination template function executed in step S5, and the multi-joint Load the pose Pose3 of the robot 12.
  • step S304 the tool coordinate data of the working points Pl, P2, P3, —Pe is acquired based on the path table 100.
  • the number of work points to be processed (that is, P2, P3, P4, ...) other than the first work point PI and the final work point Pe out of the work points Pl, P2, P3, and Pe is set as a variable n.
  • a predetermined counter j is used, and the tool coordinate data of the work point to be processed is sequentially recorded as loc_list [j].
  • the obtained loc_list [j] is represented as six parameters x [j], y [j], z [j], rx [j], ry [j], rz [j]. Among them, x [j], y [j] and z [j] indicate the absolute coordinates of TCP, and rx [j], ry [j] and rz [j] indicate the direction of the end effector 22.
  • dd_dist [j] 1, 2, to (n + 1)
  • dd_dist [j] is added to obtain the total path distance dist.
  • This change amount Loc ⁇ is obtained as Loc ⁇ -Loc3-Loci.
  • Steps S307-S310 a counter j is incremented from 1 to n. ⁇ Second temporary posture is sequentially obtained for the processing target work point loc_list [j].
  • step S307 the distance d_dist [j] between loc_list [j] and Loci is obtained as d_dist [j]-dd_dist [l] + dd_dist [2] + to + dd_dist [j] (see Fig. 5). .
  • step S308 a distance ratio rat_dist [j] of the distance d_dist [j] to the entire path distance dist is obtained as d_dist [j] Zdist.
  • This distance ratio rat_dist [j] is the working point
  • the force S can accurately represent the ratio of the lengths of the curves.
  • step S309 a second temporary posture of the end effector 22 in which Loci and Loc3 are proportionally distributed by rat-dist [j] is obtained.
  • the second temporary posture is represented by six parameters ddx [j], ddy [j], ddz [j], ddrx [j], ddry [j] and ddrz [j] indicating tool coordinate data. It is required as follows.
  • the second temporary posture represented by these six parameters is shown as vectors Val, Va2, and ⁇ • ⁇ Va (n).
  • These vectors Val, Va2,. Va (n) are set to change gradually from the vector VI to the vector Ve according to the distance ratio rat_dist [j].
  • step S310 correction data D [j] for correcting the first temporary posture Ddrz [j] is selected and substituted.
  • step S311 it is confirmed whether or not the correction data D [j] has been set for all the work points to be processed. If there is an unprocessed processing target work point, the counter j is incremented by “11”, and the process returns to step S307 to continue the processing. If the processing has been completed for all the work points to be processed, the processing of the subroutine shown in FIGS. 13 and 14 is completed, and the process proceeds to step S7 (see FIG. 7).
  • step S7 the tool coordinate data of the end effector 22 at each processing work point is obtained by replacing the value of the vector Zr in the first provisional posture with the correction data D [j]. , And record it in a predetermined column of the path table 100 (see FIG. 6).
  • the posture of the articulated robot 12, that is, ⁇ 1 ⁇ ⁇ 6, can be obtained by an inverse transformation operation using a determinant or the like. Record in the column.
  • teaching data of the articulated robot 12 is created, and after the teaching data is recorded on the hard disk 36, the operation is confirmed by the simulation circuit 44 and is recorded on the external recording medium 38 via the recording medium drive 40. Next, the teaching data recorded on the external recording medium 38 is downloaded to the robot control unit 24 and used for controlling the multi-joint robot 12.
  • the end effector 22 at each work point to be processed between the first work point P1 and the final work point Pe is determined. Since the tool coordinate data is created based on the vectors VI and Ve and the distance ratio rat_dist [j] between each work point, the posture of the end effector 22 gradually changes from the work point P1 to the work point P1 Pe. Can be moved smoothly and in a short time.
  • the Loci of the tool coordinate data indicating the attitude of the end effector 22 at the first working point P1 is determined as an attitude that can move in the shortest time from the previous teaching point (that is, the working origin P0) by the entry direction determination template function. Is set. Therefore, at the start of work, The DFE EKTA 22 can quickly move to the first work point P1, and can perform the operation including the movement time before the start of the work in a short time.
  • Loc3 of the tool coordinate data indicating the attitude of the end effector 22 at the final working point Pe can be moved in the shortest time to the next teaching point (that is, the working origin P0) by the return direction determination template function.
  • the posture is set. Therefore, after the work at the final work point Pe is completed, the end effector 22 can quickly retreat from the place, and can perform the operation including the moving time after the work in a short time.
  • step S6 a second creation method for smoothly operating the articulated robot 12 to reduce the operation time.
  • the main routine, the approach direction determination template function, and the return direction determination template function perform the processing shown in FIGS. 7, 11, and 12, respectively, in the first method.
  • the method for setting the second temporary posture of the end effector 22 in step S6 in FIG. 7 is different.
  • the subroutine processing in step S6 will be described with reference to FIGS.
  • Steps S401 to S405 in Fig. 15 are performed by the same processing as steps S301 to S305.
  • step S406 the amount of posture change Pose ⁇ of the articulated robot 12 when the end effector 22 moves from Loci to Loc3 is determined. Since the posture of the articulated robot 12 is expressed as Posel and Pose3 as ⁇ 1 ⁇ ⁇ ⁇ 6, which is the rotation angle of each car, the posture change amount Pose ⁇ is obtained as PoseA Pose3_Posel. It is.
  • steps S407 and S408 are the same processing as steps S307 and S308, and the distance ratio rat_dist [j] is obtained.
  • step S409 the apportionment posture ddPose of the articulated robot 12 in which Posel and Pose3 are apportioned by rat_dist [j] is obtained.
  • This posture ddPose is calculated as ddPose—Posel + rat_distXd_pose.
  • the apportioning posture ddPose is set so as to gradually change to Posel force Pose3 according to the distance ratio rat_dist [j] of the processing point to be processed. Also, the apportionment ddPose shows The orientation of the end effector 22 determined by the posture of the articulated robot 12 is also set so as to gradually change in accordance with the distance ratio r at-dist [j].
  • step S410 the tool coordinate data xj, yj, zj, rxj, ryj, and rzj of the end effect ecator 22 when the articulated robot 12 is in the apportioning posture ddPose is obtained.
  • These six parameters can be obtained by sequentially integrating the rotation angle of each car ftil-J6 and the determinant indicating the length of each arm. These six parameters will represent the second temporary attitude of the end effector 22.
  • step S411 rzj is selected and substituted as correction data D [j] for correcting the first temporary posture.
  • step S412 it is confirmed whether or not second tentative postures have been obtained for all processing target work points. If there is an unprocessed work point to be processed, the counter j is incremented by "+1", and the process returns to step S407 to continue the process. If the processing has been completed for all the work points to be processed, the subroutine processing shown in FIGS. 15 and 16 is completed, and the process proceeds to step S7 (see FIG. 7).
  • the tool coordinate data of the end effector 22 is calculated based on the apportioning posture ddPose of the articulated robot 12 at each processing target work point. create.
  • the posture of the articulated robot 12 at the first working point P1 and the final working point Pe is set by the approach direction determination template function and the return direction determination template function so that the approach and return can be performed in a short time. Therefore, the same effect as in the first method described above can be obtained.
  • Steps S501 and S505 in FIG. 17 can be performed by the same processing as steps S301 to S305.
  • step S506 After executing step S505, in step S506, the posture of the articulated robot 12 is set to Pos. After moving the end effector 22 to the first working point PI, temporarily move it to Pose3 corresponding to the final working point Pe.
  • This temporary movement is to simulate the function of the robot control unit 24 by the simulation circuit 44, and can smoothly move from the first working point P1 to the final working point Pe.
  • the temporary movement is performed on condition that the posture of the end effector 22 at the first working point P1 and the final working point Pe is the posture determined by the approach direction determination template function and the return direction determination template function.
  • the route on the way does not necessarily need to pass through the work points P2, P3, etc., as in the provisional route 102 in FIG.
  • the method of the movement operation can be selected, and a movement in which the movement time is the shortest, or a movement in which the movement trajectory of the end effector 22 is linear can be selected.
  • the moving direction change amount and the moving amount of the end effector 22 and the tool coordinate data of the end effector 22 are recorded every predetermined minute time. Also, record the total travel time d-time required for this temporary movement.
  • steps S507 and S508 are the same processing as steps S307 and S308, and the distance ratio rat-dist [j] is obtained.
  • step S509 a value obtained by apportioning the total movement time d—time by the distance ratio rat—dist [j], that is, apportionment time dd—time [j] is obtained. That is, dd—time [j] —d—time X rat—dist [j].
  • step S510 data of a time corresponding to the apportioning time dd-time [j] is extracted from the data on the end effector 22 recorded in step S506.
  • the tool coordinate data (xj, yj, zj, rxj, ryj, rzj) of the extracted data force end effector 22 is further extracted as the second temporary posture of the end effector 22.
  • This second temporary posture is conceptually represented as vectors Val, Va2, Va3, Va4 ... in Fig. 19.
  • step S511 rzj is selected and substituted as correction data D [j] for correcting the first temporary posture.
  • step S512 the correction data D [j
  • step S507 the processing of the subroutine shown in FIGS. 17 and 18 is ended, and the routine goes to step S7 (see FIG. 7).
  • the third creation method for creating teaching data of the articulated robot 12 is to temporarily move the end effector 22 along the tentative route 102 and then move the work point P 1 — Determine the apportionment time d d_time [j] by applying the distance ratio of Pe to the total travel time d_time of the tentative route 102, and derive the direction of the end-effector 22 at the corresponding location as vectors Val, Va2, Va3 ... It becomes. By moving these vectors Val, Va2, Va3... To the corresponding processing target work points, the vectors V bl, Vb2, Vb3, Vb4.
  • the temporary movement between the first work point P1 and the final work point Pe is simulated, and the temporary movement is performed.
  • the tool coordinate data of the end effector 22 at each processing point to be processed is set based on the posture of the end effector 22 recorded at the time. Therefore, by making the simulated temporary movement smooth and / or by setting the movement to be a short-time movement, the mutual attitude change of the end effector 22 between each working point P1 and Pe also becomes smooth, As a result, the movement between the work points P1 and Pe can be performed smoothly and in a short time.
  • the end effector 22 can immediately evacuate from the place, and can perform the entire operation including the moving time after the work in a short time.
  • an apportioning time dd-time [j] obtained by apportioning the total travel time d—time passing through the tentative route 102 by the distance ratio rat_dist [j] is calculated and processed.
  • the processing may be performed based on a point obtained by proportionally dividing the total distance of the temporary route 102 by the distance ratio rat_dist [j].
  • the distance ratio rat_dist [j] is obtained by calculating the distance ratio rat_dist [j] when the arrangement of the working points P1, P2, and Pe is substantially equally spaced. ] May be omitted and the division may be made equally.
  • second teaching data 160 for vehicle 202 as another work is set using first teaching data 150 for vehicle 200 as an existing work.
  • a method for using existing data will be described.
  • the schematic operation of the articulated robot 12 when the existing data utilization method is applied and its teaching data will be described.
  • the workpieces to be welded by the articulated robot 12 are a sedan-type vehicle (first work) 200 shown in FIG. 20 and a wagon-type vehicle (second work) 202 shown in FIG.
  • first work first work
  • second work second work
  • welding is performed at seven working points P1 to P7 in order with the work origin P0 as a start point and an end point.
  • a temporary working point T01 indicating a posture that makes it easy to reach the working point P1.
  • a temporary working point T02 indicating a posture that makes it easy to remove the end effector 22 is passed.
  • it passes through the temporary work point T03 so that it is easy to return from the temporary work point T02 to the work origin P0.
  • the first teaching data 150 indicating the operation of the articulated robot 12 with respect to the sedan-type vehicle 200 includes, as shown in FIG. 22, an “end effector direction” column, a “TCP position” column, and an “entry direction”. Column and "Each axis angle” column.
  • the “end effector orientation” column is coordinates indicating the attitude of the end effector 22, that is, tool coordinate data, and the above-described vectors Xr, Yr, and Zr are recorded.
  • TCP position data indicating the absolute coordinates of the end effector 22 is recorded.
  • vector data indicating the direction of entry and extraction of the end efeta 22 with respect to each work point is recorded.
  • the first teaching data 150 is conceptually represented as a route including seven working points P1 to P7, as shown in FIG.
  • the rotation angle # 4 corresponding to the car 4 is provided with a "rotation" column indicating the number of rotation eyes.
  • the first teaching data 150 data that prevents the cable from being twisted and records so that the trees 4 and 6 are not excessively rotated between the work points are recorded. Have been.
  • the first teaching data 150 is existing data and has been actually applied to the sedan type vehicle 200.
  • the articulated robot 12 also performs welding work on a wagon-type vehicle 202 (see FIG. 21).
  • the second teaching data 160 is conceptually represented as a route including nine work points Q1 to Q9, as shown in FIG. [0141]
  • the work performed by the articulated robot 12 on the vehicle 202, that is, the work indicated by the second teaching data 160 to be created is as follows.
  • welding is sequentially performed on nine working points Q1 to Q9 with the work origin P0 as a start point and an end point.
  • a temporary working point T11 showing a posture that makes it easy to reach the working point Q1.
  • a temporary work point T12 indicating a posture that makes it easy to remove the end effector 22 is passed.
  • a temporary work point is provided between each work point through which the end effector 22 enters and withdraws from each work point.
  • the nine work points Q1 to Q9 are different in position and number from the above work points P1 to P7, but are common in that they are work points for the door frame. It is also common that welding is performed in order from the bottom to the top.
  • the second teaching data 160 includes the data of the vector Zr among the data of the "TCP position” column corresponding to the nine working points Q1 to Q9 and the data of the vector Zr of the data of the "end effector direction” column. Are set in advance at the design stage. In other words, the second teaching data 160 can be obtained by setting the data indicating the vector Xr and the vector Yr in the “end effector direction” column, the data in the “entry direction” column, and the data in the “each axis angle” column. Good.
  • the first teaching data 150 and the second teaching data 160 have basically the same structure as that of the past Steven No. 100 (see FIG. 6).
  • the force indicating the coordinate values of the three orthogonal axes is shown in FIG. 22 showing the first teaching data 150 and FIG. 24 showing the second teaching data.
  • the data in the "Position” column is simply shown as A0, A2 ... for convenience.
  • P0-P7 in the first-third creation method for smoothly operating the articulated robot 12 and shortening the operation time and P0-P7 in the existing data use method are not necessarily the same data. Is also good.
  • the teaching data creation program 56 is read from the hard disk 36 and loaded into the teaching data creation circuit 42.
  • the shape data of the articulated robot 12, work objects and other equipment The data 58 and the robot specification data 60 such as the maximum speed, the maximum acceleration and the movable range of each axis of the articulated robot 12 are read from the hard disk 36.
  • the drawing control circuit 48 draws an image of the articulated robot 12, a workpiece to be welded, equipment including a jig, etc. on the display 46 based on the shape data 58.
  • step S601 the teaching data creation circuit 42 reads out the first teaching data 150, and uses the first teaching data 150 as the data of the ingress portion, the data of the welding portion, and Decompose into end data.
  • the entry part data is data indicating a path from the work origin P0 to the first work point P1
  • the welded part data is a path from the first work point P1 to the last work point P7.
  • the end part data is data indicating a route from the last work point P7 to the work origin P0. Therefore, in the example shown in FIG. 22, the data of the entry portion is in the order of “1” and “2”, the data of the welded portion is in the order of “2” and “8”, and the data of the end portion is in the order of The number is "8" and the order is "10".
  • step S602 of the welding portion data in the first teaching data 150 data in the "end effector direction” column is copied to the "end effector direction” column in the second teaching data 160 to perform rotation conversion. I do.
  • the vectors XP1, YP1, and ZP1 of the first teaching data 150 are moved in parallel with Bl indicating the position of the work point Q1. Then, the vector ZP1 is rotationally converted to match the preset vector ZQ1. At this time, the vectors XP1 and YP1 are also converted into vector vectors XQ1 and YQ1 by similarly performing rotation conversion. Similarly, the vector C1 indicating the approach direction is rotationally converted to obtain the vector D1. Similarly, for work point Q2 and Q7, the data of work point P2 and P7 are copied and rotationally converted.
  • step S603 the data of the “rotation” column of the data of the welded portion in the first teaching data 150 is copied.
  • the cable of the articulated robot 12 is prevented from being twisted, and the LJ4 and the fear 6 are prevented from excessively rotating between the work points. it can.
  • step S604 the data in the "End eclector orientation" column, "TCP Based on the data in the “placement” column, the angle of each car 11 J6 of the articulated robot 12 is calculated by an inverse transformation process using a determinant. By this processing, a plurality of postures of the articulated robot 12 may be obtained.
  • step S605 one posture that matches the data in the “rotation” column is selected from the plurality of postures of the articulated robot 12.
  • the working point QI ⁇ ⁇ 311, ⁇ Q21, ⁇ Q31, ⁇ Q41, ⁇ Q51, and ⁇ Q61, which are angles corresponding to ⁇ 1 ⁇ 6, are obtained. Record in each column of ⁇ 1 — ⁇ 6.
  • step S606 the number of working points ⁇ of the first teaching data 150 is compared with the number of working points Qn of the second teaching data 160.
  • the working point P1 of the first teaching data 150 and the number of working points Q1—Q9 of the second teaching data 160 from the number Pn (7 points) of P7 (7 points) If it is larger, the process moves to step S607.
  • the process proceeds to step S608.
  • step S607 that is, when the number Qn of working points of the second teaching data is larger than the number Pn of working points of the first teaching data 150, the data of the working point corresponding to the difference is determined by a predetermined method.
  • a predetermined method for this procedure, for example, the method described in the above-mentioned JP-A-2003-117864 may be used.
  • step S608 data of the end part is created based on the tool coordinate data of the last work point (for example, work point Q9) (see Fig. 28).
  • the data of the end portion is preferably a portion where the end effector 22 can be easily pulled out and the moving time can be set short after the welding process at the last working point is completed.
  • a part of the data at the end of the first teaching data 150 may be used as it is as the data at the end of the second teaching data 160.
  • the tenth data TO 3 of the first teaching data 150 is used as the twelfth data T03 of the second teaching data 160 (see FIG. 24).
  • step S609 based on the tool coordinate data of the first working point P1, data of the entry section, that is, a temporary working point T11 is created (see Fig. 28).
  • the data for this approach It is preferable that the data be set so that the end effector 22 can enter the first working point PI as soon as possible and the movement time can be set short. Further, a part of the data of the entrance portion in the first teaching data 150 may be used as it is as the data of the entrance portion of the second teaching data 160.
  • the second teaching data 160 By creating the second teaching data 160 in this manner, even if the new work vehicle 202 has a different shape from the existing work vehicle 200, the first teaching data 160 By effectively using the teaching data 150, the second teaching data 160 can be efficiently created.
  • the articulated robot 12 determines the vehicle 202 based on the second teaching data 160.
  • the connected cables are not twisted and the wheels 4 and 6 are not unnecessarily excessively rotated between the adjacent working points.
  • D1 to D7 which are data in the "entry direction” column indicating the approach direction and the withdrawal direction with respect to the work points Q1 to Q7, are in the "enter direction” column of the work point P1 to # 7 in the first teaching data 150. It can be easily set based on the data C1-C7.
  • the created second teaching data 160 is recorded on the external recording medium 38 via the recording medium drive 40 after the operation is confirmed by the simulation circuit 44. Next, the teaching data recorded on the external recording medium 38 is downloaded to the robot control unit 24 and used for controlling the articulated robot 12.
  • the force described in the example of creating the second teaching data 160 which is data for the door frame of the vehicle 202 is actually, as shown in Figs. 29 and 30, Vehicles 200 and 202 are provided with jigs 170 and the like, and may require more complicated teaching.
  • the jig corresponding first teaching data 180 applied to the vehicle 200 can be used as the jig corresponding second teaching data 190 applied to the vehicle 202. That is, the teaching data in the area 172 of the jig-compatible first teaching data 180 that crosses the vehicle 200 slightly diagonally, and the tee of the substantially similar area 174 in the vehicle 202 in the jig-compatible second teaching data 190 are used. This can be applied to the ringing data.
  • the vehicle 200 moves vertically.
  • the teaching data in the area 176 to be used can be applied to the teaching data in the substantially similar area 178.
  • the procedure of using the storage unit such as the RAM 32 can take various forms.
  • the tool coordinate data of the first teaching data 150, 180 may be rotated and converted in the storage area and rewritten before being moved to the storage area of the second teaching data 160, 190, or conversely, the second teaching data After the data 160 and 190 are moved to the storage area, the rotation may be converted.
  • the tool coordinate data of the first teaching data 150, 180 may be copied to a predetermined buffer area, and may be moved to the storage area of the second teaching data 160, 190 after rotation conversion in the buffer area.

Abstract

 複数の作業点に対して、エンドエフェクタの第1の仮姿勢を設定する(ステップS3)。複数の作業点のうち一端の第1作業点における多関節ロボットの姿勢を求める(ステップS4)。複数の作業点のうち他端の最終作業点における多関節ロボットの姿勢を求める(ステップS5)。第1作業点から最終作業点に向かって、エンドエフェクタの姿勢が次第に変化するように、他の各作業点に対して、それぞれエンドエフェクタの第2の仮姿勢を設定する(ステップS6)。第1の仮姿勢を第2の仮姿勢で補正する(ステップS7)。

Description

多関節ロボ: -タ作成方法 技術分野
[0001] 本発明は、エンドェフエクタを備え、連続する複数の作業点に対して前記エンドェ フエクタによって順次作業を行う多関節ロボットのティーチングデータ作成方法に関 する。
背景技術
[0002] 製造ラインに設置された多関節ロボットを直接操作させて作業姿勢のティーチング 田
を行おうとすると、多関節ロボットの操作を熟知したオペレータが製造ラインの現場で 作業を行わなければならない。そのため、作業時間が限られ作業が非効率となって しまう。また、このような作業は、製造ラインを停止させた状態で行う必要があるため、 製造ラインの稼働率も低下してしまう。
[0003] 近時、ティーチング作業の効率化を図るため、あるいは、製造ラインの稼働率を向 上させるために、オフラインによるティーチング (オフラインティーチング)が行われて いる。すなわち、コンピュータ上に多関節ロボット並びに作業対象物であるワーク及 び周辺構造物のモデルを構築し、このモデルを用いてティーチングデータを作成し た後、前記ティーチングデータを現場の多関節ロボットに供給することにより、製造ラ インを停止させることなぐティーチングデータを効率的に作成することが可能となる。
[0004] また、製造ラインでは、生産性の向上が要求されており、この要求に応じるためには 、多関節ロボットによるサイクルタイムの短縮が検討される。このような背景から、作業 順の各作業点での多関節ロボットの姿勢を計算し、短い移動時間で、しかもエンドェ フエクタの姿勢偏差が小さくなるように多関節ロボットの姿勢を選択した後、逆作業方 向による最終作業点での多関節ロボットの姿勢を計算し、この多関節ロボットの姿勢 を作業順方向に求めた最終作業点の多関節ロボットの姿勢と比較して修正する技術 が提案されている(例えば、特開 2003-94363号公報(日本国)参照)。この技術で は、多関節ロボットによる作業のサイクルタイムを短縮して、生産性を向上させること ができて好適である。 [0005] また、多関節ロボットのティーチングデータを作成する際に、ワークに対するェ: ェフエクタの挿入経路や姿勢を自動的に設定する方法が提案されている(例えば、 特開 2002-239955号公報、特開 2002—239957号公報(曰本国)参照)。
[0006] ところで、前記特開 2003— 94363号公報で開示されている方法では、エンドエフヱ クタの姿勢偏差を小さくすることを主な目的としてティーチングデータを設定している ため、エンドェフエクタの作業点間の動作経路の滑ら力、さが損なわれることがある。ま た、連続する複数の作業点に対してエンドェフエクタによって順次作業を行う際、ェ ンドエフエクタを最初の作業点に進入させるための時間と、最後の作業点から抜き取 るための時間については十分に考慮されていなレ、。その結果、全体としてのサイクル タイムが長くなることがあり、オペレータが試行錯誤的に再度修正を行う場合がある。
[0007] 一方、ティーチングデータは、ワークに対する多関節ロボットの作業点及び作業順 を設定し、各作業点におけるロボット姿勢を求め、次いで、各作業点でのワークに対 する作業内容を作業属性として設定するとともに、作業点間の動作方法を動作属性 として設定することで作成される。作業点におけるロボット姿勢のデータとしては、先 端部に設けられたエンドェフエクタの姿勢を示すツール座標データが含まれているこ とがある。
[0008] オフラインティーチングによれば、製造ラインを停止させる必要がなレ、が、非効率に 行うとティーチング用のコンピュータを長時間使用する必要が生じ、ティーチング作業 を行うオペレータにも負担が大きい。また、多関節ロボットは、所定の搬送ラインの近 傍に設けられており、例えば、該搬送ラインで搬送される車両に対して溶接作業を行 うが、搬送される車両の種類は 1種類とは限らない。多関節ロボットが対応すべき車 種が変更されるときには、新たにティーチングデータを作成することになる。
[0009] この場合、既存のティーチングデータがあって、このうち新たな作業点の姿勢として 優先的に使用可能なデータが存在するときにはそのデータを活用する技術が提案さ れている(例えば、特開 2003—117864号公報(日本国)参照)。この技術によれば、 既存のティーチングデータを利用して新規のティーチングデータを作成することがで きて好適である。
[0010] ところ力 前記特開 2003-117864号公報に開示されている技術では、既存のティ 一チングデータのうち、新規のティーチングデータに利用可能な部分は限られており
、ワークの形状が変わった場合には利用できないこともある。このような背景から、既 存のティーチングデータをさらに有効に利用する方法が望まれている。
特許文献 1 :特開 2003 - 94363号公報
特許文献 2:特開 2002 - 239955号公報
特許文献 3:特開 2002 - 239957号公報
特許文献 4 :特開 2003— 117684号公報
発明の開示
発明が解決しょうとする課題
[0011] 本発明は、連続する複数の作業点に対してエンドェフエクタによって順次作業を行 う際、多関節ロボットをスムーズに動作させて、全体としての動作時間を短縮させるこ とを可能にする多関節ロボットのティーチングデータ作成方法を提供することを目的 とする。
[0012] また、本発明の他の目的は、既存のワークに対する既存のティーチングデータを有 効に利用し、別のワークに対するティーチングデータを効率的に作成することを可能 にする多関節ロボットのティーチングデータ作成方法を提供することである。
課題を解決するための手段
[0013] 本発明に係る多関節ロボットのティーチングデータ作成方法は、エンドェフエクタを 備え、連続する複数の作業点に対して前記エンドェフエクタによって順次作業を行う 多関節ロボットのティーチングデータ作成方法にぉレ、て、前記複数の作業点に対し て、前記エンドェフエクタの第 1の仮姿勢を設定する第 1ステップと、前記複数の作業 点のうち一端の第 1作業点における前記多関節ロボットの姿勢を求める第 2ステップ と、前記複数の作業点のうち他端の最終作業点における前記多関節ロボットの姿勢 を求める第 3ステップと、前記第 2ステップで求めた前記多関節ロボットのエンドエフヱ クタの姿勢から、前記第 3ステップで求めた前記多関節ロボットのエンドエフヱクタの 姿勢に次第に変化するように、他の各作業点に対して、それぞれ前記エンドエフエタ タの第 2の仮姿勢を設定する第 4ステップと、前記第 1の仮姿勢を前記第 2の仮姿勢 で補正して、各作業点における前記エンドェフエクタの姿勢を設定する第 5ステップと 、を有することを特徴とする。
[0014] このようにすることにより、連続する複数の作業点に対してエンドエフヱクタによって 順次作業を行う際、多関節ロボットをスムーズに動作させて、動作時間を短縮させる こと力 Sできる。
[0015] この場合、前記第 2ステップでは、前記第 1作業点に対して、該第 1作業点の前段 階の教示点力 最短時間で到達するように、前記第 1作業点における前記多関節口 ボットの姿勢を求めるとよい。
[0016] これにより、エンドェフエクタは、第 1作業点に速やかに移動することができ、作業開 始前の移動時間も含めた動作を短時間で行うことができる。
[0017] また、前記第 3ステップでは、前記最終作業点に対して、該最終作業点の後段階の 教示点に最短時間で到達するように、前記最終作業点における前記多関節ロボット の姿勢を求めてもよい。
[0018] これにより、最終作業点での作業終了後、エンドエフヱクタは、その場から速やかに 退避することができ、作業終了後の移動時間も含めた動作を短時間で行うことができ る。
[0019] また、前記第 4ステップでは、前記第 2ステップ及び前記第 3ステップで求めた多関 節ロボットのエンドエフヱクタの各姿勢の差を求める第 1サブステップと、前記第 1作 業点から前記最終作業点までの全経路距離に対する各作業点の前記第 1作業点か らの距離比(距離配分比)により、前記第 2ステップ及び前記第 3ステップで求めた多 関節ロボットのエンドェフエクタの各姿勢を按分 (配分)した、第 2の仮姿勢を設定す る第 2サブステップと、を有するようにしてもよレ、。
[0020] さらに、前記第 4ステップでは、前記第 2ステップ及び前記第 3ステップで求めた多 関節ロボットの各姿勢の差を求める第 1サブステップと、前記第 1作業点から前記最 終作業点までの全経路距離に対する各作業点の前記第 1作業点からの距離比によ り、前記第 2ステップ及び前記第 3ステップで求めた多関節ロボットの各姿勢を按分し た按分姿勢を求める第 2サブステップと、該按分姿勢における前記エンドエフヱクタ の姿勢を第 2の仮姿勢として求める第 3サブステップと、を有するようにしてもよい。
[0021] さらにまた、前記第 4ステップでは、前記第 1作業点及び前記最終作業点における 前記エンドエフヱクタの姿勢が前記第 1ステップ及び前記第 2ステップで求めた姿勢 となることを条件として、前記エンドェフエクタを前記第 1作業点から前記最終作業点 まで模擬的に移動させながら、所定時間毎に前記エンドェフエクタの姿勢を記録する 第 1サブステップと、前記第 1作業点から前記最終作業点までの全経路距離に対す る各作業点の前記第 1作業点からの距離比に基づいて、前記第 1サブステップで記 録した前記エンドエフェクタの姿勢のうち、移動時間の比が対応する姿勢を第 2の仮 姿勢として選択する第 2サブステップと、を有するようにしてもょレ、。
[0022] 前記第 1サブステップで前記エンドェフエクタを模擬的に移動させる際、前記第 1作 業点から前記最終作業点までの移動時間が最短となるように移動させるようにしても よい。
[0023] 前記第 1サブステップで前記エンドェフエクタを模擬的に移動させる際、前記第 1作 業点から前記最終作業点まで、前記エンドェフエクタを直線状に移動させるようにし てもよい。
[0024] このように、移動時間が最短となるように、又は、直線状となるように仮移動させてデ ータを記録し、第 2の仮姿勢を求めることにより、結果として、第 1作業点から最終作 業点へのエンドェフエクタの移動を滑らかにすることができる。
[0025] 前記第 5ステップでは、前記第 1の仮姿勢を構成する複数のパラメータのうち、少な くとも 1つを前記第 2の仮姿勢のパラメータで置き換えるようにしてもよい。
[0026] 前記第 1ステップでは、前記第 1の仮姿勢を前記エンドェフエクタの作業部がワーク に対して面直となるように設定し、前記第 5ステップでは、前記作業部が前記ワークに 対して面直な状態を保つように前記第 1の仮姿勢を補正してもよレ、。
[0027] また、本発明に係る多関節ロボットのティーチングデータ作成方法は、第 1ワークに おける複数の作業点に対応する多関節ロボットの第 1ティーチングデータを、第 2ヮ ークにおける複数の作業点に対応する前記多関節ロボットの第 2ティーチングデータ に変換するための多関節ロボットのティーチングデータ作成方法において、前記第 1 ティーチングデータ及び前記第 2ティーチングデータは、前記作業点における前記 多関節ロボットに設けたエンドェフエクタの姿勢を示すツール座標データを含み、該 ツール座標データは複数のパラメータからなり、予め前記第 2ティーチングデータの ツール座標データのパラメータの 1つが設定され、該パラメータが一致するように前 記第 1ティーチングデータのツール座標データを変換して、前記第 2ティーチングデ ータのツール座標データとするステップを複数の前記作業点に対して行うことを特徴 とする。
[0028] このように、第 1ティーチングデータの作業点におけるツール座標データを第 2ティ 一チングデータに変換して複写することにより、第 1ティーチングデータを有効に利用 し、第 2ティーチングデータを効率的に作成することができる。
[0029] 第 1ティーチングデータのツール座標データを変換して第 2ティーチングデータのッ ール座標データとする際には、第 ;Lティーチングデータのツール座標データを、その 記憶領域において変換して書き換えた後に第 2ティーチングデータの記憶領域に移 してもょレ、し、第 2ティーチングデータの記憶領域に移した後に変換してもよい。また 、第 1ティーチングデータのツール座標データを所定のバッファ領域に移し、該バッフ ァ領域において変換した後に第 2ティーチングデータの記憶領域に移してもよい。
[0030] この場合、前記第 1ティーチングデータ及び前記第 2ティーチングデータは、前記 作業点に対する進入方向データを含み、前記作業点毎に前記進入方向データを複 写してもよい。
[0031] また、前記第 1ティーチングデータ及び前記第 2ティーチングデータは、前記作業 点毎に、少なくとも 1つの関節の回転角に関する回転情報を含み、前記作業点毎に 前記回転情報を複写してもよい。これにより、多関節ロボットのケーブルが捻れること を防ぐとともに、各作業点間において、対応する軸が過大に回転することを防止する こと力 Sできる。
[0032] さらに、前記第 2ティーチングデータは、前記作業点のうち、最初の作業点に到達 する 1つ前の仮の点を示す第 1仮作業点データと、最後の作業点の後に経由する仮 の点を示す第 2仮作業点データとを含み、前記第 1仮作業点データを前記最初の作 業点のツール座標データに基づいて設定し、前記第 2仮作業点データを前記最後 の作業点のツール座標データに基づいて設定してもよい。
図面の簡単な説明
[0033] [図 1]図 1は、本実施形態のオフラインティーチング装置及び多関節ロボットの概略構 成図である。
[図 2]図 2は、エンドェフエクタ、 TCPのツール座標を示す模式斜視図である。
[図 3]図 3は、本実施形態のオフラインティーチング装置の回路構成図である。
[図 4]図 4は、ティーチングデータ作成回路の概略構成を示すブロック図である。
[図 5]図 5は、作業原点及び作業点の位置関係を示す模式図である。
[図 6]図 6は、パステーブルの内容を示す図である。
[図 7]図 7は、多関節ロボットをスムーズに動作させて動作時間を短縮させるためのテ ィーチングデータ作成方法の手順を示すフローチャートである。
[図 8]図 8は、ワークに対するエンドエフヱクタの第 1の仮姿勢を示す模式図である。
[図 9]図 9は、ワークに対するエンドエフヱクタの第 2の仮姿勢を示す模式図である。
[図 10]図 10は、第 1の仮姿勢を第 2の仮姿勢で補正した後のワークに対するエンドェ フヱクタの姿勢を示す模式図である。
[図 11]図 11は、進入方向決定テンプレート機能の手順を示すフローチャートである。
[図 12]図 12は、戻り方向決定テンプレート機能の手順を示すフローチャートである。
[図 13]図 13は、第 1作成方法におけるエンドェフエクタの第 2の仮姿勢を求める手順 を示すフローチャート(その 1)である。
[図 14]図 14は、第 1の方法におけるエンドェフエクタの第 2の仮姿勢を求める手順を 示すフローチャート(その 2)である。
[図 15]図 15は、第 2作成方法におけるエンドェフエクタの第 2の仮姿勢を求める手順 を示すフローチャート(その 1)である。
[図 16]図 16は、第 2作成方法におけるエンドエフヱクタの第 2の仮姿勢を求める手順 を示すフローチャート(その 2)である。
[図 17]図 17は、第 3作成方法におけるエンドェフエクタの第 2の仮姿勢を求める手順 を示すフローチャート(その 1)である。
[図 18]図 18は、第 3作成方法におけるエンドエフヱクタの第 2の仮姿勢を求める手順 を示すフローチャート(その 2)である。
[図 19]図 19は、第 3作成方法における仮移動の経路と、作業点との位置関係を示す 模式図である。 [図 20]図 20は、既存のワークに対する多関節ロボットの動作を示す第 1ティーチング データによる作業経路を示す模式側面図である。
[図 21]図 21は、別のワークに対する多関節ロボットの動作を示す第 2ティーチングデ ータによる作業経路を示す模式側面図である。
[図 22]図 22は、第 1ティーチングデータの内容を示す図である。
[図 23]図 23は、回転情報と回転角との対応を示す模式図である。
[図 24]図 24は、第 2ティーチングデータの内容を示す図である。
[図 25]図 25は、既存のワークに対するティーチングデータを利用して別のワークにお けるティーチングデータを設定するためのティーチングデータ作成方法の手順を示 すフローチャートである。
[図 26]図 26は、第 1ティーチングデータから第 2ティーチングデータへ溶接部のデー タを複写して変換する様子を示す模式斜視図である。
[図 27]図 27は、差分の作業点のデータを補完する様子を示す模式側面図である。
[図 28]図 28は、進入部及び終了部のデータを作成する様子を示す模式側面図であ る。
[図 29]図 29は、治具が設けられた既存のワークに対する多関節ロボットの動作を示 す第 1ティーチングデータによる作業経路を示す模式側面図である。
[図 30]図 30は、治具が設けられた別のワークに対する多関節ロボットの動作を示す 第 2ティーチングデータによる作業経路を示す模式側面図である。
発明を実施するための最良の形態
[0034] 図 1は、本実施の形態の多関節ロボットのティーチングデータ作成方法が適用され るオフラインティーチング装置 10と、このオフラインティーチング装置 10によって作成 されたティーチングデータが適用される多関節ロボット 12の構成を示す。
[0035] 多関節ロボット 12は、産業用の多関節型のロボットであり、ベース部 14と、該ベース 部 14を基準にして順に、第 1アーム 16、第 2アーム 18及び第 3アーム 20とを有し、該 第 3アーム 20の先端に溶接ガンであるエンドェフエクタ 22が設けられている。エンド ェフエクタ 22は、第 3アーム 20に対して着脱自在である。第 1アーム 16はベース部 1 4に対して水平及び垂直に回動可能な車 ftU、J2によって回動可能である。第 2アーム 18は第 1アーム 16と樹 3で回動可能に連結されている。第 2アーム 18は樹 4によつ て捻れ回転が可能になっている。第 3アーム 20は第 2アーム 18と樹 5で回動可能に 連結されている。第 3アーム 20は樹 6によって捻れ回転が可能になっている。樹 4 及び車 ft[6はそれぞれ 360° 以上の捻れ回動が可能である。
[0036] 図 2に示すように、エンドエフヱクタ 22は C形溶接ガンであり、ヨーク 22aの両端部に は、開閉する一対の電極(作業部) 22b、 22cを有する。この電極 22b、 22cは閉状態 では溶接作業点(以下、 TCP (Tool Center Point)という。 )でワーク Wに接触する。
[0037] TCP力、ら本体側の電極 22b、 22cの軸心に一致する方向をベクトル Zrとし、ベタト ル Zrに直交しエンドエフヱクタ 22の外側に向く方向をベクトル Xrとする。また、ベタト ノレ Xr、ベクトル Zrに互いに直交する方向をベクトル Yrとする。
[0038] 例えば、電極 22b、 22cがワーク Wに対して面直に設定されているときに、ベクトル Zrの値のみを変更すると、エンドェフエクタ 22の姿勢は、図 2における二点鎖線で示 すように、ワーク Wに対する面直な状態を保ったままヨーク 22aを回転させた位置に 移る。
[0039] TCPの位置は、所定の原点〇からの絶対座標として、直交する座標値 X、 Y、 Ζの 3 つのパラメータで表される。
[0040] 車 ftU— J6の駆動機構並びに電極 22b、 22cの開閉機構は、それぞれ図示しないァ クチユエータにより駆動され、 TCPは樹 1一 J6のそれぞれの回転角 θ 1— Θ 6の値 及び多関節ロボット 12の各部寸法により決定される。
[0041] 多関節ロボット 12は、ロボット制御部 24に設定されたティーチングデータに従って 動作する。多関節ロボット 12及びロボット制御部 24は、車両 200、 202 (図 20、図 21 参照)を製造する現場の製造ラインに配設されており、多関節ロボット 12の動作によ つて、先端部に接続されたエンドエフヱクタ 22は車両 200、 202の近傍における任意 の位置に移動可能であって、且つ、任意の向きに設定可能である。換言すれば、ェ ンドエフヱクタ 22は 6自由度の移動が可能である。多関節ロボット 12は、回転動作以 外にも伸縮動作、平行リンク動作等の動作部を有するものであってもよい。
[0042] オフラインティーチング装置 10は、コンピュータによって構成されるものであり、図 3 に示すように、制御部 26は、オフラインティーチング装置 10の全体の制御を行う CP U28と、記録部である ROM30及び RAM32と、ハードディスクドライブ 34によってデ ータが読み書きされるハードディスク 36と、フレキシブルディスクやコンパクトディスク 等の外部記録媒体 38に対してティーチングデータ等の読み書きを行う記録媒体ドラ イブ 40と、多関節ロボット 12のティーチングデータを作成するティーチングデータ作 成回路 42と、作成されたティーチングデータに基づいて多関節ロボット 12の動作シミ ユレーシヨンを行うシミュレーション回路 44とを備える。なお、制御部 26には、ティー チングデータ作成作業の補助、シミュレーション画像の表示等を行うためのディスプ レイ 46が描画制御回路 48を介して接続されるとともに、インタフェース 50を介して入 力装置としてのキーボード 52及びマウス 54が接続される。
[0043] ハードディスク 36には、多関節ロボット 12のティーチングデータを作成するための ティーチングデータ作成プログラム 56と、多関節ロボット 12、作業対象物及びその他 の設備に係る形状データ 58と、多関節ロボット 12の各軸の動作仕様を含むロボット 仕様データ 60とが記録されている。
[0044] 図 4に示すように、ティーチングデータ作成回路 42は、多関節ロボット 12の動作計 画を設定するロボット動作計画部 42aと、多関節ロボット 12を模擬的に動作させて、 その間の多関節ロボット 12の姿勢やエンドェフエクタ 22の姿勢等を記録するロボット 姿勢サンプリング記録部 42bと、多関節ロボット 12が作業を行う各作業点 Pl、 P2、… Pe (図 5参照)の距離配分比を求める移動量距離配分計算部 42cとを有する。また、 ティーチングデータ作成回路 42は、所定の経路を移動する際の移動時間を求める口 ボット移動時間計算部 42dと、多関節ロボット 12の姿勢を教示するロボット姿勢教示 部 42eと、ティーチングデータを記録するロボット教示データ記録部 42fとを有する。
[0045] 多関節ロボット 12は、図 5に示す作業点 Pl、 P2、一Peに対して順番に作業を行う ものとする。これらの作業点 Pl、 P2、 . Peは、 TCPの位置を表し、直線状又は曲線 状に順に配置されている。このうち、一端の作業点 P1は、最初に作業を行う点であり 、第 1作業点とも呼ぶ。他端の作業点 Peは、最後に作業を行う点であり、最終作業点 とも呼ぶ。また、多関節ロボット 12は、作業開始前及び作業終了後は、作業原点 P0 に配置されるものとする。
[0046] 多関節ロボット 12のティーチングデータは、作業点 Pl、 P2、 ' Peにおける多関節 ロボット 12の姿勢及びエンドェフエクタ 22の姿勢が記録されたパステーブル 100 (図 6参照)に基づいて作成される。パステーブル 100は、書き換え可能なテーブルであ り、 RAM32等の記録部に記録されている。
[0047] 図 6に示すように、パステーブル 100は、ツール座標データを示す「TCPの位置」欄 、「エンドエフヱクタの向き」欄及び「各軸角度」欄から構成されている。「TCPの位置」 欄には、エンドエフヱクタ 22の絶対座標を示すデータ、つまり、 X、 Y、 Ζ値が記録さ れている。「エンドェフエクタの向き」欄は、エンドェフエクタ 22の姿勢を示す座標のベ タトル Xr、 Yr、 Zrが記録されている。以下、ツール座標データは、 6つのパラメータで 表されるものとし、 X、 Y、 Z、 Xr、 Yr及び Zrに相当する値の順に表記する。
[0048] 「各軸角度」欄は回転角 θ 1 Θ 6から構成されており、それぞれの回転角 θ 1— Θ
6は、各 ¾LJ1一 J6の回転角を示している。
[0049] なお、このパステーブル 100は、後述する第 1ティーチングデータ 150 (図 22参照) 及び第 2ティーチングデータ 160 (図 24参照)と基本的に同構造のテーブルであるが 、ここでは説明の便宜上、第 1ティーチングデータ 150及び第 2ティーチングデータ 1 60における「進入方向」欄及び「回転」欄を省略して図示している。
[0050] 次に、このように構成されるオフラインティーチング装置 10を用いて、多関節ロボッ ト 12をスムーズに動作させて動作時間を短縮させるためのティーチングデータ作成 方法と、既存のワークに対するティーチングデータを利用して別のワークにおけるティ 一チングデータを設定するためのティーチングデータ作成方法 (以下、既存データ 利用方法とも呼ぶ)について説明する。
[0051] これらの方法は、基本的に、 CPU28及びティーチングデータ作成回路 42 (図 3参 照)がティーチングデータ作成プログラム 56に基づいて実行されるものである力 一 部をオペレータが直接実行してもよレ、。
[0052] また、多関節ロボット 12の動きは、シミュレーション回路 44等の機能による仮想的な ものであって、実際に多関節ロボット 12を動作させる必要はない。
[0053] これらの方法のうち、先ず、多関節ロボット 12をスムーズに動作させて動作時間を 短縮させるための第 1一第 3作成方法のうち、第 1作成方法について図 7 図 14を参 照しながら説明する。 [0054] 図 7に示すように、多関節ロボット 12のティーチングデータを作成する第 1の方法で は、先ず、ステップ S1において、ハードディスク 36からティーチングデータ作成プロ グラム 56を読み込み、ティーチングデータ作成回路 42にロードする。次いで、多関 節ロボット 12、作業対象物及びその他の設備に係る形状データ 58と、ロボット仕様デ ータ 60である多関節ロボット 12に関する所定のデータをハードディスク 36から読み 込む。
[0055] 次に、ステップ S2において、エンドェフエクタ 22を作業原点 P0に配置したときの初 期姿勢である多関節ロボット 12のロボット姿勢を設定する。この初期姿勢は、近傍の 他の多関節ロボット 12の配置を考慮して設定される。
[0056] 次に、ステップ S3において、エンドエフヱクタ 22の各作業点 Pl、 P2、 の位置 と、そのツール姿勢を第 1の仮姿勢として設定する。この第 1の仮姿勢は、エンドエフ ヱクタ 22が C形溶接ガンである場合、通常、ワーク Wの面に対して電極 22b、 22cが 面直となるように設定する。
[0057] 第 1の仮姿勢として設定されるエンドエフヱクタ 22の姿勢は、具体的には、図 6のパ ステーブル 100における「エンドェフエクタの向き」欄のデータであるベクトル Xr、 Yr、 Zrと、「TCPの位置」欄のデータである座標値 X、 Y、 Ζである。パステーブル 100に おける「各軸角度」欄のデータは、この時点では空欄でよい。
[0058] 次に、ステップ S4において、ティーチングデータ作成回路 42によって進入方向決 定テンプレート機能を実行する。この進入方向決定テンプレート機能では、第 1作業 点 P1の前段階の教示点 (つまり、作業原点 Ρ0)から第 1作業点 P1に最短時間で到 達するように、第 1作業点 P1における多関節ロボット 12の姿勢を求める。
[0059] 次に、ステップ S5において、ティーチングデータ作成回路 42によって戻り方向決定 テンプレート機能を実行する。この戻り方向決定テンプレート機能では、最終作業点 Peから、該最終作業点 Peの後段階の教示点(つまり、作業原点 P0)に対して最短時 間で到達するように、最終作業点 Peにおける多関節ロボット 12の姿勢を求める。
[0060] 次に、ステップ S6において、ティーチングデータ作成回路 42は、進入方向決定テ ンプレート機能及び戻り方向決定テンプレート機能によって求めた多関節ロボット 12 の各姿勢に基づいて、第 1作業点 P1及び最終作業点 Peを除く他の作業点に対して エンドェフエクタ 22の第 2の仮姿勢を設定する。この第 2の仮姿勢は、第 1作業点 P1 から最終作業点 Peへ移動する間に、エンドェフエクタ 22が滑らかに移動可能な姿勢 として設定する。
[0061] なお、ステップ S4、 S5及び S6の処理はそれぞれサブルーチンとして処理されるも のであり、これらのサブルーチンの処理については後述する(図 11、 10、 11参照)。
[0062] 次に、ステップ S7において、第 1の仮姿勢を第 2の仮姿勢で補正して、各作業点に おける前記エンドエフヱクタ 22の姿勢を設定する。
[0063] このステップ S7の処理は、概略的に、第 1の仮姿勢で示されるエンドェフエクタ 22 の姿勢が図 8に示すようにワーク Wに対して面直な状態であって、第 2の仮姿勢で示 されるエンドエフヱクタ 22の姿勢が図 9に示すようにワーク Wに対して非面直で、且 つ、ワーク Wから見て第 1の仮姿勢とは異なる向きであるとき、ステップ S7における補 正は、図 8Cに示すように、ワーク Wに対する面直な状態を保ったまま、ワーク Wから 見て第 2の仮姿勢と同じ向きとなるように行えばよい。また、具体的には、パステープ ノレ 100における「エンドエフヱクタの向き」欄の Xr、 Yr、 Zrに相当する第 1の仮姿勢及 び第 2の仮姿勢のデータがそれぞれ、 Xra、 Yra、 Zra、及び Xrb、 Yrb、 Zrbで表され るとき、第 1の仮姿勢のデータのうち Zraを第 2の仮姿勢のデータの Zrbで置き換えれ ばよレ、。より具体的には、後述する処理によって Zrbに相当するデータ力 各処理対 象作業点毎に補正用データ D[j]として設定されることから、 Zr^D[j]として代入す ればよい。
[0064] このような補正により、エンドェフエクタ 22の電極 22b、 22cの向き力 ワーク Wに対 する面直な状態を保ったまま、電極 22b、 22cを中心として回転し、ワーク Wから見て 第 2の仮姿勢と同じ向きに設定される。
[0065] 次に、前記ステップ S4において実行される進入方向決定テンプレート機能につい て、図 11を参照しながら詳細に説明する。
[0066] ステップ S101において、最初の作業点である第 1作業点 P1のツール座標データ をパステーブル 100 (図 6)力、ら認識し、このツール座標データを Lociとする。
[0067] 次に、ステップ S102において、第 1作業点 P1の前段階の教示点を選択し、この点 におけるツール座標データを Loc2とする。以下の例では、この Loc2を作業原点 P0 とする。
[0068] 次に、ステップ S103において、多関節ロボット 12を Loc2で示される位置に移動さ せる。
[0069] 次に、ステップ S104において、多関節ロボット 12が Loc2から Lociへ移動できるか 否力、を確認する。移動が可能である場合には次のステップ S105へ移り、不可能であ ると判断される場合にはステップ S 110へ移る。
[0070] ステップ S105においては、多関節ロボット 12が Loc2から Lociへ移動するために 要する移動時間 Tmを求める。
[0071] 次に、ステップ S106において、バッファ時間 Tbが更新済みであるか否かを確認す る。バッファ時間 Tbは、初期状態で「0」に設定される変数であり、 Tb = 0、であれば 未更新であってステップ S108へ移り、 Tb≠0、であれば更新済みであってステップ S 107へ移る。
[0072] ステップ S107においては、バッファ時間 Tbと、その時点における移動時間 Tmとを 比較する。 Tb >Tmであるときにはステップ S108へ移り、 Tb≤Tmであるときにはス テツプ S 110へ移る。
[0073] ステップ S108においては、バッファ時間 Tbを移動時間 Tmで置き換えて更新する
[0074] 次に、ステップ S109においては、その時点におけるツール座標データ Lociと、多 関節ロボット 12の姿勢を Poselとして記録する。 Posel及び後述する Pose3等は、 θ 1一 Θ 6 (図 6参照)の 6つのパラメータで表される。
[0075] このように、バッファ時間 Tbと移動時間 Tmとを比較して、移動時間 Tmがバッファ 時間 Tbより小さいときには、バッファ時間 Tbを更新することにより、バッファ時間 Tbに は最短の移動時間が設定される。また、そのときの多関節ロボット 12の姿勢が Posel として記録される。
[0076] 次に、ステップ S110において、 Loc2から Lociに対して、他に到達可能な多関節 ロボット 12の姿勢があるか否力 ^検索する。他にも到達可能な姿勢がある場合には、 その姿勢を示すツール座標データを Loc 1として設定した後にステップ S 103に戻る 。他には到達可能な姿勢がない場合には、次のステップ S111へ移る。 [0077] ステップ Si l lにおいては、第 1作業点 PIにおいて、電極 22bをワーク Wに対して 面直に保った姿勢でエンドェフエクタ 22を回転させる処理にっレ、ての判断を行う。ェ ンドエフエクタ 22が所定の姿勢から 360° 回転済みである場合にはステップ S 113へ 移り、回転角度が 360° 未満であるときにはステップ S112へ移る。
[0078] このステップ S111の処理は、例えば、前記特許文献 3で開示されている動作範囲 表に基づいて、ワークとの干渉領域を考慮しながら行うとよい。
[0079] ステップ S112においては、電極 22bをワーク Wに対して面直に保ったままエンドェ フエクタ 22を所定の微小角度回転させたツール座標データを Lociとして再設定し、 ステップ S103へ戻って処理を続行する。エンドェフエクタ 22を回転させる処理は、具 体的には、ツール座標データの Lociのうち、ベクトル Zrのデータを所定量変更すれ ばよい(図 2参照)。
[0080] ステップ S113においては、前記ステップ S109で記録したツール座標データの Lo clと多関節ロボット 12の姿勢 Poselを第 1作業点 PIにおける正式な姿勢として記録 する。この時点で正式に決定されるツール座標データ Lociは、 6つのパラメータ xl、 yl、 zl、 rxl、 ryl、 rzlで表されるものとする。
[0081] このように進入方向決定テンプレート機能を実行することによって、作業原点 P0か ら第 1作業点 P1に対する最短時間の進入経路と、第 1作業点 P1における多関節口 ボット 12の姿勢及びエンドエフヱクタ 22の姿勢を取得することができる。進入方向決 定テンプレート機能により取得した第 1作業点 P1におけるエンドェフエクタ 22の姿勢 は、図 5においてベクトル VIで示す。
[0082] 次に、前記ステップ S5において実行される戻り方向決定テンプレート機能は、図 1 2に示す手順で行われる。この戻り方向決定テンプレート機能は、最終作業点である 作業点 Peから、後段階の教示点に対して最短時間で到達するように、作業点 Peに おける多関節ロボット 12の姿勢を求める処理であり、後段階の教示点としては、作業 原点 P0が選択される。この戻り方向決定テンプレート機能は、進入方向決定テンプ レート機能における第 1作業点 P1を最終作業点 Peに置き換えるとともに、動作方向 を逆にした処理であり、その他の基本的な処理は進入方向決定テンプレート機能と 同じであることから、戻り方向決定テンプレート機能の詳細な説明を省略する。この戻 り方向決定テンプレート機能によって、最終作業点 Peにおける多関節ロボット 12の 姿勢 Pose3と、エンドェフエクタ 22のツーノレ座標データの Loc3 (x3、 y3、 z3、 rx3、 r y3、 rz3)が決定される。また、最終作業点 Peから作業原点 POに対する最短時間の 戻り経路を取得することができる。戻り方向決定テンプレート機能で取得した最終作 業点 Peにおけるエンドェフエクタ 22の姿勢は、図 5においてベクトル Veで示す。
[0083] なお、進入方向決定テンプレート機能及び戻り方向決定テンプレート機能では、前 記特開 2002—239955号公報及び特開 2002—239957号公報で開示されている 技術を利用してもよい。
[0084] 次に、前記ステップ S6において、エンドェフエクタ 22の第 2の仮姿勢を設定する処 理について、図 13及び図 14を参照しながら説明する。
[0085] 先ず、ステップ S301において、パステーブル 100を所定の記録部にロードする。
[0086] 次に、ステップ S302において、前記ステップ S4において実行した進入方向決定テ ンプレート機能の処理結果であるツール座標データの Loci (xl、 yl、 zl、 rxl、 ryl 、 rzl)と、多関節ロボット 12の姿勢 Pose lをロードする。
[0087] 次に、ステップ S303において、前記ステップ S5において実行した戻り方向決定テ ンプレート機能の処理結果であるツール座標データの Loc3 (x3、 y3、 z3、 rx3、 ry3 、 rz3)と、多関節ロボット 12の姿勢 Pose3をロードする。
[0088] 次に、ステップ S304において、パステーブル 100に基づいて作業点 Pl、 P2、 P3、 — Peのツール座標データを取得する。また、作業点 Pl、 P2、 P3、一Peのうち、第 1 作業点 PI及び最終作業点 Peを除く処理対象作業点(つまり、 P2、 P3、 P4、 · · ·)の 個数を変数 nに記録するとともに、所定のカウンタ jを用レ、、処理対象作業点のツール 座標データをそれぞれ順番に loc_list [j]として記録する。取得した loc_list [j]は、 6つのパラメータ x[j]、 y[j]、 z [j]、 rx[j]、 ry[j]、 rz [j]として表される。このうち、 x [j] 、 y[j]及び z [j]は TCPの絶対座標を示し、 rx [j]、 ry[j]及び rz [j]はエンドエフヱクタ 22の向きを示す。
[0089] 次に、ステップ S305において、各作業点 P1 Pe間におけるそれぞれの距離を dd _dist [j] (j = l、 2、〜(n+ l) )として表し、これらの(n+ 1)個の dd_dist [j]を全て 加算した全経路距離 distを求める。このようにすることにより、各作業点 P1— Peが曲 線状に配置されている場合でも作業点間に沿った全経路距離 distを正しく求めるこ とができる。
[0090] 次に、ステップ S306において、エンドェフエクタ 22が Lociから Loc3に移動する際 のツール座標データの変化量 Loc A = (dx、 dy、 dz、 drx、 dry, drz)を求める。この 変ィ匕量 Loc Δは、 Loc Δ—Loc3— Lociとして求められる。
[0091] 以下、ステップ S307— S310におレヽては、カウンタ jを 1から nまでインクリメントしな 力 ¾処理対象作業点 loc_list [j]について順次、第 2の仮姿勢を求める。
[0092] ステップ S307において、 loc_list [j]と Lociとの距離 d_dist [j]を、 d_dist [j]— dd_dist [l] + dd_dist [2] +〜 + dd_dist [j]として求める(図 5参照)。
[0093] 次に、ステップ S308において、全経路距離 distに対する距離 d_dist [j]の距離比 rat_dist [j]を、 d_dist [j] Zdistとして求める。この距離比 rat_dist [j]は、作業点
P1— Peが曲線状に配列されている場合においても、曲線の長さの比を正確に表す こと力 Sできる。
[0094] 次に、ステップ S309において、 Lociと Loc3とを rat— dist [j]で按分したエンドェ フエクタ 22の第 2の仮姿勢を求める。この第 2の仮姿勢は、ツール座標データを示す 6つのパラメータ ddx[j]、 ddy[j]、 ddz [j]、 ddrx[j]、 ddry[j]及び ddrz [j]で表され、 次のように求められる。
[0095] ddx[j]— xl + dx X rat— dist [j]
ddy [j ] 1 + dy X rat— dist [j ]
ddz [j ] 1 + dz X rat― dist [j ]
ddrx [j ] ^rx 1 + drx X rat― dist [j]
ddry [j ] <— ry 1 + dry X rat― dist [j]
ddrz [j ] <— rz 1 + drz X rat― dist [j ]
[0096] これらの 6つのパラメータで表される第 2の仮姿勢を、図 5において、ベクトル Val、 Va2、■•■Va (n)として示す。これらのベクトル Val、 Va2、 . Va (n)は、距離比 rat_ dist [j]に応じ、ベクトル VIからベクトル Veまで次第に変化するように設定されること となる。
[0097] 次に、ステップ S310において、第 1の仮姿勢を補正するための補正用データ D [j] として ddrz[j]を選択、代入する。
[0098] ddx[j]、 ddy[j]、 ddz [j]、 ddrx[j]及び ddry[j]は、参考データとして記録しておく
[0099] 次に、ステップ S311において、全ての処理対象作業点について補正用データ D[j ]を設定したか否かを確認する。未処理の処理対象作業点があれば、カウンタ jを「十 1」インクリメントした後にステップ S307へ戻り、処理を続行する。全ての処理対象作 業点に対して処理が終了している場合には、図 13及び図 14に示すサブルーチンの 処理を終了し、前記ステップ S7 (図 7参照)へ移る。
[0100] 前記のとおり、ステップ S7では、第 1の仮姿勢のうちベクトル Zrの値を補正用データ D [j]で置き換えて、各処理対象作業点でのエンドエフヱクタ 22のツール座標データ が求められ、パステーブル 100 (図 6参照)の所定の欄に記録する。また、このツーノレ 座標データに基づいて、行列式を用いた逆変換操作等によって多関節ロボット 12の 姿勢、つまり θ 1— Θ 6を求めることができ、このデータをパステーブル 100の「各軸 角度」欄に記録する。
[0101] これにより多関節ロボット 12のティーチングデータが作成され、ティーチングデータ をハードディスク 36に記録した後、シミュレーション回路 44によって動作確認され、 記録媒体ドライブ 40を介して外部記録媒体 38に記録される。次いで、外部記録媒体 38に記録されたティーチングデータは、ロボット制御部 24にダウンロードされ、多関 節ロボット 12の制御に供される。
[0102] このように、多関節ロボット 12のティーチングデータを作成する第 1の方法によれば 、第 1作業点 P1と最終作業点 Peとの間の、各処理対象作業点におけるエンドェフエ クタ 22のツール座標データを、ベクトル VI、 Ve及び各作業点間の距離比 rat_dist [j]に基づいて作成するので、作業点 P1— Peまでエンドエフヱクタ 22の姿勢が次第 に変化するものとなり、作業点 P1 Pe間の移動を滑らかに、且つ、短時間で行うこと ができる。
[0103] また、第 1作業点 P1におけるエンドエフヱクタ 22の姿勢を示すツール座標データの Lociは、進入方向決定テンプレート機能によって、前の教示点(つまり作業原点 P0 )から最短時間で移動可能な姿勢として設定されている。従って、作業開始時、ェン ドエフエクタ 22は、第 1作業点 P1に速やかに移動することができ、作業開始前の移 動時間も含めた動作を短時間で行うことができる。
[0104] さらに、最終作業点 Peにおけるエンドェフエクタ 22の姿勢を示すツール座標データ の Loc3は、戻り方向決定テンプレート機能によって、次の教示点(つまり作業原点 P 0)に対して最短時間で移動可能な姿勢として設定されている。従って、最終作業点 Peでの作業終了後、エンドエフヱクタ 22は、その場から速やかに退避することができ 、作業終了後の移動時間も含めた動作を短時間で行うことができる。
[0105] 次に、多関節ロボット 12をスムーズに動作させて動作時間を短縮させるための第 2 作成方法につい説明する。この第 2作成方法 (及び後述する第 3作成方法)では、メ インルーチン、進入方向決定テンプレート機能及び戻り方向決定テンプレート機能 は、それぞれ第 1の方法における図 7、図 11及び図 12に示す処理と同じであり、図 7 のステップ S6におけるエンドェフエクタ 22の第 2の仮姿勢を設定する方法が異なる。 このステップ S6のサブルーチン処理について図 15及び図 16を参照しながら説明す る。
[0106] 図 15におけるステップ S401— S405は、前記ステップ S301— S305と同じ処理で める。
[0107] ステップ S405の実行後、ステップ S406において、エンドェフエクタ 22が Lociから Loc3に移動する際の多関節ロボット 12の姿勢変化量 Pose Δを求める。多関節ロボ ット 12の姿勢は、各車 1一 J6の回転角度である θ 1— Θ 6として Posel及び Pose3と して表されることから、姿勢変化量 Pose Δは、 PoseA Pose3_Poselとして求めら れる。
[0108] 次の、ステップ S407及びステップ S408は、前記ステップ S307及び S308と同じ処 理であり、距離比 rat_dist[j]が求められる。
[0109] 次に、ステップ S409におレ、て、 Poselと Pose3とを rat_dist[j]で按分した多関節 ロボット 12の按分姿勢 ddPoseを求める。この姿勢 ddPoseは、 ddPose—Posel +ra t_distXd_poseとして求められる。
[0110] この按分姿勢 ddPoseは、処理対象作業点の距離比 rat_dist[j]に応じ、 Posel 力 Pose3まで次第に変化するように設定されることとなる。また、按分 ddPoseが示 す多関節ロボット 12の姿勢によって決定されるエンドェフエクタ 22の向きも、距離比 r at— dist[j]に応じて次第に変化するように設定されることとなる。
[0111] 次に、ステップ S410において、多関節ロボット 12が按分姿勢 ddPoseであるときの エンドェフエクタ 22のツール座標データ xj、 yj、 zj、 rxj、 ryj、 rzjを求める。これらの 6 つのパラメータは、各車 ftil— J6の回転角度と、各アームの長さを示す行列式とを順に 積算することによって求めることができる。これらの 6つのパラメータがエンドェフエクタ 22の第 2の仮姿勢を表すことになる。
[0112] 次に、ステップ S411において、第 1の仮姿勢を補正するための補正用データ D [j] として rzjを選択、代入する。
[0113] 次に、ステップ S412において、全ての処理対象作業点について第 2の仮姿勢を求 めたか否かを確認する。未処理の処理対象作業点があれば、カウンタ jを「 + 1」イン クリメントした後にステップ S407へ戻り、処理を続行する。全ての処理対象作業点に 対して処理が終了してレ、る場合には、図 15及び図 16に示すサブルーチンの処理を 終了し、前記ステップ S7 (図 7参照)へ移る。
[0114] このように、多関節ロボット 12のティーチングデータを作成する第 2作成方法によれ ば、各処理対象作業点における多関節ロボット 12の按分姿勢 ddPoseに基づいて、 エンドエフヱクタ 22のツール座標データを作成する。第 1作業点 P1及び最終作業点 Peにおける多関節ロボット 12の姿勢は、進入方向決定テンプレート機能及び戻り方 向決定テンプレート機能によって進入及び戻りが短時間で行うことができるように設 定されていることから、前述の第 1の方法と同様の効果を奏する。
[0115] 次に、多関節ロボット 12をスムーズに動作させて動作時間を短縮させるための第 3 作成方法について説明する。この第 3作成方法におけるメインルーチン、進入方向 決定テンプレート機能及び戻り方向決定テンプレート機能は、第 1の方法と同じであ ること力ら、図 7のステップ S6に相当する処理、すなわち、エンドェフエクタ 22の第 2 の仮姿勢を設定する処理について図 17—図 19を参照しながら説明する。
[0116] 図 17におけるステップ S501 S505は、前記ステップ S301— S305と同じ処理で める。
[0117] ステップ S505の実行後、ステップ S506において、多関節ロボット 12の姿勢を Pos elとし、エンドエフヱクタ 22を第 1作業点 PIに移動させた後に、最終作業点 Peに対 応する Pose3まで仮移動させる。
[0118] この仮移動は、ロボット制御部 24が有する機能をシミュレーション回路 44で模擬的 に移動するものであり、第 1作業点 P1から最終作業点 Peまで滑らかに移動させること ができる。また、この仮移動は、第 1作業点 P1及び最終作業点 Peにおけるエンドエフ ヱクタ 22の姿勢が進入方向決定テンプレート機能及び戻り方向決定テンプレート機 能で求めた姿勢となることを条件として移動させればよぐ途中の経路は、図 19の仮 経路 102のように、作業点 P2、 P3等を必ずしも通過する必要はない。
[0119] 移動動作の方法は選定可能であり、移動時間が最短となる移動、又はエンドエフェ クタ 22の動作軌跡が直線状となる移動等を選択することができる。
[0120] この仮移動の際、エンドェフエクタ 22の移動方向変化量、移動量及びエンドェフエ クタ 22のツール座標データを所定の微小時間毎に記録する。また、この仮移動に要 する総移動時間 d— timeを記録する。
[0121] 次の、ステップ S507及びステップ S508は、前記ステップ S307及び S308と同じ処 理であり、距離比 rat— dist [j]が求められる。
[0122] 次に、ステップ S509において、総移動時間 d— timeを距離比 rat— dist [j]で按分 した値、按分時間 dd— time [j]を求める。つまり、 dd— time [j]—d— time X rat— di st [j]として求める。
[0123] 次に、ステップ S510において、前記ステップ S506で記録したエンドェフエクタ 22 に関するデータから、按分時間 dd— time [j]に相当する時間のデータを抽出する。 また、この抽出したデータ力 エンドェフエクタ 22のツール座標データ(xj、 yj、 zj、 rx j、 ryj、 rzj)をエンドエフヱクタ 22の第 2の仮姿勢としてさらに抽出する。
[0124] この第 2の仮姿勢は、概念的には図 19のベクトル Val、 Va2、 Va3、 Va4…のよう に表される。
[0125] 次に、ステップ S511において、第 1の仮姿勢を補正するための補正用データ D [j] として rzjを選択、代入する。
[0126] 次に、ステップ S512において、全ての処理対象作業点について補正用データ D [j
]を設定したか否かを確認する。未処理の処理対象作業点があれば、カウンタ iを「十 1」インクリメントした後にステップ S507へ戻り、処理を続行する。全ての処理対象作 業点に対して処理が終了している場合には、図 17及び図 18に示すサブルーチンの 処理を終了し、前記ステップ S7 (図 7参照)へ移る。
[0127] 多関節ロボット 12のティーチングデータを作成する第 3作成方法は、概念的には、 図 19に示すように、仮経路 102に沿ってエンドエフヱクタ 22を仮移動させた後、作業 点 P 1— Peの距離比を、仮経路 102の総移動時間 d_timeに当てはめた按分時間 d d_time [j]を求め、該当する個所におけるエンドェフエクタ 22の向きをベクトル Val 、 Va2、 Va3…としてキ由出することとなる。これらのベクトノレ Val、 Va2、 Va3…をそれ ぞれ対応する処理対象作業点に移動することにより、第 1の仮姿勢を示すベクトル V bl、 Vb2、 Vb3、 Vb4…力 Sネ甫正される。
[0128] このように、多関節ロボット 12のティーチングデータを作成する第 3作成方法によれ ば、第 1作業点 P1と最終作業点 Peとの間を模擬的に仮移動させて、この仮移動時に 記録したエンドエフヱクタ 22の姿勢に基づいて各処理対象作業点におけるエンドェ フエクタ 22のツール座標データを設定する。従って、模擬的な仮移動を滑らかにし、 及び/又は、短時間の移動となるように設定することにより、各作業点 P1— Pe間に おけるエンドェフエクタ 22の相互の姿勢変化も滑らかなものとなり、結果として、作業 点 P1— Pe間の移動を滑らかに、且つ、短時間で行うことができる。また、最終作業点 Peでの作業終了後、エンドェフエクタ 22は、その場から速やかに退避することができ 、作業終了後の移動時間も含めた全体としての動作を短時間で行うことができる。
[0129] また、第 3作成方法では、仮経路 102を通過する総移動時間 d— timeを距離比 rat _dist [j]で按分した按分時間 dd— time [j]を求めて処理を行ってレ、るが、総移動時 間 d_timeに代えて、仮経路 102の総距離を距離比 rat_dist [j]で按分した点に基 づいて処理を行ってもよい。
[0130] さらに、距離比 rat_dist [j]は、作業点 P1— Peの位置から求めた力 各作業点 P1 、 P2、一Peの配置が略等間隔である場合には、距離比 rat_dist [j]の演算を省略し て、均等割りにしてもよい。
[0131] 次に、既存のワークである車両 200に対する第 1ティーチングデータ 150を利用し て別のワークである車両 202における第 2ティーチングデータ 160を設定するための 既存データ利用方法について説明する。先ず、既存データ利用方法が適用される 場合の多関節ロボット 12の概略動作及びそのティーチングデータについて説明する
[0132] 多関節ロボット 12が溶接を行うワークは、図 20に示すセダン型の車両(第 1ワーク) 200と、図 21に示すワゴン型の車両(第 2ワーク) 202である。セダン型の車両 200に 対しては、作業原点 P0を始点及び終点とし、 7つの作業点 P1— P7に対して順に溶 接を行う。最初の作業点 P1に到達する前に、作業点 P1に到達しやすいような姿勢を 示す仮の作業点 T01を経由する。また、最後の作業点 P7の後に、エンドェフエクタ 2 2を抜き取りやすいような姿勢を示す仮の作業点 T02を経由する。さらに、仮の作業 点 T02から作業原点 P0に戻りやすいように仮の作業点 T03を経由する。
[0133] また、図示しないが、各作業点間には、各作業点に対するエンドェフエクタ 22の進 入及び弓 Iき抜きのために経由する作業点が設けられてレ、る。
[0134] セダン型の車両 200に対する多関節ロボット 12の動作を示す第 1ティーチングデー タ 150は、図 22に示すように、「エンドエフヱクタの向き」欄、「TCPの位置」欄、「進入 方向」欄、「各軸角度」欄から構成されている。 「エンドエフヱクタの向き」欄は、エンド ェフエクタ 22の姿勢を示す座標、つまりツール座標データであり、上記のベクトル Xr 、 Yr、 Zrが記録されている。 「TCPの位置」欄には、エンドエフヱクタ 22の絶対座標を 示すデータが記録されている。 「進入方向」欄には、各作業点に対するエンドエフエタ タ 22の進入及び抜き取りの方向を示すベクトルデータが記録されている。また、第 1 ティーチングデータ 150は、概念的には、図 20に示すように、 7つの作業点 P1— P7 を含む経路として表される。
[0135] 車 4に対応する回転角 Θ 4には、何回転目力、を示す「回転」欄が設けられている。
同様に、 WJ6に対応する回転角 Θ 6には、何回転目力を示す「回転」欄が設けられて いる。 「回転」欄には、フラグデータ(回転情報)として「-1」、「0」、「1」のいずれかが 図 23に示すように、基準角度 AngO力、らの 360° を 1回転目として「0」、 AngO力、ら一 360° を 0回転目として「-1」のフラグデータを設定する。基準角度 AngOは設定変 更が可能である。怖 4、 J6の可動範囲が図 23よりも大きいときには、フラグが追加さ れてもよい。 [0136] 例えば、車 ftJ4の回転角 θ 4が見かけ上 240° の角度である Anglの場合に、「回転 」欄のデータ力 0」であれば、 1回転目の見かけ上の 240° を示し、「回転」欄のデー タが「1」であれば、同じ 240° でも 2回転目の 240° であることを示す。
[0137] この「回転」欄のフラグデータを読むことによって、時計方向か、反時計方向のいず れの方向に回転しなければならないかを認識可能である。つまり、 2回転目の見かけ 上の 0° 力も時計方向に回転して 240° の姿勢になり「回転」欄には「1」が入る。そし て、反時計方向に 120° に回すと、見かけ上は同じ 240° だが、反時計方向に回す 場合 1回転目の 240° になり、「回転」の欄には「0」が入る。このことにより、いずれの 方向からの回転であるかを認識可能となる。「回転」欄のフラグデータを考慮しない場 合、回転の方向によっては多関節ロボット 12の接続される各種ケーブルが捻れること となる。
[0138] 見かけ上の 240° に到達するには、反時計方向に 120° 又は時計方向に 240° 回るケースがあるが、反時計方向に回転するとケーブルが捻れてしまうときには、動 作する角度が大きくても時計方向にケーブルをほぐしながら動く必要がある。 「回転」 欄のデータによって、単に回転角の大小では判断できないケーブルのねじれを適正 に解きながら動作させることができる。
[0139] また、第 1ティーチングデータ 150では、ケーブルが捻れることを防ぐとともに、各作 業点間において、樹 4及び樹 6が過大に回転することがないように考慮されたデー タが記録されている。なお、第 1ティーチングデータ 150は、既存のデータでありセダ ン型の車両 200に対して実際に適用されている実績のあるデータである。
[0140] 多関節ロボット 12は、ワゴン型の車両 202 (図 21参照)に対しても溶接作業を行う。
車両 202に対応する第 2ティーチングデータ 160 (図 24参照)を作成する際には、第 1ティーチングデータ 150が既に存在しているものとする。この場合、第 2ティーチン グデータ 160の作成に第 1ティーチングデータ 150を利用することができると好適で ある。しかし、車両 202のドア枠の形状は、車両 200のドア枠の形状と異なり、第 1ティ 一チングデータ 150を第 2ティーチングデータ 160に対してそのまま利用することは できない。なお、第 2ティーチングデータ 160は、概念的には、図 28に示すように、 9 つの作業点 Q1— Q9を含む経路として表される。 [0141] 多関節ロボット 12が車両 202に対して行う作業内容、つまり作成するべき第 2ティー チングデータ 160が示す作業内容は次のとおりである。すなわち、作業原点 P0を始 点及び終点とし、 9つの作業点 Q1— Q9に対して順に溶接を行う。最初の作業点 Q1 に到達する前に、作業点 Q1に到達しやすいような姿勢を示す仮の作業点 T11を経 由する。また、最後の作業点 Q9の後に、エンドエフヱクタ 22を抜き取りやすいような 姿勢を示す仮の作業点 T12を経由する。また、図示しないが、各作業点間には、各 作業点に対するエンドェフエクタ 22の進入及び引き抜きのために経由する仮の作業 点が設けられている。 9つの作業点 Q1— Q9は、前記の作業点 P1— P7に対して位 置及び数が異なるが、ドア枠部に対する作業点であるという点で共通している。また、 下方から上方へ向かって順に溶接を行うという点で共通している。
[0142] また、第 2ティーチングデータ 160は、 9つの作業点 Q1— Q9に対応する「TCPの 位置」欄のデータと、「エンドエフヱクタの向き」欄のデータのうちベクトル Zrのデータ は、車両 202の設計段階で予め設定されている。つまり、第 2ティーチングデータ 16 0は、「エンドエフヱクタの向き」欄のうちベクトル Xrとベクトル Yrを示すデータと、「進 入方向」欄のデータと、「各軸角度」欄のデータを設定すればよい。
[0143] なお、第 1ティーチングデータ 150及び第 2ティーチングデータ 160は、前記パステ ーブノレ 100 (図 6参照)と基本的に同構造のデータである。パステーブル 100におけ る「TCPの位置」欄は、直交する 3軸の座標値を示している力 第 1ティーチングデー タ 150を示す図 22及び第 2ティーチングデータを示す図 24では、「TCPの位置」欄 のデータを便宜上 A0、 A2…と簡略的に図示している。また、前記の多関節ロボット 1 2をスムーズに動作させて動作時間を短縮させるための第 1一第 3作成方法における P0— P7と既存データ利用方法における P0— P7は、必ずしも同じデータでなくても よい。
[0144] 次に、既存データ利用方法の詳細な手順について、図 25に示すフローチャートに 従って説明する。
[0145] 先ず、第 2ティーチングデータ 160の作成に先立ち、ハードディスク 36からティー チングデータ作成プログラム 56を読み込み、ティーチングデータ作成回路 42にロー ドする。次いで、多関節ロボット 12、作業対象物及びその他の設備に係る形状デー タ 58と、多関節ロボット 12の各軸の最高速度、最大加速度、可動範囲等のロボット仕 様データ 60とをハードディスク 36から読み込む。描画制御回路 48は、形状データ 5 8に基づいて、ディスプレイ 46に多関節ロボット 12、溶接対象となるワーク、治具を含 む設備等の画像を描画する。
[0146] 以上の準備作業が終了した後、ステップ S601において、ティーチングデータ作成 回路 42は、第 1ティーチングデータ 150を読み出し、該第 1ティーチングデータ 150 を進入部のデータと、溶接部のデータと、終了部のデータとに分解する。
[0147] 進入部のデータとは、作業原点 P0から最初の作業点 P1までの経路を示すデータ であり、溶接部のデータとは最初の作業点 P1から最後の作業点 P7までの経路を示 すデータであり、終了部のデータとは最後の作業点 P7から作業原点 P0に戻る経路 を示すデータである。従って、図 22に示す例では、進入部のデータは、順番「1」一 順番「2」であり、溶接部のデータは順番「2」一順番「8」であり、終了部のデータは順 番「8」一順番「10」である。
[0148] 次に、ステップ S602において、第 1ティーチングデータ 150における溶接部のデー タのうち「エンドェフエクタの向き」欄のデータを第 2ティーチングデータ 160における「 エンドエフヱクタの向き」欄に複写して回転変換する。
[0149] つまり、作業点 P1のデータを作業点 Q1に複写する場合(図 26参照)、第 1ティーチ ングデータ 150のベクトル XP1、 YP1、 ZP1を作業点 Q1の位置を示す Blに平行に 移動させた後、ベクトル ZP1を予め設定されているベクトル ZQ1に合うように回転変 換する。このとき、ベクトル XP1及び YP1も同様に回転変換することによりべクトノレ XQ 1及び YQ1に変換される。また、進入方向を示すベクトル C1も同様に回転変換して ベクトル D1を得る。作業点 Q2 Q7についても同様に作業点 P2 P7のデータを複 写して回転変換する。
[0150] 次に、ステップ S603において、第 1ティーチングデータ 150における溶接部のデー タの「回転」欄のデータを複写する。これにより、第 2ティーチングデータ 160を用いた 動作においても、多関節ロボット 12のケーブルが捻れることを防ぐとともに、各作業点 間において、 ¾LJ4及び怖 6が過大に回転することを防止することができる。
[0151] 次に、ステップ S604において、「エンドェフエクタの向き」欄のデータ、「TCPの位 置」欄のデータに基づき、多関節ロボット 12の各車 1一 J6の角度を行列式を用いた 逆変換処理により算出する。この処理によって、多関節ロボット 12の姿勢は、複数求 められることがある。
[0152] 次に、ステップ S605において、複数求められた多関節ロボット 12の姿勢のうち、「 回転」欄のデータに適合する姿勢を 1つ選択する。これにより、例えば、作業点 QI 関しては θ 1 Θ 6に対応する角度である θ <311、 Θ Q21, Θ Q31, Θ Q41、 Θ Q5 1及び Θ Q61が求まるので、「各軸角度」欄の θ 1— Θ 6の各欄に記録する。
[0153] このようにして、第 1ティーチングデータ 150に基づいて第 2ティーチングデータ 160 の溶接部のデータが求められる。
[0154] 次に、ステップ S606におレ、て、第 1ティーチングデータ 150の作業点の数 Ρηと第 2 ティーチングデータ 160の作業点の数 Qnとを比較する。図 22及び図 24に示す例の ように、第 1ティーチングデータ 150の作業点 P1 P7の数 Pn (7点)より第 2ティーチ ングデータ 160の作業点 Q1— Q9の数 Qn (9点)の方が大きいときには、ステップ S6 07に移る。数 Pnが数 Qn以下であるときにはステップ S608に移る。
[0155] ステップ S607、つまり第 1ティーチングデータ 150の作業点の数 Pnより第 2ティー チングデータの作業点の数 Qnの方が大きいときには、その差分に相当する作業点 のデータを所定の方法によって補完する(図 27参照)。この手順は、例えば、前記特 開 2003-117864号公報に記載されている方法を用いるとよい。
[0156] 次に、ステップ S608において、最後の作業点(例えば、作業点 Q9)のツール座標 データに基づいて終了部のデータを作成する(図 28参照)。この終了部のデータは、 最後の作業点における溶接処理が終了した後にエンドェフエクタ 22を引き抜きやす ぐ且つ、移動時間を短く設定できる箇所がよい。また、第 1ティーチングデータ 150 における終了部のデータの一部を第 2ティーチングデータ 160の終了部のデータとし てそのま利用してもよい。例えば、第 1ティーチングデータ 150の 10番目のデータ TO 3 (図 22参照)は、第 2ティーチングデータ 160の 12番目のデータ T03 (図 24参照)と して利用されている。
[0157] 次に、ステップ S609において、最初の作業点 P1のツール座標データに基づいて 進入部のデータ、つまり仮の作業点 T11を作成する(図 28参照)。この進入部のデ ータは、最初の作業点 PIに対してエンドエフヱクタ 22を進入させやすぐ且つ、移動 時間を短く設定できる箇所がよい。また、第 1ティーチングデータ 150における進入 部のデータの一部を第 2ティーチングデータ 160の進入部のデータとしてそのまま利 用してもよい。
[0158] このようにして第 2ティーチングデータ 160を作成することにより、新規のワークであ る車両 202が既存のワークである車両 200に対して異なる形状である場合でも、車両 200用の第 1ティーチングデータ 150を有効に利用し、第 2ティーチングデータ 160 を効率的に作成することができる。
[0159] また、第 2ティーチングデータ 160には、第 1ティーチングデータの「回転」欄のデー タをそのまま利用していることから、多関節ロボット 12が第 2ティーチングデータ 160 に基づいて車両 202の溶接作業を行うときには、接続されたケーブルが捻れたり、隣 り合う作業点間において車 4及び車 6が不必要に過大に回転することがない。
[0160] さらに、作業点 Q1— Q7に対する進入方向及び引き抜き方向を示す「進入方向」欄 のデータである D1— D7は、第 1ティーチングデータ 150における作業点 P1— Ρ7の 「進入方向」欄のデータである C1一 C7に基づいて、容易に設定することができる。
[0161] なお、作成された第 2ティーチングデータ 160は、シミュレーション回路 44によって 動作確認された後、記録媒体ドライブ 40を介して外部記録媒体 38に記録される。次 いで、外部記録媒体 38に記録されたティーチングデータは、ロボット制御部 24にダ ゥンロードされ、多関節ロボット 12の制御に供される。
[0162] また、上記の既存データ利用方法では車両 202のドア枠部に対するデータである 第 2ティーチングデータ 160を作成する例について説明した力 実際には、図 29及 び図 30に示すように、車両 200、 202には治具 170等が設けられていて、より複雑な ティーチングが必要となることがある。この場合、車両 200に適用される治具対応第 1 ティーチングデータ 180を車両 202に適用される治具対応第 2ティーチングデータ 1 90に利用することができる。すなわち、治具対応第 1ティーチングデータ 180のうち、 車両 200のやや斜めに横断するエリア 172におけるティーチングデータを、治具対 応第 2ティーチングデータ 190のうち、車両 202における略同様なエリア 174のティー チングデータに対して適用することができる。また、車両 200において縦方向に移動 するエリア 176におけるティーチングデータを、略同様なエリア 178のティーチングデ ータに対して適用することができる。
さらに、第 1ティーチングデータ 150、 180のツール座標データを回転変換して第 2 ティーチングデータ 160、 190のツール座標データとする際には、 RAM32等の記憶 部の使用手順は種々の形態を採り得ることはもちろんである。つまり、第 1ティーチン グデータ 150、 180のツール座標データを、その記憶領域において回転変換して書 き換えた後に第 2ティーチングデータ 160、 190の記憶領域に移してもよいし、逆に 第 2ティーチングデータ 160、 190の記憶領域に移した後に回転変換してもよい。ま た、第 1ティーチングデータ 150、 180のツール座標データを所定のバッファ領域に 複写し、該バッファ領域において回転変換した後に第 2ティーチングデータ 160、 19 0の記憶領域に移してもよい。

Claims

請求の範囲
[1] エンドェフエクタ(22)を備え、連続する複数の作業点に対して前記エンドェフエクタ
(22)によって順次作業を行う多関節ロボット(12)のティーチングデータ作成方法に おいて、
前記複数の作業点に対して、前記エンドエフェクタ(22)の第 1の仮姿勢を設定する 前記複数の作業点のうち一端の第 1作業点 (P1)における前記多関節ロボット(12) の姿勢を求める第 2ステップと、
前記複数の作業点のうち他端の最終作業点(Pe)における前記多関節ロボット(12 )の姿勢を求める第 3ステップと、
前記第 2ステップで求めた前記多関節ロボット(12)のエンドェフエクタ(22)の姿勢 から、前記第 3ステップで求めた前記多関節ロボット(12)のエンドェフエクタ(22)の 姿勢に次第に変化するように、他の各作業点に対して、それぞれ前記エンドエフエタ タ(22)の第 2の仮姿勢を設定する第 4ステップと、
前記第 1の仮姿勢を前記第 2の仮姿勢で補正して、各作業点における前記エンド エフヱクタ(22)の姿勢を設定する第 5ステップと、
を有することを特徴とする多関節ロボット(12)のティーチングデータ作成方法。
[2] 請求項 1記載の多関節ロボット(12)のティーチングデータ作成方法において、 前記第 2ステップでは、
前記第 1作業点 (P1)に対して、該第 1作業点 (P1)の前段階の教示点から最短時 間で到達するように、前記第 1作業点 (P1)における前記多関節ロボット(12)の姿勢 を求めることを特徴とする多関節ロボット(12)のティーチングデータ作成方法。
[3] 請求項 1記載の多関節ロボット(12)のティーチングデータ作成方法において、 前記第 3ステップでは、
前記最終作業点 (Pe)に対して、該最終作業点 (Pe)の後段階の教示点に最短時 間で到達するように、前記最終作業点 (Pe)における前記多関節ロボット(12)の姿勢 を求めることを特徴とする多関節ロボット(12)のティーチングデータ作成方法。
[4] 請求項 1記載の多関節ロボット(12)のティーチングデータ作成方法において、 前記第 4ステップでは、
前記第 2ステップ及び前記第 3ステップで求めた多関節ロボット(12)のェ: クタ(22)の各姿勢の差 (Loc Δ )を求める第 1サブステップと、
前記第 1作業点 (P1)から前記最終作業点 (Pe)までの全経路距離 (dist)に対する 各作業点の前記第 1作業点(P1)からの距離比 (rat_dist)により、前記第 2ステップ 及び前記第 3ステップで求めた多関節ロボット(12)のエンドエフヱクタ(22)の各姿勢 を按分した、第 2の仮姿勢を設定する第 2サブステップと、
を有することを特徴とする多関節ロボット(12)のティーチングデータ作成方法。
[5] 請求項 1記載の多関節ロボット(12)のティーチングデータ作成方法において、 前記第 4ステップでは、
前記第 2ステップ及び前記第 3ステップで求めた多関節ロボット(12)の各姿勢の差 (Pose Δ )を求める第 1サブステップと、
前記第 1作業点 (P1)から前記最終作業点 (Pe)までの全経路距離 (dist)に対する 各作業点の前記第 1作業点(P1)からの距離比 (rat— dist)により、前記第 2ステップ 及び前記第 3ステップで求めた多関節ロボット(12)の各姿勢を按分した按分姿勢を 求める第 2サブステップと、
該按分姿勢における前記エンドェフエクタ(22)の姿勢を第 2の仮姿勢として求める を有することを特徴とする多関節ロボット(12)のティーチングデータ作成方法。
[6] 請求項 1記載の多関節ロボット(12)のティーチングデータ作成方法において、 前記第 4ステップでは、
前記第 1作業点 (P1)及び前記最終作業点 (Pe)における前記エンドェフエクタ(22 )の姿勢が前記第 1ステップ及び前記第 2ステップで求めた姿勢となることを条件とし て、前記エンドェフエクタ(22)を前記第 1作業点 (P1)から前記最終作業点 (Pe)まで 模擬的に移動させながら、所定時間毎に前記エンドェフエクタ(22)の姿勢を記録す る第 1サブステップと、
前記第 1作業点 (P1)から前記最終作業点 (Pe)までの全経路距離 (dist)に対する 各作業点の前記第 1作業点 (P1)からの距離比 (rat_diat)に基づいて、前記第 1サ ブステップで記録した前記エンドエフヱクタ(22)の姿勢のうち、移動時間の比(dd— t ime)が対応する姿勢を第 2の仮姿勢として選択する第 2サブステップと、
を有することを特徴とする多関節ロボット(12)のティーチングデータ作成方法。
[7] 請求項 6記載の多関節ロボット(12)のティーチングデータ作成方法において、 前記第 1サブステップで前記エンドェフエクタ(22)を模擬的に移動させる際、前記 第 1作業点 (P1)から前記最終作業点 (Pe)までの移動時間(d_time)が最短となる ように移動させることを特徴とする多関節ロボット(12)のティーチングデータ作成方 法。
[8] 請求項 6記載の多関節ロボット(12)のティーチングデータ作成方法において、 前記第 1サブステップで前記エンドェフエクタ(22)を模擬的に移動させる際、前記 第 1作業点(P1)から前記最終作業点(Pe)まで、前記エンドエフェクタ(22)を直線 状に移動させることを特徴とする多関節ロボット(12)のティーチングデータ作成方法
[9] 請求項 1記載の多関節ロボット(12)のティーチングデータ作成方法において、 前記第 5ステップでは、前記第 1の仮姿勢を構成する複数のパラメータのうち、少な くとも 1つを前記第 2の仮姿勢のパラメータで置き換えることを特徴とする多関節ロボ ット(12)のティーチングデータ作成方法。
[10] 請求項 1記載の多関節ロボット(12)のティーチングデータ作成方法において、 前記第 1ステップでは、前記第 1の仮姿勢を前記エンドェフエクタ(22)の作業部(2 2b, 22c)がワークに対して面直となるように設定し、
前記第 5ステップでは、前記作業部(22b、 22c)が前記ワークに対して面直な状態 を保つように前記第 1の仮姿勢を補正することを特徴とする多関節ロボット(12)のテ ィーチングデータ作成方法。
[11] 第 1ワークにおける複数の作業点に対応する多関節ロボット(12)の第 1ティーチン グデータ(150)を、第 2ワークにおける複数の作業点に対応する前記多関節ロボット (12)の第 2ティーチングデータ(160)に変換するための多関節ロボット(12)のティ 一チングデータ作成方法において、
前記第 1ティーチングデータ(150)及び前記第 2ティーチングデータ(160)は、前 記作業点における前記多関節ロボット(12)に設けたエンドェフエクタ(22)の姿勢を 示すツール座標データを含み、該ツール座標データは複数のパラメータからなり、 予め前記第 2ティーチングデータ(160)のツール座標データのパラメータの 1つが 設定され、該パラメータが一致するように前記第 1ティーチングデータ(150)のツー ノレ座標データを変換して、前記第 2ティーチングデータ(160)のツール座標データと するステップを複数の前記作業点に対して行うことを特徴とする多関節ロボット(12) のティーチングデータ作成方法。
[12] 請求項 11記載の多関節ロボット(12)のティーチングデータ作成方法において、 前記第 1ティーチングデータ(150)及び前記第 2ティーチングデータ(160)は、前 記作業点に対する進入方向データを含み、前記作業点毎に前記進入方向データを 複写することを特徴とする多関節ロボット(12)のティーチングデータ作成方法。
[13] 請求項 11記載の多関節ロボット(12)のティーチングデータ作成方法において、 前記第 1ティーチングデータ(150)及び前記第 2ティーチングデータ(160)は、前 記作業点毎に、少なくとも 1つの関節の回転角に関する回転情報を含み、前記作業 点毎に前記回転情報を複写することを特徴とする多関節ロボット(12)のティーチング データ作成方法。
[14] 請求項 11記載の多関節ロボット(12)のティーチングデータ作成方法において、 前記第 2ティーチングデータ(160)は、前記作業点のうち、最初の作業点 (Q1)に 到達する 1つ前の仮の点 (T01)を示す第 1仮作業点データと、最後の作業点(Q9) の後に経由する仮の点 (T02)を示す第 2仮作業点データとを含み、前記第 1仮作業 点データを前記最初の作業点(Q1)のツール座標データに基づいて設定し、前記第 2仮作業点データを前記最後の作業点(Q9)のツール座標データに基づいて設定 することを特徴とする多関節ロボット(12)のティーチングデータ作成方法。
PCT/JP2004/007627 2003-06-02 2004-06-02 多関節ロボットのティーチングデータ作成方法 WO2004108365A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CA002526459A CA2526459C (en) 2003-06-02 2004-06-02 Teaching data preparing method for articulated robot
US10/558,641 US7248012B2 (en) 2003-06-02 2004-06-02 Teaching data preparing method for articulated robot
GB0524063A GB2418033B (en) 2003-06-02 2004-06-02 Teaching data preparing method for articulated robot

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2003156239A JP4000306B2 (ja) 2003-06-02 2003-06-02 多関節ロボットのティーチングデータ作成方法
JP2003-156239 2003-06-02
JP2003-158254 2003-06-03
JP2003158254A JP4000307B2 (ja) 2003-06-03 2003-06-03 多関節ロボットのティーチングデータ作成方法

Publications (2)

Publication Number Publication Date
WO2004108365A1 true WO2004108365A1 (ja) 2004-12-16
WO2004108365A8 WO2004108365A8 (ja) 2006-01-26

Family

ID=33513357

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2004/007627 WO2004108365A1 (ja) 2003-06-02 2004-06-02 多関節ロボットのティーチングデータ作成方法

Country Status (4)

Country Link
US (1) US7248012B2 (ja)
CA (1) CA2526459C (ja)
GB (1) GB2418033B (ja)
WO (1) WO2004108365A1 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006236031A (ja) * 2005-02-25 2006-09-07 Seiko Epson Corp ロボット軌跡制御方法及び装置並びにロボット軌跡制御方法のプログラム
WO2010032284A1 (ja) * 2008-09-16 2010-03-25 新日本工機株式会社 数値制御装置
TW201111127A (en) * 2009-06-30 2011-04-01 Ulvac Inc Robot teaching apparatus and robot teaching method
JP2011048621A (ja) * 2009-08-27 2011-03-10 Honda Motor Co Ltd ロボットのオフライン教示方法
US9731419B2 (en) * 2010-08-03 2017-08-15 Praxair S.T. Technology, Inc. System and method for programming robots
EP2453325A1 (en) * 2010-11-16 2012-05-16 Universal Robots ApS Method and means for controlling a robot
DE102011011542B4 (de) * 2011-02-17 2016-05-25 Convergent Information Technologies Gmbh Verfahren zur automatisierten Programmierung und Optimierung von robotischen Arbeitsabläufen
KR101254575B1 (ko) 2011-08-11 2013-04-15 (주)심랩 로봇의 시뮬레이션 모델 추출 방법 및 장치
SG10201502615QA (en) 2011-09-28 2015-05-28 Universal Robots As Calibration and programming of robots
WO2015131904A1 (en) 2014-03-04 2015-09-11 Universal Robots A/S Safety system for industrial robot
CN106232304B (zh) * 2014-05-01 2018-09-07 本田技研工业株式会社 用于关节型机器人的教学数据准备装置和教学数据准备方法
GB201413991D0 (en) * 2014-08-07 2014-09-24 Ubisense Ltd Tool tracking
WO2016049301A1 (en) 2014-09-26 2016-03-31 Teradyne, Inc. Grasping gripper
KR102603939B1 (ko) 2015-07-08 2023-11-20 유니버셜 로보츠 에이/에스 제3자 기여를 가진 산업용 로봇의 최종 사용자 프로그래밍 확장 방법
CN108349085B (zh) * 2015-10-30 2021-12-28 株式会社安川电机 机器人教学装置、计算机程序和机器人教学方法
TWI805545B (zh) 2016-04-12 2023-06-21 丹麥商環球機器人公司 用於藉由示範來程式化機器人之方法和電腦程式產品
CN106217345B (zh) * 2016-08-31 2018-04-24 北京术锐技术有限公司 可实现姿态反馈的柔性连续体结构
JP6743791B2 (ja) * 2017-09-20 2020-08-19 株式会社安川電機 ロボットシステムおよびワークの製造方法
CN110465949B (zh) * 2019-09-09 2021-11-09 北京配天技术有限公司 焊接机器人及其摆动轨迹的规划方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1063322A (ja) * 1996-08-27 1998-03-06 Sekisui Chem Co Ltd 産業用ロボットのプログラム作成装置
JP2003053539A (ja) * 2001-08-07 2003-02-26 Yaskawa Electric Corp 溶接用ロボットの姿勢制御方法

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1586017A (en) * 1977-05-30 1981-03-11 Sepa Control system for an automatic machine
US4338672A (en) * 1978-04-20 1982-07-06 Unimation, Inc. Off-line teach assist apparatus and on-line control apparatus
JPS584377A (ja) * 1981-03-18 1983-01-11 株式会社安川電機 関節形産業用ロボツトの制御装置
DE3277087D1 (en) * 1981-09-24 1987-10-01 Hitachi Ltd Control system for robot hand
JPS5927307A (ja) * 1982-08-04 1984-02-13 Hitachi Ltd 経路制御方法及び装置
GB2146796B (en) * 1983-08-31 1986-12-17 Mitsubishi Electric Corp Method for controlling an industrial robot to perform weaving-like motion and apparatus for practising the same
JPS60107106A (ja) * 1983-11-15 1985-06-12 Mitsubishi Electric Corp 曲線補間装置
JPS61157909A (ja) * 1984-12-29 1986-07-17 Fanuc Ltd ロボツトの経路誤差補正方式
JPH061406B2 (ja) * 1985-09-05 1994-01-05 松下電器産業株式会社 移動体の経路教示方法
US4823279A (en) * 1986-02-27 1989-04-18 Unimation, Inc. Coordinate conversion system and method for controlling an industrial robot
EP0254884B1 (de) * 1986-07-09 1990-02-28 Siemens Aktiengesellschaft Verfahren zum Bestimmen von die Steuerung eines Roboters leitenden Raumpunkten
DE3640987C1 (de) * 1986-12-01 1993-04-29 Agie Ag Ind Elektronik Numerisches Steuersystem fuer hochdynamische Prozesse
US4821207A (en) * 1987-04-28 1989-04-11 Ford Motor Company Automated curvilinear path interpolation for industrial robots
ES2080051T3 (es) * 1989-02-28 1996-02-01 Siemens Ag Procedimiento de control en una maquina herramienta numerica o un robot.
EP0419706B1 (de) * 1989-09-27 1995-01-25 Siemens Aktiengesellschaft Verfahren zur numerischen Positions- oder Bahnsteuerung
EP0419705A1 (de) * 1989-09-27 1991-04-03 Siemens Aktiengesellschaft Verfahren zur Ruckbegrenzung von numerischen Antriebssystemen
US5229698A (en) * 1990-08-06 1993-07-20 Cincinnati Milacron Inc. Method and apparatus for sub-span interpolation
JPH04111006A (ja) * 1990-08-30 1992-04-13 Kobe Steel Ltd ロボットの経路補間方法
EP0495147A1 (de) * 1991-01-18 1992-07-22 Siemens Aktiengesellschaft Verfahren zur Bahnkorrektur bei numerisch gesteuerten Maschinen
US5396160A (en) * 1991-03-11 1995-03-07 General Motors Corporation Method of real-time machine path planning from a math model
EP0506990A1 (de) * 1991-04-02 1992-10-07 Siemens Aktiengesellschaft Verfahren zur Beschleunigungs- und Geschwindigkeitsführung mindestens einer steuerbaren Achse einer Werkzeugmaschine oder eines Roboters
DE59108037D1 (de) * 1991-09-06 1996-08-29 Siemens Ag Verfahren zum Auslösen von positionsbezogenen Schaltvorgängen während eines von einem Roboter oder einer Werkzeugmaschine ausgeführten Bearbeitungsvorganges
FR2682905B1 (fr) * 1991-10-28 1995-12-01 Commissariat Energie Atomique Procede de generation de trajectoire pour un systeme robotise.
US5373221A (en) * 1993-07-30 1994-12-13 Fanuc Robotics North America, Inc. Method and system for estimating robot tool center point speed
US5434489A (en) * 1993-07-30 1995-07-18 Fanuc Robotics North America, Inc. Method and system for path planning in cartesian space
US5740327A (en) * 1994-12-27 1998-04-14 Nec Corporation Method of and apparatus for robot tip trajectory control
US5694535A (en) * 1995-03-24 1997-12-02 Novell, Inc. Direct interactive, constant-time curve apparatus and method
AU3477397A (en) * 1996-06-04 1998-01-05 Paul J. Werbos 3-brain architecture for an intelligent decision and control system
JPH1069310A (ja) * 1996-08-28 1998-03-10 Matsushita Electric Ind Co Ltd ロボットの軌道生成装置
US6025686A (en) * 1997-07-23 2000-02-15 Harnischfeger Corporation Method and system for controlling movement of a digging dipper
US5920679A (en) * 1997-08-25 1999-07-06 The Research Foundation Of State University Of New York Apparatus and method for computer-aided low-harmonic trajectory planning for computer-controlled machinery
JPH11149306A (ja) * 1997-11-14 1999-06-02 Fanuc Ltd 加工機の制御装置
DE19854011A1 (de) * 1998-11-12 2000-05-25 Knoll Alois Einrichtung und Verfahren zum Vermessen von Mechanismen und ihrer Stellung
US6114825A (en) * 1998-11-18 2000-09-05 Control Technology Corporation Method and apparatus for state path generation in a controlled system
JP3326472B2 (ja) * 1999-11-10 2002-09-24 独立行政法人 航空宇宙技術研究所 多関節ロボット
US6922606B1 (en) * 1999-11-19 2005-07-26 Siemens Energy & Automation, Inc. Apparatus and method for smooth cornering in a motion control system
US6430472B1 (en) * 1999-12-20 2002-08-06 Servo-Robot Inc. Robot feature tracking devices and methods
JP2002239957A (ja) 2001-02-19 2002-08-28 Honda Motor Co Ltd 多関節ロボットの姿勢決定方法およびプログラム
JP3715537B2 (ja) * 2001-02-19 2005-11-09 本田技研工業株式会社 多関節ロボットの干渉回避方法およびプログラム
JP2003094363A (ja) 2001-09-27 2003-04-03 Honda Motor Co Ltd 多関節ロボットの姿勢決定方法および装置
JP2003117864A (ja) 2001-10-05 2003-04-23 Honda Motor Co Ltd 多関節ロボットのティーチングデータ作成方法
US6895299B2 (en) * 2001-10-16 2005-05-17 Brigham Young University Systems and methods for representing complex n-curves for direct control of tool motion
JP2003334740A (ja) * 2002-05-15 2003-11-25 Mitsubishi Electric Corp 許容速度決定方法および速度制御装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1063322A (ja) * 1996-08-27 1998-03-06 Sekisui Chem Co Ltd 産業用ロボットのプログラム作成装置
JP2003053539A (ja) * 2001-08-07 2003-02-26 Yaskawa Electric Corp 溶接用ロボットの姿勢制御方法

Also Published As

Publication number Publication date
GB0524063D0 (en) 2006-01-04
CA2526459C (en) 2008-06-17
WO2004108365A8 (ja) 2006-01-26
US20060255758A1 (en) 2006-11-16
GB2418033B (en) 2007-06-20
GB2418033A (en) 2006-03-15
US7248012B2 (en) 2007-07-24
CA2526459A1 (en) 2004-12-16

Similar Documents

Publication Publication Date Title
WO2004108365A1 (ja) 多関節ロボットのティーチングデータ作成方法
JP3207728B2 (ja) 冗長マニピュレータの制御方法
JP3905075B2 (ja) 作業プログラム作成装置
JP4917252B2 (ja) アーク溶接用装置
JP2006099474A (ja) ロボットの軌跡制御方法
JP2512099B2 (ja) ロボットの動作教示方法および制御装置
JP4513663B2 (ja) 自動組立システムにおける組立機構の動作教示方法
JPH065486B2 (ja) ロボットの軌跡制御方法
KR960001962B1 (ko) 로보트의 공구 자세 제어방법
CN110722552A (zh) 自动路径生成装置
JP2012091304A (ja) ティーチングデータ作成方法およびティーチングデータ作成装置
JPH11347984A (ja) ロボット制御装置
JP2004362018A (ja) 多関節ロボットのティーチングデータ作成方法
JP4396553B2 (ja) ロボット制御装置,コンピュータプログラム
JP2007000954A (ja) ロボット教示装置及び方法
WO2019208785A1 (ja) ロボットの教示方法及びロボットの教示システム
JP2020171989A (ja) ロボット教示システム
JP2703767B2 (ja) ロボットの教示データ作成方法
JP5803179B2 (ja) ロボットの制御方法およびロボットの制御装置
JP4000307B2 (ja) 多関節ロボットのティーチングデータ作成方法
JP7199073B2 (ja) 垂直多関節ロボットの教示データ作成システム
JP6533199B2 (ja) ワーク処理システム
JPH07200018A (ja) ロボットの制御装置
GB2434221A (en) Generating teaching data for an articulated robot
WO2022162836A1 (ja) ロボットシステム、把持制御方法、把持制御プログラム、及び、記録媒体

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2526459

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 0524063.5

Country of ref document: GB

Ref document number: 0524063

Country of ref document: GB

WWE Wipo information: entry into national phase

Ref document number: 2006255758

Country of ref document: US

Ref document number: 10558641

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 20048153995

Country of ref document: CN

WR Later publication of a revised version of an international search report
122 Ep: pct application non-entry in european phase
WWP Wipo information: published in national office

Ref document number: 10558641

Country of ref document: US