Teaching support device, teaching support method, and teaching support program
The teaching support device addresses the inefficiency of existing systems by allowing users to visually confirm if a robot model reaches a target position, thereby reducing the time needed for confirmation and enhancing user efficiency.
Patent Information
- Application Number
- PCT/JP2024/030093
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-09-14
- Filing Date
- 2024-08-23
- Publication Date
- 2025-03-20
AI Technical Summary
Existing teaching support devices for robots require users to repeatedly set starting and target points to check if a robot model can reach a target position, increasing the time required for confirmation.
A teaching support device that displays a robot model with an arm and end effector, allowing users to set and accept the robot's position, derive the attitude of the robot to reach a target position, and visually distinguish whether the end effector reaches the target position, thereby reducing the time needed for confirmation.
The device significantly shortens the time required to determine if a robot model can reach a target position, allowing users to efficiently check multiple target positions and adjust the robot's position accordingly.
Smart Images

Figure JP2024030093_20032025_PF_FP_ABST
Abstract
Description
Teaching support device, teaching support method, and teaching support program
[0001] The technology disclosed herein relates to a teaching assistance device, a teaching assistance method, and a teaching assistance program.
[0002] There have been known teaching support devices for confirming the posture of a robot. For example, a teaching support device disclosed in Patent Document 1 confirms the motion of a robot model by replaying the motion of the robot model on a touch screen based on a motion trajectory determined from a set start point and end point.
[0003] Patent No. 6526098
[0004] In the teaching assistance device described above, the user sets one start point and one end point for the robot model, and then displays the robot model's motion. Here, the user may want to change the position of the robot model in various ways and check whether the changed robot model can reach a target position, which is the end point. In this case, the user must set the start point and the target position and check the robot model's motion every time the position of the robot model is changed. This increases the time required to check whether the robot model can reach the target position.
[0005] The technology disclosed herein has been made in consideration of the above points, and its purpose is to reduce the time required to check whether or not a robot model can reach a target position.
[0006] The teaching support device disclosed herein is a teaching support device that displays on a display an image of a robot model having an arm and an end effector connected to the arm, and is equipped with a setter that sets a robot model that models the robot and a target position of the end effector of the robot model, a receiver that receives the position of the robot model, a deriver that derives the posture of the robot model as the end effector moves to the target position, a determiner that determines whether or not the end effector will reach the target position based on the derivation result of the deriver, and an image generator that generates an image of the target position and the robot model and outputs the generated image to the display, and when the receiver receives the position of the robot model, the determiner causes the image generator to display the target position, distinguishing whether or not the end effector will reach the target position.
[0007] The teaching assistance method disclosed herein is a teaching assistance method for displaying on a display an image of a model of a robot having an arm and an end effector connected to the arm, and includes the steps of: setting a robot model that models the robot and a target position of the end effector of the robot model; receiving the position of the robot model; deriving an attitude of the robot model that moves the end effector to the target position; determining whether or not the end effector will reach the target position based on the derived attitude of the robot model; and, when the position of the robot model is received, distinguishing whether or not the end effector will reach the target position and displaying the target position; generating an image of the target position and the robot model; and outputting the generated image to the display.
[0008] The teaching assistance program disclosed herein is a teaching assistance program that displays on a display an image of a model of a robot having an arm and an end effector connected to the arm, and causes a computer to realize the following functions: a function of setting a robot model that models the robot and a target position of the end effector of the robot model; a function of accepting the position of the robot model; a function of deriving the posture of the robot model that will cause the end effector to move to the target position; a function of determining whether the end effector will reach the target position based on the derived posture of the robot model, and, when the position of the robot model is accepted, a function of distinguishing whether the end effector will reach the target position and displaying the target position; and a function of generating an image of the target position and the robot model, and outputting the generated image to the display.
[0009] According to the teaching assistance device, the teaching assistance method, and the teaching assistance program, it is possible to reduce the time required to check whether the robot model can reach the target position.
[0010] FIG. 1 is a schematic diagram showing a teaching support system including a teaching support device according to an embodiment. FIG. 2 is a schematic diagram showing a robot used in a clean room. FIG. 3 is a block diagram showing the configuration of the teaching support device. FIG. 4 is a diagram showing images of each model displayed on a display. FIG. 5 is a flowchart showing the operation of the teaching support device. FIG. 6 is a diagram showing an image including a housing model with initial specifications. FIG. 7 is a diagram showing an image of a robot model in a target posture corresponding to a target position P2. FIG. 8 is a diagram showing an image of a robot model in a target posture corresponding to a target position P1. FIG. 9 is a diagram showing an image of a robot model exceeding its operating limit. FIG. 10 is a diagram showing an image when the position of the robot model is changed. FIG. 11 is a diagram showing an image of a robot model in a target posture corresponding to a target position P1. FIG. 12 is a diagram showing an image of a robot model in a target posture corresponding to a target position P3. FIG. 13 is a diagram showing an example of an image displayed on a display in a teaching support device according to Modification 1. FIG. 14 is a block diagram showing the configuration of a teaching support device according to Modification 2. FIG. 15 is a diagram showing an image before the type of robot model is changed. FIG. 16 is a diagram showing an image after the position of the robot model is changed. FIG. 17 shows three-dimensional images of each model displayed on the display.
[0011] An exemplary embodiment will be described in detail below with reference to the drawings. Fig. 1 is a schematic diagram showing a teaching support system 20 including a teaching support device 30 according to an embodiment. The teaching support system 20 is used to determine the layout of a location where a robot will be used based on an image of a robot model, etc. The teaching support system 20 includes the teaching support device 30, a display 21, and a mouse 22.
[0012] The teaching support device 30 generates an image of the robot model, etc., and displays the generated image on the display 21. The display 21 displays the image upon receiving a signal from the teaching support device 30. The display 21 is, for example, a liquid crystal display or an organic EL display. The mouse 22 receives an input operation from a user. The mouse 22 outputs a signal corresponding to the input operation to the teaching support device 30. The mouse 22 is an example of an input device.
[0013] FIG. 2 is a schematic diagram showing a robot 10 used in the clean room 1. The robot 10 shown in FIG. 2 is an example of a robot targeted by the teaching support device 30. The robot 10 is a horizontally articulated robot (SCARA robot). The robot 10 has a base 11, an arm 12 connected to the base 11, and a hand 14 connected to the arm 12. The arm 12 is connected to the base 11 so as to be rotatable in the horizontal direction. The arm 12 has a plurality of links 13 connected to each other. The hand 14 is an example of an end effector.
[0014] The arm 12 is composed of two links 13. The two links 13 are connected to each other so as to be rotatable in the horizontal direction. The two links 13 are, in order from the base 11 side, a first link 13a and a second link 13b. The first link 13a is connected to the base 11 so as to be rotatable around a first axis L1 extending in the vertical direction. The second link 13b is connected to the first link 13a so as to be rotatable around a second axis L2 extending in the vertical direction. When there is no need to distinguish between the first link 13a and the second link 13b, they will be simply referred to as "links 13."
[0015] The robot 10 has two hands 14, i.e., a first hand 14a and a second hand 14b. The first hand 14a is an example of a first end effector, and the second hand 14b is an example of a second end effector. The first hand 14a is located lower than the second hand 14b. The first hand 14a and the second hand 14b have the same basic configuration. The hand 14 has a plate-like shape extending horizontally, and the tip of the hand 14 is bifurcated. In other words, the shape of the hand 14 is approximately Y-shaped when viewed in its thickness direction. The first hand 14a and the second hand 14b are connected to the second link 13b so as to be rotatable horizontally around a third axis L3 extending vertically. The first axis L1, the second axis L2, and the third axis L3 extend parallel to one another. When there is no need to distinguish between the first hand 14a and the second hand 14b, they will be simply referred to as "hands 14."
[0016] The first link 13a, the second link 13b, the first hand 14a, and the second hand 14b are stacked in this order from bottom to top. Although not shown, the robot 10 has a plurality of motors that rotate the two links 13 and the two hands 14. The robot 10 transports a substrate S as an object by placing it on the upper surface of the hand 14 without fixing it thereto. In other words, the object is simply placed on the upper surface of the hand 14 and is not fixed thereto.
[0017] The clean room 1 includes a housing 2, and a robot 10 is disposed within the housing 2. The clean room 1 is used, for example, for an EFEM (Equipment Front End Module). The housing 2 is substantially rectangular parallelepiped. The interior of the housing 2 is a clean space. The robot 10 transports a substrate S within the clean room 1. For example, the substrate S is a disk-shaped semiconductor wafer.
[0018] A plurality of FOUPs (Front Opening Unified Pods) 4 and a plurality of processing devices 5 are attached to the housing 2 from the outside of the housing 2. In this example, three FOUPs 4 and two processing devices 5 are provided in the housing 2. The plurality of FOUPs 4 are arranged on one side wall of the housing 2. The plurality of processing devices 5 are arranged on the side wall of the housing 2 opposite the side wall on which the FOUPs 4 are arranged. The interiors of the FOUPs 4 and the processing devices 5 can communicate with the interior of the housing 2. The FOUP 4 accommodates substrates S. The FOUP 4 accommodates, for example, a plurality of substrates S horizontally and spaced equally apart in the vertical direction. The processing devices 5 process the substrates S. The processing devices 5 are processing devices that perform various processes on the substrates S, such as heat treatment, impurity introduction processing, and thin film formation processing.
[0019] The robot 10 transports the substrate S between the FOUP 4 and the processing device 5. That is, the arm 12 and the hand 14 transport the substrate S between the FOUP 4 and the processing device 5. The areas inside the housing 2, the FOUP 4, and the processing device 5 correspond to the operable area of the robot 10.
[0020] An obstruction 6 may be placed inside the housing 2. The obstruction 6 may be static or dynamic. The static obstruction 6 is, for example, a stationary obstruction such as a pillar, a screw, or a wiring cover. The dynamic obstruction 6 is, for example, a moving obstruction such as another robot or a shutter.
[0021] The teaching support device 30 displays on the display 21 an image of a model of the robot 10 having an arm 12 and a hand 14 connected to the arm 12. The teaching support device 30 displays on the display 21 an image of a target position of the hand of the model of the robot 10. At this time, the teaching support device 30 displays the target position in a differentiated manner depending on whether or not the hand of the model of the robot 10 reaches the target position. FIG. 3 is a block diagram showing the configuration of the teaching support device 30. The teaching support device 30 has a storage device 31, a processor 32, and a memory 33.
[0022] The processor 32 performs various types of arithmetic processing. For example, the processor 32 is formed of a processor such as a CPU (Central Processing Unit). The processor 32 may be formed of an MCU (Micro Controller Unit), an MPU (Micro Processor Unit), an FPGA (Field Programmable Gate Array), a PLC (Programmable Logic Controller), a system LSI, or the like.
[0023] The memory 31 stores various programs and various data executed by the processor 32. The memory 31 is formed of a non-volatile memory, a hard disk drive (HDD), a solid state drive (SSD), or the like. The memory 31 stores control programs such as a teaching assistance program 311. The teaching assistance program 311 is a teaching assistance program that causes a computer, i.e., the teaching assistance device 30, to realize various functions for generating images such as a model of the robot 10 to be displayed on the display 21. The teaching assistance program 311 is constructed, for example, based on a genetic algorithm.
[0024] The memory 33 temporarily stores data, etc. For example, the memory 33 is formed of a volatile memory.
[0025] The processor 32 realizes various functions by reading out control programs such as the teaching assistance program 311 from the storage unit 31 and expanding them in the memory 33. Specifically, the processor 32 has a setter 321, a receiver 322, a deriving unit 323, an image generator 324, and a determiner 325 as functional blocks.
[0026] The setter 321 sets a robot model 10m that models the robot 10, a hoop model 4m that models the hoop 4, and a processing device model 5m that models the processing device 5. The setter 321 further sets a prohibited area that is not the operating area of the robot model 10m. The setter 321 sets a housing model 2m that models the housing 2 and an interference model 6m that models the interference object 6 as prohibited areas. In detail, the inside of the housing model 2m is the operating area, and the outside of the housing model 2m is the prohibited area. The inside of the interference model 6m is the prohibited area. Each model will now be described. Figure 4 is a schematic diagram showing an image of each model displayed on the display 21. The image shown in Figure 4 corresponds to the layout shown in Figure 2.
[0027] The robot model 10m includes elements that model the arm 12m and hand 14 of the robot 10. Each element of the robot model 10m is assigned a symbol that adds "m" to the symbol of the corresponding element of the robot 10. That is, the robot model 10m has an arm 12m and a hand 14m. The arm 12m includes a link 13m, which, with reference to FIG. 7, includes a first link 13am and a second link 13bm. With reference to FIG. 7, the hand 14m includes a first hand 14am and a second hand 14bm. The robot model 10m also includes a substrate Sm placed on the hand 14m. The substrate Sm is placed on each of the first hand 14am and the second hand 14bm. The robot model 10m does not include the base 11 of the robot 10. When the first link 13am and the second link 13bm are not to be distinguished from each other, they are simply referred to as "link 13m." When there is no need to distinguish between the first hand 14am and the second hand 14bm, they will simply be referred to as "hands 14m."
[0028] The position of the robot model 10m is defined, for example, by the position of the first axis L1, which is the center of rotation of the first link 13am. Note that the position of the robot model 10m may be defined by the position of a corner of the first link 13am, or, if the base 11 of the robot 10 is modeled, by the position of the modeled base.
[0029] The housing model 2m models the side wall of the housing 2, i.e., the planar shape of the housing 2. The interference model 6m models the planar shape of the interference object 6.
[0030] The hoop model 4m models the side peripheral wall of the hoop 4, i.e., the planar shape of the hoop 4. Target positions P1, P2, and P3 are set inside each of the three hoop models 4m. Each of the target positions P1, P2, and P3 is a target position of the hand 14m in the hoop model 4m. In this example, the position of the hand 14m is defined by the center position of the substrate Sm placed on the hand 14m, and the target position of the hand 14m in the hoop model 4m is defined by the center position of the substrate Sm housed in the hoop model 4m. In other words, the position of the hand 14m when the substrate Sm in the hoop model 4m is placed on the hand 14m is the target position of the hand 14m in the hoop model 4m.
[0031] The processing apparatus model 5m models the side walls of the processing apparatus 5, i.e., the planar shape of the processing apparatus 5. Target positions P4 and P5 are set inside each of the two processing apparatus models 5m. Each of the target positions P4 and P5 is a target position of the hand 14m in the processing apparatus model 5m. In this example, the position of the hand 14m is defined by the center position of the substrate Sm placed on the hand 14m, and the target position of the hand 14m in the processing apparatus model 5m is defined by the center position of the substrate Sm accommodated in the processing apparatus model 5m. In other words, the position of the hand 14m when the substrate Sm in the processing apparatus model 5m is placed on the hand 14m is the target position of the hand 14m in the processing apparatus model 5m.
[0032] The setter 321 further sets a plurality of waypoints. The waypoints are positions through which the hand 14m passes before reaching the target position. In this example, the hand 14m waits at the waypoints before reaching each of the FOUP model 4m and the processing device model 5m. Specifically, since the FOUP 4 and the processing device 5 in the actual clean room 1 have shutters, the hand 14 waits at the waypoints until the shutters open. Waypoints are also set for the FOUP model 4m and the processing device model 5m so as to correspond to the waypoints of the FOUP 4 and the processing device 5.
[0033] The via position of the hand 14m immediately before the hoop model 4m is defined by the center position of the substrate Sm placed on the hand 14m waiting immediately before the hoop model 4m. The via position of the hand 14m immediately before the processing device model 5m is defined by the center position of the substrate Sm placed on the hand 14m waiting immediately before the processing device model 5m. In other words, the via position is defined by the center position of the waiting area 40 where the substrate Sm waits immediately before the hoop model 4m and the processing device model 5m. The waiting area 40 is disposed at a position facing each of the hoop model 4m and the processing device model 5m.
[0034] The setter 321 sets the specifications (parameters) of each model when setting the model. Specifically, with regard to the specifications of the housing model 2m, the setter 321 sets the position of the housing, the planar shape, the number of side walls, the size of the side walls, etc. With regard to the specifications of the robot model 10m, the setter 321 sets the relative position of the robot model 10m with respect to the housing model 2m, the number of links 13m, the length of the links 13m, the number of hands 14m, the size and shape of the hands 14m, etc. With regard to the specifications of the hoop models 4m, the setter 321 sets the number, size, shape, and relative position of the hoop models 4m with respect to the housing model 2m, etc. With regard to the specifications of the processing device models 5m, the setter 321 sets the number, size, shape, and relative position of the processing device models 5m with respect to the housing model 2m, etc. With regard to the specifications of the interference object models 6m, the setter 321 sets the number, size, shape, and relative position of the interference object models 6m with respect to the housing model 2m, etc. The setting device 321 sets the specifications of the waiting areas 40, such as the quantity, size, shape, and relative position of the waiting areas 40 with respect to the housing model 2m, based on the specifications of the hoop model 4m and the processing device model 5m.
[0035] The specifications of each model include changeable specifications. The setter 321 can change at least one of the specifications of each model described above. For example, the setter 321 can change the number of links 13m or the length of the links 13m for the robot model 10m. The setter 321 changes the changeable specifications in response to input from the user. The input from the user regarding the specifications of each model is input to the receiver 322. The setter 321 sets the specifications of each model in response to the input regarding the specifications received by the receiver 322. If there is no input from the user regarding the changeable specifications, the setter 321 sets the changeable specifications to their initial settings.
[0036] The image generator 324 generates an image of the robot model 10m and outputs the generated image to the display 21. Specifically, the image generator 324 generates images of the robot model 10m, as well as the housing model 2m, the hoop model 4m, the processing device model 5m, the interfering object model 6m, and the waiting area 40. At this time, the image generator 324 generates an image of the model set by the setter 321. The generated image is displayed on the display 21.
[0037] The receiver 322 receives the position of the robot model 10m, for example, the position of the first axis L1 of the robot model 10m. The setter 321 sets the position of the robot model 10m received by the receiver 322. Specifically, the receiver 322 receives input regarding the position of the robot model 10m from the user via the mouse 22. The input of the position of the robot model 10m also includes a change to the position of the robot model 10m that has already been set. When the receiver 322 receives a change to the position of the robot model 10m, the setter 321 updates the position of the robot model 10m to the changed position.
[0038] For example, an image generated by the image generator 324 is displayed on the display 21. The image includes a robot model 10m. The user operates the mouse 22 to select and drag the robot model 10m with a pointer Q displayed on the display 21. The acceptor 322 accepts the drag operation on the robot model 10m via the mouse 22 as an input of the position of the robot model 10m. According to the drag operation, the position of the robot model 10m is continuously changed, and therefore the drag operation on the robot model 10m by the mouse 22 is a continuous change of the position of the robot model 10m.
[0039] The deriver 323 derives the posture of the robot model 10m when the hand 14m moves to each of the multiple target positions. In other words, the deriver 323 derives the motion trajectory of the robot model 10m until the hand 14m moves to each of the multiple target positions. Hereinafter, the "posture of the robot model 10m when the hand 14m moves to the target position" will also be referred to as the "motion trajectory of the robot model 10m."
[0040] Specifically, the deriver 323 derives the motion trajectory of the robot model 10m in which the hand 14m passes through the waiting area 40 as a waypoint. The motion trajectory of the robot model 10m is, for example, a collection of the robot models 10m in which the hand 14m moves from a starting point to a target position. The starting point is, for example, the initial position of the hand 14m in the initial posture of the robot model 10m.
[0041] The deriver 323 derives the motion trajectory of the robot model 10m within the area of the housing model 2m, the hoop model 4m, and the processing device model 5m. The deriver 323 derives the motion trajectory of the robot model 10m in consideration of conditions such as the possible rotation angles of the first link 13am, the second link 13bm, the first hand 14am, and the second hand 14bm.
[0042] In deriving the motion trajectory of the robot model 10m, the deriver 323 derives a motion trajectory of the robot model 10m that does not interfere with the prohibited area and does not exceed the motion limits of the robot model 10m. However, if the deriver 323 cannot derive a motion trajectory of the robot model 10m that does not interfere with the prohibited area, the deriver 323 derives a motion trajectory of the robot model 10m that does interfere with the prohibited area. Furthermore, if the deriver 323 cannot derive a motion trajectory of the robot model 10m that does not exceed the motion limits of the robot model 10m, the deriver 323 derives a motion trajectory of the robot model 10m that exceeds the motion limits of the robot model 10m.
[0043] The motion limits of the robot model 10m are due to the inherent capabilities or properties of the robot 10. The motion limits of the robot model 10m are determined, for example, by the allowable angles of each joint of the robot 10, i.e., the allowable angles of each joint of the robot model 10m. Specifically, there are motion limits of the arm 12m and the hand 14m. The motion limit of the arm 12m occurs, for example, when the motion angles of the two links 13am and 13bm of the arm 12m exceed the allowable range. The motion limit of the hand 14m occurs, for example, when the motion angles of the two hands 14am and 14bm exceed the allowable range.
[0044] When deriving the motion trajectory of the robot model 10m, the deriver 323 derives the posture of the robot model 10m when the hand 14m is located at the target position and the posture of the robot model 10m when the hand 14m is waiting at the intermediate position. Hereinafter, the "posture of the robot model 10m when the hand 14m is located at the target position" will also be simply referred to as the "target posture." The "posture of the robot model 10m when the hand 14m is waiting at the intermediate position" will also be simply referred to as the "waiting posture." In other words, the motion trajectory of the robot model 10m includes the robot model 10m in the target posture and the robot model 10m in the waiting posture.
[0045] Specifically, the deriver 323 derives, as the target posture of the robot model 10m, the posture of the robot model 10m when the first hand 14am is located at the target position and the second hand 14bm is located at a predetermined position within the motion area. The deriver 323 derives, as the standby posture of the robot model 10m, the posture of the robot model 10m when the first hand 14am is located at the intermediate position and the second hand 14bm is located at a predetermined position within the motion area.
[0046] Here, in the actual clean room 1, the posture of the hand 14 when entering the FOUP 4 or processing device 5 from the intermediate position is fixed. For example, the posture of the hand 14 when entering is a posture in which the tip of the hand 14 faces the direction of travel and the longitudinal direction of the hand 14 coincides with the direction of travel. The posture of the hand 14 at the intermediate position is also the same as the posture when entering. Therefore, in the robot model 10m in the standby posture, the tip of the hand 14m faces the loop model 4m or processing device model 5m and the longitudinal direction of the hand 14m coincides with the direction of entry.
[0047] When the setting unit 321 changes the position of the robot model 10m based on user input via the receiving unit 322, the deriving unit 323 re-derives the movement trajectory of the robot model 10m for the robot model 10m after the position change.
[0048] The determiner 325 determines whether or not the hand 14m will reach each of the multiple target positions based on the derivation result of the deriver 323. When the acceptor 322 accepts the position of the robot model 10m, the determiner 325 causes the image generator 324 to display each of the multiple target positions while distinguishing whether or not the hand 14m will reach each of the multiple target positions.
[0049] Furthermore, when the setter 321 changes the position of the robot model 10m based on user input via the receiver 322, the determiner 325 determines whether the hand 14m reaches the target position for the robot model 10m after the position change, based on the movement trajectory of the robot model 10m derived by the deriving device 323.
[0050] Specifically, the determiner 325 determines whether the hand 14m is in an reached state in which it reaches the target position or a non-reached state in which it does not reach the target position. The determiner 325 causes the image generator 324 to display each of the multiple target positions, distinguishing between the reached state and the non-reached state. The determiner 325 causes the image generator 324 to display the target positions in different ways for the reached state and the non-reached state. The distinction in the display of the target positions may be made, for example, by using different colors for the target positions or by using different marks for the target positions.
[0051] Furthermore, the determiner 325 determines that the hand 14m has not reached the target position when the state is one of the following: a first state in which the hand 14m does not reach the target position due to insufficient length of the arm 12m; a second state in which the hand 14m does not reach the target position due to interference between the robot model 10m and the prohibited area; and a third state in which the hand 14m does not reach the target position due to exceeding the operational limits of the robot model 10m. In other words, the non-reach state includes the first state, the second state, and the third state. The determiner 325 causes the image generator 324 to display each of the multiple target positions, distinguishing between the first state, the second state, and the third state. In this example, the determiner 325 causes the image generator 324 to display different target positions for the first state, the second state, and the third state. The determiner 325 causes the image generator 324 to display the same target position for the second state and the third state. The display of the target positions may be differentiated, for example, by using different colors to display the target positions, or by using different marks to display the target positions.
[0052] The image generator 324 generates an image of the robot model 10m. The image generator 324 generates an image of the hoop model 4m and an image of the processing device model 5m as images of the target position. The image generator 324 generates an image of the housing model 2m and an image of the interference model 6m as images of the prohibited area. The image generator 324 generates an image identical to the image of the substrate Sm at a position facing each of the images of the hoop model 4m and the processing device model 5m as an image of the waiting area 40. The image generator 324 combines the image of the housing model 2m, the image of the hoop model 4m, the image of the processing device model 5m, the image of the interference model 6m, the image of the robot model 10m, and the image of the waiting area 40. The image generator 324 outputs the combined image to the display 21.
[0053] The image generator 324 generates an image of the robot model 10m in an initial posture. For example, the initial posture of the robot model 10m is a posture in which the first link 13am and the second link 13bm and the first hand 14am and the second hand 14bm overlap each other in a planar view. Note that, if the motion trajectory of the robot model 10m has been derived by the derivation unit 323, the image generator 324 may generate an image of the motion trajectory of the robot model 10m. For example, if the target posture of the robot model 10m has been derived by the derivation unit 323, the image generator 324 may generate an image of the robot model 10m in the target posture. That is, in the generated image, the hand 14m of the robot model 10m is located at a target position, and the arm 12m of the robot model 10m is in a posture that realizes the placement of the hand 14m at the target position.
[0054] The image generator 324 generates an image of the robot model 10m moving after the position is changed when the setter 321 changes the position of the robot model 10m based on a user input via the acceptor 322. In other words, the image generator 324 generates an image (moving image) of the changed robot model 10m moving.
[0055] As described above, the acceptor 322 can accept continuous input of the position of the robot model 10m, i.e., continuous changes. In this case, the setter 321 sequentially updates the changed position of the robot model 10m in response to the continuous changes in the position of the robot model 10m. The image generator 324 sequentially generates images of the updated robot model 10m. As a result, when the position of the robot model 10m is changed via the acceptor 322, the image generator 324 generates an image of the robot model 10m changing and moving. In other words, the image generator 324 generates a moving image of the robot model 10m. The image generator 324 outputs the image of the robot model 10m changing and moving to the display 21.
[0056] When the setter 321 changes the position of the robot model 10m in response to a user input via the acceptor 322, the image generator 324 updates the display of the target position based on the determination result of the determiner 325. Specifically, the deriver 323 sequentially derives a movement trajectory of the robot model 10m for the robot model 10m sequentially updated by the setter 321. The determiner 325 sequentially determines whether the hand 14m reaches the target position based on the movement trajectory of the robot model 10m sequentially derived by the deriver 323. The image generator 324 sequentially updates the display of the target position based on the determination result sequentially determined by the determiner 325.
[0057] Next, the layout setting process by the teaching assistance device 30 will be described with reference to the flowchart of FIG.
[0058] First, in step S1, the setter 321 initializes the specifications of each model. Specifically, the setter 321 initializes the housing model 2m, the target position, the via position, the interference model 6m, and the robot model 10m. Part of the specifications of each model in the initial setting are stored in advance in the storage device 31, and the remaining specifications are input by the user. In other words, the setter 321 initializes the housing model 2m, the target position, the via position, the interference model 6m, and the robot model 10m based on the initial specifications of each model stored in the storage device 31 and the specifications received from the user by the reception device 322. Step S1 is an example of "setting the robot model 10m modeled on the robot 10 and the target position of the hand 14m of the robot model 10m" in the teaching assistance method.
[0059] In the initial setting, the image generator 324 generates an image in which the housing model 2m, the target position, the intermediate position, the interference object model 6m, and the robot model 10m are combined, and displays the generated image on the display 21. Step S1 is an example of "generating an image of the target position and the robot model 10m and outputting the generated image to the display 21" in the teaching assistance method. At this time, the posture of the robot model 10m is the initial posture. For example, the initial posture of the robot model 10m is a posture in which the first link 13am and the second link 13bm and the first hand 14am and the second hand 14bm overlap in a planar view. Note that the deriver 323 may, in the initial setting, derive the posture of the robot model when the hand 14m is located at one of the target positions, and the image generator 324 may generate an image of the robot model 10m in the derived posture.
[0060] Specifically, the setter 321 sets the size and shape of the housing model 2m according to the initial specifications. As shown in FIG. 6 , the image generator 324 generates an image including the housing model 2m according to the initial specifications (see solid lines) and displays the generated image on the display 21. The user changes the size and shape of the housing model 2m by manipulating the pointer Q with the mouse 22 and dragging one vertex of the housing model 2m. When the receiver 322 receives a user's operation input of the mouse 22, the setter 321 sets the size and shape of the housing model 2m based on the operation input received by the receiver 322. At the same time, as shown in FIG. 4 , the image generator 324 generates an image of the housing model 2m according to the set size and shape and displays the generated image on the display 21. Note that instead of the mouse 22 operation described above, for example, the receiver 322 may receive coordinate values input by the user via a keyboard or the like, and the setter 321 may set the size of the housing model 2m based on the coordinate values received by the receiver 322.
[0061] The setter 321 sets a target position based on a user's input operation. The setter 321 sets the hoop model 4m and the processing device model 5m as the target position. Specifically, the setter 321 sets the quantity, shape, size, and position of the hoop model 4m and the processing device model 5m. For example, with respect to the hoop model 4m, the setter 321 sets multiple options regarding the shape and size. The image generator 324 generates an image including options regarding the shape and size of the hoop model 4m and displays it on the display 21. The acceptor 322 accepts the user's selection of an option via the mouse 22. The setter 321 sets the shape and size of the hoop model 4m according to the option accepted by the acceptor 322. The acceptor 322 accepts the user's specification of an initial position via the mouse 22. The setter 321 sets the specified position accepted by the acceptor 322 as the initial position of the hoop model 4m. If the quantity, shape, size, or initial position of the hoop models 4m is stored in advance in the memory 31, the setter 321 may read and set the quantity, shape, size, or initial position stored in the memory 31. The setting for the processing device model 5m is similar to the setting for the hoop model 4m.
[0062] When the target position is set by the setter 321, the image generator 324 generates an image including the hoop model 4m and the processing device model 5m whose quantity, shape, size, and position have been set, and displays the image on the display 21. The image generator 324 generates an image in which the hoop model 4m and the processing device model 5m are incorporated into the housing model 2m. The housing model 2m, the hoop model 4m, and the processing device model 5m are connected so that their internal spaces are continuous.
[0063] The setter 321 further sets waiting areas 40 as intermediate positions. Specifically, the setter 321 sets the number and positions of the waiting areas 40 based on the number and positions of the hoop models 4m and the processing device models 5m. For example, the setter 321 sets waiting areas 40 at positions facing each of the hoop models 4m and the processing device models 5m. The setter 321 sets the same number of waiting areas 40 as the number of hoop models 4m and the processing device models 5m. The setter 321 may set the waiting areas 40 through a user input operation. Specifically, the acceptor 322 accepts the user's selection of options via the mouse 22 regarding the number and positions of the waiting areas 40. The setter 321 sets the number and positions of the waiting areas 40 according to the options accepted by the acceptor 322.
[0064] When the waiting area 40 is set by the setter 321, the image generator 324 generates an image including the waiting area 40 whose number and position have been set, and displays the image on the display 21. The image generator 324 generates an image in which the waiting area 40 is incorporated into the housing model 2m.
[0065] The setter 321 sets the interfering object model 6m in response to an input operation by the user. The setter 321 sets the quantity, shape, size, and position of the interfering object model 6m. Specifically, the setter 321 sets a plurality of options regarding the shape and size of the interfering object model 6m. The image generator 324 generates an image including the options regarding the shape and size of the interfering object model 6m and displays the image on the display 21. The acceptor 322 accepts the selection of an option by the user via the mouse 22. The setter 321 sets the shape and size of the interfering object model 6m in accordance with the option accepted by the acceptor 322. The acceptor 322 accepts the user's specification of the initial position of the interfering object model 6m via the mouse 22. The setter 321 sets the specified position accepted by the acceptor 322 as the initial position of the interfering object model 6m. If the number, shape, size or initial position of the interfering object model 6m is stored in advance in the storage device 31, the setting device 321 may read and set the shape, size or initial position stored in the storage device 31. The position of the interfering object model 6m can also be set by inputting coordinate values.
[0066] When the interference object models 6 m are set by the setter 321 , the image generator 324 generates an image including the interference object models 6 m whose number, shape, size and position have been set, and displays the image on the display 21 .
[0067] The setter 321 sets the robot model 10m in response to input operations by the user. The setter 321 sets the shape, size, and position of the robot model 10m. Specifically, the setter 321 sets a plurality of options for the shape and size of the robot model 10m. The image generator 324 generates an image including the options for the shape and size of the robot model 10m and displays the image on the display 21. The acceptor 322 accepts the user's selection of an option via the mouse 22. The setter 321 sets the shape and size of the robot model 10m in accordance with the option accepted by the acceptor 322. The acceptor 322 accepts the user's specification of the initial position of the robot model 10m via the mouse 22. The setter 321 sets the specified position accepted by the acceptor 322 as the initial position of the robot model 10m. Note that if the shape, size, or initial position of the robot model 10m is stored in advance in the memory 31, the setter 321 may read out and set the shape, size, or initial position stored in the memory 31. The position of the robot model 10m can also be determined by inputting coordinate values. The input of the robot model 10m by the user in step S1 is an example of "accepting the position of the robot model 10m" in the teaching assistance method.
[0068] When the robot model 10 m is set by the setter 321 , the image generator 324 generates an image including the robot model 10 m whose shape, size, and position have been set, and displays it on the display 21 .
[0069] In step S2, the deriving unit 323 derives the posture of the robot model 10m when the hand 14m moves to the target position. Specifically, for each of all target positions, the deriving unit 323 derives a motion trajectory of the robot model 10m from when the substrate Sm of the first hand 14am of the robot model 10m passes through the intermediate position to when it moves to the target position. Step S2 is an example of "deriving the posture of the robot model 10m when the hand 14m moves to the target position" in the teaching assistance method.
[0070] Here, an image of the robot model 10m in a target posture among images of the motion trajectory of the robot model 10m will be described with reference to Figures 7 and 8. The image generator 324 does not actually have to generate the images of the robot model 10m shown in Figures 7 and 8.
[0071] 7, the deriver 323 derives the target posture of the robot model 10m when the substrate Sm of the first hand 14am of the robot model 10m is positioned at the hoop model 4m as the target position P2. At this time, the first hand 14am reaches the target position P2.
[0072] 8, the deriving unit 323 derives the target posture of the robot model 10m when the substrate Sm of the first hand 14am of the robot model 10m is positioned at the hoop model 4m as the target position P1. At this time, the second link 13bm of the robot model 10m interferes with the interference model 6m as shown by the hatching, and therefore the first hand 14am does not reach the target position P1.
[0073] Although not shown, the deriver 323 derives the target postures of the robot model 10m corresponding to the processing device model 5m as the target position P4 and the processing device model 5m as the target position P5. At this time, the first hand 14am reaches each of the target positions P4 and P5.
[0074] The deriver 323 cannot derive the target posture of the robot model 10m corresponding to the hoop model 4m as the target position P3. At this time, the length of the arm 12m of the robot model 10m is insufficient, so the substrate Sm of the first hand 14am cannot reach the hoop model 4m as the target position P3, and therefore the first hand 14am does not reach the target position P3.
[0075] In step S3, the determiner 325 determines whether or not the hand 14m reaches a plurality of target positions based on the derivation results of the deriver 323. Step S3 is an example of "determining whether or not the hand 14m reaches a target position based on the derived posture of the robot model 10m" in the teaching assistance method.
[0076] Specifically, the determiner 325 determines that the hand 14m will reach each of the target positions P2, P4, and P5 based on the results of deriving the target postures of the robot model 10m corresponding to each of the target positions P2, P4, and P5.
[0077] Based on the result of deriving the target posture of the robot model 10m corresponding to the target position P3, the determiner 325 determines that the robot model 10m is in a first state in which the hand 14m cannot reach the target position P3 due to insufficient length of the arm 12m.
[0078] Based on the result of deriving the target posture of the robot model 10m corresponding to the target position P1, the determiner 325 determines that the robot model 10m is in a second state in which the robot model 10m interferes with the interfering object model 6m as a prohibited area, causing the hand 14m to not reach the target position P1.
[0079] Next, a third state will be described in which the hand 14m does not reach the target position because the movement limit of the robot model 10m is exceeded. For example, as shown in Figure 9, in the target posture of the robot model 10m, the movement angle θ of the two links 13am and 13bm of the arm 12m exceeds the allowable range, so the hand 14m does not reach the target position.
[0080] In step S4, the determiner 325 causes the image generator 324 to display each of the multiple target positions while distinguishing whether or not the hand 14m reaches the multiple target positions. Step S4 is an example of "displaying the target positions while distinguishing whether or not the hand 14m reaches the target positions" in the teaching assistance method.
[0081] That is, the determiner 325 causes the image generator 324 to display different target positions in an reached state, which the hand 14m reaches, and different target positions in a non-reached state, which the hand 14m does not reach. Specifically, as shown in FIG. 4 , the determiner 325 causes the image generator 324 to display different target positions P2, P4, and P5 in an reached state and target positions P1 and P3 in a non-reached state. The image generator 324 generates images of the target positions distinguished by the determiner 325 and outputs the generated images to the display 21. For example, the target positions P2, P4, and P5 in an reached state are displayed without hatching, and the target positions P1 and P3 in a non-reached state are displayed with hatching. Step S4 is an example of "generating images of target positions and outputting the generated images to the display 21" in the teaching assistance method.
[0082] The determiner 325 causes the image generator 324 to distinguish between the first state and the second state when displaying the target position in the non-reached state. That is, the determiner 325 causes the image generator 324 to display different target positions corresponding to the first state and the second state. Specifically, as shown in FIG. 4 , the determiner 325 causes the image generator 324 to display different target positions P3 corresponding to the first state and P1 corresponding to the second state. The image generator 324 generates images of the target positions distinguished by the determiner 325 and outputs the generated images to the display 21. For example, the target positions P3 and P1 may be displayed with different hatching. Note that the target positions P2, P4, and P5 may be displayed in blue, the target position P1 may be displayed in yellow, and the target position P3 may be displayed in red.
[0083] In step S5, the acceptor 322 determines whether or not a change in the position of the robot model 10m has been accepted. Specifically, the acceptor 322 determines whether or not an input for changing the position of the robot model 10m has been made via the mouse 22 or the like. For example, the acceptor 322 accepts a drag operation on the position of the robot model 10m as an input for changing the position of the robot model 10m. Step S5 is an example of "accepting the position of the robot model 10m" in the teaching assistance method.
[0084] If there is no input to change the position of the robot model 10m, the acceptor 322 determines in step S6 whether there is an input to confirm the layout. The acceptor 322 accepts the input to confirm the layout when the user clicks the Confirm button via the mouse 22. If the acceptor 322 accepts the input to confirm the layout, the setter 321 saves the current layout, i.e., the settings of each model, in the storage unit 31, and the layout setting process is completed. Note that the layout is confirmed by clicking the Confirm button, but instead of or in addition to clicking the Confirm button, the layout may be confirmed when a certain period of time has passed without any input to change the position.
[0085] If there is no input for determining the layout, the receiver 322 returns to step S5. The receiver 322 periodically repeats steps S5 and S6, and waits for an input for changing the position of the robot model 10m or determining the layout.
[0086] If the acceptor 322 accepts a change in the position of the robot model 10m in step S5, then in step S7, the setter 321 changes the position of the robot model 10m to the position accepted by the acceptor 322. Thereafter, the process returns to step S2, and the deriving unit 323 re-derives the posture (movement trajectory) of the robot model 10m corresponding to the changed position of the robot model 10m.
[0087] Specifically, as shown in FIG. 10 , the user operates the pointer Q with the mouse 22 to drag the first axis L1 of the robot model 10m as indicated by the dotted line to the solid line, thereby changing the position of the robot model 10m. When the acceptor 322 accepts the user's operation input using the mouse 22, the setter 321 sets the position of the robot model 10m based on the operation input accepted by the acceptor 322. When the position of the robot model 10m is changed, the deriving unit 323 derives the posture (movement trajectory) of the robot model 10m after the change. The determiner 325 determines whether the hand 14m reaches the target position based on the derivation result of the deriving unit 323. The determiner 325 causes the image generator 324 to display the target position, distinguishing whether the hand 14m has reached the target position. The image generator 324 generates an image of the robot model 10m moving after the position change, and updates the display of the target position based on the determination result of the determiner 325.
[0088] Dragging the robot model 10m is an input from the user of a continuous (strictly speaking, intermittent) change in the position of the robot model 10m. In other words, by repeating steps S2 to S7, the acceptor 322 can accept continuous changes in the position of the robot model 10m. In this case, the setter 321 continuously sets, i.e., changes, the position of the robot model 10m. In response to this, the deriving unit 323 sequentially derives the posture (movement trajectory) of the robot model 10m, and the determiner 325 sequentially determines whether the hand 14m reaches the target position and causes the image generator 324 to sequentially display the target position in a differentiated manner based on the determination result of the determiner 325. The image generator 324 sequentially updates the display of the target position based on the determination result of the determiner 325. The image generator 324 sequentially generates images of the changed robot model 10m. As a result, the image generator 324 continuously generates images of the robot model 10m after the change, resulting in a moving image of the robot model 10m moving.
[0089] Thereafter, the processes from step S2 onwards are repeated as long as requests for changes in the position of the robot model 10m continue to be accepted.
[0090] In this example, when the user changes the position of the robot model 10m to the position shown by the solid line, the determiner 325 determines that the hand 14m will reach the target position for all of the target positions. The image generator 324 updates the display of the target positions based on the determination results of the determiner 325.
[0091] Specifically, before the position of the robot model 10m is changed, the deriver 323 derives a target posture of the robot model 10m that interferes with the interference model 6m at the target posture of the robot model 10m corresponding to the target position P1, as shown in FIG. 8. After the position of the robot model 10m is changed, the deriver 323 derives a target posture of the robot model 10m that does not interfere with the interference model 6m at the target posture of the robot model 10m corresponding to the target position P1, as shown in FIG. 11. As a result, the determiner 325 determines that the hand 14m will reach the target position P1. The image generator 324 changes the display of the target position P1 from a display in which the hand 14m does not reach the target position P1 to a display in which the hand 14m reaches the target position P1.
[0092] Before the position of the robot model 10m was changed, the deriver 323 was unable to derive the target posture of the robot model 10m corresponding to the target position P3. After the position of the robot model 10m was changed, the deriver 323 derives the target posture of the robot model 10m corresponding to the target position P3, as shown in FIG. 12 . As a result, the determiner 325 determines that the hand 14m will reach the target position P3. The image generator 324 changes the display of the target position P3 from a display in which the hand 14m will not reach the target position P3 to a display in which the hand 14m will reach the target position P3.
[0093] Although not shown, after the position of the robot model 10m is changed, the deriving unit 323 derives target postures of the robot model 10m corresponding to the target positions P2, P4, and P5. The determining unit 325 determines that the hand 14m will reach the target positions P2, P4, and P5 even after the position of the robot model 10m is changed. The image generator 324 does not change the display of the target positions P2, P4, and P5.
[0094] According to the teaching support device 30 described above, the determiner 325 causes the image generator 324 to display the target position, distinguishing whether or not the hand 14m will reach the target position. This allows the user to distinguish whether or not the hand 14m will reach the target position by looking at the display 21, simply by inputting the position of the robot model 10m. Therefore, even if the user changes the position of the robot model 10m in various ways, the time required to confirm whether or not the robot model 10m will reach the target position can be reduced.
[0095] Furthermore, the determiner 325 causes the image generator 324 to display each of the multiple target positions, distinguishing whether or not the hand 14m will reach each of the multiple target positions, so that the user can check at a glance whether or not the robot model 10m will reach each of the multiple target positions, thereby reducing the time required to check whether or not the robot model 10m will reach the multiple target positions.
[0096] Furthermore, when the position of the robot model 10m is changed via the acceptor 322, the image generator 324 generates an image of the robot model 10m moving after the position has been changed, and updates the display of the target position based on the determination result of the determiner 325. This allows the user to check whether the robot model 10m has reached the target position by looking at the display 21 while moving the robot model 10m.
[0097] Furthermore, the determiner 325 causes the image generator 324 to display the target position while distinguishing between the first state and the second state, thereby allowing the user to easily visually recognize whether the state is the first state or the second state.
[0098] Furthermore, the determiner 325 causes the image generator 324 to display the target position while distinguishing between the first state and the third state, thereby allowing the user to easily visually recognize whether the state is the first state or the third state.
[0099] Furthermore, since the robot model 10m is a model of the robot 10 including the first hand 14a and the second hand 14b, the robot model 10m is intended for robots 10 with more complex configurations. Even for such complex robots 10, the time required to confirm whether the robot model 10m can reach the target position can be reduced.
[0100] The robot model 10m is a model of a horizontal articulated robot 10 in which the hand 14 transports the substrate S. For such a robot, the time required to determine the target position of the robot model 10m can also be reduced.
[0101] The target position corresponds to the positions of the hoop model 4m and the processing device model 5m, and the deriving device 323 derives the posture (movement trajectory) of the robot model 10m within the area of the housing model 2m, the hoop model 4m, and the processing device model 5m. This allows the user to reduce the time it takes to confirm whether the robot model 10m can reach the target position for the robot 10 used in the clean room 1, which is an environment with strict movement restrictions.
[0102] Furthermore, the deriver 323 derives the posture (movement trajectory) of the robot model 10m when the hand 14m passes through the intermediate position, and therefore the state of the robot model 10m when the hand 14m passes through the intermediate position can be determined.
[0103] In the teaching support device according to Modification 1, the determiner 325 further determines whether or not the hand 14 m will reach the via position based on the result of derivation by the deriver 323. When the acceptor 322 accepts the position of the robot model 10 m, the determiner 325 causes the image generator 324 to display the via position, distinguishing whether or not the hand 14 m will reach the via position.
[0104] Specifically, the determiner 325 determines whether the hand 14m reaches the via position or not reaches the via position. The determiner 325 causes the image generator 324 to display each of the multiple via positions, distinguishing between the reach state and the non-reach state. The determiner 325 causes the image generator 324 to display the via positions so that the display of the via positions differs between the reach state and the non-reach state. The display of the via positions may be distinguished, for example, by using different colors or marks displayed at the via positions.
[0105] Furthermore, the determiner 325 determines that the hand 14m has not reached the via-point position when the state is one of the following: a first state in which the hand 14m does not reach the via-point position due to insufficient length of the arm 12m; a second state in which the hand 14m does not reach the via-point position due to interference between the robot model 10m and the prohibited area; and a third state in which the hand 14m does not reach the via-point position due to exceeding the operational limits of the robot model 10m. In other words, the non-reach state includes the first state, the second state, and the third state. The determiner 325 causes the image generator 324 to display each of the multiple via-point positions, distinguishing between the first state, the second state, and the third state. In this example, the determiner 325 causes the image generator 324 to display different via-point positions for the first state, the second state, and the third state. The determiner 325 causes the image generator 324 to display the same via-point positions for the second state and the third state. The display of the route positions may be distinguished, for example, by using different colors to display the route positions, or by using different marks to display the route positions.
[0106] 13 is a diagram showing an example of an image displayed on a display in the teaching support device according to Modification 1. For example, the determiner 325 determines that the hand 14m will reach each of the waiting area 40 (way position) immediately before the target position P2, the waiting area 40 (way position) immediately before the target position P4, and the waiting area 40 (way position) immediately before the target position P5. The determiner 325 determines that the first state is in which the hand 14m will not reach the waiting area 40 (way position) immediately before the target position P3 due to an insufficient length of the arm 12m of the robot model 10m. The determiner 325 determines that the second state is in which the hand 14m will not reach the waiting area 40 (way position) immediately before the target position P1 due to interference between the robot model 10m and the interfering object model 6m.
[0107] In this case, the determiner 325 causes the image generator 324 to display differently the standby areas 40 immediately before the target positions P2, P4, and P5 in the reached state and the standby areas 40 immediately before the target positions P1 and P3 in the non-reached state. Specifically, the standby areas 40 immediately before the target positions P2, P4, and P5 in the reached state are displayed without hatching, and the standby areas 40 immediately before the target positions P1 and P3 in the non-reached state are displayed with hatching.
[0108] The determiner 325 causes the image generator 324 to display differently the waiting area 40 immediately before the target position P3 corresponding to the first state and the waiting area 40 immediately before the target position P1 corresponding to the second state. Specifically, the waiting area 40 immediately before the target position P3 and the waiting area 40 immediately before the target position P1 are displayed with different hatching. Note that the waiting areas 40 immediately before the target positions P2, P4, and P5 may be displayed with a blue color, the waiting area 40 immediately before the target position P1 may be displayed with a yellow color, and the waiting area 40 immediately before the target position P3 may be displayed with a red color.
[0109] According to the teaching assistance device of Modification 1, the determiner 325 causes the image generator 324 to display the via-point position while distinguishing whether or not the hand 14m will reach the via-point position. As a result, the user can distinguish whether or not the hand 14m will reach the via-point position by simply inputting the position of the robot model 10m while looking at the display 21. Therefore, even if the user changes the position of the robot model 10m in various ways, the time required to confirm whether or not the robot model 10m will reach the via-point position can be reduced.
[0110] <<Modification 2>> Fig. 14 is a block diagram showing the configuration of a teaching support device 30A according to Modification 2. The teaching support device 30A according to Modification 2 differs from the teaching support device 30 according to the embodiment in that it includes a selector 326. The following description will focus on the configuration of the teaching support device 30A according to Modification 2 that differs from the teaching support device 30 according to the embodiment. Note that in the teaching support device 30A according to Modification 2, the same reference numerals as those in the teaching support device 30 according to the embodiment have the same configuration as the teaching support device 30 according to the embodiment, and therefore description thereof will be omitted.
[0111] In the teaching assistance device 30A according to the second modification, the setter 321 further sets one type of robot model 10m from among a plurality of types of robot models 10m. The plurality of types of robot models 10m may be, for example, a collection of robot models 10m having different lengths of links 13m and different numbers of links 13m.
[0112] The processor 32 further includes a selector 326 as a functional block. When the determiner 325 determines that the hand 14m will not reach the target position, the selector 326 selects the type of robot model 10m for which the hand 14m will reach the target position. Specifically, the selector 326 selects, from the collection of robot models 10m, the robot model 10m for which the hand 14m will reach the target position. The selector 326 may select all types of robot models 10m at once, or may select the types of robot models 10m in order.
[0113] The setter 321 changes the robot model 10m to the robot model 10m of the type selected by the selector 326. The image generator 324 generates an image of the robot model 10m of the type changed by the setter 321, and changes the type of the robot model 10m in the image to the type changed by the setter 321.
[0114] The acceptor 322 may further accept an input for changing the type of the robot model 10m. Specifically, the acceptor 322 accepts an input for changing the type of the robot model 10m by the user via the mouse 22. For example, a change button for changing the type of the robot model 10m is displayed on the display 21. When the user clicks the change button via the mouse 22, the acceptor 322 accepts the input for changing the type of the robot model 10m. When the acceptor 322 accepts the input for changing the type of the robot model 10m, the image generator 324 may generate an image of the robot model 10m of the type changed by the setter 321 and change the image of the robot model 10m to that image.
[0115] 15 , the determiner 325 determines that the hand 14m will reach the target positions P1, P2, P4, and P5, and also determines that the hand 14m will not reach the target position P3. The determiner 325 determines that the hand 14m will not reach the target position P3 due to an insufficient length of the arm 12m of the robot model 10m. The determiner 325 causes the image generator 324 to display differently the target positions P1, P2, P4, and P5 and the target position P3. The target positions P1, P2, P4, and P5 are displayed without hatching, and the target position P3 is displayed with hatching.
[0116] In this state, the selector 326 selects the type of robot model 10m that will allow the hand 14m to reach the target position. Specifically, the selector 326 selects the type of robot model 10m that will allow the hand 14m to reach each of all of the target positions P1, P2, P3, P4, and P5. The setter 321 changes the robot model 10m to the robot model 10m of the type selected by the selector 326. As shown in FIG. 16 , the image generator 324 generates an image of the robot model 10m of the type changed by the setter 321, and changes the image to the generated image. In this example, the selector 326 selects a robot model 10m having an arm 12m that is longer than the arm 12m of the robot model 10m before the change. Since the determiner 325 determines that the hand 14m will reach all of the target positions P1, P2, P3, P4, and P5, the image generator 324 updates the display of all of the target positions P1, P2, P3, P4, and P5 to a display without hatching.
[0117] According to the teaching support device 30A of the second modification, when the determiner 325 determines that the hand 14m will not reach the target position, the selector 326 selects the type of the robot model 10m that will allow the hand 14m to reach the target position. As a result, when it is determined that the hand 14m will not reach the target position, the type of the robot model 10m can be automatically changed so that the hand 14m will reach the target position.
[0118] Although the description of other configurations, actions, and effects will be omitted, the description of the teaching support device 30 according to the embodiment can be used to describe the teaching support device 30A according to the second modification.
[0119] Other Embodiments As described above, the above-described embodiments have been described as examples of the technology disclosed in the present application. However, the technology disclosed herein is not limited to these embodiments and can be applied to embodiments in which modifications, substitutions, additions, omissions, etc. are made as appropriate. Furthermore, the components described in the above-described embodiments can be combined to create new embodiments. Furthermore, the components described in the accompanying drawings and detailed description may include not only components essential for solving the problem, but also components that are not essential for solving the problem in order to exemplify the technology. Therefore, the fact that these non-essential components are described in the accompanying drawings or detailed description should not be interpreted as immediately determining that these non-essential components are essential.
[0120] For example, the location where the robot 10 is used is not limited to a clean room where semiconductor wafers are processed, but may be a space where other materials are processed, that is, a space with low air cleanliness.
[0121] The numbers of FOUPs 4 and processing devices 5 are not limited to the above examples, and may be increased or decreased. Accordingly, the numbers of FOUP models 4m and processing device models 5m are not limited to the above examples, and may be increased or decreased.
[0122] Although the robot 10 is used in a location including both a FOUP 4 and a processing device 5, it may also be used in a location including either a FOUP 4 or a processing device 5. That is, the setter 321 may set only one of the FOUP model 4m or the processing device model 5m. For example, when the robot is used in a sorter, the robot transports substrates between FOUPs. Therefore, the setter sets only the FOUP model. Alternatively, when the robot is used in a vacuum processing chamber, the robot transports substrates between processing devices 5. Therefore, the setter sets the processing device model. In this way, the setter 321 may set at least one of the FOUP model 4m and the processing device model 5m.
[0123] The housing 2 is provided with a FOUP 4 and a processing device 5, but other spaces may also be provided. For example, when the robot is used in a stocker, the robot transports substrates between the FOUP and a substrate storage room (storage). In this case, the housing is provided with a FOUP and storage. At this time, the setter sets a FOUP model and a storage model.
[0124] The number of interfering objects 6 is not limited to the above example, and may be increased or decreased. Accordingly, the number of interfering object models 6m is not limited to the above example, and may be increased or decreased.
[0125] The housing 2 is provided with a FOUP 4 and a processing device 5, but may also be provided with a pre-alignment device. The pre-alignment device is, for example, a device that detects the center position or notch position of the substrate S and positions the substrate S at a desired position. Accordingly, a pre-alignment device model that models the pre-alignment device may be set as the target position of the hand 14m of the robot model 10m.
[0126] The end effector of the robot 10 is a hand 14, but may also be a mechanical tool such as a cutting tool or a polishing tool.
[0127] The input device of the teaching support system 20 is a mouse 22, but may be a keyboard, or may be both a mouse and a keyboard.
[0128] The setter 321 sets multiple target positions, but may set only one target position. In this case, the deriving unit 323 derives the posture of the robot model 10m when the hand 14m moves to one target position. The determiner 325 determines whether the hand 14m will reach one target position and displays the target position in a differentiated manner depending on the determination result.
[0129] The setter 321 may set only one of the housing model 2m and the interfering object model 6m as the prohibited area. The setter 321 may set a model of an object other than the housing and the interfering object as the prohibited area.
[0130] The setter 321 sets the waiting area 40 through which the hand 14m passes before reaching the target position, but another intermediate position may be set instead of or in addition to the waiting area 40. Alternatively, the setter 321 does not have to set an intermediate position.
[0131] The determiner 325 determines that the hand 14m will not reach the target position when the target position is in any one of the first state, the second state, and the third state, but may determine that the hand 14m will not reach the target position when the target position is in either the first state or the second state, or when the target position is in either the first state or the third state. Furthermore, the determiner 325 causes the image generator 324 to display the target position so that it is the same for the second state and the third state, but may cause the image generator 324 to display the target position so that it is different for the second state and the third state.
[0132] The determiner 325 determines that the hand 14m will not reach the via position when the via position is in any one of the first state, the second state, and the third state, but may determine that the hand 14m will not reach the via position when the via position is in either the first state or the second state, or when the via position is in either the first state or the third state. Furthermore, the determiner 325 causes the image generator 324 to display the via position so that it is the same for the second state and the third state, but may cause the image generator 324 to display the via position so that it is different for the second state and the third state.
[0133] The determiner 325 determines that the hand 14 m has not reached the target position in the target posture of the robot model 10 m, but may also determine that the hand 14 m has not reached the target position in any part of the motion trajectory of the robot model 10 m. In other words, the determiner 325 determines that the hand 14 m has not reached the target position when part of the motion trajectory of the robot model 10 m is in any of the first to third states.
[0134] The acceptor 322 accepts input for changing the type of the robot model 10m when the user clicks the change button via the mouse 22, but may also accept input for changing the type of the robot model 10m when the user drags and moves the robot model 10m via the mouse 22 and then drops it at a predetermined position.
[0135] The image generator 324 generates two-dimensional images of each model as shown in FIG. 4 , but may also generate three-dimensional images as shown in FIG. 17 . In FIG. 17 , the same reference numerals as in FIGS. 4 and 7 are used. The processing device model 5m is depicted with a two-dot chain line, and the housing model 2m is omitted. The robot model 10m includes a base 11m that models the base 11. In this case, the position of each model is defined by its three-dimensional position. For example, the receiver 322 receives the three-dimensional position of the target position, the setter 321 sets the three-dimensional position of the target position, and the deriving unit 323 derives the posture of the robot model 10m at the three-dimensional position of the target position.
[0136] The flowchart is merely an example. Steps in the flowchart may be modified, replaced, added, omitted, etc. as appropriate. The order of steps in the flowchart may be changed, and serial processes may be performed in parallel. For example, in the flowchart ( FIG. 5 ), in the initial setting of step S1, the order of setting the chassis model, setting the hoop model, setting the interference model, and setting the robot model may be changed, or may be performed in parallel. Furthermore, the derivation of the robot model posture in step S2 and the determination of whether the hand has reached the target position in step S3 may be performed in parallel. The determination of whether the hand has reached the target position in step S3 and the display of the target position may be performed in parallel.
[0137] The teaching assistance method can be realized by other devices without being limited to the teaching assistance devices 30 and 30A described above. The teaching assistance program can be realized by other devices without being limited to the teaching assistance devices 30 and 30A described above.
[0138] The functions performed by the components described herein may be implemented in circuitry or processing circuitry, including general-purpose processors, application-specific processors, integrated circuits, ASICs (Application Specific Integrated Circuits), a Central Processing Unit (CPU), conventional circuits, and / or combinations thereof, programmed to perform the described functions. A processor includes transistors and other circuits and is considered a circuit or processing circuit. A processor may also be a programmable processor that executes a program stored in a memory.
[0139] In this specification, a circuit, unit, or means is hardware that is programmed to realize or performs the described functions, which may be any hardware disclosed herein or any hardware known to be programmed to realize or perform the described functions.
[0140] If the hardware is a processor considered to be a type of circuitry, the circuit, means, or unit is a combination of hardware and software used to configure the hardware and / or processor.
[0141] [Aspects] The above-described embodiments are specific examples of the following aspects.
[0142] (Aspect 1) The teaching support device 30 is a teaching support device that displays on a display 21 an image of a model of a robot 10 having an arm 12 and a hand 14 (end effector) connected to the arm 12, and includes a setter 321 that sets a robot model 10m that is a model of the robot 10 and a target position of a hand 14m (end effector) of the robot model 10m, an acceptor 322 that accepts the position of the robot model 10m, and an acceptor 323 that derives the posture of the robot model 10m when the hand 14m (end effector) moves to the target position. The system is equipped with a deriver 323, a determiner 325 that determines whether or not the hand 14m (end effector) will reach the target position based on the derivation result of the deriver 323, and an image generator 324 that generates an image of the target position and the robot model 10m and outputs the generated image to the display 21, and when the acceptor 322 accepts the position of the robot model 10m, the determiner 325 causes the image generator 324 to display the target position, distinguishing whether or not the hand 14m (end effector) will reach the target position.
[0143] According to this configuration, the determiner 325 causes the image generator 324 to display the target position, distinguishing whether or not the hand 14m will reach the target position. As a result, the user can distinguish whether or not the hand 14m will reach the target position by looking at the display 21, simply by inputting the position of the robot model 10m. Therefore, even if the user changes the position of the robot model 10m in various ways, the time required to confirm whether or not the robot model 10m will reach the target position can be reduced.
[0144] (Aspect 2) In the teaching support device 30 described in aspect 1, the setter 321 sets the plurality of target positions, the deriving device 323 derives the posture of the robot model 10m when the hand 14m (end effector) moves to each of the plurality of target positions, the determiner 325 determines whether or not the hand 14m (end effector) will reach each of the plurality of target positions based on the derivation result of the deriving device 323, the image generator 324 generates images of the plurality of target positions, and the determiner 325 causes the image generator 324 to display each of the plurality of target positions, distinguishing whether or not the hand 14m (end effector) will reach each of the plurality of target positions.
[0145] According to this configuration, the determiner 325 causes the image generator 324 to display each of the multiple target positions, distinguishing whether or not the hand 14m will reach each of the multiple target positions, so that the user can check at a glance whether or not the robot model 10m will reach each of the multiple target positions, thereby reducing the time required to check whether or not the robot model 10m will reach the multiple target positions.
[0146] (Aspect 3) In the teaching support device 30 described in Aspect 1 or Aspect 2, when the position of the robot model 10m is changed via the receiver 322, the deriving device 323 derives the posture of the robot model 10m when the hand 14m (end effector) moves to the target position for the robot model 10m after the position change, and the determiner 325 determines whether the hand 14m (end effector) reaches the target position for the robot model 10m after the position change, and the image generator 324 generates an image of the robot model 10m moving after the position change, and updates the display of the target position based on the determination result of the determiner 325.
[0147] According to this configuration, when the position of the robot model 10m is changed via the acceptor 322, the image generator 324 generates an image of the robot model 10m moving after the position is changed, and updates the display of the target position based on the determination result of the determiner 325. This allows the user to check whether the robot model 10m will reach the target position by looking at the display 21 while moving the robot model 10m.
[0148] (Aspect 4) In the teaching support device 30 described in any one of Aspects 1 to 3, the setter 321 sets a prohibited area that is not an operating area of the robot model 10m, and the determiner 325 determines that the hand 14m (end effector) will not reach the target position when the state is either a first state in which the arm 12m of the robot model 10m is not long enough to cause the hand 14m (end effector) to not reach the target position, or a second state in which the robot model 10m interferes with the prohibited area to cause the hand 14m (end effector) to not reach the target position, and the determiner 325 causes the image generator 324 to display the target position, distinguishing between the first state and the second state.
[0149] According to this configuration, the determiner 325 causes the image generator 324 to display the target position while distinguishing between the first state and the second state, thereby allowing the user to easily visually recognize whether the state is the first state or the second state.
[0150] (Aspect 5) In the teaching support device 30 described in any one of Aspects 1 to 4, the determiner 325 determines that the hand 14m (end effector) will not reach the target position when the state is either a first state in which the hand 14m (end effector) will not reach the target position due to an insufficient length of the arm 12m of the robot model 10m, or a third state in which the hand 14m (end effector) will not reach the target position because the operating limit of the robot model 10m has been exceeded, and the determiner 325 causes the image generator 324 to display the target position, distinguishing between the first state and the third state.
[0151] According to this configuration, the determiner 325 causes the image generator 324 to display the target position while distinguishing between the first state and the third state, thereby allowing the user to easily visually recognize whether the state is the first state or the third state.
[0152] (Aspect 6) In the teaching support device 30 described in any one of Aspects 1 to 5, the robot model 10m is a model of the robot 10 that includes, as the hands 14 (end effectors), a first hand 14a (first end effector) and a second hand 14b (second end effector) connected to the arm 12.
[0153] With this configuration, the robot model 10m is a model of the robot 10 including the first hand 14a and the second hand 14b, and therefore the robot model 10m is intended for robots 10 with more complex configurations. Even for such complex robots 10, the time required to confirm whether the robot model 10m can reach the target position can be reduced.
[0154] (Aspect 7) In the teaching support device 30 according to any one of Aspects 1 to 6, the robot model 10m is a model of a horizontal articulated robot 10 in which the hand 14 (end effector) transports a substrate S.
[0155] According to this configuration, the robot model 10m is a model of a horizontal articulated robot 10 in which the hand 14 transports the substrate S. Even for such a robot, the time required to determine the target position of the robot model 10m can be reduced.
[0156] (Aspect 8) In the teaching support device 30 described in any one of Aspects 1 to 7, the setter 321 sets a housing model 2m that models the housing 2 of the clean room 1, and at least one of a hoop model 4m that models the hoop 4 attached to the housing 2 and a processing device model 5m that models the processing device 5 attached to the housing 2, the target position corresponds to the position of the at least one of the hoop model 4m and the processing device model 5m, and the deriving device 323 derives the posture of the robot model 10m within the area of the housing model 2m and the at least one of the hoop model 4m and the processing device model 5m.
[0157] With this configuration, the target position corresponds to the position of at least one of the hoop model 4m and the processing device model 5m, and the deriving unit 323 derives the posture of the robot model 10m within the area between the housing model 2m and at least one of the hoop model 4m and the processing device model 5m. This allows the user to reduce the time it takes to confirm whether the robot model 10m can reach the target position for the robot 10 used in the clean room 1, which is an environment with strict operational restrictions.
[0158] (Aspect 9) In the teaching support device 30 described in any one of Aspects 1 to 8, the setter 321 sets a via position through which the hand 14m (end effector) passes before reaching the target position, and the deriving device 323 derives the posture of the robot model 10m when the hand 14m (end effector) passes through the via position.
[0159] According to this configuration, the deriving device 323 derives the posture of the robot model 10m when the hand 14m passes through the intermediate position, so that the state of the robot model 10m when the hand 14m passes through the intermediate position can be determined.
[0160] (Aspect 10) In the teaching support device 30 described in any one of Aspects 1 to 9, the determiner 325 determines whether or not the hand 14m (end effector) will reach the via position based on the derivation result of the deriver 323, and when the receiver 322 receives the position of the robot model 10m, the determiner 325 causes the image generator 324 to display the via position, distinguishing whether or not the hand 14m (end effector) will reach the via position.
[0161] According to this configuration, the determiner 325 causes the image generator 324 to display the via-point position while distinguishing whether or not the hand 14m will reach the via-point position. As a result, the user can distinguish whether or not the hand 14m will reach the via-point position by simply inputting the position of the robot model 10m while looking at the display 21. Therefore, even if the user changes the position of the robot model 10m in various ways, the time required to confirm whether or not the robot model 10m will reach the via-point position can be reduced.
[0162] (Aspect 11) In the teaching support device 30A described in any one of Aspects 1 to 10, the setter 321 sets one type of robot model from a plurality of types of the robot model 10m, and further includes a selector 326 that selects the type of the robot model 10m that will allow the hand 14m (end effector) to reach the target position when the determiner 325 determines that the hand 14m (end effector) will not reach the target position, and the setter 321 changes the robot model 10m to the robot model 10m of the type selected by the selector 326.
[0163] According to this configuration, when the determiner 325 determines that the hand 14m will not reach the target position, the selector 326 selects the type of robot model 10m that will allow the hand 14m to reach the target position. The setter 321 changes the robot model 10m to the type of robot model 10m selected by the selector 326. In this way, when it is determined that the hand 14m will not reach the target position, the type of robot model 10m can be automatically changed so that the hand 14m will reach the target position.
[0164] (Aspect 12) A teaching assistance method is a teaching assistance method for displaying on a display 21 an image of a model of a robot 10 having an arm 12 and a hand 14 (end effector) connected to the arm 12, the teaching assistance method including: setting a robot model 10m that is a model of the robot 10 and a target position of a hand 14m (end effector) of the robot model 10m; receiving the position of the robot model 10m; deriving a posture of the robot model 10m that moves the hand 14m (end effector) to the target position; determining whether or not the hand 14m (end effector) will reach the target position based on the derived posture of the robot model 10m;
[0165] According to this configuration, the target position is displayed while distinguishing whether or not the hand 14m will reach the target position. As a result, the user can position the robot model 10m while looking at the display 21, and distinguish whether or not the hand 14m will reach the target position from the display of the target position. Therefore, when determining the position of the robot model 10m based on whether or not the robot model 10m can reach the target position, the time required to confirm whether or not the robot model 10m can reach the target position can be reduced.
[0166] (Aspect 13) The teaching support program 311 is a teaching support program that displays on the display 21 an image of a model of the robot 10 having an arm 12 and a hand 14 (end effector) connected to the arm 12, and causes a computer to realize the following functions: a function of setting a robot model 10m that is a model of the robot 10 and a target position of a hand 14m (end effector) of the robot model 10m; a function of accepting the position of the robot model 10m; a function of deriving a posture of the robot model 10m in which the hand 14m (end effector) moves to the target position; a function of determining whether or not the hand 14m (end effector) will reach the target position based on the derived posture of the robot model 10m, and, when the position of the robot model 10m is accepted, a function of distinguishing whether or not the hand 14m (end effector) will reach the target position and displaying the target position; and a function of generating an image of the target position and the robot model 10m and outputting the generated image to the display 21.
[0167] According to this configuration, the target position is displayed while distinguishing whether or not the hand 14m will reach the target position. As a result, the user can position the robot model 10m while looking at the display 21, and distinguish whether or not the hand 14m will reach the target position from the display of the target position. Therefore, when determining the position of the robot model 10m based on whether or not the robot model 10m can reach the target position, the time required to confirm whether or not the robot model 10m can reach the target position can be reduced.
Claims
1. A teaching support device that displays on a display an image of a model of a robot having an arm and an end effector connected to the arm, comprising: a setter that sets a robot model that models the robot and a target position of the end effector of the robot model; a receiver that receives the position of the robot model; a deriver that derives the posture of the robot model as the end effector moves to the target position; a determiner that determines whether or not the end effector will reach the target position based on the derivation result of the deriver; and an image generator that generates an image of the target position and the robot model and outputs the generated image to the display, wherein when the receiver receives the position of the robot model, the determiner causes the image generator to display the target position and whether or not the end effector will reach the target position.
2. A teaching support device as described in claim 1, wherein the setter sets a plurality of target positions; the deriver derives an attitude of the robot model in which the end effector moves to each of the plurality of target positions; the determiner determines whether or not the end effector reaches each of the plurality of target positions based on the derivation result of the deriver; the image generator generates images of the plurality of target positions; and the determiner causes the image generator to display each of the plurality of target positions, distinguishing whether or not the end effector reaches each of the plurality of target positions.
3. A teaching support device as described in claim 1, wherein, when the position of the robot model is changed via the acceptor, the deriver derives the posture of the robot model in which the end effector moves to the target position for the robot model after the position has been changed, and the determiner determines whether the end effector reaches the target position for the robot model after the position has been changed, and the image generator generates an image of the robot model moving after the position has been changed, and updates the display of the target position based on the determination result of the determiner.
4. A teaching support device as described in claim 1, wherein the setter sets a prohibited area which is not an operating area of the robot model, and the determiner determines that the end effector will not reach the target position when the state is either a first state in which the end effector does not reach the target position due to insufficient length of the arm of the robot model, or a second state in which the end effector does not reach the target position due to interference between the robot model and the prohibited area, and the determiner causes the image generator to display the target position while distinguishing between the first state and the second state.
5. A teaching support device as described in claim 1, wherein the determiner determines that the end effector will not reach the target position when the state is either a first state in which the end effector does not reach the target position due to insufficient arm length of the robot model, or a third state in which the end effector does not reach the target position because the operating limit of the robot model is exceeded, and the determiner causes the image generator to display the target position while distinguishing between the first state and the third state.
6. A teaching support device according to claim 1, wherein the robot model is a model of a robot including, as the end effectors, a first end effector and a second end effector connected to the arm.
7. A teaching support device according to claim 1, wherein the robot model is a model of a horizontal articulated robot whose end effector transports a substrate.
8. A teaching support device as described in claim 1, wherein the setter sets a housing model that models a clean room housing, and at least one of a hoop model that models a hoop attached to the housing and a processing device model that models a processing device attached to the housing, the target position corresponds to a position of at least one of the hoop model and the processing device model, and the deriver derives the posture of the robot model within the area of the housing model and at least one of the hoop model and the processing device model.
9. A teaching support device as described in claim 1, wherein the setting device sets an intermediate position through which the end effector passes before reaching the target position, and the derivation device derives the posture of the robot model when the end effector passes through the intermediate position.
10. A teaching support device as described in claim 9, wherein the determiner determines whether or not the end effector will reach the intermediate position based on the derivation result of the deriver, and when the acceptor accepts the position of the robot model, the determiner causes the image generator to display the intermediate position and distinguish whether or not the end effector will reach the intermediate position.
11. A teaching support device as described in claim 1, wherein the setting device sets one type of robot model from among a plurality of types of robot models, and further comprises a selector that selects the type of robot model that will allow the end effector to reach the target position when the determiner determines that the end effector will not reach the target position, and the setting device changes the robot model to the type of robot model selected by the selector.
12. A teaching support method for displaying on a display an image of a model of a robot having an arm and an end effector connected to the arm, comprising: setting a robot model that models the robot and a target position of the end effector of the robot model; accepting the position of the robot model; deriving a posture of the robot model in which the end effector moves to the target position; determining whether or not the end effector will reach the target position based on the derived posture of the robot model, and when the position of the robot model has been accepted, displaying the target position while distinguishing whether or not the end effector will reach the target position; generating an image of the target position and the robot model, and outputting the generated image to the display.
13. A teaching support program that displays on a display an image of a model of a robot having an arm and an end effector connected to the arm, the teaching support program causing a computer to realize the following functions: setting a robot model that models the robot and a target position of the end effector of the robot model; receiving the position of the robot model; deriving the posture of the robot model in which the end effector moves to the target position; determining whether or not the end effector will reach the target position based on the derived posture of the robot model, and when the position of the robot model is received, distinguishing whether or not the end effector will reach the target position and displaying the target position; and generating an image of the target position and the robot model, and outputting the generated image to the display.
Citation Information
Patent Citations
Simulation method and simulator for robot
JP2009166172A
Information processing method and information processor
JP2016209969A
Teaching device for robot and teaching program for robot
JP2022007292A
Methods and Systems for Graphical User Interfaces to Control Remotely Located Robots
US20220355483A1
Robot path determination device, robot path determination method, and program
WO2020066949A1