JP2021154407A - Control device, method for controlling control device, information processing program and recording medium - Google Patents
Control device, method for controlling control device, information processing program and recording medium Download PDFInfo
- Publication number
- JP2021154407A JP2021154407A JP2020054875A JP2020054875A JP2021154407A JP 2021154407 A JP2021154407 A JP 2021154407A JP 2020054875 A JP2020054875 A JP 2020054875A JP 2020054875 A JP2020054875 A JP 2020054875A JP 2021154407 A JP2021154407 A JP 2021154407A
- Authority
- JP
- Japan
- Prior art keywords
- robot arm
- posture
- origin
- robot
- range
- 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.)
- Granted
Links
Images
Landscapes
- Manipulator (AREA)
Abstract
Description
本発明は、自由度が2以上であるロボットアームの制御装置等に関する。 The present invention relates to a robot arm control device or the like having two or more degrees of freedom.
従来、生産現場等で用いるロボットを原点位置へと復帰させるための各種の試みが知られている。例えば、下掲の特許文献1から4には、ロボットのアームおよびハンドが周辺の機器および構造物等に衝突しないように、ロボットを原点復帰させる方法が開示されている。
Conventionally, various attempts have been known to return a robot used at a production site or the like to the origin position. For example,
しかしながら、従来の原点復帰方法には、適用可能な状況が限られていたり、理論上の適用範囲は広いが、実現に際して必要となる情報量、計算負荷等が膨大で、そのような実現コストを考慮すると、実際に適用するのは困難であったりするという問題がある。 However, although the applicable situation is limited or the theoretical application range is wide in the conventional origin return method, the amount of information required for realization, the calculation load, etc. are enormous, and such realization cost is increased. Considering this, there is a problem that it may be difficult to actually apply it.
本発明の一態様は、実現コストを抑制しつつ、ロボットの置かれている状況に依存せずに、ロボットを、障害物等との衝突を回避しつつ原点位置へと復帰させることができるようにすることを目的とする。 One aspect of the present invention is such that the robot can be returned to the origin position while avoiding a collision with an obstacle or the like, without depending on the situation in which the robot is placed, while suppressing the realization cost. The purpose is to.
上記の課題を解決するために、本発明の一態様に係る制御装置は、自由度が2以上であるロボットアームの制御装置であって、前記ロボットアームの姿勢について、衝突を発生させることなく、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で、前記ロボットアームを原点復帰させることができると予測される範囲が、予め許可範囲として設定されており、前記ロボットアームの姿勢が、前記許可範囲内にあると判定されると、ユーザに判定結果を通知する通知部と、前記通知部によって前記判定結果を通知された前記ユーザから、原点復帰の実行指示があると、前記ロボットアームを、前記許可範囲内にあると判定された姿勢から、前記手先の位置を原点姿勢における前記手先の位置へと直行させる経路で、原点復帰させる復帰指示部と、を備えている。 In order to solve the above problems, the control device according to one aspect of the present invention is a control device for a robot arm having two or more degrees of freedom, and the posture of the robot arm does not cause a collision. A range in which the robot arm is predicted to be able to return to the origin is set in advance as a permitted range in a path that directs the position of the hand to the position of the hand in the origin posture, and the posture of the robot arm is set. When it is determined that the robot is within the permitted range, the robot notifies the user of the determination result, and the user who has been notified of the determination result by the notification unit gives an instruction to return to the origin. The arm is provided with a return instruction unit for returning to the origin by a path that linearizes the position of the hand from the posture determined to be within the permitted range to the position of the hand in the origin posture.
前記の構成によれば、前記制御装置は、「前記ロボットアームの姿勢が、予め設定されている前記許可範囲内にある」と判定されると、その判定結果をユーザに通知する。前記判定結果を通知された前記ユーザは、「実際に、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で、前記ロボットアームを原点復帰させた場合に、衝突が発生することがないか」を確認する。そして、「実際に、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で、前記ロボットアームを原点復帰させた場合に、衝突が発生することがない」ことを確認すると、前記ユーザは、前記制御装置に、原点復帰の実行指示を与える。前記判定結果の通知を契機として実際の状況を確認した前記ユーザから、「原点復帰の実行指示」があると、前記制御装置は、前記ロボットアームを原点復帰させる。具体的には、前記制御装置は、前記ロボットアームを、前記許可範囲内にあると判定された姿勢から、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で、原点復帰させる。 According to the above configuration, when the control device determines that "the posture of the robot arm is within the preset permission range", the control device notifies the user of the determination result. The user who was notified of the determination result said, "A collision may occur when the robot arm is returned to the origin by a path that actually directs the position of the hand to the position of the hand in the origin posture. Check if there is any. Then, when it is confirmed that "a collision does not occur when the robot arm is returned to the origin by a path that actually directs the position of the hand to the position of the hand in the origin posture", the user Gives the control device an instruction to return to the origin. When the user who has confirmed the actual situation with the notification of the determination result gives an "execution instruction for returning to the origin", the control device returns the robot arm to the origin. Specifically, the control device returns the robot arm to the origin by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture from the posture determined to be within the permitted range.
つまり、前記制御装置は、「手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰させたとしても障害物等との衝突を回避できる」と予想される姿勢を前記ロボットアームがとっていると判定すると、ユーザにその旨を通知する。そして、前記制御装置は、「実際にその姿勢から原点復帰させてよいか」をユーザに確認させる。特に、前記制御装置は、ユーザに、「前記ロボットアームが実際に現在置かれている状況において、前記ロボットアームが現在とっている姿勢から、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰させてよいか」を確認させる。前記制御装置は、「前記ロボットアームが実際に現在置かれている状況において、前記ロボットアームが現在とっている姿勢から、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰させてよい」とユーザが確認するのを待つ。そして、ユーザが上述の確認を行って、前記制御装置に原点復帰を指示すると、前記制御装置は、前記ロボットアームを原点復帰させる。具体的には、前記制御装置は、前記ロボットアームが現在とっている姿勢から、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で、前記ロボットアームを原点復帰させる。 That is, the control device takes a posture expected to be "a collision with an obstacle or the like can be avoided even if the position of the hand is returned to the origin by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture". If it is determined that the result is taken, the user is notified to that effect. Then, the control device causes the user to confirm "whether the origin may actually be returned from that posture". In particular, the control device tells the user, "In the situation where the robot arm is actually currently placed, the position of the hand is directly changed from the posture currently taken by the robot arm to the position of the hand in the origin posture. Is it okay to return to the origin by the path to be made? " The control device returns to the origin by a path that linearizes the position of the hand from the posture currently taken by the robot arm to the position of the hand in the origin posture in the situation where the robot arm is actually currently placed. Wait for the user to confirm. Then, when the user performs the above-mentioned confirmation and instructs the control device to return to the origin, the control device returns the robot arm to the origin. Specifically, the control device returns the robot arm to the origin by a path that makes the position of the hand perpendicular to the position of the hand in the origin posture from the posture currently taken by the robot arm.
ここで、「前記ロボットアームが実際に現在置かれている状況」は、前記ロボットアームを取り囲む物理空間等、「前記ロボットアームの外部の状況」を含む。「前記ロボットアームの外部の状況」は、前記ロボットアームの周囲に存在する壁面、構造物、機器等の状況に加えて、前記ロボットアームの作業対象であるワークの状況も含む。ワークが前記ロボットアームの周囲に載置されている(例えば、前記ロボットアームを備える在荷部に、ワークが載置されている)場合、載置されているワークの状態(形状、大きさ、向き等)等も、「前記ロボットアームの外部の状況」の一つである。同様に、例えば、前記ロボットアームがワークを把持している場合には、把持されているワークの状態等も、「前記ロボットアームの外部の状況」の一つである。 Here, the "situation in which the robot arm is actually currently placed" includes a "situation outside the robot arm" such as a physical space surrounding the robot arm. The "outside situation of the robot arm" includes the situation of the work surface, which is the work target of the robot arm, in addition to the situation of the wall surface, the structure, the equipment, etc. existing around the robot arm. When the work is placed around the robot arm (for example, the work is placed on the loading portion provided with the robot arm), the state (shape, size, Orientation, etc.) is also one of the "outside conditions of the robot arm". Similarly, for example, when the robot arm is gripping the work, the state of the gripped work is also one of the "external situations of the robot arm".
「前記ロボットアームが実際に現在置かれている状況」は、「前記ロボットアームの外部の状況」に加えて、「前記ロボットアーム自体の状況」も含む。前記ロボットアーム自体の利用状況、前記ロボットアームの手先(前記ロボットアームの先端。エンドエフェクタ)の形状、大きさ、動作の状態等は、「前記ロボットアーム自体の状況」の一例である。「手先の動作状態」の一例としては、「ワークを把持するための、手先の機構の開閉状態」を挙げることができる。 The "situation in which the robot arm is actually currently placed" includes "the situation of the robot arm itself" in addition to the "situation outside the robot arm". The usage status of the robot arm itself, the shape, size, operation state, and the like of the hand of the robot arm (the tip of the robot arm; the end effector) are examples of the “situation of the robot arm itself”. As an example of the "operating state of the hand", the "opening / closing state of the mechanism of the hand for gripping the work" can be mentioned.
上述の通り、前記制御装置は、ユーザによる「前記ロボットアームが現在とっている姿勢から、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰させてもよいか」の確認の契機を、ユーザに通知する。つまり、前記制御装置は、「前記ロボットアームが実際に現在置かれている状況において、前記ロボットアームが現在とっている姿勢から、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰させてよいか」を、ユーザに判断させる。前記制御装置は、「前記ロボットアームが実際に現在置かれている状況において、前記ロボットアームが現在とっている姿勢から、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰させてよいか」の判断を、ユーザに委ねる。そのため、前記制御装置は、上述の判断に必要となる情報量、計算負荷を軽減することができる。 As described above, the control device confirms by the user "whether the position of the hand may be returned to the origin by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture from the posture currently taken by the robot arm". Notify the user of the opportunity of. That is, the control device is "in a situation where the robot arm is actually currently placed, a path that directs the position of the hand from the posture currently taken by the robot arm to the position of the hand in the origin posture. Let the user decide whether to return to the origin. The control device returns to the origin by a path that linearizes the position of the hand from the posture currently taken by the robot arm to the position of the hand in the origin posture in the situation where the robot arm is actually currently placed. It is up to the user to decide whether to let it. Therefore, the control device can reduce the amount of information and the calculation load required for the above-mentioned determination.
また、前記制御装置は、ユーザによる原点復帰の指示に従って、前記ロボットアームを、現在とっている姿勢から、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰させる。「前記手先の位置を、現在の位置から原点姿勢における前記手先の位置へと直行させる」経路は、「障害物等との衝突を避けるために、様々な情報を用いて、複雑な条件分岐の結果特定される」経路ではなく、予め一意に特定される経路である。そのため、前記制御装置は、「前記ロボットアームが現在とっている姿勢」から、障害物等との衝突を避けつつ、前記ロボットアームを原点復帰させるための経路計算に必要となる情報量、計算負荷を軽減することができる。 Further, the control device returns the robot arm to the origin by a path that makes the position of the hand perpendicular to the position of the hand in the origin posture from the current posture according to the instruction of the return to the origin by the user. The route of "directing the position of the hand from the current position to the position of the hand in the origin posture" is "a complicated conditional branching using various information in order to avoid a collision with an obstacle or the like". It is not a route that is specified as a result, but a route that is uniquely specified in advance. Therefore, the control device has an amount of information and a calculation load required for path calculation for returning the robot arm to the origin while avoiding collision with an obstacle or the like from the "posture currently taken by the robot arm". Can be reduced.
つまり、前記制御装置は、あらゆる姿勢について、あらゆる状況を想定して、「障害物等との衝突を回避しつつ、原点復帰させる経路」を演算する必要がなく、「障害物等との衝突を回避しつつ、原点復帰させる」ために必要とする情報量、計算負荷が少ない。 That is, the control device does not need to calculate "a path for returning to the origin while avoiding a collision with an obstacle or the like" by assuming every situation for every posture, and "collision with an obstacle or the like". The amount of information and the calculation load required to "return to the origin while avoiding" are small.
また、前記制御装置は、ユーザによる上述の確認結果および指示に従って、前記ロボットアームを原点復帰させる。前記制御装置は、「前記ロボットアームが実際に現在置かれている状況」のいかんにかかわらず、ユーザによる上述の確認結果および指示に従って、前記ロボットアームを原点復帰させる。前記制御装置は、「前記ロボットアームが実際に現在置かれている状況」に係るユーザの確認結果を利用することで、前記ロボットアームの置かれている状況に依存せずに、前記ロボットアームを、障害物等との衝突を回避しつつ、原点復帰させることができる。 Further, the control device returns the robot arm to the origin according to the above-mentioned confirmation result and instruction by the user. The control device returns the robot arm to the origin according to the above-mentioned confirmation result and instruction by the user regardless of "the situation in which the robot arm is actually currently placed". The control device uses the confirmation result of the user related to "the situation in which the robot arm is actually currently placed", so that the robot arm can be moved independently of the situation in which the robot arm is placed. , It is possible to return to the origin while avoiding collision with obstacles and the like.
したがって、前記制御装置は、実現コストを抑制しつつ、前記ロボットアームの置かれている状況に依存せずに、前記ロボットアームを、障害物等との衝突を回避しつつ原点位置へと復帰させることができるとの効果を奏する。 Therefore, the control device returns the robot arm to the origin position while suppressing the realization cost and avoiding a collision with an obstacle or the like without depending on the situation in which the robot arm is placed. It has the effect of being able to.
本発明の一態様に係る制御装置において、前記許可範囲は更新可能であってもよい。 In the control device according to one aspect of the present invention, the permitted range may be updatable.
前記の構成によれば、前記制御装置において、前記許可範囲は更新可能である。したがって、前記制御装置は、前記ロボットアームの置かれている状況に応じて適宜更新された前記許可範囲を利用して、前記ロボットアームを、障害物等との衝突を回避しつつ原点位置へと復帰させることができるとの効果を奏する。 According to the above configuration, the permission range is updatable in the control device. Therefore, the control device uses the permitted range appropriately updated according to the situation in which the robot arm is placed to move the robot arm to the origin position while avoiding a collision with an obstacle or the like. It has the effect of being able to recover.
本発明の一態様に係る制御装置において、前記許可範囲は、前記ロボットアームの設計情報に基づいて、ユーザによって設定されてもよい。 In the control device according to one aspect of the present invention, the permission range may be set by the user based on the design information of the robot arm.
前記の構成によれば、前記制御装置において、前記許可範囲は、前記ロボットアームの設計情報に基づいて、例えば、前記ロボットアームの3次元CAD(Computer Aided Design)データと制御に係るデータとに基づいて、ユーザによって設定される。例えば、ユーザは、前記ロボットアームの3次元モデルについて機械的取り合いを検討し、検討結果に基づいて、前記許可範囲を設定する。 According to the above configuration, in the control device, the permission range is based on the design information of the robot arm, for example, based on the three-dimensional CAD (Computer Aided Design) data of the robot arm and the data related to the control. And set by the user. For example, the user examines the mechanical engagement of the three-dimensional model of the robot arm, and sets the permission range based on the examination result.
したがって、前記制御装置は、前記ロボットアームの姿勢が、前記ロボットアームの設計情報に基づいてユーザによって予め設定された前記許可範囲内にあるか否かを判定することができるとの効果を奏する。 Therefore, the control device has an effect of being able to determine whether or not the posture of the robot arm is within the permitted range preset by the user based on the design information of the robot arm.
本発明の一態様に係る制御装置は、前記ロボットアームの3次元モデルを、或る姿勢から、前記手先の位置を原点姿勢における前記手先の位置へと直行させる経路で、原点復帰させた場合に衝突が発生しないと判定すると、前記或る姿勢を含むように前記許可範囲を設定してもよい。 The control device according to one aspect of the present invention returns the origin of the three-dimensional model of the robot arm from a certain posture by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture. If it is determined that the collision does not occur, the permitted range may be set so as to include the certain posture.
前記の構成によれば、前記制御装置は、前記ロボットアームの3次元モデルを或る姿勢から、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰させた場合に衝突が発生しないと判定すると、以下の前記許可範囲を設定する。すなわち、前記制御装置は、前記或る姿勢を含む前記許可範囲を設定する。 According to the above configuration, the control device causes a collision when the three-dimensional model of the robot arm is returned to the origin from a certain posture by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture. If it is determined that the occurrence does not occur, the following permission range is set. That is, the control device sets the permitted range including the certain posture.
したがって、前記制御装置は、前記ロボットアームの3次元モデルを用いたシミュレーション等によって安全性を検証した以下の姿勢を含むように、前記許可範囲を設定できるとの効果を奏する。すなわち、前記制御装置は、「シミュレーション等によって、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰させた場合に衝突が発生しないと判定した」姿勢を含むように、前記許可範囲を設定できるとの効果を奏する。 Therefore, the control device has an effect that the permission range can be set so as to include the following postures whose safety has been verified by simulation or the like using the three-dimensional model of the robot arm. That is, the control device includes the posture in which "it is determined by simulation or the like that a collision does not occur when the position of the hand is returned to the origin by a path orthogonal to the position of the hand in the origin posture". It has the effect of being able to set the permission range.
本発明の一態様に係る制御装置において、前記許可範囲は、衝突を発生させることなく、前記手先の位置を原点姿勢における前記手先の位置へと直行させる経路で、原点復帰できる姿勢として、ユーザが前記ロボットアームを手動で動かして前記ロボットアームにとらせた姿勢を含むように設定されてもよい。 In the control device according to one aspect of the present invention, the permitted range is a posture that allows the user to return to the origin by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture without causing a collision. The robot arm may be manually moved to include a posture taken by the robot arm.
前記の構成によれば、前記制御装置において、前記許可範囲は、ユーザが前記ロボットアームを手動で動かして前記ロボットアームにとらせた、以下の姿勢を含むように設定される。すなわち、前記許可範囲は、「衝突を発生させることなく、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰できる」姿勢として、ユーザが手動で前記ロボットアームにとらせた姿勢を含むように、設定される。例えば、前記許可範囲は、ユーザが「衝突を発生させることなく、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰できる」姿勢としてティーチング(教示)した姿勢を含むように、設定される。 According to the above configuration, in the control device, the permission range is set to include the following postures in which the user manually moves the robot arm and causes the robot arm to take the following postures. That is, the permitted range is manually taken by the user on the robot arm as a posture in which the position of the hand can be returned to the origin by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture without causing a collision. It is set to include the posture. For example, the permission range includes a posture taught by the user as a posture that "can return to the origin by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture without causing a collision". , Set.
したがって、前記制御装置は、ユーザが前記ロボットアームを手動で動かして前記ロボットアームにとらせた以下の姿勢を含むように、前記許可範囲を設定できるとの効果を奏する。すなわち、前記制御装置は、「衝突を発生させることなく、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰できる姿勢として、ユーザがとらせた」姿勢を含むように、前記許可範囲を設定できるとの効果を奏する。 Therefore, the control device has an effect that the permission range can be set so as to include the following postures in which the user manually moves the robot arm and causes the robot arm to take the following postures. That is, the control device includes a posture "taken by the user as a posture capable of returning to the origin by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture without causing a collision". It has the effect of being able to set the permitted range.
本発明の一態様に係る制御装置は、前記ロボットアームの備える関節について、(A)前記関節の動作状態が、前記許可範囲に対応する動作範囲内にあると、前記動作状態を維持し、(B)前記関節の動作状態が、前記許可範囲に対応する動作範囲内にないと、前記動作状態のユーザによる変更を許可する動作状態制御部をさらに備えてもよい。 The control device according to one aspect of the present invention maintains (A) the operating state of the joint provided with the robot arm when the operating state of the joint is within the operating range corresponding to the permitted range. B) If the operating state of the joint is not within the operating range corresponding to the permitted range, an operating state control unit that allows the user to change the operating state may be further provided.
前記の構成によれば、前記制御装置は、前記ロボットアームの備える関節の動作状態が前記許可範囲に対応する動作範囲内にあると、前記動作状態を維持し、例えば、前記関節が動かないように前記関節をロックする。また、前記制御装置は、前記ロボットアームの備える関節の動作状態が前記許可範囲に対応する動作範囲内にないと、前記動作状態のユーザによる変更を許可し、例えば、ユーザが手動で前記ロボットアームの姿勢を変更できるように、前記関節のロックを解除する。 According to the above configuration, when the operating state of the joint included in the robot arm is within the operating range corresponding to the permitted range, the control device maintains the operating state, for example, so that the joint does not move. Lock the joint. Further, the control device allows the user to change the operating state when the operating state of the joint included in the robot arm is not within the operating range corresponding to the permitted range. For example, the user manually manually performs the robot arm. The joint is unlocked so that the posture of the robot can be changed.
ここで、一般的にユーザにとって、「どうすれば、『衝突を発生させることなく、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰できる姿勢』へと、前記ロボットアームの姿勢を変更できるのか?」は、容易には把握できない。 Here, in general, for the user, the posture of the robot arm is changed to "how can the robot arm return to the origin by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture without causing a collision". Is it possible to change? ”Is not easy to grasp.
そこで、前記制御装置は、前記関節の動作状態を制御して、ユーザが「衝突を発生させることなく、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰できる姿勢」へと前記ロボットアームの姿勢を変更するのをサポートする。 Therefore, the control device controls the operating state of the joint so that the user can return to the origin by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture without causing a collision. And supports changing the posture of the robot arm.
「衝突を発生させることなく、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰できる姿勢」を「経由姿勢」と称するとすれば、前記ロボットアームの姿勢を経由姿勢へと変更するのに際して、以下の状況が想定できる。すなわち、前記ロボットアームの姿勢を経由姿勢へと変更するために、前記ロボットアームの備える関節のうち、或る関節の動作状態の変更は不要であり、別の関節の動作状態の変更は必要であるといった状況を想定することができる。 If the "posture in which the position of the hand can be returned to the origin by a path that makes the position of the hand perpendicular to the position of the hand in the origin posture without causing a collision" is referred to as the "via posture", the posture of the robot arm is changed to the transit posture. The following situations can be assumed when changing to. That is, in order to change the posture of the robot arm to the transit posture, it is not necessary to change the operating state of one of the joints provided by the robot arm, and it is necessary to change the operating state of another joint. It is possible to assume a situation such as there is.
そのような場合、前記制御装置は、前記或る関節については、ユーザによって動作状態が変更されるのを防ぎ、つまり、前記或る関節の動作状態を維持して、例えば、前記或る関節の動作状態が変更されないように、前記或る関節をロックする。また、前記制御装置は、前記別の関節については、ユーザによる動作状態の変更を許可し、例えば、前記別の関節の動作状態をユーザが手動で変更できるように、前記別の関節のロックを解除する。 In such a case, the control device prevents the operating state of the joint from being changed by the user, that is, maintains the operating state of the joint, for example, of the joint. The joint is locked so that the operating state is not changed. Further, the control device allows the user to change the operating state of the other joint, and locks the other joint so that the user can manually change the operating state of the other joint, for example. unlock.
したがって、前記制御装置は、ユーザが、前記ロボットアームの姿勢を、「衝突を発生させることなく、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰できる姿勢」へと手動で変更することを容易にするとの効果を奏する。 Therefore, the control device manually changes the posture of the robot arm to "a posture in which the position of the hand can be returned to the origin by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture without causing a collision". It has the effect of facilitating changes with.
前記制御装置は、前記ロボットアームの備える関節のうち、動作状態を維持している関節がどれであるかを示す情報をユーザに通知してもよく、例えば、動かないようにロックしている関節がどれであるかを示す情報をユーザに通知してもよい。同様に、前記制御装置は、前記ロボットアームの備える関節のうち、動作状態のユーザによる変更を許可している関節がどれであるかを示す情報をユーザに通知してもよく、例えば、ロックを解除している関節がどれであるかを示す情報をユーザに通知してもよい。 The control device may notify the user of information indicating which of the joints of the robot arm is maintaining the operating state, for example, a joint that is locked so as not to move. The user may be notified of information indicating which is. Similarly, the control device may notify the user of information indicating which of the joints the robot arm is allowed to be changed by the user in the operating state, for example, locking. The user may be notified of information indicating which joint is being released.
また、前記制御装置は、前記ロボットアームの備える関節のうち、動作状態のユーザによる変更を許可している関節について、ユーザが手動で変更できる動作状態を特定の範囲に制限してもよい。具体的には、前記制御装置は、前記別の関節について、ユーザが手動で変更できる動作状態を特定の範囲に制限してもよい。例えば、前記制御装置は、ユーザが変更できる「関節の角度」を特定範囲に制限したり、ユーザが変更できる「手先の移動量」を特定範囲に制限したりしてもよい。特に、前記制御装置は、ユーザによる「前記別の関節の動作状態に対する変更」のうち、「前記ロボットアームの姿勢を、上述の経由姿勢に近づける、『関節の角度の変更』、『手先の移動量の変更』」のみを、許容してもよい。 Further, the control device may limit the operating state that can be manually changed by the user to a specific range for the joints included in the robot arm that are permitted to be changed by the user in the operating state. Specifically, the control device may limit the operating state that can be manually changed by the user for the other joint to a specific range. For example, the control device may limit the "joint angle" that can be changed by the user to a specific range, or may limit the "movement amount of the hand" that can be changed by the user to a specific range. In particular, in the control device, among the "changes to the operating state of the other joint" by the user, "the posture of the robot arm is brought closer to the above-mentioned transit posture", "change of joint angle", and "movement of hand". Only "change in quantity" may be allowed.
言い換えれば、前記制御装置は、ユーザによる「前記別の関節の動作状態に対する変更」のうち、「前記別の関節の動作状態を、前記許可範囲に対応する前記動作範囲内に収めようとする変更」のみを受け付けてもよい。そして、前記制御装置は、ユーザによる「前記別の関節の動作状態を、前記動作範囲から遠ざける変更」を受け付けず、例えば、ユーザがそのような変更を行えないように、前記別の関節の動作状態を制御してもよい。 In other words, the control device is a change in which the user "changes the operating state of the other joint" so as to "set the operating state of the other joint within the operating range corresponding to the permitted range". May be accepted only. Then, the control device does not accept "changes that move the operating state of the other joint away from the operating range" by the user, and for example, the operation of the other joint is prevented so that the user cannot make such a change. You may control the state.
前記制御装置は、前記ロボットアームの備える関節のうち、動作状態のユーザによる変更を許可している関節(例えば、ロックを解除している関節)について、変更可能な動作状態の範囲(関節の角度、手先の移動量等)を、ユーザに通知してもよい。特に、前記制御装置は、動作状態のユーザによる変更を許可している関節について、前記ロボットアームの姿勢を前記許可範囲内とするのに望ましい動作状態を通知してもよく、例えば、望ましい「関節の角度(回転量)」、望ましい「手先の移動量」等を、ユーザに通知してもよい。 Among the joints included in the robot arm, the control device allows the user to change the operating state of the joint (for example, the unlocked joint) in a range of the operating state (joint angle) that can be changed. , The amount of movement of the hand, etc.) may be notified to the user. In particular, the control device may notify a desired operating state of the joint that is permitted to be changed by the user in the operating state so that the posture of the robot arm is within the permitted range, for example, a desirable "joint". The user may be notified of the “angle (rotation amount)”, the desired “hand movement amount”, and the like.
本発明の一態様に係る制御装置は、前記許可範囲内にない姿勢から、前記許可範囲内にある姿勢(つまり、前述の「経由姿勢」)へと、前記ロボットアームの姿勢を変更する誘導動作を、ユーザによる許可が継続している間、実行してもよい。また、本発明の一態様に係る制御装置は、前記許可がなくなると、前記誘導動作の実行を中断してもよい。 The control device according to one aspect of the present invention is a guidance operation that changes the posture of the robot arm from a posture that is not within the permitted range to a posture that is within the permitted range (that is, the above-mentioned “via posture”). May be executed while the user's permission continues. Further, the control device according to one aspect of the present invention may suspend the execution of the guidance operation when the permission is lost.
前記の構成によれば、前記制御装置は、前記許可範囲内にない姿勢から、前記経由姿勢へと、前記ロボットアームの姿勢を変更する誘導動作を、ユーザによる許可が継続している間、実行する。例えば、前記制御装置は、ユーザによる許可が継続している間、前記ロボットアームの姿勢を、前記許可範囲内にない姿勢から前記経由姿勢へと、手先の位置を「前記経由姿勢における前記手先の位置」へと直行させる経路で、変更し続ける。また、前記制御装置は、前記許可がなくなると、前記誘導動作の実行を中断し、例えば、ユーザが手動で前記ロボットアームの姿勢を変更できるようにする。 According to the above configuration, the control device executes a guidance operation for changing the posture of the robot arm from a posture not within the permitted range to the transit posture while the permission by the user continues. do. For example, the control device changes the posture of the robot arm from a posture that is not within the permission range to the transit posture while the permission by the user continues, and sets the position of the hand to "the hand's posture in the passage posture". Continue to change with a route that goes straight to the "position". Further, the control device interrupts the execution of the guidance operation when the permission is lost, and allows, for example, the user to manually change the posture of the robot arm.
したがって、前記制御装置は、前記誘導動作による姿勢の変更とユーザによる手動での姿勢の変更とを、ユーザの許可の有無に従って切り替えることで、前記ロボットアームの姿勢を効率的かつ安全に、前記許可範囲内にある姿勢へと変更できるとの効果を奏する。 Therefore, the control device efficiently and safely changes the posture of the robot arm by switching between the change of the posture by the guidance operation and the manual change of the posture by the user according to the presence or absence of the permission of the user. It has the effect of being able to change to a posture within the range.
上記の課題を解決するために、本発明の一態様に係る制御方法は、自由度が2以上であるロボットアームの制御装置の制御方法であって、前記ロボットアームの姿勢について、衝突を発生させることなく、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で、前記ロボットアームを原点復帰させることができると予測される範囲が、予め許可範囲として設定されており、前記ロボットアームの姿勢が、前記許可範囲内にあると判定されると、ユーザに判定結果を通知する通知ステップと、前記通知ステップにて前記判定結果を通知された前記ユーザから、原点復帰の実行指示があると、前記ロボットアームを、前記許可範囲内にあると判定された姿勢から、前記手先の位置を原点姿勢における前記手先の位置へと直行させる経路で、原点復帰させる復帰指示ステップと、を含んでいる。 In order to solve the above problems, the control method according to one aspect of the present invention is a control method for a robot arm control device having two or more degrees of freedom, and causes a collision with respect to the posture of the robot arm. A range in which it is predicted that the robot arm can be returned to the origin is set in advance as a permitted range by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture. When it is determined that the posture of the robot is within the permitted range, there is a notification step for notifying the user of the determination result, and the user who has been notified of the determination result in the notification step gives an instruction to return to the origin. And a return instruction step of returning the robot arm to the origin by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture from the posture determined to be within the permitted range. There is.
前記の構成によれば、前記制御方法は、「前記ロボットアームの姿勢が、予め設定されている前記許可範囲内にある」と判定されると、その判定結果をユーザに通知する。前記判定結果を通知された前記ユーザは、「実際に、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で、前記ロボットアームを原点復帰させた場合に、衝突が発生することがないか」を確認する。そして、「実際に、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で、前記ロボットアームを原点復帰させた場合に、衝突が発生することがない」ことを確認すると、前記ユーザは、前記制御方法に、原点復帰の実行指示を与える。例えば、前記ユーザは、前記制御方法を実行する制御装置に、原点復帰の実行指示を与える。前記判定結果の通知を契機として実際の状況を確認した前記ユーザから、「原点復帰の実行指示」があると、前記制御方法は、前記ロボットアームを原点復帰させる。具体的には、前記制御方法は、前記ロボットアームを、前記許可範囲内にあると判定された姿勢から、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で、原点復帰させる。 According to the above configuration, when the control method determines that "the posture of the robot arm is within the preset permission range", the control method notifies the user of the determination result. The user who was notified of the determination result said, "A collision may occur when the robot arm is returned to the origin by a path that actually directs the position of the hand to the position of the hand in the origin posture. Check if there is any. Then, when it is confirmed that "a collision does not occur when the robot arm is returned to the origin by a path that actually directs the position of the hand to the position of the hand in the origin posture", the user Gives the control method an instruction to return to the origin. For example, the user gives an execution instruction for returning to the origin to a control device that executes the control method. When the user who has confirmed the actual situation with the notification of the determination result gives an "execution instruction for returning to the origin", the control method causes the robot arm to return to the origin. Specifically, the control method returns the robot arm to the origin by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture from the posture determined to be within the permitted range.
つまり、前記制御方法は、「手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰させたとしても障害物等との衝突を回避できる」と予想される姿勢を前記ロボットアームがとっていると判定すると、ユーザにその旨を通知する。そして、前記制御方法は、「実際にその姿勢から原点復帰させてよいか」をユーザに確認させる。特に、前記制御方法は、ユーザに、「前記ロボットアームが実際に現在置かれている状況において、前記ロボットアームが現在とっている姿勢から、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰させてよいか」を確認させる。前記制御方法は、「前記ロボットアームが実際に現在置かれている状況において、前記ロボットアームが現在とっている姿勢から、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰させてよい」とユーザが確認するのを待つ。そして、ユーザが上述の確認を行って、前記制御方法に原点復帰を指示すると、前記制御方法は、前記ロボットアームを原点復帰させる。具体的には、前記制御方法は、前記ロボットアームが現在とっている姿勢から、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で、前記ロボットアームを原点復帰させる。 That is, the control method uses the robot arm in a posture that is expected to "avoid collision with an obstacle or the like even if the position of the hand is returned to the origin by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture". If it is determined that the result is taken, the user is notified to that effect. Then, the control method causes the user to confirm "whether the origin may actually be returned from that posture". In particular, the control method tells the user, "In the situation where the robot arm is actually currently placed, the position of the hand is directly changed from the posture currently taken by the robot arm to the position of the hand in the origin posture. Is it okay to return to the origin by the path to be made? " The control method is "returning to the origin by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture from the posture currently taken by the robot arm in the situation where the robot arm is actually currently placed. Wait for the user to confirm. Then, when the user performs the above-mentioned confirmation and instructs the control method to return to the origin, the control method causes the robot arm to return to the origin. Specifically, in the control method, the robot arm is returned to the origin by a path that makes the position of the hand perpendicular to the position of the hand in the origin posture from the posture currently taken by the robot arm.
ここで、「前記ロボットアームが実際に現在置かれている状況」は、前記ロボットアームを取り囲む物理空間等、「前記ロボットアームの外部の状況」を含む。「前記ロボットアームの外部の状況」は、前記ロボットアームの周囲に存在する壁面、構造物、機器等の状況に加えて、前記ロボットアームの作業対象であるワークの状況も含む。ワークが前記ロボットアームの周囲に載置されている(例えば、前記ロボットアームを備える在荷部に、ワークが載置されている)場合、載置されているワークの状態(形状、大きさ、向き等)等も、「前記ロボットアームの外部の状況」の一つである。同様に、例えば、前記ロボットアームがワークを把持している場合には、把持されているワークの状態等も、「前記ロボットアームの外部の状況」の一つである。 Here, the "situation in which the robot arm is actually currently placed" includes a "situation outside the robot arm" such as a physical space surrounding the robot arm. The "outside situation of the robot arm" includes the situation of the work surface, which is the work target of the robot arm, in addition to the situation of the wall surface, the structure, the equipment, etc. existing around the robot arm. When the work is placed around the robot arm (for example, the work is placed on the loading portion provided with the robot arm), the state (shape, size, Orientation, etc.) is also one of the "outside conditions of the robot arm". Similarly, for example, when the robot arm is gripping the work, the state of the gripped work is also one of the "external situations of the robot arm".
「前記ロボットアームが実際に現在置かれている状況」は、「前記ロボットアームの外部の状況」に加えて、「前記ロボットアーム自体の状況」も含む。前記ロボットアーム自体の利用状況、前記ロボットアームの手先(前記ロボットアームの先端。エンドエフェクタ)の形状、大きさ、動作の状態等は、「前記ロボットアーム自体の状況」の一例である。「手先の動作状態」の一例としては、「ワークを把持するための、手先の機構の開閉状態」を挙げることができる。 The "situation in which the robot arm is actually currently placed" includes "the situation of the robot arm itself" in addition to the "situation outside the robot arm". The usage status of the robot arm itself, the shape, size, operation state, and the like of the hand of the robot arm (the tip of the robot arm; the end effector) are examples of the “situation of the robot arm itself”. As an example of the "operating state of the hand", the "opening / closing state of the mechanism of the hand for gripping the work" can be mentioned.
上述の通り、前記制御方法は、ユーザによる「前記ロボットアームが現在とっている姿勢から、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰させてもよいか」の確認の契機を、ユーザに通知する。つまり、前記制御方法は、「前記ロボットアームが実際に現在置かれている状況において、前記ロボットアームが現在とっている姿勢から、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰させてよいか」を、ユーザに判断させる。前記制御方法は、「前記ロボットアームが実際に現在置かれている状況において、前記ロボットアームが現在とっている姿勢から、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰させてよいか」の判断を、ユーザに委ねる。そのため、前記制御方法は、上述の判断に必要となる情報量、計算負荷を軽減することができる。 As described above, in the control method, the user confirms that "whether the position of the hand may be returned to the origin by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture from the posture currently taken by the robot arm". Notify the user of the opportunity of. That is, the control method is "a path that directs the position of the hand from the posture currently taken by the robot arm to the position of the hand in the origin posture in the situation where the robot arm is actually currently placed. Let the user decide whether to return to the origin. The control method is "returning to the origin by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture from the posture currently taken by the robot arm in the situation where the robot arm is actually currently placed. It is up to the user to decide whether to let it. Therefore, the control method can reduce the amount of information and the calculation load required for the above-mentioned determination.
また、前記制御方法は、ユーザによる原点復帰の指示に従って、前記ロボットアームを、現在とっている姿勢から、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で原点復帰させる。「前記手先の位置を、現在の位置から原点姿勢における前記手先の位置へと直行させる」経路は、「障害物等との衝突を避けるために、様々な情報を用いて、複雑な条件分岐の結果特定される」経路ではなく、予め一意に特定される経路である。そのため、前記制御方法は、「前記ロボットアームが現在とっている姿勢」から、障害物等との衝突を避けつつ、前記ロボットアームを原点復帰させるための経路計算に必要となる情報量、計算負荷を軽減することができる。 Further, in the control method, the robot arm is returned to the origin by a path in which the position of the hand is orthogonal to the position of the hand in the origin posture from the current posture according to the instruction of the return to the origin by the user. The route of "directing the position of the hand from the current position to the position of the hand in the origin posture" is "a complicated conditional branching using various information in order to avoid a collision with an obstacle or the like". It is not a route that is specified as a result, but a route that is uniquely specified in advance. Therefore, in the control method, the amount of information and the calculation load required for path calculation for returning the robot arm to the origin while avoiding a collision with an obstacle or the like from the "posture currently taken by the robot arm". Can be reduced.
つまり、前記制御方法は、あらゆる姿勢について、あらゆる状況を想定して、「障害物等との衝突を回避しつつ、原点復帰させる経路」を演算する必要がなく、「障害物等との衝突を回避しつつ、原点復帰させる」ために必要とする情報量、計算負荷が少ない。 That is, in the control method, it is not necessary to calculate "a path for returning to the origin while avoiding a collision with an obstacle or the like" by assuming all situations for every posture, and "collision with an obstacle or the like is caused. The amount of information and the calculation load required to "return to the origin while avoiding" are small.
また、前記制御方法は、ユーザによる上述の確認結果および指示に従って、前記ロボットアームを原点復帰させる。前記制御方法は、「前記ロボットアームが実際に現在置かれている状況」のいかんにかかわらず、ユーザによる上述の確認結果および指示に従って、前記ロボットアームを原点復帰させる。前記制御方法は、「前記ロボットアームが実際に現在置かれている状況」に係るユーザの確認結果を利用することで、前記ロボットアームの置かれている状況に依存せずに、前記ロボットアームを、障害物等との衝突を回避しつつ、原点復帰させることができる。 Further, in the control method, the robot arm is returned to the origin according to the above-mentioned confirmation result and instruction by the user. In the control method, the robot arm is returned to the origin according to the above-mentioned confirmation result and instruction by the user regardless of "the situation in which the robot arm is actually currently placed". The control method uses the confirmation result of the user related to "the situation in which the robot arm is actually currently placed" to control the robot arm without depending on the situation in which the robot arm is placed. , It is possible to return to the origin while avoiding collision with obstacles and the like.
したがって、前記制御方法は、実現コストを抑制しつつ、前記ロボットアームの置かれている状況に依存せずに、前記ロボットアームを、障害物等との衝突を回避しつつ原点位置へと復帰させることができるとの効果を奏する。 Therefore, in the control method, the robot arm is returned to the origin position while avoiding a collision with an obstacle or the like, without depending on the situation in which the robot arm is placed, while suppressing the realization cost. It has the effect of being able to.
本発明の一態様によれば、実現コストを抑制しつつ、ロボットの置かれている状況に依存せずに、ロボットを、障害物等との衝突を回避しつつ原点位置へと復帰させることができるとの効果を奏する。 According to one aspect of the present invention, the robot can be returned to the origin position while avoiding a collision with an obstacle or the like, without depending on the situation in which the robot is placed, while suppressing the realization cost. It has the effect of being able to do it.
〔実施形態1〕
以下、本発明の一側面に係る実施の形態(以下、「本実施形態」とも表記する)を、図面に基づいて説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰返さない。本実施の形態においては、ロボット1の備えるロボット制御部10を、「自由度が2以上であるロボットアームの制御装置」の典型例として説明を行なう。
[Embodiment 1]
Hereinafter, embodiments according to one aspect of the present invention (hereinafter, also referred to as “the present embodiment”) will be described with reference to the drawings. The same or corresponding parts in the drawings are designated by the same reference numerals, and the description thereof will not be repeated. In the present embodiment, the
以下の説明において、「n」、「p」、「q」、「x」、「y」は、各々、「1」以上の整数を示すものとし、「p」と「q」とは互いに異なる整数であり、「x」と「y」とは互いに異なる整数であるものとする。 In the following description, "n", "p", "q", "x", and "y" each indicate an integer of "1" or more, and "p" and "q" are different from each other. It is assumed that "x" and "y" are integers different from each other.
また、ロボットアーム30は、複数の軸AX(「関節」とも称する)を備え、例えば、軸AX(1)から軸AX(6)の6つの軸AXを備えている。ロボットアーム30の備える軸AX(1)、軸AX(2)、・・・、軸AX(n)の各々を特に区別する必要がない場合には、単に「軸AX」と略記することがある。 Further, the robot arm 30 includes a plurality of axis AX (also referred to as “joint”), and includes, for example, six axis AX from axis AX (1) to axis AX (6). When it is not necessary to distinguish each of the axis AX (1), the axis AX (2), ..., And the axis AX (n) provided in the robot arm 30, it may be simply abbreviated as "axis AX". ..
以下、ロボット制御部10がロボットアーム30を原点復帰させる例について詳細を説明するが、「原点復帰」とは、ロボットアーム30の姿勢PSを原点姿勢PS(0)へと変更する(復帰させる)ことである。また、「原点姿勢PS(0)」は、「基本姿勢」とも称され、ロボットアーム30について予め決められた初期状態の姿勢PS(位置)のことである。ロボット1は、ロボットアーム30を原点復帰させてから、ロボットアーム30によるピック動作、プレース動作を実行し、また、搬送ロボット部40の走行を実行する。さらに、以下の説明において、「『ロボットアーム30の手先の位置を、或る位置から別の位置まで直行させる』経路で、ロボットアーム30の姿勢を変更する」ことを、「ロボットアーム30の姿勢PSを直行的に変更する」と略記して表現することがある。例えば、「ロボットアーム30を直行的に原点復帰させる」とは、以下の経路でロボットアーム30の姿勢PSを変更することを指す。すなわち、ロボットアーム30の手先の位置を、「ロボットアーム30の経由姿勢PS(1)における手先の位置」から「原点姿勢PS(0)における手先の位置」へと直行させる経路で、ロボットアーム30の姿勢PSを変更することを指す。また、「手先の位置を、或る位置から別の位置まで直行させる」とは、「手先の位置を、或る位置から別の位置まで最短経路で変更する」ことを意味する。「ロボットアーム30の手先の位置を、或る位置から別の位置へと直行させる経路で、ロボットアーム30の姿勢PSを変更する」制御は、「ロボットアーム30をLINE動作(CP制御での直線動作)させる」制御に限られない。「ロボットアーム30の手先の位置を、或る位置から別の位置へと直行させる経路で、ロボットアーム30の姿勢PSを変更する」制御は、「PTP制御(点から点への制御)」を含む。ロボットアーム30の「手先」は、ロボットアーム30の「先端部分」または「エンドエフェクタ」と称されることがある。
Hereinafter, an example in which the
§1.適用例
本発明の一態様に係るロボット制御部10(制御装置)についての理解を容易にするため、先ず、本発明が適用される場面の一例について、具体的には、ロボット制御部10を備えるロボット1の概要について、図2および図3を用いて説明する。
§1. Application Example In order to facilitate understanding of the robot control unit 10 (control device) according to one aspect of the present invention, first, an example of a scene to which the present invention is applied is specifically provided with the
(制御システムの概要)
図2は、ロボット1の概要を示す図である。ロボット1は、ロボット制御部10と、ロボットアーム制御部20と、ロボットアーム30と、搬送ロボット部40とを含んでいる。ロボット制御部10は、ロボットアーム制御部20および搬送ロボット部40の各々と通信可能に接続され、ロボットアーム制御部20は、ロボットアーム30と通信可能に接続されている。
(Overview of control system)
FIG. 2 is a diagram showing an outline of the
図2に例示するロボット1は、ロボットアーム30を備えた自走式搬送装置であり、具体的には、無人搬送車(AGV:Automated Guided Vehicle)とも呼ばれる搬送ロボット部40(走行ロボット)の上に、多関節のロボットアーム30が搭載されている。ロボット1は、ロボットアーム30によるピック動作およびプレース動作と、搬送ロボット部40による移動とを自動で行うことにより、搬送対象物(ワーク)の無人搬送を可能とするものであり、例えば、工場、倉庫等において利用される。
The
ロボット制御部10は、ロボット1の全体を統括して制御する制御装置であり、ロボットアーム制御部20を介してロボットアーム30を制御するとともに、搬送ロボット部40を制御して、ロボット1を所望の指定位置へと走行させる。
The
図2に例示するロボット制御部10は、ロボットアーム制御部20から、「ロボットアーム30の姿勢PS」等を示す情報である動作状態情報を取得し、ロボットアーム30が現在とっている姿勢PSを把握する。また、例えば、ロボット制御部10は、ロボットアーム制御部20に原点復帰制御信号を送信して、ロボットアーム制御部20に、ロボットアーム30の原点復帰を実行させ、つまり、ロボットアーム制御部20を介して、ロボットアーム30を原点復帰させる。
The
ここで、「ロボットアーム30の姿勢PS」等を示す動作状態情報は、例えば、ロボットアーム30の備える複数の軸AX(関節)の各々の角度(つまり、方向、回転量)、大きさ(つまり、長さ、手先の移動量)を示す情報である。すなわち、ロボットアーム30が、軸AX(1)から軸AX(6)までの6つの軸AXを備える場合、各々が6つの軸AXの各々の角度(回転量)を示す、J1からJ6のセット(組合せ)によって、ロボットアーム30の姿勢PSを表現することができる。つまり、ロボットアーム30が、n個の軸AXを備える場合、各々がn個の軸AXの各々の角度(回転量)を示すJ1からJnのセット(組合せ)によって、ロボットアーム30の姿勢PSを表現することができる。また、ロボットアーム30の先端部分(手先、エンドエフェクタ)の座標(X,Y,Z,Rx,Ry,Rz)(つまり、手先の、3次元空間上の位置および角度)によっても、ロボットアーム30の姿勢PSを表現することができる。 Here, the operation state information indicating the "posture PS of the robot arm 30" or the like is, for example, the angle (that is, the direction, the amount of rotation) and the size (that is, the direction) of each of the plurality of axes AX (joints) included in the robot arm 30. , Length, amount of movement of the hand). That is, when the robot arm 30 includes six axis AX from the axis AX (1) to the axis AX (6), a set of J1 to J6, each of which indicates an angle (rotation amount) of each of the six axis AX. By (combination), the posture PS of the robot arm 30 can be expressed. That is, when the robot arm 30 includes n shafts AX, the posture PS of the robot arm 30 is determined by a set (combination) of J1 to Jn, each of which indicates an angle (rotation amount) of each of the n shafts AX. Can be expressed. The robot arm 30 is also determined by the coordinates (X, Y, Z, Rx, Ry, Rz) of the tip portion (hand, end effector) of the robot arm 30 (that is, the position and angle of the hand in three-dimensional space). The posture PS can be expressed.
ロボットアーム制御部20は、ロボット制御部10からの指示に従って、ロボットアーム30を制御し、例えば、ロボットアーム30にワークをピックさせたり、ワークをプレースさせたり、ロボットアーム30に所望の姿勢PS(x)をとらせたりする。また、ロボットアーム制御部20は、ロボットアーム30から、「ロボットアーム30の姿勢PS」等を示す情報を取得し、取得した情報を、ロボット制御部10に通知する。
The robot
図2に例示するロボットアーム制御部20は、ロボットアーム30から「ロボットアーム30の姿勢PS」等を示す検出データを取得し、取得した検出データを、ロボット制御部10に、「ロボットアーム30の姿勢PS」等を示す動作状態情報として送信する。
The robot
また、ロボットアーム制御部20は、ロボット制御部10から原点復帰制御信号を受け付けると、ロボットアーム30の姿勢PSを、ロボットアーム30が現在とっている姿勢PS(x)から原点姿勢PS(0)へと、直行的に変更する。
When the robot
ロボットアーム制御部20がロボットアーム30から取得する検出データは、例えば、ロボットアーム30の備える複数の軸AXの各々の角度(つまり、方向、回転量)、大きさ(つまり、長さ、手先の移動量)等の動作状態を示すデータである。詳細は後述するが、ロボットアーム30の備える複数の軸AXの各々には、エンコーダ等の計測機器が設けられている。そして、それらの計測機器は、各々、複数の軸AXの各々の動作状態を、例えば、複数の軸AXの各々の角度(つまり、方向、回転量)を計測している。計測機器によって計測された「複数の軸AXの各々の動作状態」は、計測データとして、ロボットアーム30からロボットアーム制御部20へと送信される。
The detection data acquired by the robot
ロボットアーム30は、ロボット制御部10(または、ロボットアーム制御部20)による制御に従って、姿勢PSを変更して種々の作業を行い、例えば、ワークをピックしたり、ワークを把持した状態で移動したり、ワークをプレースしたりする。ロボットアーム30は、自由度が2以上である多軸マニピュレータであり、例えば、6自由度のロボットアームである。ロボットアーム30の有する6つの自由度は、3つの並進度と3つの回転度であってもよいし、ロボットアーム30は、回転軸のみを備える6自由度のロボットアームであってもよい。ロボットアーム30の先端部分は、「手先(エンドエフェクタ)」とも呼ばれ、ロボットアーム30の利用目的に応じて、適宜、形状、大きさ、動作の状態等を変更することができる。「手先の動作状態」の一例としては、「ワークを把持するための、手先の機構の開閉状態」を挙げることができる。 The robot arm 30 changes the posture PS according to the control by the robot control unit 10 (or the robot arm control unit 20) to perform various operations, for example, picking a work or moving while holding the work. Or place a work. The robot arm 30 is a multi-axis manipulator having two or more degrees of freedom, and is, for example, a robot arm having six degrees of freedom. The six degrees of freedom of the robot arm 30 may be three translational degrees and three rotation degrees, or the robot arm 30 may be a robot arm with six degrees of freedom having only a rotation axis. The tip portion of the robot arm 30 is also called a "hand (end effector)", and the shape, size, operating state, and the like can be appropriately changed according to the purpose of use of the robot arm 30. As an example of the "operating state of the hand", the "opening / closing state of the mechanism of the hand for gripping the work" can be mentioned.
ロボットアーム30の備える軸AXには、ロボット制御部10(または、ロボットアーム制御部20)による制御に従って軸AXの動作状態を変更するモータ等の駆動機器が備えられている。また、ロボットアーム30の備える軸AXには、軸AXの動作状態を計測する計測機器(例えば、角度エンコーダ)が備えられている。 The shaft AX included in the robot arm 30 is provided with a drive device such as a motor that changes the operating state of the shaft AX according to the control by the robot control unit 10 (or the robot arm control unit 20). Further, the shaft AX included in the robot arm 30 is provided with a measuring device (for example, an angle encoder) for measuring the operating state of the shaft AX.
搬送ロボット部40は、ロボットアーム30を移動させる(つまり、搬送する)走行ロボットであり、ロボット制御部10からの移動指示(例えば、指定位置への移動指示)に従って移動し、つまり、ロボット制御部10からの指示に従って走行し、停止する。搬送ロボット部40は、ワークを載置しておくための在荷部(荷台)を備えていてもよい。
The
(ロボット、特にロボット制御部の開発の背景)
ロボット1は、走行とワークの移載(ピックアップ、移動、および、プレース)とを行うことができる自由度の高いロボットであるため、周辺環境の変化が大きく、また、把持状態の変化、および、在荷状態の変化も大きい。ここで、「把持状態」とは、「ロボットアーム30がワークを把持しているか否か」に加え、ロボットアーム30がワークを把持している場合に、「把持しているワークの形状、大きさ、向き等」も含む。「在荷状態」とは、「搬送ロボット部40上にワークが在荷している(つまり、載置されている)か、否か」に加え、ワークが在荷している場合に、「在荷しているワークの形状、大きさ、向き等」も含む。上述の周辺環境、把持状態、および、在荷状態は、いずれも、「ロボットアーム30の置かれている状況」の要素である。
(Background of development of robots, especially robot control units)
Since the
上述の通り、自走式搬送装置であるロボット1の備えるロボットアーム30について、「ロボットアーム30の置かれている状況」は容易に変化し、また、変化の程度も大きい。そのため、ロボット1の備えるロボットアーム30について、任意の姿勢PS(x)から、ロボット1、ワーク、周囲の壁面等の障害物との衝突(干渉)を回避しつつ、ロボットアーム30を完全自動で原点復帰させることは、現実的には困難である。
As described above, with respect to the robot arm 30 included in the
ここで、従来までの非・自走式(例えば、設置位置がほぼ固定されている)ロボットの自動での原点復帰方法は、2種類に大別することができる。 Here, the conventional method of automatically returning to the origin of a non-self-propelled robot (for example, the installation position is almost fixed) can be roughly classified into two types.
第一の方法は、ロボットが自動で原点復帰できる条件を限定し、例えば、特定の周辺環境、および、ロボットの特定の可動範囲においてのみ、ロボットの自動での原点復帰を許可する方法である。しかしながら、前述の通り、自走式搬送装置であるロボット1の備えるロボットアーム30の置かれている状況は容易に変化し、また、変化の程度も大きいため、ロボットアーム30の原点復帰について、このような第一の方法を採用することはできない。
The first method limits the conditions under which the robot can automatically return to the origin, and for example, allows the robot to automatically return to the origin only in a specific surrounding environment and a specific movable range of the robot. However, as described above, the situation in which the robot arm 30 included in the
第二の方法は、ロボットの置かれている状況に柔軟に対応して、ロボットが自動で、障害物等との衝突(干渉)を回避しつつ原点復帰できるように、高価なセンサを用いて、複雑な演算を実行する方法である。しかしながら、このような第二の方法は、実現に多額のコストを要し、また、実現に際して必要となる情報量、計算量も膨大で実現性に乏しい。 The second method uses an expensive sensor so that the robot can automatically respond to the situation in which the robot is placed and return to the origin while avoiding collisions with obstacles. , A way to perform complex operations. However, such a second method requires a large amount of cost to realize, and the amount of information and the amount of calculation required for realization are enormous and not feasible.
(ロボット制御部の概要)
そこで、ロボット1(特に、ロボット制御部10)の開発者は、ロボットアーム30の原点復帰動作に係る制御に、作業者OPによる確認作業を介在させ、つまり、ロボットアーム30の原点復帰に係る一連の処理の一部を、作業者OPに実行させる。ロボット制御部10は、「ロボットアーム30の姿勢PSが、許可範囲RP内にある」との判定結果を作業者OPに通知した後、ロボットアーム30の原点復帰の当否(可否)を確認した作業者OPからの指示を待って、ロボットアーム30を原点復帰させる。
(Overview of robot control unit)
Therefore, the developer of the robot 1 (particularly, the robot control unit 10) intervenes a confirmation work by the worker OP in the control related to the origin return operation of the robot arm 30, that is, a series of operations related to the origin return of the robot arm 30. Let the worker OP execute a part of the processing of. The
ロボット制御部10は、「ロボットアーム30の置かれている実際の状況における『ロボットアーム30の原点復帰の当否』を、作業者OPに確認させる」ことにより、安価かつ簡易な設計で、ロボットアーム30を安全に原点復帰させることができる。
The
従来までの制御装置が、ロボットアーム30を、任意の姿勢PS(x)から原点復帰させる場合、ロボットアーム30の周囲の作業者OPにとって、原点復帰するまでのロボットアーム30の動作経路を正確に予測することは、必ずしも容易ではない。そのため、作業者OPによる確認がない状態で、従来までの制御装置によってロボットアーム30を原点復帰させることは、作業者OPにとって危険である可能性があり、少なくとも、作業者OPにとって不安である。 When the conventional control device returns the robot arm 30 to the origin from an arbitrary posture PS (x), the operation path of the robot arm 30 until the return to the origin is accurately performed for the worker OP around the robot arm 30. Predicting is not always easy. Therefore, it may be dangerous for the worker OP to return the robot arm 30 to the origin by the conventional control device without confirmation by the worker OP, and at least it is uneasy for the worker OP.
これに対し、ロボット制御部10は、「ロボットアーム30の置かれている実際の状況における『ロボットアーム30の原点復帰の当否』を、作業者OPに確認させる」ことで、ロボットアーム30を原点復帰させる際の安全性、信頼性を向上することができる。
On the other hand, the
(ロボット制御部による、ロボットアームの原点復帰の具体例)
図3は、ロボットアーム30を原点復帰させる際に発生し得る問題と、ロボット制御部10が利用する「ロボットアーム30の経由姿勢PS(1)」を説明する図である。図3に示すように、ロボットアーム30を非常停止させたり、ロボットアーム30にティーチング(教示)を行ったりすると、ロボットアーム30は、原点姿勢PS(0)とは異なる姿勢PS(2)をとる。そして、原点姿勢PS(0)とは異なる姿勢PS(2)をとっているロボットアーム30を始動させるには、「ロボットアーム30の原点復帰」が必要となる。
(Specific example of returning the origin of the robot arm by the robot control unit)
FIG. 3 is a diagram illustrating a problem that may occur when the robot arm 30 returns to the origin and the “via posture PS (1) of the robot arm 30” used by the
ロボットアーム30の姿勢PSを、移載動作中の任意の姿勢PS(2)から原点姿勢PS(0)へと「直行的に」変更(遷移)しようとすると、ロボットアーム30が、周囲の天井、壁面、搬送ロボット部40等の筐体、ワーク等の障害物に衝突する可能性がある。すなわち、図3において、ロボットアーム30を姿勢PS(2)から原点姿勢PS(0)へと直行的に復帰(遷移)させようとすると、ロボットアーム30が障害物等と衝突する可能性があり、安全に遷移させることは困難である。
When the posture PS of the robot arm 30 is "directly" changed (transitioned) from an arbitrary posture PS (2) during the transfer operation to the origin posture PS (0), the robot arm 30 moves to the surrounding ceiling. There is a possibility of colliding with obstacles such as a wall surface, a housing such as a
また、前述の通り、ロボット1(特に、ロボットアーム30)の自由度は大きく、ロボットアーム30がとり得る姿勢PS(x)は多様である。「ロボットアーム30を原点復帰させようとする時点で、ロボットアーム30がとっている姿勢PS(x)」は不定であり、これを予め全て予測しておくことは困難である。 Further, as described above, the robot 1 (particularly, the robot arm 30) has a large degree of freedom, and the posture PS (x) that the robot arm 30 can take is various. The "posture PS (x) taken by the robot arm 30 at the time of returning the robot arm 30 to the origin" is indefinite, and it is difficult to predict all of this in advance.
そのため、従来までのロボット制御方法(ロボットアーム制御方法)を用いて、自走式搬送装置であるロボット1の備えるロボットアーム30を、任意の姿勢PS(x)から原点復帰させるのは、容易ではない。ロボットアーム30について、「いかなる姿勢PSであっても原点復帰を実行できるようにする」ために、従来のように、「ロボットアーム30のとり得る全ての姿勢PSについて、障害物等との衝突を回避するための煩雑な条件を設定する」ことは現実的ではない。言い換えれば、ロボットアーム30の姿勢PS(つまり、6つの軸AXの各々の動作状態)に応じて、原点復帰の際にロボットアーム30と障害物等との衝突を回避するための煩雑な条件を設定するのは、容易ではない。
Therefore, it is not easy to return the robot arm 30 included in the
例えば、ロボットアーム30の6つの軸AXの動作状態:(J1,J2,J3,J4,J5,J6)が、或る範囲Aにある時は動作経路pでロボットアーム30を原点復帰させ、別の範囲Bにある時は動作経路qで原点復帰させるといった条件設定が必要となる。また、例えば、ロボットアーム30の手先の座標:(X,Y,Z,Rx,Ry,Rz)が、或る範囲Cにある時は動作経路xでロボットアーム30を原点復帰させ、別の範囲Dにある時は動作経路yで原点復帰させるといった条件設定が必要となる。 For example, when the operating states of the six axes AX of the robot arm 30: (J1, J2, J3, J4, J5, J6) are in a certain range A, the robot arm 30 is returned to the origin in the operation path p, and another When it is in the range B of, it is necessary to set a condition such as returning to the origin in the operation path q. Further, for example, when the coordinates of the hand of the robot arm 30: (X, Y, Z, Rx, Ry, Rz) are in a certain range C, the robot arm 30 is returned to the origin in the operation path x and another range. When it is in D, it is necessary to set a condition such as returning to the origin in the operation path y.
そこで、ロボット制御部10は、実現コストを抑制しつつ、ロボットアーム30の置かれている状況に依存せずに、ロボットアーム30を、障害物等との衝突を回避しつつ原点復帰させるために、以下の「経由姿勢PS(1)」を、予め準備しておく。すなわち、ロボット制御部10は、ロボットアーム30の原点復帰について、「ロボットアーム30が障害物等との衝突を回避しつつ、直行的に原点復帰することができる」と予測される姿勢PSである「経由姿勢PS(1)」を、予め準備しておく。具体的には、ロボット制御部10は、経由姿勢PS(1)の範囲を示す情報(つまり、「障害物等との衝突を回避しつつ、直行的にロボットアーム30を原点復帰させることができる」と予測される姿勢PSの範囲を示す情報)を、予め記憶部160に格納している。「障害物等との衝突を回避しつつ、直行的にロボットアーム30を原点復帰させることができる」と予測される姿勢PSは、経由姿勢PS(1)とも称される。言い換えれば、経由姿勢PS(1)は、「障害物等との衝突を回避しつつ、直行的にロボットアーム30を原点復帰させることができる」と予測される範囲の姿勢PSである。また、経由姿勢PS(1)の範囲は、つまり、「障害物等との衝突を回避しつつ、直行的にロボットアーム30を原点復帰させることができる」と予測される姿勢PSの範囲は、「許可範囲RP」とも称される。
Therefore, the
ロボット制御部10は、ロボットアーム30の姿勢PSが経由姿勢PS(1)となったと判定すると、その判定結果を作業者OPに通知し、作業者OPによる確認および指示を待ってから、以下の処理を実行する。すなわち、ロボット制御部10は、経由姿勢PS(1)から原点姿勢PS(0)へと、ロボットアーム30の姿勢PSを直行的に変更する。言い換えれば、ロボット制御部10は、「手先の位置を、原点姿勢PS(0)における手先の位置へと直行させる」経路で、経由姿勢PS(1)からロボットアーム30を原点復帰させる。
When the
経由姿勢PS(1)から直行的に原点復帰させることにより、ロボット制御部10は、経由姿勢PS(1)から原点姿勢PS(0)への、ロボットアーム30の姿勢PSの変更について、上述の煩雑な条件を設定する必要がなくなる。つまり、ロボット制御部10による「ロボットアーム30の姿勢PSを、経由姿勢PS(1)から原点姿勢PS(0)へと変更する」制御については、ロボットアーム30が障害物等と衝突するのを回避するための煩雑な条件は、設定されていない。そのため、ロボット制御部10は、簡易な条件を設定するだけで、ロボットアーム30を、障害物等との衝突を回避しつつ安全に、原点復帰させることができる。
By returning to the origin directly from the transit posture PS (1), the
「ロボットアーム30を原点復帰させようとする時点でロボットアーム30がとっている姿勢PS(x)」から経由姿勢PS(1)へと、ロボットアーム30の姿勢PSが変更されている間、ロボット制御部10は、ロボットアーム30の姿勢PSを監視している。例えば、ロボット制御部10は、ロボットアーム30の備える複数の軸AXの各々に設けられたエンコーダの計測値(つまり、複数の軸AXの各々の動作状態)を監視している。具体的には、ロボット制御部10は、「ロボットアーム30の姿勢PSが、経由姿勢PS(1)になったか否か」を判定し、つまり、「複数の軸AXの各々の動作状態が、許可範囲RPに対応する動作範囲RAP内になったか否か」を判定している。
While the posture PS of the robot arm 30 is changed from "the posture PS (x) taken by the robot arm 30 at the time when the robot arm 30 is about to return to the origin" to the transit posture PS (1), the robot The
そして、ロボット制御部10は、上述の判定の結果を作業者OPに通知する。ロボット制御部10は、上述の判定結果を、ブザー等を制御して音によって作業者OPに通知してもよいし、表示灯等を制御して光によって作業者OPに通知してもよい。
Then, the
作業者OPは、「ロボットアーム30の姿勢PSが許可範囲RP内にある」との判定結果を認識すると、状況確認を行い、必要な場合には適宜、ロボットアーム30の周囲に存在する障害物の撤去等を行う。そして、安全を確認すると、作業者OPは、原点復帰動作の実行をロボット制御部10に指示し、つまり、原点復帰指示をロボット制御部10に与える。「ロボットアーム30の姿勢PSが許可範囲RP内にある」と判定している間に、作業者OPからの原点復帰指示があると、ロボット制御部10は、ロボットアーム30が現在とっている姿勢PSを、原点姿勢PS(0)へと直行的に変更する。
When the worker OP recognizes the determination result that "the posture PS of the robot arm 30 is within the permitted range RP", the worker OP confirms the situation, and if necessary, an obstacle existing around the robot arm 30 as appropriate. Will be removed. Then, when the safety is confirmed, the worker OP instructs the
ロボット制御部10が予め記憶部160(特に、許可範囲テーブル161)に格納している許可範囲情報(許可範囲RPを示す情報)は、書き換え可能であってもよい。許可範囲情報を更新可能とすることによって、ロボットアーム30の手先の形状、搬送ロボット部40の在荷部の高さ等、ロボットアーム30の置かれている状況の変化に応じて、許可範囲情報を柔軟に変更することが可能となる。
The permission range information (information indicating the permission range RP) stored in the storage unit 160 (particularly, the permission range table 161) in advance by the
許可範囲RPは、経由姿勢PS(1)の範囲であり、経由姿勢PS(1)は、ロボットアーム30の備える複数の軸AX(関節)の動作状態、および、ロボットアーム30の手先の動作状態(つまり、座標)の少なくとも一方によって、表現することができる。そのため、許可範囲RPは、「経由姿勢PS(1)をとっているロボットアーム30の、複数の軸AXの各々の動作状態」の範囲、および、「経由姿勢PS(1)をとっているロボットアーム30の、手先の座標」の範囲の少なくとも一方として、表現されてもよい。言い換えれば、許可範囲RPは、ロボットアーム30の姿勢PSが経由姿勢PS(1)となるための、「複数の軸AXの各々の動作状態」の範囲、および、「手先の座標(動作状態)」の範囲の少なくとも一方として、表現されてもよい。ロボットアーム30の姿勢PSが経由姿勢PS(1)となるための、「複数の軸AXの各々の動作状態」の範囲、および、「手先の座標」の範囲は、「動作範囲RAP」と呼ばれる。また、動作範囲RAPを示す情報は、「動作範囲情報」と呼ばれる。 The permitted range RP is the range of the transit posture PS (1), and the transit posture PS (1) is the operating state of the plurality of axes AX (joints) included in the robot arm 30 and the operating state of the hand of the robot arm 30. It can be expressed by at least one of (that is, coordinates). Therefore, the permitted range RP includes the range of "the operating state of each of the plurality of axes AX of the robot arm 30 taking the transit posture PS (1)" and the robot taking the "passage posture PS (1)". It may be expressed as at least one of the range of "coordinates of the hand of the arm 30". In other words, the permitted range RP is the range of "the operating state of each of the plurality of axes AX" for the posture PS of the robot arm 30 to be the transit posture PS (1), and the "coordinates of the hand (operating state)". May be expressed as at least one of the ranges of. The range of "the operating state of each of the plurality of axes AX" and the range of "coordinates of the hand" for the posture PS of the robot arm 30 to become the transit posture PS (1) are called "moving range RAP". .. Further, the information indicating the operating range RAP is called "operating range information".
例えば、ロボットアーム30が軸AX(1)から軸AX(6)の6つの軸AXを備える場合、許可範囲RPは、それら6つの軸AXの各々の動作状態:(J1,J2,J3,J4,J5,J6)の動作範囲RAPの組合せ(セット)として、表現されてもよい。具体的には、許可範囲RPにおいて、軸AX(1)の動作状態:J1についての動作範囲RAPである動作範囲RAP(AX(1))が、軸AX(2)の動作状態:J2についての動作範囲RAPである動作範囲RAP(AX(2))が、設定されていてもよい。同様に、許可範囲RPにおいて、J3、J4、J5,J6の各々についての動作範囲RAPである動作範囲RAP(AX(3))、RAP(AX(4))、RAP(AX(5))、RAP(AX(6))が、設定されていてもよい。 For example, when the robot arm 30 includes six axis AX from the axis AX (1) to the axis AX (6), the permitted range RP is the operating state of each of the six axis AX: (J1, J2, J3, J4). , J5, J6) may be expressed as a combination (set) of operating range RAPs. Specifically, in the permitted range RP, the operating range RAP (AX (1)), which is the operating range RAP for the axis AX (1), is the operating state of the axis AX (2): J2. The operating range RAP (AX (2)), which is the operating range RAP, may be set. Similarly, in the permitted range RP, the operating range RAP (AX (3)), RAP (AX (4)), RAP (AX (5)), which is the operating range RAP for each of J3, J4, J5, and J6, RAP (AX (6)) may be set.
特に、許可範囲RPにおいて、軸AX(1)の動作状態:J1について、その動作範囲RAP(AX(1))として、最大値J1_MAXと最小値J1_minとが設定されていてもよい。同様に、許可範囲RPにおいて、軸AX(2)の値:J2について、その動作範囲RAP(AX(2))として、最大値J2_MAXと最小値J2_minとが設定されていてもよい。すなわち、許可範囲RPにおいて、ロボットアーム30の備える軸AX(n)の値:Jnについて、その動作範囲RAP(AX(n))として、最大値Jn_MAXと最小値Jn_minとが設定されていてもよい。 In particular, in the permitted range RP, the maximum value J1_MAX and the minimum value J1_min may be set as the operating range RAP (AX (1)) of the operating state of the axis AX (1): J1. Similarly, in the permission range RP, the maximum value J2_MAX and the minimum value J2_min may be set as the operating range RAP (AX (2)) for the value of the axis AX (2): J2. That is, in the permitted range RP, the maximum value Jn_MAX and the minimum value Jn_min may be set as the operating range RAP (AX (n)) for the value: Jn of the axis AX (n) included in the robot arm 30. ..
ロボットアーム30の備える複数の軸AXの各々の動作範囲RAPは、相互に独立して指定されていてもよいし、相互に関連付けられて指定されていてもよい。例えば、ロボットアーム30の備える或る軸AX(p)の動作範囲RAP(p)と、別の軸AX(q)の動作範囲RAP(q)とは、相互に独立して指定されていてもよい。 The operating range RAPs of the plurality of axes AX included in the robot arm 30 may be designated independently of each other, or may be designated in association with each other. For example, even if the operating range RAP (p) of a certain axis AX (p) and the operating range RAP (q) of another axis AX (q) included in the robot arm 30 are designated independently of each other. good.
また、ロボットアーム30の備える或る軸AX(p)の値:Jpが「x」であると、別の軸AX(q)の動作範囲RAP(q)が範囲Aとして指定され、Jpが「y」であると、動作範囲RAP(q)が範囲Aとは異なる範囲Bして指定されてもよい。例えば、Jpが「x」である場合、動作範囲RAP(q)は、最大値Jqx_MAXと最小値Jqx_minとによって指定され、Jpが「y」であると、動作範囲RAP(q)は、最大値Jqy_MAXと最小値Jqy_minとによって指定されてもよい。 Further, when the value of a certain axis AX (p) included in the robot arm 30: Jp is "x", the operating range RAP (q) of another axis AX (q) is designated as the range A, and Jp is ". When it is "y", the operating range RAP (q) may be specified as a range B different from the range A. For example, when Jp is "x", the operating range RAP (q) is specified by the maximum value Jqx_MAX and the minimum value Jqx_min, and when Jp is "y", the operating range RAP (q) is the maximum value. It may be specified by Jqy_MAX and the minimum value Jqy_min.
許可範囲RPは、ロボットアーム30の手先の動作状態(座標):(X,Y,Z,Rx,Ry,Rz)の動作範囲RAPの組合せ(セット)として、表現されてもよい。すなわち、許可範囲RPにおいて、手先の座標:(X,Y,Z,Rx,Ry,Rz)を示す、「X」、「Y」、「Z」、「Rx」、「Ry」、「Rz」の各々について、動作範囲RAPが設定されていてもよい。具体的には、許可範囲RPにおいて、「X」についての動作範囲RAPである動作範囲RAP(X)が、「Y」についての動作範囲RAPである動作範囲RAP(Y)が、設定されていてもよい。同様に、許可範囲RPにおいて、「Z」、「Rx」、「Ry」、「Rz」の各々についての動作範囲RAPである動作範囲RAP(Z)、RAP(Rx)、RAP(Ry)、RAP(Rz)が、設定されていてもよい。 The permitted range RP may be expressed as a combination (set) of operating range RAPs of the operating state (coordinates) of the hand of the robot arm 30: (X, Y, Z, Rx, Ry, Rz). That is, in the permitted range RP, "X", "Y", "Z", "Rx", "Ry", "Rz" indicating the coordinates of the hand: (X, Y, Z, Rx, Ry, Rz). The operating range RAP may be set for each of the above. Specifically, in the permission range RP, the operating range RAP (X), which is the operating range RAP for "X", and the operating range RAP (Y), which is the operating range RAP for "Y", are set. May be good. Similarly, in the permitted range RP, the operating range RAP (Z), RAP (Rx), RAP (Ry), RAP, which is the operating range RAP for each of “Z”, “Rx”, “Ry”, and “Rz”. (Rz) may be set.
特に、許可範囲RPにおいて、「X」に対し、動作範囲RAP(X)として、最大値X_MAXと最小値X_minとが設定されていてもよく、「Y」に対し、動作範囲RAP(Y)として、最大値Y_MAXと最小値Y_minとが設定されていてもよい。動作範囲RAP(Z)、RAP(Rx)、RAP(Ry)、RAP(Rz)の各々についても、同様である。 In particular, in the permitted range RP, the maximum value X_MAX and the minimum value X_min may be set as the operating range RAP (X) with respect to "X", and as the operating range RAP (Y) with respect to "Y". , The maximum value Y_MAX and the minimum value Y_min may be set. The same applies to each of the operating ranges RAP (Z), RAP (Rx), RAP (Ry), and RAP (Rz).
ロボット制御部10は、ロボットアーム30の原点復帰に係る制御を半自動とする(つまり、原点復帰に係る制御において、作業者OPによる確認を利用する)ことによって、ロボットアーム30の安全な原点復帰を、低コストかつ簡易な設計で実現する。ロボット制御部10は、予め準備しておいた経由姿勢PS(1)と、作業者OPによる確認とを利用することにより、低コストかつ簡易な設計で、障害物等との衝突を回避しつつロボットアーム30を原点復帰させることができる。
The
例えば、図2に示す例では、ロボットアーム30の姿勢PSを、姿勢PS(2)から経由姿勢PS(1)へと、作業者OPが手動で誘導する(変更する)例が示されている。姿勢PS(2)は、経由姿勢PS(1)とも、原点姿勢PS(0)とも異なる姿勢PSである。 For example, in the example shown in FIG. 2, an example is shown in which the worker OP manually guides (changes) the posture PS of the robot arm 30 from the posture PS (2) to the transit posture PS (1). .. The posture PS (2) is a posture PS different from both the transit posture PS (1) and the origin posture PS (0).
ロボットアーム30の複数の軸AXの各々にはエンコーダ等の計測機器が備えられ、姿勢PS(2)から経由姿勢PS(1)へと、ロボットアーム30の姿勢PSが変更されている間、計測機器は、複数の軸AXの各々の動作状態を計測している。計測機器が計測した計測結果(計測データ)は、ロボットアーム30からロボットアーム制御部20へと送信される(1)。 Each of the plurality of axes AX of the robot arm 30 is equipped with a measuring device such as an encoder, and measures while the posture PS of the robot arm 30 is changed from the posture PS (2) to the transit posture PS (1). The device measures the operating state of each of the plurality of axes AX. The measurement result (measurement data) measured by the measuring device is transmitted from the robot arm 30 to the robot arm control unit 20 (1).
ロボットアーム制御部20は、ロボットアーム30から取得した計測データを、ロボットアーム30の複数の軸AXの各々の動作状態情報として、ロボット制御部10へと送信する(2)。前述の通り、ロボットアーム制御部20がロボット制御部10へと送信する動作状態情報は、ロボットアーム30の複数の軸AXの各々の動作状態を示すものであってもよいし、ロボットアーム30の手先の動作状態(つまり、座標)を示すものであってもよい。
The robot
ロボット制御部10は、取得した動作状態情報を用いて、ロボットアーム30の姿勢PSを監視し、具体的には、ロボットアーム30の姿勢PSが経由姿勢PS(1)となったか否かを判定する。例えば、ロボット制御部10は、経由姿勢PS(1)として認められた姿勢PSの範囲である許可範囲RPに対応する動作範囲RAPと、取得した動作状態情報とを比較して、上述の判定を行う。
The
ロボット制御部10は、ロボットアーム30の姿勢PSが経由姿勢PS(1)となったと判定すると、ブザー、表示灯等を制御して、その判定結果を作業者OPに通知する(3)。作業者OPは、ロボット制御部10から通知された判定結果を認識すると、状況確認を行い、必要な場合には適宜、ロボットアーム30の周囲に存在する障害物の撤去等を行う。そして、安全を確認すると、作業者OPは、スイッチ等によって原点復帰指示(原点復帰の実行を許可する指示)をロボット制御部10に与える(4)。
When the
「ロボットアーム30の姿勢PSが経由姿勢PS(1)となっている」と判定している間に、作業者OPからの原点復帰指示があると、ロボット制御部10は、ロボットアーム制御部20に、原点復帰制御信号を送信する(5)。ロボット制御部10から原点復帰制御信号を受信したロボットアーム制御部20は、原点復帰制御信号に対応するアーム駆動信号をロボットアーム30に送信して、ロボットアーム30を原点復帰させる(6)。具体的には、ロボットアーム制御部20は、ロボットアーム30が現在とっている経由姿勢PS(1)から原点姿勢PS(0)へとロボットアーム30の姿勢PSを直行的に変更するアーム駆動信号を、ロボットアーム30に送信する。これによって、ロボットアーム30の姿勢PSは、経由姿勢PS(1)から原点姿勢PS(0)へと直行的に変更される。
If there is an origin return instruction from the worker OP while determining that "the posture PS of the robot arm 30 is the transit posture PS (1)", the
(ロボット制御部についての整理)
これまでに図2および図3を用いて説明してきた内容は、以下のように整理することができる。すなわち、ロボット制御部10は、自由度が2以上であるロボットアーム30の制御装置である。ロボット制御部10においては、ロボットアーム30の姿勢PSについて、以下の許可範囲RPが予め設定されている。すなわち、「障害物等との衝突を発生させることなく、手先の位置を原点姿勢PS(0)における手先の位置へと直行させる経路で、ロボットアーム30を原点復帰させることができる」と予測される姿勢PSの範囲が、許可範囲RPとして設定されている。言い換えれば、経由姿勢PS(1)として認められた姿勢PSの範囲が、許可範囲RPとして、予め設定されている。ロボット制御部10は、通知部130と復帰指示部170とを備えている。通知部130は、姿勢判定部120によって「ロボットアーム30の姿勢PSが、許可範囲RP内にある」と判定されると、作業者OP(ユーザ)に判定結果を通知する。復帰指示部170は、通知部130によって判定結果を通知された作業者OPから原点復帰の実行指示があると、ロボットアーム30を、許可範囲RP内にあると判定された姿勢PS(つまり、経由姿勢PS(1))から、直行的に原点復帰させる。
(Arrangement of robot control unit)
The contents described so far with reference to FIGS. 2 and 3 can be organized as follows. That is, the
前記の構成によれば、ロボット制御部10は、「ロボットアーム30の姿勢PSが、予め設定されている許可範囲RP内にある」と判定されると、その判定結果を作業者OPに通知する。判定結果を通知された作業者OPは、「実際に、手先の位置を原点姿勢PS(0)における手先の位置へと直行させる経路で、ロボットアーム30を原点復帰させた場合に、ロボットアーム30と障害物等との衝突が発生することがないか」を確認する。そして、「実際に、手先の位置を原点姿勢PS(0)における手先の位置へと直行させる経路で、ロボットアーム30を原点復帰させた場合に、衝突は発生しない」ことを確認すると、作業者OPは、ロボット制御部10に、原点復帰の実行指示を与える。「ロボットアーム30の姿勢PSが、許可範囲RP内にある」との判定結果の通知を契機として実際の状況を確認した作業者OPから、「原点復帰の実行指示」があると、ロボット制御部10は、以下の処理を実行する。すなわち、ロボット制御部10は、ロボットアーム30を、許可範囲RP内にあると判定された姿勢PS(1)から、手先の位置を原点姿勢PS(0)における手先の位置へと直行させる経路で、原点復帰させる。
According to the above configuration, when the
つまり、ロボット制御部10は、「直行的に原点復帰させたとしても障害物等との衝突を回避できる」と予想される経由姿勢PS(1)をロボットアーム30がとっていると判定すると、作業者OPにその旨を通知する。そして、ロボット制御部10は、「実際に、姿勢PS(1)から直行的に(つまり、手先の位置を原点姿勢PS(0)における手先の位置へと直行させる経路で)、ロボットアーム30を原点復帰させてよいか」を、作業者OPに確認させる。特に、ロボット制御部10は、作業者OPに、「ロボットアーム30が実際に現在置かれている状況において、ロボットアーム30が現在とっている姿勢PSから直行的に原点復帰させてよいか」を確認させる。ロボット制御部10は、「ロボットアーム30が実際に現在置かれている状況において、ロボットアーム30が現在とっている姿勢から、直行的に原点復帰させてよい」と作業者OPが確認するのを待つ。そして、作業者OPが上述の確認を行って、ロボット制御部10に原点復帰を指示すると、ロボット制御部10は、ロボットアーム30を原点復帰させる。つまり、ロボット制御部10は、作業者OPによる確認と、確認後の明示的な原点復帰指示とを待って、ロボットアーム30を原点復帰させる。具体的には、ロボット制御部10は、ロボットアーム30が現在とっている姿勢PSから、手先の位置を原点姿勢PS(0)における手先の位置へと直行させる経路で、言い換えれば、直行的に、ロボットアーム30を原点復帰させる。
That is, when the
ここで、「ロボットアーム30が実際に現在置かれている状況」は、ロボットアーム30を取り囲む物理空間等、「ロボットアーム30の外部の状況」を含む。「ロボットアーム30の外部の状況」は、ロボットアーム30の周囲に存在する壁面、構造物、機器等の状況に加えて、ロボットアーム30の作業対象であるワークの状況も含む。ワークがロボットアーム30の周囲に載置されている(例えば、ロボットアーム30を備える在荷部に、ワークが載置されている)場合、載置されているワークの状態(形状、大きさ、向き等)等も、「ロボットアーム30の外部の状況」の一つである。同様に、例えば、ロボットアーム30がワークを把持している場合には、把持されているワークの状態等も、「ロボットアーム30の外部の状況」の一つである。 Here, the "situation in which the robot arm 30 is actually currently placed" includes the "situation outside the robot arm 30" such as the physical space surrounding the robot arm 30. The "outside situation of the robot arm 30" includes the situation of the work surface, which is the work target of the robot arm 30, in addition to the situation of the wall surface, the structure, the equipment, etc. existing around the robot arm 30. When the work is placed around the robot arm 30 (for example, the work is placed on the loading portion provided with the robot arm 30), the state (shape, size, Orientation, etc.) is also one of the "outside conditions of the robot arm 30". Similarly, for example, when the robot arm 30 is gripping the work, the state of the gripped work is also one of the "external situations of the robot arm 30".
「ロボットアーム30が実際に現在置かれている状況」は、「ロボットアーム30の外部の状況」に加えて、「ロボットアーム30自体の状況」も含む。ロボットアーム30自体の利用状況、ロボットアーム30の手先(ロボットアーム30の先端。エンドエフェクタ)の形状、大きさ、動作の状態等は、「ロボットアーム30自体の状況」の一例である。「手先の動作状態」の一例としては、「ワークを把持するための、手先の機構の開閉状態」を挙げることができる。 The "situation in which the robot arm 30 is actually currently placed" includes "the situation of the robot arm 30 itself" in addition to the "situation outside the robot arm 30". The usage status of the robot arm 30 itself, the shape, size, operation state, and the like of the hand (tip of the robot arm 30. End effector) of the robot arm 30 are examples of the “status of the robot arm 30 itself”. As an example of the "operating state of the hand", the "opening / closing state of the mechanism of the hand for gripping the work" can be mentioned.
上述の通り、ロボット制御部10は、作業者OPによる「ロボットアーム30が現在とっている姿勢PSから、手先の位置を原点姿勢PS(0)における手先の位置へと直行させる経路で、原点復帰させてもよいか」の確認の契機を、作業者OPに通知する。つまり、ロボット制御部10は、「ロボットアーム30が実際に現在置かれている状況において、ロボットアーム30が現在とっている姿勢PSから直行的に原点復帰させてよいか」を、作業者OPに判断させる。ロボット制御部10は、「ロボットアーム30が実際に現在置かれている状況において、ロボットアーム30が現在とっている姿勢から直行的に原点復帰させてよいか」の判断を、作業者OPに委ねる。そのため、ロボット制御部10は、上述の判断に必要となる情報量、計算負荷を軽減することができる。
As described above, the
また、ロボット制御部10は、作業者OPによる原点復帰の指示に従って、ロボットアーム30を、現在とっている姿勢から、「手先の位置を原点姿勢PS(0)における手先の位置へと直行させる」経路で、原点復帰させる。「手先の位置を、現在の位置から原点姿勢PS(0)における手先の位置へと、直行させる」経路は、「障害物等との衝突を避けるために、様々な情報を用いて、複雑な条件分岐の結果特定される」経路ではなく、予め一意に特定される経路である。そのため、ロボット制御部10は、「ロボットアーム30が現在とっている姿勢」から、障害物等との衝突を避けつつ、ロボットアーム30を原点復帰させるための経路計算に必要となる情報量、計算負荷を軽減することができる。
Further, the
つまり、ロボット制御部10は、あらゆる姿勢PSについて、あらゆる状況を想定して、「ロボットアーム30を、障害物等との衝突を回避しつつ(つまり、安全に)原点復帰させる方法」を演算する必要がない。そのため、ロボット制御部10は、ロボットアーム30のとり得る姿勢PSが多様であり、ロボットアーム30の置かれている状況が多様であっても、「ロボットアーム30を、安全に原点復帰させる」ために必要とする情報量、計算負荷を抑制することができる。
That is, the
また、ロボット制御部10は、作業者OPによる上述の確認結果および指示に従って、ロボットアーム30を原点復帰させる。ロボット制御部10は、「ロボットアーム30が実際に現在置かれている状況」のいかんにかかわらず、作業者OPによる上述の確認結果および指示に従って、ロボットアーム30を原点復帰させる。つまり、ロボット制御部10は、「ロボットアーム30が実際に現在置かれている状況において、ロボットアーム30が現在とっている姿勢PSから直行的に原点復帰させてよい」との作業者OPの確認結果に従って、ロボットアーム30を原点復帰させる。ロボット制御部10は、「ロボットアーム30が実際に現在置かれている状況」に係る作業者OPの確認結果を利用することで、ロボットアーム30の置かれている状況に依存せずに、ロボットアーム30を安全に原点復帰させることができる。
Further, the
したがって、ロボット制御部10は、実現コストを抑制しつつ、ロボットアーム30の置かれている状況に依存せずに、ロボットアーム30を、障害物等との衝突を回避しつつ原点位置へと復帰させることができるとの効果を奏する。
Therefore, the
§2.構成例
これまでに概要を説明してきたロボット制御部10について、次に、図1を用いてその詳細を説明していく。
§2. Configuration Example Next, the details of the
図1は、ロボット制御部10の構成例を示す図である。ロボット制御部10は、機能ブロックとして、例えば、状態情報取得部110、姿勢判定部120、通知部130、ユーザ操作取得部140、ユーザ操作判定部150、記憶部160、復帰指示部170、動作状態制御部180、誘導動作指示部190を備えている。ロボット制御部10は、上述の各機能ブロックに加えて、搬送ロボット部40の位置を特定して搬送ロボット部40による走行を制御する走行制御部等を備えていてもよい。記載の簡潔性を担保するため、本実施の形態に直接関係のないロボット制御部10の構成は、説明およびブロック図から省略している。ただし、実施の実情に則して、ロボット制御部10は、これらの省略された構成を備えてもよい。
FIG. 1 is a diagram showing a configuration example of the
ロボット制御部10の備える上述の機能ブロックは、例えば、CPU(central processing unit)等が、ROM(read only memory)、NVRAM(non-Volatile random access memory)等で実現された記憶装置(記憶部160)に記憶されているプログラムを不図示のRAM(random access memory)等に読み出して実行することで実現できる。以下に先ず、状態情報取得部110、姿勢判定部120、通知部130、ユーザ操作取得部140、ユーザ操作判定部150、復帰指示部170、動作状態制御部180、誘導動作指示部190の各々について、その詳細を説明する。
The above-mentioned functional block included in the
(記憶部以外の機能ブロックについて)
状態情報取得部110は、ロボットアーム制御部20から、「ロボットアーム30の姿勢PS」等を示す情報である動作状態情報を取得し、取得した動作状態情報を、姿勢判定部120に通知する。具体的には、状態情報取得部110は、ロボットアーム制御部20を介して、ロボットアーム30の複数の軸AXの各々に備えられた計測機器が計測した計測データを、ロボットアーム30の複数の軸AXの各々の動作状態を示す情報として取得する。
(About functional blocks other than the storage unit)
The state information acquisition unit 110 acquires operation state information which is information indicating “posture PS of the robot arm 30” or the like from the robot
例えば、動作状態情報は、ロボットアーム30の6つの軸AXの各々の動作状態(関節の角度(つまり、方向、回転量)、および、手先の移動量の少なくとも一方)を示す(J1,J2,J3,J4,J5,J6)である。また、例えば、動作状態情報は、ロボットアーム30の手先(先端部分、エンドエフェクタ)の座標(つまり、手先の、3次元空間上の位置および角度)を示す(X,Y,Z,Rx,Ry,Rz)である。 For example, the operating state information indicates the operating state of each of the six axes AX of the robot arm 30 (at least one of the joint angle (that is, the direction and the amount of rotation) and the amount of movement of the hand) (J1, J2, J3, J4, J5, J6). Further, for example, the operation state information indicates the coordinates (that is, the position and angle of the hand in the three-dimensional space) of the hand (tip portion, end effector) of the robot arm 30 (X, Y, Z, Rx, Ry). , Rz).
姿勢判定部120は、ロボットアーム30の姿勢PSが、許可範囲RP内にあるか否かを判定し、判定結果を通知部130へと出力する。また、姿勢判定部120は、「ロボットアーム30の姿勢PSが、許可範囲RP内にある」と判定すると、復帰指示部170へ、原点復帰許可信号を出力する。さらに、姿勢判定部120は、差分算出部121が算出した差分情報を、通知部130、動作状態制御部180、および、誘導動作指示部190の各々へと出力する。具体的には、姿勢判定部120は、以下の3つの処理を実行する。
The
第一に、姿勢判定部120は、記憶部160の許可範囲テーブル161を参照して、許可範囲情報を取得し、特に、状態情報取得部110が取得した動作状態情報に対応する動作範囲情報を取得する。
First, the
例えば、動作状態情報が、6つの軸AXの各々の動作状態:(J1,J2,J3,J4,J5,J6)であると、姿勢判定部120は、6つの軸AXの各々の動作状態についての動作範囲RAPを示す動作範囲情報を取得する。具体的には、姿勢判定部120は、軸AX(1)の動作状態:J1について予め指定されている動作範囲RAP(AX(1))を取得し、また、軸AX(2)の動作状態:J2について予め指定されている動作範囲RAP(AX(2))を取得する。同様に、姿勢判定部120は、J3、J4、J5、J6の各々についての動作範囲RAPである、動作範囲RAP(AX(3))、RAP(AX(4))、RAP(AX(5))、RAP(AX(6))を取得する。
For example, if the operating state information is the operating state of each of the six axes AX: (J1, J2, J3, J4, J5, J6), the
例えば、動作状態情報が、ロボットアーム30の手先の動作状態:(X,Y,Z,Rx,Ry,Rz)であると、姿勢判定部120は、「X」、「Y」、「Z」、「Rx」、「Ry」、「Rz」の各々の動作範囲RAPを示す動作範囲情報を取得する。具体的には、姿勢判定部120は、「X」について予め指定されている動作範囲RAP(X)を取得し、また、「Y」について予め指定されている動作範囲RAP(Y)を取得する。同様に、姿勢判定部120は、「Z」、「Rx」、「Ry」、「Rz」の各々についての動作範囲RAPである、動作範囲RAP(Z)、RAP(Rx)、RAP(Ry)、RAP(Rz)を取得する。
For example, if the operation state information is the operation state of the hand of the robot arm 30: (X, Y, Z, Rx, Ry, Rz), the
第二に、姿勢判定部120は、動作状態情報と動作範囲情報とを用いて、「ロボットアーム30の姿勢PSが、許可範囲RP内にあるか否か」を判定し、言い換えれば、「ロボットアーム30の姿勢PSが、経由姿勢PS(1)にあるか否か」を判定する。
Secondly, the
具体的には、先ず、姿勢判定部120の含む差分算出部121が、「動作状態情報に示される複数の動作状態の各々について、対応する動作範囲RAP内にあるか否か」を判定する。次に、姿勢判定部120は、「動作状態情報に示される複数の動作状態の各々」に対する差分算出部121の判定結果を用いて、「ロボットアーム30の姿勢PSが、許可範囲RP内にあるか否か」を判定する。「動作状態情報に示される複数の動作状態」の全てについて、差分算出部121が、「対応する動作範囲RAP内にある」と判定すると、姿勢判定部120は、「ロボットアーム30の姿勢PSが、許可範囲RP内にある」と判定する。「動作状態情報に示される複数の動作状態」の少なくとも1つについて、差分算出部121が、「対応する動作範囲RAP内にない」と判定すると、姿勢判定部120は、「ロボットアーム30の姿勢PSが、許可範囲RP内にない」と判定する。以下、詳細を説明する。
Specifically, first, the
差分算出部121は、「動作状態情報に示される複数の動作状態の各々について、対応する動作範囲RAP内にあるか否か」を判定し、例えば、「或る動作状態(p)が、対応する動作範囲RAP(p)内にあるか否か」を判定する。「或る動作状態(p)が、対応する動作範囲RAP(p)内にない」と判定すると、差分算出部121は、さらに、「或る動作状態(p)と、対応する動作範囲RAP(p)の最大値または最小値との差(差分)」を算出する。
The
例えば、差分算出部121は、「軸AX(1)の動作状態:J1が、最大値J1_MAXと最小値J1_minとが設定されている動作範囲RAP(AX(1))の範囲内にあるか否か」を判定する。「J1が動作範囲RAP(AX(1))の範囲内にある」と判定すると、差分算出部121は、J1と動作範囲RAP(AX(1))との差分として「0」を出力する。つまり、差分算出部121が、「J1と動作範囲RAP(AX(1))との差分」として、「0」を出力するのは、差分算出部121が、「J1が動作範囲RAP(AX(1))の範囲内にある」と判定した場合である。
For example, the
「J1が動作範囲RAP(AX(1))の範囲内にない」と判定すると、差分算出部121は、J1と動作範囲RAP(AX(1))との差分を出力する。例えば、「J1が、最大値J1_MAXよりも、『p』だけ大きい」と、差分算出部121は、J1と動作範囲RAP(AX(1))との差分として「+p」を出力する。例えば、「J1が、最小値J1_minよりも、『q』だけ小さい」と、差分算出部121は、J1と動作範囲RAP(AX(1))との差分として「−q」を出力する。つまり、差分算出部121が、「J1と動作範囲RAP(AX(1))との差分」として、「0」以外の値を出力するのは、差分算出部121が、「J1が動作範囲RAP(AX(1))の範囲内にない」と判定した場合である。
If it is determined that "J1 is not within the operating range RAP (AX (1))", the
前述の通り、「動作状態情報に示される複数の動作状態」の全てについて、差分算出部121が、「対応する動作範囲RAP内にある」と判定すると、姿勢判定部120は、「ロボットアーム30の姿勢PSが、許可範囲RP内にある」と判定する。言い換えれば、「姿勢判定部120が、『動作状態情報に示される複数の動作状態』の全てについて、対応する動作範囲RAPとの差分として、『0』を出力する」と、姿勢判定部120は、「ロボットアーム30の姿勢PSが、許可範囲RP内にある」と判定する。
As described above, when the
例えば、動作状態情報が(J1,J2,J3,J4,J5,J6)であると、姿勢判定部120が「ロボットアーム30の姿勢PSが、許可範囲RP内にある」と判定するのは、以下の場合である。すなわち、J1、J2、J3、J4、J5、J6の各々の、動作範囲RAP(AX(1))、RAP(AX(2))、RAP(AX(3))、RAP(AX(4))、RAP(AX(5))、RAP(AX(6))との差分が、全て「0」である場合である。
For example, when the operation state information is (J1, J2, J3, J4, J5, J6), the
例えば、動作状態情報が(X,Y,Z,Rx,Ry,Rz)であると、姿勢判定部120が「ロボットアーム30の姿勢PSが、許可範囲RP内にある」と判定するのは、以下の場合である。すなわち、「X」、「Y」、「Z」、「Rx」、「Ry」、「Rz」の各々の、動作範囲RAP(X)、RAP(Y)、RAP(Z)、RAP(Rx)、RAP(Ry)、RAP(Rz)との差分が、全て「0」である場合である。
For example, when the operation state information is (X, Y, Z, Rx, Ry, Rz), the
第三に、姿勢判定部120は、「ロボットアーム30の姿勢PSが、許可範囲RP内にある」と判定すると、その判定結果を通知部130へと出力し、また、原点復帰許可信号を復帰指示部170へと出力する。姿勢判定部120は、「ロボットアーム30の姿勢PSが、許可範囲RP内にない」と判定すると、その判定結果を通知部130へと出力する。「ロボットアーム30の姿勢PSが、許可範囲RP内にない」と判定すると、姿勢判定部120はさらに、差分算出部121が算出した差分を、差分情報として、通知部130、動作状態制御部180、および、誘導動作指示部190の各々へと出力する。
Third, when the
例えば、差分算出部121によって、J1と動作範囲RAP(AX(1))との差分として「+p」が出力されると、姿勢判定部120は、軸AX(1)の動作状態:J1に係る差分情報として、「+p」を出力する。例えば、差分算出部121によって、J2と動作範囲RAP(AX(2))との差分として「−q」が出力されると、姿勢判定部120は、軸AX(2)の動作状態:J2に係る差分情報として、「−q」を出力する。
For example, when the
差分算出部121は、上述の通り、「動作状態情報に示される複数の動作状態」の各々について、「対応する動作範囲RAP内にあるか否か」を判定する。特に、差分算出部121は、「動作状態情報に示される複数の動作状態」の各々について、対応する動作範囲RAPとの差(差分)を算出する。
As described above, the
通知部130は、姿勢判定部120による、「ロボットアーム30の姿勢PSが、許可範囲RP内にあるか否か(言い換えれば、ロボットアーム30が経由姿勢PS(1)をとっているか否か)」の判定結果を、作業者OPに通知する。通知部130は、ブザー等の音声出力機器、表示灯等の表示機器を制御して、上述の判定結果を、作業者OPに通知してもよい。
The
「ロボットアーム30の姿勢PSが、許可範囲RP内にない」との判定結果を作業者OPに通知する場合、通知部130は、さらに、差分算出部121によって算出された差分を、差分情報として、作業者OPに通知してもよい。
When notifying the operator OP of the determination result that "the posture PS of the robot arm 30 is not within the permitted range RP", the
例えば、差分算出部121によって、J1と動作範囲RAP(AX(1))との差分として「+p」が出力されると、通知部130は、軸AX(1)の動作状態:J1に係る差分情報として、「+p」を出力する。例えば、差分算出部121によって、J2と動作範囲RAP(AX(2))との差分として「−q」が出力されると、通知部130は、軸AX(2)の動作状態:J2に係る差分情報として、「−q」を出力する。
For example, when the
ユーザ操作取得部140は、ユーザ操作を受け付け、受け付けたユーザ操作をユーザ操作判定部150に通知する。ユーザ操作取得部140の受け付けるユーザ操作は、例えば、作業者OPによる、スイッチを押下したり、スイッチの押下を止めたりする(開放する)操作であってもよい。
The user
ユーザ操作判定部150は、ユーザ操作取得部140が受け付けたユーザ操作の内容を特定し、特定した内容に応じて、ユーザ操作取得部140が受け付けたユーザ操作の内容を、ロボット制御部10の各機能ブロックに通知する。
The user
例えば、ユーザ操作判定部150は、ユーザ操作取得部140が受け付けたユーザ操作が「原点復帰指示」であると判定すると、「原点復帰信号」を、復帰指示部170へと送信する。「原点復帰指示」は、作業者OPが、ロボット制御部10に対して、ロボットアーム30の原点復帰を指示するために与えるユーザ操作である。「ロボットアーム30の姿勢PSが、許可範囲RP内にある」との判定結果を通知部130から通知された作業者OPは、ロボットアーム30の置かれている状況を確認し、必要であれば、ロボットアーム30の周囲から障害物等を除去する。そして、「『通知部130から上述の判定結果を通知された時点で、ロボットアーム30がとっている姿勢PS』から、ロボットアーム30を直行的に原点復帰させてもよい」ことを確認すると、作業者OPは、ロボット制御部10に原点復帰指示を与える。
For example, when the user
例えば、ユーザ操作判定部150は、ユーザ操作取得部140が受け付けたユーザ操作が「手動モードへと遷移させる遷移操作」であると判定すると、動作状態制御部180にその旨を通知し、動作状態制御部180に以下の処理を実行させる。すなわち、ユーザ操作判定部150は、動作状態制御部180に、作業者OPによる手動でのロボットアーム30の姿勢PSの変更を許可または禁止する、ロック信号またはアンロック信号を、ロボットアーム制御部20へと出力させる。
For example, when the user
例えば、ユーザ操作判定部150は、ユーザ操作取得部140が受け付けたユーザ操作が「自動誘導モードへと遷移させる遷移操作」であると判定すると、誘導動作指示部190を「自動誘導動作の実行準備状態」にする。詳細は後述するが、「自動誘導動作」は、誘導動作指示部190が、ロボットアーム制御部20を介して、ロボットアーム30の姿勢PSを経由姿勢PS(1)へと変更する動作(処理)である。
For example, when the user
例えば、ユーザ操作判定部150は、ユーザ操作取得部140が受け付けたユーザ操作が「自動誘導スイッチの押下を継続する」操作であると判定すると、「自動誘導動作の許可(特に、自動誘導動作の実行継続の許可)」を、誘導動作指示部190へと送信する。例えば、ユーザ操作判定部150は、ユーザ操作取得部140が受け付けたユーザ操作が「自動誘導スイッチの押下を止める」操作であると判定すると、「自動誘導動作の不許可(特に、自動誘導動作の停止の指示)」を、誘導動作指示部190へと送信する。
For example, when the user
復帰指示部170は、姿勢判定部120からの原点復帰許可信号を受け付けた状態で、ユーザ操作判定部150から原点復帰信号を受け付けると、原点復帰制御信号を、ロボットアーム制御部20へと送信する。すなわち、復帰指示部170は、「通知部130が『ロボットアーム30の姿勢PSが、許可範囲RP内にある』との判定結果を通知した時点で、ロボットアーム30がとっている姿勢PS」から、ロボットアーム30を直行的に原点復帰させる。
When the
動作状態制御部180は、姿勢判定部120から通知された差分情報を用いて、ロボットアーム30の軸AXの動作状態を制御し、具体的には、ロック信号またはアンロック信号を、ロボットアーム制御部20へと送信する。「ロック信号」は、軸AXの動作状態の維持を指示する信号であり、言い換えれば、「作業者OPが、軸AXの動作状態を変更する」ことを禁止する信号である。「アンロック信号」は、「作業者OPが、軸AXの動作状態を変更する」ことを許可する信号である。
The operation
例えば、差分情報において、「ロボットアーム30の備える或る軸AX(p)の動作状態と、対応する動作範囲RAP(p)との差(差分)が、『0』である」と、動作状態制御部180は、その或る軸AX(p)の動作状態を維持するロック信号を出力する。
For example, in the difference information, "the difference (difference) between the operating state of a certain axis AX (p) included in the robot arm 30 and the corresponding operating range RAP (p) is" 0 "", the operating state. The
例えば、差分情報において、「或る軸AX(p)の動作状態と、対応する動作範囲RAP(p)との差分が、『0』でない」と、動作状態制御部180は、「その或る軸AX(p)の動作状態の、作業者OPによる変更」を許可するアンロック信号を出力する。
For example, in the difference information, "the difference between the operating state of a certain axis AX (p) and the corresponding operating range RAP (p) is not" 0 "", the operating
特に、作業者OPによる、或る軸AX(p)の動作状態の変更が、「或る軸AX(p)の動作状態と、対応する動作範囲RAP(p)との差分を『0』にする」ものになるように、動作状態制御部180は、或る軸AX(p)の動作状態を制御する。
In particular, the change in the operating state of a certain axis AX (p) by the operator OP changes the difference between the operating state of a certain axis AX (p) and the corresponding operating range RAP (p) to "0". The operation
例えば、或る軸AX(p)の動作状態と、対応する動作範囲RAP(p)との差分が、「+x」であると、動作状態制御部180は、軸AX(p)の動作状態を制御する、以下のアンロック信号を出力する。すなわち、作業者OPによる軸AX(p)の動作状態の変更のうち、上述の差分を「0」に近付ける変更(言い換えれば、「+x」を「0」へと減らす変更)のみを許可するアンロック信号を、動作状態制御部180は出力する。
For example, when the difference between the operating state of a certain axis AX (p) and the corresponding operating range RAP (p) is "+ x", the operating
例えば、或る軸AX(q)の動作状態と、対応する動作範囲RAP(q)との差分が、「−y」であると、動作状態制御部180は、軸AX(q)の動作状態を制御する、以下のアンロック信号を出力する。すなわち、作業者OPによる軸AX(q)の動作状態の変更のうち、上述の差分を「0」に近付ける変更(言い換えれば、「−y」を「0」へと増やす変更)のみを許可するアンロック信号を、動作状態制御部180は出力する。
For example, when the difference between the operating state of a certain axis AX (q) and the corresponding operating range RAP (q) is “−y”, the operating
すなわち、ロボット制御部10は、ロボットアーム30の備える軸AX(関節)の動作状態(例えば、角度(方向、回転量)、大きさ(長さ、手先の移動量)等)を制御する動作状態制御部180を備えている。
That is, the
具体的には、動作状態制御部180は、ロボットアーム30の備える軸AXについて、軸AXの動作状態が、許可範囲RPに対応する動作範囲RAP内にあると、その動作状態を維持する。例えば、動作状態制御部180は、ロボットアーム30の備える或る軸AX(p)の角度(回転量)が、動作範囲RAP(p)内にあると、作業者OPが、その或る軸AX(p)の角度を変更することを禁止する。
Specifically, the operation
また、動作状態制御部180は、ロボットアーム30の備える軸AXについて、軸AXの動作状態が、許可範囲RPに対応する動作範囲RAP内にないと、作業者OPが、その動作状態を変更することを許可する。例えば、動作状態制御部180は、ロボットアーム30の備える或る軸AX(p)の角度(回転量)が、動作範囲RAP(p)内にないと、作業者OPが、その或る軸AX(p)の角度を変更することを許可する。
Further, the operation
前記の構成によれば、ロボット制御部10は、「ロボットアーム30の備える軸AX(p)の動作状態が、許可範囲RPに対応する動作範囲RAP(p)内にある」と、その動作状態を維持し、例えば、軸AX(p)が動かないように軸AX(p)をロックする。また、ロボット制御部10は、「ロボットアーム30の備える軸AX(p)の動作状態が、許可範囲RPに対応する動作範囲RAP(p)内にない」と、その動作状態の作業者OPによる変更を許可する。例えば、ロボット制御部10は、動作範囲RAP(p)内にない動作状態を示している軸AX(p)があると、作業者OPが手動でロボットアーム30の姿勢PSを変更できるように、その軸AX(p)のロックを解除する(言い換えれば、アンロックする)。
According to the above configuration, the
ここで、一般に作業者OPにとって、「どうすれば、『衝突を発生させることなく、直行的に原点復帰できる姿勢(つまり、経由姿勢PS(1))』へと、ロボットアーム30の姿勢PSを変更できるのか?」は、容易には把握できない。 Here, in general, for the worker OP, the posture PS of the robot arm 30 can be changed to "how can the posture PS allow the robot arm 30 to return to the origin directly without causing a collision (that is, the transit posture PS (1))". Is it not easy to grasp?
そこで、ロボット制御部10は、軸AXの動作状態を制御して、作業者OPが経由姿勢PS(1)へとロボットアーム30の姿勢PSを変更するのをサポートする。
Therefore, the
例えば、ロボットアーム30の姿勢PSを経由姿勢PS(1)へと変更するために、或る軸AX(x)の動作状態の変更は不要であり、別の軸AX(y)の動作状態の変更は必要であるといった場合を想定することができる。そのような場合、ロボット制御部10は、或る軸AX(x)については、作業者OPによって動作状態が変更されるのを防ぎ、つまり、或る軸AX(x)の動作状態を維持して、例えば、動作状態が変更されないように、或る軸AX(x)をロックする。また、ロボット制御部10は、別の軸AX(y)については、作業者OPによる動作状態の変更を許可し、例えば、別の軸AX(y)の動作状態を作業者OPが手動で変更できるように、別の軸AX(y)のロックを解除する。
For example, in order to change the posture PS of the robot arm 30 to the transit posture PS (1), it is not necessary to change the operating state of one axis AX (x), and it is not necessary to change the operating state of another axis AX (y). It is possible to assume that changes are necessary. In such a case, the
したがって、ロボット制御部10は、作業者OPが、ロボットアーム30の姿勢PSを、経由姿勢PS(1)へと手動で変更することを容易にするとの効果を奏する。
Therefore, the
ロボット制御部10(特に、通知部130)は、ロボットアーム30の備える軸AX(関節)のうち、動作状態を維持している軸AXがどれであるかを示す情報を作業者OPに通知してもよい。例えば、通知部130は、「動作状態制御部180が動かないようにロックしている軸AXがどれであるか」を示す情報を、作業者OPに通知してもよい。同様に、通知部130は、「ロボットアーム30の備える軸AXのうち、作業者OPによる動作状態の変更を許可している軸AXがどれであるか」を示す情報を作業者OPに通知してもよい。すなわち、通知部130は、「動作状態制御部180がロックを解除している軸AXがどれであるか」を示す情報を作業者OPに通知してもよい。
The robot control unit 10 (particularly, the notification unit 130) notifies the operator OP of information indicating which of the axis AX (joints) included in the robot arm 30 is the axis AX that maintains the operating state. You may. For example, the
また、ロボット制御部10(特に、動作状態制御部180)は、ロボットアーム30の備える軸AXのうち、動作状態の作業者OPによる変更を許可している軸AXについて、作業者OPが手動で変更できる動作状態を特定の範囲に制限してもよい。例えば、動作状態制御部180は、前述の軸AX(y)(つまり、ロックを解除した軸AX)について、作業者OPが手動で変更できる動作状態を特定の範囲に制限してもよい。具体例には、動作状態制御部180は、軸AX(y)について、作業者OPが変更できる「関節の角度(回転量)」を特定範囲に制限したり、作業者OPが変更できる「手先の移動量」を特定範囲に制限したりしてもよい。特に、動作状態制御部180は、作業者OPによる「軸AX(y)の動作状態に対する変更」のうち、「ロボットアーム30の姿勢PSを、経由姿勢PS(1)に近づける、『関節の角度の変更』、『手先の移動量の変更』」のみを、許容してもよい。
Further, in the robot control unit 10 (particularly, the operation state control unit 180), among the axis AX provided in the robot arm 30, the operator OP manually adjusts the axis AX that is permitted to be changed by the operator OP in the operation state. The operating state that can be changed may be limited to a specific range. For example, the operation
言い換えれば、動作状態制御部180は、作業者OPによる「軸AX(y)の動作状態に対する変更」のうち、「軸AX(y)の動作状態を、許可範囲RPに対応する動作範囲RAP(y)内に収めようとする変更」のみを受け付けてもよい。動作状態制御部180は、「軸AX(y)の動作状態を、動作範囲RAP(y)から遠ざける」変更は受け付けず、例えば、作業者OPがそのような変更を行えないように、軸AX(y)の動作状態について、変更可能な範囲を制限してもよい。
In other words, the operation
ロボット制御部10(特に、通知部130)は、ロボットアーム30の備える軸AXのうち、作業者OPによる動作状態の変更を許可している軸AX(例えば、前述の軸AX(y))について、変更可能な動作状態の範囲を、作業者OPに通知してもよい。例えば、通知部130は、作業者OPによる動作状態の変更を許可している軸AXについて、ロボットアーム30の姿勢PSを許可範囲RP内とするのに望ましい動作状態を、作業者OPに通知してもよい。具体的には、通知部130は、前述の軸AX(y)の動作状態について、望ましい「関節の角度(回転量)」、望ましい「手先の移動量」等を、作業者OPに通知してもよい。
The robot control unit 10 (particularly, the notification unit 130) relates to an axis AX (for example, the above-mentioned axis AX (y)) that allows the operator OP to change the operating state among the axis AX provided in the robot arm 30. , The range of the changeable operating state may be notified to the worker OP. For example, the
誘導動作指示部190は、ユーザ操作判定部150から通知される「誘導動作の許否(つまり、作業者OPによる、「誘導動作の実行を継続してもよいか否か」の判断)」に従って、誘導動作を継続し、または、誘導動作を停止する。
The guidance
例えば、誘導動作指示部190は、「自動誘導動作の実行準備状態」にあって、ユーザ操作判定部150から、「自動誘導動作の許可」を通知されると、「自動誘導動作」の実行を開始し、または、実行を継続する。すなわち、誘導動作指示部190は、ロボットアーム制御部20に、「ロボットアーム30の姿勢PSを、経由姿勢PS(1)へと変更する」誘導動作継続信号を送信する。
For example, when the guidance
例えば、誘導動作指示部190は、「自動誘導動作の実行準備状態」にあって、ユーザ操作判定部150から、「自動誘導動作の不許可」を通知されると、「自動誘導動作」の実行を停止する。すなわち、誘導動作指示部190は、ロボットアーム制御部20に、「ロボットアーム30の姿勢PSの変更を停止する」誘導動作停止信号を送信する。
For example, when the guidance
すなわち、誘導動作指示部190は、許可範囲RP内にない姿勢PS(例、姿勢PS(2))から、経由姿勢PS(1)へと、ロボットアーム30の姿勢PSを変更する誘導動作を、作業者OPによる許可が継続している間、実行する。また、誘導動作指示部190は、作業者OPによる許可がなくなると、前述の誘導動作の実行を中断する。
That is, the guidance
前記の構成によれば、ロボット制御部10は、「許可範囲RP内にない姿勢PS(例、姿勢PS(2))から、許可範囲RP内にある姿勢PS(例、経由姿勢PS(1))へと、ロボットアーム30の姿勢PSを変更する」誘導動作を、作業者OPによる許可が継続している間、実行する。例えば、ロボット制御部10は、「姿勢PS(2)から経由姿勢PS(1)へと、ロボットアーム30の姿勢PSを変更する」誘導動作を、作業者OPによる許可が継続している間、実行する。具体的には、ロボット制御部10は、作業者OPによる許可が継続している間、ロボットアーム30の姿勢PSを姿勢PS(2)から経由姿勢PS(1)へと、手先の位置を「経由姿勢PS(1)における手先の位置」へと直行させる経路で、変更し続ける。また、ロボット制御部10は、作業者OPによる前述の許可がなくなると、誘導動作の実行を中断し、例えば、作業者OPが手動でロボットアーム30の姿勢PSを変更できるようにする。
According to the above configuration, the
したがって、ロボット制御部10は、誘導動作による変更と作業者OPによる手動での変更とを、作業者OPの許可の有無に従って切り替えることで、ロボットアーム30の姿勢PSを効率的かつ安全に、経由姿勢PS(1)へと変更できるとの効果を奏する。
Therefore, the
(記憶部について)
記憶部160は、ロボット制御部10が使用する各種データを格納する記憶装置である。なお、記憶部160は、ロボット制御部10が実行する(1)制御プログラム、(2)OSプログラム、(3)ロボット制御部10が有する各種機能を実行するためのアプリケーションプログラム、および、(4)該アプリケーションプログラムを実行するときに読み出す各種データを非一時的に記憶してもよい。上記の(1)〜(4)のデータは、例えば、ROM(read only memory)、フラッシュメモリ、EPROM(Erasable Programmable ROM)、EEPROM(登録商標)(Electrically EPROM)、HDD(Hard Disc Drive)等の不揮発性記憶装置に記憶される。ロボット制御部10は、図示しない一時記憶部を備えていてもよい。一時記憶部は、ロボット制御部10が実行する各種処理の過程で、演算に使用するデータおよび演算結果等を一時的に記憶するいわゆるワーキングメモリであり、RAM(Random Access Memory)等の揮発性記憶装置で構成される。どのデータをどの記憶装置に記憶するのかについては、ロボット制御部10の使用目的、利便性、コスト、または、物理的な制約等から適宜決定される。記憶部160はさらに、許可範囲テーブル161を格納している。
(About the memory)
The storage unit 160 is a storage device that stores various data used by the
許可範囲テーブル161には、許可範囲RPを示す許可範囲情報が格納されており、具体的には、ロボットアーム30の備える複数の軸AXの各々の動作状態、または、手先の座標(動作状態)に対する動作範囲RAPを示す動作範囲情報が格納されている。 The permission range table 161 stores the permission range information indicating the permission range RP. Specifically, the operating state of each of the plurality of axes AX included in the robot arm 30, or the coordinates (operating state) of the hand. The operating range information indicating the operating range RAP for is stored.
詳細は後述するが、許可範囲テーブル161に格納されている許可範囲情報(動作範囲情報)は、作業者OPによって書き換え可能であってもよい。以下では先ず、許可範囲情報の設定方法について、より正確には、許可範囲RP(つまり、経由姿勢PS(1))の決定方法について、詳細を説明する。 Although the details will be described later, the permission range information (operating range information) stored in the permission range table 161 may be rewritable by the operator OP. In the following, first, the method of setting the permission range information, and more accurately, the method of determining the permission range RP (that is, the passage posture PS (1)) will be described in detail.
(許可範囲RP勢(経由姿)の決定方法)
ロボット制御部10において、許可範囲RPは、ロボットアーム30の設計情報に基づいて、作業者OPによって設定されてもよい。前記の構成によれば、ロボット制御部10において、許可範囲RPは、ロボットアーム30の設計情報に基づいて、例えば、ロボットアーム30の3次元CAD(Computer Aided Design)データと制御に係るデータとに基づいて、作業者OPによって設定される。例えば、作業者OPは、ロボットアーム30の3次元モデルについて機械的取り合いを検討し、検討結果に基づいて、許可範囲RPを設定する。
(How to determine the permitted range RP group (via appearance))
In the
したがって、ロボット制御部10は、ロボットアーム30の姿勢PSが、ロボットアーム30の設計情報に基づいて作業者OPによって予め設定された許可範囲RP内にあるか否かを判定することができるとの効果を奏する。
Therefore, the
ロボット制御部10は、「ロボットアーム30の3次元モデルを、或る姿勢PS(x)から直行的に原点復帰させた場合に、衝突が発生しない」と判定すると、その或る姿勢PS(x)を含むように、許可範囲RPを設定してもよい。
When the
前記の構成によれば、ロボット制御部10は、「ロボットアーム30の3次元モデルを、或る姿勢PS(x)から直行的に原点復帰させた場合に、衝突が発生しない」と判定すると、その或る姿勢PS(x)を含むように、許可範囲RPを設定する。
According to the above configuration, the
したがって、ロボット制御部10は、ロボットアーム30の3次元モデルを用いたシミュレーション等によって安全性を検証した以下の姿勢PSを含むように、許可範囲RPを設定できるとの効果を奏する。すなわち、ロボット制御部10は、ロボットアーム30の3次元モデルを用いたシミュレーション等によって、「直行的に原点復帰させても衝突が発生しない」と判定したロボットアーム30の姿勢PSを含むように、許可範囲RPを設定できるとの効果を奏する。
Therefore, the
ロボット制御部10において、許可範囲RPは、「衝突を発生させることなく、直行的に原点復帰できる」姿勢PSとして、作業者OPがロボットアーム30を手動で動かしてロボットアーム30にとらせた姿勢PS(x)を含むように設定されてもよい。
In the
前記の構成によれば、ロボット制御部10において、許可範囲RPは、「安全かつ直行的に原点復帰できる」姿勢PSとして、作業者OPがロボットアーム30を手動で動かしてロボットアーム30にとらせた姿勢PS(x)を含むように設定される。例えば、許可範囲RPは、作業者OPが「衝突を発生させることなく、直行的に原点復帰できる」姿勢PSとしてティーチングした姿勢PS(x)を含むように、設定される。
According to the above configuration, in the
したがって、ロボット制御部10は、「安全かつ直行的に原点復帰できる」姿勢PSとして、作業者OPがロボットアーム30を手動で動かしてロボットアーム30にとらせた姿勢PS(x)を含むように、許可範囲RPを設定できるとの効果を奏する。
Therefore, the
(経由姿勢(許可範囲RP)に係る一般的留意事項)
例えば、原点姿勢PS(0)における手先の座標を、(X(0),Y(0),Z(0),Rx(0),Ry(0),Rz(0))と表現できる場合、ロボットアーム30の手先の座標:(X,Y,Z,Rx,Ry,Rz)については、一般的に以下の傾向がある。すなわち、或る姿勢PS(p)から原点復帰する際には、その或る姿勢PS(p)における(Rx(p),Ry(p),Rz(p))は、なるべく、原点姿勢PS(0)における手先の(Rx(0),Ry(0),Rz(0))に近い方が望ましい。(Rx(p),Ry(p),Rz(p))が(Rx(0),Ry(0),Rz(0))に近いと、原点復帰に際して必要となる手首の旋回量を抑制でき、ロボットアーム30(特に、手先)と障害物等との衝突の可能性を抑制することができるからである。
(General precautions regarding the waypoint (permitted range RP))
For example, when the coordinates of the hand in the origin posture PS (0) can be expressed as (X (0), Y (0), Z (0), Rx (0), Ry (0), Rz (0)). The coordinates of the hand of the robot arm 30: (X, Y, Z, Rx, Ry, Rz) generally have the following tendencies. That is, when returning to the origin from a certain posture PS (p), the (Rx (p), Ry (p), Rz (p)) in the certain posture PS (p) is preferably the origin posture PS ( It is desirable that it is closer to the hand (Rx (0), Ry (0), Rz (0)) in 0). When (Rx (p), Ry (p), Rz (p)) is close to (Rx (0), Ry (0), Rz (0)), the amount of wrist rotation required for returning to the origin can be suppressed. This is because the possibility of collision between the robot arm 30 (particularly the hand) and an obstacle or the like can be suppressed.
そのため、経由姿勢PS(1)における手先の座標を、(X(1),Y(1),Z(1),Rx(1),Ry(1),Rz(1))と表現する場合、或る姿勢PS(p)から原点復帰する際の経由姿勢PS(1)について、以下の指摘が可能となる。 Therefore, when the coordinates of the hand in the transit posture PS (1) are expressed as (X (1), Y (1), Z (1), Rx (1), Ry (1), Rz (1)), The following points can be made regarding the transit posture PS (1) when returning to the origin from a certain posture PS (p).
すなわち、(X(1),Y(1),Z(1))は、「(X(p),Y(p),Z(p))と、(X(0),Y(0),Z(0))とを結ぶ直線」上にあることが望ましい。(Rx(1),Ry(1),Rz(1))は、「(Rx(p),Ry(p),Rz(p))から(Rx(0),Ry(0),Rz(0))へと角度を合せる(回転する)途中の、角度(つまり、方向、回転量)」であることが望ましい。 That is, (X (1), Y (1), Z (1)) is "(X (p), Y (p), Z (p)) and (X (0), Y (0), It is desirable that it is on a straight line connecting Z (0)). (Rx (1), Ry (1), Rz (1)) is from "(Rx (p), Ry (p), Rz (p)) to (Rx (0), Ry (0), Rz (0). )) It is desirable that the angle (that is, the direction, the amount of rotation) is in the middle of adjusting (rotating) the angle.
(ロボットアーム30の置かれている状況に応じて変化する経由姿勢の例)
ここで、許可範囲テーブル161に格納されている許可範囲情報は、ロボットアーム30の置かれている状況に応じて適宜更新されてもよい。言い換えれば、「ロボットアーム30の置かれている状況」に応じて、ロボットアーム30の経由姿勢(1)は適宜変更されてもよい。以下、図4および図5を用いて、「ロボットアーム30の置かれている状況」に応じて、ロボットアーム30の経由姿勢(1)が適宜変更され得ることを説明する。
(Example of transit posture that changes according to the situation in which the robot arm 30 is placed)
Here, the permission range information stored in the permission range table 161 may be appropriately updated according to the situation in which the robot arm 30 is placed. In other words, the way posture (1) of the robot arm 30 may be changed as appropriate according to the “situation in which the robot arm 30 is placed”. Hereinafter, it will be described with reference to FIGS. 4 and 5 that the transit posture (1) of the robot arm 30 can be appropriately changed according to the “situation in which the robot arm 30 is placed”.
図4は、ロボットアーム30の手先(エンドエフェクタ)がフック形状である場合の、ロボットアーム30の原点復帰について説明する図である。手先がフック形状であるロボットアーム30の原点姿勢PS(0)は、例えば、図4の紙面上側中央に例示する「フック形状の手先を収納する姿勢PS」となる。 FIG. 4 is a diagram illustrating the return to origin of the robot arm 30 when the hand (end effector) of the robot arm 30 has a hook shape. The origin posture PS (0) of the robot arm 30 whose hands are hook-shaped is, for example, the “posture PS for storing hook-shaped hands” illustrated in the center of the upper side of the paper in FIG.
ロボットアーム30の姿勢PSを、図4の紙面左下側の姿勢PS(2)の各々から図4に例示する原点姿勢PS(0)へと、直行的に変更しようとすると、ロボットアーム30が搬送ロボット部40等と衝突する可能性がある。なお、図4の紙面左下側に例示する2つのロボットアーム30(ロボット1)は、「同じ姿勢PS(2)をとっているロボットアーム30(ロボット1)」を別の角度より図示したものである。
When the robot arm 30 tries to change the posture PS of the robot arm 30 from each of the posture PS (2) on the lower left side of the paper in FIG. 4 to the origin posture PS (0) illustrated in FIG. 4, the robot arm 30 is conveyed. There is a possibility of collision with the
これに対して、図4の紙面右下側の経由姿勢PS(1)からであれば、ロボットアーム30と搬送ロボット部40等との衝突を回避しつつ、原点姿勢PS(0)へと直行的にロボットアーム30の姿勢PSを変更することができる。なお、図4の紙面右下側に例示する2つのロボットアーム30(ロボット1)は、「同じ姿勢PS(1)をとっているロボットアーム30(ロボット1)」を別の角度より図示したものである。
On the other hand, from the transit posture PS (1) on the lower right side of the paper in FIG. 4, the robot arm 30 goes straight to the origin posture PS (0) while avoiding collision with the
図4に示す「手先がフック形状であるロボットアーム30」について、経由姿勢PS(1)の条件は、以下のように整理することができる。すなわち、「手先がフック形状であるロボットアーム30」の経由姿勢PS(1)の条件は、「手先と搬送ロボット部40等とを干渉させることなく、原点姿勢PS(0)における手先の位置まで、手先を直行させることができる」ことである。
Regarding the "robot arm 30 having a hook-shaped hand" shown in FIG. 4, the conditions of the transit posture PS (1) can be arranged as follows. That is, the condition of the transit posture PS (1) of the "robot arm 30 having a hook shape of the hand" is "to the position of the hand in the origin posture PS (0) without interfering with the hand and the
図5は、搬送ロボット部40がワークを載置しておくために備える在荷部が高い位置にある場合の、ロボットアーム30の原点復帰について説明する図である。在荷部が高い位置にある場合のロボットアーム30の原点姿勢PS(0)は、例えば、図5の紙面上側中央に例示する「手先を在荷部よりも高い位置に配置する姿勢PS」となる。
FIG. 5 is a diagram for explaining the return to origin of the robot arm 30 when the loaded portion provided by the
ロボットアーム30の姿勢PSを、図5の紙面左下側の姿勢PS(2)の各々から図4に例示する原点姿勢PS(0)へと、直行的に変更しようとすると、ロボットアーム30が搬送ロボット部40(特に、在荷部およびワーク)等と衝突する可能性がある。なお、図5の紙面左下側に例示する2つのロボットアーム30(ロボット1)は、「同じ姿勢PS(2)をとっているロボットアーム30(ロボット1)」を別の角度より図示したものである。 When the robot arm 30 tries to change the posture PS of the robot arm 30 from each of the posture PS (2) on the lower left side of the paper in FIG. 5 to the origin posture PS (0) illustrated in FIG. 4, the robot arm 30 is conveyed. There is a possibility of collision with the robot unit 40 (particularly, the loaded unit and the work) and the like. The two robot arms 30 (robot 1) illustrated on the lower left side of the paper in FIG. 5 are "robot arms 30 (robot 1) in the same posture PS (2)" illustrated from different angles. be.
これに対して、図5の紙面右下側の経由姿勢PS(1)からであれば、ロボットアーム30と搬送ロボット部40等との衝突を回避しつつ、原点姿勢PS(0)へと直行的にロボットアーム30の姿勢PSを変更することができる。なお、図5の紙面右下側に例示する2つのロボットアーム30(ロボット1)は、「同じ姿勢PS(1)をとっているロボットアーム30(ロボット1)」を別の角度より図示したものである。
On the other hand, from the transit posture PS (1) on the lower right side of the paper in FIG. 5, the robot arm 30 goes straight to the origin posture PS (0) while avoiding collision with the
図5に示す「在荷部が高い位置にある場合のロボットアーム30」について、経由姿勢PS(1)の条件は、以下のように整理することができる。すなわち、「在荷部が高い位置にある場合のロボットアーム30」の経由姿勢PS(1)の条件は、「手先と在荷部およびワークとを干渉させることなく、原点姿勢PS(0)における手先の位置まで、手先を直行させることができる」ことである。 Regarding the "robot arm 30 when the loaded portion is in a high position" shown in FIG. 5, the conditions of the transit posture PS (1) can be arranged as follows. That is, the condition of the transit posture PS (1) of the "robot arm 30 when the loaded portion is in a high position" is the "origin posture PS (0) without interfering with the hand, the loaded portion and the work". It is possible to make the hand go straight to the position of the hand. "
これまで図4および図5を用いて説明してきたように、ロボットアーム30の周囲の物理的環境だけでなく、ロボットアーム30の手先の形状、搬送ロボット部40の在荷部の高さ等によっても、ロボットアーム30の経由姿勢PS(1)は異なる。言い換えれば、ロボットアーム30の置かれている状況に応じて、経由姿勢PS(1)として認められるロボットアーム30の姿勢PSの範囲、つまり、許可範囲RPは異なる。
As described above with reference to FIGS. 4 and 5, not only the physical environment around the robot arm 30, but also the shape of the hand of the robot arm 30, the height of the loaded portion of the
そこで、許可範囲RPは、ロボットアーム30の置かれている状況に応じて、適宜変更されてもよく、つまり、ロボット制御部10において、許可範囲RPは更新可能である。
Therefore, the permission range RP may be appropriately changed according to the situation in which the robot arm 30 is placed, that is, the permission range RP can be updated in the
前記の構成によれば、ロボット制御部10において、例えば作業者は、許可範囲テーブル161に格納されている許可範囲情報(許可範囲RP)を、適宜更新することができる。したがって、ロボット制御部10は、ロボットアーム30の置かれている状況に応じて適宜更新された許可範囲RPを利用して、ロボットアーム30を、障害物等との衝突を回避しつつ原点位置へと復帰させることができるとの効果を奏する。
According to the above configuration, in the
§3.動作例
これまで説明してきたように、ロボット制御部10は、ロボットアーム30の姿勢PSが許可範囲RP内になった(つまり、ロボットアーム30の姿勢PSが経由姿勢PS(1)になった)と判断すると、以下の処理を実行する。すなわち、ロボット制御部10は、ロボットアーム30の原点復帰の当否(可否)を作業者OPに確認させ、原点復帰の当否を確認した作業者OPから原点復帰指示があると、ロボットアーム30を、経由姿勢PS(1)から直行的に、原点復帰させる。
§3. Operation example As described above, in the
ここで、ロボットアーム30の姿勢PS(特に、許可範囲RP内にない姿勢PS(2))を、経由姿勢PS(1)へと変更する方法については、特に限定されない。すなわち、作業者OPが手動で、ロボットアーム30の姿勢PSを、姿勢PS(2)から経由姿勢PS(1)へと変更してもよい。また、ロボット制御部10(特に、誘導動作指示部190)が、ロボットアーム30の姿勢PSを、姿勢PS(2)から経由姿勢PS(1)へと変更してもよい。以下、図6および図7を用いて、「作業者OPまたはロボット制御部10が、ロボットアーム30の姿勢PS(2)を経由姿勢PS(1)へと変更し、その後、ロボット制御部10が、経由姿勢PS(1)を原点姿勢PS(0)へと変更する」例について、説明する。
Here, the method of changing the posture PS of the robot arm 30 (particularly, the posture PS (2) not within the permitted range RP) to the transit posture PS (1) is not particularly limited. That is, the worker OP may manually change the posture PS of the robot arm 30 from the posture PS (2) to the transit posture PS (1). Further, the robot control unit 10 (particularly, the guidance operation instruction unit 190) may change the posture PS of the robot arm 30 from the posture PS (2) to the transit posture PS (1). Hereinafter, using FIGS. 6 and 7, "the worker OP or the
(作業者が手動で、ロボットアームの姿勢を経由姿勢に変更するケース)
図6は、作業者OPが手動でロボットアーム30の姿勢PSを経由姿勢PS(1)に変更した後、ロボット制御部10が、経由姿勢PS(1)から直行的にロボットアーム30を原点復帰させる場合のフロー図である。
(A case where the operator manually changes the posture of the robot arm to the transit posture)
In FIG. 6, after the operator OP manually changes the posture PS of the robot arm 30 to the transit posture PS (1), the
姿勢判定部120は、ロボットアーム30の複数の軸AXの動作状態(例えば、関節の角度(回転量)等)と、許可範囲テーブル161に格納されている許可範囲RP(より正確には、許可範囲RPに対応する動作範囲RAP)とを用いて、以下の判定を行う。すなわち、姿勢判定部120は、ロボットアーム30の姿勢PSが許可範囲RP内にあるか否かを判定する。そして、通知部130は、姿勢判定部120による上述の判定の判定結果を、作業者OPに通知する。
The
姿勢判定部120によって「ロボットアーム30の姿勢PSが許可範囲RP外にある」と判定されていると(SRC10)、作業者OPは、例えば、ロボット制御部10を「手動モード」へと遷移させる遷移操作を行う(SOP10)。「手動モード」は、ロボット制御部10が、作業者OPに、ロボットアーム30の姿勢PSを手動にて変更することを許可とするモードである。
When the
ユーザ操作判定部150は、「ユーザ操作取得部140によって、作業者OPによる『手動モード』への遷移操作が受け付けられた」と判定すると、ロボット制御部10を手動モードに遷移させる(SRC20)。ロボット制御部10が手動モードにある間、作業者OPはロボットアーム30の姿勢PSを手動にて変更することができるため、作業者OPは、経由姿勢PS(1)に向けてロボットアーム30を誘導する(SOP20)。つまり、作業者OPは、ロボットアーム30の姿勢PSが経由姿勢PS(1)となるように、ロボットアーム30の姿勢PSを手動で変更する。
When the user
ロボット制御部10が手動モードにある間、通知部130は、作業者OPに、ロボットアーム30の経由姿勢PS(1)を示す情報を通知してもよい。例えば、通知部130は、作業者OPが確認可能な表示画面に、ロボットアーム30の経由姿勢PS(1)を参考画像として表示させてもよい。また、通知部130は、ロボットアーム30の姿勢PSを経由姿勢PS(1)にするために必要な変更についての情報を、作業者OPに通知してもよい。例えば、通知部130は、「ロボットアーム30の姿勢PSを経由姿勢PS(1)にするためには、ロボットアーム30の備える軸AX(関節)をどの方向に、どれくらい回転させるのが望ましいか」を、作業者OPに通知してもよい。つまり、通知部130は、ロボットアーム30の姿勢PSを経由姿勢PS(1)に変更しようとする作業者OPを補助する情報を作業者OPに通知して、SOP20の作業者OPによるロボットアーム30の誘導を補助してもよい。
While the
姿勢判定部120は、SOP20において作業者OPによって誘導されたロボットアーム30の姿勢PSを監視しておき、「ロボットアーム30の姿勢PSが経由姿勢PS(1)として認められた許可範囲RP内にあるか」を判定する(SRC30)。つまり、姿勢判定部120は、作業者OPに手動で変更された「ロボットアーム30の姿勢PS」が、経由姿勢PS(1)として認められた許可範囲RP内にあるかを判定する。
The
通知部130は、姿勢判定部120による判定の結果(判定結果)を作業者OPに通知し、ロボットアーム30の姿勢PSが経由姿勢PS(1)として認められた許可範囲RP外にある間(SRC30でNO)、作業者OPはSOP20の誘導を継続する。
The
姿勢判定部120は「ロボットアーム30の姿勢PSが経由姿勢PS(1)として認められた許可範囲RP内にある」と判定すると(SRC30でYES)、以下の処理を実行する。すなわち、姿勢判定部120は、「ロボットアーム30の姿勢PSが許可範囲RP内にある」との判定結果を通知部130に通知して、通知部130にその判定結果を出力させ、また、復帰指示部170に原点復帰許可信号を出力する(SRC40)。通知部130は、「作業者OPが手動で誘導してきたロボットアーム30の姿勢PSが、経由姿勢PS(1)に至った(つまり、ロボットアーム30の姿勢PSが許可範囲RP内にある)」ことを、作業者OPに通知する。通知部130は、姿勢判定部120による判定の結果を、ブザー等を制御して音によって作業者OPに通知してもよいし、表示灯等を制御して光によって作業者OPに通知してもよい。
When the
作業者OPは、通知部130から通知された「ロボットアーム30の姿勢PSが許可範囲RP内にある」との判定結果を認知(認識)すると(SOP30)、以下の確認(判断)を行う。すなわち、作業者OPは、「手先の位置を原点姿勢PS(0)における手先の位置へと直行させる経路で(つまり、直行的に)、ロボットアーム30が現在とっている姿勢PSから原点復帰させてもよいか」を念のため確認する。作業者OPは、上述の確認を行って、必要な場合には適宜、ロボットアーム30の周囲に存在する障害物の撤去等を行う(SOP40)。 When the worker OP recognizes (recognizes) the determination result that "the posture PS of the robot arm 30 is within the permitted range RP" notified from the notification unit 130 (SOP30), the following confirmation (judgment) is performed. That is, the worker OP returns the origin from the posture PS currently taken by the robot arm 30 by "a path that makes the position of the hand orthogonal to the position of the hand in the origin posture PS (0) (that is, orthogonally). Is it okay? ”Is confirmed just in case. The worker OP performs the above-mentioned confirmation, and if necessary, removes obstacles existing around the robot arm 30 (SOP40).
具体的には、作業者OPは、先ず「ロボットアーム30が実際に現在置かれている状況において、ロボットアーム30が現在とっている姿勢PSから直行的に原点復帰させてよいか」を確認する。そして、作業者OPは、上記の確認の結果、例えば、「ロボットアーム30が現在とっている姿勢PSから直行的に原点復帰させた場合、障害物等との衝突が発生する可能性はない」と判断する。また、作業者OPは、上記の確認の結果、例えば、「ロボットアーム30が現在とっている姿勢PSから直行的に原点復帰させた場合、障害物等との衝突が発生する可能性がある」と判断すると、以下の作業を行う。すなわち、作業者OPは、ロボットアーム30の周囲に存在する障害物の撤去等の作業を、適宜行う。 Specifically, the worker OP first confirms "whether the robot arm 30 can be returned to the origin directly from the posture PS currently taken in the situation where the robot arm 30 is actually currently placed". .. Then, as a result of the above confirmation, the worker OP, for example, "when the robot arm 30 is returned to the origin directly from the posture PS currently taken, there is no possibility of a collision with an obstacle or the like." Judge. Further, as a result of the above confirmation, the worker OP, for example, "If the robot arm 30 is returned to the origin directly from the posture PS currently taken, a collision with an obstacle or the like may occur." If it is determined, the following work is performed. That is, the worker OP appropriately performs work such as removing obstacles existing around the robot arm 30.
そして、作業者OPは、原点復帰操作を実行し、つまり、原点復帰動作の実行をロボット制御部10に指示する(SOP50)。
Then, the worker OP executes the home return operation, that is, instructs the
ユーザ操作判定部150は、「ユーザ操作取得部140によって、作業者OPによる原点復帰操作が受け付けられた」と判定すると、復帰指示部170に、原点復帰信号を出力する。復帰指示部170は、姿勢判定部120からの原点復帰許可信号がある状態で、ユーザ操作判定部150から原点復帰信号を受け付けると、ロボットアーム30を、ロボットアーム30が現在とっている姿勢PSから直行的に原点復帰させる。
When the user
具体的には、復帰指示部170は、原点復帰制御信号を、ロボットアーム制御部20へと出力し、復帰指示部170から原点復帰制御信号を受け付けたロボットアーム制御部20は、ロボットアーム30に、原点復帰動作の実行を開始させる(SRC50)。ロボット制御部10が、ロボットアーム制御部20を介して、ロボットアーム30の姿勢PSを、現在の姿勢PS(例えば、姿勢PS(1))から原点姿勢PS(0)へと直行的に変更することにより、ロボットアーム30の原点復帰が完了する(SRC60)。
Specifically, the
(ロボット制御部がロボットアームの姿勢を経由姿勢に変更するケース)
図7は、ロボット制御部10(特に、誘導動作指示部190)が、ロボットアーム30の姿勢PSを経由姿勢PS(1)に変更した後、経由姿勢PS(1)から直行的にロボットアーム30を原点復帰させる場合のフロー図である。
(Case where the robot control unit changes the posture of the robot arm to the via posture)
In FIG. 7, after the robot control unit 10 (particularly, the guidance operation instruction unit 190) changes the posture PS of the robot arm 30 to the transit posture PS (1), the robot arm 30 is orthogonal to the transit posture PS (1). It is a flow diagram when returning to the origin.
姿勢判定部120によって「ロボットアーム30の姿勢PSが許可範囲RP外にある」と判定されていると(SRC10)、作業者OPは、例えば、ロボット制御部10を「自動誘導モード」へと遷移させる遷移操作を行う(SOP110)。「自動誘導モード」は、ロボット制御部10が主体となって、ロボットアーム30の姿勢PSを経由姿勢PS(1)へと変更するモードである。「自動誘導モード」において、ロボット制御部10(特に、誘導動作指示部190)は、作業者OPによる監視(言い換えれば、作業者OPによる誘導動作の許否)の下で、ロボットアーム30の姿勢PSを、経由姿勢PS(1)へと変更する。「自動誘導モード」において、ロボット制御部10は、ロボットアーム30の姿勢を、「自動誘導モード」以外のモードにおいてロボットアーム30の姿勢を変更する場合の変更速度よりも遅い速度で、変更してもよい。
When the
ユーザ操作判定部150は、「ユーザ操作取得部140によって、作業者OPによる『自動誘導モード』への遷移操作が受け付けられた」と判定すると、ロボット制御部10を自動誘導モードに遷移させる。これによって、ロボット制御部10は、自動誘導動作の実行準備状態になる(SRC120)。
When the user
ロボット制御部10が自動誘導動作の実行準備状態にある間に、作業者OPは、「ロボット制御部10が自動誘導動作の実行を開始した場合に、ロボットアーム30が障害物等と干渉(衝突)しないか」を、目視にて判断する(SOP120)。つまり、作業者OPは、「ロボット制御部10がロボットアーム30の姿勢PSの変更を開始しても、ロボットアーム30が障害物等と干渉しないか」を確認する。
While the
「自動誘導動作の実行が開始された場合、ロボットアーム30が障害物等と干渉する」と判断すると(SOP120でYES)、作業者OPは、ロボットアーム30が障害物等と干渉しないように、手動操作でロボットアーム30を退避させる(SOP130)。そして、自動誘導動作の実行が開始された場合にも、ロボットアーム30が障害物等と干渉しないように、手動操作でロボットアーム30を退避させた後、作業者OPは、自動誘導スイッチを押下する(SOP140)。 When it is determined that "the robot arm 30 interferes with an obstacle or the like when the execution of the automatic guidance operation is started" (YES in SOP120), the worker OP prevents the robot arm 30 from interfering with the obstacle or the like. The robot arm 30 is retracted manually (SOP130). Then, even when the execution of the automatic guidance operation is started, the operator OP presses the automatic guidance switch after the robot arm 30 is manually retracted so that the robot arm 30 does not interfere with obstacles or the like. (SOP140).
また、「自動誘導動作の実行が開始された場合、ロボットアーム30が障害物等と干渉しない」と判断すると(SOP120でNO)、作業者OPは、自動誘導スイッチを押下する(SOP140)。 Further, when it is determined that "the robot arm 30 does not interfere with obstacles or the like when the execution of the automatic guidance operation is started" (NO in SOP120), the worker OP presses the automatic guidance switch (SOP140).
ロボット制御部10が自動誘導動作の実行準備状態になっている状態で、「作業者OPが自動誘導スイッチを押下した」ことがユーザ操作判定部150によって検出されると、ロボット制御部10は、自動誘導動作の実行を開始する(SRC130)。すなわち、ユーザ操作判定部150は、「作業者OPによって、自動誘導スイッチが押下されているか」を判定し、つまり、「作業者OPが、自動誘導動作の実行継続を指示しているか」を判定する(SRC140)。ユーザ操作判定部150は、「作業者OPによって、自動誘導スイッチが押下されているか」について判定すると、判定結果を、つまり、作業者OPによる誘導動作許否を、誘導動作指示部190に通知する。
When the user
ユーザ操作判定部150によって「作業者OPが自動誘導スイッチを押下していない」と判定されると(SRC140でNO)、誘導動作指示部190は、自動誘導動作を停止する(SRC150)。つまり、誘導動作指示部190は、「ユーザ操作判定部150によって『作業者OPが自動誘導スイッチを押下していない』と判定された」時点で、ロボットアーム30の姿勢PSの変更を中断する。そして、ユーザ操作判定部150は、ロボット制御部10を自動誘導モードに遷移させ、つまり、ロボット制御部10は、自動誘導動作の実行準備状態になる(SRC120)。
When the user
ユーザ操作判定部150によって「作業者OPが自動誘導スイッチを押下している(つまり、自動誘導スイッチが押下され続けている)」と判定されると(SRC140でYES)、姿勢判定部120は、以下の判定を実行する。すなわち、姿勢判定部120は、「誘導動作指示部190によって変更されたロボットアーム30の姿勢PSが、経由姿勢PS(1)として認められた許可範囲RP内にあるか」を判定する(SRC160)。つまり、姿勢判定部120は、誘導動作実行中のロボットアーム30の姿勢PSを監視しておき、「誘導動作実行中のロボットアーム30の姿勢PSが、経由姿勢PS(1)として認められた許可範囲RP内に入ったか」を判定する。また、通知部130は、SRC160における姿勢判定部120による判定の結果(判定結果)を、作業者OPに通知する。SRC160における姿勢判定部120による判定は、図6のSRC30において姿勢判定部120が実行している判定と同様である。
When it is determined by the user
姿勢判定部120によって「ロボットアーム30の姿勢PSは経由姿勢PS(1)として認められた許可範囲RP外にある」と判定されると(SRC160でNO)、誘導動作指示部190は、自動誘導動作を継続する(SRC170)。
When the
誘導動作指示部190が自動誘導動作を実行している間、作業者OPは、ロボットアーム30を監視しておき、「自動誘導動作を継続した場合に、ロボットアーム30が障害物等と干渉するか」を目視にて判断する(SOP150)。
While the guidance
「自動誘導動作を継続しても、ロボットアーム30が障害物等と干渉しない」と判断すると(SOP150でNO)、作業者OPは、自動誘導スイッチの押下を継続し(SOP170)、つまり、誘導動作指示部190に自動誘導動作の実行を継続させる。
When it is determined that the robot arm 30 does not interfere with obstacles or the like even if the automatic guidance operation is continued (NO at SOP150), the worker OP continues pressing the automatic guidance switch (SOP170), that is, guidance. The
「自動誘導動作を継続した場合に、ロボットアーム30が障害物等と干渉する」と判断すると(SOP150でYES)、作業者OPは、自動誘導スイッチを開放し(SOP160)、つまり、誘導動作指示部190に自動誘導動作の実行を中断させる。
When it is determined that "the robot arm 30 interferes with an obstacle or the like when the automatic guidance operation is continued" (YES at SOP150), the operator OP releases the automatic guidance switch (SOP160), that is, the guidance operation instruction. The
姿勢判定部120は、「ロボットアーム30の姿勢PSは経由姿勢PS(1)として認められた許可範囲RP内にある」と判定すると(SRC160でYES)、以下の3つの処理を実行する(SRC180)。第一に、姿勢判定部120は、「ロボットアーム30の姿勢PSが許可範囲RP内にある」との判定結果を通知部130に通知して、通知部130にその判定結果を出力させる。第二に、姿勢判定部120は、復帰指示部170に原点復帰許可信号を出力する。第一に、姿勢判定部120は、前述の判定結果を誘導動作指示部190に通知して、誘導動作指示部190による自動誘導動作の実行を終了させる。
When the
SRC180以降の流れは、図6のSRC40以降の流れと同様である。すなわち、通知部130が「ロボットアーム30の姿勢PSが許可範囲RP内にある」との判定結果を作業者OPに通知すると(SRC180)、作業者は、SOP180として、図6のSOP30、SOP40、および、SOP50を実施する。具体的には、作業者OPは、通知部130から通知された判定結果を認知(認識)すると(SOP30)、状況確認を行い、必要な場合には適宜、ロボットアーム30の周囲に存在する障害物の撤去等を行う(SOP40)。その後、作業者OPは、原点復帰操作を実行し、つまり、原点復帰動作の実行をロボット制御部10に指示する(SOP50)。作業者OPによる原点復帰操作をユーザ操作取得部140が受け付け、かつ、姿勢判定部120からの原点復帰許可信号があると、復帰指示部170は、ロボットアーム制御部20を介して、ロボットアーム30に、原点復帰動作の実行を開始させる(SRC50)。復帰指示部170が、ロボットアーム制御部20を介して、ロボットアーム30の姿勢PSを、ロボットアーム30が現在とっている姿勢PSから原点姿勢PS(0)へと直行的に変更することにより、ロボットアーム30の原点復帰が完了する(SRC60)。
The flow after SRC180 is the same as the flow after SRC40 in FIG. That is, when the
これまで図6および図7を用いて説明してきたロボット制御部10の実行する処理は、以下のように整理することができる。すなわち、ロボット制御部10の実行する制御方法は、自由度が2以上であるロボットアーム30の制御装置の制御方法である。「ロボット制御部10の実行する制御方法」は、以下では単に「制御方法SRC」と略記する。
制御方法SRCにおいては、ロボットアーム30の姿勢PSについて、以下の許可範囲RPが予め設定されている。すなわち、「障害物等との衝突を発生させることなく、手先の位置を原点姿勢PS(0)における手先の位置へと直行させる経路で、ロボットアーム30を原点復帰させることができる」と予測される姿勢PSの範囲が、許可範囲RPとして設定されている。言い換えれば、経由姿勢PS(1)として認められた姿勢PSの範囲が、許可範囲RPとして、予め設定されている。制御方法SRCは、通知ステップ(SRC40、SRC180)と復帰指示ステップ(SRC50)とを含んでいる。通知ステップは、「ロボットアーム30の姿勢PSが、許可範囲RP内にある」との判定があると、作業者OP(ユーザ)にその判定結果を通知する。復帰指示ステップは、通知ステップにて判定結果を通知された作業者OPから、原点復帰の実行指示があると、ロボットアーム30を、許可範囲RP内にあると判定された姿勢PS(つまり、経由姿勢PS(1))から直行的に原点復帰させる。
The processes executed by the
In the control method SRC, the following permitted range RP is preset for the posture PS of the robot arm 30. That is, it is predicted that the robot arm 30 can be returned to the origin by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture PS (0) without causing a collision with an obstacle or the like. The range of the posture PS is set as the permitted range RP. In other words, the range of the posture PS recognized as the transit posture PS (1) is preset as the permitted range RP. The control method SRC includes a notification step (SRC40, SRC180) and a return instruction step (SRC50). In the notification step, when there is a determination that "the posture PS of the robot arm 30 is within the permitted range RP", the operator OP (user) is notified of the determination result. In the return instruction step, when the worker OP notified of the determination result in the notification step gives an execution instruction to return to the origin, the robot arm 30 is placed in the posture PS determined to be within the permitted range RP (that is, via). The origin is returned directly from the posture PS (1)).
前記の構成によれば、制御方法SRCは、「ロボットアーム30の姿勢PSが、予め設定されている許可範囲RP内にある」と判定されると、その判定結果を作業者OPに通知する。判定結果を通知された作業者OPは、「実際に、手先の位置を原点姿勢PS(0)における手先の位置へと直行させる経路で、ロボットアーム30を原点復帰させた場合に、ロボットアーム30と障害物等との衝突が発生することがないか」を確認する。そして、「実際に、手先の位置を原点姿勢PS(0)における手先の位置へと直行させる経路で、ロボットアーム30を原点復帰させた場合に、衝突は発生しない」ことを確認すると、作業者OPは、制御方法SRCに、原点復帰の実行指示を与える。例えば、作業者OPは、制御方法SRCを実行する制御装置に、原点復帰の実行指示を与える。「ロボットアーム30の姿勢PSが、許可範囲RP内にある」との判定結果の通知を契機として実際の状況を確認した作業者OPから、「原点復帰の実行指示」があると、制御方法SRCは、以下の処理を実行する。すなわち、制御方法SRCは、ロボットアーム30を、許可範囲RP内にあると判定された姿勢PS(1)から、手先の位置を原点姿勢PS(0)における手先の位置へと直行させる経路で、原点復帰させる。 According to the above configuration, when the control method SRC determines that "the posture PS of the robot arm 30 is within the preset permission range RP", the control method SRC notifies the operator OP of the determination result. The worker OP who was notified of the determination result said, "When the robot arm 30 is returned to the origin by a path that actually directs the position of the hand to the position of the hand in the origin posture PS (0), the robot arm 30 Check if there is a collision between the robot and an obstacle. " Then, when it is confirmed that "a collision does not occur when the robot arm 30 is returned to the origin by a path that actually directs the position of the hand to the position of the hand in the origin posture PS (0)", the operator confirms. The OP gives the control method SRC an instruction to return to the origin. For example, the worker OP gives an execution instruction for returning to the origin to the control device that executes the control method SRC. When there is an "instruction to return to the origin" from the worker OP who confirmed the actual situation triggered by the notification of the judgment result that "the posture PS of the robot arm 30 is within the permitted range RP", the control method SRC Executes the following processing. That is, the control method SRC is a route that directs the robot arm 30 from the posture PS (1) determined to be within the permitted range RP to the position of the hand in the origin posture PS (0). Return to origin.
つまり、制御方法SRCは、「直行的に原点復帰させたとしても障害物等との衝突を回避できる」と予想される経由姿勢PS(1)をロボットアーム30がとっていると判定すると、作業者OPにその旨を通知する。そして、制御方法SRCは、「実際に、姿勢PS(1)から直行的に(つまり、手先の位置を原点姿勢PS(0)における手先の位置へと直行させる経路で)、ロボットアーム30を原点復帰させてよいか」を、作業者OPに確認させる。特に、制御方法SRCは、作業者OPに、「ロボットアーム30が実際に現在置かれている状況において、ロボットアーム30が現在とっている姿勢PSから直行的に原点復帰させてよいか」を確認させる。制御方法SRCは、「ロボットアーム30が実際に現在置かれている状況において、ロボットアーム30が現在とっている姿勢から、直行的に原点復帰させてよい」と作業者OPが確認するのを待つ。そして、作業者OPが上述の確認を行って、制御方法SRCに原点復帰を指示すると、制御方法SRCは、ロボットアーム30を原点復帰させる。つまり、制御方法SRCは、作業者OPによる確認と、確認後の明示的な原点復帰指示とを待って、ロボットアーム30を原点復帰させる。具体的には、制御方法SRCは、ロボットアーム30が現在とっている姿勢PSから、手先の位置を原点姿勢PS(0)における手先の位置へと直行させる経路で、言い換えれば、直行的に、ロボットアーム30を原点復帰させる。 That is, when the control method SRC determines that the robot arm 30 is taking the transit posture PS (1), which is expected to "avoid a collision with an obstacle or the like even if the robot arm 30 is returned to the origin directly", the work is performed. Notify the person OP to that effect. Then, the control method SRC "actually, the robot arm 30 is set as the origin in a path that is orthogonal to the posture PS (1) (that is, the position of the hand is orthogonal to the position of the hand in the origin posture PS (0)). Ask the worker OP to confirm "Is it okay to return?" In particular, the control method SRC confirms to the worker OP, "In the situation where the robot arm 30 is actually currently placed, can the robot arm 30 return to the origin directly from the posture PS currently taken?" Let me. The control method SRC waits for the operator OP to confirm that "in the situation where the robot arm 30 is actually currently placed, the robot arm 30 may be returned to the origin directly from the posture currently taken". .. Then, when the operator OP performs the above confirmation and instructs the control method SRC to return to the origin, the control method SRC returns the robot arm 30 to the origin. That is, the control method SRC waits for the confirmation by the operator OP and the explicit origin return instruction after the confirmation, and then returns the robot arm 30 to the origin. Specifically, the control method SRC is a path that linearizes the position of the hand from the posture PS currently taken by the robot arm 30 to the position of the hand in the origin posture PS (0), in other words, linearly. The robot arm 30 is returned to the origin.
ここで、「ロボットアーム30が実際に現在置かれている状況」は、ロボットアーム30を取り囲む物理空間等、「ロボットアーム30の外部の状況」を含む。「ロボットアーム30の外部の状況」は、ロボットアーム30の周囲に存在する壁面、構造物、機器等の状況に加えて、ロボットアーム30の作業対象であるワークの状況も含む。ワークがロボットアーム30の周囲に載置されている(例えば、ロボットアーム30を備える在荷部に、ワークが載置されている)場合、載置されているワークの状態(形状、大きさ、向き等)等も、「ロボットアーム30の外部の状況」の一つである。同様に、例えば、ロボットアーム30がワークを把持している場合には、把持されているワークの状態等も、「ロボットアーム30の外部の状況」の一つである。 Here, the "situation in which the robot arm 30 is actually currently placed" includes the "situation outside the robot arm 30" such as the physical space surrounding the robot arm 30. The "outside situation of the robot arm 30" includes the situation of the work surface, which is the work target of the robot arm 30, in addition to the situation of the wall surface, the structure, the equipment, etc. existing around the robot arm 30. When the work is placed around the robot arm 30 (for example, the work is placed on the loading portion provided with the robot arm 30), the state (shape, size, Orientation, etc.) is also one of the "outside conditions of the robot arm 30". Similarly, for example, when the robot arm 30 is gripping the work, the state of the gripped work is also one of the "external situations of the robot arm 30".
「ロボットアーム30が実際に現在置かれている状況」は、「ロボットアーム30の外部の状況」に加えて、「ロボットアーム30自体の状況」も含む。ロボットアーム30自体の利用状況、ロボットアーム30の手先(ロボットアーム30の先端。エンドエフェクタ)の形状、大きさ、動作の状態等は、「ロボットアーム30自体の状況」の一例である。「手先の動作状態」の一例としては、「ワークを把持するための、手先の機構の開閉状態」を挙げることができる。 The "situation in which the robot arm 30 is actually currently placed" includes "the situation of the robot arm 30 itself" in addition to the "situation outside the robot arm 30". The usage status of the robot arm 30 itself, the shape, size, operation state, and the like of the hand (tip of the robot arm 30. End effector) of the robot arm 30 are examples of the “status of the robot arm 30 itself”. As an example of the "operating state of the hand", the "opening / closing state of the mechanism of the hand for gripping the work" can be mentioned.
上述の通り、制御方法SRCは、作業者OPによる「ロボットアーム30が現在とっている姿勢PSから、手先の位置を原点姿勢PS(0)における手先の位置へと直行させる経路で、原点復帰させてもよいか」の確認の契機を、作業者OPに通知する。つまり、制御方法SRCは、「ロボットアーム30が実際に現在置かれている状況において、ロボットアーム30が現在とっている姿勢PSから直行的に原点復帰させてよいか」を、作業者OPに判断させる。制御方法SRCは、「ロボットアーム30が実際に現在置かれている状況において、ロボットアーム30が現在とっている姿勢から直行的に原点復帰させてよいか」の判断を、作業者OPに委ねる。そのため、制御方法SRCは、上述の判断に必要となる情報量、計算負荷を軽減することができる。 As described above, the control method SRC returns to the origin by a path in which the operator OP "directs the position of the hand from the posture PS currently taken by the robot arm 30 to the position of the hand in the origin posture PS (0). Notify the worker OP of the opportunity to confirm "Is it okay?" That is, the control method SRC determines to the operator OP "whether the robot arm 30 may be returned to the origin directly from the posture PS currently taken in the situation where the robot arm 30 is actually currently placed". Let me. The control method SRC entrusts the operator OP to determine "whether the robot arm 30 may be returned to the origin directly from the posture currently taken in the situation where the robot arm 30 is actually currently placed". Therefore, the control method SRC can reduce the amount of information and the calculation load required for the above-mentioned determination.
また、制御方法SRCは、作業者OPによる原点復帰の指示に従って、ロボットアーム30を、現在とっている姿勢から、「手先の位置を原点姿勢PS(0)における手先の位置へと直行させる」経路で、原点復帰させる。「手先の位置を、現在の位置から原点姿勢PS(0)における手先の位置へと、直行させる」経路は、「障害物等との衝突を避けるために、様々な情報を用いて、複雑な条件分岐の結果特定される」経路ではなく、予め一意に特定される経路である。そのため、制御方法SRCは、「ロボットアーム30が現在とっている姿勢」から、障害物等との衝突を避けつつ、ロボットアーム30を原点復帰させるための経路計算に必要となる情報量、計算負荷を軽減することができる。 In addition, the control method SRC is a route that "directs the position of the hand to the position of the hand in the origin posture PS (0)" from the posture currently taken by the robot arm 30 according to the instruction of returning to the origin by the operator OP. Then, return to the origin. The route of "directing the position of the hand from the current position to the position of the hand in the origin posture PS (0)" is complicated by using various information in order to avoid a collision with an obstacle or the like. It is not a route that is "specified as a result of conditional branching", but a route that is uniquely specified in advance. Therefore, in the control method SRC, the amount of information and the calculation load required for path calculation for returning the robot arm 30 to the origin while avoiding a collision with an obstacle or the like from the "posture currently taken by the robot arm 30". Can be reduced.
つまり、制御方法SRCは、あらゆる姿勢PSについて、あらゆる状況を想定して、「ロボットアーム30を、障害物等との衝突を回避しつつ(つまり、安全に)原点復帰させる方法」を演算する必要がない。そのため、制御方法SRCは、ロボットアーム30のとり得る姿勢PSが多様であり、ロボットアーム30の置かれている状況が多様であっても、「ロボットアーム30を、安全に原点復帰させる」ために必要とする情報量、計算負荷を抑制することができる。 That is, the control method SRC needs to calculate "a method of returning the robot arm 30 to the origin while avoiding a collision with an obstacle or the like (that is, safely)" assuming all situations for any posture PS. There is no. Therefore, the control method SRC is used to "safely return the robot arm 30 to the origin" even if the robot arm 30 has various possible postures PS and the robot arm 30 is placed in various situations. The amount of information required and the calculation load can be suppressed.
また、制御方法SRCは、作業者OPによる上述の確認結果および指示に従って、ロボットアーム30を原点復帰させる。制御方法SRCは、「ロボットアーム30が実際に現在置かれている状況」のいかんにかかわらず、作業者OPによる上述の確認結果および指示に従って、ロボットアーム30を原点復帰させる。つまり、制御方法SRCは、「ロボットアーム30が実際に現在置かれている状況において、ロボットアーム30が現在とっている姿勢PSから直行的に原点復帰させてよい」との作業者OPの確認結果に従って、ロボットアーム30を原点復帰させる。制御方法SRCは、「ロボットアーム30が実際に現在置かれている状況」に係る作業者OPの確認結果を利用することで、ロボットアーム30の置かれている状況に依存せずに、ロボットアーム30を安全に原点復帰させることができる。 Further, the control method SRC returns the robot arm 30 to the origin according to the above-mentioned confirmation result and instruction by the operator OP. The control method SRC returns the robot arm 30 to the origin according to the above-mentioned confirmation result and instruction by the operator OP regardless of "the situation in which the robot arm 30 is actually currently placed". That is, the control method SRC is the confirmation result of the worker OP that "in the situation where the robot arm 30 is actually currently placed, the robot arm 30 may be returned to the origin directly from the posture PS currently taken". According to this, the robot arm 30 is returned to the origin. The control method SRC uses the confirmation result of the worker OP related to "the situation where the robot arm 30 is actually currently placed", and the robot arm does not depend on the situation where the robot arm 30 is placed. 30 can be safely returned to the origin.
したがって、制御方法SRCは、実現コストを抑制しつつ、ロボットアーム30の置かれている状況に依存せずに、ロボットアーム30を、障害物等との衝突を回避しつつ原点位置へと復帰させることができるとの効果を奏する。 Therefore, the control method SRC returns the robot arm 30 to the origin position while avoiding a collision with an obstacle or the like, without depending on the situation in which the robot arm 30 is placed, while suppressing the realization cost. It has the effect of being able to.
§4.変形例
これまで、ロボットアーム30が、軸AX(1)から軸AX(6)の6つの軸AXを備えている例を説明してきたが、ロボットアーム30の備える軸AX(関節)が6つであることは必須ではなく、ロボットアーム30の備える軸AXは2つ以上であればよい。つまり、ロボットアーム30の自由度は2以上であればよい。
§4. Modification example So far, an example in which the robot arm 30 includes six axis AX from the axis AX (1) to the axis AX (6) has been described, but the robot arm 30 has six axis AX (joints). It is not essential that the robot arm 30 has two or more shafts AX. That is, the degree of freedom of the robot arm 30 may be 2 or more.
また、ロボットアーム30を備えるロボット1が自走式搬送装置である例を説明してきたが、ロボット1が自走式であることは必須ではなく、つまり、ロボット1は搬送ロボット部40を含んでいなくてもよい。ロボットアーム30は、所定の位置、もしくは移動可能な架台上に固定されたマニピュレータであってもよい。
Further, although the example in which the
さらに、ロボット制御部10がロボットアーム制御部20を介してロボットアーム30を制御する例を説明してきたが、ロボット制御部10がロボットアーム30を制御するのに、ロボットアーム制御部20を介することは必須ではない。ロボット制御部10はロボットアーム30を直接制御してもよいし、また、ロボット制御部10とロボットアーム制御部20とが一体的に構成されてもよい。
Further, although an example in which the
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。 The present invention is not limited to the above-described embodiments, and various modifications can be made within the scope of the claims, and the embodiments obtained by appropriately combining the technical means disclosed in the different embodiments. Is also included in the technical scope of the present invention.
10 ロボット制御部(制御装置)
30 ロボットアーム
130 通知部
170 復帰指示部
AX 軸(関節)
OP 作業者(ユーザ)
PS 姿勢
RAP 動作範囲
RP 許可範囲
SRC40 通知ステップ
SRC180 通知ステップ
SRC50 復帰指示ステップ
10 Robot control unit (control device)
30
AX axis (joint)
OP worker (user)
PS posture RAP operating range
RP permission range SRC40 notification step SRC180 notification step SRC50 return instruction step
Claims (10)
前記ロボットアームの姿勢について、衝突を発生させることなく、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で、前記ロボットアームを原点復帰させることができると予測される範囲が、予め許可範囲として設定されており、
前記ロボットアームの姿勢が、前記許可範囲内にあると判定されると、ユーザに判定結果を通知する通知部と、
前記通知部によって前記判定結果を通知された前記ユーザから、原点復帰の実行指示があると、前記ロボットアームを、前記許可範囲内にあると判定された姿勢から、前記手先の位置を原点姿勢における前記手先の位置へと直行させる経路で、原点復帰させる復帰指示部と
を備える制御装置。 A robot arm control device with two or more degrees of freedom.
Regarding the posture of the robot arm, the range in which it is predicted that the robot arm can be returned to the origin by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture without causing a collision is predetermined. It is set as a permission range and
When it is determined that the posture of the robot arm is within the permitted range, a notification unit that notifies the user of the determination result and a notification unit.
When the user who has been notified of the determination result by the notification unit gives an instruction to return to the origin, the position of the hand is set to the origin posture from the posture determined that the robot arm is within the permitted range. A control device including a return instruction unit for returning to the origin by a path orthogonal to the position of the hand.
請求項1に記載の制御装置。 The control device according to claim 1, wherein the permission range is updatable.
請求項1または2に記載の制御装置。 The control device according to claim 1 or 2, wherein the permission range is set by a user based on the design information of the robot arm.
請求項1または2に記載の制御装置。 When it is determined that a collision does not occur when the three-dimensional model of the robot arm is returned to the origin by a path in which the position of the hand is orthogonal to the position of the hand in the origin posture from a certain posture, the above is determined. The control device according to claim 1 or 2, wherein the permission range is set so as to include a posture.
請求項1または2に記載の制御装置。 The permitted range is a path in which the position of the hand is orthogonal to the position of the hand in the origin posture without causing a collision, and the user manually moves the robot arm so that the robot arm can return to the origin. The control device according to claim 1 or 2, which is set to include a posture taken in.
請求項1から5のいずれか1項に記載の制御装置。 Regarding the joint provided by the robot arm, (A) when the operating state of the joint is within the operating range corresponding to the permitted range, the operating state is maintained, and (B) the operating state of the joint is the permitted. The control device according to any one of claims 1 to 5, further comprising an operation state control unit that allows the user to change the operation state if it is not within the operation range corresponding to the range.
前記許可がなくなると、前記誘導動作の実行を中断する
請求項1から6のいずれか1項に記載の制御装置。 A guidance operation for changing the posture of the robot arm from a posture not within the permitted range to a posture within the permitted range is executed while the permission by the user continues.
The control device according to any one of claims 1 to 6, wherein the execution of the guidance operation is interrupted when the permission is lost.
前記ロボットアームの姿勢について、衝突を発生させることなく、手先の位置を原点姿勢における前記手先の位置へと直行させる経路で、前記ロボットアームを原点復帰させることができると予測される範囲が、予め許可範囲として設定されており、
前記ロボットアームの姿勢が、前記許可範囲内にあると判定されると、ユーザに判定結果を通知する通知ステップと、
前記通知ステップにて前記判定結果を通知された前記ユーザから、原点復帰の実行指示があると、前記ロボットアームを、前記許可範囲内にあると判定された姿勢から、前記手先の位置を原点姿勢における前記手先の位置へと直行させる経路で、原点復帰させる復帰指示ステップと
を含む制御方法。 A control method for a robot arm control device having two or more degrees of freedom.
Regarding the posture of the robot arm, the range in which it is predicted that the robot arm can be returned to the origin by a path that makes the position of the hand orthogonal to the position of the hand in the origin posture without causing a collision is predetermined. It is set as a permission range and
When it is determined that the posture of the robot arm is within the permitted range, a notification step for notifying the user of the determination result, and
When the user who has been notified of the determination result in the notification step gives an instruction to return to the origin, the robot arm is moved from the posture determined to be within the permitted range to the position of the hand as the origin posture. A control method including a return instruction step of returning to the origin by a path orthogonal to the position of the hand in the above.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020054875A JP7524573B2 (en) | 2020-03-25 | 2020-03-25 | CONTROL DEVICE, CONTROL METHOD FOR CONTROLLING CONTROL DEVICE, INFORMATION PROC |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020054875A JP7524573B2 (en) | 2020-03-25 | 2020-03-25 | CONTROL DEVICE, CONTROL METHOD FOR CONTROLLING CONTROL DEVICE, INFORMATION PROC |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021154407A true JP2021154407A (en) | 2021-10-07 |
JP7524573B2 JP7524573B2 (en) | 2024-07-30 |
Family
ID=77916485
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020054875A Active JP7524573B2 (en) | 2020-03-25 | 2020-03-25 | CONTROL DEVICE, CONTROL METHOD FOR CONTROLLING CONTROL DEVICE, INFORMATION PROC |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7524573B2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003094364A (en) * | 2001-09-21 | 2003-04-03 | Honda Motor Co Ltd | Method and apparatus for creating motion path data of work robot |
JP2016078196A (en) * | 2014-10-21 | 2016-05-16 | セイコーエプソン株式会社 | Double arm robot and double arm robot control device |
JP2019084652A (en) * | 2017-11-09 | 2019-06-06 | 日本電産サンキョー株式会社 | Horizontal multi-joint type robot and method for returning the same to original point |
-
2020
- 2020-03-25 JP JP2020054875A patent/JP7524573B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003094364A (en) * | 2001-09-21 | 2003-04-03 | Honda Motor Co Ltd | Method and apparatus for creating motion path data of work robot |
JP2016078196A (en) * | 2014-10-21 | 2016-05-16 | セイコーエプソン株式会社 | Double arm robot and double arm robot control device |
JP2019084652A (en) * | 2017-11-09 | 2019-06-06 | 日本電産サンキョー株式会社 | Horizontal multi-joint type robot and method for returning the same to original point |
Also Published As
Publication number | Publication date |
---|---|
JP7524573B2 (en) | 2024-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10856945B2 (en) | Industrial robot and method of operating the same | |
EP2660014B1 (en) | Control device and teaching method for seven-shaft multi-joint robot | |
US9317032B2 (en) | Robot and method for operating a robot | |
US20110224826A1 (en) | Robot system | |
JP5846479B2 (en) | Robot and its control method | |
US20040249508A1 (en) | Method and apparatus for limiting the movement of a robot, and a robot equipped with said apparatus | |
KR101820580B1 (en) | Safe robot with path progress variables | |
US20170266816A1 (en) | Robot control apparatus, robot, and robot system | |
JP2021091028A (en) | Conveyance robot system and control method of conveyance robot | |
JP6570540B2 (en) | Method for handling an object using a manipulator and an input tool | |
US10562185B2 (en) | Robot system | |
JP6904759B2 (en) | Robot movement speed control device and method | |
JPH07271415A (en) | Cooperative robot control method | |
JP2021154407A (en) | Control device, method for controlling control device, information processing program and recording medium | |
JP2021091027A (en) | Conveyance robot system and control method of conveyance robot | |
JPH09314487A (en) | Method for controlling manipulator having redundant axis | |
JP7404797B2 (en) | Robot system control method | |
JPH0431122B2 (en) | ||
KR20210090020A (en) | Robot control system and method | |
JP2021091029A (en) | Conveyance robot system | |
JP2016078196A (en) | Double arm robot and double arm robot control device | |
WO2024218835A1 (en) | Device and method for limiting operation of robot, device and method for setting operation parameter, and computer program | |
JP3855629B2 (en) | Robot interference detection device | |
US20240061428A1 (en) | Systems and methods of guarding a mobile robot | |
US20240316772A1 (en) | Control Method, Robot System, And Non-Transitory Computer-Readable Storage Medium Storing Program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230111 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20231128 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231205 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240111 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240326 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240405 |
|
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: 20240618 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240701 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7524573 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |