(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-15
(45)【発行日】2024-01-23
(54)【発明の名称】自律移動装置、プログラム、自律移動装置の操舵方法及び自律移動装置の調整方法
(51)【国際特許分類】
G05B 13/02 20060101AFI20240116BHJP
G05B 11/36 20060101ALI20240116BHJP
【FI】
G05B13/02 C
G05B13/02 D
G05B11/36 G
(21)【出願番号】P 2019224039
(22)【出願日】2019-12-11
【審査請求日】2022-10-17
(31)【優先権主張番号】P 2019050020
(32)【優先日】2019-03-18
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(72)【発明者】
【氏名】清水 文博
【審査官】田中 友章
(56)【参考文献】
【文献】特開2019-131374(JP,A)
【文献】特許第2676869(JP,B2)
【文献】米国特許出願公開第2014/0277895(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 13/00
G05B 11/00
(57)【特許請求の範囲】
【請求項1】
搬送対象物を目標軌道に沿って搬送する自律移動装置において、
前記目標軌道との追従誤差に基づく操舵指令に基づいて操舵制御する操舵手段と、
前記目標軌道への追従を乱す外乱を発生させ、外乱発生後の挙動に基づいて前記操舵手段のパラメータを調整する調整手段と、を備えること
を特徴とする自律移動装置。
【請求項2】
前記操舵手段の操舵制御の安定性を判定する安定判定手段を備え、
前記調整手段は、前記安定判定手段により安定性が不足していると判定された場合、前記調整を実施すること
を特徴とする請求項1に記載の自律移動装置。
【請求項3】
前記調整手段は、周期性がある前記外乱を発生させること
を特徴とする請求項2に記載の自律移動装置。
【請求項4】
搬送対象物を目標軌道に沿って搬送する自律移動装置において、
前記目標軌道との追従誤差に基づく操舵指令に基づいて操舵制御する操舵手段と、
前記搬送対象物にかかる積載状態を示す積載情報に基づいて前記操舵手段のパラメータを調整する調整手段と、
前記積載情報を外部から受信する通信手段と、を備えること
を特徴とする自律移動装置。
【請求項5】
前記積載情報は、少なくとも前記搬送対象物の重量と重心位置とを含むこと
を特徴とする請求項4に記載の自律移動装置。
【請求項6】
搬送対象物を目標軌道に沿って搬送する自律移動装置を制御するコンピュータを、
前記目標軌道との追従誤差に基づく操舵指令に基づいて操舵制御する操舵手段と、
前記目標軌道への追従を乱す外乱を発生させ、外乱発生後の挙動に基づいて前記操舵手段のパラメータを調整する調整手段
として機能させるためのプログラム。
【請求項7】
搬送対象物を目標軌道に沿って搬送する自律移動装置を制御するコンピュータを、
前記目標軌道との追従誤差に基づく操舵指令に基づいて操舵制御する操舵手段と、
外部から受信された前記搬送対象物にかかる積載状態を示す積載情報に基づいて前記操舵手段のパラメータを調整する調整手段
として機能させるためのプログラム。
【請求項8】
搬送対象物を目標軌道に沿って搬送する自律移動装置の操舵方法であって、
前記目標軌道との追従誤差に基づく操舵指令に基づいて操舵制御する操舵工程と、
前記目標軌道への追従を乱す外乱を発生させ、外乱発生後の挙動に基づいて前記操舵工程のパラメータを調整する調整工程と、を含むこと
を特徴とする自律移動装置の操舵方法。
【請求項9】
搬送対象物を目標軌道に沿って搬送する自律移動装置の操舵方法であって、
前記目標軌道との追従誤差に基づく操舵指令に基づいて操舵制御する操舵工程と、
外部から受信された前記搬送対象物にかかる積載状態を示す積載情報に基づいて前記操舵工程のパラメータを調整する調整工程と、を含むこと
を特徴とする自律移動装置の操舵方法。
【請求項10】
目標軌道との追従誤差に基づいて操舵制御する操舵手段を備え、目標軌道に沿って移動する自律移動装置の調整方法であって、
調整部が、前記目標軌道の形状が2点を最短距離で結ぶ形状でない所定区間における、前記自律移動装置の挙動に基づいて、前記操舵手段のパラメータを調整すること
を特徴とする自律移動装置の調整方法。
【請求項11】
前記所定区間における目標軌道の形状は、2点を最短距離で結ぶ線を中心線とした周期性を有する形状であること
を特徴とする請求項1
0に記載の自律移動装置の調整方法。
【請求項12】
前記周期性を有する形状は、正弦波であること
を特徴とする請求項1
1に記載の自律移動装置の調整方法。
【請求項13】
前記周期性を有する形状は、ジグザグ形状であること
を特徴とする請求項1
1に記載の自律移動装置の調整方法。
【請求項14】
前記周期性を有する形状は、複数の直線を非連続かつ互い違いに配置した形状であること
を特徴とする請求項1
1に記載の自律移動装置の調整方法。
【請求項15】
目標軌道との追従誤差に基づいて操舵制御する操舵手段を備え、目標軌道に沿って移動する自律移動装置であって、
前記目標軌道の形状が2点を最短距離で結ぶ形状でない所定区間における、前記自律移動装置の挙動に基づいて、前記操舵手段のパラメータを調整する調整部を有すること
を特徴とする自律移動装置。
【請求項16】
前記所定区間における目標軌道の形状は、2点を最短距離で結ぶ線を中心線とした周期性を有する形状であること
を特徴とする請求項1
5に記載の自律移動装置。
【請求項17】
前記周期性を有する形状は、正弦波であること
を特徴とする請求項1
6に記載の自律移動装置。
【請求項18】
前記周期性を有する形状は、ジグザグ形状であること
を特徴とする請求項1
6に記載の自律移動装置。
【請求項19】
前記周期性を有する形状は、複数の直線を非連続かつ互い違いに配置した形状であること
を特徴とする請求項1
6に記載の自律移動装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、自律移動装置、プログラム、自律移動装置の操舵方法及び自律移動装置の調整方法に関する。
【背景技術】
【0002】
従来、自律移動装置である無人搬送車(AGV:Automated Guided Vehicle)を用いて、倉庫内の搬送作業を自動化することは、世の中で広く検討されている。具体的には、無人搬送車に接続機構を設け、無人搬送車に搬送対象物(カゴ車)を接続して倉庫内を搬送する、という構成は既に知られている。
【0003】
特許文献1(特許第26768691号公報)には、自律移動装置である無人搬送台車におけるライン追従を安定させる技術が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1に開示された技術によれば、操舵制御のパラメータが固定値であり、貨物の積載重量や積み方により変動する操舵特性に対応できずに、積載状態によっては操舵制御が不安定になり発振することが懸念される。すなわち、貨物の積載重量や積み方が変化したとしても、安定した操舵制御を行う、という観点で改善の余地がある。
【0005】
本発明は、上記に鑑みてなされたものであって、貨物の積載重量や積み方が変化したとしても、安定した操舵制御を行うことを目的とする。
【課題を解決するための手段】
【0006】
上述した課題を解決し、目的を達成するために、本発明は、搬送対象物を目標軌道に沿って搬送する自律移動装置において、目標軌道との追従誤差に基づく操舵指令に基づいて操舵制御する操舵手段と、目標軌道への追従を乱す外乱を発生させ、外乱発生後の挙動に基づいて操舵手段のパラメータを調整する調整手段と、を備えることを特徴とする。
【発明の効果】
【0007】
本発明によれば、貨物の積載重量や積み方が変化したとしても、安定した操舵制御を行うことができる、という効果を奏する。その結果、自律移動装置におけるライン追従をより安定させる、という効果を奏する。
【図面の簡単な説明】
【0008】
【
図1】
図1は、第1の実施の形態にかかる搬送システムにおける無人搬送車とカゴ台車とを示す説明図である。
【
図2】
図2は、カゴ台車にIDパネルが配置された例を示す斜視図である。
【
図3】
図3は、搬送システムを適用することが想定される物流倉庫の一例を示す説明図である。
【
図4】
図4は、無人搬送車のコントローラのハードウェア構成の一例を示すブロック図である。
【
図5】
図5は、無人搬送車のコントローラが発揮する機能的構成例を示すブロック図である。
【
図7】
図7は、操舵制御のフィードバック制御ループを示す図である。
【
図8】
図8は、
図7の制御ループの周波数特性における望ましい開ループ特性(ゲインのみ)を示す図である。
【
図9】
図9は、安定判定手段における判定処理の流れを概略的に示すフローチャートである。
【
図11】
図11は、
図7に示す操舵制御の制御ループの周波数特性における閉ループ特性を示す図である。
【
図13】
図13は、貨物の積載の変化による車体操舵特性の変動を示すグラフである。
【
図14】
図14は、
図7に示した操舵制御の制御ループの周波数特性における閉ループ特性を示す図である。
【
図15】
図15は、第2の実施の形態にかかる無人搬送車の構成を示す図である。
【
図16】
図16は、制御ゲインParamのデータテーブルの一例を示す図である。
【
図17】
図17は、第3の実施の形態にかかる無人搬送車の構成を示す図である。
【
図19】
図19は、制御ゲインParamのデータテーブルの一例を示す図である。
【
図20】
図20は、第4の実施の形態の搬送システムに設けられている無人搬送車の全体構成を示す図である。
【
図21】
図21は、調整区間におけるライン形状を示す図である。
【
図22】
図22は、第4の実施の形態におけるカメラ画像の例を示す図である。
【
図23】
図23は、第4の実施の形態における操舵制御部の構成を示す図である。
【
図24】
図24は、第4の実施の形態における操舵制御の制御ループを示す図である。
【
図25】
図25は、第4の実施の形態における操舵制御の開ループ特性を示す図である。
【
図26】
図26は、第4の実施の形態における調整部の構成を示す図である。
【
図27】
図27は、第4の実施の形態における位相差検出を示す図である。
【
図28】
図28は、第4の実施の形態における閉ループ特性の変動を示す図である。
【
図29】
図29は、第4の実施の形態における組立ばらつきの例を示す図である。
【
図30】
図30は、第4の実施の形態における開ループ特性の変動を示す図である。
【
図31】
図31は、第4の実施の形態における最適化処理の動作の流れを示すフローチャートである。
【
図32】
図32は、第4の実施の形態における最適化処理の結果例を示す図である。
【発明を実施するための形態】
【0009】
以下に添付図面を参照して、自律移動装置、プログラム、自律移動装置の操舵方法及び自律移動装置の調整方法の実施の形態を詳細に説明する。
【0010】
(第1の実施の形態)
図1は、第1の実施の形態となる搬送システムに設けられている自走ロボット1とカゴ台車2とを示す説明図である。この第1の実施の形態は、連結対象であるカゴ台車2のような被牽引台車に自動で接続して牽引することで、カゴ台車2を所望の搬送先へ自動搬送する無人搬送車(AGV:Automated Guided Vehicle)としての自走ロボット1を、自律移動装置に適用した搬送システムの例である。自走ロボット1は、搬送物を積載するカゴ台車2に自動で連結する機能を持った自律移動装置である。これにより、自走ロボット1には積載が可能な構成を持たせることなく、簡易な移動装置によってカゴ台車2を牽引させることで、カゴ台車2に積載された多数の搬送物を搬送させることができる。
【0011】
図1に示すように、自走ロボット1は、装置本体であるロボット本体部100、磁気センサ3、検出装置であるコントローラ4、電力源(バッテリー)6、動力モータ7、モータドライバ8、第1のセンサである測域センサ9、連結装置10、駆動車輪71及び従動車輪72等を備える。測域センサ9は、自走ロボット1の周辺環境を認識する。
【0012】
第1の実施の形態の搬送システムでは、自走ロボット1の走行可能な経路の床面にガイドテープである磁気テープを設置し、磁気センサ3を用いて磁気テープを検出することにより自走ロボット1が走行可能な経路上に位置していることを認識することができる。床面にテープを設置する誘導方式としては、磁気テープを用いる構成(磁気式)に限らず、光学テープを用いる構成(光学式)としてもよい。光学テープを用いる場合は、磁気センサ3の代わりに反射センサやイメージセンサなどが利用できる。
【0013】
また、第1の実施の形態の搬送システムでは、二次元あるいは三次元地図と測域センサ9の検出結果との照合によって自己位置を認識する自律走行を行うことができる。測域センサ9は、物体にレーザ光を照射してその反射光から物体までの距離を測定する走査式のレーザ距離センサ(レーザレンジファインダ(LRF))である。以降において、測域センサ9をLRF9と表記する場合がある。
【0014】
なお、検出結果と二次元あるいは三次元地図との照合によって自己位置の認識に用いるセンサとしては、ステレオカメラやデプスカメラなども利用できる。
【0015】
自走ロボット1は、磁気センサ3や測域センサ9の検出結果に基づいてコントローラ4がモータドライバ8を介して動力モータ7の駆動を制御し、動力モータ7が駆動車輪71を回動駆動することで自走ロボット1が自律走行を行う。
【0016】
駆動車輪71は、左右2つ備えられ、ロボット本体部100を支える。駆動車輪71は、動力モータ7により左右独立の駆動速度MtgtL、MtgtRで駆動されることにより、自走ロボット1を前進、後退及び旋回させる。
【0017】
動力モータ7は、旋回速度指令Wtgt及び並進速度指令Ftgt(図示せず)にしたがって、駆動車輪71を回転駆動する。左右の駆動車輪71の外周の平均速度が、自走ロボット1の並進速度に相当し、左右駆動輪外周の速度差が自走ロボット1の旋回速度に比例した値となる。左右それぞれの駆動車輪71の駆動速度MtgtL、MtgtRは、以下の(1)式及び(2)式に基づいて算出する。なお、換算係数km2は、左右の駆動車輪71間の配置距離に比例して決まる係数とする。
【0018】
【0019】
【0020】
なお、自走ロボット1の旋回は、駆動車輪71の左右の回転速度差により実現する構成に限るものではなく、例えば車輪を操舵角で回動させて旋回する構成としてもよい。
【0021】
図1に示すように、カゴ台車2は、カゴ部20を保持する底板22と、四角形状の底板22の四隅に配置されたキャスタ23と、カゴ部20の側面に配置された識別部材であるIDパネル21とを備える。
【0022】
所定の場所に置かれたカゴ台車2には、認識用のマーカが表示されたIDパネル21が取り付けられている。マーカは、帯状部材である再帰反射テープ21b(
図2参照)等を用いて、カゴ台車2の識別番号情報(ID情報)、搬送位置などの搬送先情報、搬送の優先度情報がコード化されている。カゴ台車2の識別番号情報(ID情報)は、テーブル参照などによって認識することができる。
【0023】
自走ロボット1には、マーカ読取装置が設置されている。マーカ読取装置はID認識手段である測域センサ9と復号部とからなる。第1の実施の形態ではコントローラ4が復号部としての機能を有する。コントローラ4は、測域センサ9の検出結果からマーカのコードを認識する。コントローラ4の復号部では認識したマーカのコード情報をデコードすることで、カゴ台車2の認識番号情報、搬送先情報、優先度情報を得る。
【0024】
第1の実施の形態では、カゴ台車2に設置されたマーカとして再帰反射テープ21bを用いている。自走ロボット1は、周辺環境との距離を取得するレーザーレンジファインダ(LRF)等の測域センサ9を用いて読み取る。コントローラ4は、測域センサ9によって位置を認識したIDパネル21と測域センサ9との距離情報からIDパネル21の位置座標を算出する。算出したIDパネル21の位置座標を用いて、コントローラ4が動力モータ7の駆動制御を行うことで、自走ロボット1をカゴ台車2におけるIDパネル21正面の所定の位置に位置決めする。
【0025】
次に、IDパネル21について詳述する。
【0026】
ここで、
図2はカゴ台車2にIDパネル21が配置された例を示す斜視図である。
図2に示すように、IDパネル21は、カゴ台車2の正面の略中央部に配置される。より詳細には、IDパネル21は、自走ロボット1の測域センサ9に対して対向する位置に配置される(
図1参照)。IDパネル21は、カゴ台車2に着脱可能であって、カゴ台車2の中央の骨組み(縦棒)などの所定の位置に作業者によって設置される。なお、IDパネル21の角度は、カゴ台車2の角度と同義となるので、カゴ台車2の正面部分に対して平行になるように設置する。
【0027】
自走ロボット1がカゴ台車2を連結するために、自走ロボット1は、カゴ台車2と自走ロボット1との距離と角度を検出して、カゴ台車2に向かって走行を行う必要がある。しかしながら、測域センサ9でカゴ台車2の形状を認識する場合、カゴ台車2の積載状況により認識すべき形状が変化することから、カゴ台車2との距離と角度を正確に検出することは難しい。そこで、第1の実施の形態においては、カゴ台車2にIDパネル21を装着して、自走ロボット1に搭載した測域センサ9でIDパネル21を検出する。
【0028】
ここで、識別部材であるIDパネル21を技術的に説明する。IDパネル21はレーザーレンジファインダ(LRF)等の電磁波等を用いた検出装置により、検出対象の検出や識別を行うための識別部材である。電磁波等で検出するために、電磁波等が検出する検出面(例えば、IDパネル21の表面)を幾何学的に第一の方向(ここでは、水平方向)において少なくとも3つの領域に分割し、分割された複数の領域において、少なくとも隣り合う領域の電磁波等に対する反射率が異なるように設定されている。
【0029】
そして、検出装置は、電磁波等を照射した際の反射信号の強度の違いを利用して特定のパターン(信号)を検出することで、検出対象の検出や識別を行う。
【0030】
自走ロボット1を用いた第1の実施の形態の搬送システムは、物流倉庫などにおける、カゴ台車2などのキャスタ付き搬送対象を搬送する作業を自動化するものである。自走ロボット1による搬送動作は、次の(1)~(3)の三つの作業に分割される。
(1)仮置きエリアでの搬送対象の探索及び連結
(2)走行エリアの走行
(3)保管エリアでの保管場所探索と荷卸し
【0031】
図3は、搬送システムを適用することが想定される物流倉庫1000の一例を示す説明図である。
図3は、物流倉庫1000を天井側から見た床面を平面図として示している。
図3に示されたXY平面が床面と並行な面であり、Z軸が高さ方向を示している。
図3に示す物流倉庫1000において、上記(1)の仮置きエリアA1は、例えばピッキング(倉庫内での集荷作業)後の荷物や荷卸しされた荷物を整列しておく場所が想定される。上記(3)の保管エリアA2は、トラックバースの各方面別のトラック駐車位置前などのエリア、エレベータなどで他階へ移送する場合のエレベータ前エリアが想定される。また、上記(2)の走行エリアA3は
図3中の矢印によって仮置きエリアA1と保管エリアA2との往復経路を示す場所が想定される。
【0032】
自走ロボット1は、本線動作は床面に設置された磁気テープのラインをセンサで認識するライン認識による誘導方式で移動する。また、ラインの横にあるエリアマーク52を検出してエリアを判断する。また、IDパネル21には、搬送先となる保管エリアA2の情報と優先順位の情報が含まれている。
【0033】
図3に示すように、走行エリアA3には自走ロボット1の誘導用の磁気テープがライン状に設けられ、自走ロボット1が走行する走行ライン51が設けられている。また、走行エリアA3における仮置きエリアA1、保管エリアA2の開始位置と終了位置には、走行ライン51の近傍にエリアマーク52が配置されており、自走ロボット1がどのエリアに居るかを認識できるようになっている。
【0034】
後述する自走ロボット1が実行するプログラムでは、エリアごとに動作を指定できるようになっている。自走ロボット1は、仮置きエリアA1ではカゴ台車2の接続動作、保管エリアA2ではカゴ台車2の車庫入れ動作を行う。自走ロボット1は、カゴ台車2の保管エリアA2への搬送が完了した後、次のカゴ台車2を運ぶためにカゴ台車2が置かれた仮置きエリアA1に作業者の手を借りず自走により移動する。
【0035】
なお、第1の実施の形態においては、走行エリアA3に自走ロボット1の誘導用の磁気テープによる走行ライン51を設けるようにしたが、これに限るものではない。例えば、走行エリアA3には走行ライン51は必須ではなく、所定の間隔でエリアマークが設置されていてもよい。この場合、自走ロボット1は、エリアマークの間は駆動車輪71及び従動車輪72の回転数等から自己位置を判断して走行する。
【0036】
第1の実施の形態においては、仮置きエリアA1と保管エリアA2とが走行ライン51のすぐ横にある構成である。自走ロボット1は、走行ライン51を走行したまま、仮置きエリアA1や保管エリアA2のエリア内の探索を行う。仮置きエリアA1内に搬送対象となるカゴ台車2を見つけたら、走行ライン51上からカゴ台車2への連結動作に移行する。また、保管エリアA2に対しても、走行ライン51上から空き番地を探索して、カゴ台車2の車庫入れ動作を行う。
【0037】
加えて、
図3に示す物流倉庫1000において、保管エリアA2に対して走行ライン51を挟んだ向かい側であって保管エリアA2から離間した位置には、反射材である再帰反射テープ53が複数設置されている。複数の再帰反射テープ53は、自走ロボット1の測域センサ9が検出できる位置に設置されている。自走ロボット1は、複数の再帰反射テープ53の設置情報をもとに、自己位置推定を行う。
【0038】
次に、自走ロボット1のコントローラ4について説明する。
【0039】
ここで、
図4は自走ロボット1のコントローラ4のハードウェア構成の一例を示すブロック図である。コントローラ4は、
図4に示すように、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などの制御装置11と、ROM(Read Only Memory)やRAM(Random Access Memory)などの主記憶装置12と、SSD(Solid State Drive)などの補助記憶装置13と、ディスプレイなどの表示装置14と、キーボードなどの入力装置15と、無線通信インタフェイスなどの通信装置16と、を備えており、通常のコンピュータを利用したハードウェア構成となっている。
【0040】
制御装置11は、主記憶装置12や補助記憶装置13に記憶されている各種プログラムを実行することで、コントローラ4(自走ロボット1)全体の動作を制御し、後述する各種機能部を実現する。
【0041】
自走ロボット1のコントローラ4で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD-ROM、フレキシブルディスク(FD)、CD-R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
【0042】
さらに、自走ロボット1のコントローラ4で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、自走ロボット1のコントローラ4で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
【0043】
次に、自走ロボット1のコントローラ4の制御装置11が主記憶装置12や補助記憶装置13に記憶されたプログラムを実行することによって、自走ロボット1のコントローラ4が発揮する機能について説明する。なお、ここでは従来から知られている機能については説明を省略し、第1の実施の形態の自走ロボット1のコントローラ4が発揮する特徴的な機能について詳述する。
【0044】
なお、自走ロボット1のコントローラ4が発揮する機能の一部または全部をIC(Integrated Circuit)などの専用の処理回路を用いて構成してもよい。
【0045】
図5は、自走ロボット1のコントローラ4が発揮する機能的構成例を示すブロック図である。
図5に示すように、自走ロボット1のコントローラ4は、操舵手段111と、安定判定手段112と、調整手段113と、を備える。
【0046】
操舵手段111は、目標軌道との追従誤差に基づく操舵指令に基づいて操舵制御する。
【0047】
安定判定手段112は、操舵手段111の操舵制御の安定性を判定する。
【0048】
調整手段113は、安定判定手段112により安定性が不足していると判定された場合、操舵手段111のパラメータの調整を実施する。
【0049】
次に、自走ロボット1の操舵のフィードバック制御(操舵制御)について説明する。
【0050】
一般に、ライントレース型の無人搬送車(AGV:Automated Guided Vehicle)である自走ロボット1においては、左右の駆動輪の車輪径誤差、組付け誤差があることや、特に差動駆動型の場合はモータの回転数の個体差があることから、直進の走行指示に対してもわずかに曲がっていくことが有るため、直進する際においても常に左右へ操舵して進行方向を修正する必要がある。そこで、自走ロボット1は、軌道上をトレースして移動する際に、常に左右へ操舵することで進行方向を修正するフィードバック制御を行っている。
【0051】
しかしながら、搬送対象物(カゴ台車2)に積載された荷物の積載重量や積み方により搬送対象物(カゴ台車2)と連結されて自律移動する自走ロボット1の操舵特性は変動する。
【0052】
なお、操舵のフィードバック制御では、左右へ操舵する周期(左右へ操舵するスピード)の逆数が周波数であり、軌道との誤差に応じて左右へ操舵する舵角の大きさを決定する係数がゲインとなる。
【0053】
そこで、貨物の積載重量や積み方に対応した操舵制御を行うことが重要となる。
【0054】
まず、操舵手段111について説明する。
【0055】
ここで、
図6は操舵手段111の構成を示す図である。
図6に示すように、操舵手段111は、磁気センサ3を用いて自走ロボット1と床面の磁気テープとのライン位置誤差dPを検出する。操舵手段111は、検出したライン位置誤差dPに基づいて、比例微分制御(PD制御)により算出した旋回速度指令Wtgtを出力する。なお、床面の磁気テープとの誤差検出はライン位置誤差dPに限るものではなく、角度誤差も出力する構成、または角度誤差のみを出力する構成としてもよい。
【0056】
また、
図6に示すように、操舵手段111は、外乱加算部35と、比例ゲイン31と、微分ゲイン32と、微分処理部33と、出力加算部34と、を備える。
【0057】
外乱加算部35は、ライン位置誤差dPと外乱Noiseとを加算して出力する。外乱Noiseについての詳細は後述する。
【0058】
比例ゲイン31は、外乱加算部35の出力に比例パラメータKpを乗じて出力する。比例パラメータKpは、後述する制御ゲインParamに従って変更される。制御ゲインParamは、比例パラメータKpの値とする。
【0059】
微分ゲイン32は、比例ゲイン31の出力に微分パラメータKdを乗じて出力する。なお、第1の実施の形態においては、微分パラメータKdは固定とするが、比例ゲイン31と同様に制御ゲインParamにより可変としてもよい。
【0060】
微分処理部33は、微分ゲイン32の出力を微分して出力する。なお、微分処理部33は、所定周期ごとの差分を出力するものであってもよい。
【0061】
出力加算部34は、比例ゲイン31の出力と微分処理部33の出力とを加算して、旋回速度指令Wtgtとして出力する。
【0062】
ここで、比例パラメータKp及び微分パラメータKdについて、
図7及び
図8を参照して説明する。
【0063】
図7は、操舵制御のフィードバック制御ループを示す図である。
図7においては、操舵制御特性は操舵手段111の周波数特性を示し、車体操舵特性は旋回速度指令Wtgtから実位置Preまでの周波数特性を示すものとする。ラインへの追従誤差がゼロを目標とするならば、目標位置Ptgtはゼロであり、実位置Preを符号反転した値がライン位置誤差dPと同義になる。なお、車体操舵特性は、実測やシミュレーションにより事前に得るものとする。
【0064】
図8は、
図7の制御ループの周波数特性における望ましい開ループ特性(ゲインのみ)を示す図である。
図8に示されるように、車体操舵特性(点線)と操舵制御特性(一点鎖線)の合計が開ループ特性(実線)となる。操舵手段111の比例パラメータKp及び微分パラメータKdは、開ループ特性が所定の要求仕様値(交叉周波数fc、折れ点fl)で表現される特性になるように、かつ十分な安定性を確保した上で、決定される。
【0065】
なお、操舵手段111の構成は、PD制御に限るものではなく、目標軌道への追従誤差に応じて操舵指令を随時更新するフィードバック制御系の制御器であればよい。
【0066】
次に、安定判定手段112について説明する。
【0067】
安定判定手段112は、ライン位置誤差dPに基づいて操舵制御の安定性が十分(良)または不足(否)を判定して、判定結果Stblとして出力する。
【0068】
操舵制御の安定性が十分(良)または不足(否)の安定判定は、フィードバック制御の安定性の指標である位相余裕が不足するに従って一定周期で発振しやすくなることを利用して判定する。ところが、発振する周波数は制御ループの実際の交叉周波数近傍(設計値の交叉周波数fcと等しいとは限らない)である。そこで、第1の実施の形態においては、ライン位置誤差dPを監視して、後述する判定処理を周期的に実行する。
【0069】
なお、安定判定は、第1の実施の形態で説明したものに限るものでなく、例えばフーリエ変換によるスペクトル解析を用いて振幅の大小を検出する構成にしてもよい。
【0070】
ここで、
図9は安定判定手段112における判定処理の流れを概略的に示すフローチャートである。
図9に示すように、安定判定手段112は、まず、初期化処理を行う(ステップS1)。初期化処理は、例えば、判定結果Stblを操舵制御の安定性が十分(良)である「OK」とするとともに、連続発振カウントをクリア(N=0)する。
【0071】
次いで、安定判定手段112は、所定時間内におけるライン位置誤差dPの符号の反転が有り(ステップS2のYes)、ライン位置誤差dPの絶対値(振幅)が所定値よりも大きい場合(ステップS3のYes)、連続発振カウントNを1インクリメントする(ステップS4)。すなわち、安定判定手段112は、所定時間内における符号の反転の有無にて、周期的な振れを検出するようにしている。なお、所定時間は、発振する周波数の推測値に基づいて決定する。
【0072】
なお、ライン位置誤差dPの絶対値(振幅)が所定値より大きいこと(ステップS3)を判定に加えるようにしたのは、環境からの外乱により乱されることを除外するためである。
【0073】
一方、安定判定手段112は、所定時間内におけるライン位置誤差dPの符号の反転が無く(ステップS2のNo)、前回の符号反転から所定時間経過していない場合(ステップS5のNo)、ステップS2に戻る。また、安定判定手段112は、所定時間内におけるライン位置誤差dPの符号の反転が無く(ステップS2のNo)、前回の符号反転から所定時間経過している場合(ステップS5のYes)、ステップS1に戻る。
【0074】
また、安定判定手段112は、所定時間内におけるライン位置誤差dPの符号の反転が有っても(ステップS2のYes)、ライン位置誤差dPの絶対値が所定値よりも大きくなく(ステップS3のNo)、前回の符号反転から所定時間経過していない場合(ステップS6のNo)、ステップS3に戻る。また、安定判定手段112は、所定時間内におけるライン位置誤差dPの符号の反転が有り(ステップS2のYes)、ライン位置誤差dPの絶対値が所定値よりも大きくなく(ステップS3のNo)、前回の符号反転から所定時間経過している場合(ステップS6のYes)、ステップS1に戻る。
【0075】
安定判定手段112は、上述のようなステップS2~S6の処理を、連続発振カウントNが所定値よりも大きいと判断するまで(ステップS7のYes)、繰り返す。
【0076】
安定判定手段112は、連続発振カウントNが所定値よりも大きいと判断すると(ステップS7のYes)、振れが継続的である(つまり発振と判定し)、操舵制御の安定性が不足(否)であるとして、判定結果Stblを操舵制御の安定性が不足(否)である「NG」とし(ステップS8)、処理を終了する。
【0077】
次に、調整手段113について説明する。
【0078】
調整手段113は、安定判定手段112による判定結果Stblに従って操舵手段111のパラメータの自動調整を実行する。自動調整は、操舵制御の制御ループに注入する外乱Noiseを発生して自走ロボット1のライン追従を乱し、その挙動に応じて操舵手段111のパラメータを変更する制御ゲインParamを出力する。
【0079】
ここで、
図10は調整手段113の構成を示す図である。
図10に示すように、調整手段113は、外乱発生部61と、最適化処理部62と、位相差検出部63と、を備える。
【0080】
外乱発生部61は、後述する調整指令Adjの外乱発生要求に従って外乱Noiseを出力する。外乱Noiseは、所定周波数fnの正弦波である。なお、外乱Noiseは、操舵手段111における操舵制御の制御ループに加算され、ラインへの追従を乱すが、正弦波振幅を小さくすれば実用上の走行への影響はない。また、外乱Noiseは、正弦波に限るものではなく、矩形波や、周期性のないステップ状の信号としてもよい。
【0081】
最適化処理部62は、安定判定手段112による判定結果Stblが否であれば、外乱Noiseの発生指令である調整指令Adjを出力し、後述する位相差dTHにもとづいて制御ゲインParamを出力する。
【0082】
ここで、制御ゲインParamの最適化の動作について説明する。
図11は、
図7に示す操舵制御の制御ループの周波数特性における閉ループ特性を示す図である。
図11においては、実線が目標とする特性を示し、点線が車体操舵特性にゲイン低下側の変動があった場合を示し、一点鎖線が車体操舵特性にゲイン増大側の変動があった場合の例を示している。
【0083】
図11に示すように、交叉周波数fc付近に設定されたNoise周波数fnの外乱Noiseを注入すると、その応答に相当するライン位置誤差dPの位相差は、ゲイン変動がなければ目標位相差Ph0であり、ゲイン増大に伴って目標位相Ph0より進み、反対にゲイン低下に伴って目標位相Ph0より遅れることが、
図11の下段プロットより分かる。最適化の処理は、この特性を利用する。
【0084】
最適化処理部62は、位相差dTHが目標位相Ph0より大きい場合、制御ゲインParamの値を下げる。また、最適化処理部62は、位相差dTHが目標位相Ph0より小さい場合、制御ゲインParamの値を上げる。最適化処理部62は、この操作を位相差dTHが目標位相Ph0を中心とした所定範囲に収まるまで繰り返す。これにより、
図11のゲイン変動なしの場合と同等の閉ループ特性を得ることができる。
【0085】
位相差検出部63は、ライン位置誤差dPと外乱Noiseとの位相差を検出して、位相差dTHとして出力する。
【0086】
ここで、位相差検出部63における位相差検出について説明する。
図12は、位相差検出の一例を示す図である。
図12に示すように、位相差検出部63は、ライン位置誤差dPを符号反転した信号及び外乱Noiseのゼロクロス点の時間差Delayを計測する。第1の実施の形態においては、目標位置Ptgt=0のため、ライン位置誤差dPの符号反転は、実位置Preに相当する。このとき、ライン位置誤差dP及び外乱Noiseは周波数fnの正弦波であり、時間差Delayは数回の測定の平均値とすればより精度の高い値が得られる。
【0087】
次に、位相差検出部63は、以下の(3)式により、時間差Delayから位相差dTHを算出して出力する。
【0088】
【0089】
なお、位相差検出部63による位相差検出は、上述した例に限るものではなく、例えばNoise周波数fnのみのフーリエ変換、具体的には、外乱Noiseと1/4周期位相の進んだ信号をライン位置誤差dPに乗じて積分する手法でもよい。
【0090】
ここで、第1の実施の形態における自走ロボット1の操舵のフィードバック制御(操舵制御)の効果について説明する。
【0091】
自走ロボット1がけん引する搬送対象物(カゴ台車2)には貨物が積載される。貨物の積載重量及び積載位置により、搬送対象物(カゴ台車2)単体と比較して、車重、回転中心周りのイナーシャ(回転系慣性モーメント)、重心(CG:Center of Gravity)位置が変動する。これにより、
図8に示す車体操舵特性(点線)が変動する。
【0092】
ここで、
図13は貨物の積載の変化による車体操舵特性の変動を示すグラフである。
図13に示すように、貨物の積載が変化した場合、すなわち搬送対象物(カゴ台車2)の重心(CG)と回転中心(CR)との距離Lwが変化した場合、車体操舵特性のゲイン変動が発生し、制御ループの特性も変動することになる。
【0093】
ここで、制御ループのゲイン特性変動と安定性の関係を説明する。
図14は、
図7に示した操舵制御の制御ループの周波数特性における閉ループ特性を示す図である。
図14においては、実線が目標とする特性を示し、点線が車体操舵特性にゲイン低下側の変動があった場合を示し、一点鎖線が車体操舵特性にゲイン増大側の変動があった場合の例を示している。ゲインが0[dB]と交わる周波数を交叉周波数fc、交叉周波数fcの位相と-180[deg]との差を位相余裕PMとする。位相余裕PMは、制御の安定性の目安となる。
【0094】
図14に示すように車体操舵特性にゲイン変動があれば、増大/低下側ともに位相余裕PMが減少して安定性が低下する可能性がある。位相余裕PMが低下すると、制御が不安定となり発振するなど不具合が発生する。
【0095】
そこで、第1の実施の形態においては、調整手段113による操舵手段111の制御パラメータの調整を行うことにより、貨物積載変化によるゲイン変動があっても、制御ループを目標の特性に自動調整することができるので、自走ロボット1によって搬送対象物(カゴ台車2)をして搬送することができる。
【0096】
(第1の実施の形態の効果)
このように第1の実施の形態によれば、自走ロボット1がけん引する搬送対象物(カゴ台車2)の積載重量や積み方に起因する操舵制御の安定性不足を検出して、操舵制御の制御ループに外乱ノイズ(信号)を加えることで、実走行への影響がない程度に自走ロボット1のライン追従をわざと乱し、乱れた挙動に応じて操舵制御のパラメータを自動調整するよう構成したので、貨物の積載重量/積み方が変化しても安定して搬送することができ、搬送対象物(カゴ台車2)を搬送する自走ロボット1の走行中の操舵制御の安定性不足による操舵のフィードバック制御(操舵制御)の発振、換言すると自走ロボット1の走行中のふらつきを抑制することができる。
【0097】
また、例えば倉庫内の狭い通路を走行する際においてはこのふらつきの影響は大きくなるので、ふらつきを抑制することで狭い通路においても搬送対象物(カゴ台車2)を安定して搬送することができる。
【0098】
また、操舵制御の制御ループに外乱ノイズ(信号)を加えることによる自走ロボット1の乱れた挙動に応じて操舵制御のパラメータを自動調整するよう構成しているので、積載貨物の重量等の事前情報なく上記の効果を提供することができる。
【0099】
さらに、操舵制御の制御ループに加える外乱ノイズ(信号)を周期性の信号としたので、平均化により操舵制御のパラメータの自動調整を精度よく実現することができる。
【0100】
なお、操舵制御のパラメータの自動調整は、ライントレース型の自律走行に限らず、自走ロボット1自身が走行するラインを決めて走行する自律走行にも適用可能である。
【0101】
また、第1の実施の形態においては、貨物を自走ロボット1がけん引する搬送対象物(カゴ台車2)に積載する形態としたが、これに限るものではなく、貨物を自走ロボット1に直接積載する形態であってもよい。
【0102】
(第2の実施の形態)
次に、第2の実施の形態について説明する。
【0103】
第2の実施の形態の搬送システムは、自走ロボット1に積載される貨物の重量に関連する情報を検出して、あらかじめ最適に求められた操舵制御のパラメータを検出した情報に基づいて選択して自動調整する点が、第1の実施の形態と異なる。以下、第2の実施の形態の説明では、第1の実施の形態と同一部分の説明については省略し、第1の実施の形態と異なる箇所について説明する。
【0104】
ここで、
図15は第2の実施の形態にかかる自走ロボット1の構成を示す図である。
図15に示す自走ロボット1は、貨物を直接積載する形態である。
図15に示すように、自走ロボット1は、貨物を直接積載する積載部110、重量検出部(前)70f、重量検出部(後)70r、積載情報生成手段114を更に備える。なお、
図15においては、自走ロボット1の従動車輪72が進行方向の前方に位置し、駆動輪71が進行方向の後方に位置している。
【0105】
重量検出部(前)70fは、積載部11の下部かつ自走ロボット1の進行方向に対してできる限り前方に配置され、積載部11による荷重を検出して、積載重量(前)mfとして出力する。
【0106】
重量検出部(後)70rは、積載部11の下部かつ自走ロボット1の進行方向に対してできる限り後方に配置され、積載部11による荷重を検出して、積載重量(後)mrとして出力する。
【0107】
積載情報生成手段114は、積載重量(前)mf及び積載重量(後)mrに基づいて、積載情報Infoを生成して出力する。積載情報Infoは、積載部11に積載された貨物の重量及び重心位置の情報を含むものとする。貨物の重量は、積載重量(前)mf及び積載重量(後)mrの和から容易に算出することができる。貨物の重心位置は、積載重量(前)mf及び積載重量(後)mrの比と、重量検出部(前)70f及び重量検出部(後)70rが配置された間隔から算出することができる。
【0108】
調整手段113は、積載情報Infoに基づいて、操舵手段111の操舵制御のパラメータを変更する制御ゲインParamを出力する。
【0109】
図16は、制御ゲインParamのデータテーブルの一例を示す図である。調整部66は、
図16に示すデータテーブルに従って、制御ゲインParamの値を選択する。
図16に示すデータテーブルは、積載情報Infoが含む貨物の重量及び重心位置の値の組み合わせそれぞれに対して最適に設定された値であり、自走ロボット1の車重や重心位置の既知の情報も含め、あらかじめシミュレーションや実測により設定している。
【0110】
(第2の実施の形態の効果)
このように第2の実施の形態によれば、自走ロボット1に積載される貨物の重量に関連する情報を検出して、検出した情報の値に基づいて操舵制御のパラメータを、あらかじめ最適に求められたデータテーブルから選択して自動調整するよう構成したので、貨物の積載重量/積み方が変化しても安定して搬送することができる。
【0111】
また、少なくとも貨物の重量と重心位置を含む情報に基づいて高精度に最適な操舵制御のパラメータを選択できるため、貨物の安定した搬送を信頼性高く実現することができる。
【0112】
また、積載貨物について複数箇所で重量検出して、貨物の重量と重心を算出するよう構成したので、積載の変化を直ちに検出できるため、貨物の安定した搬送を積載状態が変化しても直ちに実現することができる。
【0113】
(第3の実施の形態)
次に、第3の実施の形態について説明する。
【0114】
第3の実施の形態の搬送システムは、自走ロボット1に積載される貨物の重量を含む自走ロボット1の総車重に関連する情報を検出して、あらかじめ最適に求められた操舵制御のパラメータを検出した情報に基づいて選択して自動調整する点が、第1の実施の形態または第2の実施の形態と異なる。以下、第3の実施の形態の説明では、第1の実施の形態または第2の実施の形態と同一部分の説明については省略し、第1の実施の形態または第2の実施の形態と異なる箇所について説明する。
【0115】
ここで、
図17は第3の実施の形態にかかる自走ロボット1の構成を示す図である。
図17に示す自走ロボット1は、貨物を直接積載する形態である。
図17に示すように、自走ロボット1は、通信手段120を更に備える。なお、
図17においては、自走ロボット1の従動車輪72が進行方向の前方に位置し、駆動輪71が進行方向の後方に位置している。
【0116】
通信手段120は、後述する総重量(前)Mf及び総重量(後)Mrを無線通信により後述する送信部202から受信し、受信した情報を出力する。
【0117】
ここで、総重量(前)Mf、総重量(後)Mrについて説明する。例えば、自走ロボット1の目標軌道上に車重検出部201を備える。車重検出部201は、上部からの荷重を計測する機能を持ち、計測した値を出力する。なお、車重検出部201は、目標軌道上において自走ロボット1への貨物の積み下ろしが実施される場所の直後に設置されることが望ましい。
【0118】
ここで、
図18は車重検出手法を示す図である。
図18(a)に示すように、車重検出部201は、自走ロボット1の従動車輪72が上部にきたときに測定した荷重を総車重(前)Mfとして出力する。また、
図18(b)に示すように、車重検出部201は、自走ロボット1の駆動輪71が上部にきたときに測定した荷重を総車重(後)Mrとして出力する。
【0119】
また、車重検出部201には、無線通信により情報を送信する送信部202が接続されている。送信部202が送信する情報は、総重量(前)Mf及び総重量(後)Mrである。なお、送信部202の通信の方式は、無線通信に限るものではなく、自走ロボット1に伝達できる手段であればよい。
【0120】
調整手段113は、通信手段120により受信した総重量(前)Mf及び総重量(後)Mrに基づいて、操舵手段111の操舵制御のパラメータを変更する制御ゲインParamを出力する。
【0121】
図19は、制御ゲインParamのデータテーブルの一例を示す図である。調整部67は、
図19に示すデータテーブルに従って、制御ゲインParamの値を選択する。
図19に示すデータテーブルは、総重量(前)Mf及び総重量(後)Mrの値の組み合わせそれぞれに対して最適に設定された値であり、あらかじめシミュレーションや実測から設定している。
【0122】
(第3の実施の形態の効果)
このように第3の実施の形態によれば、自走ロボット1に積載される貨物の重量を含む自走ロボット1の総車重に関連する情報を検出して、検出した情報の値に基づいて操舵制御のパラメータを、あらかじめ最適に求められたデータテーブルから選択して自動調整するよう構成したので、複数の自走ロボット1で車重検出部201を共用できるため、安価な構成で貨物の安定した搬送を実現することができる。
【0123】
(第4の実施の形態)
次に、第4の実施の形態について説明する。
【0124】
上述の特許文献1(特許第26768691号公報)に開示された技術の場合、操舵制御のパラメータが固定値となっている。このため、貨物の積載重量又は積み方により変動し、部品又は組付けのばらつきにより変動する車体操舵特性又はライン追従の誤差検出特性に対応困難となり、積載状態によっては操舵制御が不安定になり発振することが懸念される。
【0125】
すなわち、特許文献1に開示されている技術の場合、貨物の積載重量又は積み方が変化しても、また、部品又は組付けのばらつきが存在しても、安定した操舵制御を可能とする、という観点で改善の余地がある。
【0126】
この第4の実施の形態の搬送システムの場合、貨物の積載重量又は積み方が変化しても、また、部品又は組付けのばらつきが存在しても、安定した操舵制御を可能とし、自律移動装置における、より安定したライン追従を可能としている。
【0127】
第4の実施の形態の搬送システムに設けられている無人搬送車とその調整方法について説明する。この無人搬送車は、貨物を積載して、床面または地面に敷設された目標軌道に追従走行する。目標軌道は、例えば磁気又は光学的に検出可能なライン又はマーカ等で形成される。一例ではあるが、第4の実施の形態の場合、カメラで撮影可能なラインを用いている。
【0128】
図20は、第4の実施の形態の搬送システムに設けられている自走ロボット210の構成を示す図である。自走ロボット210は、積載部211、自在キャスタ212、位置検出部220、操舵制御部230、モータユニット241、駆動輪242及び調整部260を備えた無人搬送車(AGV:Automated Guided Vehicle)であり、自律移動装置の一例である。
【0129】
図21は、自走ロボット210が追従する目標軌道であるライン225を上面から見た状態の図である。ライン225は、略連続する線で構成され、その一部に周期形状をもつ調整区間を備える。周期形状は、形状Aに示す正弦波、形状Bに示すジグザグ形状、形状Cに示す複数の直線を非連続かつ互い違いに配置(千鳥配置)した形状のいずれかとする。なお、周期性がある形状であれば、形状A~形状C以外の形状でもよい。
【0130】
周期形状の振れ幅Ampは、後述する位置検出部220の検出可能範囲に収まる大きさである。一例ではあるが、第4の実施の形態においては、後述するカメラの視野範囲に入る大きさとなっている。
【0131】
なお、調整区間全体の長さLall及び1周期あたりの長さである周期長さLprdについては後述する。また、ライン225は、目標軌道の一例であり、形状A、形状B及び形状Cは、周期性を持つ形状の一例である。
【0132】
調整マーク226は、調整区間の開始点及び終了点近傍に配置される。一例ではあるが、調整区間の開始点においては、自走ロボット210の進行方向に対してライン225の右に調整マーク226を配置している。また、調整区間の終了点においては、自走ロボット210の進行方向に対してライン225の左に調整マーク226を配置している。なお、調整マーク226は、位置検出部220が調整区間の開始点及び終了点を検出できれば、どのような形状及び配置としてもよい。
【0133】
次に、自走ロボット210の構成について説明する。積載部211は、自走ロボット210における、貨物を積載する場所である。籠又は囲いが一般的だが、特に形状を限定するものではない。自在キャスタ212は、車輪であり、自走ロボット210の車体を支え、かつ、後述する駆動輪242の走行及び操舵を阻害しないよう、回動自在に設けられている。位置検出部220は、カメラを備え、床に敷設されたライン225を撮影して、撮影した画像から自走ロボット210とライン225の誤差を検出する。
【0134】
図22は、位置検出部220のカメラで撮影された画像の一例を示す図である。
図22の上下が自走ロボット210の前後に相当する。また、水平方向の中心は、自走ロボット210の車体中心と一致するよう構成されている。位置検出部220は、撮影されたライン225のライン画像221の中心と水平方向の中心との距離を画像処理で算出し、ライン位置誤差dPとして出力する。
【0135】
調整マーク画像222は、撮影された調整マーク226である。位置検出部220は、画像処理により調整マーク226を検出する。位置検出部220は、調整マーク画像222がライン画像221に対して左側に存在するか、又は、右側に存在するかにより、開始点の調整マーク226であるか、又は、終了点の調整マーク226であるかを判別する。調整マーク画像222がライン画像221に対して左側に存在するということは、調整マーク画像222は、開始点の調整マーク画像222であることを意味する。この場合、位置検出部220は、調整開始の指令(調整指令Trg)を出力する。これに対して、調整マーク画像222がライン画像221に対して右側に存在するということは、調整マーク画像222は、終了点の調整マーク画像222であることを意味する。この場合、位置検出部220は、調整終了の指令(調整指令Trg)を出力する。
【0136】
なお、ラインとの誤差検出はライン位置誤差dPに限るものではなく、ライン画像221の角度を算出して角度誤差も出力する構成、又は、角度誤差のみを出力する構成としてもよい。
【0137】
操舵制御部230は、ライン位置誤差dPに基づいて、比例微分制御(PD(Proportional Differential)制御)により算出した旋回速度指令Wtgtを出力する。操舵制御部230は、
図23に示す構成を有している。この
図23において、比例ゲイン231は、ライン位置誤差dPに比例パラメータKpを乗算処理して出力する。比例パラメータKpは、後述する制御ゲインParamで変更される。制御ゲインParamは、比例パラメータKpの値とする。
【0138】
微分ゲイン232は、比例ゲイン231の出力に微分パラメータKdを乗算処理して出力する。なお、微分パラメータKdは、固定でもよいし、比例ゲイン31と同様に制御ゲインParamにより可変としてもよい。
【0139】
微分処理部233は、微分ゲイン232の出力を微分して出力する。なお、所定周期毎の差分を出力してもよい。
【0140】
出力加算部234は、比例ゲイン231の出力と微分処理部233の出力を加算して、旋回速度指定Wtgtとして出力する。
【0141】
比例パラメータKp及び微分パラメータKdについて、
図24及び
図25を用いて説明する。
図24は、操舵制御のフィードバック制御ループのブロック図である。誤差検出特性252は、位置検出部220の周波数特性を示し、操舵制御特性253は、操舵制御部230の周波数特性を示す。また、車体操舵特性254は、旋回速度指令Wtgtから実位置Preまでの周波数特性を示す。なお、ラインへの追従誤差がゼロを目標とするならば、目標位置Ptgtはゼロであり、実位置Preを符号反転して加算器251に供給する。そして、位置検出部220で検出した値がライン位置誤差dPになる。
【0142】
図25は、
図24の制御ループの周波数特性における望ましい開ループ特性(ゲインのみ)を示す図である。誤差検出特性(二点鎖線)、車体操舵特性(点線)及び操舵制御特性(一点鎖線)の合計が開ループ特性(実線)となる。開ループ特性が、所定の要求仕様値(交叉周波数fc、折れ点fl)で表現される特性になり、かつ、十分な安定性を確保した上で、操舵制御部の比例パラメータKp及び微分パラメータKdが決定される。
【0143】
なお、誤差検出特性は、位置検出部220のカメラと路面の距離又はカメラの視野範囲等から算出する。また、車体操舵特性は、実測又はシミュレーションにより事前に得ることができる。また、操舵制御部230は、PD制御を行う構成以外でも、例えば目標軌道への追従誤差に応じて操舵指令を随時更新するフィードバック制御を行う構成でもよい。
【0144】
自走ロボット210の左右にそれぞれ設けられた駆動輪242は、自走ロボット210の車体を支持する。駆動輪242は、後述するモータユニットにより左右独立の駆動速度MtgtL、MtgtRで駆動される。これにより、自走ロボット210の前進制御、後退制御及び旋回制御が行われる。
【0145】
モータユニット241は、旋回速度指令Wtgt及び並進速度指令Ftgtに従って、駆動輪を回転駆動する。左右の駆動輪242の外周の平均速度が、自走ロボット210の並進速度に相当し、左右駆動輪外周の速度差が自走ロボット210の旋回速度に比例した値となる。左右それぞれの駆動速度MtgtL、MtgtRは、以下の(4)式及び(5)式に基づいて算出される。
【0146】
【0147】
【数5】
換算係数km2は、左右の駆動輪42間の配置距離に比例して決まる係数である。なお、モータユニット241及び駆動輪242は、操舵部の一例である。
【0148】
また、自走ロボット210の旋回は、本実施例の駆動輪42の左右の回転速度差により実現する構成以外でも、例えば車輪を操舵角で回動させて旋回する構成としてもよい。
【0149】
調整部260は、調整指令Trgに従って操舵制御部230のパラメータの自動調整を行う。自動調整は、ライン225の形状A、形状B、形状Cにより、追従する目標を意図的に乱し、そのときの自走ロボット210の挙動に応じて操舵制御部230のパラメータを変更する制御ゲインParamを出力する。
【0150】
図26に調整部260の構成を示す。調整部260は、最適化処理部262及び位相差検出部263を備える。最適化処理部262は、調整指令Trgにより調整開始の指令を受けて、後述する位相差dTHに基づく制御ゲインParamの出力を開始する。また、最適化処理部262は、調整指令Trgにより調整終了の指令を受けて、制御ゲインParamの更新を停止する。
【0151】
図28を用いて、最適化処理部262における制御ゲインParamの最適化処理の動作を説明する。
図28は、
図24に示した操舵制御の制御ループの周波数特性における閉ループ特性を示している。
図28の実線が、目標とする周波数特性を示し、点線が、誤差検出特性又は車体操舵特性にゲイン低下側の変動があった場合の周波数特性を示す。また、一点鎖線が、ゲイン増大側の変動があった場合の周波数特性を示している。
【0152】
交叉周波数fc付近に設定された周波数fnの外乱を制御ループへ注入すると、その応答に相当するライン位置誤差dPとの位相差は、ゲイン変動がなければ目標位相差Ph0であるのに対し、ゲイン増大に伴って目標位相Ph0より進むようになる。反対に、ライン位置誤差dPとの位相差は、ゲイン低下に伴って目標位相Ph0より遅れるようになる。最適化処理部262における制御ゲインParamの最適化処理は、この特性を利用して行われる。
【0153】
すなわち、最適化処理部262は、入力される位相差dTHが目標位相Ph0より大きい場合は、制御ゲインParamの値を下げる。反対に、位相差dTHが目標位相Ph0より小さい場合は、制御ゲインParamの値を上げる。最適化処理部262は、この操作を位相差dTHが目標位相Ph0を中心とした所定範囲に収まるまで繰り返し実行する。これにより、
図28のゲイン変動なしの場合と同等の閉ループ特性を得ることができる。
【0154】
次に、位相差検出部263は、上述の外乱とライン位置誤差dPとの位相差を検出して、位相差dTHとして出力する。まず、外乱の制御ループへの注入について説明する。制御ループに対しては、ライン225の形状に対応する外乱を注入する。これはライン225の形状A、形状B、形状Cの区間を、自走ロボット210が略一定速度で通過することに相当する。このとき外乱周波数fnは、以下の(6)式で算出できる。
【0155】
【0156】
このため、外乱周波数fnが交叉周波数fc付近になるように、調整区間における並進速度指令Ftgt0を事前に所定値に設定し、かつ、形状A、形状B、形状Cの所定の周期長さLprdとなるようライン225を形成しておく。
【0157】
次に、位相差dPの算出に用いる外乱の参照波形Refを算出する。調整指令Trgにより調整開始の指令を受けてからの経過時間を、調整開始からの時刻tadjとして、以下の(7)式により算出する。なお、位相にのみ着目するため、参照波形の振幅Arefの値は正の任意の値でよい。
【0158】
【0159】
次に、位相差dTHの算出について説明する。
図27に示すように、ライン位置誤差dP(太線)を符号反転した信号、及び、参照波形Refのゼロクロス点の時間差Delayを計測する。第4の実施の形態では、目標位置Ptgt=0のため、ライン位置誤差dPの符号を反転すると、実位置Preに相当する。このとき、ライン225が形状B又は形状Cの非正弦波形状であっても、制御ループにより追従波形が鈍るため、ライン位置誤差dPは略正弦波となる。なお、時間差Delayとして、数回の測定の平均値を用いることで、精度の高い値を用いることができる。
【0160】
次に、以下の(8)式により、時間差Delayから位相差dTHを算出して値を出力する。なお、位相差dTHは次に更新されるまで前の値を保つものとする。
【0161】
【0162】
なお、位相差検出は、例えば外乱周波数fnのみのフーリエ変換処理である、参照波形Refと1/4周期位相の進んだ信号をライン位置誤差dPに乗じて積分する処理でもよい。
【0163】
また、上述の実施の形態の場合、自走ロボット210の上面に貨物を積載する例であったが、自走ロボット210が牽引する台車に貨物を積載させてもよい。
【0164】
次に、このような自動調整動作の具体例を説明する。まず、各種条件を示す。自走ロボット210の操舵制御の制御ループの仕様は以下の通りとする。
【0165】
交叉周波数fc=0.33[Hz]
折れ点fl=0.1[Hz]
【0166】
このような仕様において、外乱周波数fn=0.4[Hz]とすると、制御ゲインParam及び目標位相Ph0は、以下の通りとなった。
【0167】
制御ゲインParam=1.88(実測)
目標位相Ph0=-60[deg](実測)
【0168】
また、調整区間のライン225の周期形状を、
図21に示した形状Cとし、ふり幅Ampを0.05[m]とし、調整区間における並進速度指令Ftgt0を0.15[m/s]、周期形状の数を12個とした。この場合、周期長さLprd及び調整区間の長さLallは以下のとおりである。
【0169】
周期長さLprd=Ftgt/fn=0.375[m]
調整区間の長さLall=Lprd×12=4.5[m]
【0170】
なお、周期形状の数に制限はないが、今回は後述する、調整区間直後の待機区間を2個とし、繰り返しの調整を実施する区間を10個とした。
【0171】
最適化処理部262は、このような各種条件に基づいて、
図31のフローチャートに示す動作を周期的に実行することで、操舵制御部230のパラメータの自動調整を行う。実行周期は、外乱の周期に対して十分に短くすることが好ましく、この例では、外乱の1周期を「0.02(1/fn)[s]」の1/50に設定した。なお、ここでは、調整開始の指令から調整終了の指令を発するまで、つまり、調整区間を自走ロボット210が走行している間は、調整指令Trgはハイレベル(Hi)、それ以外は、調整指令Trgはローレベル「Lo」とする。
【0172】
ステップS11では、最適化処理部262が、調整区間か否かを判別する。最適化処理部262は、調整命令TrgがHiの場合(ステップS11:Yes)、ステップS12へ処理を進め、それ以外は(ステップS11:No)、ステップS16へ処理を進める。
【0173】
ステップS12では、最適化処理部262が、調整区間侵入から、自走ロボット210の挙動が定常に落ち着くまでの待機時間を確保する(定常待ち)。これは、自走ロボット210がライン225の直線部から周期形状部へ侵入した直後は挙動が乱れて位相差dTHは参考にならないためである。定常待ち判定のための周期カウントnは、自走ロボット210が通過した周期形状の個数を示す。待機カウント値n0は、調整区間侵入から何個の周期形状を通過したら位相差検出を開始するか示す閾値であり、一例として、n0=2とした。
【0174】
最適化処理部262は、自走ロボット210の挙動が定常に落ち着いたと判別した場合(ステップS12:Yes)、ステップS13に処理を進め、自走ロボット210の挙動が定常に落ち着かない場合(ステップS12:No)、そのまま、この
図31のフローチャートの全処理を終了する。
【0175】
ステップS13では、最適化処理部262が、周期形状を新たに1つ通過したことを、位相差dTHが更新の有無に基づいて判定する。位相差dTHが更新されている場合(ステップS13:Yes)、最適化処理部262は、処理をステップS14に進め、それ以外は(ステップS13:No)、この
図31のフローチャートの全処理を終了する。
【0176】
ステップS14では、最適化処理部262が、以下の(9)式により、位相差dTHに基づいて制御ゲインParamを算出して更新する。
【0177】
【0178】
なお、一例ではあるが、10回程度で概ね収束させる場合、調整係数α=0.025となる。
【0179】
最後に、ステップS15において、周期形状を新たに1つ通過したため、最適化処理部262は、調整カウントnをインクリメントする。ステップS6においては、調整区間外であるため、最適化処理部262は、調整カウントnをクリアして、
図31のフローチャートの全処理を終了する。
【0180】
図32に、上述の条件下で、制御ゲインParamの初期値を、狙いの2倍である3.76(1.88×2)に設定して自動調整を実施したときの、位相差dTH及び制御ゲインParamの推移を示す。この
図32において、上段のプロットは、横軸が調整開始からの時刻tadj、縦軸が、検出した位相差dTHである。自走ロボット210が調整区間へ侵入してから、待機時間の後に位相差dTHの検出を開始し、自動調整により目標位相差Ph0へ漸近する様子が分かる。
【0181】
図32において、下段のプロットは、横軸が調整開始からの時刻tadj、縦軸が、制御パラメータParamを示す。
図31のフローチャートで説明したように、操舵制御部230のパラメータの自動調整処理により、位相差dTHが更新されるたびに値が更新され、目標値である「1.88」に漸近し、思惑通りの自動調整処理が行われていることが分かる。
【0182】
(第4の実施の形態の効果)
自走ロボット210には、貨物が積載される。積載重量及び積載位置により、自走ロボット210単体と比較して、車重、回転中心周りのイナーシャ、重心CG位置が変動する。これにより、
図25に示す車体操舵特性(点線)が変動し、制御ループ特性も変動する。
【0183】
自走ロボット210は、部品又は組立てのバラつきにより、
図25に示す誤差検出特性(二点鎖線)及び車体操舵特性特性(点線)が変動する。部品のバラつきとしては、例えば駆動輪42の車輪径にバラつきが存在すると、車体操舵特性が変動する。また、組付けのバラつきとしては、例えば
図29に示すように位置検出部20のカメラの取り付け姿勢の誤差(左:理想、右:誤差あり)により、路面とカメラの距離が変化して誤差検出特性が変動する。このように、誤差検出特性又は車体操舵特性が変化するため、制御ループの特性も変動することになる。
【0184】
図30を用いて、制御ループ内の特性変動と安定性の関係を説明する。
図30は、
図24に示した制御ループの周波数特性における開ループ特性であり、
図28と同様に、実線が目標とする特性を示し、点線が車体操舵特性にゲイン低下側の変動があった場合を、一点鎖線が車体操舵特性にゲイン増大側の変動があった場合の例を示している。ゲインが0[dB]と交わる周波数が交叉周波数fcであり、この交叉周波数fcの位相と-180[deg]との差が位相余裕PMである。この位相余裕PMは、制御の安定性の目安となる。
【0185】
図30に示すようにゲイン変動があれば、増大/低下側共に位相余裕PMが減少して安定性が低下する可能性がある。位相余裕PMが低下すると、制御が不安定となり発振するなど不具合が発生するおそれがある。
【0186】
このため、第4の実施の形態で説明したように、操舵制御により目標軌道に沿って移動する自走ロボット210に対して、周期形状を有する目標軌道の特定区間において、移動時の挙動に基づいて制御パラメータの調整を行う。これにより、貨物積載変化が生じても、また、部品又は組付けのバラつきによるゲイン変動が生じても、制御ループを目標の特性に調整できる。従って、自走ロボット210のライン追従をより安定させることができ、安定して搬送を行うことができる。
【0187】
最後に、上述の各実施の形態は、一例として提示したものであり、本発明の範囲を限定することは意図していない。この新規な実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことも可能である。また、各実施の形態及び各実施の形態の変形は、発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【0188】
1 自走ロボット
2 搬送対象物
111 操舵手段
112 安定判定手段
113 調整手段
120 通信手段
210 自走ロボット
220 位置検出部
230 操舵制御部
241 モータユニット
260 調整部
262 最適化処理部
【先行技術文献】
【特許文献】
【0189】