Teaching device for robot and teaching program for robot

By changing the base position in the robot teaching device and combining display and correction functions, the motion trajectory of the robot end effector and arm is exported and optimized, solving the problem of insufficient motion trajectory in the prior art and achieving better motion optimization and time reduction.

CN115803865BActive Publication Date: 2026-04-24KAWASAKI JUKOGYO KK
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
KAWASAKI JUKOGYO KK
Filing Date
2021-06-15
Publication Date
2026-04-24

AI Technical Summary

Technical Problem

In existing robot teaching devices, the robot's movement trajectory is predetermined by the user, which is insufficient from the perspective of optimality.

Method used

A teaching device and teaching program for a robot are provided. Through a setting unit and an output unit, the motion trajectory of the end effector and arm is exported while the position of the base is changed according to specified conditions. Combined with a display unit and a correction unit, the user can observe and correct the motion trajectory in the display unit.

Benefits of technology

It can export better robot motion trajectories to meet the user's optimal needs and shorten the movement time without causing the substrate to fall.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115803865B_ABST
    Figure CN115803865B_ABST
Patent Text Reader

Abstract

The present application provides a teaching device of a robot, which can derive an optimal motion trajectory of the robot. The teaching device (30) is a teaching device of a robot (10) having a base (11), an arm (12) having a plurality of links (12a), (12b) connected to each other and connected to the base (11), and a hand (13) connected to the arm (12). The teaching device (30) includes a setting section (351) that sets a prescribed condition including a start point and an end point of the hand (13) in a prescribed motion of the arm (12), and a deriving section (352) that derives a motion trajectory of the hand (13) from the start point to the end point and a motion trajectory of the arm (12) in response to the motion trajectory of the hand (13) while changing a position of the base (11) in accordance with the prescribed condition.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to a teaching device for robots and a teaching program for robots. Background Technology

[0002] To date, teaching devices for instructing robots to perform prescribed actions are well known. For example, the teaching device (operating device) disclosed in Patent Document 1 confirms the actions of a robot model by reproducing the actions of the robot model on a touch screen based on the action trajectory calculated from a set start point and end point.

[0003] Patent Document 1: Japanese Patent No. 6526098 Summary of the Invention

[0004] However, in the teaching device described above, the robot's motion trajectory is generated in advance based on the robot's position as determined by the user, which is insufficient from the point of view of optimality.

[0005] In view of the above, the purpose of the technology disclosed in this application is to provide a teaching device that can derive better robot motion trajectories.

[0006] The technology disclosed in this application is a teaching device for a robot having a base, an arm, and an end effector. The arm has multiple interconnected links and is connected to the base, and the end effector is connected to the arm. The robot teaching device includes a setting unit and a tracing unit. The setting unit sets predetermined conditions for the start point and end point of the end effector in a predetermined movement of the arm. The tracing unit, based on the predetermined conditions, traces the movement trajectory of the end effector from the start point to the end point, and the movement trajectory of the arm accompanying the movement trajectory, while changing the position of the base.

[0007] Other technologies disclosed in this application are teaching programs for robots having a base, an arm, and an end effector. The arm has multiple interconnected links and is connected to the base, and the end effector is connected to the arm. The robot's teaching program enables a computer to perform the following functions: setting predetermined conditions for the start and end points of the end effector in a predetermined movement of the arm; and, based on the predetermined conditions, deriving the movement trajectory of the end effector from the start point to the end point, and the movement trajectory of the arm in response to the movement trajectory of the end effector, while changing the position of the base according to the predetermined conditions.

[0008] (Invention Effects)

[0009] The robot's teaching device enables the generation of better motion trajectories for the robot (arm and end effector).

[0010] The robot's teaching program can be used to derive better motion trajectories for the robot (arm and end effector). Attached Figure Description

[0011] Figure 1 The diagram briefly shows the teaching device and the robot.

[0012] Figure 2 It is a block diagram showing the structure of the teaching device.

[0013] Figure 3 This is a flowchart showing the derived motion of the teaching pendant's motion trajectory.

[0014] Figure 4 This is a diagram showing an example of an image displayed on the display.

[0015] Figure 5 This is a diagram showing an example of an image displayed on the display.

[0016] Figure 6 This is a diagram showing an example of an image displayed on the display.

[0017] Figure 7 This is a diagram showing an example of an image displayed on the display.

[0018] Figure 8 This is a diagram showing an example of an image displayed on the display.

[0019] Figure 9 This is a diagram showing an example of an image displayed on the display.

[0020] Figure 10 This is a diagram showing an example of an image displayed on the display. Detailed Implementation

[0021] Hereinafter, the embodiments described herein will be explained in detail with reference to the accompanying drawings.

[0022] like Figure 1 As shown, the teaching pendant 30 of this embodiment is communicatively connected to the robot control device 20, and the robot control device 20 is communicatively connected to the robot 10. The teaching pendant 30 is a device for teaching the robot 10 a prescribed action.

[0023] Figure 1The robot 10 shown is an example of a robot for which the teaching pendant 30 is the object. Robot 10 is a horizontal articulated robot (scalar robot). Robot 10 has a base 11, an arm 12, and a hand 13. The arm 12 has multiple interconnected links 12a, 12b and is connected to the base 11. The hand 13 is connected to the arm 12. The arm 12 is rotatably connected to the base 11 in the horizontal direction. The hand 13 is an example of an end effector.

[0024] In this embodiment, the arm 12 is composed of two connecting rods 12a and 12b. The two connecting rods 12a and 12b are rotatably connected to each other in the horizontal direction. Starting from the base 11 side, the two connecting rods 12a and 12b are sequentially designated as the first connecting rod 12a and the second connecting rod 12b. The first connecting rod 12a is rotatably connected to the base 11 with a first axis L1 extending in the vertical direction as its center. The second connecting rod 12b is rotatably connected to the first connecting rod 12a with a second axis L2 extending in the vertical direction as its center.

[0025] Robot 10 has two hands 13, namely, an upper hand 13a and a lower hand 13b. The basic structure of each of the upper hand 13a and the lower hand 13b is identical. Each hand 13 is formed as a plate extending horizontally, with its front end forked. That is, when viewed in its thickness direction, the hand 13 forms a roughly Y-shape. The upper hand 13a and the lower hand 13b are rotatably connected horizontally to a second link 12b, centered on a third axis L3 extending vertically. The first axis L1, the second axis L2, and the third axis L3 extend parallel to each other.

[0026] The first link 12a, the second link 12b, the upper hand 13a, and the lower hand 13b are stacked from bottom to top in this order. The robot 10 has multiple motors that rotate to drive the two links 12a and 12b and the two hands 13 (not shown). In this embodiment, the robot 10 transports the object (substrate S) by placing it on the upper surface of the hand 13 without fixing it. That is, the object is simply placed on the upper surface of the hand 13 and is not held.

[0027] The robot 10 in this embodiment is used, for example, in a substrate transport system 1 for transporting substrate S. A brief description of the structure of the substrate transport system 1 is shown in the schematic diagram. Figure 6 The substrate transport system 1 will now be described.

[0028] The substrate transport system 1 includes a housing 2, within which a robot 10 is disposed. The substrate transport system 1 is, for example, an EFEM (Equipment Front End Module). The housing 2 is formed in a generally rectangular shape. The interior of the housing 2 is formed as a cleaned transport space 3. That is, the robot 10 is disposed in the transport space 3 to transport a substrate S. For example, the substrate S is a disk-shaped semiconductor wafer.

[0029] In the substrate transport system 1, multiple (two in this embodiment) front-opening unified pods (FOUPs) 4 and multiple (two in this embodiment) processing devices 5 are provided. The multiple front-opening pods 4 are disposed adjacent to one side wall of the housing 2. The multiple processing devices 5 are disposed adjacent to the side wall of the housing 2 opposite to the side wall adjacent to the front-opening pods 4. The front-opening pods 4 and the processing devices 5 are located on the outside of the housing 2, and their respective interiors are communicative with the interior of the housing 2 (transport space 3). The front-opening pods 4 hold multiple substrates S horizontally and at equal intervals in the vertical direction. The processing devices 5 are processing devices that perform various processes on the substrates S, such as heat treatment, impurity introduction treatment, and thin film formation treatment.

[0030] In the substrate transport system 1 configured as described above, a robot 10 transports a substrate S between a front-opening wafer transfer box 4 and a processing unit 5. The front-opening wafer transfer box 4 houses the substrate S, and the processing unit 5 processes the substrate S. In other words, an arm 12 and a hand 13 transport the substrate S between the front-opening wafer transfer box 4 and the processing unit 5.

[0031] <Structure of the teaching device>

[0032] like Figure 2 As shown, the teaching device 30 includes an input unit 31, a communication unit 32, a display unit 33, a storage unit 34, and a processing unit 35.

[0033] The input unit 31 accepts input operations from the user. The input unit 31 outputs an input signal in response to the input operation to the processing unit 35. For example, the input unit 31 is a keyboard or a mouse.

[0034] The communication unit 32 is an interface for communicating with the robot control device 20. For example, the communication unit 32 is formed by a cable modem, a soft modem, or a wireless modem.

[0035] Display unit 33 displays at least one of the motion trajectories of arm 12 and hand 13 derived by processing unit 35 (derivative unit 352), which will be described later. Furthermore, display unit 33 also displays a robot model after robot 10 has been modeled. Display unit 33 is, for example, a liquid crystal display or an organic EL display.

[0036] The storage unit 34 is a computer-readable storage medium that stores various programs and various data. The storage unit 34 is formed by a hard disk or other magnetic disk, a CD-ROM or DVD or other optical disk or semiconductor memory.

[0037] The storage unit 34 stores a trajectory export program 341, etc. The trajectory export program 341 is a teaching program used by the computer, i.e., the processing unit 35, to perform various functions, namely, exporting the optimal movement trajectory of the hand 13 and the movement trajectory of the arm 12 (i.e., links 12a, 12b) in response to the movement trajectory of the hand 13, based on given specified conditions. The trajectory export program 341 is read and executed by the processing unit 35. The trajectory export program 341 is constructed, for example, based on a genetic algorithm.

[0038] The processing unit 35 has various processors such as CPU (Central Processing Unit), GPU (Graphics Processing Unit), and / or DSP (Digital Signal Processor), and various semiconductor memories such as RAM (Random Access Memory) and / or ROM (Read Only Memory). The processing unit 35 reads trajectory export program 341 from the storage unit 34, and implements various functions for exporting the optimal motion trajectory of arm 12 and hand 13. The processing unit 35 has a setting unit 351, an export unit 352, a reproduction unit 353, a correction unit 354, and a motion program creation unit 355 as functional blocks.

[0039] The setting unit 351 sets the predetermined conditions (hereinafter also referred to as action conditions) for the start and end points of the hand 13 in the predetermined action including the arm 12. Specifically, the setting unit 351 receives an input signal from the input unit 31 related to the action conditions in response to the user's input operation, and sets the action conditions.

[0040] The export unit 352 exports the motion trajectory of the hand 13 from the starting point to the ending point and the motion trajectory of the arm 12 in response to the motion trajectory of the hand 13, based on the prescribed conditions (action conditions). More specifically, the export unit 352 exports the motion trajectory of the hand 13 from the starting point to the ending point and the motion trajectory of the arm 12 in response to the motion trajectory, based on the action conditions of the setting unit 351 and while changing the position of the base 11. In other words, the export unit 352 uses the position of the base 11 as one of the parameters to export the motion trajectory of the hand 13 and the motion trajectory of the arm 12 that match the action conditions. The export unit 352 reads the trajectory export program 341 from the storage unit 34 and exports the motion trajectory of the hand 13, etc.

[0041] The reproduction unit 353 moves the robot model in the display unit 33 according to the motion trajectory derived by the export unit 352. Specifically, the reproduction unit 353 moves the arm and hand of the robot model according to the motion trajectory of the hand 13 or the motion trajectory of the arm 12 displayed in the display unit 33. That is to say, the reproduction unit 353 can move the robot model in the display unit 33 according to the motion trajectory derived by the export unit 352, and it can also move the robot model in the display unit 33 according to the motion trajectory corrected by the correction unit 354, which will be described later.

[0042] The correction unit 354 corrects the motion trajectory displayed on the display unit 33 in response to user input. More specifically, the correction unit 354 corrects the motion trajectory in response to user input (correction instruction) that moves a point or base 11 displayed on the motion trajectory of the display unit 33. That is, the correction unit 354 corrects the motion trajectory by the user moving the point or base 11 displayed on the motion trajectory of the display unit 33. As an example, the input operation (correction instruction) is the user's operation (instruction) of moving the point or base 11 displayed on the motion trajectory of the display unit 33 by dragging and dropping.

[0043] After the motion trajectories of the hand 13 and arm 12 derived by the output unit 352 are determined, the motion program generation unit 355 generates a motion program to make the robot 10 move based on the determined motion trajectories of the hand 13 and arm 12. The generated motion program is sent to the robot control device 20. The robot control device 20 performs motion control of the robot 10 based on the motion program received from the teaching device 30.

[0044] <Derived Actions from Motion Trajectories>

[0045] Reference Figure 3 The flowchart explains the process of deriving the motion trajectory in the teaching device 30 (processing unit 35).

[0046] First, in step S1, the setting unit 351 sets the operable area of ​​the robot 10. Specifically, the setting unit 351 sets the operable areas of the arm 12 and the hand 13 through user input operations in the input unit 31. In this embodiment, the basket 2 (i.e., the transport space 3) on which the robot 10 is disposed is set as the operable area.

[0047] like Figure 4 As shown, the user manipulates the mouse, moving the mouse pointer Q in the display unit 33, for example, from the upper left to the lower right, to generate a quadrilateral frame (hereinafter referred to as frame 2) that models the frame 2. Therefore, the setting unit 351 sets the frame 2 displayed on the display unit 33 as an operable area.

[0048] It should be noted that the above-mentioned mouse operation can also be substituted. For example, the user can input coordinate values ​​using the keyboard to generate the quadrilateral frame that models the basket 2 in the display unit 33. In this case, for example, a coordinate input window is displayed in the display unit 33, and the user inputs the coordinate values ​​into the coordinate input window.

[0049] Next, in step S2, the setting unit 351 sets the start point and end point of the hand 13. Specifically, the setting unit 351 sets multiple (in this embodiment, four) teaching points P1 to P4 as the start point and end point of the hand 13 through user input operations in the input unit 31.

[0050] like Figure 5 as well as Figure 6 As shown, the user operates the mouse to specify four teaching points P1 to P4 in the display unit 33. Icons representing each teaching point P1 to P4 are prepared in the display unit 33, but are not illustrated. The user specifies the teaching points P1 to P4 by using the pointer Q to move the icons representing the teaching points P1 to P4 to the designated positions in the display unit 33. In this embodiment, for example, teaching point P1 is specified as the starting point, and teaching point P4 is specified as the ending point. Through this user input operation, the setting unit 351 sets the starting and ending points of the hand 13.

[0051] Furthermore, in the display unit 33, by having the user specify teach points P1 to P4 as described above, a diagram modeling the front-opening wafer transfer box 4 and the processing device 5 is automatically generated. In this embodiment, the front-opening wafer transfer box 4 is generated at the positions of teach points P1 and P2, and the processing device 5 is generated at the positions of teach points P3 and P4. It should be noted that in this step S2, the user can also specify teach points P1 to P4 on the display unit 33 by inputting coordinate values ​​using the keyboard instead of the mouse. In this case, after specifying teach points P1 to P4, a diagram modeling the front-opening wafer transfer box 4, etc., is also automatically generated on the display unit 33.

[0052] Next, in step S3, the setting unit 351 sets predetermined conditions (operation conditions) outside the operable area, the starting point, and the ending point of the hand 13. The setting unit 351 sets the predetermined conditions through user input in the input unit 31. The predetermined conditions (operation conditions) are, for example, the upper limit of the acceleration and deceleration (acceleration and deceleration during movement) of the hand 13, the upper limit of the speed of the arm 12 and the hand 13, the upper limit of the number of points passed from the starting point to the ending point, and the rotatable angles of the links 12a, 12b, and the hand 13.

[0053] Furthermore, the upper limit of the acceleration / deceleration of the hand 13 can be set to different values ​​when the substrate S is placed on the hand 13 and when the substrate S is not placed on the hand 13. That is, when the substrate S is placed on the hand 13, the upper limit of the acceleration / deceleration is limited to a lower value than when the substrate S is not placed on the hand 13. In addition, the specified conditions also include that the arm 12 and the hand 13 do not interfere with the wall of the housing 2. The user can appropriately select the specified conditions for input.

[0054] Next, in step S4, the robot model after robot 10 has been modeled is temporarily displayed on display unit 33. For example... Figure 6 As shown, the user operates the mouse to display the robot model on display unit 33. It should be noted that for... Figures 6-10 The robot model shown is labeled with... Figure 1 The symbol is the same as that for robot 10 shown. Then, the user operates the mouse to temporarily position the base 11 of robot 10 at any location on the display unit 33 using pointer Q. It should be noted that the temporary positioning of robot 10 can also be done by inputting coordinate values.

[0055] Next, in step S5, the export unit 352 exports the motion trajectory of the hand 13 from the starting point (teach point P1) to the ending point (teach point P4) and the motion trajectory of the arm 12 in response to the motion trajectory, according to the conditions specified by the setting unit 351. Specifically, the export unit 352 starts the motion trajectory export operation, for example, by the user pressing the "optimization button" (not shown) displayed on the display unit 33 using a mouse. The export unit 352 exports the motion trajectory of the hand 13 that matches the specified conditions and the motion trajectory of the arm 12 in response to the motion trajectory while changing the position of the base 11. Since the motion trajectory of the hand 13 is exported while the position of the base 11 is changed, a better motion trajectory can be exported compared to exporting the motion trajectory of the hand while keeping the position of the base fixed.

[0056] Furthermore, after the motion trajectory of the hand 13 is derived by the deriving unit 352, the display unit 33 displays at least one of the motion trajectories of the hand 13 and the arm 12 derived by the deriving unit 352. In this embodiment, as an example, such as... Figure 7 As shown, the display unit 33 displays the motion trajectory T of the hand 13 from the starting point (teach point P1) to the ending point (teach point P4). At this time, the robot 10 (base 11) is positioned in the display unit 33 as a parameter when deriving the motion trajectory T of the hand 13. In this way, by displaying the motion trajectory derived by the deriving unit 352 on the display unit 33, the user can visually confirm the motion trajectory.

[0057] Next, in step S6, the playback unit 353 causes the robot 10 to move on the display unit 33 according to the motion trajectory T displayed on the display unit 33. Specifically, the playback unit 353 causes the robot 10 to move on the display unit 33, for example, by the user pressing the "playback button" (not shown) displayed on the display unit 33 using a mouse. Figure 7 As shown, the reproduction unit 353 moves the arm 12 and hand 13 in the display unit 33 by moving the hand 13 from the starting point to the ending point along the motion trajectory T. In other words, the reproduction unit 353 moves the arm 12 and hand 13 in the display unit 33 according to the motion trajectory of the hand 13 and the motion trajectory of the arm 12 derived by the output unit 352. In this way, by having the arm 12 and hand 13 move according to the motion trajectory T in the display unit 33, the user can visually confirm the movement of the arm 12 and hand 13 according to the motion trajectory T.

[0058] Next, in step S7, the correction unit 354 determines whether there is a correction instruction from the user. If the user observes the movements of the arm 12 and hand 13 on the display unit 33 and feels that the movement is inappropriate or feels awkward, a correction instruction for the movement trajectory T is given to eliminate that movement. For example, if the user feels the movement is inappropriate when the arm 12 and hand 13 are very close to the wall of the basket 2, or when they see the arm 12 and hand 13 making futile movements, then the user visually judges the movements of the arm 12 and hand 13 and decides whether to give a correction instruction.

[0059] In step S7, when there is no user correction instruction, that is, when the user determines that the movements of the arm 12 and hand 13 in the display unit 33 are appropriate (and does not feel any discomfort with the movements of the arm 12 and hand 13), the correction unit 354 determines the movement trajectory T displayed on the display unit 33 as the optimal movement trajectory (step S8). At this time, the correction unit 354 also determines the movement trajectory of the arm 12 derived by the derivation unit 352, that is, the movement trajectory of the arm 12 in response to the movement trajectory T of the hand 13, as the optimal movement trajectory.

[0060] In this embodiment, when the user feels that the movements of the arm 12 and hand 13 in the display unit 33 are inappropriate (feeling a sense of disharmony with the movements of the arm 12 and hand 13), an input operation (correction instruction) is performed to move the point displayed in the movement trajectory T of the display unit 33. Specifically, as... Figure 8 As shown, the user operates the mouse and drags and drops a point displayed on the motion trajectory T of the display unit 33 to the desired position.

[0061] In step S7, when a correction instruction from the user is received, the process proceeds to step S9. In step S9, the correction unit 354 corrects the motion trajectory T displayed on the display unit 33. Specifically, the correction unit 354 corrects the motion trajectory T based on the movement information of the motion trajectory T according to the user's correction instruction, and displays the corrected new motion trajectory Ta on the display unit 33. At this time, the corrected motion trajectory Ta may be a correction of a part of the original motion trajectory T, or it may be a correction of the entire original motion trajectory T.

[0062] Furthermore, while correcting the movement trajectory T of the hand 13 displayed on the display unit 33, the correction unit 354 also corrects the movement trajectory of the arm 12. That is, the correction unit 354 corrects the movement trajectory of the arm 12 derived by the output unit 352 (i.e., the movement trajectory of the arm 12 in response to the movement trajectory T of the hand 13 before correction) to the movement trajectory Ta of the arm 12 after correction.

[0063] In this way, since the user can make correction instructions while observing the motion trajectory T displayed on the display unit 33, the motion trajectory T can be finely modified according to the user's wishes. Furthermore, the user can correct the motion trajectory T by simply moving a point displayed on the motion trajectory T on the display unit 33.

[0064] In step S9, after the correction unit 354 corrects the motion trajectory T, it returns to step S6. The reproduction unit 353 then moves the robot 10 on the display unit 33 according to the corrected motion trajectory Ta displayed on the display unit 33. In other words, the reproduction unit 353 moves the arm 12 and the hand 13 in such a way that the hand 13 moves from the starting point to the ending point along the corrected motion trajectory Ta on the display unit 33. Further, the reproduction unit 353 moves the arm 12 and the hand 13 on the display unit 33 according to the motion trajectory of the hand 13 and the arm 12 corrected by the correction unit 354. In this way, by having the arm 12 and the hand 13 move on the display unit 33 according to the corrected motion trajectory Ta, the user can visually confirm the movement of the arm 12 and the hand 13 based on the corrected motion trajectory Ta.

[0065] If a user provides a correction instruction again in step S7, that is, if the user performs an input operation (correction instruction) to move a point in the corrected motion trajectory Ta displayed on the display unit 33, the process returns to step S9. In other words, basically, the process from step S9 to step S6 is repeated as long as the user does not determine that the motion of the arm 12 and hand 13 reproduced by the reproduction unit 353 is appropriate. Furthermore, the user can continuously correct the motion trajectory of the hand 13 and the motion trajectory of the arm 12 until they feel that the motion of the arm 12 and hand 13 reproduced by the reproduction unit 353 is appropriate.

[0066] When there is no user correction instruction in step S7, that is, when the user determines that the movements of arm 12 and hand 13 based on the corrected motion trajectory Ta are appropriate (and do not feel any incongruity in the movements of arm 12 and hand 13), the correction unit 354 determines the corrected motion trajectory Ta displayed on the display unit 33 as the optimal motion trajectory (step S8). At this time, the correction unit 354 also determines the corrected motion trajectory of arm 12 (that is, the motion trajectory of arm 12 in response to the corrected motion trajectory Ta of hand 13) as the optimal motion trajectory. Through the above, the motion trajectory derivation process ends.

[0067] The motion program creation unit 355 creates a motion program that controls the robot 10 in real space based on the motion trajectories of the arm 12 and the hand 13 determined by the processing unit 35. Then, the motion program creation unit 355 sends the created motion program to the robot control device 20 via the communication unit 32. The robot control device 20 controls the robot 10 in real space based on the motion program received from the teaching device 30.

[0068] In this way, the motion trajectory of the robot 10 in real space is optimized under specified conditions (motion conditions). In this robot 10, it is desirable to minimize the movement time of the hand 13 from the starting point to the ending point. However, if this is not taken into account, the acceleration and deceleration of the hand 13 tends to increase, so the substrate S may fall off the hand 13. This concern is particularly pronounced when the robot 10, as in this embodiment, transports the substrate S by placing it on the upper surface of the hand 13 without fixing it. Therefore, by setting an upper limit value for the acceleration and deceleration of the hand 13 in the setting unit 351 to prevent the substrate S from falling off, the optimal motion trajectory with the shortest movement time of the hand 13 can be derived within the range that prevents the substrate S from falling off the hand 13.

[0069] As described above, the teaching pendant 30 of the above embodiment is a teaching device for a robot 10 having a base 11, an arm 12, and a hand 13 (end effector). The arm 12 has a plurality of interconnected links 12a and 12b and is connected to the base 11, and the hand 13 is connected to the arm 12. The teaching pendant 30 includes a setting unit 351 and an output unit 352. The setting unit 351 sets predetermined conditions for the start point and end point of the hand 13 in a predetermined action including the arm 12. The output unit 352, according to the predetermined conditions, outputs the motion trajectory of the hand 13 from the start point to the end point and the motion trajectory of the arm 12 in response to the motion trajectory of the hand 13 while changing the position of the base 11.

[0070] Furthermore, the trajectory export program 341 of the above embodiment is a teaching program for a robot 10 having a base 11, an arm 12, and a hand 13 (end effector). The arm 12 has multiple interconnected links 12a and 12b and is connected to the base 11, and the hand 13 is connected to the arm 12. The trajectory export program 341 enables the computer to perform the following functions: setting predetermined conditions for the start point and end point of the hand 13 in a predetermined action including the arm 12; and exporting the motion trajectory of the hand 13 from the start point to the end point and the motion trajectory of the arm 12 in response to the motion trajectory of the hand 13, while changing the position of the base 11 according to the predetermined conditions.

[0071] By using these structures, and taking the position of the base 11 as one of the parameters to derive the motion trajectories of the hand 13 and the arm 12, a better motion trajectories for the hand 13 and the arm 12 can be derived compared to existing methods that derive the hand's motion trajectory when the position of the base is fixed. In other words, it can be said that the optimal position of the base 11 can be derived.

[0072] Furthermore, the teaching device 30 of the above embodiment also includes a display unit 33 and a correction unit 354. The display unit 33 displays the movement trajectory of the hand 13 derived by the output unit 352, and the correction unit 354 responds to the user's input operation to correct the movement trajectory of the hand 13 displayed on the display unit 33.

[0073] According to the above structure, since the user can visually confirm the motion trajectory displayed on the display unit 33 while making correction instructions (input operation), the motion trajectory can be easily and subtly corrected according to the user's wishes.

[0074] Furthermore, the correction unit 354 corrects the movement trajectory of the hand 13 in response to a correction instruction (input operation) from a user that moves a point displayed on the movement trajectory of the hand 13 on the display unit 33.

[0075] Based on the above structure, users can make minor corrections to the motion trajectory by simply moving a point displayed on the motion trajectory of the display unit 33.

[0076] Furthermore, the teaching device 30 of the above embodiment also includes a playback unit 353, which makes the robot model (hand 13 and arm 12) move in the display unit 33 according to the motion trajectory exported by the export unit 352.

[0077] According to the above structure, since the user can make correction instructions (input operation) after observing the movements of the arm 12 and hand 13 reproduced by the reproduction unit 353, the movement trajectory can be further finely modified according to the user's wishes.

[0078] In particular, the reproduction unit 353 displays the motion trajectory T derived by the export unit 352 or the motion trajectory Ta corrected by the correction unit 354 on the display unit 33, causing the robot model (hand 13 and arm 12) to move. Therefore, the user can clearly visually confirm the correspondence between the motion trajectory T (motion trajectory Ta) and the robot model's movement, and can further refine the motion trajectory T (motion trajectory Ta) according to the user's wishes.

[0079] Furthermore, the user's correction instruction (input operation) is an instruction for the user to move a point displayed on the motion trajectory of the display unit 33 by dragging and dropping.

[0080] Based on the above structure, the motion trajectory can be corrected more easily.

[0081] Furthermore, robot 10 is a robot that transports the substrate S (object) by placing it on the upper surface of hand 13 without fixing it. The specified conditions set in setting unit 351 include an upper limit value for the acceleration and deceleration of hand 13.

[0082] Based on the above structure, the optimal motion trajectory with the shortest movement time from the starting point to the ending point of the hand 13 can be derived within the range that prevents the substrate S from falling off the hand 13.

[0083] Furthermore, as described in the above embodiment, when considering a robot 10 with two hands 13 as end effectors, the derivation unit 352 also considers the postures of the two hands 13 at the starting point and ending point (i.e., the front-opening wafer transfer box 4 and the processing device 5) to derive the motion trajectory of the hands 13. For example, the postures of the two hands 13 may include states such as: the upper hand 13a entering the front-opening wafer transfer box 4 while the lower hand 13b does not enter the front-opening wafer transfer box 4 but rotates 90 degrees to the right or left; the lower hand 13b entering the front-opening wafer transfer box 4 while the upper hand 13a does not enter the front-opening wafer transfer box 4 but rotates 90 degrees to the right or left; and both the upper hand 13a and the lower hand 13b entering the front-opening wafer transfer box 4. Because the postures of the two hands 13 at the starting point and ending point are also considered, a better motion trajectory of the hands 13 can be derived.

[0084] (Other implementation methods)

[0085] As described above, the embodiments have been presented as examples of the technology disclosed in this application. However, the technology disclosed herein is not limited to this and can be applied to embodiments with appropriate modifications, substitutions, additions, omissions, etc. Furthermore, the various constituent elements described in the embodiments can be combined to form new embodiments. Moreover, the constituent elements described in the drawings and detailed descriptions include not only those necessary to solve the problem, but also, for the purpose of illustrating the technology, constituent elements that are not necessary to solve the problem. Therefore, one should not immediately assume that those non-essential constituent elements are essential simply because they are described in the drawings and detailed descriptions.

[0086] In the described embodiment, the guide unit 352 can also guide the movement trajectory of the hand 13 from the starting point to the ending point, and the movement trajectory of the arm 12 in response to the movement trajectory of the hand 13, by changing the lengths of the connecting rods 12a and 12b of the arm 12, in addition to changing the position of the base 11. According to this structure, since the lengths of the connecting rods 12a and 12b are also used as parameters to guide the movement trajectory of the hand 13, a better movement trajectory of the hand 13 and the arm 12 can be derived. In other words, a better length of the connecting rods 12a and 12b can be derived.

[0087] Furthermore, in the described embodiment, the tracing unit 352 can also traverse the motion trajectory of the hand 13 from the starting point to the ending point, and the motion trajectory of the arm 12 in response to the motion trajectory of the hand 13, while changing the orientation of the base 11 (i.e., the orientation of the robot 10) in addition to the position of the base 11. According to this structure, since the orientation of the base 11 is also used as a parameter to traverse the motion trajectory of the hand 13, etc., better motion trajectories of the hand 13 and the arm 12 can be derived. In other words, the optimal orientation of the base 11 can be derived.

[0088] Furthermore, in the above embodiment, the exporting unit 352 may display both the exported movement trajectory of the hand 13 and the movement trajectory of the arm 12 on the display unit 33, or it may display only the movement trajectory of the arm 12 on the display unit 33.

[0089] Furthermore, in the described embodiment, the correction unit 354 can also correct the motion trajectory in response to a correction instruction (input operation) from a user who moves the base 11 displayed on the display unit 33. For example, the user might use a mouse to move the base 11 displayed on the display unit 33 by dragging and dropping, thus providing a correction instruction.

[0090] Furthermore, in the described embodiments, such as Figure 9 As shown, the motion trajectory T derived by the export unit 352 can also be formed as a trajectory connecting multiple passing points X. In that case, the points in the motion trajectory T moved by the user's correction instruction (input operation) are passing points X. For example, when the setting unit 351 sets "multiple passing points" as a specified condition, the export unit 352 exports the optimal motion trajectory T of the hand 13 that includes multiple passing points X, and displays it on the display unit 33. For example, the passing points X are displayed as larger than other points in the motion trajectory T.

[0091] At this time, if the user feels that the movements of the arm 12 and hand 13 reproduced by the reproduction unit 353 are not appropriate, for example, the user can make a correction instruction (input operation) by dragging and dropping to move the passing point X displayed on the movement trajectory T of the display unit 33 (see reference). Figure 9 The correction unit 354, in response to the user's correction instruction, corrects the motion trajectory T displayed on the display unit 33. That is, the correction unit 354 corrects the motion trajectory T based on the movement information of the passing point X according to the user's correction instruction, specifically the position information of the passing point Xa after the movement of passing point X, and displays the corrected new motion trajectory Ta on the display unit 33. The corrected motion trajectory Ta includes the moved passing point Xa.

[0092] According to this structure, the user can easily determine the point that should be moved in the motion trajectory T displayed on the display unit 33. Furthermore, since there are fewer points that can be moved in the motion trajectory T, the amount of processing required for the correction unit 354 to make corrections is reduced.

[0093] Furthermore, in the described embodiment, the correction unit 354 can also correct the motion trajectory T displayed on the display unit 33 in response to a correction instruction (input operation) from a user that causes the arm 12 (i.e., linkages 12a, 12b) displayed on the display unit 33 to move. That is, as... Figure 10 As shown, the user, for example, operates a mouse to make a correction instruction (input operation) to move the second link 12b displayed on the display unit 33 by dragging and dropping. The correction unit 354 corrects the motion trajectory T based on the movement information of the second link 12b based on the user's correction instruction, and displays the corrected new motion trajectory (not shown) on the display unit 33. For example, the movement information of the second link 12b includes the position information of the second link 12b after movement, the position information of the hand 13 that moves along with the movement of the second link 12b, etc.

[0094] Furthermore, in the described embodiment, the reproduction unit 353 may be omitted. In that case, the user observes the motion trajectory displayed on the display unit 33 to decide whether to issue a correction instruction. Also, the display unit 33 and the correction unit 354 may be omitted.

[0095] Furthermore, the user's correction instructions (input operations) are not limited to instructions made through mouse operations. For example, the user can also move the motion trajectory displayed on the display unit 33 by inputting coordinate values ​​using the keyboard.

[0096] Furthermore, the reproduction unit 353 may move the robot model (hand 13 and arm 12) without displaying the motion trajectory T derived by the export unit 352 or the motion trajectory Ta corrected by the correction unit 354 on the display unit 33.

[0097] Furthermore, the setting unit 351 can also set the presence or absence of substrate S in the two hands 13 as a predetermined condition. In this case, four modes of conditions are set in response to the presence or absence of substrate S in the two hands 13. These are: "Substrate S is present in the upper hand 13a, but not in the lower hand 13b"; "Substrate S is absent in the upper hand 13a, but present in the lower hand 13b"; "Substrate S is present in each of the upper hand 13a and the lower hand 13b"; and "Substrate S is absent in each of the upper hand 13a and the lower hand 13b". The output unit 352 outputs the optimal motion trajectory according to each of these four modes of conditions and displays it on the display unit 33. The user selects one motion trajectory from the four, and for the selected motion trajectory, correction instructions are given as needed.

[0098] (Explanation of symbols)

[0099] 10 – Robot; 11 – Base; 12 – Arm; 12a – First Link (Link); 12b – Second Link (Link); 13 – Hand (End Effector); 30 – Teaching Pendant; 33 – Display Unit; 341 – Trajectory Export Program (Teaching Program); 351 – Setting Unit; 352 – Export Unit; 353 – Reproduction Unit; 354 ​​– Correction Unit; T – Motion Trajectory; Ta – Motion Trajectory; X – Passing Point; Xa – Passing Point.

Claims

1. A teaching device for a robot, the robot having a base, an arm, and an end effector, the arm having a plurality of interconnected links and connected to the base, the end effector being connected to the arm, characterized in that: The robot's teaching device includes a setting unit and an output unit. The setting unit sets the specified conditions for the start point and end point of the end effector in the specified action of the arm. The output unit takes the position of the base as one of the parameters and, while changing the position of the base, outputs the motion trajectory of the end effector that matches the specified conditions and the motion trajectory of the arm that responds to the motion trajectory of the end effector.

2. The robot teaching device according to claim 1, characterized in that: The output section, while changing the orientation of the base, outputs the motion trajectory of the end effector from the starting point to the ending point, and the motion trajectory of the arm in response to the motion trajectory of the end effector.

3. The teaching device for a robot according to claim 1 or 2, characterized in that: The output section, while changing the link length of the arm, outputs the motion trajectory of the end effector from the starting point to the ending point, and the motion trajectory of the arm in response to the motion trajectory of the end effector.

4. The teaching device for a robot according to claim 1 or 2, characterized in that: The robot's teaching device further includes a display unit and a correction unit. The display unit displays at least one of the motion trajectory of the arm and the motion trajectory of the end effector derived by the output unit. The correction unit corrects the motion trajectory displayed on the display unit according to the user's input operation.

5. The robot teaching device according to claim 4, characterized in that: The display unit also displays a robot model that represents the robot's model. The correction unit corrects the motion trajectory according to the input operation that moves the point or the base displayed on the motion trajectory of the display unit.

6. The robot teaching device according to claim 5, characterized in that: The motion trajectory derived by the derived unit is formed as a trajectory connecting multiple passing points. The point in the trajectory of the action moved by the input operation is the point passed through.

7. The robot teaching device according to claim 5, characterized in that: The robot's teaching device also includes a playback unit, which makes the robot model move in the display unit according to the motion trajectory exported by the export unit.

8. The robot teaching device according to claim 5, characterized in that: The input operation is the user's operation of dragging and dropping to move a point or the base displayed on the display unit along the motion trajectory.

9. The teaching device for a robot according to claim 1 or 2, characterized in that: The robot is one that transports objects by placing them on the upper surface of the end effector without fixing them in place. The specified conditions include an upper limit on the acceleration or deceleration of the end effector.

10. A teaching program for a robot, the robot having a base, an arm, and an end effector, the arm having a plurality of interconnected links and connected to the base, the end effector being connected to the arm, characterized in that: The robot's teaching program enables the computer to perform the following functions: The function of setting the predetermined conditions for the start and end points of the end effector in a predetermined action involving the arm, and Using the position of the base as one of the parameters, the function is to derive the motion trajectory of the end effector that matches the specified conditions and the motion trajectory of the arm that responds to the motion trajectory of the end effector while changing the position of the base.

Citation Information

Patent Citations

  • Robot track generation method, robot track generation device, and manufacturing method

    JP2019193975A

  • Robot teaching method and robot teaching system

    WO2019208785A1