JP4952959B2 - Transport system and robot control method - Google Patents
Transport system and robot control method Download PDFInfo
- Publication number
- JP4952959B2 JP4952959B2 JP2009262645A JP2009262645A JP4952959B2 JP 4952959 B2 JP4952959 B2 JP 4952959B2 JP 2009262645 A JP2009262645 A JP 2009262645A JP 2009262645 A JP2009262645 A JP 2009262645A JP 4952959 B2 JP4952959 B2 JP 4952959B2
- Authority
- JP
- Japan
- Prior art keywords
- robot
- vector
- target position
- weight
- sin
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Description
本発明は、ロボットにより物体を搬送するための技術に関し、詳しくは、物体を押して搬送するロボットの移動方向を制御するための技術に関する。 The present invention relates to a technique for transporting an object by a robot, and more particularly, to a technique for controlling the moving direction of a robot that pushes and conveys an object.
物体の搬送は、移動ロボットの最も重要なタスクの一つである。ロボットにより任意の場所間での物体搬送が自動化されれば、ユーザの時間と労力を節約できるため、非常に有益である。搬送用ロボットには様々なタイプのものが提案されているが、ここでは、平面上に置かれた物体を自走式のロボットにより押していき、目標位置まで移動させるタイプのものに注目する。搬送タスクのほとんどはこの方法(押し搬送)で対処することが可能であるし、押し搬送は、工場、オフィス、店舗、家庭内など、様々な環境での物体搬送に応用が可能だからである。なお、非特許文献1には、押し搬送を行う家庭用のロボットが開示されている。 Object transportation is one of the most important tasks of mobile robots. If the object transportation between arbitrary places is automated by the robot, it is very beneficial because it saves the user time and labor. Various types of transfer robots have been proposed. Here, attention is paid to a type in which an object placed on a plane is pushed by a self-propelled robot and moved to a target position. This is because most transport tasks can be handled by this method (push transport), and push transport can be applied to transport objects in various environments such as factories, offices, stores, and homes. Non-Patent Document 1 discloses a home robot that performs push conveyance.
ロボットで物体を押していったときに、その物体が予定通りの位置に移動するとは限らない。物体と物体が置かれた面との間の摩擦、物体の外形とロボットの干渉、物体の重心と押し位置のずれなど、様々な要因が物体の移動に影響を与え得るからである。したがって、自走式ロボットによる押し搬送では、システムが物体の位置を常に監視しながら、物体が目標位置に向かって押されていくよう、ロボットの動き(位置、向き)を逐次制御する必要がある。 When an object is pushed by a robot, the object does not always move to a planned position. This is because various factors such as friction between the object and the surface on which the object is placed, interference between the outer shape of the object and the robot, displacement of the center of gravity of the object and the pushing position can affect the movement of the object. Therefore, in push transport by a self-propelled robot, it is necessary to sequentially control the movement (position and orientation) of the robot so that the object is pushed toward the target position while the system constantly monitors the position of the object. .
押し搬送の最も単純なアルゴリズムとしては、図9(a)に示すように、最初にロボットRを物体Oの後ろ側の押し位置まで移動させ、その後ロボットRを目標位置Gに向かって移動させるというものが知られている(この方法をbinary mode法とよぶ)。物体Oが
パスから逸れた場合には、ロボットRは押し動作を止めて、押し位置に復帰するよう移動するのである。しかしこのbinary mode法は、復帰動作に大きなオーバーヘッドがかかる
ため、あまり効率的ではない。別のアルゴリズムとして、図9(b)に示すように、物体Oの中心のやや後ろの位置に向かってロボットRを移動させるという方法が考えられる(この方法をtail-following法とよぶ)。この方法は、binary mode法よりは効率的である
ものの、例えばロボットが物体よりも目標位置に近くなってしまった場合などにエラーが生じる可能性がある。また、いずれの方法も、物体とロボットのサイズに依存するアルゴリズムであるため、システムを適用する環境(物体やロボットのサイズなど)に応じてプログラムを変更するか、サイズに依存する各種のパラメータを変更するかしなければならず、非常に煩わしいという問題もある。
As shown in FIG. 9A, the simplest algorithm for pushing and conveying is that the robot R is first moved to the pushing position behind the object O, and then the robot R is moved toward the target position G. Things are known (this method is called binary mode method). When the object O deviates from the path, the robot R stops the pushing operation and moves to return to the pushing position. However, this binary mode method is not very efficient because a large overhead is required for the return operation. As another algorithm, as shown in FIG. 9B, a method of moving the robot R toward a position slightly behind the center of the object O can be considered (this method is called a tail-following method). Although this method is more efficient than the binary mode method, an error may occur when, for example, the robot is closer to the target position than the object. In addition, since each method is an algorithm that depends on the size of the object and the robot, the program is changed according to the environment (object size, robot size, etc.) to which the system is applied, or various parameters depending on the size are set. There is also a problem that it must be changed or very troublesome.
本発明は上記実情に鑑みてなされたものであって、その目的とするところは、ロボットの押し搬送を効率的かつ安定的に実行可能なアルゴリズムを提供することにある。また、本発明のさらなる目的は、シンプルで、且つ、物体やロボットのサイズに依存しない、汎
用性の高い押し搬送アルゴリズムを提供することにある。
The present invention has been made in view of the above circumstances, and an object of the present invention is to provide an algorithm capable of efficiently and stably performing push conveyance of a robot. A further object of the present invention is to provide a highly versatile push transport algorithm that is simple and does not depend on the size of an object or a robot.
上記目的を達成するために、本発明では、ロボットが物体を押す動作(押し動作)とロボットが物体の周りを移動して物体の後ろ側の押し位置に向かう動作(周回動作)とを適当な重みで合成することにより、ロボットの移動方向を決定するというアルゴリズムを採用した。 In order to achieve the above object, in the present invention, an operation in which the robot pushes the object (pushing operation) and an operation in which the robot moves around the object and moves toward the pushing position on the back side of the object (circular operation) are appropriately performed. An algorithm that determines the moving direction of the robot by combining with weights was adopted.
具体的には、本発明に係る搬送システムは、ロボットにより物体を押して該物体を所定の目標位置まで搬送する搬送システムであって、物体を押すための自走式のロボットと、前記物体と前記ロボットの現在の位置を検出する位置検出手段と、前記位置検出手段の検出結果に基づいて前記ロボットの移動方向を制御する制御手段と、を備え、前記制御手段は、前記ロボットが前記物体の位置に向かう方向の第1のベクトルと、前記第1ベクトルと直交し且つ前記ロボットが前記目標位置から離れる方向の第2のベクトルとを、前記物体と前記ロボットと前記目標位置の現在の位置関係に応じた重みで合成することにより、前記ロボットの移動方向を決定するものであり、前記物体から前記目標位置へのベクトルと前記物体から前記ロボットへのベクトルとのなす角をθとした場合に、前記第1のベクトルが、(−cosθ,−sinθ)であり、前記第2のベクトルが、(−sinθ,cosθ)であり、前記第1のベクトルの重みが、−cosθであり、前記第2のベクトルの重みが、sinθであることを特徴とする搬送システムである。
Specifically, the transport system according to the present invention is a transport system that transports the object to a predetermined target position by pushing the object with a robot, the self-propelled robot for pushing the object, the object, Position detection means for detecting the current position of the robot, and control means for controlling the movement direction of the robot based on the detection result of the position detection means, wherein the control means is configured such that the robot moves the position of the object. A first vector in a direction toward the first direction and a second vector orthogonal to the first vector and in a direction in which the robot leaves the target position, the current positional relationship between the object, the robot, and the target position. by synthesizing in accordance with the weight, which determines the movement direction of the robot, to the robot from the vector and the object to the target position from the object When the angle formed by the vector is θ, the first vector is (−cos θ, −sin θ), the second vector is (−sin θ, cos θ), and the first vector is Is a cos θ, and the weight of the second vector is sin θ .
第1のベクトルと第2のベクトルの合成ベクトルに従ってロボットを移動させることで、押し動作と周回動作の両方を同時に実行できるため、効率的な押し搬送が実現される。このとき、ロボット、物体、目標位置の位置関係に応じて押し動作と周回動作の重みを適切に調整すれば、さらなる効率化が期待できる。また、ロボット及び物体の現在位置と目標位置の3つの値からベクトル演算を行うだけでよく、極めてシンプルなアルゴリズムである。さらに、第1のベクトル、第2のベクトル、それらの重み、のいずれもロボットや物体のサイズに依存しないため、本発明のアルゴリズムはいかなるサイズの物体、ロボットにも汎用的に適用可能である。 By moving the robot according to the combined vector of the first vector and the second vector, it is possible to execute both the pushing operation and the rounding operation at the same time, thereby realizing efficient push conveyance. At this time, further efficiency improvement can be expected by appropriately adjusting the weights of the pushing operation and the orbiting operation according to the positional relationship between the robot, the object, and the target position. Further, it is only necessary to perform vector calculation from the three values of the current position and the target position of the robot and the object, which is an extremely simple algorithm. Furthermore, since the first vector, the second vector, and their weights do not depend on the size of the robot or the object, the algorithm of the present invention can be applied universally to any size object or robot.
また、θに応じて重みが連続的に変化するとともに、θが180度のときに第1のベクトルの重みが最大値1をとり、第2のベクトルの重みがゼロをとる。さらに、θが180度より小さくなるに従って、第2のベクトルの重みが徐々に大きくなり、その分、第1のベクトルの重みが徐々に小さくなるので、ロボットが物体の真後ろから離れるほど周回動作成分が大きくなり、最適な押し位置(θ=180度)への復帰が促進される。そ
して、θが90度の場合、つまりロボットが物体の真横にある場合に、第1のベクトルの重みがゼロとなり、第2のベクトルの重みが最大となるため、物体を目標位置から遠ざけることがなく、且つ、最適な押し位置への迅速な復帰が期待できる。
Further , the weight changes continuously according to θ, and when θ is 180 degrees, the weight of the first vector takes the maximum value 1 and the weight of the second vector takes zero. Further, as θ becomes smaller than 180 degrees, the weight of the second vector gradually increases, and accordingly, the weight of the first vector gradually decreases. Therefore, as the robot moves away from just behind the object, the orbiting motion component Increases and the return to the optimal pushing position (θ = 180 degrees) is promoted. When θ is 90 degrees, that is, when the robot is directly beside the object, the weight of the first vector becomes zero and the weight of the second vector becomes maximum, so that the object can be moved away from the target position. And a quick return to the optimum pushing position can be expected.
前記制御手段は、θが90度以下の場合に、前記第1のベクトルの重みをゼロにすることが好ましい。 The control means preferably sets the weight of the first vector to zero when θ is 90 degrees or less.
θが90度以下の場合、第1のベクトルの重みがゼロより大きいと物体を目標位置から遠ざけることとなるし、第1のベクトルの重みがゼロより小さいとロボット自身が物体から遠ざかることとなり、いずれも非効率的である。その点、θが90度以下の場合に第1のベクトルの重みをゼロに固定し、周回動作のみを行うようにすれば、押し搬送の効率化を図ることができる。 When θ is 90 degrees or less, if the weight of the first vector is larger than zero, the object is moved away from the target position, and if the weight of the first vector is smaller than zero, the robot itself is moved away from the object. Both are inefficient. On the other hand, if θ is 90 degrees or less, the weight of the first vector is fixed to zero and only the rounding operation is performed, so that it is possible to increase the efficiency of push conveyance.
前記制御手段は、前記物体が前記目標位置に近づいた場合に前記第2のベクトルの重みを増大させることが好ましい。典型的には、前記制御手段は、前記物体と前記目標位置の距離が近くなるほど大きくなる係数a(a≧1)を、前記第2のベクトルの重みに乗じればよい。 Preferably, the control unit increases the weight of the second vector when the object approaches the target position. Typically, the control means may multiply the weight of the second vector by a coefficient a (a ≧ 1) that increases as the distance between the object and the target position becomes shorter.
これにより、目標位置の近傍では周回動作成分が増大し、相対的に押し動作成分が小さくなるため、押し動作が慎重に(少しずつ)行われることとなる。したがって、物体がパスから外れたり、目標位置を行き過ぎてしまったりすることが防止され、結果として、目標位置への収束が早くなる。 As a result, the orbiting motion component increases in the vicinity of the target position, and the pushing motion component becomes relatively small, so that the pushing motion is performed carefully (a little by little). Therefore, it is possible to prevent the object from deviating from the path or overshooting the target position, and as a result, the convergence to the target position is accelerated.
搬送システムが、自走式の第2のロボットをさらに備え、前記位置検出手段が、前記第2のロボットの現在の位置をさらに検出し、前記制御手段が、前記ロボットを前記第2のロボットが搬送する物体とみなして、前記ロボットの移動方向の場合と同じアルゴリズムを用いて前記第2のロボットの移動方向を制御することによって、前記ロボットと前記第2のロボットとが直列につながって前記物体を押すことも好ましい。 The transport system further includes a second robot that is self-propelled, the position detecting unit further detects a current position of the second robot, the control unit is configured to detect the robot by the second robot. By considering the object to be conveyed and controlling the movement direction of the second robot using the same algorithm as in the movement direction of the robot, the robot and the second robot are connected in series, and the object It is also preferable to press.
これにより、1台のロボットでは搬送困難な重い物体を、複数のロボットの協働により搬送することが可能となる。しかも、先頭のロボットが物体を押すアルゴリズムと、第2のロボットが先頭のロボットを押すアルゴリズムとを同じにできるため、プログラムの作成及び実装が容易である。 As a result, a heavy object that is difficult to be transported by one robot can be transported by the cooperation of a plurality of robots. In addition, since the algorithm for pressing the object by the first robot and the algorithm for pressing the first robot by the second robot can be made the same, it is easy to create and implement the program.
なお、本発明は、上記手段の少なくとも一部を有する搬送システムまたはロボット制御システムとして捉えることができる。また、本発明は、上記処理の少なくとも一部を含むロボット制御方法、または、その方法の各ステップをコンピュータに実行させるためのプログラムや同プログラムを記録した記録媒体として捉えることもできる。上記手段および処理の各々は可能な限り互いに組み合わせて本発明を構成することができる。 The present invention can be understood as a transport system or a robot control system having at least a part of the above means. The present invention can also be understood as a robot control method including at least a part of the above processing, a program for causing a computer to execute each step of the method, or a recording medium on which the program is recorded. Each of the above means and processes can be combined with each other as much as possible to constitute the present invention.
例えば、本発明の一態様としてのロボット制御方法は、自走式のロボットにより物体を押して該物体を所定の目標位置まで搬送する搬送システムにおける、ロボットの制御方法であって、前記物体と前記ロボットの現在の位置を検出するステップと、前記位置検出ステップの検出結果に基づいて前記ロボットの移動方向を制御する制御ステップと、を含み、前記制御ステップでは、前記ロボットが前記物体の位置に向かう方向の第1のベクトルと、前記第1ベクトルと直交し且つ前記ロボットが前記目標位置から離れる方向の第2のベクトルとを、前記物体と前記ロボットと前記目標位置の現在の位置関係に応じた重みで合成することにより、前記ロボットの移動方向を決定し、前記物体から前記目標位置へのベクトルと前記物体から前記ロボットへのベクトルとのなす角をθとした場合に、前記第1のベクトルが、(−cosθ,−sinθ)であり、前記第2のベクトルが、(−sinθ,cosθ)であり、前記第1のベクトルの重みが、−cosθであり、前記第2のベクトルの重みが、sinθであることを特徴とするロボットの制御方法である。 For example, a robot control method according to one aspect of the present invention is a robot control method in a transport system that transports an object to a predetermined target position by pushing the object with a self-propelled robot, the object and the robot Detecting a current position of the robot, and a control step of controlling a moving direction of the robot based on a detection result of the position detecting step. In the control step, the robot moves toward the position of the object. And a second vector orthogonal to the first vector and in a direction in which the robot moves away from the target position, a weight corresponding to the current positional relationship between the object, the robot, and the target position by combining in, to determine the direction of movement of the robot, from said vector and the object to the target position from the object b And the second vector is (−sin θ, cos θ), and the second vector is (−sin θ, cos θ). The robot control method is characterized in that the weight of the first vector is −cos θ and the weight of the second vector is sin θ .
本発明によれば、ロボットの押し搬送を効率的かつ安定的に実行可能なアルゴリズムを提供できる。また、本発明によれば、シンプルで、且つ、物体やロボットのサイズに依存しない、汎用性の高い押し搬送アルゴリズムを提供できる。 ADVANTAGE OF THE INVENTION According to this invention, the algorithm which can perform the pushing conveyance of a robot efficiently and stably can be provided. Further, according to the present invention, it is possible to provide a highly versatile push transport algorithm that is simple and does not depend on the size of an object or a robot.
以下に図面を参照して、この発明の好適な実施の形態を例示的に詳しく説明する。 Exemplary embodiments of the present invention will be described in detail below with reference to the drawings.
<第1実施形態>
(システム構成)
図1は、本発明の実施形態に係る搬送システムのハードウエア構成を示している。(a)は側面図であり、(b)はステージSを上方からみた平面図である。このシステムは、ステージSの上に置かれた物体OをロボットRにより目標位置Gまで搬送するための搬送システムであって、自走式のロボットRと、撮像装置2と、コンピュータ3とから構成される。ロボットR及び撮像装置2は、それぞれ、無線又は有線によりコンピュータ3に接続されている。
<First Embodiment>
(System configuration)
FIG. 1 shows a hardware configuration of a transport system according to an embodiment of the present invention. (A) is a side view, (b) is a plan view of the stage S as viewed from above. This system is a transport system for transporting an object O placed on a stage S to a target position G by a robot R, and includes a self-propelled robot R, an imaging device 2 and a computer 3. Is done. The robot R and the imaging device 2 are connected to the computer 3 by wireless or wired, respectively.
ロボットRは、車輪、駆動モータ等から構成される移動機構と、コンピュータ3からの制御コマンドに基づき移動機構を制御するマイクロコントローラとを備える、自走式のロボットである。本実施形態のロボットRは、略円盤状の外形を有しており、搬送対象の物体Oへの引っ掛かりや物体Oの損傷を防ぐために、ロボットRの外周には円形のバンパーが取り付けられている。ロボットRの移動機構は、少なくとも「前進」「右回り」「左回り」「停止」の動作が可能である。これらの動作は、マイクロコントローラ内に予めプログラムされており、コンピュータ3から各動作に対応する制御コマンドを送出することで、ロボットRの動作を制御することができる。 The robot R is a self-propelled robot including a moving mechanism including wheels, a drive motor, and the like, and a microcontroller that controls the moving mechanism based on a control command from the computer 3. The robot R of the present embodiment has a substantially disk-shaped outer shape, and a circular bumper is attached to the outer periphery of the robot R in order to prevent the object from being caught or damaged. . The movement mechanism of the robot R can perform at least “advance”, “clockwise”, “counterclockwise”, and “stop” operations. These operations are programmed in advance in the microcontroller, and the operation of the robot R can be controlled by sending a control command corresponding to each operation from the computer 3.
撮像装置2は、CCDやCMOSなどの撮像素子を備える小型のカメラであり、平面ステージSの上方に、ステージSを画角におさめるように設置されている。本実施形態では、ステージSと撮像装置2の光軸がほぼ直交するように撮像装置2を固定したが、必ずしもこの構成に限らず、ステージSを斜めに俯瞰するように撮像装置2を設置してもよいし、また撮像装置2の画角や光軸の向きを可変にしてもよい。撮像装置2で取得した画像は、ロボットR及び物体Oの位置検出に利用される(詳細は後述する)。 The imaging device 2 is a small camera having an imaging element such as a CCD or a CMOS, and is installed above the planar stage S so that the stage S is held at an angle of view. In the present embodiment, the imaging device 2 is fixed so that the optical axes of the stage S and the imaging device 2 are substantially orthogonal to each other. However, the present invention is not limited to this configuration, and the imaging device 2 is installed so that the stage S is viewed obliquely. Alternatively, the angle of view and the direction of the optical axis of the imaging device 2 may be variable. The image acquired by the imaging device 2 is used for position detection of the robot R and the object O (details will be described later).
図2は、搬送システムの機能構成を示すブロック図である。本システムは、その機能として、概略、位置検出部30、移動方向算出部31、コマンド送信部32を備えている。
これらの機能は、コンピュータ3のCPUが記憶装置に格納されたプログラムをロードし実行することで実現されるものである。なお、コンピュータ3としては、CPU、メモリ、補助記憶装置、入力装置、表示装置などを備える汎用のパーソナル・コンピュータを用いることができる。ただし、専用のコンピュータや、ロボットに実装するオンボードマイコンなどを用いることも好ましい。またプログラムの一部または全部を専用ICで構成することも可能である。
FIG. 2 is a block diagram illustrating a functional configuration of the transport system. The system includes an outline, a
These functions are realized by the CPU of the computer 3 loading and executing a program stored in the storage device. Note that a general-purpose personal computer including a CPU, a memory, an auxiliary storage device, an input device, a display device, and the like can be used as the computer 3. However, it is also preferable to use a dedicated computer or an on-board microcomputer mounted on a robot. It is also possible to configure part or all of the program with a dedicated IC.
位置検出部30は、ロボットRと物体Oの現在の位置を検出するための位置検出手段である。ここで、ロボットRの位置とは、ロボットR上に設定された代表点の位置をさす。また物体Oの位置とは、物体O上に設定された代表点の位置をさす。それぞれの代表点は任意に設定できるが、ロボットR及び物体Oの動きの安定を考慮すると、ロボットRの回転中心と物体Oの質量中心(重心)をそれぞれ代表点に設定することが好ましい。本実施形態では、図1に示すように、ロボットR及び物体Oには、それぞれ、所定の図形が描画されたマーカMr、Moが取り付けられている。マーカの取り付け位置は上記代表点を基準に決められている。位置検出部30は、撮像装置2から取り込まれた画像からマーカMr、Moを認識することによって、ロボットR及び物体Oの位置・向きを検出する。なお、マーカの認識には公知の図形認識手法を利用できるので、ここでは詳しい説明を省略する。
The
移動方向算出部31は、位置検出部30の検出結果に基づいてロボットRの最適な移動方向を計算する機能である。また、コマンド送信部32は、ロボットRの現在の向きと、移動方向算出部31で計算した移動方向とから、ロボットRの制御コマンド(ここでは、「前進」「右回り」「左回り」「停止」の組み合わせ)を生成し、ロボットRのマイクロコントローラに送信する機能である。本実施形態では、この移動方向算出部31及びコマンド送信部32が、本発明の制御手段を構成している。以下では、本実施形態の移動方向算出部31が採用する押し搬送アルゴリズムについて詳しく説明した後、システム全体の処理フローについて説明する。
The movement
(押し搬送アルゴリズム)
押し搬送アルゴリズムは、例えば図3に示すような位置関係が与えられたときに、物体Oを目標位置Gに到達させるためのロボットRの好適な移動方向を算出するための計算手法である。本アルゴリズムの入力は、物体Oの目標移動方向Do(物体Oから目標位置Gへのベクトルの向き)と、ロボットR及び物体Oの位置関係であり、本アルゴリズムの出力は、ロボットRの移動方向Drである。ここで、ロボットRと物体Oの位置は位置検出部30から都度取得されるものであり、目標位置Gについては予めわかっているものとする。なお、ロボットRを物理的に駆動するためには、モータトルクとかタイミングといったパラメータの調整が必要となるが、ロボットRの移動方向Drの計算は、これらのローレベルな駆動制御の問題とは独立に取り扱うことが可能である。
(Push transport algorithm)
The push transport algorithm is a calculation method for calculating a suitable moving direction of the robot R for causing the object O to reach the target position G when a positional relationship as shown in FIG. The input of this algorithm is the target movement direction Do of the object O (the direction of the vector from the object O to the target position G) and the positional relationship between the robot R and the object O. The output of this algorithm is the movement direction of the robot R. Dr. Here, it is assumed that the positions of the robot R and the object O are acquired from the
本システム(移動方向算出部31)は、ロボットRと物体Oの位置を取得すると、まずローカル座標系を定義する。物体Oの位置をローカル座標系の原点にとり、物体Oの目標移動方向Doに対して平行にx軸をとる。ここで、ロボットRの位置ベクトル(物体OからロボットRへのベクトル)がx軸となす角をθとおき、ロボットRと物体Oの距離を1とすると、ロボットRの座標は(cosθ,sinθ)で表される。 When acquiring the positions of the robot R and the object O, the system (movement direction calculation unit 31) first defines a local coordinate system. The position of the object O is taken as the origin of the local coordinate system, and the x-axis is taken in parallel with the target movement direction Do of the object O. Here, assuming that the angle formed by the position vector of the robot R (the vector from the object O to the robot R) and the x axis is θ and the distance between the robot R and the object O is 1, the coordinates of the robot R are (cos θ, sin θ ).
ロボットRの基本的な動作として、ロボットRが物体Oを押す動作(押し動作)と、ロボットRが物体Oの周りを移動して物体Oの後ろ側に回り込む動作(周回動作)とを考えると、上記座標系においては、押し動作の移動方向は、ロボットRが物体Oの位置に向かう方向のベクトル、具体的にはベクトルV1=(−cosθ,−sinθ)で与えられる。また、周回動作の移動方向は、ベクトルV1と直交するベクトルのうちロボットRが目
標位置Gから離れる方向のベクトル、具体的には、ベクトルV2=(−sinθ,cosθ)で与えられる。従来のbinary mode法は押し動作と周回動作を別々に実行するもので
あったのに対し、本アルゴリズムは、2つのベクトルV1、V2を適当な重みで合成することで、押しながら周回する(あるいは、周回しながら押す)というロボットRの動きを実現する。
As a basic operation of the robot R, an operation in which the robot R pushes the object O (pushing operation) and an operation in which the robot R moves around the object O and turns around the object O (circular operation) are considered. In the coordinate system, the moving direction of the pushing operation is given by a vector in a direction in which the robot R moves toward the position of the object O, specifically, a vector V1 = (− cos θ, −sin θ). The moving direction of the orbiting motion is given by a vector in a direction in which the robot R moves away from the target position G among vectors orthogonal to the vector V1, specifically, vector V2 = (− sin θ, cos θ). In contrast to the conventional binary mode method in which the pushing operation and the circular motion are executed separately, this algorithm circulates while pushing by combining the two vectors V1 and V2 with appropriate weights (or , Press while rotating) to realize the movement of the robot R.
目標位置GからみてロボットRが物体Oの後ろ側にいる場合(つまり、−cosθが大きい場合)は、ロボットRによる押し動作を支配的にするべきである。一方、ロボットRが物体Oの真後ろの位置から離れるほど(つまり、sinθが大きいほど)、ロボットRの周回動作を支配的にするべきである。そこで、本アルゴリズムでは、ベクトルV1、V2それぞれの重みとして−cosθ、sinθを選ぶ。そうすると、ロボットRの移動方向Drは、下記式のように、(cos2θ,sin2θ)で与えられることとなる。
図4(a)は、ロボットRと物体Oの位置関係を変えたときのロボットRの移動方向Drの変化を示すものである。また図4(b)は、ベクトル場(cos2θ,sin2θ)を図示したものである。これらの図から、ロボットRが物体Oの後ろ側にいくほど押し動作が支配的となること、ロボットRと物体Oの位置関係に応じて移動方向Drが連続的に変化することなどがわかる。 FIG. 4A shows a change in the moving direction Dr of the robot R when the positional relationship between the robot R and the object O is changed. FIG. 4B shows a vector field (cos 2θ, sin 2θ). From these figures, it can be seen that the pushing operation becomes dominant as the robot R moves to the rear side of the object O, and that the moving direction Dr continuously changes according to the positional relationship between the robot R and the object O.
さらに興味深いのは、図4(b)のベクトル場が物理学におけるダイポールに似ていることである(従って、本アルゴリズムをダイポール法ともよぶ)。物理学におけるダイポールとは、例えば、プラスとマイナスの電荷が離れて存在する場合に観測される電界のことである。幾何学的には、図4(b)に示すように、ダイポールは、ある直線上の1点で当該直線に接する多数の円で描画される。 What is more interesting is that the vector field in FIG. 4 (b) resembles a dipole in physics (thus, this algorithm is also called the dipole method). A dipole in physics is, for example, an electric field that is observed when positive and negative charges exist apart. Geometrically, as shown in FIG. 4 (b), a dipole is drawn with a large number of circles in contact with the straight line at one point on the straight line.
(処理フロー)
図5のフローチャートを参照して、本システムの処理の流れを説明する。なお、ロボットR及び物体Oはステージ上に予め配置され、且つ、それらに対して位置検出用のマーカMr、Moが取り付けられているものとする。また、搬送のゴールとなる目標位置Gについては予めシステムに教示されているものとする。
(Processing flow)
With reference to the flowchart of FIG. 5, the process flow of the present system will be described. It is assumed that the robot R and the object O are arranged on the stage in advance, and position detection markers Mr and Mo are attached to them. Further, it is assumed that the target position G, which is a transfer goal, is previously taught to the system.
ステップS10において、位置検出部30は、撮像装置2から画像を取り込むと、マーカMr、Moを認識することによりロボットR及び物体Oの現在の位置・向きを特定する。次に、移動方向算出部31が、目標位置GとステップS10で得られた物体Oの現在位置とから、物体Oの目標移動方向Doを計算する(ステップS12)。そして、移動方向算出部31は、上述した押し搬送アルゴリズム(ダイポール法)を用いて、ロボットRの移動方向Drを計算する(ステップS13)。
In step S <b> 10, when the
次に、コマンド送信部32が、ステップS13で計算した移動方向Drに従って、ロボットRの動きを制御する。具体的には、コマンド送信部32は、ステップS10で得られたロボットRの向きと移動方向Drとを比較し(ステップS14)、その差が所定の閾値Th2より小さい場合は、ロボットRを所定距離だけ前進させる(ステップS15)。一方、差が閾値Th2以上の場合は、コマンド送信部32は、右回り又は左回りコマンドを送出してロボットRの向きを調整する(ステップS16)。
Next, the
システムは、上記処理を繰り返し、物体Oと目標位置Gの距離が所定の閾値Th1よりも小さくなったら、搬送完了と判断し、処理を終了する(ステップS11)。 The system repeats the above processing, and when the distance between the object O and the target position G becomes smaller than the predetermined threshold Th1, the system determines that the conveyance is complete and ends the processing (step S11).
(本実施形態の利点)
上述した本実施形態の構成(アルゴリズム)によれば、次のような利点が得られる。
ベクトルV1とV2の合成ベクトルに従ってロボットRを移動させたことにより、押し動作と周回動作の両方を同時に実行することができるため、従来のアルゴリズムに比べて、効率的な押し搬送が実現される。加えて、ベクトルV1、V2の重みをそれぞれ−cosθ、sinθに選んだことにより、θ(ロボット、物体、目標位置の位置関係)に応じてロボットの移動方向が滑らかに変化することとなり、ロボットの動作が安定する。また、θが180度のときにベクトルV1(押し)の重みが最大値1をとり、ベクトルV2(周回)の重みがゼロをとるため、ロボットが物体の真後ろにあるときに押し動作のみが行われることとなり、押し搬送の効率を最大にすることができる。さらに、θが180度より小さくなるに従って、ベクトルV2(周回)の重みが徐々に大きくなり、その分、ベクトルV1(押し)の重みが徐々に小さくなるので、ロボットが物体の真後ろから離れるほど周回動作成分が大きくなり、最適な押し位置(θ=180度)への復帰が促進される。そして、θが90度の場合、つまりロボットが物体の真横にある場合に、ベクトルV1の重みがゼロとなり、ベクトルV2の重みが最大となるため、物体を目標位置から遠ざけることがなく、且つ、最適な押し位置への迅速な復帰が期待できる。
(Advantages of this embodiment)
According to the configuration (algorithm) of the present embodiment described above, the following advantages are obtained.
Since the robot R is moved according to the combined vector of the vectors V1 and V2, both the pushing operation and the rounding operation can be performed at the same time, so that an efficient push conveyance is realized as compared with the conventional algorithm. In addition, by selecting the weights of the vectors V1 and V2 to be −cos θ and sin θ, respectively, the moving direction of the robot smoothly changes according to θ (the positional relationship between the robot, the object, and the target position). Operation is stable. Further, when θ is 180 degrees, the weight of the vector V1 (push) takes the maximum value 1, and the weight of the vector V2 (lap) takes zero, so that only the push operation is performed when the robot is directly behind the object. As a result, the efficiency of push conveyance can be maximized. Further, as θ becomes smaller than 180 degrees, the weight of the vector V2 (circulation) gradually increases, and the weight of the vector V1 (push) gradually decreases accordingly. The movement component becomes large, and the return to the optimal pushing position (θ = 180 degrees) is promoted. When θ is 90 degrees, that is, when the robot is directly beside the object, the weight of the vector V1 becomes zero and the weight of the vector V2 becomes the maximum, so that the object is not moved away from the target position, and A quick return to the optimal pushing position can be expected.
また、本アルゴリズムは、ロボット及び物体の現在位置と目標位置の3つの値からベクトル演算を行うだけでよく、極めてシンプルであるとともに、計算量も非常に少ない。さらに、ロボットの移動方向Drは(cos2θ,sin2θ)で与えられ、ロボットや物体のサイズ、ロボットと物体間の距離などに依存しない。したがって、本アルゴリズムによれば、いかなるサイズの物体、ロボットに対しても同一のプログラムコードを利用でき、サイズ依存パラメータの調整といった煩雑な作業が不要となる。これにより、実用に際しての労力を大幅に軽減することができる。 In addition, this algorithm only needs to perform vector calculation from the three values of the current position and target position of the robot and the object, and is extremely simple and requires a very small amount of calculation. Further, the moving direction Dr of the robot is given by (cos 2θ, sin 2θ), and does not depend on the size of the robot or the object, the distance between the robot and the object, or the like. Therefore, according to the present algorithm, the same program code can be used for any size object or robot, and complicated operations such as adjustment of size-dependent parameters are not required. Thereby, the labor for practical use can be greatly reduced.
また、本実施形態のロボットは、円形のバンパーを有しているため、直線形状のバンパーに比べ効率的な押し搬送が可能である。この点について、図6を参照して説明する。ロボットRが物体Oの真後ろにいる場合は、いずれのバンパー形状でも同じように搬送することができる。しかしながら、ロボットRの位置が物体Oの真後ろからずれてしまった場合、ロボットRが周回動作のために転回すると、直線形状のバンパーでは物体Oに干渉し、物体Oを目標位置から遠ざけてしまうおそれがある(図6(a)参照)。バンパーの干渉を防ぐには、ロボットRを後退させて物体Oから一旦離した後、周回動作を行う必要があるが、このような動作は多大なオーバーヘッドを生むため好ましくない。これに対して、図6(b)に示すように、円形のバンパーの場合は、ロボットRの転回時にバンパーと物体Oの干渉が生じることはないし、ロボットRが転回を終えて前進すると、物体Oが目標位置方向へと押される。よって、本実施形態の押し搬送アルゴリズムには、円形バンパーのほうが好適である。 In addition, since the robot according to the present embodiment has a circular bumper, it can be more efficiently pushed and conveyed than a linear bumper. This point will be described with reference to FIG. When the robot R is directly behind the object O, any bumper shape can be transported in the same manner. However, if the position of the robot R is shifted from just behind the object O, when the robot R turns for a circular motion, the linear bumper may interfere with the object O and move the object O away from the target position. (See FIG. 6 (a)). In order to prevent bumper interference, it is necessary to revolve the robot R and once away from the object O, and then perform a revolving operation. However, such an operation is not preferable because it causes a great overhead. On the other hand, as shown in FIG. 6B, in the case of a circular bumper, there is no interference between the bumper and the object O when the robot R turns, and when the robot R finishes turning and moves forward, O is pushed toward the target position. Therefore, a circular bumper is more suitable for the push conveyance algorithm of this embodiment.
<第2実施形態>
ロボットRが物体Oの前方にある場合、第1実施形態のアルゴリズムでは、ロボットRは物体Oから離れる方向へと移動し、大きな弧を描いて物体Oの後ろに回り込む、という非効率的な軌道をとる(図4(b)参照)。例えば、ロボットRが目標位置Gの手前で物体Oを押しすぎ、物体Oが目標位置Gを通り越してしまった場合などに、上記の問題が発生する。
Second Embodiment
When the robot R is in front of the object O, according to the algorithm of the first embodiment, the robot R moves in a direction away from the object O and draws a large arc and goes around the object O in an inefficient trajectory. (See FIG. 4B). For example, the above problem occurs when the robot R pushes the object O too far before the target position G and the object O passes the target position G.
かかる問題を解決するために、第2実施形態のアルゴリズムでは、角度θが90度以下の場合に、下記式のとおり、押し動作方向のベクトルV1の重みをゼロにする。これは、
第1実施形態のアルゴリズムで得られたロボットの移動方向Drが物体Oのほうを向いていなかった場合に、Drの径方向成分をゼロにする、と言い換えることもできる。
In other words, when the moving direction Dr of the robot obtained by the algorithm of the first embodiment is not directed toward the object O, the radial component of Dr is set to zero.
この方法は理解が容易であり実装が簡単であるという以外にも、次のような利点をもつ。第一に、0度<θ≦90度におけるベクトル場(−sin2θ,sinθcosθ)と、90度<θ≦180度におけるダイポール場(cos2θ,sin2θ)とが、その境界(θ=90度)において滑らかに接続する。このことは、境界付近のロボットRの動作を安定にする効果がある。第二に、本実施形態のアルゴリズムも、第1実施形態のものと同様、ロボットや物体のサイズに依存しないため、汎用性に優れている。 In addition to being easy to understand and easy to implement, this method has the following advantages. First, a vector field (−sin 2 θ, sin θ cos θ) at 0 degree <θ ≦ 90 degrees and a dipole field (cos 2θ, sin 2θ) at 90 degrees <θ ≦ 180 degrees are the boundaries (θ = 90 degrees). Connect smoothly. This has the effect of stabilizing the operation of the robot R near the boundary. Secondly, the algorithm of this embodiment is excellent in versatility because it does not depend on the size of the robot or the object as in the first embodiment.
<第3実施形態>
第1及び第2実施形態のアルゴリズムでは、物体Oが目標位置Gに収束するのに時間がかかることがある。最悪なケースでは、ロボットRと物体Oが目標位置Gの周囲を無限に回り続けることもある。このような現象が起きるのは、ダイポール法では、ロボットRが物体Oの後ろに回り込むのと同時に物体Oを押して移動させてしまうからである。
<Third Embodiment>
In the algorithms of the first and second embodiments, it may take time for the object O to converge to the target position G. In the worst case, the robot R and the object O may continue to rotate around the target position G indefinitely. Such a phenomenon occurs because, in the dipole method, the robot R moves around behind the object O and simultaneously pushes and moves the object O.
かかる問題を解決するために、第3実施形態のアルゴリズムでは、物体Oが目標位置Gに近づいた場合に周回動作成分のベクトルV2の重みを増大させることとする。本実施形態のロボットRの移動方向Drは下記式で表される。ここで、係数a(a≧1)は、物体Oと目標位置Gの距離に応じて決められるパラメータである。
係数aが大きくなるほど周回動作成分が増大し、相対的に押し動作成分が小さくなるため、押し動作が慎重に(少しずつ)行われることとなる。したがって、目標位置Gの近傍で係数aを大きくすれば、物体Oが搬送パスから外れたり、目標位置Gを行き過ぎてしまったりすることが防止され、結果として、目標位置Gへの収束が早くなる。なお、上記式から明らかなように、本実施形態のアルゴリズムも、ロボットRや物体Oのサイズに依存しないという利点をもつ。 As the coefficient a increases, the orbiting motion component increases and the push motion component relatively decreases, so that the push motion is performed carefully (a little by little). Therefore, if the coefficient a is increased in the vicinity of the target position G, it is possible to prevent the object O from moving out of the transport path or overshooting the target position G, and as a result, the convergence to the target position G is accelerated. . As is clear from the above equation, the algorithm of this embodiment also has an advantage that it does not depend on the size of the robot R or the object O.
本実施形態では、係数aを、a=|β|/|α|のように定義する。ここで、αはロボットRから物体OへのベクトルとロボットRから目標位置Gへのベクトルの間の角度であり、βは物体OからロボットRへのベクトルと目標位置Gから物体Oへのベクトルの間の角度である(図7参照)。この係数aは、次のような特徴をもつ。第一に、係数aは角度αに反比例するため、物体Oが目標位置Gに近づくほど係数aは大きくなる傾向を示す。第二に、角度βを乗じることで、ロボットR、物体O、目標位置Gがほぼ一直線に並んだときに係数aが無限大になってしまうことを防いでいる。そして、第三に、角度α、βで
定義したことで、ロボットや物体のサイズに依存しないパラメータである。
In the present embodiment, the coefficient a is defined as a = | β | / | α |. Here, α is an angle between a vector from the robot R to the object O and a vector from the robot R to the target position G, and β is a vector from the object O to the robot R and a vector from the target position G to the object O. (See FIG. 7). This coefficient a has the following characteristics. First, since the coefficient a is inversely proportional to the angle α, the coefficient a tends to increase as the object O approaches the target position G. Second, by multiplying by the angle β, the coefficient a is prevented from becoming infinite when the robot R, the object O, and the target position G are arranged in a substantially straight line. Thirdly, the parameters are independent of the size of the robot or the object because they are defined by the angles α and β.
<第4実施形態>
図8は、第4実施形態における物体搬送の様子を示している。この実施形態では、2台のロボットを用いて1つの物体の押し搬送を行う。
<Fourth embodiment>
FIG. 8 shows a state of object conveyance in the fourth embodiment. In this embodiment, one robot is pushed and conveyed using two robots.
本実施形態のシステムは、撮像装置2で得られた画像から、1番目のロボット(先頭のロボット)R1、2番目のロボット(後続のロボット)R2、物体Oそれぞれの位置及び向きを特定する。そして、システムは、第1〜第3実施形態と同じアルゴリズムを用いて、ロボットR1の移動方向を決定する。さらにシステムは、同じアルゴリズムをロボットR2の移動方向の算出にも適用する。このとき、物体Oではなく、ロボットR1を、ロボットR2の搬送対象物体に設定する(具体的には、アルゴリズムの入力としてロボットR2とロボットR1の位置を与える)だけで、2台のロボットR1、R2が直列につながって物体Oを押すこととなる。 The system of the present embodiment specifies the positions and orientations of the first robot (first robot) R1, the second robot (following robot) R2, and the object O from the image obtained by the imaging device 2. And a system determines the moving direction of robot R1 using the same algorithm as 1st-3rd embodiment. Furthermore, the system applies the same algorithm to the calculation of the moving direction of the robot R2. At this time, the robot R1, not the object O, is set as the object to be transported by the robot R2 (specifically, the positions of the robot R2 and the robot R1 are given as input of the algorithm). R2 is connected in series and pushes the object O.
これにより、1台のロボットでは搬送困難な重い物体を、複数のロボットの協働により搬送することが可能となる。しかも、先頭のロボットが物体を押すアルゴリズムと、後続のロボットが先頭のロボットを押すアルゴリズムとを同じにできるため、プログラムの作成及び実装が容易である。なお、本実施形態では2台のロボットによる直列搬送を例示したが、3台以上のロボットによる直列搬送も可能であることはいうまでもない。 As a result, a heavy object that is difficult to be transported by one robot can be transported by the cooperation of a plurality of robots. In addition, since the algorithm for pressing the object by the first robot and the algorithm for pressing the first robot by the subsequent robot can be made the same, it is easy to create and implement the program. In this embodiment, serial transfer by two robots is illustrated, but it goes without saying that serial transfer by three or more robots is also possible.
<その他の変形例>
上記実施形態は本発明の一具体例を例示したものにすぎない。本発明の範囲は上記実施形態に限られるものではなく、その技術思想の範囲内で種々の変形が可能である。
<Other variations>
The above embodiment is merely an example of the present invention. The scope of the present invention is not limited to the above embodiment, and various modifications can be made within the scope of the technical idea.
例えば、ロボットの形状は円盤状でなくてもよい。またバンパーは、ロボットの外周の一部分だけに設けられていてもよいし、円形でなくフラットな形状のものでもよい。またロボットの移動機構は、車輪に限らず、キャタピラ、浮上装置、歩行装置のようなものでもかまわない。平面上を2次元的に移動して、物体に当接することで当該物体を押すことができさえすれば、ロボットの構成はいかなるものでも採用できる。また、搬送対象の物体の外形も円形である必要はなく、楕円形、矩形、多角形など、ロボットのバンパーと当接可能な外形をもつ物体であれば搬送可能である。 For example, the shape of the robot may not be a disk shape. The bumper may be provided only on a part of the outer periphery of the robot, or may be a flat shape instead of a circle. Moreover, the moving mechanism of the robot is not limited to wheels, and may be a caterpillar, a levitating device, a walking device, or the like. Any configuration of the robot can be adopted as long as the object can be pushed by moving two-dimensionally on the plane and coming into contact with the object. Further, the outer shape of the object to be transported does not need to be circular, and any object having an outer shape that can contact the bumper of the robot, such as an ellipse, a rectangle, or a polygon, can be transported.
上記実施形態では、撮像装置2で得られた画像から物体等の位置を検出しているが、位置検出手段はこの構成に限られない。例えば、ステージにセンサを内蔵し、物体やロボットのステージ上の2次元座標をセンサで検知してもよい。あるいは、物体やロボット自体に位置センサを内蔵してもよい。 In the above embodiment, the position of an object or the like is detected from the image obtained by the imaging device 2, but the position detection means is not limited to this configuration. For example, a sensor may be built in the stage, and two-dimensional coordinates on the stage of the object or robot may be detected by the sensor. Alternatively, a position sensor may be built in the object or the robot itself.
第3実施形態で用いる係数aの定義は、上述したものに限られない。また、物体と目標位置の距離に応じて係数aの値を連続的に変化させる必要はなく、数個の値を段階的に切り替える構成でもかまわない。例えば、物体Oと目標位置Gの距離が所定の閾値以上の場合(目標位置の非近傍の場合)はa=1とし、所定の閾値より小さい場合(目標位置の近傍の場合)にa=2とする、という方法でもよい。 The definition of the coefficient a used in the third embodiment is not limited to that described above. Further, it is not necessary to continuously change the value of the coefficient a in accordance with the distance between the object and the target position, and a configuration in which several values are switched in stages may be used. For example, when the distance between the object O and the target position G is equal to or greater than a predetermined threshold (when the distance is not near the target position), a = 1, and when the distance is smaller than the predetermined threshold (when the distance is close to the target position), a = 2. It is also possible to use the method.
R,R1,R2:ロボット、O:物体、G:目標位置、S:ステージ、2:撮像装置、3:コンピュータ、30:位置検出部、31:移動方向算出部、32:コマンド送信部 R, R1, R2: Robot, O: Object, G: Target position, S: Stage, 2: Imaging device, 3: Computer, 30: Position detection unit, 31: Movement direction calculation unit, 32: Command transmission unit
Claims (6)
物体を押すための自走式のロボットと、
前記物体と前記ロボットの現在の位置を検出する位置検出手段と、
前記位置検出手段の検出結果に基づいて前記ロボットの移動方向を制御する制御手段と、を備え、
前記制御手段は、前記ロボットが前記物体の位置に向かう方向の第1のベクトルと、前記第1ベクトルと直交し且つ前記ロボットが前記目標位置から離れる方向の第2のベクトルとを、前記物体と前記ロボットと前記目標位置の現在の位置関係に応じた重みで合成することにより、前記ロボットの移動方向を決定するものであり、
前記物体から前記目標位置へのベクトルと前記物体から前記ロボットへのベクトルとのなす角をθとした場合に、
前記第1のベクトルが、(−cosθ,−sinθ)であり、
前記第2のベクトルが、(−sinθ,cosθ)であり、
前記第1のベクトルの重みが、−cosθであり、
前記第2のベクトルの重みが、sinθであることを特徴とする搬送システム。 A transport system that pushes an object by a robot and transports the object to a predetermined target position,
A self-propelled robot to push objects,
Position detecting means for detecting a current position of the object and the robot;
Control means for controlling the movement direction of the robot based on the detection result of the position detection means,
The control means includes a first vector in a direction in which the robot moves toward the position of the object, and a second vector in a direction orthogonal to the first vector and in a direction in which the robot moves away from the target position. The moving direction of the robot is determined by synthesizing with a weight according to the current positional relationship between the robot and the target position ,
When the angle formed by the vector from the object to the target position and the vector from the object to the robot is θ,
The first vector is (−cos θ, −sin θ);
The second vector is (−sin θ, cos θ);
The weight of the first vector is −cos θ,
The transport system according to claim 1, wherein a weight of the second vector is sin θ .
前記位置検出手段が、前記第2のロボットの現在の位置をさらに検出し、
前記制御手段が、前記ロボットを前記第2のロボットが搬送する物体とみなして、前記ロボットの移動方向の場合と同じアルゴリズムを用いて前記第2のロボットの移動方向を制御することによって、
前記ロボットと前記第2のロボットとが直列につながって前記物体を押すことを特徴とする請求項1〜3のいずれかに記載の搬送システム。 A self-propelled second robot,
The position detecting means further detects a current position of the second robot;
The control means regards the robot as an object carried by the second robot, and controls the moving direction of the second robot using the same algorithm as in the moving direction of the robot.
Conveying system according to any one of claims 1 to 3, and the robot and the second robot, characterized in that pressing the said object connected in series.
前記物体と前記ロボットの現在の位置を検出するステップと、
前記位置検出ステップの検出結果に基づいて前記ロボットの移動方向を制御する制御ステップと、を含み、
前記制御ステップでは、前記ロボットが前記物体の位置に向かう方向の第1のベクトルと、前記第1ベクトルと直交し且つ前記ロボットが前記目標位置から離れる方向の第2のベクトルとを、前記物体と前記ロボットと前記目標位置の現在の位置関係に応じた重みで合成することにより、前記ロボットの移動方向を決定し、
前記物体から前記目標位置へのベクトルと前記物体から前記ロボットへのベクトルとのなす角をθとした場合に、
前記第1のベクトルが、(−cosθ,−sinθ)であり、
前記第2のベクトルが、(−sinθ,cosθ)であり、
前記第1のベクトルの重みが、−cosθであり、
前記第2のベクトルの重みが、sinθであることを特徴とするロボットの制御方法。 A method for controlling a robot in a transport system that transports the object to a predetermined target position by pushing the object with a self-propelled robot,
Detecting the current position of the object and the robot;
A control step for controlling a moving direction of the robot based on a detection result of the position detection step,
In the control step, a first vector in a direction in which the robot moves toward the position of the object, and a second vector in a direction orthogonal to the first vector and in a direction in which the robot moves away from the target position are By combining with a weight according to the current positional relationship between the robot and the target position, determine the movement direction of the robot ,
When the angle formed by the vector from the object to the target position and the vector from the object to the robot is θ,
The first vector is (−cos θ, −sin θ);
The second vector is (−sin θ, cos θ);
The weight of the first vector is −cos θ,
A robot control method, wherein the weight of the second vector is sin θ .
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2009262645A JP4952959B2 (en) | 2009-11-18 | 2009-11-18 | Transport system and robot control method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2009262645A JP4952959B2 (en) | 2009-11-18 | 2009-11-18 | Transport system and robot control method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2011108003A JP2011108003A (en) | 2011-06-02 |
| JP4952959B2 true JP4952959B2 (en) | 2012-06-13 |
Family
ID=44231395
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2009262645A Expired - Fee Related JP4952959B2 (en) | 2009-11-18 | 2009-11-18 | Transport system and robot control method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4952959B2 (en) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2021171618A1 (en) | 2020-02-28 | 2021-09-02 | 日本電気株式会社 | Conveyance system, control device, and control method |
| JP7650789B2 (en) * | 2021-12-17 | 2025-03-25 | 株式会社クボタ | Autonomous Driving Control System |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4485279B2 (en) * | 2004-08-02 | 2010-06-16 | 本田技研工業株式会社 | Gait generation device and control device for legged mobile robot |
| JP4899165B2 (en) * | 2007-12-10 | 2012-03-21 | 本田技研工業株式会社 | Control device for legged mobile robot |
-
2009
- 2009-11-18 JP JP2009262645A patent/JP4952959B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2011108003A (en) | 2011-06-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8606400B2 (en) | Robot system | |
| CN110370256B (en) | Robot and its path planning method, device and controller | |
| CN102837316B (en) | picking up system | |
| CN107053166B (en) | Autonomous moving apparatus, autonomous moving method, and storage medium | |
| CN108205319B (en) | Movable object and its control method | |
| CN115648176B (en) | Vision-guided pick and place method, mobile robot, and computer-readable storage medium | |
| WO2019047415A1 (en) | Trajectory tracking method and device, storage medium, processor | |
| JP5459269B2 (en) | Picking system | |
| CN111319038B (en) | Track generation system and track generation method | |
| Jiao et al. | Transportation by multiple mobile manipulators in unknown environments with obstacles | |
| JP4952959B2 (en) | Transport system and robot control method | |
| CN109955244A (en) | Grabbing control method and device based on visual servo and robot | |
| WO2022143626A1 (en) | Method for controlling mobile robot, computer-implemented storage medium, and mobile robot | |
| CN110842890A (en) | Robot and control method thereof | |
| CN114179092B (en) | A vehicle handling control method, device, equipment and system | |
| CN109641706B (en) | Goods picking method and system, and holding and placing system and robot applied to goods picking method and system | |
| CN111439565B (en) | Goods conveying steering control method and device and steering conveying line | |
| JP7455800B2 (en) | System and method for determining and correcting robot payload position | |
| Hebbel et al. | Learning in a high dimensional space: Fast omnidirectional quadrupedal locomotion | |
| CN107670997B (en) | Material rack direction control method and robot | |
| JP6608894B2 (en) | Robot system | |
| Li et al. | A hybrid 3dof pose estimation method based on camera and lidar data | |
| JP6528445B2 (en) | Control system for autonomous mobile unit and autonomous mobile unit | |
| Liu et al. | Robot intelligence for real world applications | |
| Wadenbäck et al. | Visual odometry from two point correspondences and initial automatic tilt calibration |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111207 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111213 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120126 |
|
| 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: 20120214 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120228 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150323 Year of fee payment: 3 |
|
| LAPS | Cancellation because of no payment of annual fees | ||
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |