計測自動制御学会東北支部 第 211 回研究集会 (2003.10.11)
資料番号 211-12

座標系を用いない人工ランドマークを用いた移動ロボットのナビゲーション
Navigation for Mobile Robot using Artificial Landmark
without using Coordinate System○及川一美 ∗ ，高氏秀則 ∗∗ ，江丸貴紀 ∗∗ ，土谷武士 ∗∗ ，大久保重範 ∗○ Kazumi Oikawa∗ ，Hidenori Takauji∗∗ ，Takanori Emaru∗∗∗ ，Takeshi Tsuchiya∗∗ ，Shigenori Okubo∗*山形大学工学部, **北海道大学大学院工学研究科, ***電気通信大学*Faculty of Engineering, Yamagata University,*Graduate School of Engineering, Hokkaido University**The University of Electro-Communications
キーワード : 人工ランドマーク (Artificial landmark)，自律移動ロボット (Autonomous mobile robot)，
行動決定手法 (Decision making)，行動規範型ロボット (Behavior-based Robotics)，
サブサンプション・アーキテクチャ (Subsumption Architecture)

連絡先 : 〒 992-8510 米沢市城南四丁目三番地十六号 山形大学 工学部 機械システム工学科
及川一美，Tel.: (0238)26-3246，Fax.: (0238)26-3246，E-mail: okazu@yz.yamagata-u.ac.jp

1.

はじめにことは非常に手間のかかる作業である．それ以前に作業環境を座標で表現することも面倒であるだ

本稿では車輪型ロボットを対象にして，専門家以外の一般の方々でも容易に扱えるようにするために，直感的に目的地を指示できるランドマークを用いた指示手法，及び指示されたランドマークに到達するためのナビゲーション手法について考える．

けでなく，正確に表現しなければロボットは正しく目的地に到達できない．このように現在の座標ベースの移動ロボットは，下準備として非常に手間のかかる作業を人間に強いており，自律はしているかもしれないが自立はしていない．そもそもロボットは人間の手間を省くことを期待されてい移動ロボットに目的地指示をする場合，一般的には作業環境を座標系で表現し目的地を座標で与るのであり，このような手間はロボットの普及を妨げると考える．

える．このような伝統的手法は研究者らにとっては何の違和感もなく行われているが，一般の方々にとって目的地を座標で表現することは日常生活の中で滅多になく，その上目的地の座標値を得る

一方，我々人間は目的地に到達するのに座標など用いない．何を用いているかと言えば，環境に存在する目印を頼りにナビゲーションを行う．故に，道を教える際に書かれるフリーハンドの地図–1–

には目印が書き込まれるし，目的地の指示にも目• 目的地はランドマークが見える範囲となる．

印が用いられることが多い．そこで，本手法では（不正確）

座標を頼りにするのではなく，目印，つまりラン• 大雑把なナビゲーションで構わない場合にドマークを頼りにナビゲーションを行う手法につ有効．

いて考える．
一方，海環境は次のような特徴をもつ．

2.

作業環境の条件• 正確な地図が必要．

ランドマークを頼りにする場合，ランドマーク• 具体的（座標）な指示のみ．の位置をある程度特定できなければならないため• 目的地は任意の点．
（正確）

反射や回折が起きない媒体であるものが良い．し• 正確なナビゲーションが必要な場合に有効．

かし，その様な媒体であるとオクルージョンの問題が起こる．実際，我々は光を媒体にランドマークを認識することが多く，オクルージョンの問題は頻繁に起こる．つまり，大抵の場合は初期位置から目的地のランドマークは見えない．それでもナビゲーションが可能であるのは，環境中に通路が存在しているからであり，通路に沿って移動が可能であると言う条件が通路の先の見えない目印に到達することを可能にする．したがって，海上のような通路の存在しない環境では同じようにはいかない．以上のことから，従来の座標を用いる
手法では作業環境は任意でよいのに対して，ランドマークを頼りにする手法での環境の条件は，通路とランドマークが存在することである．

街環境では通路をアーク，分岐点をノードとするグラフで環境を表現できることから，「 そこの信号を右に」といったようなランドマークと行動の組み合わせで経路を指示できるだけでなく，環境そのものも教えることが可能である．一方，海環
境では正確な海図がなければ座礁を起こす危険があるのと同じように，環境を正確に座標で表現する必要があり，それは簡単にロボットに伝えられるものではない．しかし，街環境では「郵便局に行きなさい」という指示に対して郵便局の何処に行くのかは決定できないように，目的地はランドマークが見える範囲で指示することになるが，海環境ではピンポイントで指示することが可能であり，正確な位置決めが可能である．また，地図を3.

従来手法との比較用いることで海環境では目的地までの経路の最適ここで，本手法と従来手法を比較して，本手法が対象とする問題を明確にする．便宜上，ランドマークと通路が存在する環境を「街環境」，従来手法が対象とする環境を「海環境」と名付ける．

性や到達可能性を議論することができるのに対して，街環境では厳密には不可能である．しかし，静的ではない一般の環境において最適に計画された経路がどれだけ意味を持つかは別の議論になるであろう．

街環境は次のような特徴を持つ．

ナビゲーションに関しては，海環境では自己位• グラフで表現されるような抽象的な地図が利用可能．

置推定と経路追従が問題になるのに対して，街環境では通路の認識と沿い走行が問題となる．マイ• 音声で地図及び目的地が指示できる．
（ 期待）

クロマウスのような障害物がなく壁にドアのないような廊下であれば問題はほとんどないが，障害–2–

物が存在していたりドアのような分岐点以外で壁が空いているような環境では，不十分なセンサでは通路の長手方向を常に検知できなかったり，分岐点と誤認識したりで目的が達成できない．
そこで，本稿で取り扱う問題は，1) 障害物が存在

Fig. 1する通路の沿い走行，2) 及び分岐点の検出，3) 並

IR Module Landmark

びに分岐点での正確な行動の3点とする．これが達成可能であれば，ランドマークに頼るナビゲーションが可能となり，手書き地図などのインタフェースが実現可能となると考える．

4.

Fig. 2

人工ランドマークロボットのためのランドマークは人間との共存を考えれば，人間が使っているものを流用できれば良い．しかし，視覚を必要とするものがほとん
どで我々の技術ではまだ敷居が高いため，今回は人工的なランドマークを用意した．本研究でのラ38kHz 変調で ID 番号を送出している．このランドマークは天井に下向きに設置され，2.5m 位の高さの天井に配置した場合，床で真上に向けたセンサを用いると半径約1.5mの範囲でIDを認識することができる．

Fig. 2 にランドマークセンサを示す．それぞれ 7

ンドマークの役割は，1) 利用者が直感的に目的地を指示することが可能で容易に移動させることができるもの，2) 分岐点を認識させるもの，の 2 点である．2点目の必要性については，前述のように障害物やドアが存在する環境では，例えば超音波センサなどのような測距センサのみで環境の分岐

Landmark Sensors

つのセンサはランドマークから送信される ID を認識している．周囲に配置した 6 つの受信機はランドマークの方向を検出するためのものであり，中央の受信機は天井方向に向いてランドマーク付近に到達したことを検出している．

点や特徴点を検出する方法1) では誤認識が起こる．
視覚センサを用いればより精度は上がるが，ラン5.

手法

ドマークを設置することで更に安定して分岐点を検出することができる．更に，分岐点に記号など意味をもたせたランドマークを配置することで，その記号を使って経路指示が容易になるという理由からである．

イベント駆動型階層構造切替

本手法は座標を用いないため行動決定には行動規範型手法を用いる．基本的にはSA2) を用いるが，一般プログラム言語でも開発容易な層間に干渉のない SA3) を用いる．ところで，移動ロボットは部

人工ランドマークは簡単に認識ができて，方向に関係なく安定して識別が可能であり，方向も特定できるものが良い．更に，製作が容易であるという理由から，Fig. 1 に示される赤外線送信ランドマークを用いた．このランドマークは 8bit の ID
番号を持たせてあり，テレビのリモコンと同じく分空間問題であり，グローバル座標を用いない場合は知覚騙し問題となるので，状況が異なってもセンサの値では判別できないことが起こりうる．特に層間に干渉のない単純な反射型の SA の場合は，階層が固定であることに起因する問題により，例
えば通路や分岐点やランドマーク付近のそれぞれ–3–

5.1

Initial State Controller

モジュール詳細

Next LM

LOST

Ring

Ring Module

Compass
GoForward

中の 1〜5 まで番号をふってある半円状に配置されBehaveCorridor

LMNavi

た PSD を用いて障害物がない方向を探り，正面のRing
LMNavi
DETECTEDNEXT

3 つの PSD を用いて前進可能かを調べながら，障Compass
GoForward

ArrivedFig. 4 に PSD の配置を示す．図

害物のない方向に移動するためのモジュールであBehave

FOUNDる．Fig. 5 に状態遷移図を示す．
LOST

LMNaviFoundIdle

BehavethroughRing
LMNavi

Limit speedBehave

GoForward

turn left

Compass

ARRIVEDturn rightwhichrotate

REVERSEDETECTED
Detected

Fig. 5

State Transition Diagram of Ring Module

DESIREDRingReverse

LMNavi

Limit speed

GoForward

BehaveCompass Module
CompassIdle

アナログの PSD は誤差が激しいことと，後に述べる理由から約 20cm の距離のBehave

障害物を検知しているため，通路の長手方向の検Fig. 3

Event Driven Layered Control Changer

知は困難である．そこで，電子コンパスを用いてで異なる行動を取らせたくても，思い通りに行動させるアルゴリズムを用意することが困難なことが起こる．そこで Finit State Machine を使って状況毎にモジュールのアルゴリズムを切り替え，更に，モジュールから発生するイベントにより階層構造を切り替えるイベント駆動型階層構造切替手法を用いる4) ．前述の3つの問題を達成するために階層構造を Fig. 3 に示すように設計した．図中の矢印の根元に書かれているのが階層構造を切り替えるトリガーとなるイベント名である．

長手方向を検知するようにした．実際にはコンパスを用いて長手方向を検知することはできないので，初期位置におけるロボットの方向を長手方向としている．これにより，指定の方向に旋回させ通路沿い走行を実現している．このモジュール状態遷移図をFig. 6に示す．このモジュールではturnleft 及び turn right state から reverse state へ状態遷移が起こる際にイベントを発行される．Fig. 6 に説明されているイベントは Fig. 3 中のイベント名と対応する．
follow
direction32

reverse4

turn left
1

turn right

5

Fig.

6

ModuleFig. 4* REVERSE event(When robot turned the opposite direction.)

Arrangement of PSD–4–

State Transition Diagram of Compassランドマークセンサを用いてLMNavi Module

ランドマークの真下へ接近し，ランドマークを認識囲から逸脱しないようにするために速度制限をかけている．

するためのモジュールで，指示通りにナビゲーショ

ランドマークセンサの数が少ないために，シミュンを行う．このモジュールの状態遷移図を Fig. 7

レーションで一つ前のランドマークに戻ることがに示す．このモジュールも Compass Module 同様イ時々起こるため，Compass Module を最下層に置いベントを発行する．て逆走を検出している．

* LOST event(When robot lost sight of a LM.)

nextLM* NEXT event(When robot turned to next LM.)

Reverse 目的の方向に対して逆向きになったとapproachstop* FOUND event(When robot found a LM.)きの状態で，目的の方向に旋回する．

arrived* LOST event

found* DETECTED event(When robot detected the ID of a LM.)detected

ランドマークIDの認識可能範囲に入っ

Detected* ARRIVED event(When robot arrived at a LM.)た状態で，できるだけ真下に移動する．このときFig. 7 State Transition Diagram of LMNavi Moduleも先と同様の理由で速度制限をしている．

Arrived

ランドマークの真下付近に到着したときの状態で，次のランドマークの方向に向きを変GoForward Module 常に前進するモジュールであり，常に起動する．

Idle Module

えるか，もしくは最終目的地に到達していたならば，その位置で停止しつづける．

常に停止するモジュールであり，常6.に起動する．

ナビゲーション方法

ナビゲーションの指示は辿るべきランドマーク

5.2

各階層構造詳細の列と，それぞれのランドマークでの行動の列をNext LM 初期状態の階層構造であり，次のラ与えることによって行う．今回はセンサと CPU のンドマークのある方向に向きを変えた後から現在能力から簡単のために，交差点は十字路及び T 字のランドマークの信号を受けなくなるまでの階層路のみとし，行動も直進，後戻り，右折，左折，停構造である．この状態に遷移してきたときにCom-止とした．

pass Module のみを初期化し，目的の方向をセッ

自律ロボットであるから出発点と目的地のみ与トする．LMNavi Module は，常に起動する GoFor-

えて経路，つまりランドマークの列をロボットにward Module の下に位置しているため，起動して計画させるべきであるが，手書き地図を用いた場も行動が表に出ることはなく，イベントを発生す合に自動生成するものとして，今回はそれを踏まるためだけに利用される．

えて全てのランドマークの列を与える．行動に関しても同様の理由で，環境地図を持っていなけれCorridor

通路に沿って次のランドマークに向かう状態の階層構造である．

ば次にどの方向に行けばよいかは判断できないので，今回は人間が逐次指示する．
ランドマーク列及び行動列が与えられると次のFound

ランドマークを発見したときの状態．こ
手順でロボットは目的地へ向かう．のとき ID の認識の時間を稼ぐためと，信号受信範–5–Stop 1. 現在向いている方向を次のランドマーク数表記で示した）を配置する．また環境中には静のある方向と設定・記憶し，その方向へ前進的障害物が存在しているとする．ランドマークはする．

天井に配置されているものとして，障害物による

Step 2. ランドマーク ID を認識したときに，指示どおりの ID か確認する．もし，異なる ID でオクルージョンは起こらないとする．今回与えた経路は次の通りである．

あれば Step 4. へ．

Step 3. そのランドマークでの取るべき行動から，今まで向かっていた方向より，次に向かうべID 列
行動列

30
右折40
左折02
後戻40
直進0a
後戻ID 列
行動列

40
左折30
右折15
後戻30
直進05
停止

き方向を計算し，その方向に向きを変えStep

1. へ．もし，行動が停止であれば，ナビゲー

05

start
30

goal

15

ションは終了．

Step 4. 過去に通ったことのあるランドマークか0aどうか調べる．過去に通ったことのあるラン4002

ドマークであれば，記憶してあるその次のラFig. 8

ンドマークがある方向に向きを変え Step 1.

Corridor Environment on Simulation

へ．過去に通ったことがなければ現在向かっている方向と反対方向に向きを変えて Step

7.1

障害物が少ない場合

1. へ．
結果をFig. 9に示す．シミュレーションはサンプ
この手順の Step 4. はエラーリカバリのために付加している．ロボットの性能上，障害物が多数存在するような環境で正確に経路を辿ることは困難であり，正確に辿るアルゴリズムのみならず，失敗を認めてリカバリを考慮に入れる方が，現実的であり開発も早いため付加した．エラーが過去に通ったことのないランドマークであった場合，単リングタイムが 10[msec] で，結果は 200[msec] 毎のロボットの位置と向きをプロットしている．ロボットのサイズは実際のロボットの大よそのサイズにあわせている．ランドマークの周囲に色塗られた
円はランドマークの有効範囲を示しており，内側の円が誤認識も含めて ID 受信可能な範囲で，外側の円が方向検出可能な範囲を示している．に反対方向だけではリカバリできないことがある．
今回は地図を持っていないために対処的な処置であるが，今後はロボットに地図を持たせて適切な障害物が少ない場合は障害物の影響並びに電子コンパスの角度分解能が悪いためふらついているが，通路沿い走行，分岐点の検出，分岐点での正方向に向けるようにする必要がある．

7.

シミュレーション結果

まず，シミュレーションにて本手法の実現可能性，並びに有効性を検討する．
作業環境は Fig. 8 に示すような通路状の環境に適切な位置にランドマーク（ID は Fig. 8 中に 16 進–6–Fig. 9

Simulation Result No. 1

Fig. 10

Simulation Result No. 2Fig. 11

Simulation Result No. 3

確な行動が達成されていることが分かる．また，達成されているが，非常に無駄が多い．エラーの階層構造切替手法により ID 受信可能範囲では障害原因を考えると，1) まずロボットの性能の低さが物回避行動が現れても速度が制限されているのが考えられる．2) 次に各層（= モジュール）の目的分かる．

が異なるという問題が考えられる．Ring Module
は向かってる方向とは関係なく障害物がない方向

7.2

障害物を増やした場合へ移動し，LMNavi Module はランドマークの方向

結果を Fig. 10 に示す．ランドマーク ID が 40 から 02 に向かう際に，ID40 付近で巡回を起こしている．これは障害物の位置が悪く，ID40 から離れ ID
認識可能範囲から出たときには，センサの位置関係からランドマークが見えなくなっているのであるが，まだ方向検出可能範囲から出ていないときに障害物を回避しようとして，横を向いたため再び ID40 のランドマークが見えてしまい巡回を起こしてしまう．これはランドマークセンサの配置や数，認識方法の問題で今後改良する必要がある．
このような巡回を起こしてはいるが，エラーリカへ移動する．Compass Module は設定された方位へ向きを変え移動する．このように目的が異なるため，例えば障害物が周囲に存在すれば，目的の方向に関係なく移動してしまい，次のランドマークとは別のランドマークへ移動してしまうことが起こる．これは層間の干渉がないためとも考えられるが，干渉がないことが開発を容易にし，更に機能の後付けや削除を可能にしている．したがって，層間に干渉を入れることはしたくない．よって，層間の目的を揃えるような枠組みを考える必要があるのではないかと，現在考えている．

バリの付加によりタスクは達成している．ただし，エラーリカバリをつければ必ずタスクを達成でき8.

るわけではないことを付け加えておく．

実験結果

大学校舎内の廊下にて実験を行った．環境中にID 番号が 40h・c2h のランドマークを配置し，障害7.3

障害物を更に増やした場合物を適当に置いた．ロボットのサンプリングタイ結果を Fig. 11 に示す．この場合はもっと深刻で多数のエラーが起こった．図では分かりにくいのでムは 10[msec] で行った．今回与えた経路は次の通りである．

辿ったランドマークのIDの順番を述べると，30→40
巡回 →02→30（エラー) →40→0a→40→30→15→

ID 列

40

c2

行動列

後戻停止

実験結果を Fig. 12 に示す．図中のランドマーク

30→40（エラー) →30→05，となった．
今回もエラーリカバリの付加によってタスクは付近の円はランドマークの認識範囲を示している．
ロボットが移動した経路は実際には計測できない–7–

2) コマンド入力，3) 音声による指示インタフェー
スであり，順次開発する予定である．

c2

40
start

10.
Fig. 12

おわりにExperimental Rsult
専門家以外の一般の方々でもロボットを容易にので，撮影したビデオより図中に書き起こしたた

扱えるように，座標系ではなくランドマークに頼め正確な経路ではない．

るナビゲーション手法を提案した．シミュレーショ

今回は分岐点での行動は行わせなかったが，通ンと実験により，本手法のナビゲーションが実現

路沿い走行，ランドマークでの正確な行動は達成可能であることを示した．また，行動決定手法のされた．しかし，行動規範型であるため経路に無問題点を明らかにし今後の課題を述べた．

駄が多い．特に障害物に向かっていく行動が多い
ことが確認された．これは，実際には 20cm 以上の参考文献

距離でも障害物は検知しているにも関わらず，前
述のとおり約20cm以下にならないと回避行動を取

1) Benjamin J. Kuipers and Yung-Tai Byun: “Aらないからである．その様な設定にする理由は，Robust, Qualitative Approach to a Spatial

階層構造が固定である故の問題からである．つまLearning Mobile Robot,” SPIE Sensor Fusion

り，障害物検知の感度を良くすると障害物がなく: Spatial Reasoning and Scene Interpretation,

ならない限り，常に障害物回避モジュールが起動

vol. 1003, pp. 366–375, 1988.

することになり，それより下位のモジュールに処

2) Rodney A.Brooks: “A Robust Layered Control

理が回らなくなるからである．したがって，固定System For A Mobile Robot,” IEEE Journal

階層の問題は単純に層に優先順位を持たせている

of Robotics and Automation, vol. RA-2, no. 1,

ことに問題があり，階層構造を切り替えるだけでpp. 14–23, 1986.

は不十分であることが分かる．

3) Joesph L.Jones and Anita M.Flynn:

9.

MobileRobots: Inspiration to Implementation. A K

今後の課題Peters,Ltd, 1993.

シミュレーション並びに実験により行動決定手法にまだ解決しなければならない課題が存在することが分かった．非干渉型の SA の固定階層構造の問題は SA の根本的な問題であり，単純に優先順位を持たせる手法とは別の階層構造を考える必要がある．
一方，行動決定に問題は抱えているいるものの，本稿で達成するべき課題は実現されたので，当初の目的のロボットを容易に扱えるインタフェースを開発する．現在考えているのは，1) 手書き地図，–8–4) 及川一美，高氏秀則，江丸貴紀，土谷武士，大久保重範： “赤外線モジュールランドマークによる自律移動ロボットのナビゲーション”， 第35 回計測自動制御学会北海道支部学術講演会
論文集，pp. 29–32，2003．