JP7151713B2 - robot simulator - Google Patents
robot simulator Download PDFInfo
- Publication number
- JP7151713B2 JP7151713B2 JP2019544369A JP2019544369A JP7151713B2 JP 7151713 B2 JP7151713 B2 JP 7151713B2 JP 2019544369 A JP2019544369 A JP 2019544369A JP 2019544369 A JP2019544369 A JP 2019544369A JP 7151713 B2 JP7151713 B2 JP 7151713B2
- Authority
- JP
- Japan
- Prior art keywords
- robot
- timing chart
- task
- state information
- unit
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/406—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
- G05B19/4069—Simulating machining process on screen
Landscapes
- Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
- Numerical Control (AREA)
Description
本発明は、ロボットシミュレータに関する。 The present invention relates to robot simulators.
ロボットの動作をティーチング(教示)するとともに、ロボットの3次元モデルによりロボットにティーチングした動作をシミュレーションすることが知られている。例えば特許文献1には、アームに研削加工ツールを装着したロボットの動作のシミュレートすることが記載されている。
It is known to teach the motion of a robot and to simulate the motion taught to the robot using a three-dimensional model of the robot. For example,
ところで、教示対象となるロボットが行う一連の作業に複数の作業要素が含まれる場合に、当該一連の作業のロボットの実行結果に対して、複数の作業要素の各々について確認したいという要請がある。ここで、「作業要素」とは、物体を「取る」や「置く」等、一連の作業の中でロボットが行う最小単位の作業を意味する。作業要素ごとのロボットの状態に着目することで、ロボットによる一連の作業のティーチング、及び/又は、ロボットと作業の対象物の配置の改善を図ることができる。 By the way, when a series of work performed by a robot to be taught includes a plurality of work elements, there is a demand to confirm each of the plurality of work elements with respect to the robot's execution result of the series of work. Here, the "work element" means the minimum unit of work performed by the robot in a series of work, such as "taking" or "placing" an object. By paying attention to the state of the robot for each work element, it is possible to improve the teaching of a series of work by the robot and/or the arrangement of the robot and the work target.
そこで、本発明は、ロボットによる一連の作業の実行結果に対して、作業要素ごとの検討を支援することを目的とする。 SUMMARY OF THE INVENTION Accordingly, it is an object of the present invention to support the examination of each work element with respect to the result of execution of a series of works by a robot.
ロボットの作業要素に関する情報であるタスクを含むロボットプログラムを実行するプログラム実行部と、前記プログラム実行部による実行結果に基づいて前記ロボットに対する制御信号を生成し、当該制御信号によって動作する前記ロボットの時間の経過に応じた状態を示す情報である状態情報を、前記ロボットから取得する状態情報取得部と、前記状態情報取得部により得られた前記状態情報に基づいて、時間軸において前記タスクの作業要素に相当する期間が識別可能となるように、前記ロボットの状態を示す第1タイミングチャートを表示装置に表示する表示制御部と、前記プログラム実行部による実行結果に基づいて、時間の経過に応じた前記ロボットの状態を示す情報である状態情報を演算する状態情報算出部と、をさらに備え、前記表示制御部は、前記状態情報算出部により得られた前記状態情報に基づいて、時間軸において前記タスクの作業要素に相当する期間が識別可能となるように、前記ロボットの状態を示す第2タイミングチャートを前記表示装置に表示するロボットシミュレータ。 A program execution unit that executes a robot program including tasks that are information related to work elements of the robot; a control signal for the robot based on the execution result of the program execution unit; a state information acquiring unit for acquiring state information, which is information indicating a state according to the progress of the work element of the task on the time axis, based on the state information obtained by the state information acquiring unit A display control unit that displays a first timing chart indicating the state of the robot on a display device so that a period corresponding to is identifiable, and based on the execution result of the program execution unit, according to the passage of time A state information calculation unit that calculates state information that is information indicating the state of the robot, and the display control unit calculates the state information on the time axis based on the state information obtained by the state information calculation unit. A robot simulator that displays a second timing chart showing the state of the robot on the display device so that periods corresponding to work elements of a task can be identified.
本発明によれば、ロボットによる一連の作業の実行結果に対して、作業要素ごとの検討を支援することができる。 Advantageous Effects of Invention According to the present invention, it is possible to support examination of each work element with respect to the result of execution of a series of works by a robot.
以下、本発明のロボットシミュレータの実施形態について説明する。
以下の説明において、「作業要素」とは、物体を「取る」や「置く」等、一連の作業の中でロボットが行う最小単位の作業を意味する。
「対象物」とは、ロボットの作業の対象となる物体を意味し、ロボットが把持する物体(例えば、加工対象物であるワーク)に限らず、ロボットの作業に関連する物体(例えば、ロボットが把持する物体を置く棚)をも含む。An embodiment of the robot simulator of the present invention will be described below.
In the following description, a "work element" means a minimum unit work performed by a robot in a series of work such as "taking" or "placing" an object.
"Object" means an object to be worked by the robot, and is not limited to an object gripped by the robot (e.g., a work that is an object to be processed), but also an object related to the work of the robot (e.g., shelves on which objects to be grasped are placed).
(1)第1の実施形態
第1の実施形態のロボットシミュレータは、ロボットの実機に接続することなく、ロボットの実機の動作をシミュレートし、ロボットの状態をタイミングチャートに表示する。(1) First Embodiment The robot simulator of the first embodiment simulates the operation of the actual robot without connecting to the actual robot, and displays the state of the robot on a timing chart.
(1-1)本実施形態に係るロボットシミュレータの構成
以下、本実施形態のロボットシミュレータ1の構成について、図1および図2を参照して説明する。図1は、本実施形態のロボットシミュレータ1の全体構成について示す図である。図2は、本実施形態のロボットシミュレータ1に含まれる各装置のハードウェア構成を示す図である。(1-1) Configuration of Robot Simulator According to Present Embodiment Hereinafter, the configuration of the
図1に示すように、ロボットシミュレータ1は、情報処理装置2およびロボット制御装置3を備える。情報処理装置2とロボット制御装置3とは、例えば通信ネットワークケーブルECにより通信可能に接続される。
情報処理装置2は、工場のラインに設置されたロボットに対して動作を教示するための装置である。情報処理装置2は、オペレータによるオフラインティーチングを行うために設けられており、例えばロボットが設置される工場から離れた位置(例えば、オペレータの作業場所)に配置される。As shown in FIG. 1 , the
The
ロボット制御装置3は、情報処理装置2から送信されるロボットプログラムを実行する。本実施形態ではロボット制御装置3はロボットと接続されないが、ロボットと接続された場合には、ロボットプログラムの実行結果に応じた制御信号をロボットに送り、ロボットを動作させることが可能である。そのため、好ましくは、ロボット制御装置3は、ロボットの実機の近傍に配置される。
The robot control device 3 executes the robot program transmitted from the
図2に示すように、情報処理装置2は、制御部21と、ストレージ22と、入力装置23と、表示装置24と、通信インタフェース部25とを備える。
制御部21は、CPU(Central Processing Unit)、ROM(Read Only Memory)、および、RAM(Random Access Memory)を含む。ROMには、3次元CADアプリケーションプログラムと教示ソフトウェアが記憶されている。CPUは、ROM上の3次元CADアプリケーションソフトウェア(以下、適宜「CADソフトウェア」という。)と教示ソフトウェアをRAMに展開して実行する。教示ソフトウェアとCADソフトウェアは、API(Application Program Interface)を介して協調して処理を実行する。
制御部21は、CADソフトウェアによる動画再生を行うために、フレーム単位で画像を連続的に表示する。As shown in FIG. 2 , the
The
The
ストレージ22は、HDD(Hard Disk Drive)あるいはSSD(Solid State Drive)等の大容量記憶装置であり、制御部21のCPUにより逐次アクセス可能に構成されている。後述するように、ストレージ22には、タスクデータベース221、階層型リストデータベース222、3次元モデルデータベース223、および、実行ログデータベース224が格納される。
ストレージ22には、CADソフトウェアを実行するときに参照される3次元モデルのデータが格納される。本実施形態の例では、ストレージ22には、ロボットおよび対象物(例えば、後述するペン、キャップ、製品、ペントレイ、キャップトレイ、製品トレイ)の3次元モデルのデータが格納される。
ストレージ22には、ロボット制御装置3から取得した実行ログデータが格納される。実行ログデータには、ロボットプログラムの実行結果と、後述するロボット状態データとが含まれる。
ロボット状態データは、後述するタイミングチャートの作成に使用される。ロボット状態データはまた、3次元CADによってロボットの動作を仮想空間内で動画(アニメーション)により再現するために使用されてもよい。The
The
The execution log data acquired from the robot control device 3 is stored in the
The robot state data is used for creating a timing chart, which will be described later. The robot state data may also be used by 3D CAD to reproduce the motion of the robot in virtual space by animation.
入力装置23は、オペレータによる操作入力を受け付けるためのデバイスであり、ポインティングデバイスを含む。
表示装置24は、教示ソフトウェアおよびCADソフトウェアの実行結果を表示するためのデバイスであり、表示駆動回路および表示パネルを含む。
通信インタフェース部25は、ロボット制御装置3との間でネットワーク通信を行うための通信回路を含む。The
The
The
ロボット制御装置3は、制御部31と、ストレージ32と、通信インタフェース部33とを備える。
制御部31は、CPU、ROM、RAM、および、制御回路を含む。制御部31は、情報処理装置2から受信するロボットプログラムを実行し、実行ログデータを出力する。上述したように、実行ログデータには、ロボットプログラムの実行結果と、ロボットプログラムに記述された作業を実行するロボットのロボット状態データとを含む。
ストレージ32は、ロボットのマニピュレータ(アーム51、ハンド52を含むロボット本体)のモデルのデータを備えている。制御部31は、ロボットプログラムの実行結果に基づいて、マニピュレータを構成する各部のジョブを実行中の時間の経過に応じた物理量(例えば、アーム51の関節角の角度変位、角速度、ハンド52の位置等)を演算する。かかる物理量のデータが上記ロボット状態データに含まれる。The robot control device 3 includes a control section 31 , a
The control unit 31 includes a CPU, ROM, RAM, and control circuit. The control unit 31 executes the robot program received from the
The
ストレージ32は、HDDあるいはSSD等の大容量記憶装置であり、制御部31のCPUにより逐次アクセス可能に構成されている。ストレージ32には、ロボットのマニピュレータのモデルのデータの他に、ロボットプログラムおよび実行ログデータが格納される。
通信インタフェース部33は、情報処理装置2との間でネットワーク通信を行うための通信回路を含む。The
The communication interface unit 33 includes a communication circuit for network communication with the
(1-2)オフラインティーチングにおけるユーザインタフェース
ロボットのシミュレーションを実行する前に、オペレータは、情報処理装置2を使用して、ロボットに対するオフラインティーチングを行い、ロボットプログラムを作成する。ロボットプログラムを作成するに当たって、本実施形態の好ましい例では、CADソフトウェアと教示ソフトウェアを情報処理装置2に実行させる。
CADソフトウェアの実行結果はCAD用ウィンドウに表示され、教示ソフトウェアの実行結果は教示用ウィンドウに表示される。オペレータは、CAD用ウィンドウと教示用ウィンドウの両方を情報処理装置2に表示させ、あるいはCAD用ウィンドウと教示用ウィンドウを切り替えながら情報処理装置2に表示させ、ティーチングやCADによる動画再生に関連する操作を行う。(1-2) User Interface in Offline Teaching Before executing the robot simulation, the operator uses the
The execution result of the CAD software is displayed in the CAD window, and the execution result of the teaching software is displayed in the teaching window. The operator causes the
図3に、本実施形態の一例に係るCAD用ウィンドウW1を示す。図3には、テーブルTの上に、ロボットRと、ペントレイ11と、キャップトレイ12と、治具13と、製品トレイ14とが、仮想空間に配置された状態の画像(以下、適宜「CAD画像」という。)が表示されている。
図3に示す例では、ロボットRがペンにキャップを嵌めて製品(ペンにキャップが嵌められた状態の完成品)を組み立てる一連の作業を行うことが想定されている。ペントレイ11には複数のペンからなるペン群Pが配置され、キャップトレイ12には複数のキャップからなるキャップ群Cが配置されている。治具13は、ロボットRがペンを一時的に配置してキャップを嵌める作業を行うための部材である。製品トレイ14は、製品を置くための部材である。FIG. 3 shows a CAD window W1 according to an example of this embodiment. FIG. 3 shows an image (hereinafter referred to as “CAD image”) is displayed.
In the example shown in FIG. 3, it is assumed that the robot R performs a series of tasks of fitting a pen with a cap and assembling a product (a finished product in which the pen is fitted with the cap). A pen group P consisting of a plurality of pens is arranged on the
図3に示す例では、ペン群Pに含まれる各ペン、キャップ群Cに含まれる各キャップ、ペントレイ11、キャップトレイ12、治具13、製品トレイ14の各々は、ロボットRの作業対象である対象物の例である。また、ペンにキャップが嵌められた製品も対象物の例である。
In the example shown in FIG. 3, each pen included in the pen group P, each cap included in the cap group C, the
(1-2-1)階層型リスト
図4に、本実施形態の一例に係る教示用ウィンドウW2を示す。教示用ウィンドウW2に表示されているのは、図3のCAD画像に含まれているロボットR、および、対象物の階層関係を示す階層型リストである。(1-2-1) Hierarchical List FIG. 4 shows a teaching window W2 according to an example of this embodiment. What is displayed in the teaching window W2 is a hierarchical list showing the hierarchical relationship between the robots R and objects included in the CAD image of FIG.
教示ソフトウェアは、CADソフトウェアと連携して階層型リストを作成することができる。階層型リストとして木構造のデータフォーマットが教示ソフトウェアによって用意される。オペレータは、CAD用ウィンドウと教示用ウィンドウを表示させた状態で、CAD画像内のロボットRおよび対象物をポインティングデバイスで選択した状態で上記木構造のデータフォーマットの所望のノードまでドラッグする操作を行う。この操作を、ロボットRの教示を行うのに必要となるすべての対象物に対して順に行うことで、階層型リストを完成させることができる。階層型リストに表示される各ノードの名称は、元となる3次元モデルの名称がそのまま適用されてもよいが、後で名称を変更できるようにしてもよい。 Teaching software can work with CAD software to create a hierarchical list. A tree-structured data format is prepared by teaching software as a hierarchical list. With the CAD window and the teaching window displayed, the operator selects the robot R and the object in the CAD image with the pointing device and drags them to the desired node in the tree structure data format. . By sequentially performing this operation on all the objects required for teaching the robot R, the hierarchical list can be completed. For the name of each node displayed in the hierarchical list, the name of the original three-dimensional model may be applied as it is, or the name may be changed later.
以下の説明では、CAD画像内のロボットR、対象物を階層型リストのいずれかのノードに含めるようにすることを、ロボットR又は対象物を「階層型リストに登録する」という。図3では、ロボットが1体である場合のCAD画像を例示しているが、ロボットが2体以上存在する場合には、当該2体以上のロボットを階層型リストに登録することができる。 In the following description, including the robot R and the object in the CAD image in one of the nodes of the hierarchical list is referred to as "registering the robot R or the object in the hierarchical list". FIG. 3 illustrates a CAD image when there is one robot, but when there are two or more robots, the two or more robots can be registered in the hierarchical list.
図4に示す階層型リストにおいて、ロボットR(Robot_R)のノードの下層には、ハンドに関連する3個のノードが設けられている。ハンドに対して複数のノードを設けているのは、ハンドに想定される作業状態を考慮するためである。すなわち、ノード61~63は、以下の内容を意味する。
In the hierarchical list shown in FIG. 4, three nodes related to hands are provided below the node of robot R (Robot_R). The reason why a plurality of nodes are provided for the hand is to consider the work state assumed for the hand. That is,
・ノード61(Pen)…ペンを把持する作業に対応したハンド
・ノード62(Cap)…キャップを把持する作業に対応したハンド
・ノード63(Pen_with_Cap)…キャップが嵌められたペンを把持する作業に対応したハンドNode 61 (Pen): A hand for holding a pen Node 62 (Cap): A hand for holding a cap Node 63 (Pen_with_Cap): For holding a pen with a cap Corresponding hand
ノード61~63のいずれかを対象として右クリック操作を行い、「ハンドシーケンス操作」を選択すると、アクチュエーション方式(シングルソレノイド、又はダブルソレノイド等)、センサ種類などのハンドシーケンスに関連する設定を行うことができる。
ハンドシーケンスは、ロボットRのハンド52が把持する対象物に依存するため、ハンド52が把持する対象物ごとに設定される。ハンドシーケンスが設定されていない場合に後述するタスクを作成した場合には、タスクに基づくプログラムを実行できないため、表示装置24に警告表示を出力してもよい。Right-click on any of the
Since the hand sequence depends on the object grasped by the
対象物の構成要素には、治具(JIG)、ペントレイ(PenTray)、キャップトレイ(CapTray)、製品トレイ(ProductTray)、ペン(Pen1, Pen2,…,Pen12)、キャップ(Cap1, Cap2,…,Cap12)、および、製品(PenProduct1, PenProduct2,…,PenProduct12)が含まれる。
治具(JIG)のノードの下位には、治具を対象とした作業に対応して、例えば、以下のノードが設けられる。The components of the object include jigs (JIG), pen trays (PenTray), cap trays (CapTray), product trays (ProductTray), pens (Pen1, Pen2, ..., Pen12), caps (Cap1, Cap2, ..., Cap12), and products (PenProduct1, PenProduct2, ..., PenProduct12).
Below the node of the jig (JIG), for example, the following nodes are provided corresponding to the work for the jig.
・ノード64(PenProduct)…製品(PenProduct)を保持した状態の治具
・ノード65(PenJ)…ペン(Pen)を保持した状態の治具
・ノード66(CapJ)…キャップ(Cap)を保持した状態の治具・Node 64 (PenProduct): A jig that holds a product (PenProduct) ・Node 65 (PenJ): A jig that holds a pen ・Node 66 (CapJ): A jig that holds a cap condition jig
ペントレイ(PenTray)のノードの下位には、ペンPen1, Pen2,…,Pen12に対応する各ノードが設けられる。キャップトレイ(CapTray)のノードの下位には、キャップCap1, Cap2,…,Cap12に対応する各ノードが設けられる。製品トレイ(ProductTray)のノードの下位には、製品PenProduct1, PenProduct2,…,PenProduct12に対応する各ノードが設けられる。 Nodes corresponding to pens Pen1, Pen2, . Each node corresponding to caps Cap1, Cap2, . . . , Cap12 is provided under the node of the cap tray (CapTray). Each node corresponding to the products PenProduct1, PenProduct2, .
階層型リストの中のロボットR(図4のRobot_R)、および対象物(治具(JIG)、ペントレイ(PenTray)、キャップトレイ(CapTray)、製品トレイ(ProductTray)、ペンPen1, Pen2,…,Pen12、キャップCap1, Cap2,…,Cap12、および、製品PenProduct1, PenProduct2,…,PenProduct12)の各ノードは、各々に対応する3次元モデルのデータと関連付けられた状態となっている。そのため、階層型リストを作成後に階層型リスト内のロボットRおよび対象物の3次元モデルに変更があった場合であっても、階層型リストに再度登録する必要はない。 Robot R (Robot_R in FIG. 4) in the hierarchical list, and objects (jig (JIG), pen tray (PenTray), cap tray (CapTray), product tray (ProductTray), pen Pen1, Pen2, . . . , Pen12 , caps Cap1, Cap2, . . . , Cap12, and products PenProduct1, PenProduct2, . Therefore, even if the robot R and the three-dimensional model of the object in the hierarchical list are changed after the hierarchical list is created, there is no need to register them in the hierarchical list again.
(1-2-2)ジョブおよびタスクについて
次に、ジョブおよびタスクについて、図5および図6を参照して説明する。
図5は、ジョブを概念的に説明するための図である。図6は、タスクを概念的に説明するための図である。(1-2-2) Jobs and Tasks Next, jobs and tasks will be described with reference to FIGS. 5 and 6. FIG.
FIG. 5 is a diagram for conceptually explaining a job. FIG. 6 is a diagram for conceptually explaining tasks.
ジョブとは、ロボットRが行う一連の作業である。タスクとは、一連の作業の中でロボットRが行う最小単位の作業である作業要素に関する情報である。従って、図5に示すように、ジョブ(JOB)に相当する期間には、複数のタスクT1,T2,…,Tn-1,Tnに対応する複数の作業要素の期間と、ロボットRの作業要素間の移動(つまり、「タスク間移動」)とが含まれる。図5に示すように、本実施形態では、ロボットRが行うジョブに対して複数のタスクが定義される。A job is a series of operations that the robot R performs. A task is information about a work element that is the smallest unit of work performed by the robot R in a series of work. Therefore, as shown in FIG. 5, a period corresponding to a job (JOB) includes a period of a plurality of work elements corresponding to a plurality of tasks T 1 , T 2 , . movement between work elements of R (ie, "intertask movement"). As shown in FIG. 5, in this embodiment, a plurality of tasks are defined for jobs that the robot R performs.
各タスクには、複数のモーション(「ロボットRの動き」を意味する。)M1~Mnが含まれる。タスクには、モーションの他、ハンドシーケンス(HS)が含まれてもよい。ハンドシーケンスは、ロボットRのハンド52による対象物の把持についての一連の処理である。隣接するモーションの間には、後述するインターロック等による待機時間WTが設定される場合がある。Each task includes a plurality of motions (meaning “movements of robot R”) M 1 to M n . Tasks may include hand sequences (HS) as well as motions. A hand sequence is a series of processes for gripping an object by the
図6において、矢印付きの線は、ロボットRのハンド52の軌跡を概念的に示している。当該軌跡は、作業要素の目標点TPに到達する前の通過点であるアプローチ点AP1,AP2と、目標点TPと、目標点TPに到達した後の通過点であるデパーチャ点DP1,DP2とを含む。目標点TPは、作業要素の対象である対象物の位置を示している。
In FIG. 6, lines with arrows conceptually indicate the trajectory of the robot R's
図6に示す例では、アプローチ点AP1に到達する前のロボットRの動作が、作業要素間の移動(つまり、前の作業要素と図6に示す作業要素との間の移動)に相当する。デパーチャ点DP2から後のロボットRの動作が、作業要素間の移動(つまり、図6に示す作業要素と次の作業要素との間の移動)に相当する。アプローチ点AP1からデパーチャ点DP2までのロボットRの動作が1つの作業要素および1つのタスクに対応し、当該作業要素内において隣接する点間のロボットRの動きが1つのモーションに相当する。
すなわち、タスクは、作業要素に関する情報のほか、目標点TP、アプローチ点AP、およびデパーチャ点DPのうち少なくともいずれかの点に関する情報を含んでもよい。In the example shown in FIG. 6, the motion of the robot R before reaching the approach point AP1 corresponds to movement between work elements (that is, movement between the previous work element and the work element shown in FIG. 6). The movement of the robot R after the departure point DP2 corresponds to movement between work elements (that is, movement between the work element and the next work element shown in FIG. 6). The movement of the robot R from the approach point AP1 to the departure point DP2 corresponds to one work element and one task, and the movement of the robot R between adjacent points within the work element corresponds to one motion.
That is, the task may include information about the work element and at least one of the target point TP, the approach point AP, and the departure point DP.
図6では、アプローチ点AP1,AP2においてインターロックが設定されている場合が例示されている。インターロックは、他のロボット等との干渉を回避するために、所定の信号が入力されるまで、目標点TP、アプローチ点AP、およびデパーチャ点DPの少なくともいずれかの点においてロボットRの動作を待機させる処理である。
タスクには、インターロックを設定する点と、インターロックによる待機時間のタイムアウト値とを含むインターロック設定に関する情報を含んでもよい。FIG. 6 illustrates a case where interlocks are set at approach points AP1 and AP2. In order to avoid interference with other robots, etc., the interlock prevents the robot R from moving at least one of the target point TP, the approach point AP, and the departure point DP until a predetermined signal is input. This is the waiting process.
The task may include information about interlock settings, including points to set interlocks and timeout values for waiting time due to interlocks.
(1-2-3)タスクの作成
次に、階層型リストを用いたタスクの作成方法について、図4および図7を参照して説明する。図7は、本実施形態の一例に係る教示用ウィンドウの遷移を示す図である。
図4に示す階層型リストにおいてタスクを作成するには、先ず、ロボット領域RAに含まれるロボットR(Robot_R)のハンド(Hand)のノード61~63のうちいずれかのノードを、オペレータがポインティングデバイスで選択して右クリック操作を行い、「タスク作成」を選択する。すなわち、ノードの選択は、オペレータの操作入力に基づいて、タスクに対応する作業要素におけるロボットRのハンドの把持対象から選択される。(1-2-3) Creation of Task Next, a method of creating a task using a hierarchical list will be described with reference to FIGS. 4 and 7. FIG. FIG. 7 is a diagram showing transition of teaching windows according to an example of the present embodiment.
In order to create a task in the hierarchical list shown in FIG. , right-click, and select "Create Task". In other words, a node is selected from objects to be grasped by the hand of the robot R in the work element corresponding to the task, based on the operator's operation input.
「タスク作成」が選択されると、図7のタスク作成のための教示用ウィンドウW3が表示される。教示用ウィンドウW3はタスクの詳細設定を行うための画面であり、タスク名称(Name)と、作業要素の種別(Function)、作業要素の目標物(Target)の各項目が表示される。ここで、階層型リストの対象物領域PAの中からいずれかの対象物に対応するノードをポインティングデバイスで左クリックすることで、教示用ウィンドウW3の目標物(Target)の項目に、左クリックにより選択された対象物が入力される。作業要素の種別(Function)の欄には、予め設定された複数の種類の作業要素(例えば、取る(Pick up)、置く(Place)等)の候補からなるプルダウンメニューの中からいずれかの作業要素を選択できるように構成されている。 When "task creation" is selected, a teaching window W3 for task creation in FIG. 7 is displayed. The teaching window W3 is a screen for performing detailed settings of the task, and displays items such as the task name (Name), the work element type (Function), and the work element target (Target). Here, by left-clicking a node corresponding to one of the objects in the target object area PA of the hierarchical list with the pointing device, the item of the target object (Target) in the teaching window W3 is left-clicked. A selected object is entered. In the work element type (Function) column, select one of the work elements from a pull-down menu consisting of candidates for multiple types of preset work elements (for example, Pick up, Place, etc.). It is configured so that elements can be selected.
次いで、階層型リストの対象物領域PAの中から作業対象となる対象物をポインティングデバイスで選択して左クリック操作を行うことにより、教示用ウィンドウW3の目標物(Target)の項目に、選択された対象物が入力される。
作業要素の種別(Function)と目標物(Target)の各項目についてデータが入力されると、当該データに基づいて、タスクの名称(Name)が自動的に決定されて表示される。Next, by selecting an object to be worked on from the object area PA of the hierarchical list with the pointing device and performing a left-click operation, the selected object (Target) item of the teaching window W3 is displayed. object is input.
When data is input for each item of the work element type (Function) and the target (Target), the task name (Name) is automatically determined and displayed based on the data.
例えば、ロボットRのハンドが何も把持していない状態において、「ペントレイからペンPen1を取る」という作業要素に対応するタスクを作成するには、ロボット領域RA内のノード61を、オペレータはポインティングデバイスで右クリックしてから「タスク作成」を選択する。次いで、階層型リストの対象物領域PAの中からペントレイ(PenTray)に対応するノード67を対象としてポインティングデバイスで左クリック操作を行うことで教示用ウィンドウW3の目標物(Target)の項目に、ペントレイ(PenTray)が入力される。作業要素の種別(Function)の欄では、複数の種類の作業要素の候補の中から「取る(Pick up)」を選択する。そして、階層型リストの対象物領域PAの中から作業対象となるペンPen1に対応するノード68を対象としてポインティングデバイスで左クリック操作を行うことで、図7に示す教示用ウィンドウW3が表示される。
For example, in order to create a task corresponding to the work element "Take pen Pen1 from the pen tray" in a state where the hand of robot R is not holding anything, the operator selects
以上の操作の結果、「ペントレイからペンPen1を取る」という作業要素に関する情報として、“Pickup_Pen1_From_PenTray”という名称のタスクが作成される。
本実施形態では、作業要素の対象物(ここでは「ペンPen1」)と、作業要素の始点(例えば「ペントレイ」)若しくは終点とを階層型リスト上で指定することで、オペレータは直感的にタスクを作成することができる。また、タスクの名称は、作業要素の作業内容(例えば「Pickup」)と、作業対象(例えば「ペンPen1」)と、作業要素の始点となる対象物(例えば「ペントレイ」)、又は終点となる対象物とを含むように自動的に作成されるため、タスクの名称からタスクの内容が直ちに分かるようになっている。As a result of the above operation, a task named "Pickup_Pen1_From_PenTray" is created as information related to the work element "Pickup Pen1 from the pen tray".
In this embodiment, the operator can intuitively perform the task by specifying the target of the work element (here, "pen Pen1") and the start point (for example, "pen tray") or end point of the work element on the hierarchical list. can be created. Also, the name of the task is the work content of the work element (eg "Pickup"), the work target (eg "Pen Pen1"), the object that is the starting point of the work element (eg "pen tray"), or the end point. Since it is automatically created to include the object, the content of the task can be understood immediately from the name of the task.
タスクを作成した場合、タスクに含まれるアプローチ点AP、目標点TP、および、デパーチャ点DPについての情報が自動的に作成されてもよい。あるいは、オペレータが教示用ウィンドウW3のボタンb1(「詳細設定」)を操作し、1又は複数のアプローチ点及び/又はデパーチャ点を設定してもよい。自動的にアプローチ点AP、目標点TP、および、デパーチャ点DPを作成する場合、対象物の重心を目標点TPとして設定し、対象物の重心を基準とした対象物のローカル座標系において所定の軸上(例えばZ軸上)にアプローチ点APおよびデパーチャ点DPを設定してもよい。 When creating a task, information about the approach point AP, target point TP, and departure point DP included in the task may be created automatically. Alternatively, the operator may operate the button b1 ("detailed setting") of the teaching window W3 to set one or more approach points and/or departure points. When the approach point AP, the target point TP, and the departure point DP are automatically generated, the center of gravity of the object is set as the target point TP, and a predetermined An approach point AP and a departure point DP may be set on the axis (for example, on the Z axis).
図7を参照すると、教示用ウィンドウW3のボタンb1(「詳細設定」)を操作することで、オペレータは、「アプローチ点、デパーチャ点設定」のほか、「モーションパラメータ設定」および「インターロック設定」のいずれかを選択することができる。
モーションパラメータとは、タスクに含まれる隣接するアプローチ点AP間、アプローチ点APから目標点TPまでの間、および、目標点TPからデパーチャ点DPまでの間のロボットRのハンド52等の動きに関するパラメータである。例えば、かかるパラメータとして、移動速度、加速度、加速時間、減速時間、ロボットRの姿勢等が挙げられる。「モーションパラメータ設定」を選択することで、上記モーションパラメータをデフォルト値から変更することができる。
「インターロック設定」を選択することで、インターロックの待機時間のタイムアウト値と、待機時間がタイムアウト値を超えてエラーと判断したときの動作の設定とを、デフォルト値から変更することができる。Referring to FIG. 7, by operating the button b1 ("detailed setting") of the teaching window W3, the operator can set "approach point and departure point setting", as well as "motion parameter setting" and "interlock setting". You can choose either
A motion parameter is a parameter relating to the movement of the
By selecting "interlock setting", it is possible to change the timeout value of the interlock standby time and the setting of the operation when the standby time exceeds the timeout value and an error is determined from the default value.
図7の教示用ウィンドウW3には、ボタンb2(「作成」)が設けられている。ボタンb2(「作成」)が操作されることで、教示用ウィンドウW3によって設定されたタスクが後述するタスクリストに登録される。 A teaching window W3 in FIG. 7 is provided with a button b2 (“create”). By operating the button b2 (“Create”), the task set by the teaching window W3 is registered in the task list described later.
(1-2-4)タスクに基づくプログラムの作成
例えば、図6に示すタスクに対応する作業要素を実行するためのプログラムは、以下の複数の関数からなり、各関数は、ロボットRに対応するモーションを実行させるためのプログラムによって記述されている。
なお、以下のmove(AP1)は、作業要素間の移動として別に定義されてもよい。(1-2-4) Creation of Program Based on Task For example, a program for executing work elements corresponding to tasks shown in FIG. It is described by a program for executing motions.
Note that move (AP1) below may be defined separately as a move between work elements.
・move(AP1) …アプローチ点AP1までの移動
・interlock(IL1)…アプローチ点AP1でインターロック(IL1)による待機
・move(AP2)…アプローチ点AP2までの移動
・interlock(IL2)…アプローチ点AP2でインターロック(IL2)による待機
・move(TP)…目標点TPまでの移動
・handSequence()…ハンドシーケンス処理
・move(DP1)…デパーチャ点DP1までの移動
・move(DP2)…デパーチャ点DP2までの移動
なお、interlock(IL1)およびinterlock(IL2)の関数において、タスクごとの動作確認を行う場合、プログラムは作成されるが、インターロックによる待機時間のタイムアウト値が無効となっている。・move(AP1) … move to approach point AP1 ・interlock(IL1) …wait by interlock (IL1) at approach point AP1 ・move(AP2) … move to approach point AP2 ・interlock(IL2) … approach point AP2 Standby by interlock (IL2) at . ・move(TP)…Move to target point TP ・handSequence()…Hand sequence processing ・move(DP1)…Move to departure point DP1 ・move(DP2)…To departure point DP2 In the interlock(IL1) and interlock(IL2) functions, when checking the operation of each task, the program is created, but the timeout value for the waiting time due to interlock is invalid.
(1-2-5)タスクリスト
タスクリストとは、ロボットRが行うジョブに含まれる複数の作業要素の各々に対応する複数のタスクの一覧の情報である。特定のジョブを対象として教示用ウィンドウW3によって作成されたタスクは、順次、当該ジョブに対応するタスクリストに登録されていく。タスクリストに含まれる複数のタスクの順序は、当該複数のタスクにそれぞれ対応する複数の作業要素の実行順序を示していることが、ジョブを管理する上で好ましい。(1-2-5) Task List A task list is information of a list of multiple tasks corresponding to each of multiple work elements included in a job performed by the robot R. FIG. Tasks created by the teaching window W3 for a specific job are sequentially registered in the task list corresponding to the job. For job management, it is preferable that the order of the plurality of tasks included in the task list indicates the execution order of the plurality of work elements corresponding to the plurality of tasks.
図8の教示用ウィンドウW4は、「ペンにキャップを嵌めて製品を組み立てる」という一連の作業であるジョブ(「Pen Assembly」)に対応するタスクリストの一例を表示する。このタスクリストの一例は、以下の(i)~(vi)の6個の作業要素に対応するタスクを含む。この場合、タスク作成のための教示用ウィンドウW3によって、括弧内に表された名称のタスクが作成された場合を示している。
(i) ペントレイからペンを取る (Pickup_Pen1_From_PenTray)
(ii) 取ったペンを治具にセットする (Place_to_PenJ_in_PenProduct)
(iii) キャップトレイからキャップを取る (Pickup_Cap1_From_CapTray)
(iv) 治具上のペンにキャップを嵌める (Place_to_CapJ_in_PenJ)
(v) キャップが嵌められたペンを取る (Pickup_PenProduct_From_JIG)
(vi) キャップが嵌められたペンを製品トレイに置く (Place_to_PenProduct1_in_ProductTray)The teaching window W4 in FIG. 8 displays an example of a task list corresponding to a job (“Pen Assembly”), which is a series of tasks “putting the cap on the pen and assembling the product”. An example of this task list includes tasks corresponding to the following six work elements (i) to (vi). In this case, a task with a name shown in parentheses is created by the teaching window W3 for task creation.
(i) Pickup Pen from Pen Tray (Pickup_Pen1_From_PenTray)
(ii) Place the picked pen in the jig (Place_to_PenJ_in_PenProduct)
(iii) Pick up cap from cap tray (Pickup_Cap1_From_CapTray)
(iv) Place Cap on Pen on Jig (Place_to_CapJ_in_PenJ)
(v) Pick up capped pen (Pickup_PenProduct_From_JIG)
(vi) Place capped pen in product tray (Place_to_PenProduct1_in_ProductTray)
オペレータは、タスクリストにおいて、いずれかのタスクをポインティングデバイスで選択した状態でドラッグ操作を行うことで、選択されたタスクをタスクリスト中の任意の順序に設定することができる。 The operator can set the selected tasks in any order in the task list by performing a drag operation while selecting one of the tasks in the task list with the pointing device.
図8に示すように、タスクリストのいずれかのタスクをポインティングデバイスで選択した状態で右クリックを行うと、「タスク編集」、「タスク追加」、「タスク削除」のいずれかの処理を選択できる。ここで、「タスク編集」が選択された場合には、選択されているタスクの教示用ウィンドウW3に戻って、当該タスクについての情報を変更することができる。「タスク追加」が選択された場合には、選択されているタスクのすぐ後の順序に、作成済みのタスクを読み込んで挿入するか、あるいは、教示用ウィンドウW3に戻ってタスクを作成して挿入することができる。「タスク削除」が選択された場合には、選択されているタスクをタスクリストから削除することができる。 As shown in Fig. 8, if any task in the task list is selected with a pointing device and right-clicked, one of "task edit", "task addition", and "task deletion" can be selected. . Here, when "task edit" is selected, it is possible to return to the teaching window W3 of the selected task and change the information about the task. If "Add task" is selected, read and insert the created task immediately after the selected task, or return to the teaching window W3 to create and insert the task. can do. When "delete task" is selected, the selected task can be deleted from the task list.
図8において、教示用ウィンドウW4内の任意の位置を対象として右クリック操作を行い、「プログラム出力」が選択された場合、ジョブに対応して、シミュレーション用プログラムと実機用プログラムの2種類のロボットプログラムを出力する。実機用プログラムはインターロックによる待機時間のタイムアウト値が有効となっているが、シミュレーション用プログラムはインターロックによる待機時間が無効化されている点で、両者は異なる。 In FIG. 8, when an arbitrary position within the teaching window W4 is right-clicked and "program output" is selected, two types of robot programs, a simulation program and an actual machine program, are generated corresponding to the job. Output the program. The two are different in that the timeout value of the waiting time due to the interlock is valid in the program for the actual machine, but the waiting time due to the interlock is invalidated in the program for the simulation.
(1-2-6)ジョブのシミュレーション
図8の教示用ウィンドウW4においてボタンb3が操作された場合、タスクリストに対応するロボットRのジョブのシミュレーションが実行される。
ジョブのシミュレーションを実行するに当たっては、先ず、当該ジョブに対応するロボットプログラムが作成される。すなわち、タスクリストに含まれる各タスクに基づくプログラムは、前述したように、ロボットRに対応する複数のモーションを実行させるためのプログラムが記述された関数の集合体として表される。なお、連続するタスクに対応する作業要素の間のロボットRの移動についてのモーションパラメータ(移動速度、加速度、加速時間、減速時間等)は、デフォルト値として予め定められていてもよいし、オペレータが設定できるようにしてもよい。
各タスクに基づくプログラムを組み合わせるに当たっては、入力信号あるいは条件によって実行するプログラムを切り替えるような分岐処理や、特定のプログラムを繰り返す処理等が組み込まれてもよい。(1-2-6) Job Simulation When the button b3 is operated in the teaching window W4 of FIG. 8, the job of the robot R corresponding to the task list is simulated.
In executing a job simulation, first, a robot program corresponding to the job is created. That is, the program based on each task included in the task list is expressed as a collection of functions in which programs for executing a plurality of motions corresponding to the robot R are described, as described above. Note that the motion parameters (movement speed, acceleration, acceleration time, deceleration time, etc.) for the movement of the robot R between work elements corresponding to successive tasks may be predetermined as default values, or may be determined by the operator. You may enable it to set.
When combining programs based on each task, a branching process such as switching the program to be executed according to an input signal or condition, a process of repeating a specific program, or the like may be incorporated.
本実施形態では、情報処理装置2においてロボットプログラムが作成され、ロボット制御装置3において当該ロボットプログラムが実行される。本実施形態では、上記シミュレーション用プログラムが実行される。
本実施形態では、ロボット制御装置3にロボットの実機が接続されていないため、ロボット制御装置3の制御部31は、ストレージ32に記録されているロボットRのマニピュレータのモデルのデータに基づいて、マニピュレータを構成する各部の時間の経過に応じた物理量(例えば、アーム51の関節角の角度変位、角速度等)を、ロボット状態データとして演算する。In this embodiment, the
In this embodiment, since the actual robot is not connected to the robot control device 3 , the control unit 31 of the robot control device 3 controls the manipulator model of the robot R based on the data of the manipulator model of the robot R recorded in the
ジョブの実行結果とロボット状態データを含む実行ログデータは、ロボット制御装置3から情報処理装置2へ送信される。情報処理装置2は、ロボット状態データに基づいて、タイミングチャートを作成して表示する。本実施形態では、実機のロボットRがロボット制御装置3に接続されていない状態でジョブのシミュレーションが行われるため、情報処理装置2によって作成されるタイミングチャートを適宜、「オフラインタイミングチャート」ともいう。オフラインタイミングチャートは、第2タイミングチャートの一例である。
Execution log data including job execution results and robot state data is transmitted from the robot control device 3 to the
図9に、情報処理装置2の表示装置24において表示されるタイミングチャートの一例を示す。
図9に例示するタイミングチャートは、図8の教示用ウィンドウW4において例示したジョブ(「Pen Assembly」)の中の「ペントレイからペンを取る (Pickup_Pen1_From_PenTray)」という名称のタスクに対応するタイミングチャートを示している。
図9のタイミングチャートは、グラフを表示する部分であるA部と、タスクの実行状況について表示する部分であるB部と、を含み、最上部には、ジョブの開始時刻からの時間が表示されている。図9に示す例では、カーソルCU1~CU3が設けられている。ポインティングデバイスによって各カーソルを左右に移動させることができる。カーソルCU1は、ジョブの開始時刻からの時間を示しており、カーソルCU2,CU3はそれぞれ、カーソルCU1が示す時刻を0としたときの時間を示している。FIG. 9 shows an example of a timing chart displayed on the
The timing chart illustrated in FIG. 9 shows a timing chart corresponding to the task named "Pickup_Pen1_From_PenTray" in the job ("Pen Assembly") illustrated in the teaching window W4 of FIG. ing.
The timing chart of FIG. 9 includes a portion A that displays a graph and a portion B that displays the status of task execution. At the top, the time from the job start time is displayed. ing. In the example shown in FIG. 9, cursors CU1 to CU3 are provided. Each cursor can be moved left and right by the pointing device. The cursor CU1 indicates the time from the start time of the job, and the cursors CU2 and CU3 indicate the time when the time indicated by the cursor CU1 is set to 0.
図9のA部には、ロボットRの以下のロボット状態データの参照時間(例えば1ms)ごとの変化をプロットした波形(グラフ)が表示される。なお、ロボットRの位置とは、例えば、マニピュレータの先端フランジの位置である。
・ロボットRのX座標(ワールド座標系)の位置の指令値(“posX”)
・ロボットRのY座標(ワールド座標系)の位置の指令値(“posY”)
・ロボットRのZ座標(ワールド座標系)の位置の指令値(“posZ”)
・アーム51の関節角の角速度の指令値(“Angular Velocity”)Part A in FIG. 9 displays a waveform (graph) plotting changes in the following robot state data of the robot R for each reference time (for example, 1 ms). The position of the robot R is, for example, the position of the tip flange of the manipulator.
・Command value (“posX”) for the X coordinate (world coordinate system) position of robot R
・Command value (“posY”) for the Y coordinate (world coordinate system) position of robot R
・Command value (“posZ”) for the Z coordinate (world coordinate system) position of robot R
・Command value of angular velocity of joint angle of arm 51 (“Angular Velocity”)
なお、図9のA部に表示されているグラフは、複数の種別のロボット状態データの一部の種別のデータに過ぎない。オペレータは、複数の種別のロボット状態データの中から、表示させるロボット状態データの種別を選択できる。 It should be noted that the graph displayed in part A of FIG. 9 is only data of a part of the plurality of types of robot state data. The operator can select the type of robot state data to be displayed from among a plurality of types of robot state data.
図9のB部では、タスク名称(“Task Function”)とモーション状態(“Motion status”)が表示される。タスク名称(“Task Function”)は、上述したように“Pickup_Pen1_From_PenTray”であり、図9からジョブに含まれる当該タスクの期間(開始時刻および終了時刻)がわかる。
モーション状態(“Motion status”)はタスクに含まれるモーションに対応している。すなわち、モーション状態(“Motion status”)では、以下の3種類のモーション(ここでは、ハンドシーケンスも含む。)の期間(開始時刻および終了時刻)がわかる。各モーションの開始時刻および終了時刻は、各モーションに対応する関数の実行開始時刻および実行終了時刻と一致する。各タスクの開始時刻は、各タスクに含まれる複数のモーションのうち最初のモーションの開始時刻と一致し、各タスクの終了時刻は、各タスクに含まれる複数のモーションのうち最後のモーションの終了時刻と一致する。In part B of FIG. 9, the task name (“Task Function”) and motion status (“Motion status”) are displayed. The task name (“Task Function”) is “Pickup_Pen1_From_PenTray” as described above, and the period (start time and end time) of the task included in the job can be seen from FIG.
The motion status ("Motion status") corresponds to the motions involved in the task. That is, in the motion status ("Motion status"), the periods (start time and end time) of the following three types of motion (including hand sequences here) can be known. The start time and end time of each motion match the execution start time and end time of the function corresponding to each motion. The start time of each task matches the start time of the first motion among multiple motions included in each task, and the end time of each task matches the end time of the last motion among multiple motions included in each task. matches.
・Move(PTP)…円弧移動。主に、アプローチ点AP間の移動、および、デパーチャ点DP間の移動のうちのいずれかの移動に用いられる。
・Move(Line)…直線移動。主に、アプローチ点APから目標点TPまでの移動、および、目標点TPからデパーチャ点DPまでの移動のうちのいずれかの移動に用いられる。
・HandSequence()…ハンドシーケンス処理・Move (PTP): Arc movement. It is mainly used for movement between approach points AP and movement between departure points DP.
・Move (Line) … Straight line movement. It is mainly used for either movement from the approach point AP to the target point TP or movement from the target point TP to the departure point DP.
・HandSequence(): hand sequence processing
ロボットRのロボット状態データを算出するときにエラーが発生した場合には、図8の教示用ウィンドウW4のステータス(Status)の欄に、エラー原因を表示してもよい。エラー原因としては、例えば、速度超過、目標点不到達、特異点到達等が挙げられる。 If an error occurs when calculating the robot state data of the robot R, the cause of the error may be displayed in the Status column of the teaching window W4 in FIG. Error causes include, for example, excessive speed, failure to reach a target point, and arrival at a singular point.
好ましくは、本実施形態では、情報処理装置2は、ロボット状態データに基づいて、ロボットRおよび対象物の3次元モデルを仮想空間内で動作させ、シミュレーション出力として、タスクに対応するロボットRの動きの動画(アニメーション)の表示を行う。それによって、オペレータは、ジョブのシミュレーションの結果をCAD用ウィンドウで確認することができる。
Preferably, in the present embodiment, the
図10は、ジョブのシミュレーションの結果を動画再生するためのCAD用ウィンドウW5の一例を示している。CAD用ウィンドウW5に示す例では、オペレータによる操作対象として、ボタンb4~b8が提供される。
ボタンb4は、図9に示すタイミングチャートと同じロボット状態データの変化となるように(つまり、通常速度により)、仮想空間においてロボットRおよび対象物の動作させるための操作ボタンである。ボタンb5は、通常速度の倍の速度でロボット状態データが変化するように、仮想空間においてロボットRおよび対象物の動作させるための操作ボタンである。ボタンb6は、通常速度より低速でロボット状態データが変化するように、仮想空間においてロボットRおよび対象物の動作させるための操作ボタンである。ボタンb7は、仮想空間において動作中のロボットRおよび対象物を一時的に停止させるための操作ボタンである。ボタンb8は、時間の進行が逆方向となるようにしてロボット状態データを変化させて(つまり、逆再生して)、仮想空間においてロボットRおよび対象物の動作させるための操作ボタンである。FIG. 10 shows an example of the CAD window W5 for reproducing the result of job simulation as a moving image. In the example shown in the CAD window W5, buttons b4 to b8 are provided as objects to be operated by the operator.
The button b4 is an operation button for operating the robot R and the object in the virtual space so that the robot state data changes in the same manner as in the timing chart shown in FIG. 9 (that is, at normal speed). The button b5 is an operation button for moving the robot R and the object in the virtual space so that the robot state data changes at twice the normal speed. The button b6 is an operation button for moving the robot R and the object in the virtual space so that the robot state data changes at a speed lower than the normal speed. The button b7 is an operation button for temporarily stopping the robot R and the object that are operating in the virtual space. The button b8 is an operation button for causing the robot R and the object to move in the virtual space by changing the robot state data so that the progress of time is reversed (that is, reverse playback).
(1-3)ロボットシミュレータ1の機能
次に、本実施形態のロボットシミュレータ1の機能について、図11を参照して説明する。図11は、実施形態に係るロボットシミュレータ1の機能ブロック図である。
図11に示すように、ロボットシミュレータ1は、表示制御部101、タスク作成部102、プログラム作成部103、プログラム実行部104、状態情報算出部105、シミュレーション部107、および、インターロック設定部108を備える。
ロボットシミュレータ1はさらに、タスクデータベース221、階層型リストデータベース222、3次元モデルデータベース223、および、実行ログデータベース224を備える。(1-3) Functions of
As shown in FIG. 11, the
The
以下の説明において、情報処理装置2の制御部21の処理について言及するときには、制御部21に含まれるCPUが教示ソフトウェア及び/又はCADソフトウェアを実行することにより処理が行われる。
In the following description, when referring to the processing of the
表示制御部101は、教示ソフトウェアおよびCADソフトウェアの実行結果を表示装置24に表示させる制御を行う。表示制御部101の機能を実現するために、情報処理装置2の制御部21は、教示ソフトウェアおよびCADソフトウェアの出力を含む画像データを生成し、バッファリングし、表示装置24へ送信する。表示装置24は、表示駆動回路を駆動して画像を表示パネルに表示する。
The
タスク作成部102は、オペレータの操作入力に基づいて、対象物に対するロボットの作業要素に関する情報であるタスクを作成する機能を備える。
タスク作成部102の機能を実現するために、情報処理装置2の制御部21は、入力装置23からオペレータの操作入力を受け付けると、当該操作入力に基づき、図7の作業要素の種別(Function)および作業要素の目標物(Target)の情報を含むファイルとしてタスクを作成し、ストレージ22に記録する。制御部21は、作業要素の種別(Function)および作業要素の目標物(Target)に基づいて、所定の規則に従ってタスク名称を決定する。ストレージ22は、タスク作成部102によって作成されたタスクを含むタスクデータベース221を記憶する。
情報処理装置2の制御部21は、ロボットが行うジョブに含まれる複数の作業要素に対応するタスクを順に作成し、それによって、当該ジョブに関連付けられた複数のタスクがタスクリストとして作成される。タスクデータベース221では、各タスクが特定のジョブに関連付けられた状態で記録されている。
表示制御部101は、ストレージ22のタスクデータベース221を参照して、複数のタスクの一覧であるタスクリストを表示装置24に表示する。タスクリストが表示されることで、ロボットのティーチングを行うときに、ロボットが行うジョブを分かり易く管理することができる。本実施形態では、表示されるタスクリストの各タスクの名称が、ロボットの作業要素の作業内容が認識できるように構成されているため、一連の作業内容がオペレータに直感的に理解しやすいものとなっている。The
In order to realize the function of the
The
The
表示制御部101は、ロボットの構成要素と、対象物の構成要素とが階層的に記述された階層型データを表示装置24に表示する。
情報処理装置2の制御部21は、教示ソフトウェアとCADソフトウェアの連携により階層型リストを作成する。すなわち、制御部21は、CAD画像内のロボットおよび対象物を入力装置23のポインティングデバイスで選択した状態で木構造のデータフォーマットの所望のノードまでドラッグする操作入力を受け付けて、木構造の階層型リストを作成する。制御部21は、作成した階層型リストをストレージ22の階層型リストデータベース222に記録する。階層型リストでは、木構造のデータにおけるロボットの構成要素および対象物の構成要素に対応する各ノードと、3次元モデルデータベース223に記録される3次元モデルの対応するデータと、が関連付けられた状態となっている。The
The
好ましくは、タスク作成部102は、階層型データのロボットの構成要素および対象物の構成要素を指定するオペレータの操作入力に基づいて、タスクを作成する機能を備える。当該機能を実現するために、情報処理装置2の制御部21は、特定の対象物を把持する作業に対応したロボットのハンドを示すノードと、当該対象物に対応するノードとを階層型リストから選択するオペレータの操作入力に基づいて、タスクを作成する。階層型リストを使用することで、オペレータが作業要素の内容に応じて直感的にタスクを作成することができる。
Preferably, the
プログラム作成部103は、タスク作成部102によって作成されたタスクに基づいて、当該タスクに対応する作業要素をロボット5に実行させるためのプログラムを作成する機能を備える。
プログラム作成部103の機能を実現するために、情報処理装置2の制御部21は、タスクに含まれる作業要素の種別、作業要素の目標物、アプローチ点、デパーチャ点、モーションパラメータ、およびインターロックの設定を基に、タスクに対応する作業要素をロボットに実行させるためのプログラムが記述された関数を作成する。例えば、プログラム作成部103は、タスクに含まれる情報を参照し、ストレージ22に保存された作業要素の種別に応じた所定のプログラムのフォーマットにおける座標位置等を書き換えることで、自動的にプログラムを作成する。The
In order to realize the function of the
プログラム実行部104は、ロボットの作業要素に関する情報であるタスクを含むロボットプログラムを実行する機能を備える。
プログラム実行部104の機能を実現するために、情報処理装置2の制御部21は、通信インタフェース部25を介して少なくとも1つのタスクに基づいて作成したロボットプログラム(シミュレーション用プログラム)を、ロボット制御装置3へ送信する。
前述したように、1つのジョブには、タスクによって記述される複数の作業要素と作業要素間の移動とが含まれる。1つのタスクには、複数のモーションと必要に応じてハンドシーケンスとが含まれ、タスクに対応する作業要素を実行するためのプログラムは、複数の関数によって定義される。ロボットの作業要素間の移動は、予め決められたデフォルトのモーションパラメータを含むプログラムによって記述された関数で定義される。
ロボット制御装置3の制御部31は、ロボットプログラムを受信すると、各モーションおよびハンドシーケンスに対応する複数の関数を順に実行することで、1つのジョブに対するロボットプログラムを実行する。The
In order to realize the function of the
As described above, one job includes multiple work elements described by tasks and movements between the work elements. A task includes multiple motions and optionally hand sequences, and a program for executing work elements corresponding to the task is defined by multiple functions. Movements between robot work elements are defined by programmatically written functions that include predetermined default motion parameters.
Upon receiving the robot program, the control unit 31 of the robot control device 3 executes the robot program for one job by sequentially executing a plurality of functions corresponding to each motion and hand sequence.
状態情報算出部105は、プログラム実行部104による実行結果に基づいて、時間の経過に応じたロボットの状態を示す情報であるロボット状態データ(状態情報の例)を演算する機能を備える。そして、表示制御部101は、状態情報算出部105により得られたロボット状態データに基づいて、時間軸においてタスクの作業要素に相当する期間が識別可能となるように、ロボットの状態を示すタイミングチャート(すなわち、オフラインタイミングチャート)を表示装置24に表示する。
The state
状態情報算出部105の機能を実現するために、ロボット制御装置3の制御部31は、上述したように、各タスクに基づいて作成されたプログラムを順に実行するようにして、情報処理装置2から受信したロボットプログラムを実行する。そして、制御部31は、ロボットプログラムの実行結果として、ジョブ全体におけるロボット状態データを演算して順次、ストレージ32に記録する。
ロボット状態データは、マニピュレータ50のモデルを基に演算された時間の経過に応じたロボットの状態を示す物理量(例えば、アームの関節角、アームの速度や加速度、ハンドの位置等)のデータである。
ジョブ全体のロボットプログラムの実行が終了すると、制御部31は、ストレージ32から、ジョブの進行の時間軸に沿った所定の参照時間(例えば1ms)ごとのロボット状態データを読み出す。制御部31は、読み出したロボット状態データと、ロボットプログラムの実行結果とを含む実行ログデータを、通信インタフェース部33を介して情報処理装置2へ送信する。In order to realize the function of the state
The robot state data is data of physical quantities (for example, arm joint angles, arm speeds and accelerations, hand positions, etc.) indicating the state of the robot over time calculated based on the model of the
When the execution of the robot program for the entire job is completed, the control unit 31 reads robot state data for each predetermined reference time (for example, 1 ms) along the time axis of the progress of the job from the
情報処理装置2の制御部21は、ロボット制御装置3からロボット状態データを含む実行ログデータを取得すると、実行ログデータを実行ログデータベース224に記録する。
制御部21は、取得した参照時間ごとのロボット状態データに基づいて、所定の形式のオフラインタイミングチャートを含む画像を生成して表示装置24に表示する。当該タイミングチャートは、ロボットの一連の作業について特定の作業要素に相当する期間を識別可能となるように構成される。When the
Based on the acquired robot state data for each reference time, the
ロボット状態データは、ロボットは複数の種別の情報を含んでもよい。その場合、表示制御部101は、ロボット状態データのうち、オペレータの操作入力によって複数の種別の中から選択された一部の種別の情報に基づいて、オフラインタイミングチャートを表示装置24に表示してもよい。それによって、オペレータは、自身が確認したい種別のロボット状態データをオフラインタイミングチャートに表示させることができる。ロボット状態データの種別の選択方法は問わないが、例えば、オペレータによる操作によってロボット状態データの種別を選択可能とするメニューを含めるようにしてタイミングチャートの表示画面が構成されていることが好ましい。
The robot state data may include multiple types of information for the robot. In this case, the
ストレージ22(記憶部の例)は、仮想空間におけるロボットの3次元モデルと、対象物の3次元モデルの情報と、を含む3次元モデルデータベース223を記憶する。
シミュレーション部107は、状態情報算出部105によって得られたロボット状態データに基づいて、3次元モデルを仮想空間内で動作させて表示装置24に表示する機能を備える。
シミュレーション部107の機能を実現するため、情報処理装置2の制御部21は、実行ログデータベース224に記録した実行ログデータを読み出し、当該実行ログデータに含まれるロボット状態データを基に仮想空間上でロボットおよび対象物の3次元モデルを動作させて表示装置24に表示する。これによって、オペレータは、各タスクのロボットの動作を視覚的に確認することができるため、各タスクの設定値(例えば、アプローチ点、デパーチャ点、モーションパラメータ等)や対象物の配置(例えば、図3のキャップトレイ12の配置等)を再検討することが容易となる。The storage 22 (an example of a storage unit) stores a
The
In order to realize the function of the
シミュレーション部107は、3次元モデルの動作を、ロボット状態データに基づく速度よりも高速となるように、若しくは低速となるように、又は、時間の進行が逆方向となるようにして、表示装置24に表示してもよい。それによって、オペレータは、シミュレーションの結果を、オペレータの所望の速度で、あるいは逆再生により再現することができる。
この場合、情報処理装置2の制御部21は、図10に例示したように、CAD用ウィンドウのボタンに対するオペレータによる操作に応じて、通常速度よりも高速あるいは低速にしてロボットおよび対象物の3次元モデルを動画再生し、又は、当該3次元モデルを逆再生して表示装置24に表示する。実行ログデータベース224には、例えば1msの参照時間ごとのロボット状態データが記録されているため、制御部21は、オペレータの操作に応じた再生用のフレームを作成する。The
In this case, as illustrated in FIG. 10, the
インターロック設定部108は、オペレータの操作入力に基づき、タスクに設定された目標点、アプローチ点およびデパーチャ点の少なくともいずれかの点においてロボットの動作を待機させる待機時間のタイムアウト値を設定する機能を備える。
インターロック設定部108の機能を実現するために、情報処理装置2の制御部21は、入力装置23が受け付けたオペレータの操作入力(例えば、図7の教示用ウィンドウW3における操作入力)に基づいてストレージ22にアクセスし、タスクデータベース221に含まれるタスクに含まれる特定のアプローチ点又はデパーチャ点に設定されたインターロックの待機時間のタイムアウト値を書き換える。
インターロック設定部108により、ロボットのオフラインティーチングを行うときに、インターロックによる待機時間のタイムアウト値を作業要素ごとにオペレータが容易に設定することができる。The
In order to implement the function of the
The
なお、シミュレーション部107は、インターロックによる待機時間を無効化して、3次元モデルを仮想空間内で動作させてもよい。つまり、シミュレーション用プログラムを実行するときには、インターロックによる待機を行わずに3次元モデルを動作させる。それによって、オペレータは、仮想空間上でロボットを停止させずに、ロボットの動きに着目してプログラムの実行結果を確認することができる。
Note that the
(1-4)ジョブのシミュレーションの実行処理
次に、図12を参照して、ロボットシミュレータ1によるジョブのシミュレーションの実行処理についてシーケンスチャートを参照して説明する。図12は、本実施形態に係るロボットシミュレータのジョブの実行処理を示すシーケンスチャートの例である。(1-4) Job Simulation Execution Processing Next, job simulation execution processing by the
図8の教示用ウィンドウW4においてオペレータによるボタンb3に対する操作入力(シミュレーションの実行指示)を受け付けると(ステップS10:YES)、プログラム作成部103は、ジョブをロボットRに実行するためのロボットプログラムを作成する(ステップS12)。このロボットプログラムには、ジョブに対応するタスクリストの各タスクに対応する作業要素をロボットRに実行させるためのプログラムが記述された複数の関数が含まれる。
When the operation input (simulation execution instruction) by the operator with respect to the button b3 in the teaching window W4 of FIG. 8 is received (step S10: YES), the
作成されたロボットプログラムは、情報処理装置2からロボット制御装置3へ送信されて(ステップS14)、ロボット制御装置3において実行される。すなわち、プログラム実行部104は、タスク単位でロボットプログラムを実行する(ステップS16)。状態情報算出部105は、プログラム実行部104による実行結果に基づいて、時間の経過に応じたロボットRの状態を示す情報であるロボット状態データを演算し、ロボット状態データを含む実行ログデータをストレージ32に記録する(ステップS18)。ステップS16,S18の処理は、タスクリストに含まれるすべてのタスクが終了するまで行われる。
すべてのタスクについての処理が終了すると(ステップS20:YES)、ロボット制御装置3は、実行ログデータを情報処理装置2に送信する(ステップS22)。実行ログデータには、ジョブの進行の時間軸に沿った所定の参照時間(例えば1ms)ごとのロボット状態データと、ロボットプログラムの実行結果とが含まれる。情報処理装置2は、受信した実行ログデータを実行ログデータベース224に記録する。
次いで、表示制御部101は、ステップS22で受信した実行ログデータに含まれるロボット状態データ(つまり、状態情報算出部105によって得られたロボット状態データ)に基づいて所定のフォーマットとしたタイミングチャート(オフラインタイミングチャート)を表示装置24に表示する(ステップS24)。シミュレーション部107は、ロボット状態データに基づいて3次元モデルを仮想空間内で動作させて表示装置24に表示する(ステップS26)。The created robot program is transmitted from the
When processing for all tasks is completed (step S20: YES), the robot control device 3 transmits execution log data to the information processing device 2 (step S22). The execution log data includes robot status data for each predetermined reference time (for example, 1 ms) along the time axis of the progress of the job, and execution results of the robot program. The
Next, the
以上説明したように、本実施形態のロボットシミュレータ1は、ジョブに対応するロボットプログラムの実行結果に基づいてロボット状態データを演算し、当該ロボット状態データに基づいて、時間軸においてタスクの作業要素に相当する期間が識別可能となるようにオフラインタイミングチャートを表示する。そのため、ロボットの一連の作業についてのシミュレーションの結果を表示するときに、特定の作業要素に相当する期間を識別可能とすることができ、作業要素ごとの検討を支援することができる。
As described above, the
(2)第2の実施形態
次に、本発明の第2の実施形態について説明する。(2) Second Embodiment Next, a second embodiment of the present invention will be described.
(2-1)本実施形態に係るロボットシミュレータの構成
以下、本実施形態のロボットシミュレータ1Aの構成について、図13および図14を参照して説明する。図13は、本実施形態のロボットシミュレータ1Aの全体構成について示す図である。図14は、本実施形態のロボットシミュレータ1Aに含まれる各装置のハードウェア構成を示す図である。
なお、第1の実施形態のロボットシミュレータ1と同様の構成要素については、同一の符号を付して重複説明を省略する。(2-1) Configuration of Robot Simulator According to Present Embodiment Hereinafter, the configuration of the
Components similar to those of the
図13に示すように、ロボットシミュレータ1Aは、情報処理装置2およびロボット制御装置3Aを備える。情報処理装置2とロボット制御装置3Aとは、例えば通信ネットワークケーブルECにより通信可能に接続される。
ロボット制御装置3Aは、情報処理装置2から送信されるロボットプログラムを実行する点では第1の実施形態のロボット制御装置3と共通するが、ロボットRとケーブルWCにより接続されている点でロボット制御装置3と異なる。好ましくは、ロボット制御装置3Aは、ロボットの実機の近傍に配置される。As shown in FIG. 13, the
The robot control device 3A is similar to the robot control device 3 of the first embodiment in that it executes a robot program transmitted from the
図14に示すように、ロボット制御装置3Aは、制御部31Aと、ストレージ32と、通信インタフェース部33とを含む。
ロボット制御装置3Aの制御部31Aは、ロボットプログラムを実行してロボットRに対する制御信号を生成する。ロボットRに対する制御信号は、ロボットRに対する指令値を示す信号(例えば、パルス信号)である。ロボットRに対する指令値は、例えばロボットRの位置、速度、加速度等の目標値である。
制御部31Aは、ロボットRから、ロボットRの状態を示すデータであるロボット状態データを取得する。本実施形態において、制御部31Aが取得するロボット状態データは、演算値ではなくロボットRから取得する点で、第1の実施形態とは異なる。また、本実施形態のロボット状態データには、ロボットRに対する入出力信号が含まれる。制御部31Aは、ロボットRから取得したロボット状態データを逐次、ストレージ32に記録する。
制御部31Aは、ストレージ32から、ジョブの進行の時間軸に沿った所定の参照時間(例えば1ms)ごとのロボット状態データを読み出し、読み出したロボット状態データと、ロボットプログラムの実行結果とを含む実行ログデータを情報処理装置2へ送信する。As shown in FIG. 14, the robot control device 3A includes a control section 31A, a
The controller 31A of the robot controller 3A generates control signals for the robot R by executing the robot program. A control signal for the robot R is a signal (for example, a pulse signal) indicating a command value for the robot R. FIG. Command values for the robot R are, for example, target values of the robot R's position, speed, acceleration, and the like.
The controller 31A acquires robot state data, which is data indicating the state of the robot R, from the robot R. As shown in FIG. This embodiment differs from the first embodiment in that the robot state data acquired by the controller 31A is acquired from the robot R instead of the calculated value. Further, the robot state data of this embodiment includes input/output signals for the robot R. FIG. The controller 31A sequentially records the robot state data acquired from the robot R in the
The control unit 31A reads the robot state data for each predetermined reference time (for example, 1 ms) along the time axis of the progress of the job from the
図14に示すように、ロボットRは、ロボット本体となるマニピュレータ50と、制御装置55と、センサ群56と、入出力部57とを備える。
マニピュレータ50は、ロボットRの本体部であり、アーム51およびハンド52と、アーム51およびハンド52の位置、角度を制御する複数のモータと、を含む。
制御装置55は、ロボット制御装置3Aから受信する指令値に追従するように、マニピュレータ50に設けられたモータを制御するサーボ機構を備える。
センサ群56は、マニピュレータ50の位置、速度、加速度、および、各関節の角度,角速度等を検出する複数のセンサを含んでもよい。As shown in FIG. 14 , the robot R includes a
The
The control device 55 has a servo mechanism that controls the motor provided in the
The
制御装置55がロボット制御装置3Aへ送信するロボット状態データは、センサ群56のいずれかのセンサによって検出されたマニピュレータ50の物理量であってもよいし、モータに対する制御電流値等から推定可能な物理量であってもよい。例えば、アーム51の関節角の角速度のデータは、アーム51の関節角の角速度センサが設けられている場合には当該角速度センサの検出値であってもよいし、マニピュレータ50のモータを制御するサーボ機構における制御電流値であってもよい。
The robot state data that the control device 55 transmits to the robot control device 3A may be the physical quantity of the
入出力部57は、ロボットRの外部のシステムとの入出力インタフェースである。例えば、入力信号の例としては、外部のシステムからのインターロック信号や、後述するようにロボットRがラインに配置されている場合には、対象物の位置についての補正のための信号が挙げられる。
The input/
(2-2)本実施形態のタイミングチャート
本実施形態では、実機のロボットRがロボット制御装置3Aに接続され、ロボットRから取得したロボット状態データに基づいて、情報処理装置2においてタイミングチャートが作成される。以下の説明では、本実施形態において作成されるタイミングチャートを適宜、「オンラインタイミングチャート」ともいう。オンラインタイミングチャートは、第1タイミングチャートの一例である。(2-2) Timing chart of this embodiment In this embodiment, the actual robot R is connected to the robot control device 3A, and a timing chart is created in the
図15に、本実施形態のタイミングチャートの一例を示す。図15のタイミングチャートは、グラフを表示する部分であるA部と、タスクの実行状況について表示する部分であるB部とに加えて、入出力信号を表示する部分であるC部を含む。すなわち、オンラインタイミングチャートに含まれるロボット状態データには、ロボットにおける入出力信号の状態が含まれてもよい。オンラインタイミングチャートに表示される入出力信号は、ロボットRに対して設けられた入出力信号の中からオペレータの操作入力により選択可能であることが好ましい。 FIG. 15 shows an example of a timing chart of this embodiment. The timing chart of FIG. 15 includes a portion A that displays a graph, a portion B that displays the execution status of tasks, and a portion C that displays input/output signals. That is, the robot status data included in the online timing chart may include the input/output signal status of the robot. It is preferable that the input/output signals displayed in the online timing chart can be selected from the input/output signals provided for the robot R by the operator's operation input.
A部には、ロボットRから取得した以下のロボット状態データの参照時間(例えば1ms)ごとの変化をプロットした波形(グラフ)が表示される。
・ロボットRのX座標(ワールド座標系)の位置の取得値(“posX”)
・ロボットRのY座標(ワールド座標系)の位置の取得値(“posY”)
・ロボットRのZ座標(ワールド座標系)の位置の取得値(“posZ”)
・アーム51の関節角の角速度の取得値(“Angular Velocity”)Part A displays a waveform (graph) in which changes in the following robot state data obtained from the robot R are plotted for each reference time (for example, 1 ms).
・ Acquisition value (“posX”) of the position of the X coordinate (world coordinate system) of robot R
・Acquisition value of the Y coordinate (world coordinate system) position of robot R (“posY”)
・Acquisition value of the Z coordinate (world coordinate system) position of robot R (“posZ”)
Acquisition value of angular velocity of joint angle of arm 51 (“Angular Velocity”)
B部において、第1の実施形態のオフラインタイミングチャートと同様に、各モーションの開始時刻および終了時刻は、各モーションに対応する関数の実行開始時刻および実行終了時刻と一致する。各タスクの開始時刻は、各タスクに含まれる複数のモーションのうち最初のモーションの開始時刻と一致し、各タスクの終了時刻は、各タスクに含まれる複数のモーションのうち最後のモーションの終了時刻と一致する。 In part B, similarly to the offline timing chart of the first embodiment, the start time and end time of each motion match the execution start time and end time of the function corresponding to each motion. The start time of each task matches the start time of the first motion among multiple motions included in each task, and the end time of each task matches the end time of the last motion among multiple motions included in each task. matches.
図15のC部では、I/O(入出力信号)の状態(ON(Hレベル)又はOFF(Lレベル))が表示される。[]の中の数字は、予め定められたI/O番号であり、[]に続く文字は、I/Oの内容を示している。なお、C部に含まれる入出力信号が不定を示す場合がある。
図15に示す例では、以下の内容のI/Oを示している。In part C of FIG. 15, the I/O (input/output signal) state (ON (H level) or OFF (L level)) is displayed. The numbers in [ ] are predetermined I/O numbers, and the characters following [ ] indicate the contents of the I/O. Input/output signals included in the C part may indicate indefiniteness.
The example shown in FIG. 15 shows I/O with the following contents.
・[09] Pen Set … 実機のロボットRの作業環境にカメラが設けられており、当該カメラがペントレイを認識したときにONとなる。ペントレイが固定して配置されている場合には常にONであるが、ペントレイがラインで運ばれてくる場合には、カメラがペントレイのペンを認識したときにOFFからONに切り替わる。
・[10] Vision lockon … 実機のロボットRの作業環境に設置されているカメラによって認識されたペントレイの位置に基づいて、ロボットRに対する指令値に対する補正を行う補正タイミングを示している。補正タイミングに達したときにONとなる。補正タイミングは、タスクに対して予め設定されている。
・[16] Hand1 grasp … ハンドがペンを把持したときにONとなる。ONのタイミングはハンドシーケンスによって異なる。
・[17] Hand1 release … ハンドがペンを離したときにONとなる。実機のロボットRでは、対象物を取る(pick up)作業中にONとなった場合、対象物を掴み損ねて落下させたことがわかる。・[09] Pen Set … A camera is provided in the work environment of the actual robot R, and is turned ON when the camera recognizes the pen tray. It is always ON when the pen tray is fixedly placed, but when the pen tray is brought in line, it switches from OFF to ON when the camera recognizes the pens in the pen tray.
[10] Vision lockon . . . Indicates the correction timing for correcting the command value for the robot R based on the position of the pen tray recognized by the camera installed in the working environment of the actual robot R. It turns ON when the correction timing is reached. Correction timing is set in advance for each task.
・[16] Hand1 grasp … Turns ON when the hand grasps the pen. The ON timing differs depending on the hand sequence.
・[17] Hand1 release … Turns ON when the hand releases the pen. In the actual robot R, when it is turned ON during the work of picking up an object, it can be understood that the object has been dropped due to failing to pick it up.
図15に示すように、オンラインタイミングチャートにおいても、第1の実施形態のオフラインタイミングチャートと同様に、ロボットRのジョブに含まれる各タスクの期間(開始時刻および終了時刻)と、各タスクに含まれるモーションの期間(開始時刻および終了時刻)とがわかる。
図15のオンラインタイミングチャートの例では、ロボットRに対する指令値の補正タイミングである時刻t3が、当該指令値に対応するモーションの開始時刻である時刻t2よりも後になっており、問題が発生していることがわかる。As shown in FIG. 15, in the online timing chart as well as in the offline timing chart of the first embodiment, the period (start time and end time) of each task included in the job of the robot R and the time period included in each task. You can see the duration of the motion (start time and end time).
In the example of the online timing chart of FIG. 15, the time t3, which is the correction timing of the command value for the robot R, is later than the time t2, which is the start time of the motion corresponding to the command value. I know there is.
(2-3)ロボットシミュレータ1Aの機能
次に、本実施形態のロボットシミュレータ1Aの機能について、図16を参照して説明する。図16は、実施形態に係るロボットシミュレータ1Aの機能ブロック図である。
図16に示すように、ロボットシミュレータ1Aは、表示制御部101、タスク作成部102、プログラム作成部103、プログラム実行部104、状態情報取得部106、シミュレーション部107、および、インターロック設定部108を備える。すなわち、本実施形態のロボットシミュレータ1Aは、状態情報算出部105ではなく状態情報取得部106を備えている点で、第1の実施形態のロボットシミュレータ1とは異なる。(2-3) Functions of
As shown in FIG. 16, the
本実施形態のプログラム実行部104を実現するために、情報処理装置2の制御部21は、例えば教示用ウィンドウW3(図8)のボタンb3に対する操作入力を認識すると、ロボットプログラム(実機用プログラム)を作成し、当該ロボットプログラムをロボット制御装置3Aへ送信する。ロボット制御装置3Aの制御部31Aは、受信した実機用プログラムを実行する。
In order to realize the
状態情報取得部106は、プログラム実行部104による実行結果に基づいてロボットに対する制御信号を生成し、当該制御信号によって動作するロボットの時間の経過に応じた状態を示す情報であるロボット状態データを、ロボットから取得する機能を備える。
本実施形態では、表示制御部101は、状態情報取得部106により得られたロボット状態データに基づいて、時間軸においてタスクの作業要素に相当する期間が識別可能となるように、ロボットの状態を示すタイミングチャート(すなわち、オンラインタイミングチャート)を表示装置24に表示する。The state
In this embodiment, the
状態情報取得部106の機能を実現するために、ロボット制御装置3Aの制御部31Aは、上述したように、各タスクに基づいて作成されたプログラムを順に実行するようにして、情報処理装置2から受信したロボットプログラムを実行する。そして、制御部31Aは、ロボットプログラムに含まれる関数を実行する度に、ロボットRに対する指令値を含む制御信号を生成し、ロボットRへ送信する。
ロボットRの制御装置55は、ロボット制御装置3Aから受信する指令値に追従するように、マニピュレータ50に設けられたモータを制御するとともに、ロボット状態データをロボット制御装置3Aに送信する。ロボット状態データは、センサ群56のいずれかのセンサによって検出されたマニピュレータ50の物理量、あるいはマニピュレータ50の物理量の推定値(例えば制御電流値等)である。ロボット制御装置3Aの制御部31Aは、ロボットRから取得したロボット状態データを逐次、ストレージ32に記録する。
制御部31Aは、ストレージ32に累積されるロボット状態データを所定の参照時間(例えば1ms)ごとに読み出し、読み出した所定の参照時間ごとのロボット状態データを含む実行ログデータを情報処理装置2へ送信する。
情報処理装置2の制御部21は、受信した実行ログデータを実行ログデータベース224に記録する。さらに、制御部21は、第1の実施形態と同様に、実行ログデータに含まれるロボット状態データに基づいて、所定の形式のタイミングチャート(オンラインタイミングチャート)を含む画像を生成して表示装置24に表示する。当該タイミングチャートにより、ロボットの一連の作業について特定の作業要素に相当する期間を識別可能とすることができる。In order to realize the function of the state
The control device 55 of the robot R controls the motor provided in the
The control unit 31A reads the robot state data accumulated in the
The
第1の実施形態と同様に、ロボット状態データは、ロボットは複数の種別の情報を含んでもよい。その場合、表示制御部101は、ロボット状態データのうち、オペレータの操作入力によって複数の種別の中から選択された一部の種別の情報に基づいて、オンラインタイミングチャートを表示装置24に表示してもよい。
As in the first embodiment, the robot state data may include multiple types of information for the robot. In this case, the
本実施形態では、シミュレーション部107は、状態情報取得部106によって得られたロボット状態データに基づいて、3次元モデルを仮想空間内で動作させて表示装置24に表示する機能を備えてもよい。その際、シミュレーション部 107は、3次元モデルの動作を、ロボット状態データに基づく速度よりも高速となるように、若しくは低速となるように、又は、時間の進行が逆方向となるようにして、表示装置24に表示してもよい。
本実施形態では、情報処理装置2の制御部21は、ロボットRから取得した参照時間ごとのロボット状態データを基に仮想空間上でロボットおよび対象物の3次元モデルを動作させて表示装置24に表示する。これによって、オペレータは、各タスクのロボットの動作を視覚的に確認することができるため、各タスクの設定値(例えば、アプローチ点、デパーチャ点、モーションパラメータ等)や対象物の配置(例えば、図3のキャップトレイ12の配置等)を再検討することが容易となる。In this embodiment, the
In this embodiment, the
本実施形態において、オンラインタイミングチャートを表示し、3次元モデルの動画を再生する処理は、図12に示したフローチャートの処理と概ね共通するが、ステップS18において、ロボットRからロボット状態データを取得して記録する点が異なる。 In this embodiment, the process of displaying the online timing chart and playing back the moving image of the three-dimensional model is generally the same as the process of the flowchart shown in FIG. The difference is that the
以上説明したように、本実施形態のロボットシミュレータ1Aは、ジョブに対応するロボットプログラムの実行結果に基づいてロボットに対して指令値を送信し、ロボットからロボット状態データを取得する。そして、ロボットシミュレータ1Aは、取得したロボット状態データに基づいて、時間軸においてタスクの作業要素に相当する期間が識別可能となるようにオンラインタイミングチャートを表示する。そのため、実機のロボットの一連の作業についての結果を表示するときに、特定の作業要素に相当する期間を識別可能とすることができ、作業要素ごとの検討を支援することができる。
As described above, the
(3)第3の実施形態
次に、第3の実施形態について説明する。
本実施形態のロボットシミュレータは、第1の実施形態のロボットシミュレータ1の機能と、第2の実施形態のロボットシミュレータ1Aの機能とを備え、オフラインタイミングチャートとオンラインタイミングチャートの両方を表示装置24に表示する。すなわち、本実施形態では、表示制御部101は、オフラインタイミングチャート(第2タイミングチャートの例)とオンラインタイミングチャート(第1タイミングチャートの例)を、タスクの作業要素に相当する期間のロボットの状態が比較可能となるように、表示装置24に表示する。かかる表示によって、同一のジョブに対してロボットに接続した場合と接続しない場合とでのロボット状態データを、ジョブに含まれる作業要素ごとに比較し、検討することができる。(3) Third Embodiment Next, a third embodiment will be described.
The robot simulator of this embodiment has the functions of the
本実施形態の情報処理装置2の実行ログデータベース224には、同一のジョブに対して作成されたロボットプログラムを実行することで得られたロボット状態データ(演算されたロボット状態データ、および、ロボットから取得したロボット状態データ)が記録される。そして、情報処理装置2の制御部21は、演算されたロボット状態データに基づくオフラインタイミングチャートと、ロボットから取得したロボット状態データに基づくオンラインタイミングチャートとを、比較可能となる表示装置24に表示する。
In the
オフラインタイミングチャートとオンラインタイミングチャートとを比較可能となるような表示態様は限定するものではなく、例えば、表示画面の上側にオフラインタイミングチャートを表示し、表示画面の下側にオンラインタイミングチャートを表示してもよい。
好ましくは、表示制御部101は、オフラインタイミングチャートとオンラインタイミングチャートとを切り替え可能に表示するか、又は、オフラインタイミングチャートとオンラインタイミングチャートとを共通の時間軸において重ね合わせて表示装置24に表示する。かかる表示態様とすることで、オフラインタイミングチャートとオンラインタイミングチャートを比較することが容易となる。The display mode in which the offline timing chart and the online timing chart can be compared is not limited. For example, the offline timing chart is displayed on the upper side of the display screen and the online timing chart is displayed on the lower side of the display screen. may
Preferably, the
図17に、オフラインタイミングチャートとオンラインタイミングチャートとを共通の時間軸において重ね合わせて表示した例を示す。図17に示す例では、図15に示したオンラインタイミングチャートに、図9に示したオフラインタイミングチャートが共通の時間軸において重ね合わせて表示されている。 FIG. 17 shows an example in which an offline timing chart and an online timing chart are superimposed and displayed on a common time axis. In the example shown in FIG. 17, the offline timing chart shown in FIG. 9 is superimposed on the online timing chart shown in FIG. 15 on the common time axis.
図18に、オフラインタイミングチャートとオンラインタイミングチャートとを切り替え可能に表示した例を示す。図18に示す例では、最上部に、オフラインタイミングチャートに対応する「結果#1(ロボット非接続)」という名称のタブと、オンラインタイミングチャートに対応する「結果#2(ロボット接続)」という名称のタブとが切り替え可能に設けられる。図18は、「結果#1(ロボット非接続)」という名称のタブが選択された場合を示しており、図9のオフラインタイミングチャートと同一の表示内容となっている。 FIG. 18 shows an example in which the off-line timing chart and the on-line timing chart are switchably displayed. In the example shown in FIG. 18, a tab named "Result #1 (robot not connected)" corresponding to the offline timing chart and a tab named "Result #2 (robot connected)" corresponding to the online timing chart are displayed at the top. tabs are provided so as to be switchable. FIG. 18 shows a case where a tab named "result #1 (robot disconnected)" is selected, and has the same display contents as the offline timing chart of FIG.
(4)変形例
以下、上述した各実施形態の変形例について述べる。(4) Modifications Modifications of the above embodiments will be described below.
(4-1)変形例1
表示制御部101は、異なる作業要素同士におけるロボットの状態が比較可能となるように、オフラインタイミングチャート又はオンラインタイミングチャートを表示装置24に表示してもよい。それによって、ロボットのジョブに含まれる複数の作業要素のうち異なる作業要素間においてロボットの状態を比較することができる。
本変形例を実現するために、例えば、情報処理装置2の制御部21は、ジョブに含まれる複数のタスクのうち2つのタスクを選択するオペレータの操作入力に基づいて、情報処理装置2の制御部21は、選択された2つのタスクの期間が並列に構成されたタイミングチャートを作成する。好ましくは、選択された2つのタスクの期間の開始時刻が一致するようにしてタイミングチャートが作成される。(4-1)
The
In order to implement this modification, for example, the
(4-2)変形例2
シミュレーション部107は、オフラインタイミングチャート又はオンラインタイミングチャートにおいて表示されている期間のうち、オペレータの操作入力に基づいて指定された一部の期間におけるロボット状態データに基づいて、3次元モデルを動作させて表示装置24に表示してもよい。それによって、ジョブの全期間のうちオペレータが注目したい期間のロボットの動作を確認することができる。
本変形例を実現するために、オフラインタイミングチャート又はオンラインタイミングチャートに、図10に例示したようなボタンb4(通常速度によりロボットおよび対象物の動作させるための操作ボタン)が設けられる。情報処理装置2の制御部21は、当該ボタンb4の操作入力に基づいて、オフラインタイミングチャート又はオンラインタイミングチャートに対応する動画を再生する。このとき、タイミングチャートに設けられたカーソルCU1~CU3を操作することで、動画の再生対象とする期間を、タイミングチャートに表示されている期間のうち一部の期間に指定できるようにする。(4-2)
The
In order to implement this modification, the offline timing chart or the online timing chart is provided with a button b4 (operation button for operating the robot and the object at normal speed) as illustrated in FIG. The
(4-3)変形例3
第2の実施形態において、表示制御部101は、同一の作業要素であっても異なる実行結果におけるロボットの状態が比較可能となるように、オンラインタイミングチャートを表示装置24に表示してもよい。それによって、同一のタスクを複数回試行したときのロボットの状態のばらつきを把握することができる。 本変形例を実現するために、情報処理装置2の制御部21は、ロボットプログラムを複数回実行することで取得した複数のロボット状態データをジョブの開始時刻が一致するようにして重ねてプロットしたタイミングチャートを作成する。(4-3) Modification 3
In the second embodiment, the
以上、本発明のロボットシミュレータの複数の実施形態について詳述したが、本発明は上記の各実施形態に限定されない。また、上記の実施形態は、本発明の主旨を逸脱しない範囲において、種々の改良や変更が可能である。例えば、各実施形態について言及した技術的事項は、技術的矛盾が生じない限り、異なる実施形態の間で適宜組み合わせてもよい。 A plurality of embodiments of the robot simulator of the present invention have been described in detail above, but the present invention is not limited to the above embodiments. Also, the above embodiments can be modified and modified in various ways without departing from the gist of the present invention. For example, technical matters referred to in each embodiment may be appropriately combined between different embodiments as long as there is no technical contradiction.
上述した第1および第2の実施形態において、情報処理装置2は、ロボット制御装置3から取得したロボット状態データに基づいて有用な情報を提供するようにしてもよい。
例えば、ジョブ内の作業要素間の移動距離および移動回数を統計処理した情報を提供することで、ラインにおける対象物の供給及び/又は排出の場所、向き等の検討を支援することができる。
また、ジョブ内のロボットの動作時間と待機時間の時間比率を算出して提示してもよい。それによって、ジョブ内の作業順序の改善、あるいは不要な高速動作を低速化する等の検討を支援することができる。In the first and second embodiments described above, the
For example, by providing information obtained by statistically processing the movement distance and the number of movement times between work elements in a job, it is possible to support consideration of the location, orientation, etc. of supply and/or discharge of objects on the line.
Also, the time ratio between the operation time and the waiting time of the robot in the job may be calculated and presented. As a result, it is possible to support considerations such as improving the order of work within a job or slowing down unnecessary high-speed operations.
上述した実施形態に係るロボットシミュレータは、図11又は図16の機能ブロック図に記載されたすべての機能を備えている必要はなく、少なくとも一部の機能を備えていればよい。
上述した実施形態では、ロボットシミュレータは、情報処理装置とロボット制御装置の2つの装置を含む場合について例示したが、その限りではなく、一体の装置として構成してもよい。
上述した実施形態では、情報処理装置の入力装置にポインティングデバイスが含まれる場合について説明したが、その限りではなく、他のデバイスであってもよい。例えば、タッチ入力機能を備えた表示パネルを使用し、オペレータによるタッチ入力を受け付けてもよい。
上述した実施形態では、ジョブに含まれるタスクリストを、階層型リストを基に作成する例を説明したが、その限りではない。ジョブに含まれる複数の作業要素が特定される限り、階層型リストを基にジョブに含まれるタスクを定義する必要はない。The robot simulator according to the embodiment described above need not have all the functions described in the functional block diagram of FIG. 11 or FIG. 16, and may have at least some of the functions.
In the above-described embodiment, the robot simulator includes two devices, namely, the information processing device and the robot control device.
In the above-described embodiment, the case where the pointing device is included in the input device of the information processing apparatus has been described, but the present invention is not limited to this and other devices may be used. For example, a display panel with a touch input function may be used to receive touch input from the operator.
In the above-described embodiment, an example of creating a task list included in a job based on a hierarchical list has been described, but the present invention is not limited to this. There is no need to define the tasks to be included in a job based on a hierarchical list as long as multiple work elements to be included in the job are specified.
上述した説明により、図11および図16の機能ブロック図に記載された機能のうち少なくとも一部の機能をコンピュータに実現させるためのプログラム、および、当該プログラムが記録されたコンピュータ可読記憶媒体(不揮発性の記憶媒体をも含む。)が開示されていることは当業者に理解される。 According to the above description, a program for causing a computer to implement at least some of the functions described in the functional block diagrams of FIGS. ) is disclosed.
1,1A…ロボットシミュレータ、2…情報処理装置、21…制御部、22…ストレージ、23…入力装置、24…表示装置、25…通信インタフェース部、3,3A…ロボット制御装置、31,31A…制御部、32…ストレージ、33…通信インタフェース部、11…ペントレイ、P…ペン群、12…キャップトレイ、C…キャップ群、13…治具、14…製品トレイ、A1~A12…製品、EC…通信ネットワークケーブル、WC…ケーブル、R…ロボット、50…マニピュレータ、51…アーム、52…ハンド、55…制御装置、56…センサ群、57…入出力部、61~68…ノード、101…表示制御部、102…タスク作成部、103…プログラム作成部、104…プログラム実行部、105…状態情報算出部、106…状態情報取得部、107…シミュレーション部、108…インターロック設定部、221…タスクデータベース、222…階層型リストデータベース、223…3次元モデルデータベース、224…実行ログデータベース、RA…ロボット領域、PA…対象物領域、W1~W6…ウィンドウ、b1~b8…ボタン、AP…アプローチ点、TP…目標点、DP…デパーチャ点、T…テーブル
DESCRIPTION OF
Claims (9)
前記プログラム実行部による実行結果に基づいて前記ロボットに対する制御信号を生成し、当該制御信号によって動作する前記ロボットの時間の経過に応じた状態を示す情報である状態情報を、前記ロボットから取得する状態情報取得部と、
前記状態情報取得部により得られた前記状態情報に基づいて、時間軸において前記タスクの作業要素に相当する期間が識別可能となるように、前記ロボットの状態を示す第1タイミングチャートを表示装置に表示する表示制御部と、
前記プログラム実行部による実行結果に基づいて、時間の経過に応じた前記ロボットの状態を示す情報である状態情報を演算する状態情報算出部と、をさらに備え、
前記表示制御部は、前記状態情報算出部により得られた前記状態情報に基づいて、時間軸において前記タスクの作業要素に相当する期間が識別可能となるように、前記ロボットの状態を示す第2タイミングチャートを前記表示装置に表示するロボットシミュレータ。 a program execution unit that executes a robot program that includes tasks that are information about work elements of the robot;
A state in which a control signal for the robot is generated based on an execution result by the program execution unit, and state information, which is information indicating a state of the robot operating according to the control signal over time, is acquired from the robot. an information acquisition unit;
Based on the state information obtained by the state information acquisition unit, a first timing chart showing the state of the robot is displayed on a display device so that periods corresponding to work elements of the task can be identified on the time axis. a display control unit for displaying;
a state information calculation unit that calculates state information, which is information indicating the state of the robot over time, based on the result of execution by the program execution unit;
Based on the state information obtained by the state information calculation unit, the display control unit displays a second state of the robot so that a period corresponding to the work element of the task can be identified on the time axis. A robot simulator that displays a timing chart on the display device.
前記状態情報取得部によって得られた状態情報に基づいて、前記3次元モデルを動作させて前記表示装置に表示するシミュレーション部と、
をさらに備えた、請求項1に記載されたロボットシミュレータ。 a storage unit that stores information of the three-dimensional model of the robot in virtual space;
a simulation unit that operates the three-dimensional model and displays it on the display device based on the state information obtained by the state information acquisition unit;
A robot simulator as recited in claim 1, further comprising:
前記表示制御部は、前記状態情報取得部により得られた前記状態情報のうち、オペレータの操作入力によって前記複数の種別の中から選択された一部の種別の情報に基づいて、前記第1タイミングチャートを前記表示装置に表示する、請求項1又は5に記載されたロボットシミュレータ。 The state information obtained by the state information acquisition unit includes a plurality of types of information,
The display control unit controls the first timing based on information of a part of the state information obtained by the state information acquisition unit , selected from among the plurality of types by an operation input by an operator. 6. The robot simulator according to claim 1, wherein a chart is displayed on said display device.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017184664 | 2017-09-26 | ||
JP2017184664 | 2017-09-26 | ||
PCT/JP2018/028994 WO2019064917A1 (en) | 2017-09-26 | 2018-08-02 | Robot simulator |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2019064917A1 JPWO2019064917A1 (en) | 2020-10-15 |
JP7151713B2 true JP7151713B2 (en) | 2022-10-12 |
Family
ID=65902389
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019544369A Active JP7151713B2 (en) | 2017-09-26 | 2018-08-02 | robot simulator |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP7151713B2 (en) |
WO (1) | WO2019064917A1 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021122898A (en) * | 2020-02-05 | 2021-08-30 | 芝浦機械株式会社 | Robot system and operating device |
JP7390479B2 (en) * | 2020-04-29 | 2023-12-01 | 株式会社Fuji | Workpiece processing equipment |
CN113232018B (en) * | 2021-04-27 | 2022-05-10 | 成都飞机工业(集团)有限责任公司 | Method for quickly resetting posture of robot |
WO2024019107A1 (en) * | 2022-07-22 | 2024-01-25 | ソニーグループ株式会社 | Multiple-robot control method, multiple-robot control device, and multiple-robot control system |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002132311A (en) | 2000-10-26 | 2002-05-10 | Citizen Watch Co Ltd | Graph display method for processing program and device for the same |
JP2004148428A (en) | 2002-10-30 | 2004-05-27 | Honda Motor Co Ltd | Simulation device |
JP2004174662A (en) | 2002-11-27 | 2004-06-24 | Fanuc Ltd | Operation state analysis device for robot |
JP2004209641A (en) | 2002-12-30 | 2004-07-29 | Abb Res Ltd | Method and system for programming an industrial robot |
JP2009297877A (en) | 2008-06-17 | 2009-12-24 | Yamatake Corp | Device and method for preparing robot teaching program |
JP2011022688A (en) | 2009-07-14 | 2011-02-03 | Fanuc Ltd | Tool path display apparatus for machine tool |
JP2016018539A (en) | 2014-07-11 | 2016-02-01 | 三菱電機株式会社 | Simulation image display |
JP2017126199A (en) | 2016-01-14 | 2017-07-20 | ファナック株式会社 | Numerical controller having block time display means |
JP2017138827A (en) | 2016-02-04 | 2017-08-10 | ファナック株式会社 | Processing time prediction device |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03188507A (en) * | 1989-12-18 | 1991-08-16 | Fanuc Ltd | Working display system |
-
2018
- 2018-08-02 WO PCT/JP2018/028994 patent/WO2019064917A1/en active Application Filing
- 2018-08-02 JP JP2019544369A patent/JP7151713B2/en active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002132311A (en) | 2000-10-26 | 2002-05-10 | Citizen Watch Co Ltd | Graph display method for processing program and device for the same |
JP2004148428A (en) | 2002-10-30 | 2004-05-27 | Honda Motor Co Ltd | Simulation device |
JP2004174662A (en) | 2002-11-27 | 2004-06-24 | Fanuc Ltd | Operation state analysis device for robot |
JP2004209641A (en) | 2002-12-30 | 2004-07-29 | Abb Res Ltd | Method and system for programming an industrial robot |
JP2009297877A (en) | 2008-06-17 | 2009-12-24 | Yamatake Corp | Device and method for preparing robot teaching program |
JP2011022688A (en) | 2009-07-14 | 2011-02-03 | Fanuc Ltd | Tool path display apparatus for machine tool |
JP2016018539A (en) | 2014-07-11 | 2016-02-01 | 三菱電機株式会社 | Simulation image display |
JP2017126199A (en) | 2016-01-14 | 2017-07-20 | ファナック株式会社 | Numerical controller having block time display means |
JP2017138827A (en) | 2016-02-04 | 2017-08-10 | ファナック株式会社 | Processing time prediction device |
Also Published As
Publication number | Publication date |
---|---|
WO2019064917A1 (en) | 2019-04-04 |
JPWO2019064917A1 (en) | 2020-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPWO2019064916A1 (en) | Robot simulator | |
US11220002B2 (en) | Robot simulation device | |
JP7151713B2 (en) | robot simulator | |
US9984178B2 (en) | Robot simulator, robot teaching apparatus and robot teaching method | |
US10509392B2 (en) | Runtime controller for robotic manufacturing system | |
EP1310844B1 (en) | Simulation device | |
CN104002297B (en) | Teaching system, teaching method and robot system | |
CN100590629C (en) | Device, program, recording medium and method for robot simulation | |
JP2019171501A (en) | Robot interference determination device, robot interference determination method and program | |
JP2019171498A (en) | Robot program execution device, robot program execution method and program | |
CN113710432A (en) | Method for determining a trajectory of a robot | |
KR20160002329A (en) | Robot simulator and file generation method for robot simulator | |
JP6598454B2 (en) | Teaching data creation method, creation device, and creation program | |
WO2020066949A1 (en) | Robot path determination device, robot path determination method, and program | |
US20220395985A1 (en) | Information processing apparatus, information processing method, display apparatus, display method, robot system, article production method, program, and storage medium | |
CN109605378B (en) | Method, device and system for processing motion parameters and storage medium | |
JP7167925B2 (en) | Robot teaching device | |
WO2020059342A1 (en) | Robot simulator | |
US6798416B2 (en) | Generating animation data using multiple interpolation procedures | |
JP2019171499A (en) | Robot interference determination device, robot interference determination method and program | |
JP7024795B2 (en) | Robot teaching device | |
JP7099470B2 (en) | Robot teaching device | |
WO2020066947A1 (en) | Robot route determination device, robot route determination method, and program | |
JP2019171500A (en) | Robot interference determination device, robot interference determination method and program | |
WO2018180298A1 (en) | Robot teaching device, method for controlling robot teaching device, and robot teaching program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201222 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210629 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210826 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220201 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220404 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220830 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220912 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7151713 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |