JP2010009370A - Traveling object control system and traveling object control method - Google Patents
Traveling object control system and traveling object control method Download PDFInfo
- Publication number
- JP2010009370A JP2010009370A JP2008168860A JP2008168860A JP2010009370A JP 2010009370 A JP2010009370 A JP 2010009370A JP 2008168860 A JP2008168860 A JP 2008168860A JP 2008168860 A JP2008168860 A JP 2008168860A JP 2010009370 A JP2010009370 A JP 2010009370A
- Authority
- JP
- Japan
- Prior art keywords
- moving body
- moving
- measurement
- legged robot
- particle
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims description 33
- 238000005259 measurement Methods 0.000 claims abstract description 96
- 230000005540 biological transmission Effects 0.000 claims abstract description 26
- 239000002245 particle Substances 0.000 claims description 102
- 238000012545 processing Methods 0.000 claims description 23
- 230000007246 mechanism Effects 0.000 claims description 19
- 238000004364 calculation method Methods 0.000 claims description 12
- 230000033001 locomotion Effects 0.000 description 38
- 238000004891 communication Methods 0.000 description 19
- 230000008569 process Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 14
- 238000001514 detection method Methods 0.000 description 8
- 238000012935 Averaging Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 239000003550 marker Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 238000012952 Resampling Methods 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000012447 hatching Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Landscapes
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Manipulator (AREA)
Abstract
Description
この発明は、ロボットなどの移動体の動作を制御する移動体制御システムおよび移動体制御方法に関し、特に各種センサを利用して移動体の正確な現在位置や向きを取得する移動体制御システムおよび移動体制御方法に関する。 The present invention relates to a moving body control system and a moving body control method for controlling the operation of a moving body such as a robot, and in particular, a moving body control system and a movement for acquiring an accurate current position and orientation of a moving body using various sensors. The present invention relates to a body control method.
人のように2足歩行を行うロボットや、動物のように4足歩行を行うロボットなど、各種のアルゴリズムに基づいて自律歩行を行う脚式移動ロボットが知られている。これらの脚式ロボットや脚式ロボットを制御するサーバ装置の中には、様々なセンサから得られるデータなどに基づいて、脚式ロボットの現在位置を取得するものがある。そして、脚式ロボットは、たとえば、ユーザから入力される目的地点と上記の現在位置とに基づいて移動する。 Legged mobile robots that perform autonomous walking based on various algorithms, such as robots that perform bipedal walking like humans and robots that perform quadrupedal walking like animals, are known. Some of these legged robots and server devices that control the legged robots acquire the current position of the legged robot based on data obtained from various sensors. The legged robot moves based on, for example, the destination point input from the user and the current position.
たとえば、特開2003−166824号公報(特許文献1)には、自己位置同定システムが開示されている。特開2003−166824号公報(特許文献1)によると、自己位置同定システムは、グリッドベース・マルコフ・ローカリゼーションに基づく大域的探索装置と、拡張型カルマン・フィルタを用いた局所的探索装置を併用する。大域的探索装置における観察結果が妥当であれば、局所的探索装置の観察結果の更新を許可するが、妥当でなければ局所的探索装置の観察結果の更新を行わない。また、局所的探索装置の観察結果が妥当であれば、局所的探索の状態を出力するが、妥当でなければ局所的探索装置を再初期化する。 For example, Japanese Patent Laying-Open No. 2003-166824 (Patent Document 1) discloses a self-position identification system. According to Japanese Patent Laying-Open No. 2003-166824 (Patent Document 1), the self-localization system uses a global search device based on grid-based Markov localization and a local search device using an extended Kalman filter. . If the observation result in the global search device is valid, updating of the observation result of the local search device is permitted, but if not, the observation result of the local search device is not updated. If the observation result of the local search device is valid, the local search state is output, but if not valid, the local search device is reinitialized.
また、特開2007−257226号公報(特許文献2)には、移動体の自己位置検出装置および位置検出システムが開示されている。特開2007−257226号公報(特許文献2)によると、自己位置検出装置は、位置特定用の複数のマークが不規則配置で貼着された天井を有する移動領域を移動するロボットに備えられ、天井に赤外線を照射する赤外線照射部と、照射された赤外線を反射したマークを撮像する天面カメラと、天井におけるマークの配置に関する情報と、移動領域の位置情報とを関連付けて記憶するマーク配置記憶部と、撮像されたマークを画像処理することによって、複数のマークを4つのマークにおける互いの配置で特徴付けられるグループとして検出するマーク検出部と、マーク配置記憶部を参照して、検出されたグループにおけるマークの配置と同一の配置のグループを探索し、対応付けられた位置情報をロボットの現在位置として特定する現在位置特定部を備える。 Japanese Patent Laying-Open No. 2007-257226 (Patent Document 2) discloses a self-position detection device and a position detection system for a moving body. According to Japanese Patent Application Laid-Open No. 2007-257226 (Patent Document 2), the self-position detection device is provided in a robot that moves in a moving area having a ceiling to which a plurality of marks for position identification are affixed in an irregular arrangement, Mark arrangement storage that stores an infrared irradiation unit that irradiates infrared rays on the ceiling, a top camera that captures a mark that reflects the irradiated infrared rays, information on the arrangement of marks on the ceiling, and positional information of moving areas , A mark detection unit that detects a plurality of marks as a group characterized by the arrangement of each of the four marks by performing image processing on the captured mark, and a mark arrangement storage unit. A group having the same arrangement as the mark arrangement in the group is searched, and the associated position information is identified as the current position of the robot. Position includes a specific section.
また、特開2008−71352号公報(特許文献3)には、複数のパーティクルを用いるパーティクルフィルタ基盤の移動ロボットの姿勢推定装置が開示されている。特開2008−71352号公報(特許文献3)によると、移動ロボットの姿勢変化量を感知するセンサと、以前パーティクルに感知された姿勢変化量を適用して、現在パーティクルの姿勢および加重値を求めるパーティクルフィルタ部と、求めた姿勢および加重値に進化アルゴリズムを適用して、現在パーティクルの姿勢および加重値を更新する進化適用部とを含む。 Japanese Unexamined Patent Application Publication No. 2008-71352 (Patent Document 3) discloses a posture estimation apparatus for a mobile robot based on a particle filter using a plurality of particles. According to Japanese Patent Laying-Open No. 2008-71352 (Patent Document 3), a sensor for detecting a posture change amount of a mobile robot and a posture change amount previously detected by a particle are applied to obtain the posture and weight value of the current particle. A particle filter unit, and an evolution application unit that applies an evolution algorithm to the obtained posture and weight and updates the posture and weight of the current particle.
また、特開2007−240295号公報(特許文献4)には、位置推定装置が開示されている。特開2007−240295号公報(特許文献4)によると、位置センサは、複数の人物の位置を検出する。IDセンサは、各人物が装着した光IDタグのID番号を検出する。位置尤度算出部は、検出された位置を用いて人物の位置の尤度を算出する。ID尤度算出部は、検出されたID番号を用いて光IDタグのID番号の尤度を算出する。位置推定部は、算出された人物の位置の尤度及びID番号の尤度を基に各人物の位置を推定する。 Japanese Patent Laying-Open No. 2007-240295 (Patent Document 4) discloses a position estimation device. According to Japanese Patent Laying-Open No. 2007-240295 (Patent Document 4), the position sensor detects the positions of a plurality of persons. The ID sensor detects the ID number of the optical ID tag attached to each person. The position likelihood calculating unit calculates the likelihood of the position of the person using the detected position. The ID likelihood calculating unit calculates the likelihood of the ID number of the optical ID tag using the detected ID number. The position estimation unit estimates the position of each person based on the calculated likelihood of the position of the person and the likelihood of the ID number.
また、特開2006−508345号公報(特許文献5)には、測距および測位方法および装置が開示されている。特開2006−508345号公報(特許文献5)によると、そのような方法および装置は、縦方向および横方向に延びる壁および通路を備えたビルディング内で利用される。基地局は、縦方向および横方向に向いたcosec2のパターンを有する向きのアンテナを備え、移動局の位置を決定するためにその距離を測定する。
しかしながら、脚部を有する歩行可能なロボットに関しては、エンコーダなどによって正確な移動量を取得することが困難である。すなわち、車輪によって走行するロボットと比較して、正確な現在位置を取得することが困難である。そのため、上記のように、従来のロボットの現在位置の測定においては、測定精度を向上させるために当該ロボットが移動するエリア内(エリア近隣)に多数のマーカを設置するなどしていた。より詳細には、ロボットやサーバ装置は、そのような多数のマーカとロボットとの相対位置関係を求めたうえで、当該相対位置関係に基づいてロボットの現在位置を取得するなどしていた。すなわち、従来のロボットにおいては、現在位置の測定精度を向上させるために、ロボットが移動するエリアに多数のマーカを設置する必要があった。 However, for a walkable robot having legs, it is difficult to obtain an accurate movement amount using an encoder or the like. That is, it is difficult to obtain an accurate current position as compared with a robot that travels by wheels. Therefore, as described above, in the measurement of the current position of the conventional robot, in order to improve the measurement accuracy, a large number of markers are installed in the area where the robot moves (in the vicinity of the area). More specifically, the robot or the server device obtains the current position of the robot based on the relative positional relationship after obtaining the relative positional relationship between such a large number of markers and the robot. That is, in the conventional robot, in order to improve the measurement accuracy of the current position, it is necessary to install a large number of markers in the area where the robot moves.
この発明は、かかる問題を解決するためになされたものであり、その目的は、移動体が移動するエリアにマーカを設置することなく、移動体の動作を制御するための移動体制御システムおよび移動体制御方法を提供することである。 The present invention has been made to solve such a problem, and an object of the present invention is to provide a moving body control system and a movement for controlling the operation of the moving body without placing a marker in an area where the moving body moves. It is to provide a body control method.
この発明のある局面に従うと、移動体の動作を制御するための移動体制御システムが提供される。移動体は、移動体を移動させる移動機構と、移動体の測定向きを取得する方位取得手段と、音波および電波の少なくともいずれかを発信する発信手段と、移動体周辺の障害物までの測定距離を取得する距離取得手段とを含む。移動体制御システムは、障害物の位置を示す地図データを格納する記憶手段と、音波および電波の少なくともいずれかに基づいて、移動体の測定位置を計算する第1の位置取得手段と、測定位置と測定向きと測定距離と地図データとに基づいて、移動体の現在位置を計算する第2の位置取得手段とを備える。 According to one aspect of the present invention, a moving body control system for controlling the operation of a moving body is provided. The moving body includes a moving mechanism for moving the moving body, an azimuth acquiring means for acquiring the measurement direction of the moving body, a transmitting means for transmitting at least one of sound waves and radio waves, and a measurement distance to an obstacle around the moving body. Distance acquisition means for acquiring. The mobile body control system includes a storage means for storing map data indicating the position of an obstacle, a first position acquisition means for calculating a measurement position of the mobile body based on at least one of sound waves and radio waves, a measurement position And a second position acquisition means for calculating the current position of the moving body based on the measurement direction, the measurement distance, and the map data.
好ましくは、第2の位置取得手段は、パーティクルフィルタを用いることによって、前回の現在位置にさらに基づいて、移動体の現在位置を計算する。 Preferably, the second position acquisition unit calculates the current position of the moving body based on the previous current position by using a particle filter.
好ましくは、第2の位置取得手段は、移動体の仮想位置を示す複数のパーティクルを取得するパーティクル取得手段と、測定位置と測定距離と地図データとに基づいて、パーティクルの各々に重みを設定する設定手段と、それぞれのパーティクルの仮想位置と重みとに基づいて、移動体の現在位置を計算する計算手段とを含む。 Preferably, the second position acquisition unit sets a weight for each of the particles based on the particle acquisition unit that acquires a plurality of particles indicating the virtual position of the moving body, the measurement position, the measurement distance, and the map data. Setting means and calculation means for calculating the current position of the moving object based on the virtual position and weight of each particle.
好ましくは、第2の位置取得手段は、移動体の仮想位置および仮想向きを示す複数のパーティクルを取得するパーティクル取得手段と、測定位置と測定距離と地図データと測定向きとに基づいて、各パーティクルに重みを設定する設定手段と、それぞれのパーティクルの仮想位置と重みとに基づいて移動体の現在位置を計算し、それぞれのパーティクルの仮想向きと重みとに基づいて移動体の現在向きを計算する計算手段とを含む。 Preferably, the second position acquisition unit is configured to acquire each particle based on the particle acquisition unit that acquires a plurality of particles indicating the virtual position and virtual direction of the moving body, the measurement position, the measurement distance, the map data, and the measurement direction. The current position of the moving object is calculated based on the setting means for setting the weight to each particle, the virtual position and the weight of each particle, and the current direction of the moving object is calculated based on the virtual direction and the weight of each particle. And calculating means.
好ましくは、移動体制御システムは、目的地点を受け付ける手段と、地図データを参照して、現在位置と目的地点とに基づき移動体の移動経路を生成する経路生成手段と、移動経路と現在位置とに基づいて、移動方向および歩数を含む動作命令を生成する動作命令生成手段とをさらに備える。移動機構は、動作命令に基づいて移動体を移動させることによって、移動体を移動経路に追従させる。 Preferably, the moving body control system includes a means for receiving the destination, a path generation means for generating a moving path of the moving body based on the current position and the destination, with reference to the map data, and the movement path and the current position. And an operation command generating means for generating an operation command including the moving direction and the number of steps. The moving mechanism causes the moving body to follow the moving path by moving the moving body based on the operation command.
好ましくは、移動体は、脚式ロボットである。移動機構は、歩行可能な複数の脚部を含む。 Preferably, the moving body is a legged robot. The moving mechanism includes a plurality of leg portions capable of walking.
この発明の別の局面に従うと、移動体に接続可能なサーバにおいて移動体の動作を制御するための移動体制御方法が提供される。移動体は、移動体を移動させる移動機構と、移動体の測定向きを取得する方位取得手段と、音波および電波の少なくともいずれかを発信する発信手段と、移動体周辺の障害物までの測定距離を取得する距離取得手段とを含む。サーバ装置は、障害物の位置を示す地図データを格納する記憶部と、演算処理部とを含む。移動体制御方法は、演算処理部が、音波および電波の少なくともいずれかに基づいて、移動体の測定位置を取得するステップと、演算処理部が、測定位置と測定向きと測定距離と地図データとに基づいて、移動体の現在位置を計算するステップと、演算処理部が、目的地点を受け付けるステップと、演算処理部が、地図データを参照して、現在位置と目的地点とに基づき移動体の移動経路を生成するステップと、演算処理部が、移動経路と現在位置とに基づいて、移動方向および歩数を含む動作命令を生成するステップと、移動機構が、動作命令に基づいて移動体を移動させることによって、移動体を移動経路に追従させるステップとを備える。 When another situation of this invention is followed, the mobile body control method for controlling operation | movement of a mobile body in the server which can be connected to a mobile body is provided. The moving body includes a moving mechanism for moving the moving body, an azimuth acquiring means for acquiring the measurement direction of the moving body, a transmitting means for transmitting at least one of sound waves and radio waves, and a measurement distance to an obstacle around the moving body. Distance acquisition means for acquiring. The server device includes a storage unit that stores map data indicating the position of an obstacle, and an arithmetic processing unit. The mobile body control method includes a step in which the arithmetic processing unit acquires a measurement position of the mobile body based on at least one of sound waves and radio waves, and the arithmetic processing unit includes a measurement position, a measurement direction, a measurement distance, and map data. And calculating the current position of the moving body, the step of the arithmetic processing unit receiving the destination point, and the arithmetic processing unit referring to the map data based on the current position and the destination point. A step of generating a moving route, a step of generating an operation command including a moving direction and the number of steps based on the moving route and the current position, and a moving mechanism moving the moving body based on the operating command. Causing the moving body to follow the moving path.
この発明によれば、移動体が移動するエリア内にマーカを設置することなく、比較的低性能のセンサで、移動体の現在位置を精度良く取得することができる移動体制御システムが提供される。また、脚式といった移動量の測定精度が期待できない機構を有する移動体であっても、目的地点まで精度よく移動可能な経路追従方法を提供する。 According to the present invention, there is provided a moving body control system that can accurately acquire the current position of a moving body with a relatively low performance sensor without installing a marker in an area in which the moving body moves. . Moreover, even if it is a mobile body which has the mechanism which cannot anticipate the measurement precision of the moving amount like a leg type, the path | route following method which can move to a destination point with high precision is provided.
この発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰り返さない。 Embodiments of the present invention will be described in detail with reference to the drawings. In addition, about the same or equivalent part in a figure, the same code | symbol is attached | subjected and the description is not repeated.
<脚式ロボットの制御システム1の全体構成>
図1は、この発明の実施の形態に従う脚式ロボット100の制御システム1の概略構成図である。
<Overall Configuration of Legged
FIG. 1 is a schematic configuration diagram of a
図1を参照して、脚式ロボット100の制御システム1は、家屋200内を移動する脚式ロボット100と、脚式ロボット100から発信される超音波信号を受信する超音波受信機41と、各種センサからデータを受け取って脚式ロボット100の現在位置を計算するサーバ装置50とを含む。本実施の形態に係る脚式ロボット100は、4本の脚部を有して、4足歩行を行う形態としているが、人型の2足歩行を行う形態であってもよい。
Referring to FIG. 1, a
ただし、本発明に係る現在位置や現在向きの取得方法は、脚式ロボットだけでなく、車輪を有する走行ロボットに対しても適用することができる。すなわち、ロボットが有する移動機構の形態にかかわらず、本発明に係る現在位置や現在向きを取得するための構成によって、より正確な現在位置や現在向きを取得することが可能となる。 However, the present position and current direction acquisition method according to the present invention can be applied not only to legged robots but also to traveling robots having wheels. That is, regardless of the form of the moving mechanism that the robot has, the current position and current direction can be acquired more accurately by the configuration for acquiring the current position and current direction according to the present invention.
サーバ装置50と脚式ロボット100とは、相互にデータ通信可能に構成される。そして、サーバ装置50は、LAN(Local Area Network)やWAN(Wide Area Network)などの専用回線や、インターネットや仮想プライベートネットワーク(Virtual Private Network)などの公衆回線を介して、外部から脚式ロボット100に対する動作命令などを受信する。
The
脚式ロボット100は、代表的に、外部からの移動命令に応じて自律移動(4足歩行)を行ったり、外部からの撮影命令に応じて脚式ロボット100の周囲を撮影したりすることができる。より詳細には、脚式ロボット100は、頭部101と胴部102と脚部103とを有している。頭部101と脚部103とは、それぞれアクチュエータ等の駆動機構を有しており、これらの駆動機構によって各種の動作が行われる。たとえば、アクチュエータを制御することによって、脚式ロボット100の4足歩行の制御を行うことができる。
The
<脚式ロボットの制御システム1の動作概要>
ここで、本実施の形態に係る脚式ロボット100の制御システム1の動作概要について説明する。図2は、この発明の実施の形態に従う脚式ロボット100の制御システム1における動作概要を示すシーケンス図である。図1および図2に示すように、まず、脚式ロボット100が移動する(ステップS002)。脚式ロボット100から超音波が発信される(ステップS004)。家屋200内に、あるいは脚式ロボット100が移動するエリア内に配置されている超音波受信機41が、脚式ロボット100からの超音波を受信する(ステップS006)。
<Outline of the operation of the legged
Here, an outline of the operation of the
超音波受信機41は、受信した超音波に基づいて脚式ロボット100の位置を計算する、すなわち脚式ロボット100の測定位置を取得する。超音波受信機41は取得した測定位置をサーバ装置50へと送信し(ステップS008)、サーバ装置50は測定位置を取得する(ステップS010)。ただし、超音波受信機41が、受信した超音波に関するデータをそのままサーバ装置50へと送信し、サーバ装置50がそのデータに基づいて脚式ロボット100の測定位置を計算してもよい。
The
脚式ロボット100は、後述する方位磁気センサなどを利用して測定方向(脚式ロボット100の測定向き、測定方位)を計算し、当該測定方向をサーバ装置50へと送信する(ステップS012)。サーバ装置50は、脚式ロボット100の測定方向を受信する(ステップS014)。
The
脚式ロボット100は、後述する測距センサなどを利用して障害物(壁や家具)までの距離を計算し、当該障害物までの距離をサーバ装置50へと送信する(ステップS016)。サーバ装置50は、障害物までの距離を受信する(ステップS018)。
The
そして、サーバ装置50は、パーティクルフィルタを利用して脚式ロボット100の現在位置を取得する(ステップS020)。より詳細には、サーバ装置50は、各パーティクルの仮想位置や仮想方向(仮想向きあるいは仮想方位)に対し、超音波による測定位置と方位磁気センサによる測定方向と測距センサによる障害物までの距離と基づいて、家屋200内の地図データ、あるいは脚式ロボット100が移動するエリア内の地図データを参照して、重み付けを行う。サーバ装置50は、それぞれのパーティクルの仮想位置および仮想方向と重みとに基づいて、現在位置と現在方向(現在向きあるいは現在方位)とを計算する。
Then, the
サーバ装置50は、取得した現在位置と現在方向とに基づいて、脚式ロボット100に動作命令(移動命令や停止命令や撮影命令など)を送信する(ステップS022)。脚式ロボット100は、サーバ装置50から動作命令を受信して(ステップS024)、当該動作命令に基づいて各種動作(移動など)を実行する(ステップS026)。
The
以下、このような機能を実現するための構成について詳述する。
<脚式ロボットの制御システム1のハードウェア構成>
図3は、この発明の実施の形態に従う脚式ロボット100の制御システム1のハードウェア構成を示す模式図である。
Hereinafter, a configuration for realizing such a function will be described in detail.
<Hardware configuration of legged
FIG. 3 is a schematic diagram showing a hardware configuration of
図3を参照して、脚式ロボット100は、無線通信によって無線LANアクセスポイント49と接続される。たとえば、脚式ロボット100は、内部の無線LAN子機119を利用して無線LANアクセスポイント49に接続される。無線LANアクセスポイント49は、LANなどを介してサーバ装置(外部PCサーバ)50と接続されている。
Referring to FIG. 3,
サーバ装置50は、LANなどを介して、マイクアレイ用環境サーバ20や、セキュリティサーバ30や、超音波用環境サーバ40や、図示しない端末装置などに接続されている。マイクアレイ用環境サーバ20は、たとえば、外部マイクロフォンアレイ21と接続されている。セキュリティサーバ30は、たとえば、家屋200内に設置される複数のセキュリティセンサ31に接続されている。超音波用環境サーバ40は、家屋内に設置される複数の超音波受信機41に接続されている。
The
サーバ装置50は、脚式ロボット100を管理(制御)するものであり、無線LANアクセスポイント49やLANなどを介して、脚式ロボット100に対する移動や撮影などの各種制御を行うと共に、脚式ロボット100に対して必要な情報を提供する。
The
以下、脚式ロボット100について説明する。
脚式ロボット100は、脚式ロボット100の各部に電力を供給するバッテリ電源112と、無線LANアクセスポイント49と通信を行う無線LAN子機119と、無線LAN子機119に接続されるLAN用ハブ118と、LAN用ハブ118に接続される画像送信ユニット113と、各種のセンサに接続されるセンサコントロールユニット121と、アクチュエータ108などに接続されるモータコントロールボード107とを含む。
Hereinafter, the
The
画像送信ユニット113は、脚式ロボット100外部に超音波を発信する超音波発信タグ114と、周囲の物体や人物を撮影するカメラ115と、音声を出力するスピーカ116と、周囲の音声を受け付けるマイク117とに接続される。カメラ115は、映像をデジタルデータとして取り込むことができるものであり、たとえば、カラーCCD(Charge-Coupled Device)カメラが使用される。
The
カメラ115は、サーバ装置50からの撮影命令に基づいて、脚式ロボット100の周囲(たとえば頭部101の前方など)を撮影する。カメラ115は、撮影した画像データを画像送信ユニット113に出力する。画像データは、無線LAN子機119を介して、サーバ装置50へと送信される。このカメラ115と、マイク117とは、いずれも脚式ロボット100の頭部101に配設される。そして、スピーカ116などは脚式ロボット100の胴部102(背中)に配設される。
The
センサコントロールユニット121は、脚式ロボット100の向きを測定するための方位センサ104と、人間の存在を検知する人感センサ105と、障害物(壁や家具等)までの距離を測定する測距センサ106と、壁や物体までの距離を検知するための赤外線測距センサ126と、床までの距離を検知するための赤外線測距センサ136とに接続される。測距センサ106,126,136は、たとえば三角測量のように、脚式ロボット100の周囲に赤外線を照射して、その反射光を受光することによって脚式ロボット100から障害物や床までの距離を測定する。
The
モータコントロールボード107は、脚式ロボット100の頭部101や脚部103を動かすための各種のアクチュエータ108や、脚式ロボット100の向きを測定するための3つの1軸ジャイロセンサ109や、脚式ロボット100の加速度を測定するための3軸加速度センサ110に接続される。ここで、アクチュエータ108は、バッテリ電源111にも接続される。
The
<サーバ装置50のハードウェア構成>
図4は、この発明の実施の形態に従うサーバ装置50のハードウェア構成を示す模式図である。
<Hardware Configuration of
FIG. 4 is a schematic diagram showing a hardware configuration of
図4を参照して、サーバ装置50は、オペレーティングシステムを含む各種プログラムを実行するCPU55と、CPU55でのプログラムの実行に必要なデータを一時的に記憶するメモリ56と、CPU55で実行されるプログラムを不揮発的に記憶する固定ディスク57とを備える。このようなプログラムは、CD−ROM(Compact Disk-Read Only Memory)駆動装置63またはフレキシブルディスク(FD:Flexible Disk)駆動装置61によって、それぞれCD−ROM64またはフレキシブルディスク62などから読取られる。
Referring to FIG. 4,
CPU55は、キーボード53やマウス54を介してユーザから操作要求を受け取るとともに、プログラムの実行によって生成されるテキストデータや画像データを表示部インターフェイス65を介してディスプレイ部52へ出力する。また、CPU55は、LANカードなどからなる通信インターフェイス59を介して、脚式ロボット100との間でデータ通信を行う。なお、これらの部位は、内部バス58を介して互いに接続される。
The
脚式ロボット100や超音波受信機41からLANを介して送信されてくるデータは、通信インターフェイス59にて受信される。CPU55は、受信したデータをメモリ56などに格納する。CPU55は、受信したデータに応じて、脚式ロボット100から要求されたデータなどを固定ディスク57から読み出して、通信インターフェイス59を介して脚式ロボット100へと送信する。
Data transmitted from the
また、CPU55は、キーボード53やマウス54を介してユーザから入力される命令、インターネットと通信インターフェイス59とを介して入力される命令などに基づいて、LANを介して移動命令や撮影命令などを脚式ロボット100に送信する。
In addition, the
次に、サーバ装置50の有する機能構成について詳述する。
<サーバ装置50の機能構成>
図5は、この発明の実施の形態に従うサーバ装置50における機能構成を示すブロック図である。図5を参照して、サーバ装置50は、サーバ装置50の各部を制御するメイン処理部55Aと、プログラムやデータベースなどを格納する記憶部57Sと、脚式ロボット100の位置を検知する第1の位置取得部55Bと、設定された経路上を脚式ロボット100を移動させるための経路追従部55Cと、セキュリティ部55Dと、LANを介して室内に配置された複数のマイクやマイクサーバ20から受信した音声データに基づいて会話を認識する音声認識部55Eと、人間の存在やその位置などを検知する人検知部55Fと、人間の顔が位置するエリアを認識する顔認識部55Gと、LANを介して脚式ロボット100から音声データを受信する音声受信部55Hと、LANを介して脚式ロボット100から脚部の動作に関する動作データや障害物の存否に関するデータなどを受信するコマンド受信部55Jと、LANを介して脚式ロボット100から方位データを受信する方位データ受信部55Kとを含む。
Next, the functional configuration of the
<Functional configuration of
FIG. 5 is a block diagram showing a functional configuration in
ここで、メイン処理部55Aや経路追従部55Cは、CPU55が固定ディスク57などに予め格納されていたプログラムをメモリ56に読出して実行することで実現されるものである。経路追従部55Cは、計算された現在位置と入力された目的地(あるいは計算された目的地)とに基づいて、各種のアルゴリズムに沿って脚式ロボット100の移動経路を生成する。経路追従部55Cは、移動経路に沿って脚式ロボット100が移動するように、脚式ロボット100に対する具体的な移動命令を生成する。
Here, the main processing section 55A and the
第1の位置取得部55Bは、CPU55や通信インターフェイス59によって実現されるものであって、超音波サーバ40(超音波受信機41)から受信したデータに基づいて、脚式ロボット100の現在位置(測定位置)を計算する。
The first
セキュリティ部55Dは、CPU55や通信インターフェイス59によって実現されるものであって、セキュリティサーバ30から受信したセキュリティ情報に基づいて、セキュリティモードを切り替えたり、セキュリティに関する動作命令(たとえば警報の出力命令など)を生成したりする。
The
音声認識部55Eは、CPU55や通信インターフェイス59によって実現される。音声認識部55Eは、脚式ロボット100から受信した音声データに基づいて、脚式ロボット100に入力された音声に対応する音声認識テキストをメイン処理部55Aに入力する。
The
人検知部55Fは、CPU55や通信インターフェイス59によって実現される。人検知部55Fは、脚式ロボット100から受信した人感センサ105の反応データと画像データなどに基づいて、脚式ロボット100の周囲に人が存在するか否かを判断し、人が存在する位置を取得する。
The
顔認識部55Gは、CPU55や通信インターフェイス59によって実現される。顔認識部55Gは、脚式ロボット100から受信した画像データに基づいて、人間の顔の検知と認証を行う。
The
音声受信部55Hは、CPU55や通信インターフェイス59によって実現される。音声受信部55Hは、脚式ロボット100から音声データを受信する。
The
コマンド受信部55Jは、CPU55や通信インターフェイス59によって実現される。コマンド受信部55Jは、脚式ロボット100から、脚式ロボット100の近傍に障害物が存在する旨のデータや、脚式ロボット100が障害物に接触した旨のデータや、脚式ロボット100に関する状態情報などを取得する。
The
方位データ受信部55Kは、CPU55や通信インターフェイス59によって実現される。方位データ受信部55Kは、LANを介して、脚式ロボット100から脚式ロボット100の測定向き(測定方向)を受信する。
The orientation
<脚式ロボットの制御システム1の機能構成>
図6は、この発明の実施の形態に従う脚式ロボット100の制御システム1における機能構成を示すブロック図である。図6を参照して、脚式ロボット100の制御システム1は、脚式ロボット100と、サーバ装置50と、超音波受信機41とを含む。
<Functional Configuration of Legged
FIG. 6 is a block diagram showing a functional configuration in
脚式ロボット100は、移動機構108Aと、送受信部119Aと、発信部114Aと、方位取得部104Aと、距離取得部106Aとを含む。
図3および図6に示すように、送受信部119Aは、無線LAN子機119やLAN用ハブ118などによって実現される。送受信部119Aは、LANを介してサーバ装置50から各種命令を受信したり、LANを介してサーバ装置50に各種データを送信したりする。より詳細には、送受信部119Aは、サーバ装置50に測定距離や測定方向を送信し、サーバ装置50から移動命令や撮影命令を受信する。
As shown in FIGS. 3 and 6, the transmission / reception unit 119A is realized by a wireless
移動機構108Aは、たとえば、それぞれの脚部103を動作させるための複数のアクチュエータ108を含む複数の脚部103によって実現される。たとえば、移動機構108Aは、送受信部119Aを介して入力される移動命令に応じて、アクチュエータ108を作動させることによって脚式ロボット100を移動させる。たとえば、移動機構108Aは、送受信部119Aを介して入力される停止命令に応じて、アクチュエータ108を停止させることによって脚式ロボット100を停止させる。より詳細には、サーバ装置50から受信した「○歩前進、肩の角度○○度」という移動命令に基づいて、それぞれのアクチュエータ108(脚部103)が作動することによって、脚式ロボット100が移動する。
The moving
発信部114Aは、たとえば超音波発信タグ114によって実現される。発信部114Aは定期的に超音波を発信する。発信部114Aから発信された超音波は超音波受信機41にて受信される。ただし、発信部114Aは、電波を発信してもよい。
The
方位取得部104Aは、たとえば方位センサ104やセンサコントロールユニット121などによって実現される。方位取得部104Aは、脚式ロボット100の測定方向(測定向き)を取得して、当該測定向きを送受信部119Aを介してサーバ装置50に送信する。
The
距離取得部106Aは、たとえば脚式ロボット100周囲に設けられた複数の測距センサ106やセンサコントロールユニット121によって実現される。距離取得部106Aは、脚式ロボット100から障害物までの距離を測定して、当該測定距離を送受信部119Aを介してサーバ装置50へ送信する。ここで、障害物とは、たとえば壁やドアや家具などのように、家屋200内に配置されている様々なオブジェクトをいう。
The
図6に示すように、サーバ装置50は、入力部53Aと、記憶部57Sと、第1の位置取得部55Bと、パーティクル取得部55Lと、設定部55Mと、計算部55Nと、経路生成部55Pと、命令生成部55Qと、送受信部59Aとを含む。
As illustrated in FIG. 6, the
図4および図6に示すように、入力部53Aは、キーボード53やマウス54や通信インターフェイス59などによって実現される。より詳細には、入力部53Aは、キーボード53やマウス54などを介して、直接ユーザからの動作命令を受け付ける。また、入力部53Aは、通信インターフェイス59を介して、LANやインターネットや外部の情報機器などを介して動作命令を受け付ける。
As shown in FIGS. 4 and 6, the
記憶部57Sは、固定ディスク57やメモリ56によって実現される。記憶部57Sは、脚式ロボット100が移動するエリアに関する地図データ57Aや、パーティクルフィルタを用いて脚式ロボット100の現在地位や現在方向を計算するために必要な各種データを格納するパーティクルファイル57Bや、パーティクルフィルタを用いて計算された現在位置や現在方向を格納する現在情報ファイル57Cなどを記憶する。
The storage unit 57S is realized by the fixed
図7は、地図データ57Aの内容を示すイメージ図である。図7に示すように、地図データ57Aは、脚式ロボット100が移動する家屋200に配置されている壁や扉や家具などの障害物の存在位置(図7におけるハッチング部)を示す情報を有している。地図データ57Aは、たとえばテレビジョン装置やオーディオ機器などの存在位置なども示す。
FIG. 7 is an image diagram showing the contents of the
そして、地図データ57Aは、それぞれの障害物から所定距離以内の接触エリアを示す情報を格納している。接触エリアは、安全確保のためのエリアとして規定されている。すなわち、脚式ロボット100が接触エリアに侵入した場合には、脚式ロボット100が障害物に接触する虞がある。後述する経路生成部55Pは、地図データ57Aを参照して、脚式ロボット100が接触エリアに侵入することがないように、現在位置(スタート地点)から目的地点(ゴール地点)までの移動経路を生成する。
The
図8は、パーティクルファイル57Bのデータ構造を示すイメージ図である。図8に示すように、パーティクルファイル57Bは、パーティクル毎に、前回の現在位置のX座標X1、前回の現在位置のY座標Y1、前回の現在方向θ1、所定の重みW1(1をパーティクル数で除した数)を格納している。パーティクルファイル57Bは、パーティクル毎に、前回のX1、Y1、θ1のそれぞれにノイズを加えた仮想位置(X2,Y2)と仮想方向θ2とを格納する。
FIG. 8 is an image diagram showing the data structure of the
パーティクルファイル57Bは、パーティクル毎に、超音波受信機41からの測定位置が考慮された、ガウス関数に基づいて計算されるX2およびY2の観測確率PUSを格納する。ここで、観測確率PUSとは、脚式ロボット100がその現在位置にある場合に、その測定位置が観測される確率をいう。
The
同様に、パーティクルファイル57Bは、パーティクル毎に、脚式ロボット100からの測定方向が考慮された、ガウス関数に基づいて計算されるθ2の観測確率PCOMを格納する。
Similarly, the
同様にパーティクルファイル57Bは、パーティクル毎に、脚式ロボット100からの障害物までの測定距離が考慮された、ガウス関数に基づいて計算されるX2やY2の観測確率PDISを格納する。ここで、パーティクルファイル57Bは、パーティクル毎に、各種センサにて取得されるデータがセンサの許容範囲内である場合と許容範囲外である場合とでそれぞれ所定の確率POUTを格納する。
Similarly, the
このように、パーティクルファイル57Bは、パーティクル毎に、かつセンサ毎に、このような観測確率を格納する。
Thus, the
そして、パーティクルファイル57Bは、全ての観測確率PUS、PCOM、PDIS、POUTを乗算した観測確率乗算値Evalを格納する。パーティクルファイル57Bは、パーティクルの観測確率乗算値Evalの合計が1となるように、パーティクルの観測確率乗算値Evalの各々を正規化したものを、各パーティクルの重みW2として格納する。
The
図9は、現在情報ファイル57Cのデータ構造を示すイメージ図である。図9に示すように、現在情報ファイル57Cは、各パーティクルの仮想位置のX座標X2を重みW2によって加重平均した値を、脚式ロボット100の現在位置を示すX座標として格納する。現在情報ファイル57Cは、各パーティクルの仮想位置のY座標Y2を重みW2によって加重平均した値を、脚式ロボット100の現在位置を示すY座標として格納する。現在情報ファイル57Cは、各パーティクルのθ2を重みW2によって加重平均した値を、脚式ロボット100の現在方向を示す値θとして格納する。
FIG. 9 is an image diagram showing the data structure of the
図4と図6とを参照して、第1の位置取得部55Bと、パーティクル取得部55Lと、設定部55Mと、計算部55Nと、経路生成部55Pと、命令生成部55Qとは、CPU55が固定ディスク57などに予め格納されていたプログラムをメモリ56に読出して実行することで実現されるものである。すなわち、第1の位置取得部55Bと、パーティクル取得部55Lと、設定部55Mと、計算部55Nと、経路生成部55Pと、命令生成部55Qとは、サーバ装置50のCPU55が有する機能である。
4 and 6, the first
第1の位置取得部55Bは、超音波受信機41から受信した音波に関するデータに基づいて、脚式ロボット100の測定位置を計算する。ただし、脚式ロボット100が、電波を発信する構成とし、第1の位置取得部55Bが、図示しない電波受信機から受信した電波に関するデータに基づいて脚式ロボット100の測定位置を計算するものであってもよい。
The first
パーティクル取得部55Lは、各々が脚式ロボット100の仮想位置および仮想方向を示す複数のパーティクルを取得する、あるいは新たに生成する。より詳細には、パーティクル取得部55Lは、前回の現在位置を計算した際のパーティクルのX座標X2やY座標Y2や方向θ2に今回の移動方向および歩数などに対応するノイズを加えることによって、パーティクルを更新する。この際、前回の現在位置を計算した際の重みW2が、所定のしきい値未満であるパーティクルを削除して、新たなパーティクルを生成してもよい。新たなパーティクルの生成方法としては、前回の現在位置を計算した際の重みW2が最も大きなパーティクルを2つに分割してもよい。
The
設定部55Mは、測定位置と測定距離と地図データ57Aと測定方向とに基づいて、パーティクルの各々に重みW2を設定する。
Setting
より詳細には、設定部55Mは、超音波受信機41からの測定位置を参照しながら、ガウス関数に基づいて計算されるX2およびY2の観測確率PUSを計算する。ここで、観測確率PUSとは、脚式ロボット100がその現在位置にある場合に、その測定位置が観測される確率をいう。同様に、設定部55Mは、パーティクル毎に、脚式ロボット100からの測定方向を参照しながら、ガウス関数に基づいて計算されるθ2の観測確率PCOMを計算する。同様に、設定部55Mは、パーティクル毎に、脚式ロボット100からの障害物までの測定距離を参照しながら、ガウス関数に基づいて計算されるX1やY2の観測確率PDISを計算する。ここで、設定部55Mは、パーティクル毎に、各種センサにて取得されるデータがセンサの許容範囲内である場合と許容範囲外である場合とでそれぞれ所定の確率POUTを計算する。このように、設定部55Mは、パーティクル毎に、かつセンサ毎に、このような観測確率を計算する。
More specifically, the
計算部55Nは、それぞれのパーティクルの仮想位置(X2,Y2)と重みW2とに基づいて脚式ロボット100の現在位置(X,Y)を計算する。すなわち、計算部55Nは、それぞれのパーティクルの仮想位置(X2,Y2)を対応する重みW2に基づいて加重平均することによって、脚式ロボット100の現在位置(X,Y)を計算する。
The
計算部55Nは、それぞれのパーティクルの仮想方向θ2と重みW2とに基づいて脚式ロボット100の現在方向θを計算する。すなわち、計算部55Nは、それぞれのパーティクルの仮想方向θ2を対応する重みW2に基づいて加重平均することによって、脚式ロボット100の現在方向θを計算する。
このようにして、パーティクル取得部55Lと、設定部55Mと、計算部55Nとは、第2の位置取得部を構成する。第2の位置取得部は、パーティクルフィルタを用いることによって、前回の現在位置と測定位置と測定方向と測定距離と地図データとに基づいて、脚式ロボット100の現在位置を計算する。すなわち、第2の位置取得部は、前回の現在位置と測定方向と測定距離と地図データ57Aとに基づいて、超音波受信機41から受信したデータから得られた測定位置を補正することによって、測定位置よりも正確な現在位置を取得する。
In this manner, the
経路生成部55Pは、地図データ57Aを参照して、各種アルゴリズムに沿って現在位置と目的地点とに基づき脚式ロボット100の移動経路を生成する。より詳細には、経路生成部55Pは、現在位置から目的地点との間に、複数の副目的地点(以下サブゴールと呼ぶ)を設定する。サブゴールは、脚式ロボット100が1つの回転動作および前進動作によって到達できるポイントに相当する。
The
経路生成部55Pと命令生成部55Qによる脚式ロボット100のナビゲーションの目的は、脚式ロボット100を現在の位置からユーザによって指定された目的地点へと移動させることである。目的地点が現在位置から離れている場合、ロボットは1つの移動動作では目的地点に到着することができない可能性が高く、目的地点へ到着するためにはいくつかの動作ステップを組み合わせたアルゴリズムが必要となる。この機能は、通常2つの段階を経て実行される。まず、ナビゲーションの第1の段階として、経路生成部55Pは、現在の位置から目的地点までの経路を生成する。より詳細には、経路生成部55Pは、目的地点への経路を生成し、目的地点へ到着するために脚式ロボット100が通過すべき連続したサブゴールのリストを生成する。
The purpose of navigation of the
命令生成部55Qは、移動経路と現在位置とに基づいて移動命令を生成する。たとえば、命令生成部55Qは、移動経路と現在位置とに基づいて、「肩を○度開く」旨の要求や「○歩前進する」旨の要求を生成し、当該要求を送受信部59Aを介して脚式ロボット100に送信する。命令生成部55Qは、脚式ロボット100がサブゴールを順番に通過するように動作命令を生成する。以下では、命令生成部55Qにおける、脚式ロボット100に対する動作命令を生成する機能について詳述する。
The
すなわち、ナビゲーションの第2の段階として、命令生成部55Qは、経路計画の最初のサブゴールに達するために行なうべきアクションを決定する。サブゴールに到達したとき、脚式ロボット100は最終目的地点に到達するまで、次のサブゴールに対して同じ処理を繰り返す。目的地点へ移動する間に、脚式ロボット100の現在位置は予定された位置とは異なってゆく可能性がある。あるいは、ロボットが移動する経路上に障害物が現れる可能性もある。その場合、ロボットは目的地点への新しい経路を計画し直さなければならない。
That is, as the second stage of navigation, the
ここで、命令生成部55Qは、目的地点に近づくために以下の4つの動作パターンを使用する。すなわち、命令生成部55Qは、(1)各ステップの直進前進移動、(2)各ステップの右カーブ前進移動、(3)各ステップの左カーブ前進移動、(4)各ステップの回転運動のうちから、最も動作効率が良い動作パターンを選択する。動作効率が良い動作パターンとは、脚式ロボット100が次のサブゴールに到着するまで必要とする動作ステップ数などが少ないものをいう。すなわち、命令生成部55Qは、右カーブ前進するか、右旋回したのちに直進するか、いずれが脚式ロボット100にとって効率的な動作となるかを判断した上で、移動方向(肩の開き具合)や歩数などを決定する。
Here, the
送受信部59Aは、通信インターフェイス59などによって実現される。送受信部59Aは、LANを介して脚式ロボット100から、測定距離や測定方向などに関するデータを受信して、当該データを設定部55Mに渡す。
The transmission /
一般的に、脚式ロボット100を目的地点まで移動させるためには、動的重心の軌道に基づいて足裏の着地位置を一歩ごとに計画し、関節を制御することによって精度よく着地させる方法が用いられている。しかしながら、この場合には、精密なハードウェア構成と高度な運動制御手法が必要となる(たとえば、特開2008−49458号公報、特開2004−209562号公報など)。
In general, in order to move the
本実施の形態に係る脚式ロボットの制御システム1は、このような問題点を解消したものであって、シンプルなハードウェアおよびソフトウェア構成でありながら、脚式ロボット100が目的地点まで移動することが可能なものである。より詳細には、本実施の形態に係る脚式ロボットの制御システム1においては、動的重心軌道に基づいた足裏の着地位置計画を行わない。また、本実施の形態に係る脚式ロボットの制御システム1は、目的地点までの経路を生成するとともにサブゴールを設定し、至近のサブゴールに一定の尤度内で到達できるよう経路追従を行う。また、本実施の形態に係る脚式ロボットの制御システム1は、直進、旋回、円弧の3種類の動作を、歩数単位で実行できる機能を有しており、現在位置と計画した移動経路上のサブゴールとの位置関係に基づいて最適な動作(移動方向や歩数など)を決定するものである。加えて、本実施の形態に係る脚式ロボットの制御システム1は、上記の動作をサブゴール毎に連続して実行することにより、滑らかで精度の高い目的地点までの移動が可能である。
The legged
つまり、本実施の形態に係る脚式ロボットの制御システム1は、足先の着地位置の計画が不要であり、自己位置が目的地点から外れた場合であってもそれを許容することができるとともに、脚式ロボット100が目的地点まで精度よく移動することができる。
That is, the
<現在位置取得処理>
図10は、サーバ装置50における現在位置取得処理の処理手順を示すフローチャートである。図10に示すように、まず、CPU55は、脚式ロボット100から脚式ロボット100が移動した旨のデータを受信したか否かを判断する(ステップS102)。脚式ロボット100から移動した旨のデータを受信した場合(ステップS102にてYESの場合)、CPU55は、前回の現在位置が記憶部57S(パーティクルファイル57Bあるいは現在情報ファイル57C)に格納されているか否か、すなわち当該移動前に現在位置(X1,Y1)が計算されているか否かを判断する(ステップS106)。
<Current position acquisition processing>
FIG. 10 is a flowchart illustrating a processing procedure of the current position acquisition process in the
一方、サーバ装置50が脚式ロボット100から移動した旨のデータを受信しない場合(ステップS102にてNOの場合)、CPU55は、前回の現在位置を取得したときから所定時間が経過したか否かを判断する(ステップS104)。前回の現在位置を取得したときから未だ所定時間が経過していない場合(ステップS104にてNOの場合)、CPU55はステップS102からの処理を繰り返す。一方、前回の現在位置を取得してから所定時間が経過している場合(ステップS104にてYESの場合)、CPU55はステップS106からの処理を実行する。
On the other hand, when data indicating that the
前回の現在位置が記憶部57Sに格納されている場合(ステップS106にてYESの場合)、CPU55は、パーティクルのリサンプリングを行う(ステップS108)。すなわち、CPU55は、パーティクルファイル57Bに格納されている各パーティクルのX座標X1、Y座標Y1、角度(方向)θ1にノイズを付与し、ノイズが付与されたデータX2、Y2、θ2をパーティクルファイル57Bに格納する。
If the previous current position is stored in storage unit 57S (YES in step S106),
そして、CPU55は、各種センサから取得されるデータ、たとえば、超音波受信機41から得られる測定位置や、ジャイロセンサ109から得られる測定方向、測距センサ106から得られる測定距離などに基づいて、各パーティクルの測定確率(発生確率)を計算することによって、各パーティクルに重み付けを行う(ステップS200)。重み付け処理(ステップS200)については後述する。
And CPU55 is based on the data acquired from various sensors, for example, the measurement position obtained from the
CPU55は、各パーティクルのノイズ付与後のX座標X2、Y座標Y2、角度θ2に重みW2を乗じることによって、X座標、Y座標、角度θの荷重平均値(X,Y,θ)を求める(ステップS112)。
The
一方、前回の現在位置が記憶部57Sに格納されていない場合(ステップS106にてNOの場合)、CPU55は、超音波受信機41からのデータに基づいて、脚式ロボット100の測定位置を取得する(ステップS114)。そして、CPU55は、測定位置を取得できた場合(ステップS116にてYESである場合)にはステップS108からの処理を実行し、測定位置が取得できない場合(ステップS116にてNOである場合)にはステップS102からの処理を実行する。
On the other hand, when the previous current position is not stored in the storage unit 57S (NO in step S106), the
<重み付け処理>
図11は、サーバ装置50における重み付け処理の処理手順を示すフローチャートである。図11に示すように、ここでは、M個のセンサを用いるとともに、N個のパーティクルを利用することによって、現在位置と現在方向とを取得する場合について説明する。
<Weighting process>
FIG. 11 is a flowchart showing the processing procedure of the weighting process in the
まず、CPU55は、1つ目のパーティクルについて、1つ目のセンサで得られたデータに基づいて(ステップS202)、観測確率を計算する(ステップS204〜S206)。より詳細には、CPU55は、たえば測距センサ106からの測定距離などを示すデータを取得して(ステップS204)、対象パーティクルのX座標とY座標と地図データとから、現在位置が対象パーティクルの座標に一致する場合に測定距離が測定される確率を計算する(ステップS206)。
First, the
CPU55は、次のセンサについての処理に進み(ステップS208)、次のセンサがある場合(ステップS210にてNOである場合)、ステップS204からの処理を繰り返す。一方、CPU55は、各パーティクルについて次のセンサがない場合(ステップS210にてYESの場合)、各パーティクルに係る観測確率を全て乗算することによって当該パーティクルに係る観測確率を計算する(ステップS212)。
The
CPU55は、次のパーティクルについての処理に進み(ステップS214)、次のパーティクルがある場合(ステップS216にてNOである場合)、ステップS204からの処理を繰り返す。一方、CPU55は、次のパーティクルがない場合(ステップS216にてYESである場合)、それぞれのパーティクルに係る観測確率の合計が「1」となるように、それぞれのパーティクルに係る観測確率を正規化する(ステップS218)。
The
[その他の実施の形態]
本発明に係るプログラムは、コンピュータのオペレーティングシステム(OS)の一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の配列で所定のタイミングで呼出して処理を実行させるものであってもよい。その場合、プログラム自体には上記モジュールが含まれずOSと協働して処理が実行される。このようなモジュールを含まないプログラムも、本発明にかかるプログラムに含まれ得る。
[Other embodiments]
The program according to the present invention may be a program module that is provided as a part of a computer operating system (OS) and that calls necessary modules in a predetermined arrangement at a predetermined timing to execute processing. . In that case, the program itself does not include the module, and the process is executed in cooperation with the OS. A program that does not include such a module can also be included in the program according to the present invention.
また、本発明にかかるプログラムは他のプログラムの一部に組込まれて提供されるものであってもよい。その場合にも、プログラム自体には上記他のプログラムに含まれるモジュールが含まれず、他のプログラムと協働して処理が実行される。このような他のプログラムに組込まれたプログラムも、本発明にかかるプログラムに含まれ得る。 The program according to the present invention may be provided by being incorporated in a part of another program. Even in this case, the program itself does not include the module included in the other program, and the process is executed in cooperation with the other program. Such a program incorporated in another program can also be included in the program according to the present invention.
提供されるプログラム製品は、ハードディスクなどのプログラム格納部にインストールされて実行される。なお、プログラム製品は、プログラム自体と、プログラムが記憶された記憶媒体とを含む。 The provided program product is installed in a program storage unit such as a hard disk and executed. Note that the program product includes the program itself and a storage medium in which the program is stored.
さらに、本発明に係るプログラムによって実現される機能の一部または全部を専用のハードウェアによって構成してもよい。 Furthermore, part or all of the functions realized by the program according to the present invention may be configured by dedicated hardware.
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。 The embodiment disclosed this time should be considered as illustrative in all points and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.
1 制御システム、20 マイクアレイ用環境サーバ、21 外部マイクロフォンアレイ、30 セキュリティサーバ、31 セキュリティセンサ、40 超音波用環境サーバ、41 超音波受信機、49 アクセスポイント、50 サーバ装置、52 ディスプレイ部、53 キーボード、53A 入力部、54 マウス、55A メイン処理部、55B 位置取得部、55C 経路追従部、55D セキュリティ部、55E 音声認識部、55F 人検知部、55G 顔認識部、55H 音声受信部、55J コマンド受信部、55K 方位データ受信部、55L パーティクル取得部、55M 設定部、55N 計算部、55P 経路生成部、55Q 命令生成部、56 メモリ、57 固定ディスク、57A 地図データ、57B パーティクルファイル、57C 現在情報ファイル、57S 記憶部、58 内部バス、59 通信インターフェイス、59A 送受信部、65 表示部インターフェイス、100 脚式ロボット、101 頭部、102 胴部、103 脚部、104 方位センサ、104A 方位取得部、105 人感センサ、106 測距センサ、106A 距離取得部、107 モータコントロールボード、108 アクチュエータ、108A 移動機構、109 ジャイロセンサ、109 1軸ジャイロセンサ、110 3軸加速度センサ、111 バッテリ電源、112 バッテリ電源、113 画像送信ユニット、114 超音波発信タグ、114A 発信部、115 カメラ、116 スピーカ、117 マイク、118 LAN用ハブ、119 無線LAN子機、119A 送受信部、121 センサコントロールユニット、200 家屋。 DESCRIPTION OF SYMBOLS 1 Control system, 20 Microphone array environment server, 21 External microphone array, 30 Security server, 31 Security sensor, 40 Ultrasonic environment server, 41 Ultrasonic receiver, 49 Access point, 50 Server apparatus, 52 Display part, 53 Keyboard, 53A input unit, 54 mouse, 55A main processing unit, 55B position acquisition unit, 55C route tracking unit, 55D security unit, 55E voice recognition unit, 55F human detection unit, 55G face recognition unit, 55H voice reception unit, 55J command Receiving unit, 55K orientation data receiving unit, 55L particle acquisition unit, 55M setting unit, 55N calculation unit, 55P route generation unit, 55Q command generation unit, 56 memory, 57 fixed disk, 57A map data, 57B particle file, 57C current information file, 57S storage unit, 58 internal bus, 59 communication interface, 59A transmission / reception unit, 65 display unit interface, 100 legged robot, 101 head, 102 torso, 103 leg, 104 orientation sensor, 104A orientation acquisition , 105 Human sensor, 106 Distance sensor, 106A Distance acquisition unit, 107 Motor control board, 108 Actuator, 108A Moving mechanism, 109 Gyro sensor, 109 1 axis gyro sensor, 110 3 axis acceleration sensor, 111 Battery power supply, 112 Battery power source, 113 image transmission unit, 114 ultrasonic transmission tag, 114A transmission unit, 115 camera, 116 speaker, 117 microphone, 118 LAN hub, 119 wireless LAN slave unit, 119A transmission / reception unit, 1 21 Sensor control unit, 200 house.
Claims (7)
前記移動体は、
前記移動体を移動させる移動機構と、
前記移動体の測定向きを取得する方位取得手段と、
音波および電波の少なくともいずれかを発信する発信手段と、
前記移動体周辺の障害物までの測定距離を取得する距離取得手段とを含み、
前記障害物の位置を示す地図データを格納する記憶手段と、
前記音波および電波の少なくともいずれかに基づいて、前記移動体の測定位置を計算する第1の位置取得手段と、
前記測定位置と前記測定向きと前記測定距離と前記地図データとに基づいて、前記移動体の現在位置を計算する第2の位置取得手段とを備える、移動体制御システム。 A moving body control system for controlling the operation of a moving body,
The moving body is
A moving mechanism for moving the moving body;
Orientation acquisition means for acquiring the measurement direction of the moving body;
A transmission means for transmitting at least one of a sound wave and a radio wave;
A distance acquisition means for acquiring a measurement distance to an obstacle around the moving body,
Storage means for storing map data indicating the position of the obstacle;
First position acquisition means for calculating a measurement position of the moving body based on at least one of the sound wave and radio wave;
A moving body control system comprising: a second position acquisition unit that calculates a current position of the moving body based on the measurement position, the measurement direction, the measurement distance, and the map data.
パーティクルフィルタを用いることによって、前回の現在位置にさらに基づいて、前記移動体の現在位置を計算する、請求項1に記載の移動体制御システム。 The second position acquisition means includes
The moving body control system according to claim 1, wherein a current position of the moving body is calculated based on a previous current position by using a particle filter.
前記移動体の仮想位置を示す複数のパーティクルを取得するパーティクル取得手段と、
前記測定位置と前記測定距離と前記地図データとに基づいて、前記パーティクルの各々に重みを設定する設定手段と、
それぞれの前記パーティクルの前記仮想位置と前記重みとに基づいて、前記移動体の現在位置を計算する計算手段とを含む、請求項2に記載の移動体制御システム。 The second position acquisition means includes
Particle acquisition means for acquiring a plurality of particles indicating the virtual position of the moving body;
Setting means for setting a weight for each of the particles based on the measurement position, the measurement distance, and the map data;
The moving body control system according to claim 2, further comprising calculation means for calculating a current position of the moving body based on the virtual position and the weight of each of the particles.
前記移動体の仮想位置および仮想向きを示す複数のパーティクルを取得するパーティクル取得手段と、
前記測定位置と前記測定距離と前記地図データと前記測定向きとに基づいて、各前記パーティクルに重みを設定する設定手段と、
それぞれの前記パーティクルの前記仮想位置と前記重みとに基づいて前記移動体の現在位置を計算し、それぞれの前記パーティクルの前記仮想向きと前記重みとに基づいて前記移動体の現在向きを計算する計算手段とを含む、請求項2に記載の移動体制御システム。 The second position acquisition means includes
Particle acquisition means for acquiring a plurality of particles indicating the virtual position and virtual orientation of the moving body;
Setting means for setting a weight for each particle based on the measurement position, the measurement distance, the map data, and the measurement direction;
Calculation for calculating the current position of the moving object based on the virtual position and the weight of each particle, and calculating the current direction of the moving object based on the virtual direction and the weight of each particle The mobile body control system according to claim 2, comprising: means.
前記地図データを参照して、前記現在位置と前記目的地点とに基づき前記移動体の移動経路を生成する経路生成手段と、
前記移動経路と前記現在位置とに基づいて、移動方向および歩数を含む動作命令を生成する動作命令生成手段とをさらに備え、
前記移動機構は、前記動作命令に基づいて前記移動体を移動させることによって、移動体を前記移動経路に追従させる、請求項1から4のいずれか1項に記載の移動体制御システム。 Means for receiving the destination point;
Referring to the map data, route generating means for generating a moving route of the moving body based on the current position and the destination point;
An operation command generating means for generating an operation command including a moving direction and the number of steps based on the moving route and the current position;
5. The moving body control system according to claim 1, wherein the moving mechanism causes the moving body to follow the moving path by moving the moving body based on the operation command. 6.
前記移動機構は、歩行可能な複数の脚部を含む、請求項1から5のいずれか1項に記載の移動体制御システム。 The moving body is a legged robot,
The said moving mechanism is a moving body control system of any one of Claim 1 to 5 containing the several leg part which can be walked.
前記移動体は、
前記移動体を移動させる移動機構と、
前記移動体の測定向きを取得する方位取得手段と、
音波および電波の少なくともいずれかを発信する発信手段と、
前記移動体周辺の障害物までの測定距離を取得する距離取得手段とを含み、
前記サーバ装置は、
前記障害物の位置を示す地図データを格納する記憶部と、
演算処理部とを含み、
前記移動体制御方法は、
前記演算処理部が、前記音波および電波の少なくともいずれかに基づいて、前記移動体の測定位置を取得するステップと、
前記演算処理部が、前記測定位置と前記測定向きと前記測定距離と前記地図データとに基づいて、前記移動体の現在位置を計算するステップと、
前記演算処理部が、目的地点を受け付けるステップと、
前記演算処理部が、前記地図データを参照して、前記現在位置と前記目的地点とに基づき前記移動体の移動経路を生成するステップと、
前記演算処理部が、前記移動経路と前記現在位置とに基づいて、移動方向および歩数を含む動作命令を生成するステップと、
前記移動機構が、前記動作命令に基づいて前記移動体を移動させることによって、前記移動体を前記移動経路に追従させるステップとを備える、移動体制御方法。 A mobile control method for controlling the operation of the mobile body in a server connectable to the mobile body,
The moving body is
A moving mechanism for moving the moving body;
Orientation acquisition means for acquiring the measurement direction of the moving body;
A transmission means for transmitting at least one of a sound wave and a radio wave;
A distance acquisition means for acquiring a measurement distance to an obstacle around the moving body,
The server device
A storage unit for storing map data indicating the position of the obstacle;
Including an arithmetic processing unit,
The moving body control method includes:
The arithmetic processing unit acquiring a measurement position of the moving body based on at least one of the sound wave and radio wave;
The arithmetic processing unit calculates a current position of the moving body based on the measurement position, the measurement direction, the measurement distance, and the map data;
The arithmetic processing unit accepting a destination point;
The arithmetic processing unit refers to the map data and generates a moving route of the moving body based on the current position and the destination point;
The arithmetic processing unit generates an operation command including a moving direction and the number of steps based on the moving route and the current position;
The moving mechanism includes a step of causing the moving body to follow the moving path by moving the moving body based on the operation command.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008168860A JP2010009370A (en) | 2008-06-27 | 2008-06-27 | Traveling object control system and traveling object control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008168860A JP2010009370A (en) | 2008-06-27 | 2008-06-27 | Traveling object control system and traveling object control method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010009370A true JP2010009370A (en) | 2010-01-14 |
Family
ID=41589777
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008168860A Withdrawn JP2010009370A (en) | 2008-06-27 | 2008-06-27 | Traveling object control system and traveling object control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010009370A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012035707A1 (en) * | 2010-09-17 | 2012-03-22 | 国立大学法人東京工業大学 | Map generation device, map generation method, method for moving mobile body, and robot device |
JP2016520944A (en) * | 2013-06-03 | 2016-07-14 | コントロールワークス プライベート リミテッド | Method and apparatus for off-board navigation of robotic devices |
-
2008
- 2008-06-27 JP JP2008168860A patent/JP2010009370A/en not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012035707A1 (en) * | 2010-09-17 | 2012-03-22 | 国立大学法人東京工業大学 | Map generation device, map generation method, method for moving mobile body, and robot device |
US9224043B2 (en) | 2010-09-17 | 2015-12-29 | Tokyo Institute Of Technology | Map generation apparatus, map generation method, moving method for moving body, and robot apparatus |
JP2016520944A (en) * | 2013-06-03 | 2016-07-14 | コントロールワークス プライベート リミテッド | Method and apparatus for off-board navigation of robotic devices |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4516592B2 (en) | Mobile robot | |
CN109813319B (en) | Open loop optimization method and system based on SLAM (Simultaneous localization and mapping) mapping | |
JP3945279B2 (en) | Obstacle recognition apparatus, obstacle recognition method, obstacle recognition program, and mobile robot apparatus | |
Chen | Kalman filter for robot vision: a survey | |
JP3994950B2 (en) | Environment recognition apparatus and method, path planning apparatus and method, and robot apparatus | |
TWI827649B (en) | Apparatuses, systems and methods for vslam scale estimation | |
WO2004052597A1 (en) | Robot control device, robot control method, and robot control program | |
Treuillet et al. | Outdoor/indoor vision-based localization for blind pedestrian navigation assistance | |
US20130218395A1 (en) | Autonomous moving apparatus and method for controlling the same | |
JP5276931B2 (en) | Method for recovering from moving object and position estimation error state of moving object | |
JP2008158868A (en) | Mobile body and control method | |
JP5298741B2 (en) | Autonomous mobile device | |
US10197399B2 (en) | Method for localizing a robot in a localization plane | |
KR20130073476A (en) | Mobile apparatus and localization method of mobile apparatus | |
TWI772743B (en) | Information processing device and mobile robot | |
US20110106310A1 (en) | Robot and task execution system | |
CN113396033B (en) | Robot control system | |
JP2020079997A (en) | Information processing apparatus, information processing method, and program | |
US12032377B2 (en) | Mobility aid robot navigating method and mobility aid robot using the same | |
Zhang et al. | Human-robot interaction for assisted wayfinding of a robotic navigation aid for the blind | |
JP2010009371A (en) | Traveling robot and traveling robot control system | |
JP2009178782A (en) | Mobile object, and apparatus and method for creating environmental map | |
US11720117B1 (en) | System to facilitate autonomous mobile device movement | |
JP2010009370A (en) | Traveling object control system and traveling object control method | |
US20200293051A1 (en) | Route determination method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20110906 |