Information processing apparatus, system, method, product manufacturing method, and recording medium
Patent Information
- Application Number
- CN202211539733.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-12-07
- Filing Date
- 2022-12-02
- Publication Date
- 2026-09-29
- Estimated Expiration
- 2042-12-02
Smart Images

Figure CN116237928B_ABST
Abstract
Description
Technical Field
[0001] This disclosure involves information processing. Background Technology
[0002] Typically, a simulator is known that can create teach data for a robotic arm using a computer. This simulator can simulate the operation of a 3D model corresponding to the robotic arm in a three-dimensional virtual space. Specifically, the simulator simulates the operation of a 3D model corresponding to the robotic arm using a computer based on the teach data. In this simulation, the user can check the operation of the robotic arm by examining the operation of the 3D model. Japanese Patent Application Publication No. H06-47689 discloses a method for controlling a robotic arm based on teach data registered by such a simulator. Summary of the Invention
[0003] According to one aspect of the invention, the information processing apparatus includes an information processing section. The information processing section is configured to accept registration of first teaching data and second teaching data, such that the first teaching data and the second teaching data are associated with each other. The first teaching data is associated with a robotic arm. The second teaching data is associated with peripheral devices arranged around the robotic arm.
[0004] Other features of the invention will become clear from the following description of exemplary embodiments, with reference to the accompanying drawings. Attached Figure Description
[0005] Figure 1 This is a diagram illustrating an example of a robot system as a first embodiment.
[0006] Figure 2 This is a diagram illustrating the information processing apparatus of the first embodiment.
[0007] Figure 3 This is a block diagram of the information processing apparatus of the first embodiment.
[0008] Figure 4 This is a flowchart illustrating the information processing method performed by the information processing apparatus of the first embodiment.
[0009] Figure 5A This is an illustration of the user interface images of the first embodiment.
[0010] Figure 5B This is an illustration of the virtual space and the virtual objects placed in the virtual space in the first embodiment.
[0011] Figure 6A This is an illustration of the user interface images of the first embodiment.
[0012] Figure 6BThis is an illustration of the virtual space and the virtual objects placed in the virtual space in the first embodiment.
[0013] Figure 7 This is an illustration of the user interface images of the first embodiment.
[0014] Figure 8A This is an example illustration of an overall image of the first embodiment.
[0015] Figure 8B This is an example illustration of an overall image of the first embodiment.
[0016] Figure 8C This is an example illustration of an overall image of the first embodiment.
[0017] Figure 8D This is an example illustration of an overall image of the first embodiment.
[0018] Figure 9A This is an illustration of the user interface images of the second embodiment.
[0019] Figure 9B This is an illustration of the user interface images of the second embodiment.
[0020] Figure 10 This is an illustration of the user interface images of the third embodiment.
[0021] Figure 11A This is a diagram illustrating the robot system of the fourth embodiment.
[0022] Figure 11B This is an illustration of the virtual space and the virtual objects placed in the virtual space in the fourth embodiment.
[0023] Figure 11C This is an illustration of the user interface images of the fourth embodiment. Detailed Implementation
[0024] In real-world environments such as factories, robotic arms do not operate independently but in sync with surrounding devices. In such systems, the teaching process to synchronize the robotic arm with these devices takes time.
[0025] This disclosure aims to simplify the teaching process for the entire system.
[0026] Hereinafter, some embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.
[0027] First Embodiment
[0028] Figure 1This is a diagram illustrating an example of a robot system 1000 as a first embodiment. The robot system 1000 is arranged in a factory or the like for manufacturing product W0. For example, product W0 consists of workpieces W1 and W2, and is manufactured by assembling workpiece W1 onto workpiece W2 using the robot system 1000. Product W0 can be a final product or an intermediate product. In another case, a cutting machine or a grinding machine can be arranged in the robot system 1000 to manufacture the product by processing workpieces W1 or W2.
[0029] The robot system 1000 includes a robotic arm 201, a robotic hand 202, a processing machine 203, and an automated guided vehicle (AGV) 204. Each of the robotic hand 202, processing machine 203, and AGV 204 is an example of a peripheral device arranged around the robotic arm 201. Note that although the first embodiment will describe the robot system 1000 including multiple peripheral devices 202-204, this disclosure is not limited thereto. For example, the robot system 1000 may only need to include at least one peripheral device.
[0030] For example, robotic arm 201 is a vertical joint type 6-axis robotic arm, including multiple links 210 to 216 interconnected via multiple joints J1 to J6. Among the multiple links 210 to 216, link 210 is a base, fixed to, for example, a platform (not shown).
[0031] The robotic arm 202 is an example of an end effector, comprising a hand body 220 and multiple (e.g., two) grippers 221 and 222. The grippers 221 and 222 are supported by the hand body 220, allowing them to open and close. In a first embodiment, the grippers 221 and 222 move independently of each other. However, this disclosure is not limited thereto. For example, the grippers 221 and 222 may move together with each other. The hand body 220 is a base supporting the two grippers 221 and 222. The hand body 220 of the robotic arm 202 is attached to a predetermined portion of the robotic arm 201, such as a link 216.
[0032] In the first embodiment, workpiece W1 can be grasped by moving claws 221 and 222. Furthermore, while workpiece W1 is grasped, workpiece W1 can be moved by moving robotic arm 201, allowing workpiece W1 to be assembled onto workpiece W2. The processing machine 203 can perform predetermined processing on the object, such as cutting or grinding; and includes a machine body 230 and a door 231. Door 231 is supported by the machine body 230, allowing door 231 to open and close. AGV 204 can move around robotic arm 201.
[0033] Additionally, the robot system 1000 includes a control unit 300. The control unit 300 includes a controller 301 for controlling the robotic arm 201, a controller 302 for controlling the robotic hand 202, a controller 303 for controlling the processing machine 203, and a controller 304 for controlling the AGV 204. Each controller 301 to 304 is a computer. Note that although the case where the control unit 300 is composed of multiple computers will be described, the control unit 300 can also be composed of a single computer.
[0034] Furthermore, the robot system 1000 includes an information processing device 100. The information processing device 100 is a computer and acts as a simulator, which is capable of performing computer simulations to allow a user to inspect the operation of the robotic arm 201 and peripheral devices 202-204.
[0035] In the first embodiment, the information processing device 100 creates teaching data for the robotic arm 201 and peripheral devices 202-204 through user operation. This teaching data is also referred to as teaching points. The information processing device 100 sends the teaching data for each of the robotic arm 201 and peripheral devices 202-204 to the corresponding controller among a plurality of controllers 301-304. Controllers 301-304 receive the corresponding teaching data and control the robotic arm 201 and peripheral devices 202-204 according to the received teaching data.
[0036] In the first embodiment, the teaching data for the robotic arm 201 is, for example, information about the angles of joints J1 to J6, or information about the position and orientation of the distal end of the robotic arm 201 within the workspace where it is arranged. The information about the angles of joints J1 to J6 is also used as teaching data for links 211 to 216. The teaching data for the robotic hand 202 is information about the positions of claws 221 and 222 relative to the hand body 220. The information about the positions of claws 221 and 222 is also used as teaching data for claws 221 and 222. The teaching data for the processing machine 203 is, for example, information about the position of door 231 relative to the machine body 230. The teaching data for the AGV 204 is, for example, information about the position and orientation of the AGV 204 within the workspace where the robotic arm 201 is arranged.
[0037] Figure 2This is an illustration illustrating an information processing apparatus 100 according to a first embodiment. The information processing apparatus 100 includes a computer body 110, a keyboard 111, and a mouse 112. Each of the keyboard 111 and mouse 112 is an example of an input portion connected to the computer body 110. Additionally, the information processing apparatus 100 includes a monitor 113, which is an example of a display portion. The monitor 113 is a display including a display screen 150 on which various images are displayed. The computer body 110 is a computing device. Note that although the case where the input portion and display portion are separate devices will be described, this disclosure is not limited thereto. For example, the input portion and display portion may be integrated into a single device, such as a touch panel display. Hereinafter, the case where the input devices are the keyboard 111 and mouse 112, and the display device is the monitor 113, will be described. Furthermore, although the case where the information processing apparatus 100 is a desktop PC, a general-purpose computer, will be described, this disclosure is not limited thereto. For example, the information processing device 100 may be other general-purpose computers such as laptop PCs, tablet PCs, or smartphones, or it may be a teaching pendant.
[0038] Figure 3 This is a block diagram of the information processing apparatus 100 according to the first embodiment. The computer body 110 includes a central processing unit (CPU) 120, which is an example of an information processing section and also an example of a processor. Additionally, the computer body 110 includes a read-only memory (ROM) 121, a random access memory (RAM) 122, and a hard disk drive (HDD) 123, each of which is an example of a storage device. Furthermore, the computer body 110 includes a disk drive 124 and a plurality of interfaces 125-128. Interfaces 125-128 are input / output interfaces. The CPU 120, ROM 121, RAM 122, HDD 123, disk drive 124, and interfaces 125-128 are communicatively connected to each other via a bus 129.
[0039] ROM 121 stores basic programs related to computer operation. RAM 122 is a storage device for temporary storage of various data (such as the results of calculations performed by CPU 120). HDD 123 can store various data, such as the results of calculations performed by CPU 120 and data obtained from external devices. HDD 123 can also store component information of robotic arm 201 and peripheral devices 202-204. In the first embodiment, HDD 123 stores program 140 that enables CPU 120 to perform various processes. Program 140 is application software that can be executed by CPU 120.
[0040] The CPU 120 performs the information processing described below by executing the program 140 stored in the HDD 123. The recording disk drive 124 can read various data and programs stored in the recording disk 115. The program 140 can be stored in the recording disk 115 and can be provided from the recording disk 115 to the information processing device 100.
[0041] Note that although in the first embodiment the program 140 is stored in the HDD 123, this disclosure is not limited thereto. The program 140 can be recorded on any recording medium, as long as the recording medium is a computer-readable, non-transitory recording medium. For example, floppy disks, hard disks, optical disks, magneto-optical disks, magnetic tapes, non-volatile memory, etc., can be used as recording media for providing the program 140 to a computer.
[0042] Interface 125 is connected to keyboard 111, and interface 126 is connected to mouse 112. Users can input data into the computer body 110 by operating input devices such as keyboard 111 or mouse 112. Interface 127 is connected to monitor 113. Monitor 113 can display various images on display screen 150, including user interface images for input or editing, and images for displaying the status of component models, etc., in a three-dimensional virtual space. Note that in the first embodiment, the user interface image is a graphical user interface image. Interface 128 can be connected to external storage device 114, such as rewritable non-volatile memory or an external HDD.
[0043] Figure 4 This is a flowchart illustrating the information processing method performed by the information processing apparatus 100 of the first embodiment. First, the CPU 120 accepts the registration of structural data for the robotic arm 201 by the user (S100). The structural data is model data of a virtual object corresponding to a structural object. The structural data includes three-dimensional shape data of the components of the virtual object and data regarding the connection method used to connect the components.
[0044] Figure 5A and Figure 5B This is a diagram illustrating step S100. Figure 5A The diagram shows... Figure 2 The user interface image UI1 on the display screen 150 of the monitor 113 shown in the diagram. Figure 5B The diagram illustrates the virtual space V defined in the processing performed by CPU 120, and the virtual objects arranged in the virtual space V. The virtual space V corresponds to the workspace described above. Figure 5A The user interface image UI1 shown in the diagram includes windows 401 and 402. The CPU 120 can accept the registration of the virtual robotic arm 201V corresponding to the robotic arm 201 in windows 401 and 402 of the user interface image UI1.
[0045] Window 401 includes a title bar 4011 and a registration area 4012. The title bar 4011 displays a name such as "Robot System" as a title. The registration area 4012 is where the user can input registration information using a keyboard 111 and a mouse 112, which are examples of input devices. The CPU 120 accepts the information registered by the user via the registration area 4012. Figure 5A The diagram illustrates the user registration of the status of the virtual robotic arm 201V corresponding to the robotic arm 201. The virtual robotic arm 201V is an example of the first model (data), which is a model that includes the three-dimensional shape data (hereinafter referred to as 3D data) corresponding to the robotic arm 201.
[0046] The CPU 120 arranges the user-registered virtual robotic arm 201V in the virtual space V. The virtual robotic arm 201V includes multiple interconnected components 210V to 216V. Components 210V to 216V correspond to links 210 to 216, respectively.
[0047] For example, the 3D data of each component 210V to 216V of the virtual robotic arm 201V is CAD data. The 3D data of each component 210V to 216V has a unique filename and is stored in a storage device such as HDD 123 as a file that the CPU 120 can reference.
[0048] like Figure 5A As shown in the diagram, information about virtual objects is defined using a tree structure T, in which nodes branch from the root R and are interconnected. Therefore, the information processing apparatus 100 of the first embodiment sets up virtual objects in the virtual space V using the information of the virtual objects. In the tree structure T, nodes can be freely set by the user. That is, the user can freely add, edit, or delete nodes. Furthermore, the user can freely name the root R and the nodes.
[0049] Since the vertical articulated robotic arm 201 has multiple interconnected links 210-216, multiple nodes N0-N6 are interconnected and registered relative to the root R. The root R corresponds to the virtual space V. Nodes N0-N6 correspond to components 210V-216V of the virtual robotic arm 201V, respectively.
[0050] exist Figure 5AIn the example, the user names and registers the root node R as "Ground". Additionally, the user registers its child node N0, whose parent node is root R, and the name "Robot 1_Base" corresponding to node N0. Furthermore, the user registers its child node N1, whose parent node is node N0, and the name "Robot 1_Axis 1" corresponding to node N1. Similar to node N1, the user also registers nodes N2 through N6. For example, the user registers its child node N6, whose parent node is node N5, and the name "Robot 1_Axis 6" corresponding to node N6. In this way, the user registers nodes N0 through N6 defined relative to root R, and unique names for nodes N0 through N6.
[0051] Next, we will use node N6 as an example to illustrate the method of registering information corresponding to each node N0 to N6. Assume that in the registration area 4012 of window 401, the user selects node N6 by manipulating the mouse pointer P1. In response to this selection operation, CPU 120 causes monitor 113 to display window 402 as the user interface image UI1. Window 402 is the registration window in which CPU 120 can receive the information of node N6. Note that the method of displaying window 402 is not limited to this. For example, CPU 120 can cause monitor 113 to display an image of a robotic arm, allowing the user to select a component image of the virtual robotic arm 201V by manipulating the mouse pointer P1. The robotic arm image is related to... Figure 5B The diagram shows a model image corresponding to the virtual robotic arm 201V. In this case, the CPU 120 can cause the monitor 113 to display a window 402 corresponding to the component image selected by the user in the robotic arm image by manipulating the mouse pointer P1.
[0052] Figure 5A Window 402 illustrates the status of information registration by the user. Window 402 includes a title bar 4021 and a registration area 4022. In the title bar 4021, the name "Robot 1_Axis 6" is displayed as the name registered for node N6. Registration area 4022 includes boxes 4023 and 4024. In this case, the name of the parent node N5 is registered in box 4023, and the connection method between component 216V of node N6 and component 215V of parent node N5 is selected and registered in box 4024. Additionally, registration area 4022 includes boxes 4025 and 4026. In this case, the relative position of component 216V to component 215V of parent node N5 is registered in box 4025, and the filename of the 3D data of component 216V of node N6 itself is registered in box 4026. The user can input information in boxes 4023 to 4026 using the keyboard 111 and mouse 112.
[0053] As described above, in step S100, the CPU 120 accepts the registration of structural data of the robotic arm 201 via a user-operated input device. Specifically, the CPU 120 can accept the registration of the virtual robotic arm 201V in the user interface image UI1. That is, the CPU 120 can accept the registration of the virtual robotic arm 201V using the names assigned to the virtual robotic arm 201V: "Robot 1_Base", "Robot 1_Axis 1", ..., and "Robot 1_Axis 6". Each name "Robot 1_Base", "Robot 1_Axis 1", ..., and "Robot 1_Axis 6" is an example of a third name.
[0054] Note that although the description describes the case where components 210V to 216V corresponding to links 210 to 216 of robotic arm 201 are registered component by component, this disclosure is not limited to this. For example, all virtual robotic arms 201V corresponding to robotic arm 201 can be registered at once. In this case, a file containing data for all components 210V to 216V of the virtual robotic arms 201V can be prepared. In another case, multiple robotic arms may be deployed. In this case, multiple virtual robotic arms can be registered.
[0055] Next, the CPU 120 accepts the registration of structural data of peripheral devices 202-204 by the user (S200). Note that the difference between step S200 and step S100 is only that the information about the object to be registered is about peripheral devices 202-204, not about robotic arm 201. Therefore, the processing in step S200 is the same as that in step S100.
[0056] Figure 6A and Figure 6B This is a diagram illustrating step S200. Figure 6A The diagram shows... Figure 2 The user interface image UI1 on the display screen 150 of the monitor 113 shown in the diagram. Figure 6B The diagram illustrates the virtual space V defined in the processing performed by CPU 120, and the virtual objects arranged within virtual space V. Figure 5A The same as in the middle, Figure 6A The user interface image UI1 shown in the diagram includes windows 401 and 402. The CPU 120 can accept the registration of virtual peripheral devices 202V to 204V corresponding to peripheral devices 202 to 204 in windows 401 and 402 of the user interface image UI1.
[0057] Figure 6AThe diagram illustrates the user's registration of the status of the virtual robotic arm 202V corresponding to the robotic arm 202. The virtual robotic arm 202V is an example of a second model (data), which is a model including 3D data corresponding to the robotic arm 202. Additionally, Figure 6A The diagram illustrates the status of the virtual machining machine 203V corresponding to the user registration and machining machine 203. The virtual machining machine 203V is an example of the second model, which includes 3D data corresponding to the machining machine 203. Furthermore, Figure 6A The diagram illustrates the user registration status of the virtual AGV 204V corresponding to AGV 204. Virtual AGV 204V is an example of the second model, which includes 3D data corresponding to AGV 204.
[0058] CPU 120 arranges the user-registered virtual peripheral devices 202V to 204V in the virtual space V. The virtual robotic arm 202V includes multiple interconnected components 220V to 222V. Component 220V corresponds to the hand body 220, component 221V corresponds to the claw 221, and component 222V corresponds to the claw 222. The virtual processing machine 203V includes multiple components 230V and 231V. Component 230V corresponds to the machine body 230, and component 231V corresponds to the door 231. The virtual AGV 204V is, for example, composed of a single component and corresponds to AGV 204.
[0059] The 3D data of each virtual peripheral device's 202V to 204V components is, for example, CAD data. Each component's 3D data has a unique filename and is stored as a file that the CPU 120 can reference in a storage device such as an HDD 123.
[0060] like Figure 6AAs shown in the diagram, the user adds nodes N7 to N12 corresponding to peripheral devices 202 to 204 to the tree structure. Since the hand body 220 of the robotic arm 202 is linked to link 216, node N7 corresponding to the hand body 220 is added by the user to node N6, which corresponds to link 216 and acts as its parent node. Furthermore, since the two claws 221 and 222 are linked to the hand body 220, nodes N8 and N9 corresponding to the two claws 221 and 222 are added by the user to node N7, which corresponds to the hand body 220 and acts as its parent node. Additionally, since the virtual processing machine 203V is arranged in the virtual space V, node N10 corresponding to the processing machine 203 is added by the user to the root R, which acts as its parent node. Finally, since the door 231 is linked to the machine body 230, node N11 corresponding to the door 231 is added by the user to node N10, which corresponds to the processing machine 203 and acts as its parent node. Furthermore, since the virtual AGV 204V is arranged in the virtual space V, the node N12 corresponding to AGV 204 is added by the user to the root R, which acts as the parent node. For example... Figure 6A As shown in the diagram, each node N7 to N12 is given a unique name by the user. Note that the method for registering the information of each node N7 to N12 and the method for naming each node N7 to N12 are the same as those for nodes N0 to N6 mentioned above.
[0061] Figure 6A The diagram illustrates how a user selects the state of node N8 by manipulating the mouse pointer P1 in the registration area 4012 of window 401. CPU 120 causes monitor 113 to display window 402 as the user interface image UI1. Window 402 is the registration window where CPU 120 can receive information about node N8. In this way, the user can register information about node N8 in CPU 120.
[0062] As described above, in step S200, the CPU 120 accepts the registration of structural data for peripheral devices 202-204 via a user-operated input device. Specifically, the CPU 120 can accept the registration of a virtual robot arm 202V in the user interface image UI1. That is, the CPU 120 can accept the registration of the virtual robot arm 202V using the names assigned to it: "Hand_Base", "Hand_Claw 1", and "Hand_Claw 2". Additionally, the CPU 120 can accept the registration of a virtual machining machine 203V in the user interface image UI1. That is, the CPU 120 can accept the registration of the virtual machining machine 203V using the names assigned to it: "Peripheral Device 1_Machining Machine" and "Peripheral Device 1_Gate". Furthermore, the CPU 120 can accept the registration of a virtual AGV 204V in the user interface image UI1. That is, the CPU 120 can accept the registration of the virtual AGV 204V using the name assigned to it: "Peripheral Device 2_AGV". Each name "Hand_Base", "Hand_Claw 1", and "Hand_Claw 2" is an example of a fourth name. Each name "Peripheral Device 1_Processing Machine" and "Peripheral Device 1_Door" is an example of a fourth name. The name "Peripheral Device 2_AGV" is an example of a fourth name.
[0063] Next, the CPU 120 accepts the registration of teaching data of the robotic arm 201 and peripheral devices 202-204 by the user (S300). In step S300, the CPU 120 causes the monitor 113 to display the user interface image UI1, in which the CPU 120 accepts the registration of teaching data of the robotic arm 201 and peripheral devices 202-204.
[0064] Figure 7 This is a diagram illustrating step S300. Figure 7 The diagram shows... Figure 2 The user interface image UI1 on the display screen 150 of the monitor 113 shown in the diagram. Figure 7 The user interface image UI1 shown in the diagram includes windows 401 and 403. Window 403 includes a title bar 4031 and a registration area 4032. The title bar 4031 displays a name such as "System Teach Point" as a title. The registration area 4032 is an area where the user can input registration information using a keyboard 111 and a mouse 112, which are examples of input devices. The CPU 120 accepts the information registered by the user via the registration area 4032.
[0065] Registration area 4032 includes a field 41 named "System Teaching Point List" and a field 42 for registering teaching data. Field 41 includes a box 411, which accepts the name of the dataset to be assigned to the teaching data as described below. Field 42 accepts the registration of the dataset of teaching data corresponding to the box 411 selected by the user.
[0066] Field 42 includes a user-created box 421. The user can input teaching data in box 421 using the keyboard 111 and mouse 112. Field 42 also includes a button 422. The user can add box 421 by manipulating the mouse pointer P1 to select button 422. Additionally, box 421 includes a button 423. The user can delete box 421 by manipulating the mouse pointer P1 to select button 423.
[0067] As an example Figure 7 The diagram illustrates the registration frames 4211-4216 that receive the teaching data T1-T6 from links 211-216 of the robotic arm 201. The teaching data T1-T6 constitute the teaching data T100 of the robotic arm 201. Teaching data T100 is an example of the first teaching data.
[0068] Additionally, as an example, Figure 7 The diagram illustrates frames 4217 and 4218, which respectively receive and register teaching data T7 and T8 from the grippers 221 and 222 of the robotic arm 202, which are peripheral devices. Teaching data T7 and T8 constitute teaching data T200 for the robotic arm 202. Teaching data T200 is an example of second teaching data.
[0069] Additionally, as an example, Figure 7 The diagram illustrates the registration of teach data T9 received by the processing machine 203 as a peripheral device. Teach data T9 is an example of second teach data.
[0070] Note that, although... Figure 7 As shown in the diagram, the teaching data T10 for AGV 204 is not registered, but the CPU 120 can still accept the registration of the teaching data T10 for AGV 204 as a peripheral device. The teaching data T10 is an example of the second teaching data.
[0071] Each teaching data point T1 to T10 is data regarding the position or orientation of the corresponding component. For example, each teaching data point T1 to T6 is information about the angle of the corresponding link relative to the parent link of the robotic arm 201. Additionally, each teaching data point T7 and T8 is information about the opening amount of the corresponding gripper 221 or 222 of the robotic arm 202, that is, information about the position of the corresponding gripper 221 or 222 relative to the hand body 220. Furthermore, teaching data T9 is information about the opening amount of the door 231 of the processing machine 203, that is, information about the position of the door 231 relative to the machine body 230.
[0072] The CPU 120 selects from multiple nodes N0 to N12 a node whose name is the same as the name of the component entered in box 421. The CPU 120 then accepts the registration of the teaching data entered in box 421 as the teaching data for the component of that node. For example, if the name "Robot 1_Axis 1" is entered in box 4211, the CPU 120 accepts the registration of the teaching data T1 entered in box 4211 as the teaching data for component 211V, that is, the teaching data for link 211.
[0073] Note that the names of nodes in the tree structure T (such as the name of node N12, "Peripheral Device 2_AGV") can be dragged and dropped from the registration area 4012 into field 42 by manipulating the mouse pointer P1. This simplifies the input process in field 42.
[0074] The teaching data T1 to T10 registered via field 42 are teaching data used to simultaneously instruct the entire robot system 1000. That is, teaching data T1 to T10 are teaching data used to simultaneously instruct the robotic arm 201 and peripheral devices 202 to 204. The teaching data T1 to T10 that synchronize the operation of the robotic arm 201 and peripheral devices 202 to 204 of the robot system 1000 can be centrally registered in the CPU 120 via field 42. That is, teaching data T1 to T10 are associated with each other to synchronize the operation of the robotic arm 201 and peripheral devices 202 to 204. Therefore, in the first embodiment, the teaching work of the entire robot system 1000 is simplified when teaching to synchronize the operation of the robotic arm 201 and peripheral devices 202 to 204.
[0075] Note that the teaching data T1 to T10 used to synchronize the robotic arm 201 and peripheral devices 202 to 204 can be included in a single dataset G1. That is, a single dataset G1 includes teaching data T1 to T10. Since the control unit 300 uses dataset G1 to calculate the trajectory, multiple datasets G1 can be created. Preferably, each of the multiple datasets G1 is named and managed separately.
[0076] Therefore, in the first embodiment, multiple datasets G1 are managed in field 41 by using a list of names assigned to datasets G1. That is, field 41 is a list of names assigned to datasets G1, each dataset including multiple teaching data T1 to T10 for synchronizing the various components with each other.
[0077] Field 41 includes at least one box created by the user. Figure 7 In this example, field 41 includes multiple boxes 411. Users can enter names for the corresponding dataset G1 in the corresponding boxes 411 using the keyboard 111 and mouse 112. Field 41 includes buttons 412. Users can add boxes 411 by manipulating the mouse pointer P1 and selecting button 422. Additionally, box 411 includes buttons 413. Users can delete boxes 411 by manipulating the mouse pointer P1 and selecting button 423.
[0078] Each of the multiple boxes 411 has a unique name assigned by the user. Figure 7 In the example, box 4111 has the name "System Teach Point_1", box 4112 has the name "System Teach Point_2", box 4113 has the name "System Teach Point_3", and box 4114 has the name "System Teach Point_4", which are entered by the user. Each name is an example of the fifth name.
[0079] Each box 411 includes a button 414. If the user selects one of the multiple buttons 414 included in field 41 by manipulating the mouse pointer P1, the dataset G1 corresponding to the selected box 411 is displayed in field 42. In field 42, the user can create, edit, or delete teaching data as appropriate.
[0080] In this way, CPU 120 causes monitor 113 to display multiple datasets G1 as a list represented by two fields 41 and 42. In this case, CPU 120 causes monitor 113 to display the names assigned to the multiple datasets G1 in field 41 as a list consisting of multiple boxes 411.
[0081] exist Figure 7 In the example, button 414 of box 4111, which is named "System Teaching Point_1", is selected, and a selection mark is assigned to button 414 of box 4111. In addition, multiple teaching data T1 to T10 of dataset G1 associated with box 4111 (i.e., named "System Teaching Point_1") are displayed in field 42.
[0082] The CPU 120 can simulate the state or operation of the virtual robotic arm 201V in the virtual space V based on the registered and accepted teaching data T100. Additionally, the CPU 120 can simulate the state or operation of the virtual robotic hand 202V in the virtual space V based on the registered and accepted teaching data T200. Furthermore, the CPU 120 can simulate the state or operation of the virtual processing machine 203V in the virtual space V based on the registered and accepted teaching data T9. Additionally, the CPU 120 can simulate the state or operation of the virtual AGV 204V in the virtual space V based on the registered and accepted teaching data T10. Specifically, the CPU 120 can perform the above simulations based on teaching data T1 to T10 corresponding to one of the multiple datasets G1 specified by the user through the mouse pointer P1 and button 414.
[0083] CPU 120 then causes monitor 113 to display the image obtained by simulation (S400). Figures 8A to 8D This is an example illustration of the overall images I1 to I4 of the first embodiment. Figure 8A The overall image I1 shown in the diagram is obtained by referring to the diagram. Figure 7 The image is obtained by simulating the teaching data T1 to T10 corresponding to the name "System Teaching Point_1" (i.e., box 4111). Figure 8B The overall image I2 shown in the diagram is obtained by referring to... Figure 7 The image is obtained by simulating the teaching data T1 to T10 corresponding to the name "System Teaching Point_2" (i.e., box 4112). Figure 8C The overall image I3 shown in the diagram is obtained by referring to the diagram. Figure 7 The image is obtained by simulating the teaching data T1 to T10 corresponding to the name "System Teaching Point_3" (i.e., box 4113). Figure 8D The overall image I4 shown in the diagram is obtained by referring to... Figure 7 The image is obtained by simulating the teaching data T1 to T10 corresponding to the name "System Teaching Point_4" (i.e., box 4114).
[0084] Suppose the user-specified box is box 4111. That is, the button selected by the user through the operation of the mouse pointer P1 is button 414 placed in box 4111. In this case, the CPU 120 causes the monitor 113 to display the overall image I1. The overall image I1 is obtained by simulating the state of multiple virtual objects in the virtual space V according to the teaching data T1 to T10 of the dataset G1 corresponding to box 4111.
[0085] The overall image I1 includes model image I11 corresponding to the virtual robotic arm 201V, model image I12 corresponding to the virtual robotic hand 202V, model image I13 corresponding to the virtual processing machine 203V, and model image I14 corresponding to the virtual AGV 204V. Model image I11 is an example of a first model image. Each model image I12 to I14 is an example of a second model image.
[0086] Model image I11 was obtained by simulating the state of the virtual robotic arm 201V in virtual space V based on teaching data T1 to T6. Model image I12 was obtained by simulating the state of the virtual robotic hand 202V in virtual space V based on teaching data T7 and T8. Model image I13 was obtained by simulating the state of the virtual processing machine 203V in virtual space V based on teaching data T9. Model image I14 was obtained by simulating the state of the virtual AGV 204V in virtual space V based on teaching data T10.
[0087] Furthermore, assume that the user-specified box is box 4112. That is, the button selected by the user through operating the mouse pointer P1 is button 414 located in box 4112. In this case, the CPU 120 causes the monitor 113 to display the overall image I2. The overall image I2 is obtained by simulating the state of multiple virtual objects in the virtual space V based on the teaching data T1 to T10 of the dataset G1 corresponding to box 4112.
[0088] The overall image I2 includes model image I21 corresponding to the virtual robotic arm 201V, model image I22 corresponding to the virtual robotic hand 202V, model image I23 corresponding to the virtual processing machine 203V, and model image I24 corresponding to the virtual AGV 204V. Model image I21 is an example of a first model image. Each model image I22 to I24 is an example of a second model image.
[0089] Furthermore, assume that the user-specified box is box 4113. That is, the button selected by the user through operating the mouse pointer P1 is button 414 located in box 4113. In this case, the CPU 120 causes the monitor 113 to display the overall image I3. The overall image I3 is obtained by simulating the state of multiple virtual objects in the virtual space V based on the teaching data T1 to T10 of the dataset G1 corresponding to box 4113.
[0090] The overall image I3 includes model image I31 corresponding to the virtual robotic arm 201V, model image I32 corresponding to the virtual robotic hand 202V, model image I33 corresponding to the virtual processing machine 203V, and model image I34 corresponding to the virtual AGV 204V. Model image I31 is an example of a first model image. Each model image I32 to I34 is an example of a second model image.
[0091] Furthermore, assume that the user-specified box is box 4114. That is, the button selected by the user through the operation of the mouse pointer P1 is button 414 located in box 4114. In this case, the CPU 120 causes the monitor 113 to display the overall image I4. The overall image I4 is obtained by simulating the state of multiple virtual objects in the virtual space V based on the teaching data T1 to T10 of the dataset G1 corresponding to box 4114.
[0092] The overall image I4 includes model image I41 corresponding to the virtual robotic arm 201V, model image I42 corresponding to the virtual robotic hand 202V, model image I43 corresponding to the virtual processing machine 203V, and model image I44 corresponding to the virtual AGV 204V. Model image I41 is an example of a first model image. Each model image I42 to I44 is an example of a second model image.
[0093] As described above, the CPU 120 causes the monitor 113 to display overall images I1, I2, I3, or I4, which are obtained by simulating the operation of multiple virtual objects 201V to 204V based on teaching data T1 to T10 of the selected dataset G1. Through this operation, the user can easily inspect the operation of the entire robot system 1000. Furthermore, the CPU 120 can accept the registration of data in which teaching data of the robotic arm 201 is associated with teaching data of peripheral devices 202 to 204. Therefore, the user can easily perform teaching operations on the entire robot system 1000. Note that although in this embodiment, the robotic arm, processing machine, and AGV are used as peripheral devices, this disclosure is not limited thereto. For example, another robotic arm besides the robotic arm 201 can be used as a peripheral device.
[0094] Second Embodiment
[0095] Next, the second embodiment will be described. Figure 9A and Figure 9B This is an illustration of the user interface image UI2 of the second embodiment. Note that the overall system configuration is the same as that of the first embodiment. Therefore, in the following description, components that are the same as those in the first embodiment are given the same reference numerals, and descriptions of the structure of these components will be omitted.
[0096] In the second embodiment, the processing of step S300 performed by the CPU 120 differs from that in the first embodiment. The CPU 120 can accept the registration of teaching data T100 and teaching data T200 in the user interface image UI2 by using the names pre-assigned to teaching data T100 and pre-assigned to teaching data T200.
[0097] Specifically, such as in Figure 9A As shown in the diagram, CPU 120 causes monitor 113 to display window 403A as user interface image UI2, instead of window 403 as described in the first embodiment. In window 403A, CPU 120 can accept the registration of the association between the teaching data T200 of robot 202 and a unique name.
[0098] exist Figure 9A In the example, the name "Hands Open" is entered in box 411A1 of field 41, and CPU 120 accepts the registration of the name "Hands Open". In field 42, teaching data T7 for claw 221 is entered in box 4217, and teaching data T8 for claw 222 is entered in box 4218. Therefore, CPU 120 accepts the registration of teaching data T200, which consists of teaching data T7 and T8 and is assigned to the name "Hands Open". Similarly, in Figure 9B In another window 404 shown in the diagram, the CPU 120 accepts the registration of teaching data T100, for example, assigned to the robotic arm 201 with the name "Robot 1_Teaching Point_1".
[0099] Window 404 includes a title bar 4041 and a registration area 4042. The title bar 4041 displays a name such as "Robot Teaching Point" as a title. The registration area 4042 is where the user can input registration information using a keyboard 111 and a mouse 112, which are examples of input devices. The CPU 120 accepts the information registered by the user via the registration area 4042. For example, as described above, node N21 is named "Robot 1_Teaching Point_1" and assigned teaching data T100.
[0100] like Figure 9B As shown in the diagram, assume a new box 411A2 is added to field 41 and selected by the user. For example, box 411A2 is given the name "System Teaching Point_1".
[0101] Additionally, suppose the name "Robot 1_Teach Point_1" for assigned teaching data T100 and the name "Hand Open" for assigned teaching data T200 are entered in field 42. When the names "Robot 1_Teach Point_1" and "Hand Open" are entered in field 42, the CPU 120 accepts the registration of the teaching data T100 of the robotic arm 201 and the teaching data T200 of the robotic hand. The name "Robot 1_Teach Point_1" is an example of the first name, and the name "Hand Open" is an example of the second name. For example, the user enters the name "Robot 1_Teach Point_1" in box 421A1 formed in field 42; the user enters the name "Hand Open" in box 421A2 formed in field 42. The input can be performed by the user through drag-and-drop operation using mouse 112, or by adding boxes by pressing button 422.
[0102] Therefore, in the second embodiment, teaching data for the robotic arm 201 and peripheral devices 202-204 can be registered using pre-registered names such as "Robot 1_Teach Point_1" and "Hand Open". Since the user does not need to input values every time teaching data is registered, the efficiency of the teaching process is improved. Note that this embodiment and its variations can be combined with the above-described embodiments and their variations in a predetermined information processing device or method.
[0103] Third Embodiment
[0104] Next, the third embodiment will be described. Figure 10 This is an illustration of the user interface image UI3 of the third embodiment. Note that the overall system configuration is the same as that of the first embodiment. Therefore, in the following description, components that are the same as those in the first embodiment are given the same reference numerals, and descriptions of the structure of these components will be omitted.
[0105] The difference between this embodiment and the first embodiment is the addition of a window 405 to the user interface image UI3. Similar to the first embodiment, multiple datasets are registered in window 403. Each dataset consists of teach data used to indicate the instantaneous state of the robot system 1000. In window 405, the user refers to a playback list of the datasets registered in window 403, and images created from the datasets in the playback list are displayed continuously. Therefore, the CPU 120 can cause the monitor 113 to display an image as if the entire robot system 1000 is operating. Through this operation, the user can visually identify changes in the state of the robot system 1000 and more easily inspect the operation of the robot system 1000.
[0106] Window 405 includes a title bar 4051 and a registration area 4052. The title bar 4051 displays a name such as "Continuous Display of System Teach Points" as a title. The registration area 4052 includes a display list 45 where a user can input registration information using a keyboard 111 and a mouse 112, which are examples of input devices.
[0107] Display list 45 includes a user-created box 451. The user can input data corresponding to dataset G1 into box 451 using keyboard 111 and mouse 112. Figure 7 The name of the box 451 is displayed. The display list 45 includes a button 452. The user can add a box 451 by selecting button 452 using the mouse pointer. Additionally, box 451 includes a button 453. The user can delete box 451 by selecting button 453 using the mouse pointer. The display list 45 is created by the user entering a name in box 451.
[0108] The CPU 120 accepts information registration from the user via display list 45. For example, in display list 45, the names "System Teach Point_1", "System Teach Point_2", "System Teach Point_3", and "System Teach Point_4", as described in the first embodiment, are registered by the user in this order. Each name is associated with a corresponding dataset G1. Input on display list 45 can be performed by the user through drag-and-drop operations using mouse 112, or by entering letters in box 451 (added via selection button 452) using keyboard 111. The dataset G1 associated with each name includes multiple teaching data T1 to T10.
[0109] For example, two or more of the multiple datasets G1 selected by the user are four datasets G1 corresponding to the names "System Teaching Point_1" to "System Teaching Point_4".
[0110] CPU 120 causes monitor 113 to display data corresponding to the four datasets G1 and... Figures 8A to 8DThe overall images I1, I2, I3, and I4 shown in the diagram are switched sequentially at predetermined time intervals (i.e., displayed one image at a time). Specifically, the CPU 120 simulates the overall images in descending order from the list created in window 405, and the monitor 113 displays the overall images. The time interval can be registered by entering a value in box 455 of window 405. Furthermore, when the user selects the start button 456, the display of overall images I1 to I4 begins. Through this operation, the overall images I1 to I4 are switched (i.e., displayed one image at a time), allowing the user to easily check the operation of the entire robot system 1000. Note that this embodiment and its variations can be combined with the above-described embodiments and their variations in a predetermined information processing device or method.
[0111] Fourth embodiment
[0112] Next, the fourth embodiment will be described. Figure 11A This is a diagram illustrating the robot system 1000D of the fourth embodiment. Figure 11B This is a diagram illustrating the virtual space V and the virtual objects arranged in the virtual space V in the fourth embodiment. Figure 11C This is an illustration of the user interface image UI4 of the fourth embodiment. The robot system 1000D includes the robotic arm 201, robotic hand 202, and AGV 204 described in the first embodiment. Additionally, the robot system 1000D includes a robotic hand 205 attached to the AGV 204. The robotic hand 205 has the same structure as the robotic hand 202. The robotic hand 202 attached to the robotic arm 201 is an example of a first peripheral device, while the robotic hand 205 attached to the AGV 204 is an example of a second peripheral device.
[0113] The difference between this embodiment and the first embodiment is that window 401D is used instead of window 401 in the user interface image UI4. In the first embodiment, a method for registering models of peripheral devices 202-204 and a method for registering teaching data for peripheral devices 202-204 were described. In the fourth embodiment, a method for reusing the registered models and teaching data will be described.
[0114] like Figure 11C As shown in the diagram, in the fourth embodiment, nodes N41 and N42 are added to the tree structure T. Node N41 has the name "Hands Open" associated with pre-registered teaching data. Node N42 has the name "Hands Closed" associated with pre-registered teaching data.
[0115] The CPU 120 stores a group 1001 containing data from the virtual robotic arm 202V and teaching data corresponding to nodes N41 and N42 in the HDD 123. The teaching data corresponding to nodes N41 and N42 is an example of the second teaching data.
[0116] For example, the user adds group 1003 as a child node to node N12. Group 1003 is the same as group 1001 stored in HDD 123. CPU 120 then accepts the registration of group 1003. In this way, groups previously registered by the user can be reused. In this example, a simulation is performed in virtual space V, such that a virtual robot arm 202V is attached to a virtual robot arm 201V, and a virtual robot arm 205V with the same configuration as the virtual robot arm 202V is attached to a virtual AGV 204V. As described above, in the user interface image UI4, CPU 120 can accept the registration of information for group 1001 registered for robot arm 202, as well as the registration of information for robot arm 205. Therefore, since the information of group 1001 related to the structure of the peripheral device can be reused, the registration or teaching work is simplified. Note that in a predetermined information processing apparatus or predetermined information processing method, this embodiment and its variations can be combined with the above-described embodiments and their variations.
[0117] Note that although the first to fourth embodiments describe the robotic arm 201 as a vertical articulated type robotic arm, this disclosure is not limited thereto. For example, the robotic arm can be any type of robotic arm, such as a horizontal articulated type robotic arm, a parallel linkage robotic arm, and a Cartesian coordinate robotic arm. Furthermore, the mechanism for gripping the workpiece can be implemented using a machine capable of automatically performing telescopic, flexing, vertical, left-right, pivoting, or combined movements based on information data stored in a storage device of a control device.
[0118] As described above, this disclosure simplifies the teaching process for the entire system.
[0119] Other embodiments
[0120] Embodiments of the present invention can also be implemented by a computer in a system or device, which reads and executes computer-executable instructions (e.g., one or more programs) recorded on a storage medium (more fully referred to as a "non-transitory computer-readable storage medium") to perform one or more functions in the above embodiments, and / or includes one or more circuits (e.g., application-specific integrated circuits (ASICs)) for performing one or more functions in the above embodiments, and by methods performed by the computer in the system or device, such as by reading and executing computer-executable instructions from the storage medium to perform one or more functions in the above embodiments and / or by controlling one or more circuits to perform one or more functions in the above embodiments. The computer may include one or more processors (e.g., a central processing unit (CPU), a microprocessor unit (MPU)) and may include separate computers or a network of separate processors to read and execute computer-executable instructions. The computer-executable instructions may, for example, be provided to the computer from a network or storage medium. The storage medium may include, for example, a hard disk, random access memory (RAM), read-only memory (ROM), storage devices for distributed computing systems, optical discs (e.g., compressed optical discs (CDs), digital versatile optical discs (DVDs), or Blu-ray discs (BDs)). TM One or more of the following: flash memory devices, memory cards, etc.
[0121] The embodiments of the present invention can also be implemented by providing software (programs) that perform the functions of the above embodiments to a system or device via a network or various storage media, and the computer or central processing unit (CPU) or microprocessor unit (MPU) of the system or device reads out and executes the program.
[0122] While the invention has been described with reference to exemplary embodiments, it should be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims should be followed with the broadest interpretation to cover all such modifications and equivalent structures and functions.
Claims
1. An information processing apparatus, comprising: The information processing section is configured to accept the registration of first teaching data and second teaching data so that the first teaching data and the second teaching data are associated with each other, the first teaching data being associated with the robotic arm and the second teaching data being associated with peripheral devices arranged around the robotic arm. as well as Display section, The information processing unit is configured to cause the display unit to display a user interface image, in which the information processing unit accepts the registration of first teaching data and second teaching data. The information processing section is configured to accept registrations in the user interface image of a first model corresponding to the robotic arm and a second model corresponding to the peripheral device. The information processing section is configured as follows: Based on the first teaching data, simulate the state of the first model in the virtual space, and Based on the second teaching data, simulate the state of the second model in the virtual space. The peripheral device mentioned above is a first peripheral device, and The information processing section is configured to accept the registration of information associated with the first peripheral device and including the group of the second model and the second teaching data as the registration of information associated with the second peripheral device in the user interface image.
2. An information processing device, comprising: The information processing section is configured to accept the registration of first teaching data and second teaching data so that the first teaching data and the second teaching data are associated with each other, the first teaching data being associated with the robotic arm and the second teaching data being associated with peripheral devices arranged around the robotic arm. as well as Display section, The information processing unit is configured to cause the display unit to display a user interface image, in which the information processing unit accepts the registration of first teaching data and second teaching data. The information processing section is configured to accept registrations in the user interface image of a first model corresponding to the robotic arm and a second model corresponding to the peripheral device. The information processing section is configured as follows: Based on the first teaching data, simulate the state of the first model in the virtual space, and Based on the second teaching data, simulate the state of the second model in the virtual space. The information processing section is configured to cause the display section to display a first model image and a second model image. The first model image is obtained by simulating the state of a first model in virtual space based on first teaching data, and the second model image is obtained by simulating the state of a second model in virtual space based on second teaching data. The information processing section is configured to accept registration of multiple datasets, each dataset including first teaching data and second teaching data, and The information processing section is configured to cause the display section to display a first model image and a second model image corresponding to each of two or more datasets specified by the user in the plurality of datasets, such that an image including both the first model image and the second model image is switched.
3. The information processing apparatus according to claim 2, wherein the information processing portion is configured to accept registration of the first teaching data and the second teaching data in the user interface image by using a first name assigned to the first teaching data and a second name assigned to the second teaching data.
4. The information processing apparatus according to claim 3, wherein the information processing portion is configured to accept an allocation between a second name and second teaching data in the user interface image.
5. The information processing apparatus according to claim 1, wherein the information processing part is configured to accept registration of the first model and the second model in the user interface image by using a third name assigned to the first model and a fourth name assigned to the second model.
6. The information processing apparatus according to claim 1, wherein the information processing section is configured to cause the display section to display a first model image and a second model image, the first model image being obtained by simulating the state of a first model in a virtual space based on first teaching data, and the second model image being obtained by simulating the state of a second model in a virtual space based on second teaching data.
7. The information processing apparatus according to claim 1, wherein the information processing section is configured to accept registration of a plurality of datasets, each dataset including first teaching data and second teaching data.
8. The information processing apparatus according to claim 2, wherein the information processing section is configured to accept registration of a plurality of datasets, each dataset including first teaching data and second teaching data, and The information processing section is configured to cause the display section to display the plurality of datasets as a list.
9. The information processing apparatus according to claim 2, wherein the information processing section is configured to accept registration of a plurality of datasets, each dataset including first teaching data and second teaching data, and The information processing section is configured to cause the display section to display the fifth name assigned to each of the plurality of datasets, and to display the fifth name as a list.
10. The information processing apparatus according to claim 6, wherein the information processing section is configured to accept registration of a plurality of datasets, each dataset including first teaching data and second teaching data, and The information processing section is configured to cause the display section to display a first model image and a second model image corresponding to a user-specified dataset from the plurality of datasets.
11. The information processing apparatus according to any one of claims 1 to 10, wherein the information processing portion is configured to accept the registration of a dataset in which the first teaching data and the second teaching data are associated with each other.
12. A system for information processing, comprising: The information processing apparatus according to any one of claims 1 to 11; robotic arm; as well as Peripheral devices.
13. The system according to claim 12 further includes a control unit, the control unit being configured to Based on the first teaching data obtained from the information processing device, the robotic arm is controlled, and The peripheral device is controlled based on the second teaching data obtained from the information processing device.
14. An information processing method executed by the information processing apparatus according to claim 1 or 2, comprising: The registration of first teaching data and second teaching data is accepted so that the first teaching data and the second teaching data are associated with each other, the first teaching data being associated with the robotic arm and the second teaching data being associated with peripheral devices arranged around the robotic arm.
15. A method of manufacturing a product by using the system according to claim 12 or 13.
16. A computer-readable non-transitory recording medium storing a program that causes a computer to perform the information processing method according to claim 14.
Citation Information
Patent Citations
Teaching system, teaching method and robot system
CN104002297A
Robot interference determination device, robot interference determination method and program
JP2019171501A