Robot teaching device with icon programming function
The robot teaching device addresses the complexity of displaying multiple position data and correcting them within icon programming by using mark and shape changes on instruction icons, and separately managing execution and editing lines, thereby enhancing programming convenience and accuracy.
Patent Information
- Application Number
- JP2024094523
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-06-11
- Publication Date
- 2025-06-03
- Estimated Expiration
- 2039-12-09
AI Technical Summary
In icon programming for robots, displaying multiple position data on a single operation instruction icon can become complex, and there is a need to visually and concisely represent when position data is corrected and used within the program. Additionally, there is a challenge in separately setting the execution line of a program and the selection line for editing to avoid unintended changes in the execution start line.
A robot teaching device that includes mark display means for associating and displaying identifiers of position data on instruction icons when multiple position data are present, and shape changing means to indicate when position data is corrected and used. The device also features execution start line display means to visually separate the execution start position from editing operations.
The solution improves the convenience of icon programming by providing a clear and concise visual representation of multiple position data and their corrections, while preventing unintended changes to the execution start line, thus enhancing user understanding and program integrity.
Smart Images

Figure 0007688201000001 
Figure 0007688201000002 
Figure 0007688201000003
Abstract
Description
Technical Field
[0001] The present invention relates to a robot teaching device, and more particularly to a robot teaching device having an icon programming function.
Background Art
[0002] As a method for creating an operation program for a robot, icon programming has been conventionally proposed in which various operation commands are replaced with icons and the operation program for the robot is visually created by arranging the icons on a creation screen. As a technology related to such a programming method, the following documents are known.
[0003] Patent Document 1 discloses selecting a function icon from a first area displaying a function icon having a state window for displaying a setting outline of parameters of a function constituting a control program for a robot, arranging a function icon obtained by duplicating the function icon in a second area, setting parameters of the function represented by the function icon arranged in the second area, creating a control program based on the function icon and the setting, and changing the appearance of the function icon according to the setting. As an example of the function icon, a passing point icon having a state window for displaying the name of the passing point is disclosed.
Prior Art Documents
Patent Documents
[0004]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0005] In a robot operation program, robot operation instructions often include position data. In an icon programming environment, by displaying position data on an icon representing a robot operation instruction, it is possible to present to the user that the operation instruction includes position data. However, in the case of highly functional operation instructions, one operation instruction may include multiple position data. If there are multiple position data, the display of the position data on the icon may become complicated. Therefore, it is desired to visually and concisely represent the fact that one operation instruction includes multiple position data. Also, in the case of highly functional operation instructions, the position data set by the user may be corrected and used inside the robot program. If it is not presented to the user that the position data is being corrected and used, the user may misunderstand that the robot is performing an operation different from the intention. Therefore, it is also necessary to be able to visually and concisely understand that the position data is being corrected and used.
[0006] On the other hand, in a robot operation program, there may be a case where it is desired to execute the program from a specified intermediate line. In the case of a text-based program, there is a method of designating that line as the execution start line by aligning the cursor with the intermediate line. In the case of an icon-based program, in order to edit the set value of an instruction icon, it is necessary to select that icon. Therefore, if an attempt is made to change the execution line by selecting an icon in the same way as a text-based program, there is a possibility that it cannot be determined whether the selection operation is for the purpose of editing the program or for specifying the execution start line. For this reason, the selection of an icon for editing may be accompanied by a change in the execution start line, leading to an unintended change in the execution start line. Therefore, a method that can separately set the execution line of the program and the selection line for editing is also required.
[0007] Therefore, a technology for improving the convenience of the icon programming function is required.
Means for Solving the Problem
[0008] One aspect of the present disclosure provides a robot teaching device that generates a robot operation program by arranging instruction icons representing robot operation instructions, and includes mark display means for displaying a plurality of marks associating identifiers of position data on one instruction icon when the operation instruction includes a plurality of position data. Another aspect of the present disclosure provides a robot teaching device that generates a robot operation program by arranging instruction icons representing robot operation instructions, and includes mark display means for associating and displaying a mark associating an identifier of position data on the instruction icon when the operation instruction includes position data, and shape changing means for changing the shape of the mark when the position data is corrected and used. Another aspect of the present disclosure provides a robot teaching device that generates a robot operation program by arranging instruction icons representing robot operation instructions, and includes execution start line display means for displaying an execution start line indicating an execution start position in the operation program on the instruction icon.
Advantages of the Invention
[0009] According to one aspect of the present disclosure, the convenience of the icon programming function is improved.
Brief Description of the Drawings
[0010]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Figure 15
Figure 16
Figure 17A
Figure 17B
Figure 17C
Embodiments for Carrying Out the Invention
[0011] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. In each drawing, the same or similar components are given the same or similar reference numerals. Also, the embodiments described below do not limit the technical scope and the meaning of the terms of the invention described in the claims.
[0012] Figure 1 shows the schematic configuration of the robot teaching device 10 in this embodiment. The robot teaching device 10 is a computer device including a processor 11, a display unit 12, an input unit 13, a storage unit 14, etc. The processor 11 is composed of a CPU (central processing unit), a quantum processor, etc. The display unit 12 is composed of a liquid crystal display, an organic EL (electro-luminescence) display, etc. The input unit 13 is composed of a touch panel device, a keyboard, a mouse, etc., and the storage unit 14 is composed of a semiconductor memory, a magnetic storage device, etc.
[0013] The robot teaching device 10 further includes icon programming software 15 stored in the storage unit 14. The icon programming software 15 is read out and executed by the processor 11 according to the information from the input unit 13. The icon programming software 15 is composed of an event-driven program that displays a programming screen on the display unit 12 and generates an operation program 16 for the robot 20 according to the information from the input unit 13.
[0014] The generated operation program 16 is transmitted to the robot control device 30 via wire or wirelessly. The robot control device 30 includes an operation control unit 31 that controls the operations of the robot mechanism unit 21 and the tool 22 according to the operation program 16. The robot mechanism unit 21 may be an industrial robot such as an articulated robot or a parallel link type robot, or may be a humanoid or the like. The tool 22 is composed of a suction hand, a gripping hand, a welding torch, a screw fastening tool, etc. according to the work content of the robot 20. The robot 20 may further include a sensor 23. The sensor 23 is composed of, for example, a vision sensor, a force sensor, a vibration sensor, etc. The robot control device 30 may correct the position data in the operation program 16 based on the information from the sensor 23.
[0015] Figure 2 shows the functional blocks of the robot teaching device 10. The icon programming software 15 causes the processor of the robot teaching device 10 to function as a programming screen display means 40, an icon display means 41, an icon selection means 42, and a mark display means 43. Further, the icon programming software 15 may cause the processor to function as a detailed data setting means 44, a color change means 45, a shape change means 46, an operation program generation means 47, a virtual screen display means 48, an execution start line display means 49, and an execution start line movement means 32. Hereinafter, the details of each means will be described.
[0016] Figure 3 shows an example of the programming screen 50. The processor 11 functions as a programming screen display means 40 and displays the programming screen 50 on the display unit 12. The programming screen 50 may include a creation screen 51 capable of creating an operation program 16 by arranging icons representing operation commands of the robot 20 on the time axis 54, a selection screen 52 capable of selecting one icon from various prepared icons 60 - 67, and a detailed screen 53 for setting detailed data of the icons 60 - 61 arranged on the creation screen 51. Note that the icons may be arranged in time series, and in this case, the time axis 54 does not have to be displayed.
[0017] Further, the processor 11 functions as an icon display means 41 and displays various icons 60 - 67 representing operation commands of the robot 20 on the selection screen 52. Furthermore, the processor 11 functions as an icon selection means 42, selects any one of the icons 60 - 67 on the selection screen 52, and arranges a copy of the icon on the time axis 54 of the creation screen 51.
[0018] The icons 60-67 may include instruction icons 60-64 representing low-function operation instructions and high-function icons 65-67 representing high-function operation instructions. The instruction icons 60-64 include, for example, a linear movement instruction, an arc movement instruction, a work acquisition instruction, a hand closing instruction, a hand opening instruction, etc. The high-function icons 65-67 include, for example, an application instruction for repeating a predetermined operation pattern, a correction instruction based on information from the sensor 23, etc. The high-function icons 65-67 have, for example, a U-shaped form, and one or more instruction icons 60-64 for teaching an operation pattern can be arranged on the time axis 54 in the area surrounded by the high-function icons 65-67. The arranged one or more instruction icons 60-64 are used after being corrected as an operation pattern of the application instruction or are used after being corrected by the correction instruction. The application instruction includes, for example, a palletizing instruction for stacking works on a pallet one by one, a depalletizing instruction for unloading the works stacked on the pallet one by one, a spot welding instruction for welding one or more weld points, a screw fastening instruction for fastening one or more screws, etc.
[0019] Also, the processor 11 functions as a mark display means 43 and, when the operation instruction includes position data, associates and displays a mark 69 for associating an identifier 68 of the position data on the instruction icon 60. When the operation instruction includes a plurality of position data, the processor 11 may associate and display a plurality of marks 69 on one instruction icon 60. Thereby, it becomes possible to visually and concisely display on the instruction icon that one operation instruction includes a plurality of position data. The identifier 68 of the position data is composed of, for example, numbers, alphabets, combinations thereof, etc., and is identification information of the position data commonly used within the operation program. Since the identifier 68 of the position data is common within the operation program, the same identifier 68 can be specified when the same position is to be used. Also, the mark 69 may be a pin mark stuck into the instruction icon 61, but other forms, such as an arrow mark, a balloon mark, etc., may also be used.
[0020] Figure 4 shows an arc movement command as an example of an operation command including a plurality of position data. The arc movement command is an operation command for the robot 20 to move in an arc from the position 1 of the starting point via the position 2 to the position 3, and includes two position data of the position 2 and the position 3. As shown in FIG. 3, when the instruction icon 61 arranged on the time axis 54 is selected, the processor 11 functions as the detailed data setting means 44 and displays a detailed screen 53 for setting the detailed data of the instruction icon 61.
[0021] Figure 5 shows an example of the detailed screen of the operation command in FIG. 4. The detailed data of the arc movement command includes two position data 70 of the position 2 and the position 3, the moving speed 71 of the robot, the positioning format 72 after movement, and the like. The position data 70 may be an automatically input initial value, or may be the current position of the actual robot or the virtual robot set by pressing the reflection button 73 of the arm position, or may be the position data manually input by the user. Further, the position data 70 may be switched to various coordinate systems, for example, the user coordinate system, the robot coordinate system, etc. by pressing the switching button 75. When the operation button 74 of the arm position is pressed, the actual robot or the virtual robot can be operated to the set position data 70 to confirm the position of the robot. The positioning format includes a "fixed stop" mode that temporarily stops after movement, a "smooth" mode that continuously moves to the next operation command, and the like.
[0022] Furthermore, the processor 11 may function as the color change means 45, and when the position data 70 on the detailed screen 53 is not input or is incorrect, at least one of the color of the identifier 68 and the mark 69 of the position data may be changed. FIG. 6 shows a state in which the colors of the identifier 68 and the mark 69 of the position data are changed. Thereby, it becomes possible to individually grasp on the instruction icon 60 that the position 2 is not input or is incorrect.
[0023] In addition, the processor 11 may function as the shape changing means 46, and when correcting and using the position data 70 set on the detailed screen 53, the shape of the mark 69 may be changed. FIG. 7 shows a work acquisition command as an example of an operation command for correcting and using the position data. The work acquisition command is an operation command for the robot to move from the position 1 at the starting point, via the position 2' at the standby position, to the position 2 where the work is acquired. FIG. 8 shows an example of the setting screen for the operation command in FIG. 7. The detailed data of the work acquisition command includes, in addition to the position data 70 at the position 2, the moving speed 71 of the robot, the positioning format 72 after the movement, and the correction amount 76 (height) of the position data 70. When the work acquisition command is executed, the position data 70 at the position 2 is corrected based on the correction amount 76 (height) to calculate the position 2'. When the position data 70 is corrected and used in this way, the shape of the mark 69 may be changed, for example, from a pin mark to a diamond mark. This makes it possible to visually and simply grasp on the command icon 60 that the position data 70 is corrected and used.
[0024] Also, the processor 11 may change the shape of the mark 69 even when the position data 70 is corrected and used in response to an application command for correcting and using the position data 70. FIG. 9 shows a palletizing command as an example of an application command for correcting and using the position data. As described above, the palletizing command is an application command for the robot 20 to acquire the work W and stack it one by one on the pallet. For example, the robot 20 moves from the position 1 at the standby position to the position 2, then moves to the position 3 where the work W is acquired, closes the hand, then returns to the position 2, moves to the position 4 which is the approach point of the pallet, moves to the stacking point at the position 5, opens the hand, then moves to the escape point at the position 6, and returns to the position 1 at the standby position via the position 2.
[0025] Figure 10 shows an example of a stacking pattern of palletizing instructions and an example of a path pattern. In the palletizing instructions, the workpieces can be stacked in an orderly manner simply by setting the stacking pattern and the path pattern. The stacking pattern is determined based on, for example, the number of matrix rows, the position data of the representative points, etc. Also, the path pattern is determined based on, for example, the position data of the approach point, the stacking point, and the escape point. The three position data of the path pattern may be relative positions and are corrected and used based on the detailed data of the stacking pattern.
[0026] Figure 11 shows an example of an icon group representing the palletizing instructions in FIG. 9. The palletizing instructions are programmed by arranging a high - function icon 65 representing the palletizing instructions on the time axis 54 of the creation screen 51 and arranging instruction icons 60 representing the path pattern in the area surrounded by the high - function icon 65. In this example, three instruction icons 60 for straight - line movement to the approach point, the stacking point, and the escape point, which are the path pattern, are arranged in the area surrounded by the high - function icon 65. The detailed data of the path pattern can be set on the detailed screen by selecting the instruction icon 60, and the detailed data of the stacking pattern can be set on the detailed screen by selecting the high - function icon 65.
[0027] Figure 12 shows an example of the detailed screen 53 of the high - function icon 65 in FIG. 11. In the detailed screen 53 of the high - function icon 65 representing the palletizing instructions, the detailed data of the stacking pattern is set. The detailed data includes, for example, the number 77 of matrix rows, the position data 70 of the representative points, etc.
[0028] Figures 13 and 14 show how the position data of the path pattern is corrected and used. For example, in the first execution, as shown in FIG. 13, the position data 70 of the path pattern is corrected based on the stacking pattern so that the position [1, 1, 1] becomes the stacking point. For example, in the second execution, the position data 70 of the path pattern is corrected based on the stacking pattern so that the position [2, 1, 1] becomes the stacking point. In this way, the path pattern is corrected by applying an offset to the position data 70 of the path pattern according to the stacking pattern.
[0029] Referring to FIG. 11 again, since the three position data of the path pattern are corrected and used based on the stacking pattern, the processor 11 changes the shape of the mark 69 on the three instruction icons 60 arranged in the area surrounded by the high-function icon 65, for example, from a pin mark to a rhombus mark. As a result, it becomes possible to visually and simply grasp that the position data of the instruction icons 60 arranged in the area surrounded by the high-function icon 65 are corrected and used.
[0030] Note that the processor 11 may also change the shape of the mark 69 when the position data are corrected and used according to a correction instruction based on the information from the sensor 23 shown in FIG. 1. As a result, it also becomes possible to visually and simply grasp that the position data are corrected and used based on the information from the sensor 23.
[0031] Referring to FIG. 2 again, the processor 11 functions as the operation program generation means 47 and generates an operation program when the programming is completed. Further, the processor 11 may function as the virtual screen display means 48 and display a virtual screen in which the identifier of the position data and the mark are arranged at the position on the virtual space indicated by the position data 70. FIG. 15 shows a virtual screen 55 in which the identifier 68 of the position data and the mark 69 are arranged. A virtual robot 81 is further arranged in the virtual space 80, and the generated operation program can be simulated by the virtual robot 81. As a result, it becomes possible to grasp the position of the position data 70 used in the operation program in graphic information.
[0032] FIG. 16 shows an example of the operation of the robot teaching device in this embodiment. In step S10, a programming screen including a selection screen, a creation screen, a detail screen, etc. is displayed. In step S11, various icons (command icons, high-function icons, etc.) are displayed on the selection screen. In step S12, an icon is selected and a copy of the icon is placed on the creation screen. In step S13, when the operation command includes position data, a mark associating the identifier of the position data is associated and displayed on the command icon. At this time, when one operation command includes a plurality of position data, a plurality of marks may be associated and displayed on one command icon. As a result, it becomes possible to visually and simply display on the command icon that one operation command includes a plurality of position data.
[0033] In step S14, detailed data of the operation command (position data, moving speed, positioning format, etc.) is set on the detail screen. In step S15, when the position data is not input or is incorrect, at least one of the color of the identifier of the position data and the mark is changed. As a result, it becomes possible to individually grasp on the command icon that the position data is not input or is incorrect. In step S16, when the position data is corrected and used, the shape of the mark is changed. As a result, it becomes possible to visually and simply grasp on the command icon that the position data is corrected and used.
[0034] In step S17, it is determined whether or not the programming has been completed. If the programming has not been completed (NO in step S17), the process returns to step S12, and the process of placing the icon on the time axis of the creation screen is repeated. If the programming has been completed (YES in step S17), an operation program is generated in step S18.
[0035] Figures 17A - 17C show an example of the execution start line 90. As shown in Figure 17A, the processor 11 may function as the execution start line display means 49 and display the execution start line 90 indicating the execution start position in the operation program on the instruction icon 60. For example, the execution start line 90 may take the form of a line orthogonal to the time axis 54. The instruction icons 60 - 62 arranged on the time axis 54 are each assigned an execution number indicating the execution position in the operation program. Then, the processor 11 displays the execution start line 90 on the instruction icon 60 with the execution number (hereinafter referred to as the execution start number) indicating the execution start position in the operation program. In the initial setting, it is preferable to display the execution start line 90 on the first instruction icon 60.
[0036] As shown in Figure 17B, the processor 11 may function as the execution start line moving means 32 and move the execution start line 90 to another instruction icon 61 in response to an operation such as a drag by the user. Also, the processor 11 may move the execution start line 90 to the instruction icon closest to that position in response to an operation such as a double - click (or double - tap) on the time axis 54 or the creation screen 51 by the user. According to the movement of the execution start line 90 in response to an operation such as a double - click (or double - tap), it becomes possible to easily change the execution start position even for a long operation program. At this time, the execution start number is changed to the execution number of the instruction icon to which the execution start line 90 has been moved.
[0037] When the generated operation program is executed, the execution of the operation program starts from the position of the execution start line 90. During the execution of the operation program, it is preferable for the processor 11 to move the execution start line 90 according to the execution status of the operation program. By moving the execution start line 90 in response to the execution of the operation program in this way, it becomes possible to visually grasp which part of the operation program is being executed. Also, at the end of the operation program, the processor 11 stops the execution start line 90 on the instruction icon that was being executed at that time. The next execution start number is set to the execution number of that instruction icon.
[0038] When the running operation program is paused, the processor 11 pauses the execution start line 90 on the instruction icon that was being executed at that time. The next execution start number is set to the execution number of that instruction icon. When the operation program is executed again, the operation instructions in the middle of execution are resumed. If the position of the execution start line 90 is changed while the operation program is paused, the processor 11 may display a confirmation screen to check whether it is okay to change the execution start number from the paused instruction icon to another instruction icon. When "Yes" is selected on the confirmation screen, the next execution start number is changed to the execution number of the instruction icon that has moved the execution start line 90. When "No" is selected on the confirmation screen, the next execution start number is not changed. When "No" is selected, since the actual execution start number and the position of the execution start line 90 will be different, when the operation program is started again, it may be okay to change the execution start number (whether it is okay to start the operation program from the instruction icon where the current execution start line 90 is), and the confirmation screen may be displayed again. Furthermore, if the execution start line 90 is moved to another instruction icon while "No" is selected, a confirmation screen may be displayed to check whether it is okay to change the execution start number from the paused instruction icon to another instruction icon. Once the execution start number is changed from the paused instruction icon to another instruction icon, it is advisable not to display the confirmation screen even if the position of the execution start line 90 is changed thereafter. This improves the convenience for the user.
[0039] By providing such an execution start line 90, it becomes possible to set the execution start position in the operation program without selecting the instruction icon 61. On the other hand, when the instruction icon 60 is selected as shown in FIG. 17C, it is possible to set the detailed data of the operation instruction without changing the execution start position in the operation program. The instruction icon 60 can have the status of being in the execution state and the status of being edited at the same time. However, in this embodiment, the instruction icon 60 has the status of being edited, and the execution start line 90 has the status of being in the execution state. Since the execution start line 90 can be arbitrarily moved by the user, only the status of the execution state can be changed without changing the status of being edited. Also, if the execution start line 90 is not moved, the content of the instruction icon 60 can be edited without changing the status of the execution state. In other words, when an instruction icon is selected, it is possible to prevent an unintended change in the execution start position.
[0040] According to the above embodiment, the convenience of the icon programming function is improved.
[0041] The program executed by the aforementioned processor may be recorded and provided on a computer-readable non-transitory recording medium, such as a CD-ROM or the like.
[0042] Although various embodiments have been described in this specification, it should be recognized that the present invention is not limited to the aforementioned embodiments, and various changes can be made within the scope described in the following claims.
Explanation of Reference Numerals
[0043] Positions 1 - 6 Standby position 2’ Robot teaching device 10 Processor 11 Display unit 12 Input unit 13 Storage unit 14 Icon programming software 15 Operation program 16 Robot 20 21 Robot mechanism unit 22 Tool 23 Sensor 30 Robot control device 31 Operation control unit 32 Execution start line movement means 40 Programming screen display means 41 Icon display means 42 Icon selection means 43 Mark display means 44 Detailed data setting means 45 Color change means 46 Shape change means 47 Operation program generation means 48 Virtual screen display means 49 Execution start line display means 50 Programming screen 51 Creation screen 52 Selection screen 53 Detail screen 54 Time axis 55 Virtual screen 60 - 64 Instruction icons 65 - 67 High - function icons 68 Identifier of position data 69 Mark 70 Position data 71 Moving speed 72 Positioning format 73 Reflection button 74 Operation button 75 Switching button 76 Correction amount 77 Number of matrix rows 80 Virtual space 81 Virtual robot 90 Execution start line W Workpiece
Claims
1. A robot teaching device that generates an operation program for a robot by arranging command icons representing operation commands for the robot, a mark display means for displaying, when the operation command includes position data, a mark associated with an identifier of the position data in association with the command icon; a shape changing means for changing a shape of the mark when the position data is corrected and used; A robot teaching device comprising:
2. The robot teaching device according to claim 1 , wherein the shape changing means changes the shape of the mark when the position data is corrected and used in accordance with an application command for correcting the position data or a correction command based on information from a sensor.
3. 3. The robot teaching device according to claim 1, further comprising a virtual screen display means for displaying a virtual screen on which an identifier of the position data and the mark are arranged at a position indicated by the position data in a virtual space.
4. 4. The robot teaching device according to claim 1, further comprising an execution start line display means for displaying an execution start line indicating an execution start position in the operation program on the command icon.
Citation Information
Patent Citations
Communication equipment equipped with communication network selection function
JP1989098366A
The robot interface
JP1992507022A
Programming method for system including robot
JP1996249026A
Image capturing device, image capturing method, and program
WO2015045645A1