JP2007257200A - Mobile body and control method for it - Google Patents
Mobile body and control method for it Download PDFInfo
- Publication number
- JP2007257200A JP2007257200A JP2006079505A JP2006079505A JP2007257200A JP 2007257200 A JP2007257200 A JP 2007257200A JP 2006079505 A JP2006079505 A JP 2006079505A JP 2006079505 A JP2006079505 A JP 2006079505A JP 2007257200 A JP2007257200 A JP 2007257200A
- Authority
- JP
- Japan
- Prior art keywords
- moving body
- speed
- straight traveling
- traveling speed
- constant
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 230000007246 mechanism Effects 0.000 claims abstract description 32
- 238000012545 processing Methods 0.000 claims description 15
- 230000001133 acceleration Effects 0.000 description 6
- 238000005259 measurement Methods 0.000 description 6
- 230000003247 decreasing effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
Images
Landscapes
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
Description
本発明は、移動体及びその制御方法に関し、特に詳しくは目標経路に対して追従する移動体、及びその制御方法に関する。 The present invention relates to a moving body and a control method thereof, and more particularly to a moving body that follows a target route and a control method thereof.
従来より、ロボットや車両等の移動体を目標経路に対して自動追従させる技術が提案されている。例えば、目標経路に対する、移動体の位置の横ずれ量や方位角のずれ量をフィードバック制御することによって自動追従する技術がある。このような、自律型の移動体では、移動開始位置から目標位置までの目標経路を計画している。そして、移動体は、フィードバック制御されながら、目標経路に追従して移動する。 2. Description of the Related Art Conventionally, techniques for automatically moving a moving body such as a robot or a vehicle to a target route have been proposed. For example, there is a technique of automatically following a feedback control of a lateral deviation amount or an azimuth angle deviation amount of a moving body with respect to a target route. In such an autonomous moving body, a target route from the movement start position to the target position is planned. The moving body moves following the target route while being feedback controlled.
このような、自律型の移動体の一例として、2輪車両が挙げられる。2輪車両等の移動体に対する移動制御は、通常、直線移動と、曲線移動とを組み合わせて行なわれる。したがって、直進速度と、旋回速度(角速度)を入力して移動させる方法が一般に使用される。このような旋回速度は、通常、フィードバックから求められる。また、直進速度vは、一定速度として求められている。さらに、目標経路に追従して移動する場合において、曲線部分を安定して移動するために、遠心力が所定のしきい値以下となるよう直進速度を求める技術が開示されている(特許文献1参照)。すなわち、上記の文献では、非ホロノミック2輪型ロボットにおいて、直進速度vを求める指標として、遠心力による制限を加えている。 An example of such an autonomous moving body is a two-wheeled vehicle. Movement control for a moving body such as a two-wheeled vehicle is usually performed by combining linear movement and curved movement. Therefore, a method of moving by inputting a straight traveling speed and a turning speed (angular speed) is generally used. Such a turning speed is usually obtained from feedback. Further, the straight traveling speed v is obtained as a constant speed. Furthermore, in the case of moving following a target route, a technique for obtaining a straight traveling speed so that the centrifugal force becomes a predetermined threshold value or less is disclosed in order to move the curved portion stably (Patent Document 1). reference). That is, in the above-mentioned document, in the non-holonomic two-wheeled robot, a limitation due to centrifugal force is added as an index for obtaining the straight traveling speed v.
上記の技術における直進速度vの算出方法について説明する。移動ロボットに加わる遠心力は、f=mvωとして示される。なお、mは移動ロボットの質量、ωは移動ロボットの旋回速度である。なお、曲率κは、旋回速度ωより算出することができる。 A method of calculating the straight traveling speed v in the above technique will be described. The centrifugal force applied to the mobile robot is shown as f = mvω. Here, m is the mass of the mobile robot, and ω is the turning speed of the mobile robot. The curvature κ can be calculated from the turning speed ω.
そして、mvω≦fmaxとして遠心力がしきい値以内となるように設定する。これにより、直進速度vに対する制限は、v≦fmax/mωで与えられる。そして、直進速度の最大値をvmaxとすると、vmax=min(v0,fmax/mω)で与えられる。ここで、v0は予め設定された値である。そして、移動体は、vmaxの直進速度で移動する。このように、直進速度vがfmax/mωを超えてしまうときは、直進速度vがv0となるよう制限を設けている。 Then, mvω ≦ f max is set so that the centrifugal force is within the threshold value. Thereby, the restriction on the straight traveling speed v is given by v ≦ f max / mω. When the maximum value of the straight traveling speed is v max , v max = min (v 0 , f max / mω) is given. Here, v 0 is a preset value. Then, the moving body moves at a straight speed of v max . Thus, when the straight traveling speed v exceeds f max / mω, a restriction is provided so that the straight traveling speed v becomes v 0 .
このようにして算出された直進速度vと旋回速度ωの関係を図11に示す。この従来技術では、直進速度vに対して遠心力による制限を加えている。しかしながら、この技術では、図11の点線に示すように、加速度が不連続になる。そのため、移動を滑らかにすることができない。すなわち、ω=fmax/mv0を境にして、加速度が急激に変化してしまう。このように、従来の技術では、スムーズに移動することができないという問題点がある。 FIG. 11 shows the relationship between the straight speed v calculated in this way and the turning speed ω. In this prior art, the linear velocity v is limited by centrifugal force. However, in this technique, the acceleration becomes discontinuous as shown by the dotted line in FIG. Therefore, the movement cannot be made smooth. That is, the acceleration changes abruptly at ω = f max / mv 0 as a boundary. Thus, the conventional technique has a problem that it cannot move smoothly.
本発明は、かかる課題を解決するためになされたものであり、スムーズに移動することができる移動体、及びその制御方法を提供することを目的とする。 The present invention has been made to solve such a problem, and an object thereof is to provide a moving body that can move smoothly and a control method thereof.
本発明の第1の態様にかかる移動体は、目標経路に対して追従するようフィードバック制御を行う制御部を有する移動体であって、前記制御部が、前記移動体の位置姿勢を推定する位置姿勢推定部と、前記位置姿勢推定部で推定された位置姿勢と前記目標経路とに基づいて、旋回速度を決定する旋回速度決定部と、前記移動体の運動エネルギーが一定となるよう、前記旋回速度決定部で決定された旋回速度から前記移動体の直進速度を決定する直進速度決定部と、前記旋回速度決定部により決定された旋回速度と、前記直進速度決定部により決定された直進速度とに基づいて、前記移動体の駆動機構を制御する駆動制御部と、を備えるものである。これにより、スムーズな移動が可能となる。 The moving body according to the first aspect of the present invention is a moving body having a control unit that performs feedback control so as to follow a target path, and the control unit estimates a position and orientation of the moving body. A posture estimation unit, a turning speed determination unit that determines a turning speed based on the position and posture estimated by the position and posture estimation unit, and the target path, and the turning so that the kinetic energy of the moving body becomes constant A straight-ahead speed determining unit that determines a straight-ahead speed of the moving body from a turning speed determined by the speed-determining unit; a turning speed determined by the turning-speed determining unit; and a straight-ahead speed determined by the straight-ahead speed determining unit; And a drive control unit for controlling the drive mechanism of the moving body. Thereby, smooth movement becomes possible.
本発明の第2の態様にかかる移動体は、上記の移動体において、前記直進速度決定部が、数式3を満たすよう、前記直進速度を決定し、数式3の左辺で示される移動体の運動エネルギーが定数Cで一定となるものである。
これにより、スムーズな移動を簡便に制御することができる。
In the mobile body according to the second aspect of the present invention, in the mobile body described above, the linear travel speed determination unit determines the straight travel speed so as to satisfy Formula 3, and the motion of the mobile body represented by the left side of Formula 3 The energy is constant at a constant C.
Thereby, smooth movement can be controlled easily.
本発明の第3の態様にかかる移動体は、上記の移動体において、前記旋回速度決定部で決定した旋回速度によらず前記移動体の運動エネルギーが一定となるよう、前記直進速度決定部が前記直進速度を決定するものである。これにより、スムーズな移動を簡便に制御することができる。 In the mobile body according to the third aspect of the present invention, in the mobile body described above, the rectilinear speed determining unit is configured so that the kinetic energy of the mobile body is constant regardless of the turning speed determined by the turning speed determining unit. The straight speed is determined. Thereby, smooth movement can be controlled easily.
本発明の第4の態様にかかる移動体は、上記の移動体において、前記旋回速度決定部で決定した旋回速度が一定の範囲内にある場合に、前記移動体の運動エネルギーが一定となるよう、前記直進速度決定部が前記直進速度を決定するものである。これにより、従来に比べて、スムーズに移動させることができる。 In the mobile body according to the fourth aspect of the present invention, in the above mobile body, when the turning speed determined by the turning speed determination unit is within a certain range, the kinetic energy of the mobile body becomes constant. The straight traveling speed determination unit determines the straight traveling speed. Thereby, it can move smoothly compared with the past.
本発明の第5の態様にかかる移動体は、上記の移動体において、前記旋回速度が前記一定の範囲外にある場合に、前記移動体の遠心力が一定となるよう、前記直進速度決定部が前記直進速度を決定するものである。これにより、移動速度を高くした場合でも、スムーズに移動させることができる。 The moving body according to the fifth aspect of the present invention is the above-described moving body, wherein the straight traveling speed determining unit is configured such that when the turning speed is outside the certain range, the centrifugal force of the moving body is constant. Determines the straight speed. Thereby, even when the movement speed is increased, the movement can be performed smoothly.
本発明の第6の態様にかかる移動体は、上記の移動体において、所定のタスクを実行するタスク処理機構をさらに備え、前記タスクを実行する前後の質量変化に応じて前記移動体の質量を変化させた状態で、前記運動エネルギーを一定とするよう前記直進速度を決定するものである。これにより、質量が変化した場合でも、スムーズに移動させることができる。 A moving body according to a sixth aspect of the present invention further includes a task processing mechanism for executing a predetermined task in the above moving body, and the mass of the moving body is determined in accordance with a mass change before and after executing the task. The straight traveling speed is determined so that the kinetic energy is constant in the changed state. Thereby, even when mass changes, it can be moved smoothly.
本発明の第7の態様にかかる移動体は、上記の移動体において、前記タスクを実行した後の状態と実行する前の状態とで、前記運動エネルギーが異なる値で一定になるよう前記直進速度を決定するものである。これにより、よりスムーズに移動させることができる。 The moving body according to a seventh aspect of the present invention is the above moving body, wherein the linear velocity is such that the kinetic energy is constant at different values in a state after the task is executed and a state before the task is executed. Is to determine. Thereby, it can be moved more smoothly.
本発明の第8の態様にかかる移動体の制御方法は、目標経路に対して追従する移動体の移動をフィードバック制御する制御方法であって、前記移動体の位置姿勢を推定するステップと、前記推定された位置姿勢と前記目標経路とに基づいて、旋回速度を決定するステップと、前記移動体の運動エネルギーが一定となるよう、前記決定された旋回速度から前記移動体の直進速度を決定するステップと、前記決定された旋回速度と、前記決定された直進速度とに基づいて、前記移動体の駆動機構を制御するステップと、を備えるものである。これにより、スムーズな移動が可能となる。 A control method for a mobile object according to an eighth aspect of the present invention is a control method for feedback control of the movement of a mobile object that follows a target route, the step of estimating the position and orientation of the mobile object, A step of determining a turning speed based on the estimated position and orientation and the target route, and a straight traveling speed of the moving body is determined from the determined turning speed so that the kinetic energy of the moving body becomes constant. And a step of controlling a drive mechanism of the moving body based on the determined turning speed and the determined straight traveling speed. Thereby, smooth movement becomes possible.
本発明の第9の態様にかかる移動体の制御方法は、上記の制御方法において、前記直進速度を決定するステップでは、数式4を満たすよう、前記直進速度を決定し、数式4の左辺で示される移動体の運動エネルギーが定数Cで一定となるものである。
これにより、スムーズな移動を簡便に制御することができる。
According to a ninth aspect of the present invention, in the method for controlling a moving body according to the above control method, in the step of determining the straight traveling speed, the straight traveling speed is determined so as to satisfy the mathematical formula 4, The kinetic energy of the moving body is constant C.
Thereby, smooth movement can be controlled easily.
本発明の第10の態様にかかる移動体の制御方法は、上記の制御方法において、前記直進速度を決定するステップでは、前記決定した旋回速度によらず、前記移動体の運動エネルギーが一定となるよう前記直進速度を決定するものである。これにより、スムーズな移動を簡便に制御することができる。 According to a tenth aspect of the present invention, in the control method for a moving body in the above control method, in the step of determining the straight traveling speed, the kinetic energy of the moving body is constant regardless of the determined turning speed. Thus, the straight speed is determined. Thereby, smooth movement can be controlled easily.
本発明の第11の態様にかかる移動体の制御方法は、上記の制御方法において、前記直進速度を決定するステップでは、前記決定した旋回速度が一定の範囲内にある場合に、前記移動体の運動エネルギーが一定となるよう前記直進速度を決定するものである。これにより、従来に比べて、スムーズに移動させることができる。 According to an eleventh aspect of the present invention, there is provided a method for controlling a moving body according to the above control method, wherein in the step of determining the straight traveling speed, the determined turning speed is within a certain range. The straight traveling speed is determined so that the kinetic energy is constant. Thereby, it can move smoothly compared with the past.
本発明の第12の態様にかかる移動体の制御方法は、上記の制御方法において、前記直進速度を決定するステップでは、前記旋回速度が前記一定の範囲外にある場合に、前記移動体の遠心力が一定になるよう、前記直進速度を決定するものである。これにより、移動速度を高くした場合でも、スムーズに移動させることができる。 According to a twelfth aspect of the present invention, there is provided a control method for a moving body according to the above control method, wherein in the step of determining the straight traveling speed, if the turning speed is outside the predetermined range, the mobile body is centrifuged. The straight traveling speed is determined so that the force is constant. Thereby, even when the movement speed is increased, the movement can be performed smoothly.
本発明の第13の態様にかかる移動体の制御方法は、上記の制御方法において、所定のタスクを実行するステップをさらに備え、前記タスクを実行する前後の質量変化に応じて前記移動体の質量を変化させた状態で、前記運動エネルギーを一定とするよう前記直進速度を決定するものである。これにより、質量が変化させた場合であっても、スムーズに移動させることができる。 A control method for a moving body according to a thirteenth aspect of the present invention further includes a step of executing a predetermined task in the control method described above, wherein the mass of the mobile body is changed according to a mass change before and after executing the task. The straight-advancing speed is determined so that the kinetic energy is constant in a state in which is changed. Thereby, even if it is a case where mass is changed, it can be moved smoothly.
本発明の第14の態様にかかる移動体の制御方法は、上記の制御方法において、前記タスクを実行した後の状態と実行する前の状態とで、前記運動エネルギーが異なる値で一定になるよう前記直進速度を決定するものである。これにより、よりスムーズに移動させることができる。 A mobile body control method according to a fourteenth aspect of the present invention is the above control method, wherein the kinetic energy is constant at different values between a state after the task is executed and a state before the task is executed. The straight speed is determined. Thereby, it can be moved more smoothly.
本発明によれば、スムーズに移動することができる移動体、及びその制御方法を提供することができる。 ADVANTAGE OF THE INVENTION According to this invention, the mobile body which can move smoothly and its control method can be provided.
発明の実施の形態1.
本実施の形態にかかる移動体について図1を用いて説明する。図1(a)は、本実施の形態にかかる移動体の構成を模式的に示す上面図であり、図1(b)は本実施の形態にかかる移動体の構成を模式的に示す側面図である。10は移動体、11は車体、12は駆動輪、13は受動輪、14は駆動機構、15は制御部である。本実施の形態では、移動体10を対向2輪型の車輪移動ロボットとして説明する。
A moving body according to the present embodiment will be described with reference to FIG. FIG. 1A is a top view schematically showing the configuration of the moving body according to the present embodiment, and FIG. 1B is a side view schematically showing the configuration of the moving body according to the present embodiment. It is.
移動体10は、非ホロノミックな2輪型自律移動体であり、誤差フィードバックを用いて目標経路に追従している。すなわち、移動体の現在の位置姿勢と、目標経路との間の位置姿勢誤差に基づいて、フィードバック制御がなされる。ここで、位置姿勢とは、位置、及び姿勢(方位)を示すものである。すなわち、移動体10の位置が座標に対応し、姿勢が進行方向に対応している。従って、移動体10の進行方向に応じて、姿勢が変化する。なお、姿勢については、横方向(左右方向)のみを考えてもよく、鉛直方向に対する傾斜度合いを含めてもよい。移動体10は、非ホロノミックの移動ロボットであるため、力学系の拘束条件に速度を含み、時間に対して可積分ではない。車体11の側面下方には、駆動輪12が設けられている。駆動輪12は、車体11の対向する側面にそれぞれ設けられている。車体11の前方中央部には、キャスタ等の受動輪13が設けられている。2つの駆動輪12は、モータ等を有する駆動機構14によって、独立して回転する。すなわち、駆動機構14が左右の駆動輪12を回転させることによって、移動体10が移動する。2つの駆動輪12は、それぞれ異なる駆動機構14に接続されている。したがって、駆動輪12を異なる回転方向、回転速度で回転させることにより、移動体10の移動方向、移動速度を制御することができる。具体的には、駆動輪12を同じ方向、異なる速度で回転させることにより、移動体10の移動方向が変化しながら、移動する。すなわち、2つの駆動輪12の距離、及び回転速度の差に応じて、移動体10がカーブしながら移動する。また、駆動輪12を反対方向に同じ速度で回転させることによって、移動体10がその場で旋回する。さらに、駆動輪12を同じ方向、同じ速度で回転させることにより、移動体10が直進移動する。
The moving
制御部15は、移動体10が目標経路に追従するよう、駆動機構14を制御する。例えば、制御部15は、移動体10の現在位置姿勢、及び目標位置姿勢に基づいて目標経路を計画する。そして、制御部15は、移動体10が目標経路に追従して移動するよう、駆動機構14をフィードバック制御、あるいはフィードフォワード制御を行う。制御部15は、例えば、駆動機構14のモータ又は駆動輪12に取り付けたロータリーエンコーダや、車体11に取り付けたジャイロセンサや、レーザレンジファインダ等からの測定値に基づいて現在の位置を推定する。そして、制御部15は、推定位置に基づいてフィードバック制御を行う。これにより、駆動機構14のモータが適切な回転角度で回転する。そして、駆動輪12が回転して、移動体10が目標経路に追従して移動する。
The
本発明の実施の形態にかかる移動体の制御部15は、例えば、車体11に搭載された演算処理装置により実現される。この演算処理装置は、例えば、中央処理装置(CPU)、ROM、RAM、ハードディスク等の記憶装置、入出力インターフェース等を備えている。ROM等の記憶装置には、オペレーティングシステムと協働してCPU等に命令を与え、アプリケーションプログラムを記録することができ、RAMにロードされることによって実行される。このアプリケーションプログラムは、本発明にかかる制御方法を実現する特有のプログラムを含む。例えば、目標経路を計画するプログラム、センサからの測定値に基づいて位置姿勢を推定するプログラム、現在の位置姿勢から旋回速度(移動体10の旋回時の角速度)及び直進速度を演算するプログラム、旋回速度及び直進速度から駆動輪12の回転速度を計算するプログラムなどを有している。制御部15による追従制御は、中央処理装置がアプリケーションプログラムをRAM上に展開した上で当該アプリケーションプログラムに従った処理を記憶装置に格納されたデータを読み出し、また格納を行なうことにより、実行される。
The
制御部15の構成について図3を用いて説明する。図3は、本実施の形態かかる移動体10に用いられる制御部15の構成を示すブロック図である。制御部15には、駆動制御部21と、経路生成部22と、現在位置姿勢推定部24と、旋回速度決定部26と、設定値記憶部27と、直進速度決定部28とが設けられている。
The configuration of the
目標となる位置姿勢が設定されると、経路生成部22は、移動体10の初期位置姿勢と目標位置姿勢とに基づいて、目標経路を生成する。すなわち、初期の位置姿勢から目標位置までの目標経路を計画する。例えば、移動体10の目標軌道となる目標経路は、しばしば座標の集合として与えられる。座標は、例えば、グリッド状に離散化されたグリッド座標で表現される。グリッド座標を利用するメリットは、最短経路探索を容易に実行できる点や、確実に目的地に到達できる経路を得ることができる点にある。しかしながら、グリッド座標において表現される目標経路は直線と直線が接続された不連続な経路であるため、移動体10がこのような経路を追従することは難しい。そのため、与えられた離散的な経路座標から、移動体10の追従制御に利用可能な滑らかな目標経路を、例えば、重み付き移動平均を利用して補間曲線を求めることにより作成することができる。このように、与えられたマップに対してグリッドを形成することによって、容易に目標経路を計画することができる。
When the target position and orientation are set, the
具体的には、例えば、グリッドマップをA*探索(エースター探索)で探索した経路を用いることができる。さらに、グリッドを結んだ線分集合を滑らかにする演算を行なっている。もちろん、上記以外の方法によって目標経路を計画してもよい。例えば、最良優先探索や山登り探索などの探索技法を用いることも可能である。 Specifically, for example, a route obtained by searching the grid map by A * search (Aester search) can be used. Furthermore, the calculation which smoothes the line segment set which connected the grid is performed. Of course, you may plan a target path | route by methods other than the above. For example, a search technique such as a best priority search or a hill-climbing search can be used.
現在位置姿勢の推定に使用されるセンサ18は、移動体10に取り付けられている。したがって、センサ18の測定値に基づいて、現在の位置姿勢が推定される。センサ18としては、例えば、駆動機構14のモータ又は駆動輪12に取り付けたロータリーエンコーダや、車体11に取り付けたジャイロセンサ等がある。さらに、環境認識センサとしてレーザレンジファインダを用いることができる。センサ18は、所定の時間間隔で測定値を制御部15の現在位置姿勢推定部24に出力する。
A
現在位置姿勢推定部24は、センサ18の測定値に基づいて移動体10の現在の位置、及び姿勢を推定する。例えば、現在位置の推定には、内界センサであるロータリーエンコーダを用いることができる。ロータリーエンコーダにより左右のモータ、あるいは駆動輪12の回転数を測定する。そして、制御部15は、測定された回転数に基づいて駆動輪12の移動量を算出する。初期の位置姿勢からの移動軌跡を求めることによって、現在の推定位置姿勢を算出することができる。さらに、本実施の形態では、環境認識センサとしてレーザレンジファインダを使用している。そして、現在位置姿勢推定部24は、パーティクルフィルタを利用した自己位置推定を行なっている。なお、姿勢の推定については、ジャイロセンサなどを利用することも可能である。位置推定については、上記の方法に限られるものではない。例えば、加速度センサ、カメラなどのセンサを用いたものを使用する。もちろん、複数の種類のセンサを用いて、位置姿勢を推定してもよい。ここで、現在位置姿勢推定部24によって推定された位置姿勢を(x,y,θ)とする。
The current position /
制御位置姿勢算出部25では、目標経路に対する現在位置姿勢からの最寄点を算出する。そして、目標経路上の最寄点の位置を制御位置、最寄点における目標経路の方向を制御姿勢として算出する。すなわち、制御位置姿勢算出部25には、現在位置姿勢推定部24で算出された現在の位置姿勢(x,y,θ)と、経路生成部22で生成された目標経路とが入力される。そして、制御位置姿勢算出部25は、現在の位置姿勢と目標経路とに基づいて、目標経路に対する現在位置からの最寄点を探索する。この最寄点における目標経路の位置姿勢が目標位置姿勢(X,Y,Θ)となる。このように、目標位置姿勢、及び現在位置姿勢は、3つの要素を有するベクトルで示される。最寄点の探索処理については、種々の方法を用いることができるが、本例では、分割法が用いられている。なお、最寄点の算出方法については、後述する。
The control position /
旋回速度決定部26は、目標位置姿勢と現在位置姿勢とに基づいて、旋回速度(旋回角速度)を決定する。この旋回速度で移動体10が移動するよう、後述する駆動制御部21が駆動機構14を制御する。ここで、図3に示すような、移動体ロボット座標系について考える。すなわち、移動体10の位置を原点、移動体10の進行方向をx軸とする座標系について考える。また、移動体10の移動平面において、x軸と垂直な軸をy軸となる。この座標系における目標位置姿勢を図3に示すように(Δx,Δy,Δθ)とする。ここで(Δx,Δy)は、目標経路の最寄点に対する現在位置の位置誤差となる。また、Δθは、目標経路上の最寄点における姿勢と、現在姿勢との間の姿勢誤差となる。なお、図3の目標姿勢ベクトルが、制御位置姿勢、すなわち最寄点での位置姿勢を示している。
The turning
ここで、適当なゲインKθ、Ky、Dθ、Dyを設定すると、旋回速度ωは以下の数式5により算出することができる。 Here, when appropriate gains K θ , K y , D θ , and D y are set, the turning speed ω can be calculated by Equation 5 below.
なお、ゲインKθ、Ky、Dθ、Dyは、設定値記憶部27に記憶されている。設定値記憶部27は、例えば、RAMなどの記憶装置であり、設定された値を格納する。したがって、旋回速度決定部26は、設定値記憶部27に記憶されたゲインKθ、Ky、Dθ、Dyを参照して、位置姿勢誤差に応じた旋回速度を算出している。さらにゲインKθ、Ky、Dθ、Dyは条件に応じて可変としてもよい。このように旋回速度決定部26は、目標位置姿勢と現在位置姿勢との誤差に基づいて、旋回速度ωを決定する。このように、旋回速度決定部26は、現在位置姿勢推定部24で推定された現在位置姿勢と目標経路の形状とに基づいて旋回速度ωを決定する。具体的には、制御位置姿勢算出部25が、現在位置姿勢に対する目標経路の最寄点を目標経路の形状に基づき算出する。そして、制御位置姿勢算出部25は、最寄点の座標、及び最寄点における目標経路の方向を制御位置姿勢として算出する。そして、旋回速度決定部26が、フィードバック制御によって、制御位置姿勢と現在位置姿勢との間の位置姿勢誤差に応じて旋回速度ωを決定する。
The gains K θ , K y , D θ , and D y are stored in the set
直進速度決定部28は、旋回速度決定部26で決定された旋回速度ωに基づいて、直進速度を決定する。ここで、移動体の質量をm、移動体の慣性モーメントをI、移動体の直進速度をvとすると、直進速度決定部28は以下の数式6を満たすように直進速度を算出する。
The straight
ここで、数式6のCは任意の定数である。数式6の左辺は、直進運動による運動エネルギーmv2/2と、回転運動による運動エネルギーIω2/2との和である。換言すると数式6の左辺は、移動体10の運動エネルギーを示している。直進速度決定部28は、移動体10の運動エネルギーが定数Cで一定になるよう、直進速度vに制限を加えている。このように、運動エネルギー保存の法則を満たすよう、直進速度vを決定する。数式6により、直進速度vは数式7で示されることが分る。
Here, C in Expression 6 is an arbitrary constant. Left side of Equation 6, the kinetic energy mv 2/2 by the linear motion, the sum of the kinetic energy I [omega] 2/2 by the rotational motion. In other words, the left side of Equation 6 indicates the kinetic energy of the moving
このように、旋回速度ωに応じて直進速度vを決定することができる。ここで、移動体10の質量m、及び慣性モーメントIについては、移動体10の設計時のCADデータから算出することができる。すなわち、移動体10を構成する各部品の質量、及び配置に基づいて、移動体10の質量m、及び慣性モーメントIが算出される。移動体10の質量m、及び慣性モーメントIは、設定値記憶部27に記憶されている。さらに、数式6の定数Cについても設定値記憶部27に記憶されている。定数Cは、移動体10が移動時にスリップ、及び横滑りしない値に設定される。また、条件に応じて定数Cを可変とすることもできる。
Thus, the straight traveling speed v can be determined according to the turning speed ω. Here, the mass m and the moment of inertia I of the moving
このように、直進速度決定部28は、旋回速度決定部26で決定された旋回速度ωと、各設定値(質量m、慣性モーメントI、及び、定数C)に基づいて直進速度vを算出する。ここで、旋回速度ωと直進速度vの関係について図4を用いて説明する。図4は、横軸を旋回速度ω、縦軸を直進速度vとしたときのグラフである。すなわち、図4は数式7を示すグラフである。なお、数式7に示されるように、直進速度vと旋回速度ωの関係を示すグラフは半分の楕円形になる。
In this way, the straight traveling
数式6を満たすよう制御することにより、旋回速度ωが変化すると、直進速度vが緩やかに変化する。加速度の急激な変化を防ぐことができる。このように、直進速度決定部28は、運動エネルギーが定数Cで一定となるよう、直進速度v、及び旋回速度ωを決定している。すなわち、運動エネルギー保存の法則を満たすよう移動体10を移動させている。これにより、旋回速度ωが変化したときに、加速度が不連続になるのを防ぐことができる。したがって、駆動機構14のモータの回転速度が急激に変化するのを防止でき、移動体10を滑らかに移動させることができる。従って、エネルギー効率の改善も図ることができる。
By controlling to satisfy Expression 6, when the turning speed ω changes, the straight traveling speed v changes gently. A sudden change in acceleration can be prevented. As described above, the straight traveling
駆動制御部21は、駆動輪12を駆動するための駆動機構14を制御する。具体的には、旋回速度決定部26で決定された旋回速度ω、及び直進速度決定部28で決定された直進速度vに基づいて車輪回転速度を算出する。駆動制御部21は、例えば、逆運動学(I.K.)を解くことによって、左右両輪の回転速度を算出している。すなわち、駆動制御部21は、移動体10の旋回速度、及び直進速度から2つの駆動輪12の回転速度をそれぞれ算出する。そして、左右の駆動輪12の回転速度から、駆動機構14に設けられたモータの回転数、回転方向の制御を行う。すなわち、駆動制御部21は、左右の駆動機構14にそれぞれ駆動信号を出力する。これにより、移動体10が旋回速度決定部26で決定された旋回速度ω、及び直進速度決定部で決定された直進速度vで移動する。さらに、移動体10は目標経路に追従するよう移動する。このようにして、駆動制御部21は、現在の位置姿勢に基づいてフィードバック制御を行う。
The
制御部15には、例えば、位置姿勢推定プログラム、経路生成プログラム、旋回速度算出プログラム、直進速度算出プログラム、及び車輪角度算出プログラム、駆動制御プログラム等が記憶されている。そして、これらのプログラムを実行することにより、上記の処理が行われる。
The
次に、本実施の形態にかかる移動体10の制御方法について、図5を用いて説明する。図5は、本実施の形態にかかる移動体10の制御方法を示すフローチャートである。まず、経路生成部22が目標経路を生成する(ステップS101)。すなわち、目標位置姿勢までの目標経路が生成される。
Next, a method for controlling the moving
そして、移動体10の現在位置姿勢を取得する(ステップS102)。ここでは、センサ18からの測定値に基づいて、現在位置姿勢推定部24が移動体10の現在の位置姿勢を算出する。これにより、現在位置姿勢が推定される。
Then, the current position and orientation of the moving
さらに、制御位置姿勢算出部25が、移動体10をフィードバック制御するための制御位置姿勢を生成する(ステップS103)。すなわち、制御位置姿勢算出部25が、目標経路における現在位置姿勢推定部24で推定された現在位置姿勢からの最寄点を算出する。そして、この最寄点の位置、及び最寄点における目標経路の方向を制御位置姿勢として生成する。
Further, the control position /
ここで、図6、図7、及び図8を参照して、目標経路上の最寄点の算出方法について説明する。図6は、最寄点の探索処理を示すフローチャートである図7、及び図8は、最寄点の探索処理を説明するための説明図である。 Here, a method of calculating the nearest point on the target route will be described with reference to FIGS. 6, 7, and 8. FIG. 6 is a flowchart showing the nearest point search process, and FIGS. 7 and 8 are explanatory diagrams for explaining the nearest point search process.
図6に最寄点の探索処理の詳細を示す。図7に示すように、移動体10が点Aにいるときに目標経路100上の最寄点を算出する場合には、節点nの座標と点A間の距離を求める(S201)。このようにして求めた距離が過去に算出した点Aといずれかの節点間の距離の中で最小の距離かどうかを判定する(S202)。判定の結果、最小の距離であると判定された場合には、その節点nを記憶する(S203)。判定の結果、最小の距離でないと判定された場合や、ステップS203により節点nを記憶した場合には、全ての節点を調べたかどうかを判定する(S204)。
FIG. 6 shows details of the nearest point search process. As shown in FIG. 7, when the nearest point on the
判定の結果、全ての節点を調べていないと判定された場合には、nに1を加えた節点についてさらにステップS201の処理を実行する。また、判定の結果、全ての節点を調べたと判定された場合には、距離が最小となる節点(最小節点)に対して隣接する二つの節点(隣接節点)のうち、最小節点との間の距離が小さい方の隣接節点を選択し、選択された隣接節点と最小節点間を探索範囲とする(S206)。そして、図8に示されるように、探索範囲とされた節点間の中点を始点P0とし、探索範囲w1を節点間距離Lの1/2とする(S207)。図8に示された例では、始点P0から(1/2)w1、即ち(1/4)Lだけn点側に延長した点PL1から、始点P0から(1/2)w1、即ち(1/4)Lだけn+1点側に延長した点PR1までを探索範囲w1としている。そして、始点P0について(即ち、nがP0に場合について)、n−(1/2)w1の節点PL1と、n+(1/2)w1の節点PR1のいずれが点Aから近いかどうかが判定される(S208)。判定の結果、近い方の節点を近傍点Pとし、さらに近傍点Pからw1の半分のw2を探索範囲として同様に点Aから近いかどうかが判定され、同様の処理を繰り返す(S209)。このような処理の結果、収束した場合には、収束した結果、最も点Aから近いと判定された近傍点Pが最寄点と特定され、その座標が求められる。このようにして、目標経路上の最寄点の位置を探索する。そして、最寄点の座標、及び最寄点における目標経路100の方向を制御位置姿勢として記憶させる。
As a result of the determination, if it is determined that not all the nodes have been examined, the process of step S201 is further executed for the node obtained by adding 1 to n. As a result of the determination, if it is determined that all nodes have been examined, of the two nodes (adjacent nodes) adjacent to the node having the smallest distance (minimum node) between the minimum nodes An adjacent node having a smaller distance is selected, and a search range is set between the selected adjacent node and the minimum node (S206). Then, as illustrated in FIG. 8, the midpoint between which is a search range node to the start point P 0, the search range w1 be the half nodal distance L (S207). In the example shown in FIG. 8, from the start point P 0 to (1/2) w1, that is, from the point P L1 extended to the n point side by (1/4) L, from the start point P 0 to (1/2) w1, That is, the range up to the point PR1 extended to the (n + 1) point side by (1/4) L is set as the search range w1. Then, the start point P 0 (ie, n is the case P 0), and the node P L1 of n- (1/2) w1, n + (1/2) which of w1 node P R1 closer to the point A Is determined (S208). As a result of the determination, it is determined whether the closest node is the vicinity point P, and further whether it is close to the point A using w2 that is half of w1 from the vicinity point P as a search range, and the same processing is repeated (S209). As a result of such processing, when convergence has occurred, the neighboring point P determined to be closest to the point A as a result of convergence is identified as the closest point, and its coordinates are obtained. In this way, the position of the nearest point on the target route is searched. Then, the coordinates of the nearest point and the direction of the
次に、旋回速度決定部26が制御位置姿勢に基づいて移動体10の旋回速度ωを生成する(ステップS104)。数式5に従って、位置姿勢誤差から旋回速度ωを算出する。これにより、現在位置姿勢と目標経路とに応じた旋回速度ωを算出される。したがって、移動体10は目標経路に近づくようフィードバック制御される。すなわち、この旋回速度ωにより移動体10の姿勢が変化する。そして、移動体10が目標経路の方向に向かって移動する。なお、旋回速度ωを算出するとき、設定値記憶部27に記憶されているゲインが参照される。
Next, the turning
直進速度決定部28は、旋回速度ωに基づいて直進速度vを生成する(ステップS105)。移動体10はこの直進速度v、及び旋回速度ωで移動するようフィードバック制御される。本実施の形態は、常に移動体10の運動エネルギーが定数Cで保たれるように直進速度vが決定される。すなわち、数式7によって、旋回速度ωに応じた直進速度vが算出される。なお、直進速度vを算出するとき、設定値記憶部27に記憶されている質量m、慣性モーメントI、及び定数Cが参照される。このように、直進速度決定部28は、現在位置姿勢、及び目標経路に応じて、直進速度vを決定する。すなわち、駆動制御部21は、現在位置姿勢と目標経路との間の位置姿勢誤差に基づいて、移動体10の旋回速度ω及び直進速度vを決定する。
The straight
そして、駆動制御部21が旋回速度ω、及び直進速度vから左右の駆動輪12の回転速度を算出する(ステップS6)。すなわち、逆運動学を解くことにより、左右の駆動輪12による速度Vr、Vlがそれぞれ算出される。そして、左右の駆動輪12の速度Vr、Vlと、駆動輪12の半径等に応じて、回転速度を算出する。左右の駆動輪12がそれぞれ算出された回転速度で回転するよう、駆動制御部21は、駆動機構14に設けられたモータを駆動する。したがって、移動体10の直進速度vに運動エネルギーによる制限が加わる。これにより、駆動機構14が駆動され、旋回速度ω、直進速度vで移動体10が移動する(ステップS107)。
Then, the
さらに、上記の処理を繰り返し行い、移動体10を制御する。すなわち、現在位置姿勢の推定(ステップS102)、制御位置姿勢の算出(ステップS103)、旋回速度の決定(ステップS104)、直進速度の決定(ステップS105)、車輪回転速度決定(ステップS106)、及びロボットの移動(ステップS107)を繰り返す。このように、センサ18の測定値に基づく位置姿勢推定を繰り返し行なう。そして、現在位置姿勢、及び目標経路上の最寄点に応じて左右の駆動輪12の回転速度を決定する。上記のフィードバックを繰り返し行い、移動体10の移動を制御する。これにより、移動体10が目標経路に追従するよう、フィードバック制御される。
Further, the above process is repeated to control the moving
このように、本実施の形態では、旋回速度ωを決定した後、この旋回速度ωに基づいて直進速度vを算出している。さらに、直進速度vには、運動エネルギーによる制限を加えている。すなわち、算出された旋回速度ωによらず運動エネルギーが定数Cで一定となるよう、直進速度vを算出している。これにより、従って、常に一定の運動エネルギーで移動体10を移動させることができるため、移動がスムーズになる。
Thus, in this embodiment, after determining the turning speed ω, the straight traveling speed v is calculated based on the turning speed ω. Further, the linear velocity v is limited by kinetic energy. That is, the straight traveling speed v is calculated so that the kinetic energy is constant at a constant C regardless of the calculated turning speed ω. Accordingly, the moving
発明の実施の形態2.
本実施の形態にかかる移動体10は、直進速度の決定の一部が実施の形態1と異なっている。直進速度の決定以外の構成、内容については、実施の形態1と同様であるため説明を省略する。本実施の形態にかかる移動体10は、直進速度vについて、運動エネルギーによる制限のみならず、遠心力による制限を加えている。本実施の形態にかかる移動体10の旋回速度ωと直進速度vとの関係について図9を用いて説明する。図9は、旋回速度ωと直進速度vとの関係を示すグラフである。なお、図9(a)は、遠心力による制限のみを考慮した場合の、直進速度vと旋回速度ωの関係を示すグラフである。図9(b)は、運動エネルギーによる制限のみを考慮した場合の、直進速度vと旋回速度ωの関係を示すグラフである。図9(c)は、本実施の形態にかかる移動体10の直進速度vと旋回速度ωの関係を示すグラフである。
The moving
本実施の形態では、旋回速度ωが一定の範囲内にある場合には、実施の形態1と同様に運動エネルギーによる制限を加える。すなわち、運動エネルギーが定数Cで一定になるように、直進速度vを算出する。一方、旋回速度ωが一定の範囲外にある場合には、遠心力による制限を加える。 In the present embodiment, when the turning speed ω is within a certain range, a limitation by kinetic energy is added as in the first embodiment. That is, the straight traveling speed v is calculated so that the kinetic energy is constant at a constant C. On the other hand, when the turning speed ω is out of a certain range, a restriction by centrifugal force is added.
ここで、遠心力による制限を加えた場合の、直進速度vの算出方法について説明する。移動体10に加わる遠心力は、f=mvωとして示される。曲率κは、旋回速度ωより算出することができる。また、mは設定値記憶部27に記憶されている値を用いることができる。
Here, a method of calculating the straight traveling speed v when a limitation due to centrifugal force is applied will be described. The centrifugal force applied to the moving
そして、mvω≦fmaxとして遠心力がしきい値以内となるように設定する。なお、遠心力の最大値fmaxは、例えば、移動体10が遠心力により、スリップあるいは横滑りしないように設定される。ここで、遠心力の最大値fmaxは設定値記憶部27に記憶させておく。直進速度vに対する制限は、v≦fmax/mωで与えられる。そして、直進速度vはv=min(v0,fmax/mω)で与えられる。ここで、v0は設定値記憶部27に予め設定されている値である。旋回速度ωに基づいて算出される直進速度がfmax/mωを超えてしまうときは、直進速度がv0となるよう制限を設けている。
Then, mvω ≦ f max is set so that the centrifugal force is within the threshold value. The maximum value f max of the centrifugal force is set so that the moving
遠心力による制限のみを考えると、直進速度vと旋回速度ωの関係は図9(a)に示すようになる。すなわち、旋回速度ωが0の近傍である時は、直進速度vがv0で一定であり、それ以外のときは、直進速度vと旋回速度ωが反比例の関係にある。一方、運動エネルギーによる制限が加わった場合、直進速度vと旋回速度ωの関係は実施の形態1と同様に図9(b)で示される。すなわち、数式6を満たすよう旋回速度ωから直進速度vを算出する。 Considering only the restriction due to the centrifugal force, the relationship between the straight traveling speed v and the turning speed ω is as shown in FIG. That is, when the turning speed ω is in the vicinity of 0, the straight traveling speed v is constant at v 0 , and in other cases, the straight traveling speed v and the turning speed ω are in an inversely proportional relationship. On the other hand, when the limitation by kinetic energy is added, the relationship between the straight traveling speed v and the turning speed ω is shown in FIG. 9B as in the first embodiment. That is, the straight traveling speed v is calculated from the turning speed ω so as to satisfy Expression 6.
本実施の形態では、運動エネルギーによる制限と、遠心力による制限を組み合わせている。そのため、直進速度vと旋回速度ωの関係は図9(c)に示すようになる。直進速度vは、運動エネルギーによる制限から算出した直進速度と、遠心力による制限から算出した直進速度のうちの小さい方となる。ここで、定数Cは、ω=0のときの直進速度がv0よりも小さくなるよう設定されている。したがって、旋回速度ωが0近傍となる範囲では、運動エネルギーが一定となるよう直進速度vが算出される。また、旋回速度ωの絶対値が0近傍から大きくなると、遠心力が一定となるよう直進速度vが算出される。すなわち、この範囲では、旋回速度ωと直進速度vとの関係が反比例となる。旋回速度ωの絶対値がさらに大きくなると、運動エネルギーが一定となるよう直進速度vが算出される。なお、旋回速度がある一定値となると、直進速度vが0となり、その場で旋回する。従って、本実施の形態にかかる移動体10の旋回速度ωと直進速度vとの関係は、図9(c)の太線で示される。
In the present embodiment, the limitation by kinetic energy and the limitation by centrifugal force are combined. Therefore, the relationship between the straight traveling speed v and the turning speed ω is as shown in FIG. The straight traveling speed v is the smaller of the straight traveling speed calculated from the restriction by kinetic energy and the straight traveling speed calculated from the restriction by centrifugal force. Here, the constant C is set so that the straight traveling speed when ω = 0 is smaller than v 0 . Therefore, in a range where the turning speed ω is close to 0, the straight traveling speed v is calculated so that the kinetic energy is constant. Further, when the absolute value of the turning speed ω increases from near 0, the straight traveling speed v is calculated so that the centrifugal force becomes constant. That is, in this range, the relationship between the turning speed ω and the straight traveling speed v is inversely proportional. When the absolute value of the turning speed ω is further increased, the straight traveling speed v is calculated so that the kinetic energy becomes constant. When the turning speed reaches a certain value, the straight traveling speed v becomes 0, and the vehicle turns on the spot. Therefore, the relationship between the turning speed ω and the straight traveling speed v of the moving
本実施の形態では、旋回速度ωが一定の範囲内にある場合、運動エネルギーが一定となるよう旋回速度ωから直進速度vを算出する。また、旋回速度ωが一定の範囲外にある場合、遠心力が一定となるよう旋回速度ωから直進速度vを算出する。遠心力f=mωvであるため、旋回速度ωと直進速度vの関係は反比例となる。換言すると、直進速度決定部28は、旋回速度ωの値に応じて、運動エネルギーによる制限、又は遠心力による制限の一方を選択する。そして、選択した制限に応じて直進速度vを算出する。上述のように、本実施の形態では、一定の範囲内で、運動エネルギーが一定となるよう旋回速度ωから直進速度vを算出する。一方、旋回速度ωが一定の範囲外のときは、遠心力fが一定となるよう、旋回速度ωから直進速度vを算出する。なお、旋回速度ωが一定の範囲外にあるとき、遠心力以外の制限によって、直進速度vを決定してもよい。
In the present embodiment, when the turning speed ω is within a certain range, the straight traveling speed v is calculated from the turning speed ω so that the kinetic energy becomes constant. Further, when the turning speed ω is out of a certain range, the straight traveling speed v is calculated from the turning speed ω so that the centrifugal force becomes constant. Since the centrifugal force f = mωv, the relationship between the turning speed ω and the straight traveling speed v is inversely proportional. In other words, the straight traveling
実施の形態1では旋回速度ωの全範囲で、運動エネルギーが一定となっていた。すなわち、決定した旋回速度ωによらず、運動エネルギーが一定となっている。一方、本実施の形態では、旋回速度ωが一定の範囲内にある場合のみ、運動エネルギーが一定となる。なお、本発明では、直進速度決定部28が、旋回速度決定部26で決定された旋回速度ωが少なくとも一部の範囲内になった場合に、運動エネルギーが一定となるよう旋回速度ωから直進速度vを決定すればよい。さらに、実施の形態2では、旋回速度ωがその範囲外となった場合は、遠心力による制限を加える。すなわち、遠心力fを一定にするよう旋回速度ωから直進速度vを算出する。
In the first embodiment, the kinetic energy is constant over the entire range of the turning speed ω. That is, the kinetic energy is constant regardless of the determined turning speed ω. On the other hand, in the present embodiment, the kinetic energy is constant only when the turning speed ω is within a certain range. In the present invention, when the turning speed ω determined by the turning
本実施の形態では、移動体10の加速度の急激な変化を緩和することができる。したがって、移動体10を従来技術と比較してスムーズに移動させることができる。さらに、遠心力による制限が加わるため、横滑り、スリップを防止することができる。すなわち、定数C、及びv0を適切に設定することで、横滑り、スリップの発生を防ぐことができる。さらに、本実施の形態では、実施の形態1に比べて定数Cを大きくすることができ、高い直進速度vで移動させることが可能となる。
In the present embodiment, a rapid change in the acceleration of the moving
発明の実施の形態3.
本実施の形態にかかる移動体10について図10を用いて説明する。図10は、本実施の形態にかかる移動体10の構成を模式的に示す側面図である。本実施の形態にかかる移動体10の移動制御は、実施の形態1と基本的に同様である。したがって、実施の形態1と同様の構成、内容については、説明を省略する。本実施の形態にかかる移動体10は、物体を把持するタスクを行なうロボットである。
A moving
移動体10の車体11には、物体40を把持するためのハンド33が取り付けられている。このハンド33を閉じることにより、対象となる物体40が把持される。また、車体11には回転機構31を介してアーム32が取り付けられている。また、アーム32は直動アクチュエータを有しており、伸縮可能に設けられているそして、アーム32の先端にハンド33が設けられている。回転機構31は、アーム32を所定の角度だけ回転させることができる。
A
物体40を把持する場合、回転機構31、及びアーム32を駆動する。例えば、CCDカメラなどのカメラで物体40の位置を認識して、把持可能な位置にハンド33を移動させる。これにより、物体40を把持可能な位置にハンド33が移動する。そして、ハンド33を閉じて、物体40を把持する。物体40を把持した場合、移動体10の質量が変化する。
When the
ハンド33は力センサ35が設けられている。力センサ35は、ハンド33に加わる力を検出する。これにより、物体40の質量を測定することができる。そして、物体40の質量を加えて演算処理を行う。すなわち、移動体10本体の質量に対して、把持した物体40の質量を加えて、直進速度vを算出する。例えば、移動体10本体の質量をm1、測定された物体40の質量をm2とすると、移動体10の全体の質量m=m1+m2となる。この場合、物体を把持する前後で質量がm2だけ変化している。そして、設定値記憶部27に記憶されている質量mの値を書き換える。これこのmに基づいて、上記の数式7から直進速度vを算出する。すなわち、物体40の質量分だけ移動体10の質量を増加した状態の運動エネルギーから直進速度を決定すればよい。さらに、質量mだけではなく、慣性モーメントIを変えてもよい。すなわち、物体40の質量、及び把持位置から慣性モーメントIを算出してもよい。これにより、移動により適した直進速度を算出することができ、滑らかな移動が可能となる。
The
さらに、移動体10全体の質量が変化した場合、定数Cの値を変えてもよい。すなわち、設定値記憶部27に記憶されている定数Cの値を書き換える。これにより、物体40を把持する前後で、運動エネルギーが異なる値で一定になるよう直進速度vを決定することができる。これにより、質量mに対して好適な直進速度で移動させることができる。従って、物体40を把持した場合でも、安定して移動させることができる。通常、物体を保持して質量が増加した場合は、定数Cを増加させる。
Further, when the mass of the entire moving
さらに、ハンド33を広げて物体40の把持を開放した場合、元の質量に戻して、直進速度を決定することができる。すなわち、物体40の質量分だけ移動体10の質量を減らした状態の運動エネルギーから直進速度を決定すればよい。このように、質量測定器で測定された質量の変化に応じて移動体の質量を増減させる。そして、移動体10の質量を変化させた状態で、運動エネルギーを一定とするよう直進速度vを決定すればよい。これにより、適切な制御を行うことができる。もちろん、物体40の保持を開放した場合、定数Cを元の戻してもよい。すなわち、質量測定器で測定された質量に応じて、定数Cを変化させてもよい。
Furthermore, when the
本実施の形態では、上記のように、物体を保持した後、その物体の質量を測定している。そして、物体の質量を加えた上で、直進速度を決定している。これにより、よりスムーズに移動させることができる。さらに、物体の質量によって定数Cを変えれば、より適切な制御が可能になる。また、実施の形態2と同様に遠心力による制限を加えてもよい。
In the present embodiment, as described above, after holding an object, the mass of the object is measured. Then, the straight traveling speed is determined after adding the mass of the object. Thereby, it can be moved more smoothly. Furthermore, if the constant C is changed according to the mass of the object, more appropriate control can be performed. Moreover, you may add the restriction | limiting by centrifugal force similarly to
なお、上記の説明では、物体40を把持することによって、移動体10の質量が変化したが、本実施の形態はこれに限るものではない。例えば、物体を吸着する機構などを設けてもよい。すなわち、物体を保持する保持機構が設けられていればよい。また、質量を測定する質量測定器は力センサに限られるものではない。すなわち、保持機構が保持した物体の質量を測定する質量測定器が設けられていればよい。そして、移動体10の質量に物体40の質量を加えて直進速度を算出することで、よりスムーズに移動させることができる。
In the above description, the mass of the moving
さらに、移動体10に所定のタスクを実行するタスク処理機構を設けた場合、タスクの処理前後で移動体10の質量が変化することがある。この場合、上記と同様に、タスクを実行する前後の質量変化に応じて移動体10の質量を変化させる。すなわち、タスクの実行によって質量が変化した分だけ、移動体10の質量mを増減させる。そして、質量を変化させた状態で運動エネルギーを一定とするよう直進速度を決定する。すなわち、増加した質量又は、減少した質量を用いて、数式6から直進速度を決定する。これにより、よりスムーズな移動が可能となる。もちろん、タスクの処理によって変化する質量を測定する質量測定器を設けても良い。なお、タスクの実行によって変化する質量が決まっている場合は、質量測定器を設けなくてもよい。すなわち、タスクの処理前後での移動体10の質量を記憶させ、適宜選択すればよい。さらに、タスクを実行した後の状態と実行する前の状態とで定数Cを変化させ、運動エネルギーが異なる値で一定になるよう直進速度を決定してもよい。
Further, when a task processing mechanism for executing a predetermined task is provided in the moving
その他の実施の形態.
実施の形態1、2では移動体10を2輪走行の移動体に適用したが、これに限らず、2輪よりも多い、例えば4輪走行のロボットにも適用でき、さらには、1輪走行のロボットや2足歩行・4足歩行のロボットにも適用できる。歩行ロボットの場合には歩幅を制御することにより移動方向を変えて目標経路を追従することができる。さらには、ロボットに限らず、2輪走行や4輪走行の車両であっても適用できる。
Other embodiments.
In the first and second embodiments, the moving
10 移動体、11 車両、12 駆動輪、13 従動輪、14 駆動機構、
15 制御部、18 センサ、21 駆動制御部、22 経路生成部、
24 現在位置姿勢推定部、25 制御位置姿勢算出部、26 旋回速度決定部、
27 設定値記憶部、28 直進速度決定部、31 回転機構
32 アーム、33 ハンド、35 質量センサ、40 物体
10 moving bodies, 11 vehicles, 12 driving wheels, 13 driven wheels, 14 driving mechanisms,
15 control unit, 18 sensor, 21 drive control unit, 22 path generation unit,
24 current position and orientation estimation unit, 25 control position and orientation calculation unit, 26 turning speed determination unit,
27 Setting Value Storage Unit, 28 Linear Speed Determination Unit, 31 Rotating
Claims (14)
前記制御部が、
前記移動体の位置姿勢を推定する位置姿勢推定部と、
前記位置姿勢推定部で推定された位置姿勢と前記目標経路の形状とに基づいて、旋回速度を決定する旋回速度決定部と、
前記移動体の運動エネルギーが一定となるよう、前記旋回速度決定部で決定された旋回速度から前記移動体の直進速度を決定する直進速度決定部と、
前記旋回速度決定部により決定された旋回速度と前記直進速度決定部により決定された直進速度とに基づいて、前記移動体の駆動機構を制御する駆動制御部と、を備える移動体。 A moving body having a control unit that performs feedback control so as to follow a target path,
The control unit is
A position and orientation estimation unit for estimating the position and orientation of the mobile body;
A turning speed determination unit that determines a turning speed based on the position and orientation estimated by the position and orientation estimation unit and the shape of the target path;
A rectilinear speed determining unit that determines the rectilinear speed of the moving body from the turning speed determined by the turning speed determining unit so that the kinetic energy of the moving body is constant;
A moving body comprising: a driving control unit that controls a driving mechanism of the moving body based on the turning speed determined by the turning speed determining unit and the straight traveling speed determined by the straight traveling speed determining unit.
数式1の左辺で示される移動体の運動エネルギーが定数Cで一定となる請求項1に記載の移動体。
The moving body according to claim 1, wherein the kinetic energy of the moving body indicated by the left side of Formula 1 is constant at a constant C.
前記タスクを実行する前後の質量変化に応じて前記移動体の質量を変化させた状態で、前記運動エネルギーを一定とするよう前記直進速度を決定する請求項1乃至5のいずれかに記載の移動体。 A task processing mechanism for executing a predetermined task;
The movement according to any one of claims 1 to 5, wherein the straight traveling speed is determined so that the kinetic energy is constant in a state in which the mass of the moving body is changed according to a mass change before and after the task is executed. body.
前記移動体の位置姿勢を推定するステップと、
前記推定された位置姿勢と前記目標経路とに基づいて、旋回速度を決定するステップと、
前記移動体の運動エネルギーが一定となるよう、前記決定された旋回速度から前記移動体の直進速度を決定するステップと、
前記決定された旋回速度と前記決定された直進速度とに基づいて、前記移動体の駆動機構を制御するステップと、を備える移動体の制御方法。 A control method for feedback control of movement of a moving body that follows a target route,
Estimating the position and orientation of the moving body;
Determining a turning speed based on the estimated position and orientation and the target route;
Determining a straight traveling speed of the moving body from the determined turning speed so that the kinetic energy of the moving body is constant;
And a step of controlling a driving mechanism of the moving body based on the determined turning speed and the determined straight traveling speed.
数式2の左辺で示される移動体の運動エネルギーが定数Cで一定となる請求項8に記載の移動体の制御方法。
The method for controlling a moving body according to claim 8, wherein the kinetic energy of the moving body indicated by the left side of Formula 2 is constant at a constant C.
前記タスクを実行する前後の質量変化に応じて前記移動体の質量を変化させた状態で、前記運動エネルギーを一定とするよう前記直進速度を決定する請求項8乃至12のいずれかに記載の移動体の制御方法。 The method further includes a step of performing a predetermined task,
The movement according to any one of claims 8 to 12, wherein the straight traveling speed is determined so that the kinetic energy is constant in a state where the mass of the moving body is changed in accordance with a mass change before and after the task is executed. How to control the body.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006079505A JP2007257200A (en) | 2006-03-22 | 2006-03-22 | Mobile body and control method for it |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006079505A JP2007257200A (en) | 2006-03-22 | 2006-03-22 | Mobile body and control method for it |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007257200A true JP2007257200A (en) | 2007-10-04 |
Family
ID=38631405
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006079505A Pending JP2007257200A (en) | 2006-03-22 | 2006-03-22 | Mobile body and control method for it |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007257200A (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009294104A (en) * | 2008-06-05 | 2009-12-17 | Nissan Motor Co Ltd | Position estimation system |
US8322468B2 (en) | 2009-02-18 | 2012-12-04 | Sony Corporation | Robot apparatus and method of controlling the same, and computer program |
JP2013101602A (en) * | 2011-10-17 | 2013-05-23 | Nsk Ltd | Traveling device |
CN108475059A (en) * | 2015-12-15 | 2018-08-31 | 高通股份有限公司 | Autonomous vision guided navigation |
WO2019042141A1 (en) * | 2017-08-29 | 2019-03-07 | 清华大学 | Centralised-distributed control system for four-wheel independently driven and independently steered electric vehicle |
JP2020135488A (en) * | 2019-02-20 | 2020-08-31 | 株式会社豊田中央研究所 | Mobile body control device and mobile body control program |
CN111723981A (en) * | 2020-06-09 | 2020-09-29 | 安徽意欧斯物流机器人有限公司 | Forklift AGV optimal path planning method based on multi-condition constraints |
CN113985868A (en) * | 2021-10-09 | 2022-01-28 | 北京科技大学 | Method for realizing hierarchical path tracking control of wheeled mobile robot |
-
2006
- 2006-03-22 JP JP2006079505A patent/JP2007257200A/en active Pending
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009294104A (en) * | 2008-06-05 | 2009-12-17 | Nissan Motor Co Ltd | Position estimation system |
US8322468B2 (en) | 2009-02-18 | 2012-12-04 | Sony Corporation | Robot apparatus and method of controlling the same, and computer program |
JP2013101602A (en) * | 2011-10-17 | 2013-05-23 | Nsk Ltd | Traveling device |
CN108475059A (en) * | 2015-12-15 | 2018-08-31 | 高通股份有限公司 | Autonomous vision guided navigation |
JP2019500693A (en) * | 2015-12-15 | 2019-01-10 | クゥアルコム・インコーポレイテッドQualcomm Incorporated | Autonomous visual navigation |
CN108475059B (en) * | 2015-12-15 | 2021-11-09 | 高通股份有限公司 | Autonomous visual navigation |
WO2019042141A1 (en) * | 2017-08-29 | 2019-03-07 | 清华大学 | Centralised-distributed control system for four-wheel independently driven and independently steered electric vehicle |
JP2020135488A (en) * | 2019-02-20 | 2020-08-31 | 株式会社豊田中央研究所 | Mobile body control device and mobile body control program |
CN111723981A (en) * | 2020-06-09 | 2020-09-29 | 安徽意欧斯物流机器人有限公司 | Forklift AGV optimal path planning method based on multi-condition constraints |
CN111723981B (en) * | 2020-06-09 | 2024-06-07 | 安歌智慧科技(上海)有限公司 | Multi-condition constraint-based forklift type AGV optimal path planning method |
CN113985868A (en) * | 2021-10-09 | 2022-01-28 | 北京科技大学 | Method for realizing hierarchical path tracking control of wheeled mobile robot |
CN113985868B (en) * | 2021-10-09 | 2023-08-08 | 北京科技大学 | Layered path tracking control implementation method for wheeled mobile robot |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10065306B2 (en) | Traveling robot, motion planning method for traveling robot, and storage medium storing program for traveling robot | |
JP4297123B2 (en) | Trajectory tracking control system and trajectory tracking control method for moving body | |
Lee et al. | Planning and control for collision-free cooperative aerial transportation | |
JP2007257200A (en) | Mobile body and control method for it | |
Haddadin et al. | Real-time reactive motion generation based on variable attractor dynamics and shaped velocities | |
Alonso-Mora et al. | Reciprocal collision avoidance for multiple car-like robots | |
JP2003241836A (en) | Control method and apparatus for free-running mobile unit | |
JP5837902B2 (en) | Autonomous traveling vehicle, autonomous traveling vehicle control system, and autonomous traveling vehicle control method | |
Indiveri et al. | High speed differential drive mobile robot path following control with bounded wheel speed commands | |
Phunopas et al. | Motion Improvement of Four-Wheeled Omnidirectional Mobile Robots for Indoor Terrain. | |
Huskic et al. | Path following control of skid-steered wheeled mobile robots at higher speeds on different terrain types | |
JP4577247B2 (en) | Mobile body and control method thereof | |
JP6468127B2 (en) | Omnidirectional moving body, control method and program thereof | |
Hu et al. | Optimal path planning for mobile manipulator based on manipulability and localizability | |
Han et al. | Robust optimal control of omni-directional mobile robot using model predictive control method | |
CN117204771A (en) | Self-propelled robot, control device, and control method | |
Vilca et al. | An overall control strategy based on target reaching for the navigation of an urban electric vehicle | |
Vidhyaprakash et al. | Positioning of two-Wheeled mobile robot to control wheelslip by using the wheel rotate planning technique | |
Klančar et al. | Combined stochastic-deterministic predictive control using local-minima free navigation | |
McNinch et al. | Application of a coordinated trajectory planning and real-time obstacle avoidance algorithm | |
CN116009558A (en) | Mobile robot path planning method combined with kinematic constraint | |
Nagata et al. | Model predictive obstacle avoidance control for omni-directional mobile robots based on fuzzy potential method | |
Guo et al. | Trajectory tracking of unicycle-type robots with constraints | |
Miah et al. | Universal dynamic tracking control law for mobile robot trajectory tracking | |
Künemund et al. | Fast and accurate trajectory generation for non-circular omnidirectional robots in industrial applications |