JP2022017732A - Device for creating robot motion program and method for improving robot motion program - Google Patents

Device for creating robot motion program and method for improving robot motion program Download PDF

Info

Publication number
JP2022017732A
JP2022017732A JP2020120444A JP2020120444A JP2022017732A JP 2022017732 A JP2022017732 A JP 2022017732A JP 2020120444 A JP2020120444 A JP 2020120444A JP 2020120444 A JP2020120444 A JP 2020120444A JP 2022017732 A JP2022017732 A JP 2022017732A
Authority
JP
Japan
Prior art keywords
command
operation program
commands
robot
program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2020120444A
Other languages
Japanese (ja)
Inventor
彰展 佐藤
Akinobu Sato
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2020120444A priority Critical patent/JP2022017732A/en
Publication of JP2022017732A publication Critical patent/JP2022017732A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

To provide a technology for assisting workers without specialized knowledge or experience in creating or adjusting a robot motion program so that they can actually increase the efficiency of their work.SOLUTION: A device for creating a robot motion program comprises: an acceptance unit for accepting a motion program which includes at least one command and describes work to be performed by a robot; a storage unit for storing some commands that affect the time required for execution of the motion program out of a plurality of commands that can be executed by the robot; and a detection unit for detecting a command that matches the command stored by the storage unit out of the accepted motion programs.SELECTED DRAWING: Figure 6

Description

本開示は、ロボットの動作プログラムの作成装置、およびロボットの動作プログラムの改善方法に関する。 The present disclosure relates to a device for creating a robot motion program and a method for improving the robot motion program.

従来、産業用コントローラーのプログラムの開発支援を行う技術が存在する。特許文献1においては、複数のサーボモーターの同期制御において、タイミングを決定するマスター軸に取り付けられているマスターエンコーダーの回転速度が、以下の処理により決定される。まず、マスターエンコーダーの回転速度の候補が抽出される。そして、各候補について、その回転速度で制御プログラムを実行した場合に制約に違反しないかがチェックされる。たとえば、その回転速度で制御プログラムを実行した場合に、圧縮処理が、指定されている時間、行われるかがチェックされる。全ての候補についてチェックが行われ、制約に違反しない最速の回転速度が特定されて、装置開発者に示される。その結果、最も生産量を多くすることが可能なマスター軸のマスターエンコーダーの回転速度が得られる。 Conventionally, there are technologies that support the development of programs for industrial controllers. In Patent Document 1, in the synchronous control of a plurality of servomotors, the rotation speed of the master encoder attached to the master shaft that determines the timing is determined by the following processing. First, candidates for the rotation speed of the master encoder are extracted. Then, for each candidate, it is checked whether or not the constraint is violated when the control program is executed at the rotation speed. For example, when the control program is executed at that rotation speed, it is checked whether the compression process is performed for a specified time. All candidates are checked, the fastest rotation speed that does not violate the constraints is identified and shown to the device developer. As a result, the rotation speed of the master encoder of the master axis capable of increasing the production amount can be obtained.

特開2014-222378号公報Japanese Unexamined Patent Publication No. 2014-222378

しかし、サーボモーターの回転速度を上げてロボットに動作を行わせると、ロボットアームの残留振動が大きくなる。その結果、ロボットの制御点の位置精度が低下したり、ロボットアームやエンドエフェクターが他の構造物と干渉したりすることがある。また、エンドエフェクターが保持している作業対象物が、落下する場合もある。このため、特許文献1の技術をロボットに適用しても、決定された制御内容で実際の生産が可能であるとは限らない。ロボットの作業の効率を上げるためには、ロボットの動作プログラムを作成する作業者が、実際にロボットの動作を確認しながら、動作プログラムを調整する。現在、そのような調整には、専門知識と経験が求められる。専門知識と経験がない作業者が、ロボットの動作プログラムを生成または調整する際に、実際に作業の効率を上げられるように支援を行う技術が、求められている。 However, if the rotation speed of the servo motor is increased to cause the robot to perform an operation, the residual vibration of the robot arm becomes large. As a result, the position accuracy of the control points of the robot may decrease, or the robot arm or end effector may interfere with other structures. In addition, the work object held by the end effector may fall. Therefore, even if the technique of Patent Document 1 is applied to a robot, it is not always possible to actually produce the robot with the determined control contents. In order to improve the efficiency of the work of the robot, the worker who creates the operation program of the robot adjusts the operation program while actually checking the operation of the robot. Currently, such coordination requires expertise and experience. There is a need for technology that helps workers without specialized knowledge and experience to actually improve the efficiency of their work when generating or adjusting robot motion programs.

本開示の一形態によれば、ロボットの動作プログラムの作成装置が提供される。このロボットの動作プログラムの作成装置は、1以上のコマンドを含み、ロボットが実行する作業を記述する動作プログラムを受け付ける受付部と、前記ロボットが実行できる複数のコマンドのうち、動作プログラムの実行に要する時間に影響を与える一部のコマンドを記憶している記憶部と、受け付けた前記動作プログラムの中から、前記記憶部に記憶された前記コマンドと一致するコマンドを検出する検出部と、を備える。 According to one embodiment of the present disclosure, a device for creating a robot motion program is provided. This robot operation program creation device includes one or more commands, and is required to execute the operation program among the reception unit that receives the operation program that describes the work to be executed by the robot and the plurality of commands that can be executed by the robot. It includes a storage unit that stores some commands that affect time, and a detection unit that detects a command that matches the command stored in the storage unit from among the received operation programs.

本実施形態のロボットシステム1を模式的に示す説明図である。It is explanatory drawing which shows typically the robot system 1 of this embodiment. ロボット100の動作を指示する動作プログラムを生成するための統合開発環境のインターフェイス画面DIを表す図である。It is a figure which shows the interface screen DI of the integrated development environment for generating the operation program which instructes the operation of a robot 100. インターフェイス画面DIを使用して動作プログラムを生成する際の処理を示すフローチャートである。It is a flowchart which shows the process at the time of generating the operation program using the interface screen DI. 編集画面De02の動作プログラムを表す表示の例を示す図である。It is a figure which shows the example of the display which shows the operation program of the edit screen De02. 編集画面De02の動作プログラムを表す表示の他の例を示す図である。It is a figure which shows the other example of the display which shows the operation program of the edit screen De02. 編集画面De02の動作プログラムを表す表示の例を示す図である。It is a figure which shows the example of the display which shows the operation program of the edit screen De02. 編集画面De02の動作プログラムを表す表示の他の例を示す図である。It is a figure which shows the other example of the display which shows the operation program of the edit screen De02. 編集画面De02における改善案の反映後のプログラムリストの例を示す図である。It is a figure which shows the example of the program list after the improvement plan is reflected in the edit screen De02. プログラムリストDp09における作業Op1,Op2と、各作業の目標時間Drt1,Drt2と、を示す図である。It is a figure which shows the work Op1, Op2 in the program list Dp09, and the target time Drt1, Drt2 of each work. ロボット100のロボット制御装置300において実行される動作プログラムのプログラムリストDp10を示す図である。It is a figure which shows the program list Dp10 of the operation program executed in the robot control device 300 of a robot 100. 過去の修正履歴の表示を示す図である。It is a figure which shows the display of the past correction history. 第3実施形態において、ステップS600で示される実行時間を示す表示である。In the third embodiment, it is a display showing the execution time shown in step S600.

A.第1実施形態:
A1.ロボットシステムの構成:
図1は、本実施形態のロボットシステム1を模式的に示す説明図である。本実施形態のロボットシステム1は、ロボット100と、エンドエフェクター200と、カメラ700と、設定装置600と、を備える。
A. First Embodiment:
A1. Robot system configuration:
FIG. 1 is an explanatory diagram schematically showing the robot system 1 of the present embodiment. The robot system 1 of the present embodiment includes a robot 100, an end effector 200, a camera 700, and a setting device 600.

ロボット100は、ロボット制御装置300と、4個の関節J1~J4を備えたアーム110と、を有する4軸ロボットである。関節J1,J2,J4は、ねじり関節である。関節J3は、直動関節である。アーム110を構成する関節と関節の間の構成要素を、本明細書において「アーム要素」と呼ぶ。図1においては、アーム110に含まれる複数のアーム要素のうち、関節J1と関節J2の間のアーム要素110a、関節J2と関節J3の間のアーム要素110b、およびアーム110の先端を構成するアーム要素110dについて、符号を付して示す。 The robot 100 is a 4-axis robot having a robot control device 300 and an arm 110 having four joints J1 to J4. The joints J1, J2 and J4 are torsion joints. The joint J3 is a linear motion joint. The joints that make up the arm 110 and the components between the joints are referred to herein as "arm elements." In FIG. 1, among a plurality of arm elements included in the arm 110, the arm element 110a between the joint J1 and the joint J2, the arm element 110b between the joint J2 and the joint J3, and the arm constituting the tip of the arm 110. The elements 110d are indicated by reference numerals.

ロボット100は、4個の関節J1~J4をそれぞれサーボモーターで回転または直進させることにより、アーム110の先端部に取りつけられたエンドエフェクター200を、3次元空間中の指定された位置に指定された姿勢で配することができる。3次元空間におけるエンドエフェクター200の位置を代表する地点を、「制御点」またはTCP(Tool Center Point)とも呼ぶ。 The robot 100 has designated the end effector 200 attached to the tip of the arm 110 at a designated position in the three-dimensional space by rotating or rotating the four joints J1 to J4 with a servomotor, respectively. It can be arranged in a posture. A point representing the position of the end effector 200 in the three-dimensional space is also referred to as a "control point" or TCP (Tool Center Point).

ロボット100は、各関節に、サーボモーター410と、減速機510と、モーター角度センサー420と、を備える。図1では、技術の理解を容易にするために、関節J1についてのみ、模式的にサーボモーター410と、減速機510と、モーター角度センサー420と、を示している。 The robot 100 includes a servomotor 410, a speed reducer 510, and a motor angle sensor 420 at each joint. FIG. 1 schematically shows a servomotor 410, a speed reducer 510, and a motor angle sensor 420 only for the joint J1 in order to facilitate the understanding of the technique.

サーボモーター410は、ロボット制御装置300から電流を供給されて駆動力を発生させる。より具体的には、サーボモーター410は、ロボット制御装置300から電流を供給されて、その出力軸410oを回転させる。 The servo motor 410 is supplied with an electric current from the robot control device 300 to generate a driving force. More specifically, the servomotor 410 is supplied with a current from the robot control device 300 to rotate its output shaft 410o.

モーター角度センサー420は、サーボモーター410の出力軸410oの角度位置Pmを検出する。モーター角度センサー420は、ロータリエンコーダーである。モーター角度センサー420が検出した出力軸410oの角度位置Pmは、ロボット制御装置300に送信される。 The motor angle sensor 420 detects the angle position Pm of the output shaft 410o of the servo motor 410. The motor angle sensor 420 is a rotary encoder. The angle position Pm of the output shaft 410o detected by the motor angle sensor 420 is transmitted to the robot control device 300.

減速機510は、入力軸510iと出力軸510oを備える。減速機510は、入力軸510iに対する回転入力を、回転入力より回転速度が低い回転出力に変換して、出力軸510oから出力する。減速機510の入力軸510iは、サーボモーター410の出力軸410oに接続されている。 The speed reducer 510 includes an input shaft 510i and an output shaft 510o. The speed reducer 510 converts the rotation input for the input shaft 510i into a rotation output having a rotation speed lower than that of the rotation input, and outputs the rotation input from the output shaft 510o. The input shaft 510i of the speed reducer 510 is connected to the output shaft 410o of the servomotor 410.

アーム要素110aは、関節J1の減速機510の出力軸510oに固定されている。その結果、アーム要素110aは、サーボモーター410の出力軸410oの回転によって、減速機510を介して、関節J1において回転される。 The arm element 110a is fixed to the output shaft 510o of the speed reducer 510 of the joint J1. As a result, the arm element 110a is rotated at the joint J1 via the speed reducer 510 by the rotation of the output shaft 410o of the servomotor 410.

ロボット制御装置300は、アーム110およびエンドエフェクター200を制御する制御装置である。ロボット制御装置300は、ロボット100の筐体内に収容されている。ロボット制御装置300は、プロセッサーであるCPU(Central Processing Unit)310と、RAM(Random Access Memory)330と、ROM(Read Only Memory)340と、を備えるコンピューターを含む。CPU310は、ROM340に記憶されたコンピュータープログラムをRAM330にロードして実行することによって、様々な機能を実現する。 The robot control device 300 is a control device that controls the arm 110 and the end effector 200. The robot control device 300 is housed in the housing of the robot 100. The robot control device 300 includes a computer including a CPU (Central Processing Unit) 310 which is a processor, a RAM (Random Access Memory) 330, and a ROM (Read Only Memory) 340. The CPU 310 realizes various functions by loading and executing a computer program stored in the ROM 340 into the RAM 330.

エンドエフェクター200は、アーム110の先端に取りつけられている。エンドエフェクター200は、ロボット制御装置300に制御されて、ワークピースW01をつかむことができ、また、つかんでいるワークピースW01を離すことができる。その結果、たとえば、ロボット100のアーム110とエンドエフェクター200とは、ロボット制御装置300に制御されて、作業対象物であるワークピースW01をつかんで移動させることができる。なお、図1においては、技術の理解を容易にするため、エンドエフェクター200を単純な円柱で示している。 The end effector 200 is attached to the tip of the arm 110. The end effector 200 can be controlled by the robot control device 300 to grab the workpiece W01 and release the gripped workpiece W01. As a result, for example, the arm 110 and the end effector 200 of the robot 100 can be controlled by the robot control device 300 to grab and move the workpiece W01 which is a work object. In FIG. 1, the end effector 200 is shown by a simple cylinder in order to facilitate the understanding of the technique.

カメラ700は、ワークピースW01と、そのワークピースW01の周辺と、アーム110と、を含む写真画像を撮像することができる。カメラ700が生成した画像は、ロボット制御装置300に送信され、ロボット100の制御に使用される。 The camera 700 can capture a photographic image including the workpiece W01, the periphery of the workpiece W01, and the arm 110. The image generated by the camera 700 is transmitted to the robot control device 300 and used for controlling the robot 100.

設定装置600は、ロボット100の動作を規定する動作プログラムを生成する。設定装置600は、出力装置として機能するディスプレイ602と、入力装置として機能するキーボード604およびマウス605と、を備えたコンピューターである。設定装置600は、さらに、プロセッサーであるCPU610と、RAM630と、ROM640と、を備えている。CPU610は、ROM640に記憶されたコンピュータープログラムをRAM630にロードして実行することによって、後述する様々な機能を実現する。 The setting device 600 generates an operation program that defines the operation of the robot 100. The setting device 600 is a computer including a display 602 that functions as an output device, and a keyboard 604 and a mouse 605 that function as input devices. The setting device 600 further includes a CPU 610, a RAM 630, and a ROM 640, which are processors. The CPU 610 realizes various functions described later by loading and executing a computer program stored in the ROM 640 into the RAM 630.

設定装置600は、ロボット制御装置300に接続されている。設定装置600によって生成された動作プログラムが、ロボット制御装置300に送信される。ロボット制御装置300は、設定装置600から受信した動作プログラムにしたがってロボット100を動作させる。 The setting device 600 is connected to the robot control device 300. The operation program generated by the setting device 600 is transmitted to the robot control device 300. The robot control device 300 operates the robot 100 according to the operation program received from the setting device 600.

A2.動作プログラムの実行に要する時間に影響を与えるコマンド:
ロボット100の動作プログラムは、1以上のコマンドを含む。ロボット100の動作プログラムは、それらのコマンドにより、ロボットが実行する作業を記述する。設定装置600のRAM630は、ロボット100が実行できる複数のコマンドのうち、動作プログラムの実行に要する時間に影響を与える一部のコマンドCt1を記憶している。RAM630は、さらに、ロボット100が実行できる複数のコマンドのうち、2以上のコマンドの組み合わせであって、動作プログラムの実行に要する時間に影響を与える組み合わせCt2を、記憶している。これらRAM630に記憶されているこれらの1以上のコマンドを、まとめてコマンドCtsと呼ぶ。
A2. Commands that affect the time it takes to execute a running program:
The operation program of the robot 100 includes one or more commands. The operation program of the robot 100 describes the work performed by the robot by these commands. The RAM 630 of the setting device 600 stores a part of the commands Ct1 that affect the time required to execute the operation program among the plurality of commands that can be executed by the robot 100. The RAM 630 further stores a combination Ct2 that is a combination of two or more commands among a plurality of commands that can be executed by the robot 100 and that affects the time required to execute the operation program. These one or more commands stored in the RAM 630 are collectively referred to as command Cts.

設定装置600のRAM630は、動作プログラムの実行に要する時間に影響を与える1以上のコマンドCtsとして、以下のコマンド、またはコマンドの組み合わせを記憶している。 The RAM 630 of the setting device 600 stores the following commands or a combination of commands as one or more command Cts that affect the time required to execute the operation program.

(a)Speed:制御点の移動速度の上限を定める。Speedコマンドに続いて記述されるパラメーターが移動速度の上限を表す。 (A) Speed: An upper limit of the moving speed of the control point is set. The parameter described after the Speed command indicates the upper limit of the movement speed.

制御点の移動速度は、ある地点と他の地点の間を制御点が移動するのに要する時間に、影響を与える。このため、Speedコマンドは、動作プログラムの実行に要する時間に影響を与えるコマンドCt1として、RAM630に記憶されている。 The speed of movement of a control point affects the time it takes for a control point to move between one point and another. Therefore, the Speed command is stored in the RAM 630 as a command Ct1 that affects the time required to execute the operation program.

(b)Accel:制御点の加速度の上限、および減速度の上限を定める。「減速度」とは、負の加速度である。Accelコマンドに続いて記述される一つ目のパラメーターが加速度の上限を表し、二つ目のパラメーターが減速度の上限を表す。 (B) Accel: The upper limit of acceleration and the upper limit of deceleration of the control point are set. "Deceleration" is a negative acceleration. The first parameter described following the Accel command represents the upper limit of acceleration, and the second parameter represents the upper limit of deceleration.

制御点の加速度および減速度は、制御点の移動速度、ひいてはある地点と他の地点の間を制御点が移動するのに要する時間に、影響を与える。このため、Accelコマンドは、動作プログラムの実行に要する時間に影響を与えるコマンドCt1として、RAM630に記憶されている。 The acceleration and deceleration of a control point affect the speed of movement of the control point and thus the time it takes for the control point to move between one point and another. Therefore, the Accel command is stored in the RAM 630 as a command Ct1 that affects the time required to execute the operation program.

(c)Go:目標地点へ制御点を直線的に移動させる。Goコマンドに続いて記述されるパラメーターが、目標地点を表す。
RAM630は、動作プログラムの実行に要する時間に影響を与えるコマンドの組み合わせとして、連続する複数のGoコマンドの組み合わせを記憶している。
(C) Go: Move the control point linearly to the target point. The parameters described following the Go command represent the target point.
The RAM 630 stores a combination of a plurality of consecutive Go commands as a combination of commands that affects the time required to execute the operation program.

連続する複数のGoコマンドの組み合わせは、多くの場合、制御点を最終的な目標地点へ移動させる際に、ある地点を回避して制御点を移動させるために、制御点が1以上の中継地点を通るように、設定される。このため、最終的な目標地点以外の目標地点、すなわち中継地点への移動を指定しているGoコマンドの目標地点を、より適切に設定することにより、出発地点から最終的な目標地点への制御点の移動に要する時間を、短縮できる場合がある。よって、連続する複数のGoコマンドの組み合わせは、動作プログラムの実行に要する時間に影響を与えるコマンドの組み合わせCt2として、RAM630に記憶されている。 In many cases, a combination of multiple consecutive Go commands is a relay point with one or more control points in order to avoid a certain point and move the control point when moving the control point to the final target point. It is set to pass through. Therefore, by setting the target point other than the final target point, that is, the target point of the Go command that specifies the movement to the relay point more appropriately, the control from the starting point to the final target point is performed. In some cases, the time required to move a point can be shortened. Therefore, the combination of a plurality of consecutive Go commands is stored in the RAM 630 as a combination of commands Ct2 that affects the time required to execute the operation program.

(d)Wait:指定された時間、ロボット100の動作を停止させる。Waitコマンドに続いて記述されるパラメーターが、ロボット100の動作を停止させる時間を表す。たとえば、残留振動が発生すると予想される動作のコマンドの後に、Waitコマンドが配される。
Vrun:ワークピースW01を表すCAD(Computer-Aided Design)データに基づく3次元図形の拡大、縮小および回転を行って、カメラ700で取得した3次元画像に対してマッチングを行うことにより、ワークピースW01の位置および姿勢を検出する。
(D) Wait: The operation of the robot 100 is stopped for a specified time. The parameter described following the Wait command represents the time for stopping the operation of the robot 100. For example, the Wait command is placed after the command of the operation in which residual vibration is expected to occur.
Vrun: Workpiece W01 by enlarging, reducing and rotating a 3D figure based on CAD (Computer-Aided Design) data representing the workpiece W01 and matching it with the 3D image acquired by the camera 700. Detects the position and posture of.

Vrunコマンドは、3次元図形の拡大、縮小および回転、ならびにマッチングを行うことから、他のAccelコマンドやGoコマンド等に比べて、CPU610の処理負荷が大きい。このため、Vrunコマンドの処理が完了するまでロボット100の動作が停止する。その結果、Vrunコマンドの実行により、ロボット100の動作が停止している状態で、Vrunコマンドに隣接するWaitコマンドで停止すべき旨が指定されている時間が、経過する可能性がある。そのような場合には、動作プログラムからWaitコマンドを削除することにより、動作プログラムの実行に要する時間を短縮できる。よって、連続するWaitコマンドとVrunコマンドの組み合わせは、動作プログラムの実行に要する時間に影響を与えるコマンドの組み合わせCt2として、RAM630に記憶されている。なお、Waitコマンドが先であり、Vrunコマンドが後である態様と、Vrunコマンドが先であり、Waitコマンドが後である態様との、いずれもがRAM630に記憶されている。 Since the Vrun command enlarges, reduces, rotates, and matches a three-dimensional figure, the processing load of the CPU 610 is larger than that of other Accel commands, Go commands, and the like. Therefore, the operation of the robot 100 is stopped until the processing of the Vrun command is completed. As a result, there is a possibility that the time specified that the robot 100 should be stopped by the Wait command adjacent to the Vrun command may elapse while the operation of the robot 100 is stopped by executing the Vrun command. In such a case, the time required to execute the operation program can be shortened by deleting the Wait command from the operation program. Therefore, the combination of the continuous Wait command and the Vrun command is stored in the RAM 630 as a combination of commands Ct2 that affects the time required to execute the operation program. It should be noted that both the mode in which the Wait command is first and the Vrun command is later and the mode in which the Vrun command is first and the Wait command is later are stored in the RAM 630.

A3.動作プログラムの生成:
(1)インターフェイス画面DIを使用して動作プログラムを生成する際の処理:
図2は、ロボット100の動作を指示する動作プログラムを生成するための統合開発環境(IDE:Integrated Development Environment)のインターフェイス画面DIを表す図である。インターフェイス画面DIは、シミュレーション画面Dsと、編集画面De02と、プログラム実行ボタンBeと、を含む。
A3. Generation of operation program:
(1) Processing when generating an operation program using the interface screen DI:
FIG. 2 is a diagram showing an interface screen DI of an integrated development environment (IDE) for generating an operation program instructing the operation of the robot 100. The interface screen DI includes a simulation screen Ds, an edit screen De02, and a program execution button Be.

編集画面De02は、プログラミング言語で表現されたプログラムリストの形式で表された動作プログラムを生成するためのインターフェイスである。ユーザーは、入力装置としてのキーボード604およびマウス605により、編集画面De02において、プログラムリストの形式の動作プログラムを生成する。ユーザーは、キーボード604およびマウス605を使用して、プログラムリストを最初から生成することができる。ユーザーは、RAM630またはROM640に格納されているプログラムリストをIDEに読み込んで、キーボード604およびマウス605を使用して、プログラムリストを修正することにより、新たなプログラムリストを生成することもできる。 The edit screen De02 is an interface for generating an operation program expressed in the form of a program list expressed in a programming language. The user generates an operation program in the form of a program list on the edit screen De02 by using the keyboard 604 and the mouse 605 as input devices. The user can use the keyboard 604 and mouse 605 to generate the program list from scratch. The user can also generate a new program list by reading the program list stored in the RAM 630 or ROM 640 into the IDE and modifying the program list using the keyboard 604 and the mouse 605.

シミュレーション画面Dsは、編集画面De02によって生成された動作プログラムの一部または全部を実行した場合のロボット100の動作を動画で示すための画面である。シミュレーション画面Dsは、シミュレーション実行ボタンBsを含む。 The simulation screen Ds is a screen for showing a moving image of the operation of the robot 100 when a part or all of the operation program generated by the editing screen De02 is executed. The simulation screen Ds includes a simulation execution button Bs.

シミュレーション実行ボタンBsが押されると、シミュレーション画面Dsにおいて、編集画面De02によって生成された動作プログラムの一部または全部を実行した場合のロボット100の動作が動画で示される。編集画面De02において、プログラムリストの一部が指定されて、シミュレーション実行ボタンBsが押された場合には、プログラムリストのうちの指定された部分のみが、シミュレーション画面Ds上で実行される。編集画面De02において、プログラムリストの一部が指定されずに、シミュレーション実行ボタンBsが押された場合には、プログラムリスト全体が、シミュレーション画面Ds上で実行される。 When the simulation execution button Bs is pressed, the operation of the robot 100 when a part or all of the operation program generated by the edit screen De02 is executed on the simulation screen Ds is shown by a moving image. When a part of the program list is specified on the edit screen De02 and the simulation execution button Bs is pressed, only the specified part of the program list is executed on the simulation screen Ds. When the simulation execution button Bs is pressed without specifying a part of the program list on the edit screen De02, the entire program list is executed on the simulation screen Ds.

ただし、動作プログラムに従った動作ではない物理的なロボット100の挙動については、シミュレーション画面Dsにおけるロボット100の表示に反映されない。動作プログラムに従った動作ではない物理的なロボット100の挙動には、ロボット100の各部の慣性に起因する残留振動が含まれる。 However, the physical behavior of the robot 100 that does not follow the movement program is not reflected in the display of the robot 100 on the simulation screen Ds. The physical behavior of the robot 100 that does not follow the motion program includes residual vibration due to the inertia of each part of the robot 100.

プログラム実行ボタンBeは、編集画面De02によって生成された動作プログラムの一部または全部を、実際にロボット100に実行させるためのボタンである。編集画面De02において、プログラムリストの一部が指定されて、プログラム実行ボタンBeが押された場合には、プログラムリストのうちの指定された部分のみが、ロボット100によって実行される。編集画面De02において、プログラムリストの一部が指定されずに、プログラム実行ボタンBeが押された場合には、プログラムリスト全体が、ロボット100によって実行される。 The program execution button Be is a button for causing the robot 100 to actually execute a part or all of the operation program generated by the edit screen De02. When a part of the program list is specified on the edit screen De02 and the program execution button Be is pressed, only the specified part of the program list is executed by the robot 100. When the program execution button Be is pressed without specifying a part of the program list on the edit screen De02, the entire program list is executed by the robot 100.

作業者は、たとえば、動作プログラムに従った動作ではない物理的なロボット100の挙動を確認するために、動作プログラムの一部または全部を、実際にロボット100に実行させる。 For example, the operator causes the robot 100 to actually execute a part or all of the motion program in order to confirm the behavior of the physical robot 100 that does not follow the motion program.

図3は、インターフェイス画面DIを使用して動作プログラムを生成する際の処理を示すフローチャートである。図3の処理によって、ロボットの動作プログラムの改善方法が実行される。図3の処理は、具体的には、設定装置600のCPU610によって実行される。 FIG. 3 is a flowchart showing a process when an operation program is generated using the interface screen DI. By the process of FIG. 3, the method of improving the operation program of the robot is executed. Specifically, the process of FIG. 3 is executed by the CPU 610 of the setting device 600.

ステップS100において、CPU610は、キーボード604およびマウス605、ならびにRAM630およびROM640のうちの1以上の構成から、動作プログラムを受け付ける。ステップS100の処理を実現するCPU610の機能部を、「受付部611」として図1に示す。 In step S100, the CPU 610 receives an operation program from the configuration of one or more of the keyboard 604 and the mouse 605, and the RAM 630 and the ROM 640. The functional unit of the CPU 610 that realizes the processing of step S100 is shown in FIG. 1 as a “reception unit 611”.

ステップS200において、CPU610は、動作プログラムの実行に要する時間に影響を与えるコマンドとしてRAM630に記憶されたコマンドCt1と、一致するコマンドを、動作プログラムの中から検出する。さらに、CPU610は、RAM630に記憶されたコマンドの組み合わせCt2を構成する2以上のコマンドと、一致する2以上のコマンドを、動作プログラムの中から検出する。RAM630に記憶されたコマンドの組み合わせCt2は、動作プログラムの実行に要する時間に影響を与えるコマンドの組み合わせである。ステップS200の処理を実現するCPU610の機能部を、「検出部612」として図1に示す。 In step S200, the CPU 610 detects a command that matches the command Ct1 stored in the RAM 630 as a command that affects the time required to execute the operation program from the operation program. Further, the CPU 610 detects two or more commands constituting the combination Ct2 of the commands stored in the RAM 630 and two or more matching commands from the operation program. The command combination Ct2 stored in the RAM 630 is a command combination that affects the time required to execute the operation program. The functional unit of the CPU 610 that realizes the processing of step S200 is shown in FIG. 1 as a “detection unit 612”.

ステップS300において、CPU610は、編集画面De02の動作プログラムを表す表示において、検出されたコマンドを強調して表示する。 In step S300, the CPU 610 highlights and displays the detected command in the display showing the operation program of the edit screen De02.

図4は、編集画面De02の動作プログラムを表す表示の例を示す図である。編集画面De02に表示されるプログラムリストDp04は、Speedコマンドを含む(図4の中段参照)。図3のステップS200では、プログラムリストDp04の中から、RAM630に記憶されたコマンドCt1と一致するSpeedコマンドが検出される。ステップS300では、編集画面De02のプログラムリストDp04を表す表示において、検出されたSpeedコマンドが、強調されて表示される。具体的には、Speedコマンドには、検出されなかったコマンドとは異なる背景の色を付される。図4において強調されたAccelコマンドの表示をコマンド表示Cd041として示す。 FIG. 4 is a diagram showing an example of a display showing an operation program of the edit screen De02. The program list Dp04 displayed on the edit screen De02 includes the Speed command (see the middle section of FIG. 4). In step S200 of FIG. 3, a Speed command that matches the command Ct1 stored in the RAM 630 is detected from the program list Dp04. In step S300, the detected Speed command is highlighted and displayed in the display representing the program list Dp04 on the edit screen De02. Specifically, the Speed command has a different background color than the undetected command. The display of the Accel command highlighted in FIG. 4 is shown as the command display Cd041.

編集画面De02に表示されるプログラムリストDp04は、さらに、Accelコマンドを含む(図4の中段参照)。図3のステップS200では、プログラムリストDp04の中から、RAM630に記憶されたコマンドCt1と一致するAccelコマンドが検出される。ステップS300では、編集画面De02のプログラムリストDp04を表す表示において、検出されたAccelコマンドが、Speedコマンドと同様に、強調されて表示される。図4において強調されたAccelコマンドの表示をコマンド表示Cd042として示す。 The program list Dp04 displayed on the edit screen De02 further includes an Accel command (see the middle section of FIG. 4). In step S200 of FIG. 3, an Accel command that matches the command Ct1 stored in the RAM 630 is detected from the program list Dp04. In step S300, the detected Accel command is highlighted and displayed in the display representing the program list Dp04 on the edit screen De02, as in the case of the Speed command. The display of the Accel command highlighted in FIG. 4 is shown as the command display Cd042.

編集画面De02に表示されるプログラムリストDp04は、さらに、連続する3個のGoコマンドの組み合わせを含む(図4の下段参照)。図3のステップS200では、プログラムリストDp04の中から、RAM630に記憶されたコマンドの組み合わせCt2と一致する、連続するGoコマンドの組み合わせが検出される。ステップS300では、編集画面De02のプログラムリストDp04を表す表示において、検出された連続する3個のGoコマンドの組み合わせが、強調されて表示される。具体的には、連続する3個のGoコマンドの組み合わせには、検出されなかったコマンドとは異なる背景の色を付される。図4において強調された連続するGoコマンドの組み合わせの表示を、コマンド表示Cd043として示す。図4の例においては、P0が制御点の最終的な目標地点を示し、P1,P2が制御点の経由すべき中継地点を示す。 The program list Dp04 displayed on the edit screen De02 further includes a combination of three consecutive Go commands (see the lower part of FIG. 4). In step S200 of FIG. 3, consecutive Go command combinations that match the command combination Ct2 stored in the RAM 630 are detected from the program list Dp04. In step S300, the combination of three consecutive Go commands detected is highlighted and displayed in the display representing the program list Dp04 on the edit screen De02. Specifically, a combination of three consecutive Go commands is given a different background color than the undetected commands. The display of consecutive Go command combinations highlighted in FIG. 4 is shown as command display Cd043. In the example of FIG. 4, P0 indicates the final target point of the control point, and P1 and P2 indicate the relay points to be passed through the control point.

図5は、編集画面De02の動作プログラムを表す表示の他の例を示す図である。編集画面De02に表示されるプログラムリストDp05は、連続するWaitコマンドとVrunコマンドの組み合わせを含む。なお、プログラムリスト中、シングルクォーテーション「’」以下の文章は、プログラムとしては機能しないコメント文である。図5の例においては、「Vision開始コマンド」は、コメント文である。 FIG. 5 is a diagram showing another example of the display showing the operation program of the edit screen De02. The program list Dp05 displayed on the edit screen De02 includes a combination of consecutive Wait commands and Vrun commands. In the program list, the sentences below the single quotation "'" are comment sentences that do not function as a program. In the example of FIG. 5, the "Vision start command" is a comment statement.

図3のステップS200では、プログラムリストDp05の中から、RAM630に記憶されたコマンドの組み合わせCt2と一致する、連続するWaitコマンドとVrunコマンドの組み合わせが検出される。ステップS300では、編集画面De02のプログラムリストDp05を表す表示において、検出された連続するWaitコマンドとVrunコマンドの組み合わせが、図4の連続する3個のGoコマンドの組み合わせと同様に、強調されて表示される。図5において強調された連続するWaitコマンドとVrunコマンドの組み合わせの表示を、コマンド表示Cd053として示す。 In step S200 of FIG. 3, a continuous Wait command and Vrun command combination that matches the command combination Ct2 stored in the RAM 630 is detected from the program list Dp05. In step S300, in the display representing the program list Dp05 on the edit screen De02, the detected combination of the consecutive Wait command and the Vrun command is highlighted and displayed in the same manner as the combination of the three consecutive Go commands in FIG. Will be done. The display of the combination of the continuous Wait command and the Vrun command highlighted in FIG. 5 is shown as the command display Cd053.

なお、図5におけるコマンド表示Cd051は、図4におけるコマンド表示Cd041と同じ表示である。図5におけるコマンド表示Cd052は、図4におけるコマンド表示Cd042と同じ表示である。 The command display Cd051 in FIG. 5 has the same display as the command display Cd041 in FIG. The command display Cd052 in FIG. 5 has the same display as the command display Cd042 in FIG.

図3のステップS300の処理を実現するCPU610の機能部を、「強調表示部613」として図1に示す。 The functional unit of the CPU 610 that realizes the process of step S300 in FIG. 3 is shown in FIG. 1 as a “highlighting unit 613”.

図3のステップS200,S300の処理を行うことにより、受け付けた動作プログラムの中から、動作プログラムの実行に要する時間に影響を与えるコマンドや、コマンドの組み合わせを、検出することができる。このため、ロボット100の動作プログラムを作成する作業者が動作プログラムを生成または調整する際に、IDEの編集画面De02を通じて、そのようなコマンド、およびコマンドの組み合わせの存在を作業者に告知することによって、実際にロボット100の作業の効率を上げられるように、作業者による動作プログラムの生成の支援を行うことができる。 By performing the processes of steps S200 and S300 in FIG. 3, it is possible to detect commands and combinations of commands that affect the time required to execute the operation program from the received operation programs. Therefore, when the operator who creates the operation program of the robot 100 generates or adjusts the operation program, the operator is notified of the existence of such a command and a combination of commands through the IDE edit screen De02. In order to actually improve the work efficiency of the robot 100, it is possible to support the worker to generate an operation program.

また、編集画面De02の動作プログラムを表す表示において、検出されたコマンドが強調して表示される。このため、作業者が動作プログラムを生成または調整する際に、動作プログラム中の、動作プログラムの実行に要する時間に影響を与えるコマンドの場所を、作業者に提示することができる。その結果、作業者は、ロボットの作業の効率を上げられるように、容易に、動作プログラムを生成または調整することができる。 Further, the detected command is highlighted in the display showing the operation program of the edit screen De02. Therefore, when the operator generates or adjusts the operation program, the location of the command in the operation program that affects the time required to execute the operation program can be presented to the operator. As a result, the operator can easily generate or adjust an operation program so that the work efficiency of the robot can be improved.

図3のステップS350において、CPU610は、編集画面De02において、検出され強調されたコマンドの表示の上にカーソルがあるか否かを判定する。検出され強調されたコマンドの表示の上にカーソルがない場合には、処理は、ステップS550に進む。検出され強調されたコマンドの表示の上にカーソルがある場合には、処理は、ステップS400に進む。 In step S350 of FIG. 3, the CPU 610 determines whether or not the cursor is on the detected and emphasized command display on the edit screen De02. If the cursor is not over the display of the detected and highlighted command, the process proceeds to step S550. If the cursor is over the display of the detected and highlighted command, the process proceeds to step S400.

ステップS400において、CPU610は、動作プログラムを表す表示において、検出されたコマンドに関する改善を促す表示を、検出されたコマンドと関連付けて行う。 In step S400, the CPU 610 associates the detected command with a display prompting improvement regarding the detected command in the display representing the operation program.

図6は、編集画面De02の動作プログラムを表す表示の例を示す図である。図6の例においては、検出され、強調されたAccelコマンドのコマンド表示Cd042の上に、カーソルがある。そのような場合には、検出されたAccelコマンドに関する改善を促す表示S01が、検出されたAccelコマンドと関連付けて、示される。具体的には、Accelコマンドの表示を指し示す吹き出し内に、「Speed, Accelのパラメーターを調節することで、TATが向上する可能性があります。」という文字情報のメッセージが、ヒントを表すマークとともに表示される。このメッセージは、Accelコマンドと関連付けられて、あらかじめRAM630に記憶されている。 FIG. 6 is a diagram showing an example of a display showing an operation program of the edit screen De02. In the example of FIG. 6, the cursor is above the command display Cd042 of the detected and highlighted Accel command. In such a case, the display S01 prompting improvement regarding the detected Accel command is shown in association with the detected Accel command. Specifically, in the balloon that indicates the display of the Accel command, a message with the text information "TAT may be improved by adjusting the Speed and Accel parameters" is displayed with a mark indicating a hint. Will be done. This message is associated with the Accel command and stored in the RAM 630 in advance.

図7は、編集画面De02の動作プログラムを表す表示の他の例を示す図である。図7の例においては、検出され、強調されたWaitコマンドとVrunコマンドの組み合わせのコマンド表示Cd053の上に、カーソルがある。そのような場合には、検出されたWaitコマンドとVrunコマンドの組み合わせに関する改善を促す表示S02が、検出されたWaitコマンドとVrunコマンドの組み合わせと関連付けて、示される。具体的には、WaitコマンドとVrunコマンドの組み合わせの表示を指し示す吹き出し内に、「Vrunコマンドは処理に時間がかかるため、直前のWaitコマンドを削除することで、TATが向上する可能性があります。」という文字情報のメッセージが、ヒントを表すマークとともに表示される。このメッセージは、VrunコマンドとWaitコマンドの組み合わせと関連付けられて、あらかじめRAM630に記憶されている。 FIG. 7 is a diagram showing another example of the display showing the operation program of the edit screen De02. In the example of FIG. 7, the cursor is above the command display Cd053, which is a combination of the Detected and highlighted Wait command and the Vrun command. In such a case, a display S02 prompting improvement regarding the combination of the detected Wait command and the Vrun command is shown in association with the combination of the detected Wait command and the Vrun command. Specifically, in the balloon that indicates the display of the combination of the Wait command and the Vrun command, "The Vrun command takes a long time to process, so deleting the previous Wait command may improve the TAT. A message with the text information "" is displayed with a mark indicating a hint. This message is associated with the combination of the Vrun command and the Wait command and is stored in the RAM 630 in advance.

このような処理を行うことにより、ロボット100の動作プログラムを作成する作業者が動作プログラムを生成または調整する際に、作業者は、以下の利益を享受できる。すなわち、作業者は、改善を促す表示S01,S02に基づいて、動作プログラムの実行に要する時間に影響を与える一部のコマンドについて、動作プログラムを生成または調整することができる。 By performing such processing, when the worker who creates the movement program of the robot 100 generates or adjusts the movement program, the worker can enjoy the following benefits. That is, the operator can generate or adjust the operation program for some commands that affect the time required to execute the operation program based on the displays S01 and S02 prompting improvement.

検出されたコマンドに関する改善を促す表示を、検出されたコマンドと関連付けて行う処理を実現するCPU610の機能部を、「改善示唆部614」として図1に示す。 FIG. 1 shows a functional unit of the CPU 610 that realizes a process of associating a display prompting improvement with respect to the detected command with the detected command as an “improvement suggestion unit 614”.

図7の例においては、さらに、動作プログラムを表す表示において、検出されたコマンドに関する改善案Siが、検出されたWaitコマンドとVrunコマンドの組み合わせの表示と関連付けて表示されている。具体的には、WaitコマンドとVrunコマンドの組み合わせの表示を指し示す吹き出し内に、「Wait 0.5(改行)Vrun'Vision 開始コマンド→Vrun'Vision 開始コマンド」という改善案が、ヒントを表すマークとともに表示される。この改善案Siにおいては、連続するWaitコマンドとVrunコマンドの組み合わせからWaitコマンドが削除されている。 In the example of FIG. 7, further, in the display showing the operation program, the improvement plan Si regarding the detected command is displayed in association with the display of the combination of the detected Wait command and the Vrun command. Specifically, in the balloon that indicates the display of the combination of the Wait command and the Vrun command, the improvement plan "Wait 0.5 (line feed) Vrun'Vision start command-> Vrun'Vision start command" is displayed with a mark indicating a hint. To. In this improvement plan Si, the Wait command is deleted from the combination of the continuous Wait command and the Vrun command.

このような処理を行うことにより、ロボット100の動作プログラムを作成する作業者が動作プログラムを生成または調整する際に、作業者は、以下の利益を享受できる。すなわち、作業者は、改善案Siの表示に基づいて、動作プログラムの実行に要する時間に影響を与えるコマンドについて、容易に、動作プログラムを改善することができる。 By performing such processing, when the worker who creates the movement program of the robot 100 generates or adjusts the movement program, the worker can enjoy the following benefits. That is, the operator can easily improve the operation program for the command that affects the time required to execute the operation program based on the display of the improvement plan Si.

図7の例においては、検出されたコマンドに関する改善案Siは、検出されたコマンドのコマンド表示Cd053とは異なる態様で表示されている。具体的には、改善案Siは、改善を促す表示S02とともに、吹き出し内に表示されている。 In the example of FIG. 7, the improvement plan Si regarding the detected command is displayed in a mode different from the command display Cd053 of the detected command. Specifically, the improvement plan Si is displayed in the balloon together with the display S02 prompting the improvement.

このような処理を行うことにより、作業者は、検出されたコマンドとその改善案Siとを混同することなく、動作プログラムを改善することができる。 By performing such processing, the operator can improve the operation program without confusing the detected command with the improvement plan Si.

図3のステップS400の処理を実現するCPU610の機能部を、「改善案提示部615」として図1に示す。 The functional unit of the CPU 610 that realizes the process of step S400 in FIG. 3 is shown in FIG. 1 as an “improvement plan presentation unit 615”.

作業者は、編集画面De02において、改善案Si上でマウス605を左クリックすることにより、表示されている動作プログラムに改善案Siを反映すべき旨の指示を、CPU610にすることができる。 By left-clicking the mouse 605 on the improvement plan Si on the editing screen De02, the operator can give an instruction to the CPU 610 that the improvement plan Si should be reflected in the displayed operation program.

図3のステップS450において、CPU610は、編集画面De02において、動作プログラムに改善案Siを反映すべき旨の指示がされたか否かを判定する。動作プログラムに改善案Siを反映すべき旨の指示がされないまま、あらかじめ定められた時間が経過した場合には、処理は、ステップS550に進む。あらかじめ定められた時間内に、動作プログラムに改善案Siを反映すべき旨の指示がされた場合には、処理は、ステップS500に進む。 In step S450 of FIG. 3, the CPU 610 determines on the edit screen De02 whether or not an instruction to reflect the improvement plan Si in the operation program has been given. If a predetermined time has elapsed without being instructed to reflect the improvement plan Si in the operation program, the process proceeds to step S550. If the operation program is instructed to reflect the improvement plan Si within a predetermined time, the process proceeds to step S500.

ステップS500において、CPU610は、動作プログラムに改善案Siを反映する。 In step S500, the CPU 610 reflects the improvement plan Si in the operation program.

図8は、編集画面De02における改善案の反映後のプログラムリストの例を示す図である。図8の例においては、動作プログラムを表すプログラムリストDp08に図7の改善案Siが反映されている。そして、改善案Siの反映前の動作プログラムと改善案Siの反映後の動作プログラムとの差分が、注釈とともにコメント文Hs10で表示されている。具体的には、Vrunコマンドの上に、コメント文として、「The following code has been replaced」という注釈と、改善案Siの反映前の動作プログラムと改善案Siの反映後の動作プログラムとの差分である、削除された「Wait 0.5」が記載されている。 FIG. 8 is a diagram showing an example of a program list after reflecting the improvement plan on the edit screen De02. In the example of FIG. 8, the improvement plan Si of FIG. 7 is reflected in the program list Dp08 representing the operation program. Then, the difference between the operation program before the reflection of the improvement plan Si and the operation program after the reflection of the improvement plan Si is displayed in the comment sentence Hs10 together with the annotation. Specifically, on the Vrun command, as a comment, the comment "The following code has been replaced" and the difference between the operation program before the reflection of the improvement plan Si and the operation program after the reflection of the improvement plan Si. There is a deleted "Wait 0.5" listed.

なお、図8におけるコマンド表示Cd081は、図5におけるコマンド表示Cd051と同じ表示である。図8におけるコマンド表示Cd082は、図5におけるコマンド表示Cd052と同じ表示である。 The command display Cd081 in FIG. 8 has the same display as the command display Cd051 in FIG. The command display Cd082 in FIG. 8 has the same display as the command display Cd052 in FIG.

このような処理を行うことにより、作業者は、以下の利益が得られる。すなわち、作業者は、表示された改善案Siを動作プログラムに反映させることによって、動作プログラムの実行に要する時間に影響を与えるコマンドについて、容易に、動作プログラムを改善することができる。また、動作プログラムのうち改善された部分の過去の記載と対比することにより、過去の改善の履歴を考慮した上で、動作プログラムを改善することができる。 By performing such a process, the worker can obtain the following benefits. That is, the operator can easily improve the operation program for the command that affects the time required to execute the operation program by reflecting the displayed improvement plan Si in the operation program. Further, by comparing with the past description of the improved part of the operation program, the operation program can be improved in consideration of the history of the past improvement.

図3のステップS550において、CPU610は、インターフェイス画面DIにおいて、プログラム実行ボタンBeがクリックされたか否かを判定する。プログラム実行ボタンBeがクリックされたことは、編集画面De02に表示されている動作プログラムの実行が指示されたことを意味する。プログラム実行ボタンBeがクリックされない場合には、処理は、ステップS650に進む。プログラム実行ボタンBeがクリックされた場合には、処理は、ステップS600に進む。 In step S550 of FIG. 3, the CPU 610 determines whether or not the program execution button Be has been clicked on the interface screen DI. When the program execution button Be is clicked, it means that the execution of the operation program displayed on the edit screen De02 is instructed. If the program execution button Be is not clicked, the process proceeds to step S650. When the program execution button Be is clicked, the process proceeds to step S600.

ステップS600において、CPU610は、編集画面De02において表示されている動作プログラムを、実際にロボット100に実行させ、作業ごとの実行時間に基づく表示を、IDEのインターフェイス画面DIに示す。以下では、プログラムリストの一部が指定されずに、プログラム実行ボタンBeが押され、プログラムリスト全体が実行された場合を例に説明する。 In step S600, the CPU 610 actually causes the robot 100 to execute the operation program displayed on the edit screen De02, and shows the display based on the execution time for each work on the interface screen DI of the IDE. In the following, a case where the program execution button Be is pressed and the entire program list is executed without specifying a part of the program list will be described as an example.

図9は、プログラムリストDp09における作業Op1,Op2と、プログラムリストDp09において指定される各作業の目標時間を指定する記載Drt1,Drt2と、を示す図である。作業者は、プログラムリストの冒頭に、各作業における目標時間を記載することができる。目標時間は、たとえば、編集対象である動作プログラムの工程と、その前後の工程との関係に基づいて定めることができる。また、目標時間は、あらかじめ定められている標準的な時間とすることもできる。目標時間は、作業者の経験に基づいて定めることもできる。 FIG. 9 is a diagram showing the work Op1 and Op2 in the program list Dp09 and the description Drt1 and Drt2 that specify the target time of each work specified in the program list Dp09. The worker can describe the target time for each work at the beginning of the program list. The target time can be determined, for example, based on the relationship between the process of the operation program to be edited and the processes before and after the process. The target time can also be a predetermined standard time. The target time can also be set based on the experience of the worker.

CPU610の機能部としての受付部611は、プログラムリストの冒頭の目標時間の記載により、作業に要する時間の目標値を受け付ける。図9の例では、作業1についての目標時間は、プログラムリストDp09の冒頭において、記載Drt1によって指定されている。作業1についての目標時間は、5秒である。作業2についての目標時間は、記載Drt2によって指定されている。作業2についての目標時間は、2秒である。 The reception unit 611 as a functional unit of the CPU 610 receives the target value of the time required for the work by describing the target time at the beginning of the program list. In the example of FIG. 9, the target time for work 1 is specified by the description Drt1 at the beginning of the program list Dp09. The target time for work 1 is 5 seconds. The target time for work 2 is specified by the description Drt2. The target time for work 2 is 2 seconds.

作業者は、プログラムリスト中にコメント文で「作業N」(Nは整数)と記載することにより、プログラムリスト中の一つの「作業」の開始箇所を指定することができる。プログラムリスト中の「作業N」から次の「作業M」(Mは整数)までの部分が、一つの「作業」に対応する部分である。通常は、「作業N」、「作業M」は、順に番号付けされる。しかし、「作業N」、「作業M」の番号は、任意に付すことができる。なお、動作プログラムの実行前には、図9におけるDdt1,Ddt2は表示されていない。 The worker can specify the start point of one "work" in the program list by describing "work N" (N is an integer) in the comment text in the program list. The part from "work N" to the next "work M" (M is an integer) in the program list is a part corresponding to one "work". Normally, "work N" and "work M" are numbered in order. However, the numbers of "work N" and "work M" can be arbitrarily assigned. Before the execution of the operation program, Ddt1 and Ddt2 in FIG. 9 are not displayed.

CPU610は、動作プログラムをロボット100に実行させる際に、動作プログラムに含まれる作業Op1,Op2の実行時間を取得する。 When the robot 100 executes the operation program, the CPU 610 acquires the execution time of the work Op1 and Op2 included in the operation program.

図10は、ロボット100のロボット制御装置300において実行される動作プログラムのプログラムリストDp10を示す図である。設定装置600のCPU610は、ステップS550でプログラム実行ボタンBeが押されると、プログラムリストDp09中に、Set Clockコマンドと、End Clockコマンドとの組み合わせを追加する。具体的には、それぞれの「作業」のコメント文の直後に、Set Clockコマンドが追加され、それぞれの「作業」のコメント文の直前に、End Clockコマンドが追加される。ただし、最初の「作業」のコメント文の直前には、End Clockコマンドは追加されず、最後の「作業」のコメント文の直後には、Set Clockコマンドは追加されない。Set ClockコマンドとEnd Clockコマンドとが追加されたプログラムリストDp10が、図10に示されている。 FIG. 10 is a diagram showing a program list Dp10 of an operation program executed by the robot control device 300 of the robot 100. When the program execution button Be is pressed in step S550, the CPU 610 of the setting device 600 adds a combination of the Set Clock command and the End Clock command to the program list Dp09. Specifically, the Set Clock command is added immediately after each "work" comment statement, and the End Clock command is added immediately before each "work" comment statement. However, the End Clock command is not added immediately before the first "work" comment, and the Set Clock command is not added immediately after the last "work" comment. The program list Dp10 to which the Set Clock command and the End Clock command are added is shown in FIG.

Set Clockコマンドは、時間の計測を開始するコマンドである。End Clockコマンドは、時間の計測を終了するコマンドである。これらのコマンドが実行されることにより、作業ごとの実行時間が測定される。具体的には、プログラムリストDp10のうち、コメント文「作業1」からコメント文「作業2」までの部分の実行時間は、Set ClockコマンドCs1とEnd ClockコマンドCe1により、測定される。コメント文「作業2」以下の部分の実行時間は、Set ClockコマンドCs2とEnd ClockコマンドCe2により、測定される。ステップS600でプログラムリストに挿入されるSet Clockコマンドと、End Clockコマンドとは、編集画面De02には表示されない。 The Set Clock command is a command to start measuring time. The End Clock command is a command to end the time measurement. By executing these commands, the execution time for each work is measured. Specifically, the execution time of the portion of the program list Dp10 from the comment statement "work 1" to the comment statement "work 2" is measured by the Set Clock command Cs1 and the End Clock command Ce1. The execution time of the part below the comment sentence "work 2" is measured by the Set Clock command Cs2 and the End Clock command Ce2. The Set Clock command and the End Clock command inserted into the program list in step S600 are not displayed on the edit screen De02.

ロボット100よる動作プログラムの実行後、設定装置600のCPU610は、各作業Op1,Op2について、目標値と実行時間とに基づく表示Ddt1,Ddt2を、編集画面De02のプログラムリストに示す。具体的には、編集画面De02に表示されるプログラムリストDp09中に、各作業と対応づけられて、目標値に対する実行時間の差分の表示が示される。図9の例においては、作業1について、差分の表示Ddt1が示される。作業1について、目標値に対する実行時間の差分の時間は、8.24秒である。作業2について、差分の表示Ddt2が示される。作業2について、目標値に対する実行時間の差分の時間は、10.5秒である。 After executing the operation program by the robot 100, the CPU 610 of the setting device 600 shows the display Ddt1 and Ddt2 based on the target value and the execution time for each work Op1 and Op2 in the program list of the edit screen De02. Specifically, in the program list Dp09 displayed on the edit screen De02, the display of the difference in the execution time with respect to the target value is shown in association with each work. In the example of FIG. 9, the difference display Ddt1 is shown for the operation 1. For work 1, the time difference between the execution times and the target values is 8.24 seconds. For work 2, the difference display Ddt2 is shown. For work 2, the time difference between the execution times and the target values is 10.5 seconds.

このような表示を行うことにより、作業者は、以下の利益が得られる。すなわち、作業者は、目標値と実行時間とを対比することにより、目標値を達成するために短縮するべき時間を認識しながら、動作プログラムを改善することができる。具体的には、作業者は、各作業についてどの程度、処理時間を削減すればよいかについて、目安を得ることができる。 By performing such a display, the worker can obtain the following benefits. That is, the worker can improve the operation program while recognizing the time to be shortened in order to achieve the target value by comparing the target value and the execution time. Specifically, the worker can obtain a guideline as to how much the processing time should be reduced for each work.

図3のステップS600において、動作プログラムに含まれる作業の実行時間を取得し、作業について、目標値と実行時間とに基づく表示を行うCPU610の機能部を、「評価部616」として図1に示す。 In step S600 of FIG. 3, a functional unit of the CPU 610 that acquires the execution time of the work included in the operation program and displays the work based on the target value and the execution time is shown in FIG. 1 as an “evaluation unit 616”. ..

ステップS650において、CPU610は、動作プログラムの生成を終了する旨の指示が入力されたか否かを判定する。動作プログラムの生成を終了する旨の指示が入力されていない場合には、処理は、S200に戻る。動作プログラムの生成を終了する旨の指示が入力された場合には、処理は、終了する。 In step S650, the CPU 610 determines whether or not an instruction to end the generation of the operation program has been input. If the instruction to end the generation of the operation program is not input, the process returns to S200. When the instruction to end the generation of the operation program is input, the process ends.

(2)インターフェイス画面DIを通じた改善を促す表示のタイミング:
以上の説明においては、一つの動作プログラムがひととおり完成している状態において、統合開発環境のインターフェイス画面DIに表示される、改善を促す表示等について説明した(図4~図9参照)。すなわち、図3のステップS100において、CPU610の受付部611が動作プログラムの全体を受け付けた状態において、ステップS200において、受け付けた動作プログラムの中から、CPU610の検出部612が、RAM630に記憶されたコマンドCt1や、コマンドの組み合わせCt2を構成する2以上のコマンドと一致する2以上のコマンドを検出する。そして、ステップS300において、CPU610の改善示唆部614は、動作プログラムの全体を受け付けた状態において、動作プログラムを表す表示において、検出されたコマンドや、コマンドの組み合わせに関する改善を促す表示S01,S02を、検出されたコマンドや、コマンドの組み合わせと関連付けて行う(図3のS400、図4~図9参照)。
(2) Display timing that encourages improvement through the interface screen DI:
In the above description, the display prompting improvement and the like displayed on the interface screen DI of the integrated development environment in the state where one operation program is completed has been described (see FIGS. 4 to 9). That is, in the state where the reception unit 611 of the CPU 610 has received the entire operation program in step S100 of FIG. 3, the detection unit 612 of the CPU 610 has a command stored in the RAM 630 from the operation programs received in step S200. Detects two or more commands that match Ct1 or two or more commands that make up Ct2, which is a combination of commands. Then, in step S300, the improvement suggestion unit 614 of the CPU 610 displays the detected commands and the displays S01 and S02 prompting improvement regarding the command combination in the display representing the operation program in the state where the entire operation program is accepted. This is performed in association with the detected command or a combination of commands (see S400 in FIG. 3 and FIGS. 4 to 9).

このような処理においては、動作プログラムの全体から検出された、動作プログラムの実行に要する時間に影響を与えるコマンドCt1や、コマンドの組み合わせCt2に関する改善を促す表示が、動作プログラムを表す表示において、行われる。このため、作業者は、表示を参考にして、動作プログラムの全体を最適化するように、動作プログラムを改善することができる。 In such processing, the command Ct1 that affects the time required to execute the operation program and the display prompting improvement regarding the command combination Ct2, which are detected from the entire operation program, are displayed on the display indicating the operation program. Will be. Therefore, the operator can improve the operation program so as to optimize the entire operation program by referring to the display.

たとえば、Speedコマンドによる移動速度の上限の指定や、Accelコマンドによる制御点の加速度の上限、および減速度の上限の指定は、個別のGoコマンドに対して行うこともでき、複数のGoコマンドに先だって、複数のGoコマンドに対して行うこともできる。このため、動作プログラムの全体から検出されたSpeedコマンドやAccelコマンドの場所を把握することにより、作業者は、制御点の移動速度や加速度が、動作プログラム全体として最適となるように、SpeedコマンドやAccelコマンドのそれぞれを設定することができる。 For example, the Speed command can be used to specify the upper limit of movement speed, the Accel command can be used to specify the upper limit of acceleration at a control point, and the upper limit of deceleration can be specified for individual Go commands, prior to multiple Go commands. , Can also be done for multiple Go commands. Therefore, by grasping the location of the Speed command or Accel command detected from the entire operation program, the operator can use the Speed command or the Accel command so that the movement speed or acceleration of the control point is optimized for the entire operation program. Each of the Accel commands can be set.

一方、図3のステップS100において、CPU610の受付部611が動作プログラムの一部であって、1以上のコマンドを含む一部を受け付けた状態において、ステップS200において、受け付けた動作プログラムの一部の中から、CPU610の検出部612は、記憶部630に記憶されたコマンドCt1や、コマンドの組み合わせCt2を構成する2以上のコマンドと一致する2以上のコマンドを検出することもできる。そして、ステップS300において、CPU610の改善示唆部614は、動作プログラムの一部を受け付けた状態において、動作プログラムの一部を表す表示において、改善を促す表示S01,S02を、検出されたコマンドや、コマンドの組み合わせと関連付けて行うこともできる。 On the other hand, in step S100 of FIG. 3, in a state where the reception unit 611 of the CPU 610 is a part of the operation program and receives a part including one or more commands, a part of the operation program received in step S200. The detection unit 612 of the CPU 610 can also detect the command Ct1 stored in the storage unit 630 and two or more commands that match the two or more commands constituting the command combination Ct2. Then, in step S300, the improvement suggestion unit 614 of the CPU 610 receives the detected command or the display S01, S02 prompting improvement in the display representing a part of the operation program in the state of accepting a part of the operation program. It can also be done in association with a combination of commands.

このような処理により、作業者は、動作プログラムの作成途中においても、動作プログラムを改善しながら、動作プログラムの作成を進めることができる。 By such a process, the worker can proceed with the creation of the operation program while improving the operation program even during the creation of the operation program.

本実施形態における設定装置600を、ロボットの動作プログラムの作成装置とも呼ぶ。設定装置600のRAM630を「記憶部」とも呼ぶ。 The setting device 600 in this embodiment is also referred to as a robot operation program creation device. The RAM 630 of the setting device 600 is also referred to as a "storage unit".

B.第2実施形態:
上記第1実施形態においては、改善案Siの反映前の動作プログラムと改善案Siの反映後の動作プログラムとの差分が、注釈とともにコメント文Hs10として表示される(図7および図8参照)。プログラムリスト中の同一の箇所について、複数回の修正が行われている場合には、作業者からの指示を受けて、過去の修正履歴が表示される態様とすることもできる。
B. Second embodiment:
In the first embodiment, the difference between the operation program before the reflection of the improvement plan Si and the operation program after the reflection of the improvement plan Si is displayed as the comment sentence Hs10 together with the annotation (see FIGS. 7 and 8). When the same part in the program list has been corrected multiple times, the past correction history may be displayed in response to an instruction from the operator.

第2実施形態においては、改善案Siの反映前の動作プログラムと改善案Siの反映後の動作プログラムとの差分を表すコメント文Hs10にカーソルを合わせて、マウス605の右クリックすることにより、CPU610に過去の修正履歴の表示が指示され、インターフェイス画面DIに過去の修正履歴が表示される。第2実施形態の他の点は、第1実施形態と同じである。 In the second embodiment, the CPU 610 is obtained by moving the cursor to the comment sentence Hs10 indicating the difference between the operation program before the reflection of the improvement plan Si and the operation program after the reflection of the improvement plan Si, and right-clicking the mouse 605. Is instructed to display the past revision history, and the past revision history is displayed on the interface screen DI. Other points of the second embodiment are the same as those of the first embodiment.

図11は、過去の修正履歴の表示を示す図である。図11の例においては、改善案Siの反映前の動作プログラムと改善案Siの反映後の動作プログラムとの差分を表すコメント文が、改善案Siの反映後の動作プログラムを表すプログラムリストDp11において、強調されて表示されている。具体的には、コメント文Hs20に、他のコメント文やコマンドとは異なる背景の色を付されている。強調されて表示されているのは、図8のプログラムリストDp08において、右クリックされたコメント文Hs10に対応するコメント文である。 FIG. 11 is a diagram showing the display of the past correction history. In the example of FIG. 11, the comment statement indicating the difference between the operation program before the reflection of the improvement plan Si and the operation program after the reflection of the improvement plan Si is in the program list Dp11 representing the operation program after the reflection of the improvement plan Si. , Is highlighted. Specifically, the comment text Hs20 is given a background color different from that of other comment texts and commands. What is highlighted and displayed is the comment text corresponding to the right-clicked comment text Hs10 in the program list Dp08 of FIG.

図11の例においては、プログラムリストDp11の左部に、コメント文Hs20が表している記載について、過去の修正履歴が表示されている。表示B01より、Wait 0.5が削除されたのは、本日の18時であることが分かる。表示B02より、Wait 0.5より前には、Wait 0.4が記載されており、本日の17時42分にWait 0.4が削除されたことが分かる。さらに過去の履歴がある場合には、その内容が時刻とともに表示される。ユーザーは、履歴の表示上にカーソルを置いてマウス605で左クリックしてCPU610に指示することにより、プログラムリストの該当部分の記載を、その履歴が表す内容に戻すことができる。 In the example of FIG. 11, the past correction history of the description represented by the comment sentence Hs20 is displayed on the left side of the program list Dp11. From the display B01, it can be seen that Wait 0.5 was deleted at 18:00 today. From the display B02, Wait 0.4 is described before Wait 0.5, and it can be seen that Wait 0.4 was deleted at 17:42 today. If there is a past history, the contents are displayed together with the time. The user can return the description of the corresponding part of the program list to the content represented by the history by placing the cursor on the history display, left-clicking with the mouse 605, and instructing the CPU 610.

このような態様とすることにより、作業者は、動作プログラムの改善において、容易に、試行錯誤することができる。たとえば、図3のステップS600において、動作プログラムの実行結果が修正前の動作プログラムよりも悪かった場合には、上記の処理により、動作プログラムを、容易に、修正前の状態に戻すことができる。 With such an embodiment, the operator can easily make trial and error in improving the operation program. For example, in step S600 of FIG. 3, when the execution result of the operation program is worse than that of the operation program before modification, the operation program can be easily returned to the state before modification by the above processing.

C.第3実施形態:
第1実施形態においては、図3のステップS600において、編集画面De02に表示されるプログラムリストDp09中に、各作業と対応づけられて、実行時間の目標時間に対する差分が示される(図9のDdt1,Ddt2参照)。しかし、さらに作業者が直感的に動作プログラムの改善の結果を把握できるように、実行時間に基づく表示を行うこともできる。
C. Third embodiment:
In the first embodiment, in step S600 of FIG. 3, in the program list Dp09 displayed on the edit screen De02, the difference between the execution time and the target time is shown in association with each work (Ddt1 of FIG. 9). , Ddt2). However, it is also possible to display based on the execution time so that the operator can intuitively grasp the result of the improvement of the operation program.

第3実施形態においては、図3のステップS600において、さらに、修正前の動作プログラムの実行時間と、修正後の動作プログラムの実行時間と、を対比する表示が、棒グラフの形態で行われる。第3実施形態の他の点は、第1実施形態と同じである。 In the third embodiment, in step S600 of FIG. 3, the display in which the execution time of the operation program before the modification and the execution time of the operation program after the modification are compared is further displayed in the form of a bar graph. Other points of the third embodiment are the same as those of the first embodiment.

図12は、第3実施形態において、図3のステップS600で示される実行時間を示す表示である。CPU610の機能部としての評価部616は、図3のステップS600において、今回のS600の処理で実行された動作プログラムに含まれる作業ごとの実行時間と、前回のS600の処理で実行された動作プログラムに含まれる作業ごとの実行時間と、に基づいて、棒グラフを作成し、IDEのインターフェイス画面DIにおいて表示する。 FIG. 12 is a display showing the execution time shown in step S600 of FIG. 3 in the third embodiment. In step S600 of FIG. 3, the evaluation unit 616 as a functional unit of the CPU 610 includes the execution time for each work included in the operation program executed in the process of this S600 and the operation program executed in the previous process of S600. A bar graph is created based on the execution time for each work included in, and is displayed on the interface screen DI of the IDE.

図12の例において、表示Hg10は、前回のS600の処理で実行された動作プログラムの実行時間を表す。表示Hg10に含まれる表示Hg11は、動作プログラムに含まれる作業1の実行時間を表す。表示Hg10に含まれる表示Hg12は、動作プログラムに含まれる作業2の実行時間を表す。表示Hg10に含まれる表示Hg13は、動作プログラムに含まれる作業3の実行時間を表す。なお、図12に示した例は、第1実施形態の動作プログラムとは異なる動作プログラムに基づく例である。 In the example of FIG. 12, the display Hg10 represents the execution time of the operation program executed in the previous process of S600. The display Hg 11 included in the display Hg 10 represents the execution time of the work 1 included in the operation program. The display Hg12 included in the display Hg10 represents the execution time of the work 2 included in the operation program. The display Hg13 included in the display Hg10 represents the execution time of the work 3 included in the operation program. The example shown in FIG. 12 is an example based on an operation program different from the operation program of the first embodiment.

表示Hg20は、今回のS600の処理で実行された動作プログラムの実行時間を表す。表示Hg20に含まれる表示Hg21は、動作プログラムに含まれる作業1の実行時間を表す。表示Hg20に含まれる表示Hg22は、動作プログラムに含まれる作業2の実行時間を表す。表示Hg20に含まれる表示Hg23は、動作プログラムに含まれる作業3の実行時間を表す。 The display Hg20 represents the execution time of the operation program executed in the process of S600 this time. The display Hg21 included in the display Hg20 represents the execution time of the work 1 included in the operation program. The display Hg22 included in the display Hg20 represents the execution time of the work 2 included in the operation program. The display Hg23 included in the display Hg20 represents the execution time of the work 3 included in the operation program.

このような態様とすれば、作業者は、修正の結果得られた実行時間の短縮の効果を、直感的に把握することができる。また、作業者は、動作プログラム全体の実行時間のうちの多くを占める作業を、直感的に把握できる。その結果、作業者は、その作業の実行時間を短縮することで、動作プログラム全体の実行時間を効率的に短縮することができる。 In such an aspect, the operator can intuitively grasp the effect of shortening the execution time obtained as a result of the modification. In addition, the worker can intuitively grasp the work that occupies most of the execution time of the entire operation program. As a result, the worker can efficiently reduce the execution time of the entire operation program by reducing the execution time of the work.

D.他の実施形態:
D1.他の実施形態1:
(1)上記第1実施形態においては、処理に時間を要するコマンドとしてVrunコマンドを挙げて、検出対象のコマンドとの組み合わせCt2を説明した。しかし、処理に時間を要するコマンドとして、他のコマンドが、Waitコマンドとの組み合わせで、記憶部に記憶されていてもよい。たとえば、他のロボットと協働するロボットにおいて、他のロボットと干渉しないように経路を決定する経路計画を行うコマンドが、処理に時間を要するコマンドとして、Waitコマンドとの組み合わせで、記憶部に記憶されていてもよい。
D. Other embodiments:
D1. Other Embodiment 1:
(1) In the first embodiment, the Vrun command is cited as a command that requires time for processing, and the combination Ct2 with the command to be detected has been described. However, as a command that takes time to process, another command may be stored in the storage unit in combination with the Wait command. For example, in a robot that collaborates with other robots, a command that performs route planning that determines a route so as not to interfere with other robots is stored in the storage unit in combination with the Wait command as a command that takes time to process. It may have been done.

(2)上記第1実施形態においては、設定装置600のRAM630が、動作プログラムの実行に要する時間に影響を与える1以上のコマンドCtsを記憶している(図1参照)。しかし、動作プログラムの実行に要する時間に影響を与える1以上のコマンドは、設定装置600のROM640や、ロボット制御装置300のRAM330や、ROM340、さらには、ネットワークで接続された他の記憶媒体に記憶されていてもよい。 (2) In the first embodiment, the RAM 630 of the setting device 600 stores one or more command Cts that affect the time required to execute the operation program (see FIG. 1). However, one or more commands that affect the time required to execute the operation program are stored in the ROM 640 of the setting device 600, the RAM 330 of the robot control device 300, the ROM 340, and other storage media connected by a network. It may have been done.

(3)上記第1実施形態においては、図3のステップS200において検出されたコマンドには、ステップS300において、検出されなかったコマンドとは異なる背景の色を付される(図4~図8参照)。しかし、検出されたコマンドは、他の方法で強調して表示されてもよい。たとえば、検出されたコマンドは、検出されなかったコマンドとは異なる色で表示されてもよい。また、検出されたコマンドは、検出されなかったコマンドよりも太い文字で表示されてもよい。さらに、検出されたコマンドには、検出されなかったコマンドには付されないマークや、直線状または波線状の下線などが付されてもよい。 (3) In the first embodiment, the command detected in step S200 of FIG. 3 is given a background color different from that of the command not detected in step S300 (see FIGS. 4 to 8). ). However, the detected commands may be highlighted in other ways. For example, the detected commands may be displayed in a different color than the undiscovered commands. Also, the detected commands may be displayed in thicker characters than the undetected commands. Further, the detected command may be marked with a mark not attached to the undetected command, a linear or wavy underline, and the like.

(4)上記第1実施形態においては、作業者によってプログラムリスト中に記載されたコメント文「作業N」から次のコメント文「作業M」(M,Nは整数)までが、一つの「作業」として、指定される。しかし、動作プログラムに含まれる各作業は、他の方法で指定されてもよい。たとえば、プログラムリストにおいて、ある量の字下げを伴って記載されているコマンドAから、同じ量の字下げを伴って記載されているコマンドであって、コマンドAの後、最初に記載されているそのようなコマンドBまでを、一つの「作業」として、処理する態様とすることができる。また、プログラムリストにおいて、作業と作業の間に空白行を配することにより、各作業に対応する範囲が指定される態様とすることもできる。 (4) In the first embodiment, the comment sentence "work N" described in the program list by the worker to the next comment sentence "work M" (M and N are integers) are one "work". Is specified as. However, each work included in the operation program may be specified by another method. For example, in a program list, a command A that is described with a certain amount of indentation is a command that is described with the same amount of indentation and is described first after command A. Up to such command B can be processed as one "work". Further, in the program list, by arranging a blank line between the works, the range corresponding to each work can be specified.

(5)上記第1実施形態においては、目標値と実行時間とに基づく表示Ddt1,Ddt2は、動作プログラムに従って実際にロボット100を動かして得られた各作業の実行時間の測定値に基づいて表示される(図9参照)。第3実施形態の棒グラフHg10、Hg20は、実際に動作プログラムに従ってロボット100を動かして得られた各作業の実行時間の測定値に基づいて表示される(図12参照)。しかし、動作プログラムに含まれる作業の実行時間は、他の方法で取得されることもできる。 (5) In the first embodiment, the display Ddt1 and Ddt2 based on the target value and the execution time are displayed based on the measured value of the execution time of each work obtained by actually moving the robot 100 according to the operation program. (See FIG. 9). The bar graphs Hg10 and Hg20 of the third embodiment are displayed based on the measured values of the execution time of each work obtained by actually moving the robot 100 according to the operation program (see FIG. 12). However, the execution time of the work included in the operation program can also be obtained by other methods.

たとえば、コマンドごとに、標準的な実行時間や最大の実行時間を記憶部に記憶しておき、それらを加算することで、作業の実行時間を取得することもできる。また、物理的なロボット100の挙動を反映することができるシミュレーターによって、コンピューター上でロボット100の動作をシミュレーションして、作業ごとの実行時間を測定することもできる。さらに、実際のロボット100を動かして測定される作業の実行時間と、シミュレーションによって得られる作業の実行時間と、あらかじめ用意されているコマンドごとの実行時間に基づいて算出される作業の実行時間と、の中から2以上を組み合わせて、動作プログラムに含まれる各作業の実行時間を取得することもできる。 For example, the standard execution time and the maximum execution time can be stored in the storage unit for each command, and the execution time of the work can be obtained by adding them. It is also possible to simulate the operation of the robot 100 on a computer and measure the execution time for each work by a simulator that can reflect the physical behavior of the robot 100. Further, the work execution time measured by moving the actual robot 100, the work execution time obtained by the simulation, and the work execution time calculated based on the execution time for each command prepared in advance, It is also possible to acquire the execution time of each work included in the operation program by combining two or more of them.

(6)上記第3実施形態においては、修正前の動作プログラムの実行時間と、修正後の動作プログラムの実行時間と、を対比する表示が、棒グラフの形態で行われる(図12参照)。これらの棒グラフに加えて、または、修正前の動作プログラムの実行時間に代えて、各作業の目標時間から得られる動作プログラムの実行時間の目標時間を表す棒グラフが、表示されてもよい。動作プログラムの実行時間を表す棒グラフは、各作業の目標時間を表す部分から構成されることができる。 (6) In the third embodiment, the display in which the execution time of the operation program before the modification and the execution time of the operation program after the modification are compared is displayed in the form of a bar graph (see FIG. 12). In addition to these bar graphs, or instead of the execution time of the operation program before modification, a bar graph showing the target time of the execution time of the operation program obtained from the target time of each work may be displayed. The bar graph showing the execution time of the operation program can be composed of a part showing the target time of each work.

(7)上記第1実施形態においては、改善案Si上でマウス605が左クリックされることにより、表示されている動作プログラムに改善案Siを反映すべき旨の指示が行われる(図7参照)。しかし、表示されている動作プログラムに改善案を反映すべき旨の指示は、他の方法で実行されることもできる。 (7) In the first embodiment, when the mouse 605 is left-clicked on the improvement plan Si, an instruction to reflect the improvement plan Si in the displayed operation program is given (see FIG. 7). ). However, the instruction that the improvement plan should be reflected in the displayed operation program can be executed by other methods.

たとえば、表示されている動作プログラムに改善案を反映すべき旨の指示は、画面に表示されたボタンを押すことによって実行されることができる。また、表示されている動作プログラムに改善案を反映すべき旨の指示は、キーボードのあらかじめ定められた1以上のキーを押すことによって、実行されることができる。上記実施形態において、マウス605の左クリックや右クリックで行われる他の指示についても、同様に、上記の例を含む他の態様で行われることができる。 For example, an instruction to reflect the improvement plan in the displayed operation program can be executed by pressing a button displayed on the screen. Further, the instruction that the improvement plan should be reflected in the displayed operation program can be executed by pressing one or more predetermined keys on the keyboard. In the above embodiment, other instructions given by left-clicking or right-clicking the mouse 605 can also be given in other embodiments including the above example.

D2.他の実施形態2:
上記実施形態においては、受け付けた前記動作プログラムの中から、RAM630に記憶されたコマンドの組み合わせCt2を構成する2以上のコマンドと一致する2以上のコマンドが検出され、強調表示される(図4のCd43および図5のCd53参照)。しかし、コマンドの組み合わせCt2を構成する2以上のコマンドは検出されず、動作プログラムの実行に要する時間に影響を与える個別のコマンドCt1のみが検出されてもよい。
D2. Other Embodiment 2:
In the above embodiment, two or more commands matching the two or more commands constituting the combination Ct2 of the commands stored in the RAM 630 are detected and highlighted from the received operation programs (FIG. 4). See Cd43 and Cd53 in FIG. 5). However, two or more commands constituting the command combination Ct2 may not be detected, and only the individual command Ct1 that affects the time required to execute the operation program may be detected.

D3.他の実施形態3:
上記実施形態においては、編集画面De02の動作プログラムを表す表示において、検出されたコマンドが強調して表示される(図4および図5参照)。しかし、特定のコマンドの検出は、表示の強調ではなく、たとえば、音声出力など、他の方法で作業者に伝えられてもよい。音声出力は、検出されたコマンドに関する言語による音声出力でもよく、特定のコマンドが検出されたことを表す非言語の音による出力でもよい。
D3. Other Embodiment 3:
In the above embodiment, the detected command is highlighted in the display showing the operation program of the edit screen De02 (see FIGS. 4 and 5). However, the detection of a particular command may be communicated to the operator by other means, such as audio output, rather than highlighting the display. The audio output may be audio output in the language of the detected command, or non-verbal sound output indicating that a particular command has been detected.

D4.他の実施形態4:
上記実施形態においては、動作プログラムを表す表示において、検出されたコマンドに関する改善を促す表示S01,S02が、検出された前記コマンドと関連付けて行われる(図6、図7参照)。しかし、改善を促すメッセージは、たとえば、音声出力など、他の方法で作業者に伝えられてもよい。音声出力は、検出されたコマンドに関する改善を促す言語による音声出力でもよく、削除可能な特定のコマンドが検出されたことを表す非言語の音による出力でもよい。また、検出されたコマンドの少なくとも一部について、作業者に伝えられることなく、自動的に修正されてもよい。
D4. Other Embodiment 4:
In the above embodiment, in the display representing the operation program, the displays S01 and S02 prompting improvement regarding the detected command are performed in association with the detected command (see FIGS. 6 and 7). However, the message prompting improvement may be conveyed to the operator by other methods such as voice output. The audio output may be audio output in a language that encourages improvement with respect to the detected command, or non-verbal sound output indicating that a particular command that can be deleted has been detected. In addition, at least a part of the detected command may be automatically corrected without being notified to the operator.

D5.他の実施形態5:
上記実施形態においては、動作プログラムを表す表示において、検出されたコマンドに関する改善案Siが、検出されたWaitコマンドとVrunコマンドの組み合わせと関連付けて表示される(図7参照)。しかし、改善を促す表示のみが行われ、改善案が提示されない態様とすることもできる。そのような態様においては、作業者は、自ら改善案を考案する。
D5. Other Embodiment 5:
In the above embodiment, in the display representing the operation program, the improvement proposal Si regarding the detected command is displayed in association with the combination of the detected Wait command and the Vrun command (see FIG. 7). However, it is also possible that only the display prompting improvement is performed and the improvement plan is not presented. In such an aspect, the worker devises an improvement plan by himself / herself.

D6.他の実施形態6:
上記実施形態においては、検出されたコマンドに関する改善案Siは、検出されたコマンドのコマンド表示Cd053とは異なる態様で表示される。具体的には、改善案Siは、改善を促す表示S02とともに、吹き出し内に表示される(図7参照)。しかし、改善案は、もとの表記と同様の態様で、プログラムリストにおいて、元の表記と併記されてもよい。改善案は、たとえば、プログラムリストにおいて、改善案である旨の注釈とともに、コメント文として表記されてもよい。
D6. Other Embodiment 6:
In the above embodiment, the proposed improvement Si regarding the detected command is displayed in a mode different from the command display Cd053 of the detected command. Specifically, the improvement plan Si is displayed in the balloon together with the display S02 prompting the improvement (see FIG. 7). However, the improvement plan may be described together with the original notation in the program list in the same manner as the original notation. The improvement plan may be described as a comment in the program list, for example, together with a comment indicating that the improvement plan is an improvement plan.

D7.他の実施形態7:
上記実施形態においては、動作プログラムに改善案Siを反映すべき旨の指示がされた場合には、動作プログラムに改善案Siが反映される(図7、図8参照)。しかし、提示された改善案は、自動的に動作プログラムに反映されず、作業者自身によってキーボードを使用して入力される態様とすることもできる。
D7. Other Embodiment 7:
In the above embodiment, when the operation program is instructed to reflect the improvement plan Si, the improvement plan Si is reflected in the operation program (see FIGS. 7 and 8). However, the proposed improvement plan is not automatically reflected in the operation program, and may be input by the operator himself / herself using the keyboard.

D8.他の実施形態8:
上記第1実施形態においては、各作業Op1,Op2について、目標値と実行時間とに基づく表示Ddt1,Ddt2が行われる。具体的には、編集画面De02に表示されるプログラムリストDp09中に、各作業と対応づけられて、目標値に対する実行時間の差分の表示が示される(図9参照)。しかし、そのような目標値と実行時間とに基づく表示が行われず、検出されたコマンドに関する改善を促す表示、および改善案が行われる態様とすることができる。
D8. Other Embodiment 8:
In the first embodiment, the display Ddt1 and Ddt2 based on the target value and the execution time are performed for each work Op1 and Op2. Specifically, in the program list Dp09 displayed on the edit screen De02, the display of the difference in the execution time with respect to the target value is shown in association with each work (see FIG. 9). However, the display based on such a target value and the execution time may not be performed, and a display prompting improvement regarding the detected command and an improvement plan may be performed.

E.さらに他の実施形態:
本開示は、上述した実施形態に限られるものではなく、その趣旨を逸脱しない範囲において種々の形態で実現することができる。例えば、本開示は、以下の形態によっても実現可能である。以下に記載した各形態中の技術的特徴に対応する上記実施形態中の技術的特徴は、本開示の課題の一部又は全部を解決するために、あるいは、本開示の効果の一部又は全部を達成するために、適宜、差し替えや、組み合わせを行うことが可能である。また、その技術的特徴が本明細書中に必須なものとして説明されていなければ、適宜、削除することが可能である。
E. Yet another embodiment:
The present disclosure is not limited to the above-described embodiment, and can be realized in various forms without departing from the spirit thereof. For example, the present disclosure can also be realized by the following forms. The technical features in each of the embodiments described below correspond to the technical features in the above embodiments, in order to solve some or all of the problems of the present disclosure, or to partially or all of the effects of the present disclosure. It is possible to replace or combine as appropriate to achieve the above. Further, if the technical feature is not described as essential in the present specification, it can be appropriately deleted.

(1)本開示の一形態によれば、ロボットの動作プログラムの作成装置が提供される。このロボットの動作プログラムの作成装置は、1以上のコマンドを含み、ロボットが実行する作業を記述する動作プログラムを受け付ける受付部と、前記ロボットが実行できる複数のコマンドのうち、動作プログラムの実行に要する時間に影響を与える一部のコマンドを記憶している記憶部と、受け付けた前記動作プログラムの中から、前記記憶部に記憶された前記コマンドと一致するコマンドを検出する検出部と、を備える。
このような態様とすれば、受け付けた動作プログラムの中から、動作プログラムの実行に要する時間に影響を与えるコマンドを検出することができる。このため、ロボットの動作プログラムを作成する作業者が動作プログラムを生成または調整する際に、そのようなコマンドの存在を作業者に告知することによって、実際にロボットの作業の効率を上げられるように、作業者によるロボットの動作プログラムの作成の支援を行うことができる。
(1) According to one embodiment of the present disclosure, a device for creating a robot motion program is provided. This robot operation program creation device includes one or more commands, and is required to execute the operation program among the reception unit that receives the operation program that describes the work to be executed by the robot and the plurality of commands that can be executed by the robot. It includes a storage unit that stores some commands that affect time, and a detection unit that detects a command that matches the command stored in the storage unit from among the received operation programs.
In such an embodiment, it is possible to detect a command that affects the time required to execute the operation program from the received operation programs. Therefore, when the operator who creates the operation program of the robot generates or adjusts the operation program, the existence of such a command is notified to the operator so that the work efficiency of the robot can be actually improved. , It is possible to assist the worker in creating a robot motion program.

(2)上記形態の作成装置において、前記記憶部は、さらに、前記ロボットが実行できる複数のコマンドのうち、2以上のコマンドの組み合わせであって、動作プログラムの実行に要する時間に影響を与える組み合わせを記憶しており、前記検出部は、受け付けた前記動作プログラムの中から、前記記憶部に記憶された前記組み合わせを構成する2以上のコマンドと一致する2以上のコマンドを検出する、態様とすることもできる。
このような態様とすれば、受け付けた動作プログラムの中から、動作プログラムの実行に要する時間に影響を与えるコマンドの組み合わせを検出することができる。このため、ロボットの動作プログラムを作成する作業者が動作プログラムを生成または調整する際に、そのようなコマンドの組み合わせの存在を作業者に告知することによって、ロボットの作業の効率を上げられるように、作業者の支援を行うことができる。
(2) In the creation device of the above embodiment, the storage unit is a combination of two or more commands among a plurality of commands that can be executed by the robot, and is a combination that affects the time required to execute the operation program. Is stored, and the detection unit detects two or more commands that match the two or more commands that constitute the combination stored in the storage unit from the received operation program. You can also do it.
In such an embodiment, it is possible to detect a combination of commands that affects the time required to execute the operation program from the received operation programs. Therefore, when the operator who creates the operation program of the robot generates or adjusts the operation program, he / she is notified of the existence of such a combination of commands so that the work efficiency of the robot can be improved. , Can support workers.

(3)上記形態の作成装置において、さらに、前記動作プログラムを表す表示において、検出された前記コマンドを強調して表示する強調表示部を備える、態様とすることもできる。
このような態様とすれば、作業者が動作プログラムを生成または調整する際に、動作プログラム中の、動作プログラムの実行に要する時間に影響を与えるコマンドの場所を、作業者に提示することができる。その結果、作業者は、実際にロボットの作業の効率を上げられるように、動作プログラムを生成または調整することができる。
(3) The creation device of the above-described embodiment may further include a highlighting unit that highlights and displays the detected command in the display representing the operation program.
In such an embodiment, when the operator generates or adjusts the operation program, the location of the command in the operation program that affects the time required to execute the operation program can be presented to the operator. .. As a result, the operator can generate or adjust an operation program so as to actually improve the efficiency of the robot's work.

(4)上記形態の作成装置において、さらに、前記動作プログラムを表す表示において、検出された前記コマンドに関する改善を促す表示を、検出された前記コマンドと関連付けて行う、改善示唆部を備える、態様とすることもできる。
このような態様とすれば、ロボットの動作プログラムを作成する作業者が動作プログラムを生成または調整する際に、作業者は、改善を促す表示に基づいて、動作プログラムの実行に要する時間に影響を与える一部のコマンドについて、動作プログラムを生成または調整することができる。
(4) In the creating device of the above-described embodiment, further, in the display representing the operation program, an improvement suggestion unit is provided in which a display prompting improvement regarding the detected command is performed in association with the detected command. You can also do it.
In such an aspect, when the operator who creates the operation program of the robot generates or adjusts the operation program, the operator affects the time required to execute the operation program based on the display prompting improvement. It is possible to generate or adjust an operation program for some commands given.

(5)上記形態の作成装置において、さらに、前記動作プログラムを表す表示において、検出された前記コマンドに関する改善案を、検出された前記コマンドと関連付けて表示する、改善案提示部を備える、態様とすることもできる。
このような態様とすれば、ロボットの動作プログラムを作成する作業者が動作プログラムを生成または調整する際に、作業者は、改善案の表示に基づいて、動作プログラムの実行に要する時間に影響を与えるコマンドについて、容易に、動作プログラムを改善することができる。
(5) An embodiment of the creation device of the above embodiment, further comprising an improvement plan presenting unit that displays an improvement plan for the detected command in association with the detected command in a display representing the operation program. You can also do it.
In such an aspect, when the operator who creates the operation program of the robot generates or adjusts the operation program, the operator affects the time required to execute the operation program based on the display of the improvement plan. The operation program can be easily improved for the given command.

(6)上記形態の作成装置において、前記改善案提示部は、前記動作プログラムを表す表示において、検出された前記コマンドに関する改善案を、検出された前記コマンドとは異なる態様で表示する、態様とすることもできる。
このような態様とすれば、作業者は、検出されたコマンドとその改善案とを混同することなく、動作プログラムを改善することができる。
(6) In the creation device of the above-described embodiment, the improvement plan presenting unit displays the detected improvement plan for the command in a display representing the operation program in a mode different from that of the detected command. You can also do it.
In such an embodiment, the operator can improve the operation program without confusing the detected command with the improvement plan thereof.

(7)上記形態の作成装置において、前記改善案提示部は、表示されている動作プログラムに前記改善案を反映すべき旨の指示を受けて、前記動作プログラムに前記改善案を反映する、態様とすることもできる。
このような態様とすれば、作業者は、表示された改善案を動作プログラムに反映させることにより、動作プログラムの実行に要する時間に影響を与えるコマンドについて、容易に、動作プログラムを改善することができる。
(7) In the creating device of the above embodiment, the improvement plan presenting unit receives an instruction that the improvement plan should be reflected in the displayed operation program, and reflects the improvement plan in the operation program. It can also be.
In such an aspect, the operator can easily improve the operation program for the command that affects the time required to execute the operation program by reflecting the displayed improvement plan in the operation program. can.

(8)上記形態の作成装置において、前記受付部は、前記作業に要する時間の目標値を受け付け、前記作成装置は、さらに、前記動作プログラムに含まれる前記作業の実行時間を取得し、前記作業について、前記目標値と前記実行時間とに基づく表示を行う、評価部を備える、態様とすることもできる。
このような態様とすれば、作業者は、目標値と実行時間とを対比することにより、目標値を達成するために短縮するべき時間を認識しながら、動作プログラムを改善することができる。
(8) In the creation device of the above embodiment, the reception unit receives a target value of the time required for the work, and the creation device further acquires the execution time of the work included in the operation program, and the work. Can be configured to include an evaluation unit for displaying based on the target value and the execution time.
In such an aspect, the worker can improve the operation program while recognizing the time to be shortened in order to achieve the target value by comparing the target value and the execution time.

(9)上記形態の作成装置において、前記検出部は、前記動作プログラムの一部であって、1以上のコマンドを含む一部を前記受付部が受け付けた状態において、受け付けた前記動作プログラムの前記一部の中から、前記記憶部に記憶された前記コマンドと一致するコマンドを検出し、前記改善示唆部は、前記受付部が前記動作プログラムの前記一部を受け付けた状態において、前記動作プログラムの前記一部を表す表示において、検出された前記コマンドに関する前記改善を促す表示を、検出された前記コマンドと関連付けて行う、態様とすることもできる。
このような態様とすれば、作業者は、動作プログラムの作成途中においても動作プログラムを改善しながら、動作プログラムの作成を進めることができる。
(9) In the creating apparatus of the above embodiment, the detection unit is a part of the operation program, and the reception unit receives a part including one or more commands, and the operation program is received. A command matching the command stored in the storage unit is detected from a part of the part, and the improvement suggestion unit receives the part of the operation program in the receiving unit, and the improvement suggestion unit receives the part of the operation program. In the display representing the part, the display prompting the improvement regarding the detected command may be made in association with the detected command.
In such an aspect, the worker can proceed with the creation of the operation program while improving the operation program even during the creation of the operation program.

(10)上記形態の作成装置において、前記検出部は、前記動作プログラムの全体を前記受付部が受け付けた状態において、受け付けた前記動作プログラムの中から、前記記憶部に記憶された前記組み合わせを構成する前記2以上のコマンドと一致する2以上のコマンドを検出し、前記改善示唆部は、前記受付部が前記動作プログラムの全体を受け付けた状態において、前記動作プログラムを表す表示において、検出された前記組み合わせに関する前記改善を促す表示を、検出された前記2以上のコマンドと関連付けて行う、態様とすることもできる。
このような態様とすれば、動作プログラムの全体から検出された、動作プログラムの実行に要する時間に影響を与えるコマンドの組み合わせに関する前記改善を促す表示が、動作プログラムを表す表示において、行われる。このため、作業者は、表示を参考にして、動作プログラムの全体を最適化するように、動作プログラムを改善することができる。
(10) In the creating apparatus of the above embodiment, the detection unit constitutes the combination stored in the storage unit from the received operation programs in a state where the reception unit receives the entire operation program. Two or more commands that match the two or more commands are detected, and the improvement suggestion unit is the detected state in the display representing the operation program in a state where the reception unit has received the entire operation program. It is also possible to make the display prompting the improvement regarding the combination in association with the detected two or more commands.
In such an embodiment, the display prompting the improvement regarding the combination of commands that affects the time required to execute the operation program, which is detected from the entire operation program, is performed in the display representing the operation program. Therefore, the operator can improve the operation program so as to optimize the entire operation program by referring to the display.

(11)本開示の他の形態によれば、ロボットの動作プログラムの改善方法が提供される。このロボットの動作プログラムの改善方法は、(a)1以上のコマンドを含み、ロボットが実行する作業を記述する動作プログラムを受け付ける工程と、(b)受け付けた前記動作プログラムの中から、前記ロボットが実行できる複数のコマンドのうち動作プログラムの実行に要する時間に影響を与える一部のコマンドであって記憶部に記憶されているコマンドと、一致するコマンドを検出する工程と、を備える。 (11) According to another embodiment of the present disclosure, a method for improving a robot motion program is provided. The method for improving the operation program of the robot is as follows: (a) a step of accepting an operation program that includes one or more commands and describes a work to be executed by the robot, and (b) the operation program received by the robot. Among a plurality of commands that can be executed, some commands that affect the time required to execute the operation program and are stored in the storage unit, and a step of detecting a matching command are provided.

本開示は、ロボットの動作プログラムの作成装置およびロボットの動作プログラムの改善方法以外の種々の形態で実現することも可能である。例えば、ロボット、ロボットの作成方法、ロボットの動作プログラムの作成方法、ならびにそれらの方法を実現するコンピュータープログラム、そのコンピュータープログラムを記録した一時的でない記録媒体等の形態で実現することができる。 The present disclosure can also be realized in various forms other than the device for creating a robot motion program and the method for improving the robot motion program. For example, it can be realized in the form of a robot, a method for creating a robot, a method for creating an operation program for a robot, a computer program for realizing those methods, a non-temporary recording medium on which the computer program is recorded, and the like.

1…ロボットシステム、100…ロボット、110…アーム、110a…アーム要素、110b…アーム要素、110d…アーム要素、200…エンドエフェクター、300…ロボット制御装置、310…CPU、330…RAM、340…ROM、410…サーボモーター、410o…出力軸、420…モーター角度センサー、510…減速機、510i…入力軸、510o…出力軸、600…設定装置、602…ディスプレイ、604…キーボード、605…マウス、610…CPU、611…受付部、612…検出部、613…強調表示部、614…改善示唆部、615…改善案提示部、616…評価部、630…RAM、640…ROM、700…カメラ、B01…履歴の表示、B02…履歴の表示、Be…プログラム実行ボタン、Bs…シミュレーション実行ボタン、Cd041…コマンド表示、Cd042…コマンド表示、Cd043…コマンド表示、Cd051…コマンド表示、Cd052…コマンド表示、Cd053…コマンド表示、Cd081…コマンド表示、Cd082…コマンド表示、Ce1…End Clockコマンド、Ce2…End Clockコマンド、Cs1…Set Clockコマンド、Cs2…Set Clockコマンド、Ct1…記憶されているコマンド、Ct2…記憶されているコマンドの組み合わせ、Cts…記憶されている1以上のコマンド、DI…インターフェイス画面、Ddt1…実行時間の差分を表す表示、Ddt2…実行時間の差分を表す表示、De02…編集画面、Dp04…プログラムリスト、Dp05…プログラムリスト、Dp08…プログラムリスト、Dp09…プログラムリスト、Dp10…プログラムリスト、Drt1…目標時間を指定する記載、Drt2…目標時間を指定する記載、Ds…シミュレーション画面、Hg10…棒グラフの表示、Hg11…棒グラフの一部の表示、Hg12…棒グラフの一部の表示、Hg13…棒グラフの一部の表示、Hg20…棒グラフの表示、Hg21…棒グラフの一部の表示、Hg22…棒グラフの一部の表示、Hg23…棒グラフの一部の表示、Hs10…コメント文、Hs20…コメント文、J1…関節、J2…関節、J3…関節、J4…関節、Op1…作業、Op2…作業、S01…改善を促す表示、S02…改善を促す表示、Si…改善案、W01…ワークピース 1 ... Robot system, 100 ... Robot, 110 ... Arm, 110a ... Arm element, 110b ... Arm element, 110d ... Arm element, 200 ... End effector, 300 ... Robot control device, 310 ... CPU, 330 ... RAM, 340 ... ROM , 410 ... Servo motor, 410o ... Output shaft, 420 ... Motor angle sensor, 510 ... Reducer, 510i ... Input shaft, 510o ... Output shaft, 600 ... Setting device, 602 ... Display, 604 ... Keyboard, 605 ... Mouse, 610 ... CPU, 611 ... Reception unit, 612 ... Detection unit, 613 ... Highlight display unit, 614 ... Improvement suggestion unit, 615 ... Improvement proposal presentation unit, 616 ... Evaluation unit, 630 ... RAM, 640 ... ROM, 700 ... Camera, B01 ... History display, B02 ... History display, Be ... Program execution button, Bs ... Simulation execution button, Cd041 ... Command display, Cd042 ... Command display, Cd043 ... Command display, Cd051 ... Command display, Cd052 ... Command display, Cd053 ... Command display, Cd081 ... Command display, Cd082 ... Command display, Ce1 ... End Clock command, Ce2 ... End Clock command, Cs1 ... Set Clock command, Cs2 ... Set Clock command, Ct1 ... Stored command, Ct2 ... Stored Combination of existing commands, Cts ... One or more stored commands, DI ... Interface screen, Ddt1 ... Display showing the difference in execution time, Ddt2 ... Display showing the difference in execution time, De02 ... Editing screen, Dp04 ... Program list , Dp05 ... Program list, Dp08 ... Program list, Dp09 ... Program list, Dp10 ... Program list, Drt1 ... Description to specify the target time, Drt2 ... Description to specify the target time, Ds ... Simulation screen, Hg10 ... Bar graph display, Hg11 ... Partial display of bar graph, Hg12 ... Partial display of bar graph, Hg13 ... Partial display of bar graph, Hg20 ... Display of bar graph, Hg21 ... Partial display of bar graph, Hg22 ... Partial display of bar graph , Hg23 ... Partial display of bar graph, Hs10 ... Comment text, Hs20 ... Comment text, J1 ... Joint, J2 ... Joint, J3 ... Joint, J4 ... Joint, Op1 ... Work, Op2 ... Work, S01 ... Display that encourages improvement , S02 ... Display to encourage improvement, Si ... Improvement plan, W01 ... Workpiece

Claims (11)

ロボットの動作プログラムの作成装置であって、
1以上のコマンドを含み、ロボットが実行する作業を記述する動作プログラムを受け付ける受付部と、
前記ロボットが実行できる複数のコマンドのうち、動作プログラムの実行に要する時間に影響を与える一部のコマンドを記憶している記憶部と、
受け付けた前記動作プログラムの中から、前記記憶部に記憶された前記コマンドと一致するコマンドを検出する検出部と、を備える、作成装置。
It is a device for creating robot operation programs.
A reception unit that accepts operation programs that include one or more commands and describe the work performed by the robot.
A storage unit that stores some of the commands that affect the time required to execute the operation program among the plurality of commands that can be executed by the robot.
A creating device including a detection unit that detects a command that matches the command stored in the storage unit from the received operation programs.
請求項1に記載の作成装置であって、
前記記憶部は、さらに、前記ロボットが実行できる複数のコマンドのうち、2以上のコマンドの組み合わせであって、動作プログラムの実行に要する時間に影響を与える組み合わせを記憶しており、
前記検出部は、受け付けた前記動作プログラムの中から、前記記憶部に記憶された前記組み合わせを構成する2以上のコマンドと一致する2以上のコマンドを検出する、作成装置。
The production device according to claim 1.
The storage unit further stores a combination of two or more commands among a plurality of commands that can be executed by the robot, which affects the time required to execute the operation program.
The detection unit is a creation device that detects two or more commands that match two or more commands constituting the combination stored in the storage unit from the received operation program.
請求項1または2に記載の作成装置であって、さらに、
前記動作プログラムを表す表示において、検出された前記コマンドを強調して表示する強調表示部を備える、作成装置。
The production device according to claim 1 or 2, further comprising:
A creation device including a highlighting unit that highlights and displays the detected command in a display representing the operation program.
請求項1から3のいずれか1項に記載の作成装置であって、さらに、
前記動作プログラムを表す表示において、検出された前記コマンドに関する改善を促す表示を、検出された前記コマンドと関連付けて行う、改善示唆部を備える、作成装置。
The creation device according to any one of claims 1 to 3, and further.
A creation device including an improvement suggestion unit, which displays an improvement indicating the detected command in a display representing the operation program in association with the detected command.
請求項1から4のいずれか1項に記載の作成装置であって、さらに、
前記動作プログラムを表す表示において、検出された前記コマンドに関する改善案を、検出された前記コマンドと関連付けて表示する、改善案提示部を備える、作成装置。
The production device according to any one of claims 1 to 4, further comprising:
A creation device including an improvement plan presenting unit that displays an improvement plan related to the detected command in association with the detected command in the display representing the operation program.
請求項5に記載の作成装置であって、
前記改善案提示部は、前記動作プログラムを表す表示において、検出された前記コマンドに関する改善案を、検出された前記コマンドとは異なる態様で表示する、作成装置。
The creation device according to claim 5.
The improvement plan presenting unit is a creation device that displays an improvement plan for the detected command in a display representing the operation program in a mode different from the detected command.
請求項5または6に記載の作成装置であって、
前記改善案提示部は、表示されている動作プログラムに前記改善案を反映すべき旨の指示を受けて、前記動作プログラムに前記改善案を反映する、作成装置。
The production device according to claim 5 or 6.
The improvement plan presenting unit receives an instruction that the improvement plan should be reflected in the displayed operation program, and reflects the improvement plan in the operation program.
請求項1から7のいずれか1項に記載の作成装置であって、
前記受付部は、前記作業に要する時間の目標値を受け付け、
前記作成装置は、さらに、
前記動作プログラムに含まれる前記作業の実行時間を取得し、前記作業について、前記目標値と前記実行時間とに基づく表示を行う、評価部を備える、作成装置。
The creation device according to any one of claims 1 to 7.
The reception unit receives the target value of the time required for the work, and receives the target value.
The creation device further
A creation device including an evaluation unit that acquires the execution time of the work included in the operation program and displays the work based on the target value and the execution time.
請求項4に記載の作成装置であって、
前記検出部は、前記動作プログラムの一部であって、1以上のコマンドを含む一部を前記受付部が受け付けた状態において、受け付けた前記動作プログラムの前記一部の中から、前記記憶部に記憶された前記コマンドと一致するコマンドを検出し、
前記改善示唆部は、前記受付部が前記動作プログラムの前記一部を受け付けた状態において、前記動作プログラムの前記一部を表す表示において、検出された前記コマンドに関する前記改善を促す表示を、検出された前記コマンドと関連付けて行う、作成装置。
The production device according to claim 4.
The detection unit is a part of the operation program, and in a state where the reception unit receives a part including one or more commands, the storage unit receives the part of the operation program. Detects a command that matches the stored command,
In the state where the receiving unit receives the part of the operation program, the improvement suggestion unit detects a display prompting the improvement regarding the detected command in the display representing the part of the operation program. A creation device that is performed in association with the above command.
請求項2に直接または間接に従属する請求項4に記載の作成装置であって、
前記検出部は、前記動作プログラムの全体を前記受付部が受け付けた状態において、受け付けた前記動作プログラムの中から、前記記憶部に記憶された前記組み合わせを構成する前記2以上のコマンドと一致する2以上のコマンドを検出し、
前記改善示唆部は、前記受付部が前記動作プログラムの全体を受け付けた状態において、前記動作プログラムを表す表示において、検出された前記組み合わせに関する前記改善を促す表示を、検出された前記2以上のコマンドと関連付けて行う、作成装置。
The creation device according to claim 4, which is directly or indirectly dependent on claim 2.
The detection unit coincides with the two or more commands constituting the combination stored in the storage unit from the received operation programs in a state where the entire operation program is received by the reception unit. Detecting the above command,
In the state where the reception unit has received the entire operation program, the improvement suggestion unit displays the display prompting the improvement regarding the detected combination in the display representing the operation program, and the two or more commands detected. A creation device that is associated with.
ロボットの動作プログラムの改善方法であって、
(a)1以上のコマンドを含み、ロボットが実行する作業を記述する動作プログラムを受け付ける工程と、
(b)受け付けた前記動作プログラムの中から、前記ロボットが実行できる複数のコマンドのうち動作プログラムの実行に要する時間に影響を与える一部のコマンドであって記憶部に記憶されているコマンドと、一致するコマンドを検出する工程と、を備える、方法。
It ’s a way to improve the robot's motion program.
(A) A process of accepting an operation program that includes one or more commands and describes the work to be executed by the robot.
(B) Among the plurality of commands that can be executed by the robot, some of the commands that affect the time required to execute the operation program and are stored in the storage unit from the received operation programs. A method comprising the steps of finding a matching command.
JP2020120444A 2020-07-14 2020-07-14 Device for creating robot motion program and method for improving robot motion program Pending JP2022017732A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020120444A JP2022017732A (en) 2020-07-14 2020-07-14 Device for creating robot motion program and method for improving robot motion program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020120444A JP2022017732A (en) 2020-07-14 2020-07-14 Device for creating robot motion program and method for improving robot motion program

Publications (1)

Publication Number Publication Date
JP2022017732A true JP2022017732A (en) 2022-01-26

Family

ID=80186156

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020120444A Pending JP2022017732A (en) 2020-07-14 2020-07-14 Device for creating robot motion program and method for improving robot motion program

Country Status (1)

Country Link
JP (1) JP2022017732A (en)

Similar Documents

Publication Publication Date Title
US7945349B2 (en) Method and a system for facilitating calibration of an off-line programmed robot cell
CN102163047B (en) Robot with learning control function
JP3946753B2 (en) Robot program evaluation / correction method and robot program evaluation / correction device
EP1842631B1 (en) Apparatus and method for automatic path generation for an industrial robot
JP2001105359A (en) Graphic display device for robot system
JP5123502B2 (en) Post-processor development support system and CAM system using the same
JP6961128B1 (en) Simulation equipment, machine tool system, simulation method and machining method
JP2008142788A (en) Operation program preparation supporting method and operation program preparing device
JP2017211872A (en) Numerical controller equipped with program correction assist function for resolving alarm
JP2004108852A (en) Measurement support method and apparatus
JP2022017732A (en) Device for creating robot motion program and method for improving robot motion program
JPH10143221A (en) System and method for supporting development of equipment control program
JP6392817B2 (en) Simulation device
JP2009070181A (en) Operation program creation support system
US11454952B2 (en) Numerical control apparatus
JP6836540B2 (en) Information processing device and information processing method
JP5763352B2 (en) NC program creation device
WO2023073883A1 (en) Auxiliary file-generating simulation device and control system
JPH08137532A (en) Generating method for operation program of robot and teaching method for robot
JPH0747209B2 (en) Welding condition automatic setting device
WO2023162164A1 (en) Teaching support device, work system, teaching support method, and teaching support program
JPH07121222A (en) Automatic generating method for deburring program using fixed tool
JP3823938B2 (en) Program creation device
JPS6260006A (en) Interference checking method for robot control program
WO2020067256A1 (en) Control device

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20210922

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20211104