JP2022073999A - Search device for robot origin return route and search program for robot origin return route - Google Patents

Search device for robot origin return route and search program for robot origin return route Download PDF

Info

Publication number
JP2022073999A
JP2022073999A JP2021163458A JP2021163458A JP2022073999A JP 2022073999 A JP2022073999 A JP 2022073999A JP 2021163458 A JP2021163458 A JP 2021163458A JP 2021163458 A JP2021163458 A JP 2021163458A JP 2022073999 A JP2022073999 A JP 2022073999A
Authority
JP
Japan
Prior art keywords
log data
operation log
robot
return
return route
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
JP2021163458A
Other languages
Japanese (ja)
Inventor
侑也 加藤
Yuya Kato
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.)
Denso Wave Inc
Original Assignee
Denso Wave Inc
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 Denso Wave Inc filed Critical Denso Wave Inc
Publication of JP2022073999A publication Critical patent/JP2022073999A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

To facilitate searches for an origin return route that are based on operation log data of a robot.SOLUTION: In a search device for an origin return route, to be mounted to a robot controller, a return route search processing unit performs downsampling processing (S3-S9) of deleting operation log data existing between operation log data of two points at both ends on a straight line, if a robot trajectory contains a straight line section, and uses remaining operation log data that remains when the processing is completed, in searching for a return route.SELECTED DRAWING: Figure 2A

Description

本発明の実施形態は、ロボットの原点復帰経路探索装置、及び原点復帰経路探索プログラムに関する。 An embodiment of the present invention relates to a robot origin return path search device and an origin return path search program.

ロボットを用いた設備において、自動動作中にロボットに何らかの異常が発生すると、ロボットは異常停止する。この場合、ロボットを停止前に行っていた作業に復帰させるためには、先ず、ロボットプログラムで規定されている原点位置へロボットを復帰させる原点復帰を行い、再度ロボットプログラムをスタートする必要がある。このような設備を立ち上げる際の工数のうち、約6割が、異常停止時に原点復帰動作を行うためのロボットプログラムの作成と修正に費やされている。 In equipment using a robot, if any abnormality occurs in the robot during automatic operation, the robot will stop abnormally. In this case, in order to return the robot to the work performed before the stop, it is necessary to first perform the origin return to return the robot to the origin position defined by the robot program and then start the robot program again. Approximately 60% of the man-hours required to set up such equipment are spent on creating and modifying a robot program for returning to the origin when an abnormal stop occurs.

ロボットが設置されている環境によっては、当初の設計には存在しない設備が追加されていたり、ロボットが認識できる状態で設備のCADデータが取り込まれていないため、他社にあるような周辺の設備モデルを元にしては、安全な復帰経路の計算ができない場合がある。これらの事情により、事前に復帰動作を行う方向を設定したり、ロボットの状態による動作の場合分けが必要になる等、事前の準備に総じて時間を要している。 Depending on the environment in which the robot is installed, equipment that does not exist in the original design may be added, or CAD data of the equipment may not be captured in a state that the robot can recognize, so peripheral equipment models like those of other companies. It may not be possible to calculate a safe return route based on. Due to these circumstances, it takes time as a whole to prepare in advance, such as setting the direction in which the return operation is performed in advance and classifying the operation according to the state of the robot.

例えば、特許文献1には、停止位置から作業原点位置までロボットを復帰させるに際し、システムの負荷を増大させることなく簡易な方法で原点復帰を行うことができるロボットの原点復帰方法が開示されている。 For example, Patent Document 1 discloses a method for returning to the origin of a robot, which can return to the origin by a simple method without increasing the load on the system when returning the robot from the stop position to the work origin position. ..

特開2009-90383号公報Japanese Unexamined Patent Publication No. 2009-90383

しかしながら、特許文献1では、事前にロボットの動作に干渉が発生するエリアやロボットの復帰方向を登録したり、ロボットの動作エリアであるエリアブロックを生成する等の作業が必要であり、多くの手間を要している。 However, in Patent Document 1, it is necessary to register in advance an area where interference occurs in the operation of the robot and a return direction of the robot, and to generate an area block which is an operation area of the robot, which requires a lot of time and effort. Needs.

本発明は上記事情を鑑みてなされたものであり、その目的は、ロボットの動作ログデータに基づいた原点復帰の経路探索をより容易に行うことができるロボットの原点復帰経路探索装置、及び原点復帰経路探索プログラムを提供することにある。 The present invention has been made in view of the above circumstances, and an object thereof is a robot origin return path search device capable of more easily performing origin return path search based on robot operation log data, and an origin return path search device. The purpose is to provide a route search program.

請求項1記載のロボットの原点復帰経路探索装置によれば、復帰経路探索処理部は、ロボットの軌道が直線になる部分があると、その直線の両端にある2点の動作ログデータの間にある動作ログデータを削除する間引き処理を行い、その間引き処理を完了した時点で残っている残存動作ログデータを復帰経路の探索に使用する。すなわち、ロボットの軌道が直線になる区間については、その直線の両端に位置する動作ログデータがあれば復帰経路を問題なく探索できる。したがって、復帰経路の探索に使用する動作ログデータの数を減らして探索に要する時間を低減できる。 According to the origin return path search device of the robot according to claim 1, when there is a portion where the trajectory of the robot becomes a straight line, the return path search processing unit is between two points of operation log data at both ends of the straight line. A thinning process is performed to delete certain operation log data, and the remaining operation log data remaining when the thinning process is completed is used to search for a return route. That is, for the section where the trajectory of the robot becomes a straight line, the return route can be searched without any problem if there is operation log data located at both ends of the straight line. Therefore, the number of operation log data used for the search for the return route can be reduced to reduce the time required for the search.

請求項2記載のロボットの原点復帰経路探索装置によれば、復帰経路探索処理部は、ロボットの軌道において連続する2つの線分が直線と見なすことができると、それら2つの線分の両端にある2点の動作ログデータについて、請求項1と同様の処理を行う。ここで、「連続する2つの線分が直線と見なすことができる」というのは、2つの線分のつながりを実質的に直線として扱っても問題がないことを意味している。すなわち、厳密には直線とは言えない軌道部分であっても、実質的に直線として扱える軌道部分については、請求項1と同様の処理を行うことが可能である。 According to the origin return path search device of the robot according to claim 2, when the return path search processing unit can consider two continuous line segments in the orbit of the robot as straight lines, the return path search processing unit is located at both ends of the two line segments. The same processing as in claim 1 is performed on the operation log data of a certain two points. Here, "two consecutive line segments can be regarded as a straight line" means that there is no problem even if the connection between the two line segments is treated as a substantially straight line. That is, even if the track portion is not strictly a straight line, the same processing as in claim 1 can be performed for the track portion that can be treated as a substantially straight line.

請求項3記載のロボットの原点復帰経路探索装置によれば、復帰経路探索処理部は、動作ログデータD(R+X)及びD(R)で決まる第1ベクトルと、動作ログデータD(R+X)及びD(R+X+1)で決まる第2ベクトルとが、ロボットの手先の位置及び姿勢のそれぞれについて成す角度が閾値を超えていれば動作ログデータD(R+X)を削除し、変数Xをインクリメントしてから同様に、第1及び第2ベクトルが成す角度を閾値と比較する。尚、データD(R),D(R+X)における「R,X」は、動作ログデータの取得順を連番等で示すインデックスであり、R及びXの初期値は「1」で動作ログデータD(1)は復帰原点を示す。 According to the origin return route search device of the robot according to claim 3, the return route search processing unit includes a first vector determined by operation log data D (R + X) and D (R), operation log data D (R + X), and operation log data D (R + X). If the angle formed by the second vector determined by D (R + X + 1) exceeds the threshold for each of the position and posture of the robot's hand, the operation log data D (R + X) is deleted, the variable X is incremented, and so on. First, the angle formed by the first and second vectors is compared with the threshold. Note that "R, X" in the data D (R) and D (R + X) is an index indicating the acquisition order of the operation log data by a serial number or the like, and the initial values of R and X are "1" and the operation log data. D (1) indicates the return origin.

第1及び第2ベクトルが成す角度が閾値以下であれば動作ログデータD(R+X)を残し、動作ログデータD(R+X)を次の動作ログデータD(R)に設定し、つまり、変数「R+X」を変数Xに代入し、変数Xを初期値「1」に設定してから同様に、第1及び第2ベクトルが成す角度を閾値と比較する間引き処理を繰り返し行う。そして、動作ログデータD(R+X+1)が現在位置に達すると間引き処理を停止する。 If the angle formed by the first and second vectors is equal to or less than the threshold value, the operation log data D (R + X) is left, and the operation log data D (R + X) is set in the next operation log data D (R), that is, the variable " After substituting "R + X" into the variable X and setting the variable X to the initial value "1", the thinning process of comparing the angle formed by the first and second vectors with the threshold value is repeated in the same manner. Then, when the operation log data D (R + X + 1) reaches the current position, the thinning process is stopped.

このように構成すれば、前記閾値の設定により、3点の動作ログデータD(R),D(R+X)及びD(R+X+1)が直線上に並んでいると判断すれば、間に位置する動作ログデータD(R+X)を削除して、復帰経路の探索に使用する動作ログデータの数を減らすことができる。 With this configuration, if it is determined that the operation log data D (R), D (R + X) and D (R + X + 1) at three points are arranged on a straight line by setting the threshold value, the operation located between them. The log data D (R + X) can be deleted to reduce the number of operation log data used for the search for the return route.

請求項4記載のロボットの原点復帰経路探索装置によれば、復帰経路探索処理部は、残存動作ログデータについて、隣り合う2つの動作ログデータに基づくロボットの手先の位置及び姿勢の変化量がそれぞれ閾値以下であれば、それら2つの動作ログデータに応じて決まるノードを1つのノードに統合する統合処理を行い、その統合処理を経たノードを復帰経路の探索に使用する。すなわち、ロボットが動作した軌跡によっては、残存動作ログデータの2つで示される手先の位置及び姿勢が略同一となっているため、それらを統合しても復帰経路の探索に支障がないことがある。そのようなケースについて、2つの動作ログデータに応じて決まるノードを1つのノードに統合することで、復帰経路の探索に使用するノード数を低減でき、探索に要する時間を更に低減できる。 According to the robot origin return path search device according to claim 4, the return path search processing unit determines the amount of change in the position and posture of the robot's hand based on the two adjacent operation log data with respect to the remaining operation log data. If it is equal to or less than the threshold value, the integration process of integrating the nodes determined according to the two operation log data into one node is performed, and the node that has undergone the integration process is used for the search for the return route. That is, depending on the trajectory of the robot's movement, the positions and postures of the hands indicated by the two remaining movement log data are substantially the same, so even if they are integrated, there is no problem in searching for the return route. be. In such a case, by integrating the nodes determined according to the two operation log data into one node, the number of nodes used for the search for the return route can be reduced, and the time required for the search can be further reduced.

請求項5記載のロボットの原点復帰経路探索装置によれば、復帰経路探索処理部は、統合処理を経たノードに基づいて復帰経路を探索すると、間引き処理で削除した動作ログデータのうち、2つのノード間を結ぶ経路上に位置するものがあれば、当該動作ログデータに基づくノードを2つのノード間に補間して復帰経路を生成する。復帰経路の探索が完了した後に、2つのノード間を結ぶ経路上に位置している動作ログデータを補間することで、実際にロボットを探索した経路に従って復帰原点まで移動させる際には、ロボットが復帰原点から現在位置まで移動した軌跡を、より精確に逆方向にトレースさせることができる。これにより、ロボットを復帰原点まで移動させる間に、障害物等に接触等する可能性をより低減できる。 According to the origin return route search device of the robot according to claim 5, when the return route search processing unit searches for a return route based on the node that has undergone the integrated processing, two of the operation log data deleted by the thinning process. If there is one located on the path connecting the nodes, the node based on the operation log data is interpolated between the two nodes to generate a return path. By interpolating the operation log data located on the path connecting the two nodes after the search for the return path is completed, the robot moves to the return origin according to the path actually searched for the robot. The locus that has moved from the return origin to the current position can be traced more accurately in the opposite direction. This makes it possible to further reduce the possibility of contact with an obstacle or the like while moving the robot to the return origin.

第1実施形態であり、動作ログデータ記録装置及び原点復帰経路探索装置を含むロボットシステムの構成を概念的に示す図A diagram conceptually showing the configuration of a robot system according to the first embodiment, which includes an operation log data recording device and an origin return path search device. 一連の制御内容を示すフローチャート(その1)Flowchart showing a series of control contents (Part 1) 一連の制御内容を示すフローチャート(その2)Flow chart showing a series of control contents (Part 2) ダウンサンプリング処理を説明する図(その1)Figure explaining downsampling process (1) ダウンサンプリング処理を説明する図(その2)Figure explaining downsampling process (2) ダウンサンプリング処理を説明する図(その3)Figure explaining downsampling process (3) 生ログデータ取得処理により得られた動作ログデータの一例を示す図The figure which shows an example of the operation log data obtained by the raw log data acquisition process. 図6に示す動作ログデータについてダウンサンプリング処理を行った結果、残存したデータの一例を示す図The figure which shows an example of the data which remained as a result of downsampling processing about the operation log data shown in FIG. 経路探索に用いるノードが無向フラグの場合を示す図A diagram showing the case where the node used for route search is an undirected flag. 経路探索に用いるノードが有向フラグの場合を示す図A diagram showing the case where the node used for route search is a directed flag. 復帰経路を探索した結果の一例を示す図(その1)Figure showing an example of the result of searching the return route (Part 1) 復帰経路を探索した結果の一例を示す図(その2)Figure showing an example of the result of searching the return route (Part 2) 経路作成処理結果の一例を示す図Figure showing an example of route creation processing result 第2実施形態であり、復帰経路探索処理及び間引き処理の他の例を示す図(その1)FIG. 2 is a diagram showing another example of the return route search process and the thinning process (No. 1). 復帰経路探索処理及び間引き処理の他の例を示す図(その2-1)Figure showing other examples of return route search processing and thinning processing (No. 2-1) 復帰経路探索処理及び間引き処理の他の例を示す図(その2-2)Figure showing other examples of return route search processing and thinning processing (Part 2-2)

(第1実施形態)
以下、第1実施形態について図1から図12を参照しながら説明する。図1に示すロボットシステム1は、多関節ロボット10とロボットコントローラ20とを備えている。ロボット10は、複数のアームを有する垂直多関節ロボットであり、ロボットコントローラ20によって制御される。なお、ロボット10は、例えば水平多関節型ロボットやパラレルリンクロボット、直交ロボット等であっても良い。ロボット10とロボットコントローラ20とは、有線又は無線により相互通信可能に構成される。また、ロボットコントローラ20は、パソコンや、スマートフォンなどの携帯端末など、その他の外部の装置に有線または無線により相互通信可能に接続されていても良い。
(First Embodiment)
Hereinafter, the first embodiment will be described with reference to FIGS. 1 to 12. The robot system 1 shown in FIG. 1 includes an articulated robot 10 and a robot controller 20. The robot 10 is a vertical articulated robot having a plurality of arms and is controlled by a robot controller 20. The robot 10 may be, for example, a horizontal articulated robot, a parallel link robot, a orthogonal robot, or the like. The robot 10 and the robot controller 20 are configured to be able to communicate with each other by wire or wirelessly. Further, the robot controller 20 may be connected to another external device such as a personal computer or a mobile terminal such as a smartphone so as to be able to communicate with each other by wire or wirelessly.

本実施形態において、ロボット10は、産業用のロボットであって、例えば6軸を有する垂直多関節ロボットで構成されている。ロボット10は、図1に示すように、ベース11と、複数この場合6つのアーム121~126と、を有している。ロボット10が一定の場所に設置して使用するものであれば、ベース11は、設置面に固定されている。また、ロボット10が人によって持ち運び可能な程度に小型のものである場合、ベース11は、設置面に固定されていなくても良い。各アーム121~126は、ベース11上に順に設けられている。本実施形態の場合、ベース11側から順に、第1アーム121、第2アーム122、第3アーム123、第4アーム124、第5アーム125、及び第6アーム126と称する。また、各アーム121~126を特定しない場合は、各アーム121~126を総称して単にアーム12と称する。 In the present embodiment, the robot 10 is an industrial robot, and is composed of, for example, a vertical articulated robot having 6 axes. As shown in FIG. 1, the robot 10 has a base 11 and a plurality of arms 121 to 126 in this case. If the robot 10 is installed and used in a certain place, the base 11 is fixed to the installation surface. Further, when the robot 10 is small enough to be carried by a person, the base 11 does not have to be fixed to the installation surface. The arms 121 to 126 are sequentially provided on the base 11. In the case of the present embodiment, they are referred to as a first arm 121, a second arm 122, a third arm 123, a fourth arm 124, a fifth arm 125, and a sixth arm 126 in order from the base 11 side. When each arm 121 to 126 is not specified, each arm 121 to 126 is collectively referred to as an arm 12.

各アーム121~126は、それぞれ複数の軸J1~J6を介して回転可能に連結されている。この場合、ベース11側から順に、第1軸J1、第2軸J2、第3軸J3、第4軸J4、第5軸J5、及び第6軸J6と称する。なお、各軸J1~J6を特定しない場合は、各軸J1~J6を総称して単に軸Jと称する。第1軸J1は、垂直方向に延びる回転軸であり、ベース11に対して第1アーム121を水平方向に回転可能に連結する。第2軸J2は、水平方向に延びる回転軸であり、第1アーム121に対して第2アーム122を鉛直方向に回転可能に連結する。 The arms 121 to 126 are rotatably connected via a plurality of axes J1 to J6, respectively. In this case, they are referred to as the first axis J1, the second axis J2, the third axis J3, the fourth axis J4, the fifth axis J5, and the sixth axis J6 in order from the base 11 side. When the axes J1 to J6 are not specified, the axes J1 to J6 are collectively referred to as the axis J. The first axis J1 is a rotation axis extending in the vertical direction, and the first arm 121 is rotatably connected to the base 11 in the horizontal direction. The second axis J2 is a rotation axis extending in the horizontal direction, and connects the second arm 122 to the first arm 121 so as to be rotatable in the vertical direction.

第3軸J3は、水平方向に延びる回転軸であり、第2アーム122に対して第3アーム123を鉛直方向に回転可能に連結する。第4軸J4は、第3アーム123の長手方向に延びる回転軸であり、第3アーム123に対して第4アーム124と回転可能に連結する。第5軸J5は、水平方向に延びる回転軸であり、第4アーム124に対して第5アーム125を鉛直方向に回転可能に連結する。そして、第6軸J6は、第5アーム125の長手方向に延びた回転軸であり、第5アーム125に対して第6アーム126を回転可能に連結する。 The third axis J3 is a rotation axis extending in the horizontal direction, and connects the third arm 123 to the second arm 122 so as to be rotatable in the vertical direction. The fourth axis J4 is a rotation axis extending in the longitudinal direction of the third arm 123, and is rotatably connected to the third arm 123 with the fourth arm 124. The fifth axis J5 is a rotation axis extending in the horizontal direction, and the fifth arm 125 is rotatably connected to the fourth arm 124 in the vertical direction. The sixth axis J6 is a rotation axis extending in the longitudinal direction of the fifth arm 125, and rotatably connects the sixth arm 126 to the fifth arm 125.

第6アーム126はロボット10の手先部分であり、例えばフランジ形状に構成されている。第6アーム126の先端部分にはツール13が着脱可能に装着される。ツール13は、例えばチャックやグリッパ、若しくは吸着ハンドなどワークを把持及び搬送するためのものや、ねじ締めや穴あけ用のドリルなどワークに対して各種の加工を施すための加工具などがある。ツール13は、ロボット10の用途に応じて適宜選択することができる。また、ロボット10は、詳細は図示しないが、各軸J1~J6を駆動するためのモータ、各軸J1~J6の回転数及び位置を検出するためのエンコーダ、及び各軸J1~J6の動作を停止させるためのブレーキ等を有している。 The sixth arm 126 is a hand portion of the robot 10, and is configured in a flange shape, for example. A tool 13 is detachably attached to the tip of the sixth arm 126. The tool 13 includes, for example, a tool for gripping and transporting a work such as a chuck, a gripper, or a suction hand, and a processing tool for performing various processing on the work such as a drill for screw tightening or drilling. The tool 13 can be appropriately selected according to the use of the robot 10. Although not shown in detail, the robot 10 operates a motor for driving each axis J1 to J6, an encoder for detecting the rotation speed and position of each axis J1 to J6, and an operation of each axis J1 to J6. It has a brake to stop it.

ロボットコントローラ20は、制御部21、入力表示装置22、記録部23、動作ログデータ記録装置24、及び原点復帰経路探索装置25を有している。制御部21は、例えばCPU211や、ROM、RAM、及び書き換え可能なフラッシュメモリなどの記憶領域212を有するマイクロコンピュータを主体に構成されており、ロボット10全体の動作を制御する。入力表示装置22は、例えばタッチパネルや電気式又は機械式のスイッチ装置、及び液晶画面等の表示機能を有している。記録部23は、例えばロボットコントローラ20からの指示により各種情報を書き込み及び読み出すことができるいわゆるストレージ装置や、CD、DVDなどの記録媒体に書き込み可能な装置である。 The robot controller 20 includes a control unit 21, an input display device 22, a recording unit 23, an operation log data recording device 24, and an origin return route search device 25. The control unit 21 is mainly composed of a microcomputer having a storage area 212 such as a CPU 211, a ROM, a RAM, and a rewritable flash memory, and controls the operation of the entire robot 10. The input display device 22 has a display function such as a touch panel, an electric or mechanical switch device, and a liquid crystal screen. The recording unit 23 is, for example, a so-called storage device that can write and read various information according to instructions from the robot controller 20, and a device that can write to a recording medium such as a CD or DVD.

また、記録部23は、例えばロボットコントローラ20の筐体内に固定的に設置されているフラッシュメモリなどを利用した記録装置、ロボットコントローラ20に挿抜可能なUSBメモリ若しくはメモリカードなどを採用することができる。また、記録部23は、インターネットやLAN、WANを介して通信可能に接続された外部のいわゆるオンラインストレージを採用することもできる。 Further, the recording unit 23 can adopt, for example, a recording device using a flash memory fixedly installed in the housing of the robot controller 20, a USB memory or a memory card that can be inserted into and removed from the robot controller 20. .. Further, the recording unit 23 can also adopt an external so-called online storage connected so as to be communicable via the Internet, LAN, or WAN.

制御部21の記憶領域212は、ロボット10を駆動制御するためのロボット制御プログラムを記憶している。ロボットコントローラ20は、CPU211においてロボット制御プログラムを実行することで、ロボット10の動作を制御する。また、本実施形態の場合、記憶領域212は、動作ログデータ記録プログラム及び原点復帰経路探索プログラムを記憶している。 The storage area 212 of the control unit 21 stores a robot control program for driving and controlling the robot 10. The robot controller 20 controls the operation of the robot 10 by executing a robot control program in the CPU 211. Further, in the case of the present embodiment, the storage area 212 stores the operation log data recording program and the origin return route search program.

制御部21は、CPU211において動作ログデータ記録プログラムを実行することにより、生ログデータ取得処理部241、ダウンサンプリング処理部242、及び記録処理部243等を、ソフトウェアによって仮想的に実現する。この場合、生ログデータ取得処理部241、ダウンサンプリング処理部242、及び記録処理部243は、動作ログデータ記録装置24を構成する。すなわち、本実施形態において、ロボットコントローラ20は、動作ログデータ記録装置24を含んで構成されている。 By executing the operation log data recording program in the CPU 211, the control unit 21 virtually realizes the raw log data acquisition processing unit 241, the downsampling processing unit 242, the recording processing unit 243, and the like by software. In this case, the raw log data acquisition processing unit 241, the downsampling processing unit 242, and the recording processing unit 243 constitute an operation log data recording device 24. That is, in the present embodiment, the robot controller 20 includes an operation log data recording device 24.

また、制御部21は、CPU211において原点復帰経路探索プログラムを実行することにより、復帰原点設定処理部251、及び復帰経路探索処理部252をソフトウェアによって仮想的に実現する。この場合、復帰原点設定処理部251、及び復帰経路探索処理部252は、原点復帰経路探索装置25を構成する。すなわち、本実施形態において、ロボットコントローラ20は、原点復帰経路探索装置25を含んで構成されている。 Further, the control unit 21 virtually realizes the return origin setting processing unit 251 and the return route search processing unit 252 by executing the origin return route search program in the CPU 211. In this case, the return origin setting processing unit 251 and the return path search processing unit 252 configure the origin return path search device 25. That is, in the present embodiment, the robot controller 20 includes the origin return path search device 25.

なお、動作ログデータ記録プログラム及び原点復帰経路探索プログラムは、記録部23や、その他の外部の記録媒体に記憶されて、記録部23や外部の記録媒体から制御部21にインストールしたり直接実行したりしても良い。また、生ログデータ取得処理部241、ダウンサンプリング処理部242、及び記録処理部243は、例えば制御部21と一体の集積回路としてハードウェア的に実現しても良い。また、復帰原点設定処理部251、及び復帰経路探索処理部252も、例えば制御部21と一体の集積回路としてハードウェア的に実現しても良い。 The operation log data recording program and the origin return route search program are stored in the recording unit 23 and other external recording media, and are installed or directly executed in the control unit 21 from the recording unit 23 or the external recording medium. You may do it. Further, the raw log data acquisition processing unit 241, the downsampling processing unit 242, and the recording processing unit 243 may be realized in hardware as, for example, an integrated circuit integrated with the control unit 21. Further, the return origin setting processing unit 251 and the return path search processing unit 252 may also be realized as an integrated circuit integrated with the control unit 21, for example, in terms of hardware.

次に、動作ログデータ記録装置24について説明する。動作ログデータ記録装置24は、ロボット10の自動動作中の動作ログデータを取得し、取得した動作ログデータを所定の条件に基づいてダウンサンプリングつまり間引きして記録部23に記録するためのものである。動作ログデータ記録装置24は、制御部21の処理によって記録部23にアクセス可能である。動作ログデータ記録装置24は、生ログデータ取得処理部241と、ダウンサンプリング処理部242と、記録処理部243と、を含んで構成されている。 Next, the operation log data recording device 24 will be described. The operation log data recording device 24 is for acquiring the operation log data during the automatic operation of the robot 10 and recording the acquired operation log data in the recording unit 23 by downsampling, that is, thinning out based on a predetermined condition. be. The operation log data recording device 24 can access the recording unit 23 by the processing of the control unit 21. The operation log data recording device 24 includes a raw log data acquisition processing unit 241, a downsampling processing unit 242, and a recording processing unit 243.

生ログデータ取得処理部241は、生ログデータ取得処理を実行可能である。生ログデータ取得処理は、生ログデータとして一定期間毎にロボット10を動作させた際のロボット10の各軸J1~J6の角度情報を取得する処理である。以下の説明において、ロボット10の動作に関する動作ログデータを、単にログデータと称することがあり、また、動作ログデータD(N)と称することもある。 The raw log data acquisition processing unit 241 can execute the raw log data acquisition processing. The raw log data acquisition process is a process of acquiring angle information of each axis J1 to J6 of the robot 10 when the robot 10 is operated at regular intervals as raw log data. In the following description, the operation log data related to the operation of the robot 10 may be simply referred to as log data, and may also be referred to as operation log data D (N).

動作ログデータは、少なくとも各軸J1~J6の動作に関する角度情報α1(N)~α6(N)と、手先の位置情報P(N)つまりツール13の先端部又は第6アーム126の先端部の位置情報を含めることができる。この場合、各軸J1~J6の動作に関する角度情報α1(N)~α6(N)は、例えば各軸J1~J6の動作角度、角速度、角加速度などである。また、ロボット10の動作ログデータD(N)には、ツール13の先端部又は第6アーム126の先端部の速度情報や加速度情報を含めることもできる。上記のNは、動作ログデータの取得順を示すものであり、連番で表すこともできるし、取得時刻で表すこともできる。 The operation log data includes at least the angle information α1 (N) to α6 (N) regarding the operation of each axis J1 to J6 and the position information P (N) of the hand, that is, the tip of the tool 13 or the tip of the sixth arm 126. Location information can be included. In this case, the angle information α1 (N) to α6 (N) relating to the operation of each axis J1 to J6 is, for example, the operation angle, angular velocity, angular acceleration, etc. of each axis J1 to J6. Further, the operation log data D (N) of the robot 10 may include velocity information and acceleration information of the tip portion of the tool 13 or the tip portion of the sixth arm 126. The above-mentioned N indicates the acquisition order of the operation log data, and may be represented by a serial number or an acquisition time.

生ログデータ取得処理部241は、ロボット10の動作中、一定間隔、例えば数m秒~数十m秒間隔でロボット10の動作ログデータを取得する。本実施形態の場合、ロボット10の動作中に生ログデータ取得処理が実行されると、生ログデータ取得処理部241は、ロボット10の動作中に取得した生ログデータを、記憶領域212のバッファに一時的に記憶させて保管する。 The raw log data acquisition processing unit 241 acquires the operation log data of the robot 10 at regular intervals, for example, at intervals of several msec to several tens of msec during the operation of the robot 10. In the case of the present embodiment, when the raw log data acquisition process is executed during the operation of the robot 10, the raw log data acquisition processing unit 241 stores the raw log data acquired during the operation of the robot 10 in the buffer of the storage area 212. Temporarily store and store in.

この場合、生ログデータ取得処理は、取得した生ログデータD(N)を、例えば記憶領域212のうちRAMなどの揮発性メモリに設けられたバッファに一時的に保管する処理を含んでいても良い。この場合、ダウンサンプリング処理部242は、バッファに所定量の生ログデータD(N)が蓄積された場合に、その所定量ごとにダウンサンプリング処理を実行する。ダウンサンプリング処理は、生ログデータ取得処理部241で取得した生ログデータのうち、特定の条件を満たすものについて記録対象から除外する処理である。 In this case, the raw log data acquisition process may include a process of temporarily storing the acquired raw log data D (N) in a buffer provided in a volatile memory such as RAM in the storage area 212, for example. good. In this case, when a predetermined amount of raw log data D (N) is accumulated in the buffer, the downsampling processing unit 242 executes the downsampling process for each predetermined amount. The downsampling process is a process of excluding the raw log data acquired by the raw log data acquisition processing unit 241 from the recording target, which satisfies a specific condition.

次に、本実施形態の作用について説明する。図2は、ロボット10の動作が、例えば障害物等に衝突するなどして停止した際に、ロボット10を原点位置まで復帰させるため、ロボットコントローラ20により実行される一連の制御内容を示すフローチャートである。図2に示す処理には、上述した生ログデータ取得処理(S1)やダウンサンプリング処理(S3~S9),計算用ノード作成処理(S10~S16),経路探索処理(S18),経路作成処理(S19~S23)及び原点位置復帰処理(S24)が含まれている。先ず、各処理の概要を説明する。 Next, the operation of this embodiment will be described. FIG. 2 is a flowchart showing a series of control contents executed by the robot controller 20 in order to return the robot 10 to the origin position when the operation of the robot 10 is stopped due to, for example, a collision with an obstacle or the like. be. The processes shown in FIG. 2 include the above-mentioned raw log data acquisition process (S1), downsampling process (S3 to S9), calculation node creation process (S10 to S16), route search process (S18), and route creation process (S18). S19 to S23) and origin position return processing (S24) are included. First, the outline of each process will be described.

[ダウンサンプリング処理]
図3から図7は、間引き処理に相当するダウンサンプリング処理の概要をモデル的に示している。例えば図3に示すように、生ログデータ取得処理によって取得された生ログデータt1~t5があった場合、ダウンサンプリング処理部242は、データt2→t1がなす第1ベクトルと、データt2→t3がなす第2ベクトルとがなす角度を閾値と比較する。閾値は、例えば179度に設定されている。ここでは、両ベクトルがなす角度が閾値を超えているので、生ログデータt1,t2,t3は直線上に並んでいると判断し、生ログデータt2を削除する。
[Downsampling process]
3 to 7 show an outline of the downsampling process corresponding to the thinning process as a model. For example, as shown in FIG. 3, when there are raw log data t1 to t5 acquired by the raw log data acquisition process, the downsampling processing unit 242 uses the first vector formed by the data t2 → t1 and the data t2 → t3. Compare the angle formed by the second vector formed by the threshold with the threshold value. The threshold value is set to, for example, 179 degrees. Here, since the angle formed by both vectors exceeds the threshold value, it is determined that the raw log data t1, t2, and t3 are aligned on a straight line, and the raw log data t2 is deleted.

次に、図4に示すように、ダウンサンプリング処理部242は、データt3→t1がなす第1ベクトルと、データt3→t4がなす第2ベクトルとがなす角度を閾値と比較する。ここでも、両ベクトルがなす角度が閾値を超えているので、生ログデータt1,t3,t4は直線上に並んでいると判断し、生ログデータt3を削除する。 Next, as shown in FIG. 4, the downsampling processing unit 242 compares the angle formed by the first vector formed by the data t3 → t1 and the second vector formed by the data t3 → t4 with the threshold value. Again, since the angle formed by both vectors exceeds the threshold value, it is determined that the raw log data t1, t3, and t4 are aligned on a straight line, and the raw log data t3 is deleted.

次に、図5に示すように、ダウンサンプリング処理部242は、データt4→t1がなす第1ベクトルと、データt4→t5がなす第2ベクトルとがなす角度を閾値と比較する。ここでは、両ベクトルがなす角度が閾値以下であるため、生ログデータt4は削除せずに残す。尚、以上における第1,第2ベクトルがなす角度と閾値との比較は、P型データつまりX,Y,Zの座標値で決まる位置と、J型データ,つまり6軸ロボット10の4軸,5軸,6軸のなす角度で決まる姿勢との双方について行う。 Next, as shown in FIG. 5, the downsampling processing unit 242 compares the angle formed by the first vector formed by the data t4 → t1 and the second vector formed by the data t4 → t5 with the threshold value. Here, since the angle formed by both vectors is equal to or less than the threshold value, the raw log data t4 is left without being deleted. The comparison between the angle formed by the first and second vectors and the threshold value in the above is the P-type data, that is, the position determined by the coordinate values of X, Y, and Z, and the J-type data, that is, the four axes of the 6-axis robot 10. This is done for both the posture determined by the angle formed by the 5th and 6th axes.

また、上記の処理を一般化して示すと、3点の生ログデータD(R),D(R+X),D(R+X+1)があるとする。変数R及びXは自然数であり、これらが初期値「1」であれば図3のケースに対応し、データD(1),D(2),D(3)となる。データD(2)を削除した図4のケースでは、変数XをインクリメントしてデータD(1),D(3),D(4)となり、データD(3)を削除した図5のケースでは、変数Xを更にインクリメントしてデータD(1),D(4),D(5)となる。 Further, to generalize the above processing, it is assumed that there are three raw log data D (R), D (R + X), and D (R + X + 1). The variables R and X are natural numbers, and if they are the initial values "1", the data D (1), D (2), and D (3) correspond to the case of FIG. In the case of FIG. 4 in which the data D (2) is deleted, the variable X is incremented to become the data D (1), D (3), D (4), and in the case of FIG. 5 in which the data D (3) is deleted. , The variable X is further incremented to obtain data D (1), D (4), and D (5).

図5に示すデータt5の後に、図6に示すように、データt6;D(6)があるとすれば、データD(4)を削除した後に続くケースでは、変数Rを「4」に、変数Xを初期値「1」に設定する。これにより、3点のデータはD(4),D(5),D(6)となる。つまり、中間のデータD(R+X)が、第1及び第2ベクトルの始点となる。以上のようにしてダウンサンプリング処理が行われる。 As shown in FIG. 6, if the data t5 shown in FIG. 5 is followed by the data t6; D (6), in the case following the deletion of the data D (4), the variable R is set to “4”. Set the variable X to the initial value "1". As a result, the data at the three points become D (4), D (5), and D (6). That is, the intermediate data D (R + X) becomes the starting point of the first and second vectors. The downsampling process is performed as described above.

例えば図6に示すように、生ログデータ取得処理により得られたデータt1~t17についてダウンサンプリング処理を行うと、図7に示すように、ロボット10の動作軌跡がそれぞれ直線となる両端のデータt1-t4,t4-t7,t7-t10,t10-t14,t14-t17のみが残され、これらが残存動作ログデータとなり、それらの中間にある生ログデータは削除される。 For example, as shown in FIG. 6, when downsampling processing is performed on the data t1 to t17 obtained by the raw log data acquisition processing, as shown in FIG. 7, the data t1 at both ends where the operation locus of the robot 10 becomes a straight line, respectively. Only -t4, t4-t7, t7-t10, t10-t14, and t14-t17 are left, these become the remaining operation log data, and the raw log data in between them is deleted.

[計算用ノード作成処理]
図7に示すように、ノードt4からノードt7に移行した後ノードt10に移行する動作軌跡において、ノードt4,t10は近接している。このように近接している2つのノードは、実質的に1つのノードに統合しても経路探索を行う際に支障はない。そこで、復帰経路探索処理部252は、残存動作ログデータからなるノードのうち、時系列順に並ぶ2つのノードについて、ダウンサンプリング処理の場合と同様に、P型データの座標値(X,Y,Z)及びJ型データの角度(4軸,5軸,6軸)の6つの値をそれぞれ閾値と比較して、2つのノードが統合できるか否かを判断する。位置についての閾値は例えば1mm程度、角度についての閾値は例えば0.457度程度に設定する。図8は、ノードt4,t10を統合して、これらを1つのノードみなした状態を示している。
[Calculation node creation process]
As shown in FIG. 7, the nodes t4 and t10 are close to each other in the operation locus of the transition from the node t4 to the node t7 and then to the node t10. Even if two nodes that are close to each other in this way are substantially integrated into one node, there is no problem in performing a route search. Therefore, the return route search processing unit 252 uses the coordinate values (X, Y, Z) of the P-type data for the two nodes arranged in chronological order among the nodes consisting of the remaining operation log data, as in the case of the downsampling process. ) And the six values of the J-type data angles (4 axes, 5 axes, 6 axes) are compared with the threshold values to determine whether or not the two nodes can be integrated. The threshold value for the position is set to, for example, about 1 mm, and the threshold value for the angle is set to, for example, about 0.457 degrees. FIG. 8 shows a state in which the nodes t4 and t10 are integrated and these are regarded as one node.

なお、経路探索に用いるノードは、図9に示す無向グラフ,図10に示す有向グラフの何れでも良い。無向グラフを採用すると、2つのノード間は双方向に接続されて、探索時には全ての経路を双方向に通れるとみなして探索が行われる。無向グラフには、最短の経路が算出できる利点がある。一方、有向グラフを採用すると、2つのノード間は一方向で接続されて、探索時には最短で一度通過した経路を逆方向に戻る経路を探索することになる。有向グラフでは、無向グラフに比較して、各ノードに付随する経路のデータ数が半分になる。 The node used for the route search may be either the undirected graph shown in FIG. 9 or the directed graph shown in FIG. When the undirected graph is adopted, the two nodes are connected in both directions, and the search is performed assuming that all the routes can be passed in both directions at the time of search. The undirected graph has the advantage that the shortest route can be calculated. On the other hand, if a directed graph is adopted, the two nodes are connected in one direction, and at the time of search, the path that has passed once at the shortest and returns to the opposite direction is searched. In the directed graph, the number of data of the route attached to each node is halved as compared with the undirected graph.

尚、図10に示す有向グラフを採用したケースでは、原点に復帰する経路は本来
t10→t7→t4となるが、ノードt4及びt10が統合されて1つのノードになっているため、結果としてノードt7を往復する経路を経る必要はなくなる。
In the case where the directed graph shown in FIG. 10 is adopted, the path to return to the origin is originally t10 → t7 → t4, but since the nodes t4 and t10 are integrated into one node, the node t7 is formed as a result. There is no need to go through a round-trip route.

[経路探索処理]
本実施形態では、復帰経路の探索に、例えばプライオリティキューを用いたダイクストラ法等のグラフ探索を適用する。図8に示すノードについて、現在位置t17から原点t1に復帰する経路をグラフ探索で導出すると、図11に示すように、
t17→t4(&t10)→t1
という経路になる。そして、ダウンサンプリング処理において削除された生ログデータのうち復帰経路上に位置するものは、図12に示すように再配置する。これにより、ロボット10を原点位置に復帰させる経路は、原点位置から現在位置に至る経路をより正確に逆方向にトレースしたものとなる。
[Pathfinding process]
In the present embodiment, a graph search such as the Dijkstra method using a priority queue is applied to the search for the return route. For the node shown in FIG. 8, when the path returning from the current position t17 to the origin t1 is derived by graph search, as shown in FIG. 11,
t17 → t4 (& t10) → t1
It becomes the route. Then, among the raw log data deleted in the downsampling process, those located on the return path are rearranged as shown in FIG. As a result, the path for returning the robot 10 to the origin position is a more accurate trace of the path from the origin position to the current position in the opposite direction.

次に、上記の各処理が行われる一連の流れを、図2に示すフローチャートに従って説明する。ロボット10が動作を開始すると、生ログデータ取得処理部241が生ログデータの取得を開始する(S1)。そして、ロボット10が障害物等に衝突して動作が停止すると、生ログデータの取得も停止する(S2)。 Next, a series of flows in which each of the above processes is performed will be described with reference to the flowchart shown in FIG. When the robot 10 starts operation, the raw log data acquisition processing unit 241 starts acquiring raw log data (S1). Then, when the robot 10 collides with an obstacle or the like and the operation is stopped, the acquisition of raw log data is also stopped (S2).

続いて、ダウンサンプリング処理部242は、時系列順に並ぶ3点の生ログデータD(R),D(R+X),D(R+X+1)について、
第1ベクトル:D(R+X)→D(R)
第2ベクトル:D(R+X)→D(R+X+1)
として、XYZ空間上で第1,第2ベクトルが成す角を閾値と比較する(S3)。両ベクトルが成す角が閾値を超えていれば(YES)、4軸,5軸,6軸空間上で両ベクトルが成す角を閾値と比較する(S4)。
Subsequently, the downsampling processing unit 242 describes the three raw log data D (R), D (R + X), and D (R + X + 1) arranged in chronological order.
First vector: D (R + X) → D (R)
Second vector: D (R + X) → D (R + X + 1)
As a result, the angle formed by the first and second vectors in the XYZ space is compared with the threshold value (S3). If the angle formed by both vectors exceeds the threshold value (YES), the angle formed by both vectors in the 4-axis, 5-axis, and 6-axis spaces is compared with the threshold value (S4).

ステップS4で「YES」と判断すると、両ベクトルの始点であるデータD(R+X)を削除して(S5)変数Xをインクリメントする(S6)。一方、ステップS3又はS4の何れかで(NO)と判断すると、データD(R+X)を残して(S7)変数Rに(R+X)を代入し、変数Xを「1」に初期化する(S8)。そして、全てのログデータを探索していなければ(S9;NO)ステップS3に戻る。以上のステップS3~S9がダウンサンプリング処理である。 If "YES" is determined in step S4, the data D (R + X) which is the start point of both vectors is deleted (S5) and the variable X is incremented (S6). On the other hand, if it is determined to be (NO) in either step S3 or S4, (S7) the variable R is substituted with (R + X), leaving the data D (R + X), and the variable X is initialized to "1" (S8). ). Then, if all the log data has not been searched (S9; NO), the process returns to step S3. The above steps S3 to S9 are downsampling processes.

全てのログデータを探索し終えると(S9;YES)、計算用ノード作成処理に移行する。当該処理の対象は、ダウンサンプリング処理を経た残存動作ログデータである。先ず、探索の開始点が他のノードに統合されていないか否かを判断し(S10)、統合されていなければ(YES)、開始点から次の点までの距離が1mm以下か否かを判断する(S12)。前記距離が1mm以下であれば(YES)、続いて4軸,5軸,6軸の変位量が規定値,ここでは0.457度以下か否かを判断する(S13)。 When all the log data has been searched (S9; YES), the process proceeds to the calculation node creation process. The target of the processing is the remaining operation log data that has undergone the downsampling processing. First, it is determined whether or not the start point of the search is integrated with other nodes (S10), and if it is not integrated (YES), whether or not the distance from the start point to the next point is 1 mm or less. Judgment (S12). If the distance is 1 mm or less (YES), then it is determined whether or not the displacement amounts of the 4-axis, 5-axis, and 6-axis are specified values, here 0.457 degrees or less (S13).

ステップS13で「YES」と判断すると、2つの点を同一のノードとしてデータ配列に記録し(S14)、続いて開始点から全ての点を探索したか否かを判断する(S15)。開始点から全ての点を探索していれば(YES)、残存動作ログデータの全ての点を探索したか否かを判断する(S16)。ここで「YES」と判断すると、ステップS18に移行する。ステップS10,S16でそれぞれ「NO」と判断すると、探索の開始点を1つ進めてから(S11,S17)ステップS10に戻る。また、ステップS12,S13でそれぞれ「NO」と判断すると、ステップS15に移行する。ここまでが計算用ノード作成処理となる。 If "YES" is determined in step S13, the two points are recorded in the data array as the same node (S14), and then it is determined whether or not all the points have been searched from the starting point (S15). If all the points have been searched from the start point (YES), it is determined whether or not all the points of the remaining operation log data have been searched (S16). If "YES" is determined here, the process proceeds to step S18. If "NO" is determined in each of steps S10 and S16, the search start point is advanced by one, and then the process returns to step S10 (S11, S17). Further, if it is determined as "NO" in steps S12 and S13, the process proceeds to step S15. Up to this point is the calculation node creation process.

ステップS18は経路探索処理であり、計算用ノード作成処理によって作成された、つまり一部について統合が行われたノードを元に、ゴールすなわち復帰原点までの経路の距離が最短となるようにグラフ探索を行う(S18)。それから、経路作成処理となるステップS19に移行する。 Step S18 is a route search process, and is a graph search so that the distance of the route to the goal, that is, the return origin is the shortest based on the node created by the calculation node creation process, that is, the node is partially integrated. (S18). Then, the process proceeds to step S19, which is the route creation process.

ステップS19では、探索された復帰経路上における現在のノードとその次のノードとが、時系列的に離れているか否かを判断する。ここで、「時系列的に離れている」か否かは、例えばログデータのサンプリング周期を閾値として、2つのノード間が、その周期の2倍以上であれば「離れている」と判断する。2つのノード間が時系列的に離れていなければ(NO)、それらのノードをそのまま復帰経路に登録する(S20)。一方、時系列的に離れていれば(YES)、2つのノード間の経路上に存在する残存ログデータを補間して、これらを併せて復帰経路に登録する(S21)。 In step S19, it is determined whether or not the current node and the next node on the searched return path are separated in time series. Here, whether or not the two nodes are "separated in time series" is determined to be "separated" if, for example, the sampling cycle of the log data is set as a threshold and the two nodes are at least twice the cycle. .. If the two nodes are not separated in time series (NO), those nodes are registered in the return path as they are (S20). On the other hand, if they are separated in time series (YES), the remaining log data existing on the path between the two nodes is interpolated, and these are also registered in the return path (S21).

それから、復帰経路の最終ノード,つまり復帰原点まで復帰経路に登録したか否かを判断し(S23)、最終ノードまで登録していなければ(NO)、経路作成処理を次のノードに進めてから(S22)ステップS19に戻る。ここまでが経路作成処理である。最終ノードまで登録が完了すると(YES)、ロボット10を動作させ、経路に沿って原点まで復帰させる原点位置復帰処理(S24)を行う。 Then, it is determined whether or not the final node of the return path, that is, whether or not the return path has been registered to the return origin (S23), and if the final node has not been registered (NO), the route creation process is advanced to the next node. (S22) Return to step S19. This is the route creation process. When the registration to the final node is completed (YES), the robot 10 is operated and the origin position return process (S24) for returning to the origin along the path is performed.

以上のように本実施形態によれば、ロボットコントローラ20に搭載される原点復帰経路探索装置25において、復帰経路探索処理部252は、ロボット10の軌道が直線になる部分があると、その直線の両端にある2点の動作ログデータの間にある動作ログデータを削除するダウンサンプリング処理を行い、当該処理を完了した時点で残っている残存動作ログデータを復帰経路の探索に使用する。すなわち、ロボット10の軌道が直線になる区間については、その直線の両端に位置する動作ログデータがあれば復帰経路を問題なく探索できる。したがって、復帰経路の探索に使用する動作ログデータの数を減らして探索に要する時間を低減できる。 As described above, according to the present embodiment, in the origin return path search device 25 mounted on the robot controller 20, when the return path search processing unit 252 has a portion where the trajectory of the robot 10 becomes a straight line, the straight line is formed. A downsampling process is performed to delete the operation log data between the two operation log data at both ends, and the remaining operation log data remaining when the process is completed is used to search for the return route. That is, for the section where the trajectory of the robot 10 becomes a straight line, the return route can be searched without any problem if there is operation log data located at both ends of the straight line. Therefore, the number of operation log data used for the search for the return route can be reduced to reduce the time required for the search.

具体的には、復帰経路探索処理部252は、動作ログデータD(R+X)及びD(R)で決まる第1ベクトルと、動作ログデータD(R+X)及びD(R+X+1)で決まる第2ベクトルとが、ロボット10の手先の位置及び姿勢のそれぞれについて成す角度が閾値を超えていればデータD(R+X)を削除し、変数Xをインクリメントしてから同様に、第1及び第2ベクトルが成す角度を閾値と比較する。第1及び第2ベクトルが成す角度が閾値以下であれば動作ログデータD(R+X)を残し、動作ログデータD(R+X)を次の動作ログデータD(R)に設定し、つまり、変数「R+X」を変数Xに代入し、変数Xを初期値「1」に設定してから同様に第1及び第2ベクトルが成す角度を閾値と比較するダウンサンプリング処理を繰り返し行う。そして、データD(R+X+1)が現在位置に達するとダウンサンプリング処理を停止する。 Specifically, the return route search processing unit 252 includes a first vector determined by the operation log data D (R + X) and D (R) and a second vector determined by the operation log data D (R + X) and D (R + X + 1). However, if the angles formed by the positions and postures of the hands of the robot 10 exceed the threshold value, the data D (R + X) is deleted, the variable X is incremented, and then the angles formed by the first and second vectors are similarly formed. Is compared with the threshold. If the angle formed by the first and second vectors is equal to or less than the threshold value, the operation log data D (R + X) is left, and the operation log data D (R + X) is set in the next operation log data D (R), that is, the variable " After substituting "R + X" into the variable X and setting the variable X to the initial value "1", the downsampling process of comparing the angle formed by the first and second vectors with the threshold value is repeated. Then, when the data D (R + X + 1) reaches the current position, the downsampling process is stopped.

このように構成すれば、前記閾値の設定により、3点の動作ログデータD(R),D(R+X)及びD(R+X+1)が直線上に並んでいると判断すれば、間に位置する動作ログデータD(R+X)を削除して、復帰経路の探索に使用する動作ログデータの数を減らすことができる。 With this configuration, if it is determined that the operation log data D (R), D (R + X) and D (R + X + 1) at three points are arranged on a straight line by setting the threshold value, the operation located between them. The log data D (R + X) can be deleted to reduce the number of operation log data used for the search for the return route.

また、復帰経路探索処理部252は、残存動作ログデータについて、隣り合う2つの動作ログデータに基づくロボット10の手先の位置及び姿勢の変化量がそれぞれ閾値以下であれば、それら2つの動作ログデータに応じて決まるノードを1つのノードに統合する統合処理を行い、その統合処理を経たノードを復帰経路の探索に使用する。これにより、復帰経路の探索に使用するノード数を低減でき、探索に要する時間を更に低減できる。 Further, regarding the remaining operation log data, the return route search processing unit 252 determines that the change amount of the hand position and the posture of the robot 10 based on the two adjacent operation log data is equal to or less than the threshold value, the two operation log data. An integration process is performed to integrate the nodes determined according to the above into one node, and the node that has undergone the integration process is used to search for a return route. As a result, the number of nodes used for the search for the return route can be reduced, and the time required for the search can be further reduced.

更に、復帰経路探索処理部252は、統合処理を経たノードに基づいて復帰経路を探索すると、ダウンサンプリング処理で削除した動作ログデータのうち、2つのノード間を結ぶ経路上に位置するものがあれば、当該動作ログデータに基づくノードを2つのノード間に補間して復帰経路を生成する。これにより、ロボット10が復帰原点から現在位置まで移動した軌跡を、より精確に逆方向にトレースさせることができ、ロボット10を復帰原点まで移動させる間に、障害物等に接触等する可能性をより低減できる。 Further, when the return route search processing unit 252 searches for a return route based on the node that has undergone the integrated processing, some of the operation log data deleted in the downsampling processing is located on the route connecting the two nodes. For example, a node based on the operation log data is interpolated between the two nodes to generate a return path. As a result, the locus of the robot 10 moving from the return origin to the current position can be traced more accurately in the opposite direction, and there is a possibility of contact with an obstacle or the like while the robot 10 is moved to the return origin. It can be further reduced.

(第2実施形態)
第2実施形態は、復帰経路探索における間引き処理の他の例を示す。第1実施形態で述べたように、間引き処理の閾値を179度に設定している。従って、図13から図15に示すように、第1ベクトルと第2ベクトルとがなす角度が179度であれば、これら2つの線分の繋がりは厳密には直線と言えないものの、実質的に直線として扱っても問題ないことを意味している。
(Second Embodiment)
The second embodiment shows another example of the thinning process in the return route search. As described in the first embodiment, the threshold value of the thinning process is set to 179 degrees. Therefore, as shown in FIGS. 13 to 15, if the angle formed by the first vector and the second vector is 179 degrees, the connection between these two line segments cannot be said to be a straight line, but it is substantially a straight line. It means that there is no problem even if it is treated as a straight line.

図13において、t2→t1を第1ベクトル、t2→t3を第2ベクトルとすると、これらのベクトルがなす角度が179度未満であれば、生ログデータt2は間引きされずに残存する。次に、t3→t2を第1ベクトル、t3→t4を第2ベクトルとすると、これらのベクトルがなす角度が179度であれば、生ログデータt3は間引きされる。 In FIG. 13, assuming that t2 → t1 is the first vector and t2 → t3 is the second vector, if the angle formed by these vectors is less than 179 degrees, the raw log data t2 remains without being thinned out. Next, assuming that t3 → t2 is the first vector and t3 → t4 is the second vector, if the angle formed by these vectors is 179 degrees, the raw log data t3 is thinned out.

また、図14に示すように、生ログデータt1~t4は直線上に並んでいるので、間にあるデータt2、t3は順次間引きされる。一方、生ログデータt4~t7は直線上には並んでいないが、t5→t4を第1ベクトル、t5→t6を第2ベクトルとすると、これらのベクトルがなす角度が179度以上であるから、生ログデータt5は間引きされる。そして、t6→t4を第1ベクトル、t6→t7を第2ベクトルとすると、これらのベクトルがなす角度も179度以上であるから、図15に示すように生ログデータt6も間引きされる。 Further, as shown in FIG. 14, since the raw log data t1 to t4 are arranged on a straight line, the data t2 and t3 in between are sequentially thinned out. On the other hand, the raw log data t4 to t7 are not arranged on a straight line, but if t5 → t4 is the first vector and t5 → t6 is the second vector, the angle formed by these vectors is 179 degrees or more. The raw log data t5 is thinned out. When t6 → t4 is the first vector and t6 → t7 is the second vector, the angle formed by these vectors is also 179 degrees or more, so that the raw log data t6 is also thinned out as shown in FIG.

本発明は上記し且つ図面に記載した各実施形態に限定されるものではなく、その要旨を逸脱しない範囲で任意に変形、組み合わせ、あるいは拡張することができる。
ダウンサンプリング処理は、必ずしも図3から図5に示す手順で行う必要はない。
近接する2つのノードを統合する処理は、必要に応じて行えば良い。
2つのノード間に位置する動作ログデータを補間する処理も、必要に応じて行えば良い。
各閾値の具体数値は、個別の設計に応じて変更すれば良い。
経路探索の手法は、グラフ探索に限らない。
The present invention is not limited to the embodiments described above and shown in the drawings, and can be arbitrarily modified, combined, or extended without departing from the gist thereof.
The downsampling process does not necessarily have to be performed by the procedure shown in FIGS. 3 to 5.
The process of integrating two adjacent nodes may be performed as needed.
The process of interpolating the operation log data located between the two nodes may also be performed as needed.
The specific numerical value of each threshold value may be changed according to the individual design.
The method of route search is not limited to graph search.

図面中、1はロボットシステム、10はロボット、22は記憶部、24は動作ログデータ記録装置、241は生ログデータ取得処理部、242はダウンサンプリング処理部、243は記録処理部、25は原点復帰経路探索装置、251は復帰点処理部、252は復帰経路探索処理部を示す。
In the drawing, 1 is a robot system, 10 is a robot, 22 is a storage unit, 24 is an operation log data recording device, 241 is a raw log data acquisition processing unit, 242 is a downsampling processing unit, 243 is a recording processing unit, and 25 is an origin. The return route search device, 251 indicates a return point processing unit, and 252 indicates a return route search processing unit.

Claims (10)

記録部に記録されているロボットの動作ログデータに基づいて、前記ロボットを、現在位置から前記ロボットの軌道上に設定された復帰原点まで復帰させるための経路である復帰経路を探索するため、前記復帰原点から前記現在位置に至るまでの全ての前記動作ログデータを辿る際に、
前記ロボットの軌道が直線になる部分があると、その直線の両端にある2点の動作ログデータの間にある動作ログデータを削除する間引き処理を行い、前記間引き処理を完了した時点で残っている残存動作ログデータを、前記復帰経路の探索に使用する復帰経路探索処理部を備えるロボットの原点復帰経路探索装置。
In order to search for a return route, which is a route for returning the robot from the current position to the return origin set on the orbit of the robot, based on the operation log data of the robot recorded in the recording unit. When tracing all the operation log data from the return origin to the current position,
If there is a part where the trajectory of the robot becomes a straight line, a thinning process is performed to delete the motion log data between the two points of motion log data at both ends of the straight line, and the robot remains when the thinning process is completed. A robot origin return route search device including a return route search processing unit that uses the remaining operation log data for searching the return route.
記録部に記録されているロボットの動作ログデータに基づいて、前記ロボットを、現在位置から前記ロボットの軌道上に設定された復帰原点まで復帰させるための経路である復帰経路を探索するため、前記復帰原点から前記現在位置に至るまでの全ての前記動作ログデータを辿る際に、
前記ロボットの軌道において連続する2つの線分が直線と見なすことができると、それら2つの線分の両端にある2点の動作ログデータの間にある動作ログデータを削除する間引き処理を行い、前記間引き処理を完了した時点で残っている残存動作ログデータを、前記復帰経路の探索に使用する復帰経路探索処理部を備えるロボットの原点復帰経路探索装置。
In order to search for a return route, which is a route for returning the robot from the current position to the return origin set on the orbit of the robot, based on the operation log data of the robot recorded in the recording unit. When tracing all the operation log data from the return origin to the current position,
When two continuous line segments can be regarded as straight lines in the trajectory of the robot, a thinning process is performed to delete the operation log data between the two points of the operation log data at both ends of the two line segments. A robot origin return route search device including a return route search processing unit that uses the remaining operation log data remaining at the time when the thinning process is completed to search for the return route.
前記復帰経路探索処理部は、3点の動作ログデータD(R;Rの初期値は前記復帰原点を示す),D(R+X;Xは自然数で初期値は「1」),D(R+X+1)について、
前記動作ログデータD(R+X)と前記動作ログデータD(R)とで決まる第1ベクトルと、
前記動作ログデータD(R+X)と前記動作ログデータD(R+X+1)とで決まる第2ベクトルとが、前記ロボットの手先の位置及び姿勢のそれぞれについて成す角度が閾値を超えていれば、前記動作ログデータD(R+X)を削除し、前記変数Xをインクリメントしてから前記第1ベクトルと前記第2ベクトルとが成す角度を前記閾値と比較し、
前記角度が前記閾値以下であれば前記動作ログデータD(R+X)を残し、当該D(R+X)を次の動作ログデータD(R)に設定し、前記変数Xを初期値「1」に設定して前記第1ベクトルと前記第2ベクトルとが成す角度を前記閾値と比較する間引き処理を繰り返し、
前記動作ログデータD(R+X+1)が前記現在位置に達すると前記間引き処理を停止する請求項1又は2記載のロボットの原点復帰経路探索装置。
The return route search processing unit has three operation log data D (R; the initial value of R indicates the return origin), D (R + X; X is a natural number and the initial value is “1”), and D (R + X + 1). about,
The first vector determined by the operation log data D (R + X) and the operation log data D (R),
If the angle formed by the second vector determined by the operation log data D (R + X) and the operation log data D (R + X + 1) for each of the position and posture of the hand of the robot exceeds the threshold value, the operation log After deleting the data D (R + X) and incrementing the variable X, the angle formed by the first vector and the second vector is compared with the threshold value.
If the angle is equal to or less than the threshold value, the operation log data D (R + X) is left, the D (R + X) is set to the next operation log data D (R), and the variable X is set to the initial value "1". Then, the thinning process of comparing the angle formed by the first vector and the second vector with the threshold value is repeated.
The robot origin return path search device according to claim 1 or 2, wherein when the operation log data D (R + X + 1) reaches the current position, the thinning process is stopped.
前記復帰経路探索処理部は、前記残存動作ログデータについて、隣り合う2つの動作ログデータに基づく前記ロボットの手先の位置及び姿勢の変化量がそれぞれ閾値以下であれば、前記2つの動作ログデータに応じて決まるノードを1つのノードに統合する統合処理を行い、前記統合処理を経たノードを前記復帰経路の探索に使用する請求項1から3の何れか一項に記載のロボットの原点復帰経路探索装置。 If the change amount of the position and posture of the hand of the robot based on the two adjacent operation log data is equal to or less than the threshold value, the return path search processing unit uses the remaining operation log data as the two operation log data. The origin return route search of the robot according to any one of claims 1 to 3, wherein the integrated process of integrating the nodes determined according to the above into one node is performed, and the node that has undergone the integrated process is used for the search of the return route. Device. 前記復帰経路探索処理部は、前記統合処理を経たノードに基づいて前記復帰経路を探索すると、前記間引き処理で削除した動作ログデータのうち、2つのノード間を結ぶ経路上に位置するものがあれば、当該動作ログデータに基づくノードを前記2つのノード間に補間して復帰経路を生成する請求項4記載のロボットの原点復帰経路探索装置。 When the return route search processing unit searches for the return route based on the node that has undergone the integrated processing, some of the operation log data deleted in the thinning process is located on the route connecting the two nodes. For example, the robot origin return route search device according to claim 4, wherein a node based on the operation log data is interpolated between the two nodes to generate a return route. CPUを備え、ロボットの動作ログデータを記録可能な記録部にアクセス可能な制御部に、
記録部に記録されているロボットの動作ログデータに基づいて、前記ロボットを、現在位置から前記ロボットの軌道上に設定された復帰原点まで復帰させるための経路である復帰経路を探索させるため、前記復帰原点から前記現在位置に至るまでの全ての前記動作ログデータを辿る際に、
前記ロボットの軌道が直線になる部分があると、その直線の両端にある2点の動作ログデータの間にある動作ログデータを削除する間引き処理を行い、前記間引き処理を完了した時点で残っている残存動作ログデータを、前記復帰経路の探索に使用する復帰経路探索処理を実行させるロボットの原点復帰経路探索プログラム。
A control unit that has a CPU and can access a recording unit that can record robot operation log data.
In order to search for a return route, which is a route for returning the robot from the current position to the return origin set on the orbit of the robot, based on the operation log data of the robot recorded in the recording unit. When tracing all the operation log data from the return origin to the current position,
If there is a part where the trajectory of the robot becomes a straight line, a thinning process is performed to delete the motion log data between the two points of motion log data at both ends of the straight line, and the robot remains when the thinning process is completed. A robot origin return route search program that executes a return route search process that uses the remaining operation log data to search for the return route.
CPUを備え、ロボットの動作ログデータを記録可能な記録部にアクセス可能な制御部に、
記録部に記録されているロボットの動作ログデータに基づいて、前記ロボットを、現在位置から前記ロボットの軌道上に設定された復帰原点まで復帰させるための経路である復帰経路を探索させるため、前記復帰原点から前記現在位置に至るまでの全ての前記動作ログデータを辿る際に、
前記ロボットの軌道において連続する2つの線分が直線と見なすことができると、それら2つの線分の両端にある2点の動作ログデータの間にある動作ログデータを削除する間引き処理を行い、前記間引き処理を完了した時点で残っている残存動作ログデータを、前記復帰経路の探索に使用する復帰経路探索処理を実行させるロボットの原点復帰経路探索プログラム。
A control unit that has a CPU and can access a recording unit that can record robot operation log data.
In order to search for a return route, which is a route for returning the robot from the current position to the return origin set on the orbit of the robot, based on the operation log data of the robot recorded in the recording unit. When tracing all the operation log data from the return origin to the current position,
When two continuous line segments can be regarded as straight lines in the trajectory of the robot, a thinning process is performed to delete the operation log data between the two points of the operation log data at both ends of the two line segments. A robot origin return route search program that executes a return route search process using the remaining operation log data remaining at the time when the thinning process is completed to search for the return route.
前記復帰経路探索処理において、時系列に並ぶ3点の動作ログデータD(R;Rの初期値は前記復帰原点を示す),D(R+X;Xは自然数で初期値は「1」),D(R+X+1)につき、
前記動作ログデータD(R+X)と前記動作ログデータD(R)とで決まる第1ベクトルと、
前記動作ログデータD(R+X)と前記動作ログデータD(R+X+1)とで決まる第2ベクトルとが、前記ロボットの手先の位置及び姿勢のそれぞれについて成す角度が閾値を超えていれば、前記動作ログデータD(R+X)を削除し、前記変数Xをインクリメントしてから前記第1ベクトルと前記第2ベクトルとが成す角度を前記閾値と比較し、
前記角度が前記閾値以下であれば前記動作ログデータD(R+X)を残し、当該D(R+X)を次の動作ログデータD(R)に設定し、前記変数Xを初期値「1」に設定して前記第1ベクトルと前記第2ベクトルとが成す角度を前記閾値と比較する間引き処理を繰り返し、
前記動作ログデータD(R+X+1)が前記現在位置に達すると前記間引き処理を停止させる請求項6又は7記載のロボットの原点復帰経路探索プログラム。
In the return route search process, operation log data D (R; initial value of R indicates the return origin), D (R + X; X is a natural number and the initial value is “1”), D of three points arranged in time series. For (R + X + 1)
The first vector determined by the operation log data D (R + X) and the operation log data D (R),
If the angle formed by the second vector determined by the operation log data D (R + X) and the operation log data D (R + X + 1) for each of the position and posture of the hand of the robot exceeds the threshold value, the operation log After deleting the data D (R + X) and incrementing the variable X, the angle formed by the first vector and the second vector is compared with the threshold value.
If the angle is equal to or less than the threshold value, the operation log data D (R + X) is left, the D (R + X) is set to the next operation log data D (R), and the variable X is set to the initial value “1”. Then, the thinning process of comparing the angle formed by the first vector and the second vector with the threshold value is repeated.
The robot origin return route search program according to claim 6 or 7, wherein when the operation log data D (R + X + 1) reaches the current position, the thinning process is stopped.
前記復帰経路探索処理において、前記残存動作ログデータについて、隣り合う2つの動作ログデータに基づく前記ロボットの手先の位置及び姿勢の変化量がそれぞれ閾値以下であれば、前記2つの動作ログデータに応じて決まるノードを1つのノードに統合する統合処理を行わせ、前記統合処理を経たノードを前記復帰経路の探索に使用させる請求項6から8の何れか一項に記載のロボットの原点復帰経路探索プログラム。 In the return path search process, if the amount of change in the position and posture of the robot's hand based on the two adjacent operation log data is equal to or less than the threshold value for the remaining operation log data, the two operation log data are supported. The origin return route search of the robot according to any one of claims 6 to 8, wherein the integrated process for integrating the nodes determined by the above into one node is performed, and the node that has undergone the integrated process is used for the search for the return route. program. 前記復帰経路探索処理において、前記統合処理を経たノードに基づいて前記復帰経路を探索させると、前記間引き処理で削除した動作ログデータのうち、2つのノード間を結ぶ経路上に位置するものがあれば、当該動作ログデータに基づくノードを前記2つのノード間に補間して復帰経路を生成させる請求項9記載のロボットの原点復帰経路探索プログラム。
In the return route search process, when the return route is searched based on the node that has undergone the integrated process, some of the operation log data deleted in the thinning process is located on the path connecting the two nodes. For example, the robot origin return route search program according to claim 9, wherein a node based on the operation log data is interpolated between the two nodes to generate a return route.
JP2021163458A 2020-10-29 2021-10-04 Search device for robot origin return route and search program for robot origin return route Pending JP2022073999A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020181426 2020-10-29
JP2020181426 2020-10-29

Publications (1)

Publication Number Publication Date
JP2022073999A true JP2022073999A (en) 2022-05-17

Family

ID=81604724

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021163458A Pending JP2022073999A (en) 2020-10-29 2021-10-04 Search device for robot origin return route and search program for robot origin return route

Country Status (1)

Country Link
JP (1) JP2022073999A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024203381A1 (en) * 2023-03-30 2024-10-03 Omron Corporation Method and apparatus for improved sampling-based graph generation for online path planning by a robot

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024203381A1 (en) * 2023-03-30 2024-10-03 Omron Corporation Method and apparatus for improved sampling-based graph generation for online path planning by a robot

Similar Documents

Publication Publication Date Title
JP6705977B2 (en) Robot path generation device and robot system
CN110576436B (en) Route planning device, route planning method, and computer-readable recording medium
JP5044991B2 (en) Route creation apparatus and route creation method
JP2512099B2 (en) Robot motion teaching method and control device
CN111328305B (en) Control apparatus, work robot, program, and control method
WO2019009350A1 (en) Route output method, route output system and route output program
JP2019532827A (en) Method for collision avoidance motion planning
JP4942672B2 (en) Robot trajectory control apparatus and robot trajectory control method
JP6895082B2 (en) Interference determination method, interference determination system and computer program
JP5458769B2 (en) Robot control device
Langsfeld et al. Integration of planning and deformation model estimation for robotic cleaning of elastically deformable objects
JPH0310782A (en) Motion control method for robot
WO2004108365A1 (en) Teaching data preparing method for articulated robot
JP2022073999A (en) Search device for robot origin return route and search program for robot origin return route
CN113290553A (en) Trajectory generation device, multi-link system, and trajectory generation method
Polden et al. Adaptive partial shortcuts: Path optimization for industrial robotics
JP4451725B2 (en) Robot motion planning method, robot motion planning device, program, and recording medium
US20230103364A1 (en) Device for controlling return of robot to origin thereof, and method of searching return path of robot to origin thereof
Alatartsev et al. Improving the sequence of robotic tasks with freedom of execution
JP2021024019A (en) Trajectory generation device
JP4196911B2 (en) Orbit determination system and orbit determination method
JP2021175595A (en) Simulator, robot teaching device, robot system, simulation method, program, and recording medium
JP7424030B2 (en) Robot motion log data recording device and motion log data recording program
CN116690552A (en) Origin recovery control device for robot and searching method for origin recovery path of robot
JP7463710B2 (en) Origin return path search device for robot and origin return path search program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240719