JP4097844B2 - Moving body guidance device - Google Patents
Moving body guidance device Download PDFInfo
- Publication number
- JP4097844B2 JP4097844B2 JP14083599A JP14083599A JP4097844B2 JP 4097844 B2 JP4097844 B2 JP 4097844B2 JP 14083599 A JP14083599 A JP 14083599A JP 14083599 A JP14083599 A JP 14083599A JP 4097844 B2 JP4097844 B2 JP 4097844B2
- Authority
- JP
- Japan
- Prior art keywords
- target
- moving vehicle
- steering angle
- moving body
- vehicle
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Steering Control In Accordance With Driving Conditions (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は移動体の誘導装置に関し、特に移動体が道幅の狭い鋭角なカーブを曲がる場合や、前進または後退する場合に好適な移動体の誘導装置に関する。
【0002】
【従来の技術および発明が解決しようとする課題】
移動車両を誘導する従来技術として「地点追従方式」と呼ばれる技術がある。
【0003】
図37は「地点追従方式」を用いて移動車両を誘導する技術を示す図である。
【0004】
同図37に示す技術では、移動車両Sの予定走行経路であるカーブを、移動車両Sの目標地点P1、P2、P3、P4、P5、P6、P7の点列として教示する。移動車両Sが走行する領域は座標系で表現され、この座標系を走行する移動車両Sの目標地点P1、P2、P3、P4、P5、P6、P7は座標データで表現される。
【0005】
よって同図37に示す技術では、この座標データと目標地点P1、P2、P3、P4、P5、P6、P7を各々中心とする円の半径r1、r2、r3、r4、r5、r6、r7とを用いることにより、移動車両Sを各目標地点P1、P2、P3、P4、P5、P6、P7を順次追従するように誘導させる。
【0006】
この同図37に示す技術は、野外の広大な不整地を走行する大型建設機械を誘導させる場合に好適である。
【0007】
一方、自動化された工場で無人搬送車や無人フォークリフトを使用したり、あるいはITS(Intelligent Transportation System)で無人自動車を使用したりするように、小型の移動車両を屋内や狭い敷地内あるいは狭い道路で誘導させる場合がある。
【0008】
この場合を図37を参照して説明する。
【0009】
例えば、各目標地点P1、P2、P3、P4、P5、P6、P7を順次追従しながらカーブを曲がるように移動車両Sを誘導させる。
【0010】
このとき、カーブが急なため移動車両Sは目標地点P1、P2、P3、P4、P5、P6、P7から大きく外れてカーブの内側K′を通る小回り現象が生じてしまう。
【0011】
これは、移動車両Sが現在の目標地点に対応する円内に入った時点で次の目標に向かうように誘導されることが原因と考えられる。
【0012】
つまり、移動車両Sが目標地点の手前で次の目標に向かうように誘導されることが原因と考えられる。
【0013】
このため、カーブ内側の地点Kpに障害物があれば、この障害物と移動車両Sが衝突して事故が起きる虞がある。
【0014】
本発明はこうした実状に鑑みてなされたものであり、移動体の予定走行経路が鋭角なカーブであっても、小回り現象を発生させることなく移動体を誘導することを第1の解決課題とする。
【0015】
さて、自動車工学の分野ではステアリング式の4輪車を仮想的に2輪車に置き換える場合がある。この場合の2輪車は等価2輪車と呼ばれる。
【0016】
図38(a)は等価2輪車を前進させて目標地点に誘導する場合を示す図であり、同図(b)は等価2輪車を後退させて目標地点に誘導する場合を示す図である。
【0017】
同図38(a)、(b)において、等価2輪車S0は操舵輪S1と固定輪S2の二つの車輪を備えている。
【0018】
同図38(a)、(b)では、操舵輪S1の操舵角ζを目標地点Pn(Xn、Yn)に向けることによって、等価2輪車を目標地点Pn(Xn、Yn)に到達させるようにしている。
【0019】
同図38(a)に示すように、等価2輪車S0を前進させて目標地点Pn(Xn、Yn)に到達させる場合、固定輪S2が操舵輪S1の操舵角ζに従って進む。
【0020】
よって、等価2輪車S0を前進させる場合には、目標地点Pn(Xn、Yn)に等価2輪車S0を到達させることができる。
【0021】
しかしながら、同図38(b)に示すように、等価2輪車S0を後退させて目標地点Pn(Xn、Yn)に到達させる場合、前進時と同様に操舵角ζを目標地点Pn(Xn、Yn)に向けてしまうと操舵輪S1と固定輪S2の進む方向が異なってしまう。
【0022】
よって、等価2輪車S0を後退させる場合には、等価2輪車S0を目標地点Pn(Xn、Yn)に到達させることができない。
【0023】
つまり、図38(a)、(b)では、等価2輪車の前進時の操舵角ζと後退時の操舵角ζとを同一にすることができない。
【0024】
このため、移動車両Sを目標地点Pn(Xn、Yn)に誘導させる従来の技術では、例えば特開昭63−19011号公報に示すように制御アルゴリズムを等価2輪車の前進時と後退時に応じて切り替えていた。
【0025】
これにより、上記従来技術では移動車両Sの前進時と後退時に制御特性が変わってしまうという問題が招来する。また、操舵角ζの制御が複雑になるという問題が招来する。
【0026】
本発明はこうした実情に鑑みてなされたものであり、移動車両の前進時と後退時の制御特性を同一にするとともに、操舵角ζの制御を簡易にすることを第2の解決課題とする。
【0027】
【課題を解決するための手段及び作用効果】
そこで、本発明の第1発明では、上記第1の解決課題を達成するために、
移動体の予定走行経路上の複数の目標のうち現在の目標に到達した時点で、次の目標へ向けて該移動体を向かわせるように誘導させる移動体の誘導装置において、
前記予定走行経路上の目標点を挟んで所定の距離だけ離間させた一対の端点間の領域を前記目標とし、
現在の前記一対の端点間に前記移動体が到達した時点で、現状の操舵角を維持して走行した場合に次に目標とする一対の端点間の領域に到達するか否かを判断し、
到達すると判断した場合は現状の操舵角を維持するようにし、到達しないと判断した場合は次に目標とする一対の端点間の目標点に前記移動体を向かわせるための目標操舵角度を演算してこの目標操舵角度に基づいて操舵角を変更するようにし、次に目標とする一対の端点間に前記移動体を向かわせるようにしている。
【0028】
上記第1発明を図1(a)を参照して説明する。
【0029】
上記第1発明によれば、予定走行経路Kを挟んで所定の距離だけ離間させた一対の端点PRn、PLnが移動体Sの目標とされる。
【0030】
そこで、例えば現在の一対の端点PR1、PL1間に移動体Sが到達した時点で、次の一対の端点PR2、PL2間に移動体Sを向かわせる。
【0031】
従って、上記第1発明によれば、現在の一対の端点PR1、PL1間に移動体Sが到達した時点で、次の一対の端点PR2、PL2間に移動体Sを向かわせるようにしているので、移動体Sの予定走行経路Kが鋭角なカーブであっても、小回り現象を発生させることなく移動体Sを誘導することができる。
【0032】
また、本発明の第2発明では、上記第1の解決課題を達成するために、
移動体の予定走行経路上の複数の通過領域のうち現在の通過領域に到達した時点で、次の通過領域へ向けて前記移動体を向かわせるように誘導させる移動体の誘導装置において、
前記移動体が前記通過領域内の所定の地点に到達した時点で、現状の操舵角を維持して走行した場合に次の通過領域に到達するか否かを判断し、
到達すると判断した場合は現状の操舵角を維持するようにし、到達しないと判断した場合は次の通過領域内の前記所定の地点に前記移動体を向かわせるための目標操舵角度を演算してこの目標操舵角度に基づいて操舵角を変更するようにし、前記次の通過領域に前記移動体を向かわせるようにしている。
【0033】
上記第2発明を図12を参照して説明する。
【0034】
上記第2発明によれば、移動体Sが現在の通過領域M1を最初に検出してから所定の距離だけ進行し、かつ通過領域M1内の所定の地点P1に到達した時点で、次の通過領域M2に移動体Sを向かわせる。
【0035】
従って、上記第2発明によれば、移動体Sが現在の通過領域M1を最初に検出してから所定の距離だけ進行し、かつ通過領域M1内の所定の地点P1に到達した時点で、次の通過領域M2に移動体Sを向かわせるようにしているので、第1発明と同様に移動体Sの予定走行経路Kが鋭角なカーブであっても、小回り現象を発生させることなく移動体Sを誘導することができる。さらに第2発明によれば、移動体Sの目標が円形、多角形などの如何なる幾何学形状であったとしても第1発明の効果が得られる。
【0041】
また、本発明の第3発明では、上記第1の解決課題及び第2の解決課題を達成するために、
操舵輪と固定輪とを有する移動体の予定走行経路上の複数の目標のうち現在の目標に到達した時点で、次の目標へ向けて該移動体を向かわせるように誘導させる移動体の誘導装置において、
前記予定走行経路上の目標点を挟んで所定の距離だけ離間させた一対の端点間の領域を前記目標とし、
前記操舵輪と前記固定輪とのホイールベースを分母とし、前記移動体が次の目標に旋回移動する際の旋回円の半径を分子とする逆正接関数から前記操舵輪の操舵角度を求め、
現在の前記一対の端点間に前記移動体が到達した時点で、現状の操舵角を維持して走行した場合に次に目標とする一対の端点間の領域に到達するか否かを判断し、
到達すると判断した場合は現状の操舵角を維持するようにし、到達しないと判断した場合は次に目標とする一対の端点間の前記目標点に移動体を向かわせるための目標操舵角度を演算しこの目標操舵角度に基づいて操舵角を変更するようにして、次に目標とする一対の端点間に前記移動体を向かわせるようにしている。
【0042】
上記第3発明を図1(a)、図2、図6、図8を参照して説明する。
【0043】
上記第3発明によれば、予定走行経路Kを挟んで所定の距離だけ離間させた一対の端点PRn、PLnが移動体Sの目標とされる。
【0044】
そこで、操舵指令算出手段5によって操舵輪S1の中心軸と固定輪S2の中心軸との間の距離Lと、旋回半径rgとから操舵輪S1の操舵角度ζが求められる。
【0045】
そして現在の一対の端点PR1、PL1間に移動体Sが到達した時点で、操舵角度ζに基づいて移動体Sが操舵され、次の一対の端点PR2、PL2間に向けて移動体Sが向かわされる。
【0046】
従って、上記第3発明によれば、操舵指令算出手段5によって操舵輪S1の中心軸と固定輪S2の中心軸との間の距離Lと、旋回半径rgとから操舵輪S1の操舵角度ζが求められ、現在の一対の端点PR1、PL1間に移動体Sが到達した時点で、操舵角度ζに基づいて移動体Sが操舵され、次の一対の端点PR2、PL2間に向けて移動体Sが向かわされるので、上記第1発明と同じ効果が得られる。また、移動車両の前進時と後退時の制御特性を同一にすることができる。また、操舵角ζの制御を簡易にすることができる。
【0047】
また、本発明の第4発明では、上記第1の解決課題及び第2の解決課題を達成するために、
操舵輪と固定輪とを有する移動体の予定走行経路上の複数の通過領域のうち現在の通過領域に到達した時点で、次の通過領域へ向けて前記移動体を向かわせるように誘導させる移動体の誘導装置において、
前記操舵輪と前記固定輪とのホイールベースを分母とし、前記移動体が次の目標に旋回移動する際の旋回円の半径を分子とする逆正接関数から前記操舵輪の操舵角度を求め、
前記移動体が前記通過領域内の所定の地点に到達した時点で、現状の操舵角を維持して走行した場合に次の通過領域に到達するか否かを判断し、
到達すると判断した場合は現状の操舵角を維持するようにし、到達しないと判断した場合は次の通過領域内の前記所定の地点に前記移動体を向かわせるための目標操舵角度を演算してこの目標操舵角度に基づいて操舵角を変更するようにし、前記次の通過領域に向けて前記移動体を向かわせるようにしている。
【0048】
上記第4発明を図2、図6、図14を参照して説明する。
【0049】
上記第4発明によれば、操舵指令算出手段5によって操舵輪S1の中心軸と固定輪S2の中心軸との間の距離Lと、次の目標に旋回移動する際の旋回半径rgとから操舵輪S1の操舵角度ζが求められる。
【0050】
そして、移動体Sが現在の通過領域M1を最初に検出してから所定の距離だけ進行し、かつ通過領域M1内の所定の地点P1に到達した時点で、操舵角度ζに基づいて移動体Sが操舵され、次の通過領域M2に向けて移動体Sが向かわされる。
【0051】
従って、上記第4発明によれば、操舵指令算出手段5によって操舵輪S1の中心軸と固定輪S2の中心軸との間の距離Lと、旋回半径rgとから操舵輪S1の操舵角度ζが求められ、移動体Sが現在の通過領域M1を最初に検出してから所定の距離だけ進行し、かつ通過領域M1内の所定の地点P1に到達した時点で、操舵角度ζに基づいて移動体Sが操舵され、次の通過領域M2に向けて移動体Sが向かわされるので、上記第2発明と同じ効果が得られる。また、移動車両の前進時と後退時の制御特性を同一にすることができる。また、操舵角ζの制御を簡易にすることができる。
【0052】
また、本発明の第5発明では、上記第1発明において、
前記予定走行経路上の複数の目標点からなる点列のうち曲線に対応する点列について一対の端点を生成し、
前記移動体を、目標点を中心とする一対の端点間に到達した時点で、次の目標点を中心とする一対の端点間に向かわせるようにしている。
【0053】
上記第5発明を図22を参照して説明する。
【0054】
上記第5発明によれば、予定走行経路K上の点列P1、P1、P2、P3、P4、P5、P6、P7が複数の目標とされる。
【0055】
そこで曲線の予定走行経路Kにおいて、一対の端点PR1、PL1が点列P1、P1、P2、P3、P4、P5、P6、P7のうち点P1から生成される。
【0056】
そして移動体Sは、点列P1、P1、P2、P3、P4、P5、P6、P7のうち現在の点P1に到達した時点で、生成された一対の端点PR2、PL2間に向かわされる。
【0057】
つまり、上記第5発明によれば、予定走行経路Kが曲線の場合について、一対の端点PR2、PL2を点P2から生成するようにしている。
【0058】
従って、上記第5発明によれば、予定走行経路Kが曲線の場合について、一対の端点PR2、PL2を生成するようにしているので、点列から一対の端点を生成する演算が、点列の全てを一対の端点に生成する演算を行う場合と比べて容易になる。さらに第5発明によれば、上記第1発明と同じ効果が得られる。
【0059】
【発明の実施の形態】
以下図面を参照して本発明に係る移動体の誘導装置の実施形態について説明する。なお、この実施形態の移動体はステアリング方式の4輪車を想定している。
【0060】
図2は本発明に係わる移動車両の誘導装置の構成を示すブロック図である。
【0061】
同図2に示す移動車両の誘導装置は、現在運動計測手段2と、予定走行経路記憶手段1と、予定走行経路変更手段3と、走行条件選択手段4と、操舵指令算出手段5と、車速指令算出手段6と、障害物検知手段8と、車体7(移動車両S)とから構成されている。
【0062】
次に上記各構成について説明する。
【0063】
現在運動計測手段2は、移動車両Sの現在位置P1、進行方向θt、速度、旋回角速度ωなどの移動車両の現在の運動状態の情報をGPS(Global Positioning System)や推測航法(Dead Reckoning)などを用いて計測する。
【0064】
予定走行経路記憶手段1は、CAD(Computer Automation Design)やティーチングプレイバックによって作成された点データから一対の端点または任意の幾何学図形に変換されたデータを予定走行経路Kの複数の目標データとして記憶する。また予定走行経路記憶手段1は、現在運動計測手段2から移動車両Sの現在の運動状態の情報を取得する。さらに予定走行経路記憶手段1は、記憶された予定走行経路Kの複数の目標データを走行条件選択手段4に出力する。
【0065】
障害物検知手段8は、予定走行経路K上に存在する障害物の検知を行う。
【0066】
予定走行経路変更手段3は、予定走行経路Kの目標データと異なる一対の端点または任意の幾何学図形のデータを記憶する。さらに予定走行経路変更手段3は、障害物検知手段8から予定走行経路K上の障害物の情報を取得するとともに、現在運動計測手段2から移動車両Sの現在の運動状態の情報を取得する。また予定走行経路変更手段3は、走行条件選択手段4に予定走行経路Kの目標データと異なる一対の端点または任意の幾何学図形のデータ(予定走行経路の変更情報)を出力する。
【0067】
走行条件選択手段4は、通常の場合(予定走行経路K上に障害物が存在しない場合)には予定走行経路記憶手段1から予定走行経路Kの複数の目標データを取得するとともに、現在運動計測手段2から移動車両Sの現在の運動状態の情報を取得する。一方非常の場合(予定走行経路K上に障害物が存在する場合)には、予定走行経路変更手段3から予定走行経路Kの目標データと異なる一対の端点または任意の幾何学図形のデータ(予定走行経路の変更情報)を取得する。また走行条件選択手段4は、目標データ、あるいは目標データと異なる一対の端点または任意の幾何学図形のデータに対する現在の移動車両の相対位置を操舵指令算出手段5に出力するとともに、車速指令算出手段6に走行条件を出力する。
【0068】
操舵指令算出手段5は、操舵角度ζの演算を行うとともに、車体7(移動車両S)に操舵指令を出力して移動車両Sの操舵角度ζの制御を行う。これにより操舵指令算出手段5は移動車両Sに対して直進、右旋回、左旋回を行わせる。
【0069】
車速指令算出手段6は、車体7の速度を演算するとともに、車体7に走行指令を出力して車体7の速度の制御を行う。これにより車速指令算出手段6は車体7に対して加速、減速、前進、後退を行わせる。
【0070】
車体7(移動車両S)は、これら操舵指令算出手段5から出力される操舵指令と、車速指令算出手段6から出力される走行指令とを受けて車体速度の調整を行う。
【0071】
障害物検知手段8は、超音波センサ、あるいはレーザレンジファインダを用いたり、複数のビデオカメラを用いてビデオカメラに写る映像の視差から対象物の距離を計測するステレオ視などの技術によって、移動車両Sの前方や周囲の障害物の有無の検出、障害物の運動状況の認識、障害物までの距離の計測などを行う。
【0072】
予定走行経路変更手段3は、障害物検知手段8から障害物の情報を受け取るとともに、現在運動計測手段2から移動車両Sの現在の運動状態の情報を取得する。そして、これら障害物の情報と移動車両Sの現在の運動状態の情報とに基づいて、走行条件選択手段4に対して予定走行経路Kの変更に関する情報を出力する。
【0073】
次に、図2に示す移動車両の誘導装置の動作について説明する。
【0074】
ここで予定走行経路Kの複数の目標データを複数の一対の端点とした場合について図1、図3を参照して説明する。
【0075】
図1(a)は予定走行経路Kの複数の目標データを複数の一対の端点PRn、PLn(n=1〜7)とした場合の実施形態を示す図であり、同図(b)は目標データを、幅d、基準の方向に対する傾きθa、中心点Paの線分Gaとして記述した例を示す図である。
【0076】
各一対の端点PRn、PLnは予定走行経路Kを挟むように離間されている。
【0077】
また、各一対の端点PRn、PLn間には各目標地点Pn(n=1〜7)が含まれている。
【0078】
また、同図1(b)の線分Gaの幅dによって移動車両Sの通過の許容量が定まる。
【0079】
なお、各一対の端点PRn、PLnおよび線分Gaはゲートとも呼ばれている。
【0080】
図3は図2に示す移動車両の誘導装置が行う処理を説明するフローチャートである。
【0081】
図3に示すフローチャートにおいて、まずステップ101で、図1の移動車両Sが直進しているか否か(旋回しているか)が判定される。
【0082】
このステップ101では、図2の現在運動計測手段2が時刻tにおける移動車両Sの旋回角速度ωt、速度vtを各々計測し移動車両Sの旋回半径rtを求める。この結果、移動車両Sが走行した軌跡が直線と見なせるほど旋回半径rtが極めて大きい場合には移動車両Sが直進しているものと判定する(ステップ101の判断YES)。一方、旋回半径rtが極めて大きい場合以外には移動車両Sが旋回しているものと判定する(ステップ101の判断NO)。移動車両Sの旋回半径rtが車体寸法に比べて十分大きければ(例えば車体寸法に対して旋回半径rtが10倍)、移動車両Sは直進しているものとみなすことができる。
【0083】
ステップ101でYESと判断されると、以後移動車両Sが直進しているものとして処理が行われる(ステップ102)。一方、ステップ101でNOと判断されると、以後移動車両Sが旋回しているものとして処理が行われる(ステップ103)。
【0084】
まず直進している移動車両Sを操舵せずにそのまま端点PR2、PL2 間に向けて進行させる処理について説明する。
【0085】
ステップ104では、直進している移動車両Sが端点PR1、PL1間に到達した時点以降、次の端点PR2、PL2間を通過できるか否かを判定する。
【0086】
つまりステップ104では、図2の走行条件選択手段4が移動車両Sの操舵を行うか否かを判断する。
【0087】
ここで移動車両Sが操舵しなくてもそのまま端点PR2、PL2間を通過できる場合(ステップ104の判断YES)、走行条件選択手段4は、移動車両Sをそのまま進行させるようにするデータを操舵指令算出手段5に対して出力する(ステップ107)。
【0088】
走行条件選択手段4で行われる処理について図4、図5を参照して説明する。
【0089】
まず、端点PR2、PL2間の通過を確認するための処理について図4を参照して説明する。
【0090】
同図4では、一対の端点PR1、PL1を幅d、基準の方向に対する傾きθ1、中心点P1(x1、y1)の線分G1として表現している。また時刻tにおける移動車両Sの代表点をPt(xt、yt)とし、時刻t+1における移動車両Sの代表点をPt+1(xt+1、yt+1)としている。よって、線分G1の方程式は下記(1)式で表される。
【0091】
(x−x1)・tanθ1−(y−y1)=0 … (1)
ここで、点Pt(xt、yt)は、同図4に示すように線分G1の下側に存在している。よって、点Pt(xt、yt)を上記(1)式に代入すると、点Pt(xt、yt)を通る直線の方程式は下記(2)式で表される。
【0092】
μt=(xt−x1)・tanθ1−(yt−y1)>0 … (2)
一方、点Pt+1(xt+1、yt+1)は、同図4に示すように線分G1の上側に存在している。よって、点Pt+1(xt+1、yt+1)を上記(1)式に代入すると、点Pt+1(xt+1、yt+1)を通る直線の方程式は下記(3)式で表される。
【0093】
μt+1=(xt+1−x1)・tanθ1−(yt+1−y1)<0 … (3)
そして、移動車両Sの代表点Pt(xt、yt)、またはPt+1(xt+1、yt+1)が線分G1上に存在する場合、上記(1)式が成立するので、上記μt、またはμt+1の値は0となる。
【0094】
また移動車両Sが線分G1を通過した場合、上記μt、μt+1は符号が互いに逆になるか、あるいは各々の値が0となる。
【0095】
すなわち、走行条件選択手段4は、移動車両Sが進行するにつれ、時々刻々変化する時刻tにおける移動車両Sの代表点Pt(xt、yt)を現在の目標である線分G1の方程式(1)に代入してμtを求め、さらに、時刻tの次の瞬間である時刻t+1における移動車両Sの代表点Pt+1(xt+1、yt+1)を線分G1の方程式(1)に代入してμt+1を求める。
【0096】
このようにして求めたμtとμt+1との積が0となるか、あるいはこの積の符号が負になった場合(μt・μt+1≦0になった場合)に移動車両Sが線分G1を通過したことが判明する。
【0097】
こうして、走行条件選択手段4は移動車両Sが線分G1上に到達したか否かを確認する。
【0098】
ここで、移動車両Sを一対の端点PR2、PL2間に向けて進行させる処理について図5を参照して説明する。
【0099】
図5では、移動車両Sの代表点(上記線分G1上の点)をP1(x1、y1)とする。また、移動車両Sの進行方向をθtとする。よって、移動車両Sが直進する際の軌跡となる直線の方程式は、下記(4)式で表すことができる。
【0100】
(x−x1)・tanθt−(y−y1)=0 … (4)
ここで、この(4)式で表される直線を境界線とした場合には、同図5に示す端点PR2(xR2、yR2)は(4)式の直線よりも下側に存在するので負の領域に含まれる。一方、端点PL2(xL2、yL2)は(4)式の直線よりも上側に存在するので正の領域に含まれる。
【0101】
ところで、点P1(x1、y1)と端点PR2(xR2、yR2)とが通る直線の方程式は、
λR=(xR2−x1)・tanθt−(yR2−y1) … (5)
で表される。
【0102】
また、点P1(x1、y1)と端点PL2(xL2、yL2)とが通る直線の方程式は、
λL=(xL2−x1)・tanθt−(yL2−y1) … (6)
で表される。
【0103】
ここで、(5)式の直線は負の領域を通っているのでλRの符号は負になる。一方、(6)式の直線は正の領域を通っているのでλLの符号は正になる。
【0104】
よって上記(5)式と(6)式との積、
λ=λR・λL … (7)
を求めると、λの符号は負となる。
【0105】
また、(4)式の直線が端点PR2(xR2、yR2)、PL2(xL2、yL2)のうちの一方を通っていれば、λは0となる。
【0106】
よって、λ≦0の場合に、(4)式の直線が端点PR2(xR2、yR2)、PL2(xL2、yL2)間を通ることがわかる。
【0107】
これにより、走行条件選択手段4は、移動車両Sは操舵しなくてもそのまま端点PR2、PL2間を通過できると判断する(ステップ104の判断YES)。
【0108】
この走行条件選択手段4の判断結果に基づいて、操舵指令算出手段5は移動車両Sに対して操舵をそのまま維持するように操舵指令を出力する(ステップ107)。
【0109】
次に直進している移動車両Sを操舵して一対の端点PR2、PL2間に向けて進行させる処理について説明する。
【0110】
移動車両Sが端点PR2、PL2間を通過できない場合(ステップ104の判断NO)、走行条件選択手段4は、移動車両Sを操舵するためのデータを操舵指令算出手段5に対して出力する。
【0111】
走行条件選択手段4で行われる処理について図5を参照して説明する。
【0112】
上述した図4に示すように走行条件選択手段4は移動車両Sが端点PR1、PL1間上(線分G1上)に到達したか否かを確認する。
【0113】
ここで、上記式(4)(下記に示す)が、
(x−x1)・tanθt−(y−y1)=0 … (4)
同図5に示す端点PR2及びPL2よりも上側に存在する場合には、これら端点PR2、PL2は負の領域に含まれる。
【0114】
すなわち、上記λR、λLの符号は各々負となる。
【0115】
よって、上記(7)式(下記に示す)を用いてλを求めると、
λ=λR・λL … (7)
λの符号は正となる。
【0116】
また、上記(4)式が、同図5に示す端点PR2及びPL2よりも下側に存在する場合には、これら端点PR2、PL2は正の領域に含まれる。
【0117】
すなわち、上記λR、λLの符号は各々正となる。
【0118】
よって、上記(7)式を用いてλを求めると、λの符号は正となる。
【0119】
つまり、λ>0の場合に、(4)式の直線が端点PR2、PL2間を通らないことがわかる。
【0120】
これにより、走行条件選択手段4は、移動車両Sはこの状態では端点PR2、PL2間を通過できないと判断する(ステップ104の判断NO)。
【0121】
そこで、走行条件選択手段4は、予定走行経路記憶手段1から取得した目標地点P2(x2、y2)のデータと、現在運動計測手段2から取得した移動車両Sの現在位置P1(x1、y1)、進行方向θtのデータとを操舵指令算出手段5に出力する。
【0122】
操舵指令算出手段5は移動車両Sを操舵するための演算を行う(ステップ106)。
【0123】
操舵指令算出手段5で行われる処理について図5、図6を参照して説明する。
【0124】
操舵指令算出手段5は、取得した目標地点P2(x2、y2)、移動車両Sの現在位置P1(x1、y1)、進行方向θtの各データより、移動車両Sを目標地点P2(x2、y2)に向かわせるための目標旋回半径rgを下記(8)式を用いて求める。
【0125】
rg={(x2−x1)2+(y2−y1)2}/{(x2−x1)・sinθt−(y2−y1)・cosθt}/2 … (8)
なお、rg>0で右旋回となり、rg<0で左旋回となる。
【0126】
上述してきた移動車両Sはステアリング方式の4輪車を想定している。
【0127】
ここで、移動車両Sを等価2輪車S0に置き換え、図6を参照して移動車両Sの操舵について説明する。
【0128】
同図6において、この等価2輪車S0は操舵輪S1と固定輪S2とを備えている。操舵輪S1の中心軸Aと固定輪S2の中心軸Bとの間の距離(ホイールベース)はLとする。等価2輪車S0が旋回走行する際の旋回円の旋回半径rtと旋回円の接線方向とは常に直角 Rの関係となる。操舵角θtは旋回円の旋回中心点Pc回りの APcBと等しい。
【0129】
よって、等価2輪車S0の現在の旋回半径rtは、下記(9)式
rt=L/tanθt … (9)
で表される。
【0130】
従って、上記(9)式より目標旋回半径rgのときの目標操舵角度ζは、
ζ=tan-1(L/rg) … (10)
と求められる。
【0131】
こうして求めた目標操舵角度ζを、操舵指令算出手段5は移動車両S(車体7)に対して操舵指令として出力して等価2輪車S0の操舵角の制御を行う。
【0132】
これにより、移動車両Sを次の端点PR2、PL2間に向かわせることができる。
【0133】
但し、この図3に示すステップ101から107までの処理は1秒間に10回程度繰り返される。これにより、移動車両Sの進行方向が絶えず修正されることになるので、移動車両Sを次の端点PR2、PL2間への方向に向かわせることができる。
【0134】
ところで、移動車両Sはステアリング方式でなくても旋回半径を用いて操舵することができる。
【0135】
図7はスキッドステア方式の移動車両Sを操舵する場合について説明する図である。スキッドステア方式は「差動駆動方式(Differential Drive)」とも呼ばれている。
【0136】
同図7に示すスキッドステア方式の移動車両S0′は、互いに回転速度を異ならせることが可能な二つの駆動輪SR、SLを左右に備えている。そして、駆動輪SR、SLの回転速度vR、vLを互いに異ならせることによって、旋回走行することが可能となる。
【0137】
ここで、移動車両S0′の旋回半径rcは車両幅Wおよび駆動輪SR、SLの各々の速度vR、vLから下記(11)式で表される。
【0138】
rc=W(vL+vR)/2(vL−vR) … (11)
つまり、目標地点P2(x2、y2)を通過させるために、移動車両S0′を直進させる場合には、操舵指令算出手段5が移動車両S0′(車体7)に対し、操舵指令としてvR=vLを出力する。
【0139】
同様に目標地点P2(x2、y2)を通過させるために、移動車両S0′に対して旋回走行させる場合には、上記(8)式(下記に示す)を用いて、
rg={(x2−x1)2+(y2−y1)2}/{(x2−x1)・sinθt−(y2−y1)・cosθt}/2 … (8)
rg=rcとして操舵指令算出手段5が旋回半径rcを求め、移動車両S0′(車体7)に対し、操舵指令として旋回半径rcを出力する。
【0140】
また、車速指令算出手段6は、下記(12)式を用いて車両中心速度vcを演算する。
【0141】
vc=(vR+vL)/2 … (12)
そして、車速指令算出手段6から移動車両S0′(車体7)に対して、走行指令として車両中心速度vcを出力する。
【0142】
移動車両S0′(車体7)は、これら操舵指令と走行指令を受けて上記(11)式、(12)式で求められた旋回半径rcと車両中心速度vcとから速度vR、vLを逆算し、速度調整を行う。
【0143】
これにより、スキッドステア方式の移動車両S0′でも、次の端点PR2、PL2間に向かわせることができる。
【0144】
なお、移動車両S0′を最高速度vmaxで直進走行している状態から操舵させる場合には、駆動輪S1あるいはS2を最高速度vmax以上にする必要が生じるが、実際には駆動輪S1、S2を最高速度vmax以上にすることはできないので、駆動輪S1あるいはS2のうち高速で駆動させたい駆動輪のみを最高速度vmaxで駆動させる。そして他方の駆動輪については、所望の旋回半径rcを維持するように、移動車両S0′で上記(11)式を用いて速度を逆算し、移動車両S0′の速度調整を行う。
【0145】
次に旋回走行している移動車両Sを操舵せずにそのまま端点PR2、PL2間に向けて進行させる処理について説明する。
【0146】
ステップ105では、旋回走行している移動車両Sが端点PR1、PL1間に到達した時点以降、次の端点PR2、PL2間を通過できるか否かを判定する。
【0147】
つまりステップ105では、図2の走行条件選択手段4が移動車両Sの操舵を行うか否かを判断する。
【0148】
ここで移動車両Sが操舵しなくてもそのまま端点PR2、PL2間を通過できる場合(ステップ105の判断YES)、走行条件選択手段4は、移動車両Sをそのまま進行させるようにするデータを操舵指令算出手段5に対して出力する(ステップ107)。
【0149】
走行条件選択手段4で行われる処理について図8を参照して説明する。
【0150】
図8において移動車両Sは進行方向θt、旋回半径rtで旋回走行している。
【0151】
走行条件選択手段4は、上述した図4に示すように移動車両Sが端点PR1、PL1間上(線分G1上)に到達したか否かを確認する。そして、移動車両Sが端点PR1、PL1間上(線分G1上)に到達した時点以降、旋回中心点Pc(xc、yc)から端点PR2(xR2、yR2)までの距離rR、および旋回中心点Pc(xc、yc)から端点PL2(xL2、yL2)までの距離rLを求める。
【0152】
距離rRは、
rR=√{(xR2−xc)2+(yR2−yc)2} … (13)
で表される。
【0153】
一方、距離rLは、
rL=√{(xL2−xc)2+(yL2−yc)2} … (14)
で表される。
【0154】
また、現在運動計測手段2によって移動車両Sの速度vtと旋回角速度ωtが計測され旋回半径rtが求められる。
【0155】
ここで、距離rRよりも旋回半径rtが長ければ、下記(15)式に示す距離rRと旋回半径rtの差λrRの符号は負となる。
【0156】
λrR=rR−|rt| … (15)
(ここで、旋回半径rtは右旋回と左旋回で符号が変わるため、絶対値としている。)
一方、距離rLよりも旋回半径rtが短ければ、下記(16)式に示す距離rLと旋回半径rtの差λrLの符号は正となる。
【0157】
λrL=rL−|rt| … (16)
また、旋回半径rtが端点PR2(xR2、yR2)、PL2(xL2、yL2)のうちの一方を通っていれば、λrRか、あるいはλrLのうち一方が0となる。
【0158】
よって、下記(17)式に示す上記(15)式と(16)式との積
λ=λrR・λrL … (17)
より、走行条件選択手段4は、λ≦0の場合に、旋回半径rtが端点PR2(xR2、yR2)、PL2(xL2、yL2)間を通るものと判断する。
【0159】
これにより、走行条件選択手段4は、移動車両Sは操舵しなくてもそのまま端点PR2、PL2間を通過できると判断する(ステップ105の判断YES)。
【0160】
この走行条件選択手段4の判断結果に基づいて、操舵指令算出手段5は移動車両Sに対して操舵をそのまま維持するように操舵指令を出力する(ステップ107)。
【0161】
次に旋回走行している移動車両Sを操舵して一対の端点PR2、PL2間に向けて進行させる処理について説明する。
【0162】
移動車両Sが端点PR2、PL2間を通過できない場合(ステップ105の判断NO)、走行条件選択手段4は、移動車両Sを操舵するためのデータを操舵指令算出手段5に対して出力する。
【0163】
走行条件選択手段4で行われる処理について図8を参照して説明する。
【0164】
この図8では、上述したように旋回中心点Pc(xc、yc)から端点PR2(xR2、yR2)までの距離rR、および旋回中心点Pc(xc、yc)から端点PL2(xL2、yL2)までの距離rL、および移動車両Sの旋回半径rtが各々求められる。
【0165】
また、上述した図4に示すように走行条件選択手段4は移動車両Sが端点PR1、PL1間上(線分G1上)に到達したか否かを確認する。
【0166】
ここで、距離rRよりも旋回半径rtが短ければ、上記(15)式(下記に示す)のλrRの符号は正となる。
【0167】
λrR=rR−|rt| … (15)
一方、このように距離rRよりも旋回半径rtが短かい場合、当然、距離rLよりも旋回半径rtは短くなる。よって、上記(16)式(下記に示す)のλrLの符号は正となる。
【0168】
λrL=rL−|rt| … (16)
よって、距離rR、rLよりも旋回半径rtが短かい場合、上記(17)式(下記に示す)のλは、
λ=λrR・λrL … (17)
正となる。(λ>0)
また、距離rLよりも旋回半径rtが長ければ、上記(16)式のλrLの符号は負となる。
【0169】
一方、このように距離rLよりも旋回半径rtが長い場合、当然、距離rRよりも旋回半径rtは長くなる。よって、上記(15)式のλrRの符号は負となる。
【0170】
従って、距離rR、rLよりも旋回半径rtが長い場合、上記(17)式のλは、正となる。(λ>0)
これにより、走行条件選択手段4は、λ>0の場合に、旋回半径rtが端点PR2(xR2、yR2)、PL2(xL2、yL2)間を通過することができないと判断する。(ステップ104の判断NO)。
【0171】
そこで、走行条件選択手段4は、上述したように予定走行経路記憶手段1から取得した目標地点P2(x2、y2)のデータと、現在運動計測手段2から取得した移動車両Sの現在位置P1(x1、y1)、進行方向θtのデータとを操舵指令算出手段5に出力する。
【0172】
操舵指令算出手段5は移動車両Sを操舵するための演算を行う(ステップ106)。
【0173】
ここで、図5、図6を示して上述したように、操舵指令算出手段5は、取得した目標地点P2(x2、y2)、移動車両Sの現在位置P1(x1、y1)、進行方向θtの各データより、移動車両Sを目標地点P2(x2、y2)に向かわせるための目標旋回半径rgを上記(8)式(下記に示す)を用いて求める。
【0174】
rg={(x2−x1)2+(y2−y1)2}/{(x2−x1)・sinθt−(y2−y1)・cosθt}/2 … (8)
そして、上記(10)式(下記に示す)より目標旋回半径rgのときの目標操舵角度ζを求める。
【0175】
ζ=tan-1(L/rg) … (10)
こうして求めた目標操舵角度ζを、操舵指令算出手段5は移動車両S(車体7)に対して操舵指令として出力して移動車両Sの操舵角の制御を行う。
【0176】
これにより、旋回走行している移動車両Sを次の端点PR2、PL2間に向かわせることができる。
【0177】
このように、上述した実施形態では、一対の端点PR1、PL1間に移動体Sが到達した時点で、次の一対の端点PR2、PL2間に移動体Sを向かわせるようにしているので、移動体Sの予定走行経路Kが鋭角なカーブであっても、小回り現象を発生させることなく移動体Sを誘導することができる。
【0178】
また、上述した実施形態では、移動車両S0の前進時の操舵角ζと後退時の操舵角ζとを同一にすることができる。
【0179】
図9(a)は目標ゲートGnの中心点Pnに向けて移動車両S0を前進させる場合を示す図であり、同図9(b)は目標ゲートGnの中心点Pnに向けて移動車両S0を後退させる場合を示す図である。
【0180】
同図9(a)、(b)に示すように、移動車両S0の操舵角ζは前進時と後退時で同一にされている。
【0181】
従って、上述した実施形態では、移動車両の前進時と後退時の制御特性を同一にすることができる。また、操舵角ζの制御を簡易にすることができる。
【0182】
ところで、移動車両Sの予定走行経路Kの路面に凹凸があったり、路上に障害物が存在して目標とする一対の端点PLn、PRn間を通過できず、移動車両Sが予定走行経路Kから外れる場合がある。
【0183】
そこで、移動車両Sが目標とする一対の端点PLn、PRn間を通過できない場合には、次の一対の端点PLn、PRn間に向かわせるようにする実施形態について図10、図11を参照して説明する。なお、説明上、目標とする一対の端点PLn、PRnをゲートで表現する。
【0184】
図10において、移動車両Sは現在の目標ゲートGnから外れてしまったため、現在の目標ゲートGnの延長線Gb上に到達する。
【0185】
そこで、移動車両Sが現在の目標ゲートGnの延長線に到達した時点で、移動車両Sを次の目標ゲートGn+1に向かわせる。
【0186】
これにより、移動車両Sの予定走行経路Kの路面に凹凸があったり、路上に障害物が存在して目標ゲートGnを通過できない場合でも、移動車両Sを予定走行経路K上に復帰させることができる。但し、このように移動車両Sが現在の目標ゲートGnから外れてしまう場合には、移動車両Sの速度を下げることが望ましい。
【0187】
また、図11では、移動車両Sの代表点がPt-1、Pt、Pt+1と変化し、またこれらの点Pt-1、Pt、Pt+1と現在の目標ゲートGnの端点との距離がrt-1、rt、rt+1と変化するように移動車両Sが運動した場合に、移動車両Sを次の目標ゲートGn+1に向かわせるようにしている。
【0188】
これにより、移動車両Sの予定走行経路Kの路面に凹凸があったり、路上に障害物が存在して目標ゲートGnを通過できない場合でも、移動車両Sを予定走行経路K上に復帰させることができる。但し、このように移動車両Sが現在の目標ゲートGnから外れてしまう場合には、移動車両Sの速度を下げることが望ましい。
【0189】
さて、上述した実施形態では、予定走行経路K上の目標データが一対の端点である場合について説明してきたが、予定走行経路K上の目標データは任意の幾何学図形としてもよい。
【0190】
そこで、予定走行経路K上の目標データを任意の幾何学図形とした場合の、図2の移動車両の誘導装置の動作について図3、図12を参照して説明する。
【0191】
図12は予定走行経路Kの複数の目標データを複数の任意の幾何学図形Mn(n=1〜3)とした場合の実施形態を示す図である。
【0192】
同図12では任意の幾何学図形Mnが予定走行経路K上の目標とされている。
【0193】
なお、図3のフローチャートのステップ101〜103で行われる処理は、上述した予定走行経路K上の目標データが一対の端点である場合の処理と同様なので説明を省略する。
【0194】
まず直進している移動車両Sを操舵せずにそのまま任意の幾何学図形M2に向けて進行させる処理について説明する。
【0195】
ステップ104では、直進している移動車両Sが現在の任意の幾何学図形M1を最初に検出してから所定の距離だけ進行し、かつ任意の幾何学図形M1内の所定の地点P1に到達した時点以降、次の任意の幾何学図形M2内を通過できるか否かを判定する。
【0196】
このときステップ104では、上述したように図2の走行条件選択手段4が移動車両Sの操舵を行うか否かを判断する。
【0197】
ここで移動車両Sが操舵しなくてもそのまま任意の幾何学図形M2を通過できる場合(ステップ104の判断YES)、走行条件選択手段4は、移動車両Sをそのまま進行させるようにするデータを操舵指令算出手段5に対して出力する(ステップ107)。
【0198】
直進している移動車両Sを操舵せずにそのまま任意の幾何学図形M2内に向けて進行させる走行条件選択手段4の処理について図13を参照して説明する。
【0199】
この処理は、任意の幾何学図形M2内の移動車両Sの進行方向θtと垂直な位置に、目標地点P2を挟んで一対の端点PRn、PLnを置くこと以外、上述の図5を参照して説明した処理と同様である。
【0200】
図13においても、移動車両Sが直進する際の軌跡となる直線の方程式は、上記(4)式(下記に示す)で表される。
【0201】
(x−x1)・tanθt−(y−y1)=0 … (4)
従って、上記(4)式で表される直線を境界線とした場合には、同図13に示す任意の幾何学図形M2内の端点PR2(xR2、yR2)は(4)式の直線よりも下側に存在するので負の領域に含まれる。一方、端点PL2(xL2、yL2)は(4)式の直線よりも上側に存在するので正の領域に含まれる。
【0202】
また、点P1(x1、y1)と端点PR2(xR2、yR2)とが通る直線の方程式は、上記(5)式で表される(下記に示す)。
【0203】
λR=(xR2−x1)・tanθt−(yR2−y1) … (5)
また、点P1(x1、y1)と端点PL2(xL2、yL2)とが通る直線の方程式は、上記(6)式で表される(下記に示す)。
【0204】
λL=(xL2−x1)・tanθt−(yL2−y1) … (6)
ここで、上記(5)式の直線は負の領域を通っているのでλRの符号は負になる。一方、上記(6)式の直線は正の領域を通っているのでλLの符号は正になる。
【0205】
よって上記(7)式(下記に示す)を求めると、
λ=λR・λL … (7)
λの符号は負となる。
【0206】
また、上記(4)式の直線が任意の幾何学図形M2内の端点PR2(xR2、yR2)、PL2(xL2、yL2)のうちの一方を通っていれば、λは0となる。
【0207】
よって、λ≦0の場合に、上記(4)式の直線が任意の幾何学図形M2内の端点PR2(xR2、yR2)、PL2(xL2、yL2)間を通ることがわかる。
【0208】
これにより、走行条件選択手段4は、移動車両Sは操舵しなくてもそのまま任意の幾何学図形M2内を通過できると判断する(ステップ104の判断YES)。
【0209】
この走行条件選択手段4の判断結果に基づいて、操舵指令算出手段5は移動車両Sに対して操舵をそのまま維持するように操舵指令を出力する(ステップ107)。
【0210】
次に直進している移動車両Sを操舵して任意の幾何学図形M2内の端点PR2、PL2間に向けて進行させる処理について説明する。
【0211】
移動車両Sが任意の幾何学図形M2内の端点PR2、PL2間を通過できない場合(ステップ104の判断NO)、走行条件選択手段4は、移動車両Sを操舵するためのデータを操舵指令算出手段5に対して出力する。
【0212】
走行条件選択手段4で行われる処理について図13を参照して説明する。
【0213】
上述した図12に示すように走行条件選択手段4は、移動車両Sが現在の任意の幾何学図形M1を最初に検出してから所定の距離だけ進行し、かつ任意の幾何学図形M1内の所定の地点P1に到達したか否かを確認する。
【0214】
ここで、上記式(4)(下記に示す)が、
(x−x1)・tanθt−(y−y1)=0 … (4)
同図13に示す端点PR2及びPL2よりも上側に存在する場合には、これら任意の幾何学図形M1内の端点PR2、PL2は負の領域に含まれる。
【0215】
すなわち、上記λR、λLの符号は各々負となる。
【0216】
よって、上記(7)式(下記に示す)を用いてλを求めると、
λ=λR・λL … (7)
λの符号は正となる。
【0217】
また、上記(4)式が、同図13に示す端点PR2及びPL2よりも下側に存在する場合には、これら端点PR2、PL2は正の領域に含まれる。
【0218】
すなわち、上記λR、λLの符号は各々正となる。
【0219】
よって、上記(7)式を用いてλを求めると、λの符号は正となる。
【0220】
つまり、λ>0の場合に、(4)式の直線が端点PR2、PL2間を通らないことがわかる。
【0221】
これにより、走行条件選択手段4は、移動車両Sはこの状態では任意の幾何学図形M1内の端点PR2、PL2間を通過できないと判断する(ステップ104の判断NO)。
【0222】
そこで、走行条件選択手段4は、上述したように予定走行経路記憶手段1から取得した目標地点P2(x2、y2)のデータと、現在運動計測手段2から取得した移動車両Sの現在位置P1(x1、y1)、進行方向θtのデータとを操舵指令算出手段5に出力する。
【0223】
操舵指令算出手段5は移動車両Sを操舵するための演算を行う(ステップ106)。
【0224】
ここで、図6、図13を示して上述したように、操舵指令算出手段5は、取得した目標地点P2(x2、y2)、移動車両Sの現在位置P1(x1、y1)、進行方向θtの各データより、移動車両Sを目標地点P2(x2、y2)に向かわせるための目標旋回半径rgを上記(8)式(下記に示す)を用いて求める。
【0225】
rg={(x2−x1)2+(y2−y1)2}/{(x2−x1)・sinθt−(y2−y1)・cosθt}/2 … (8)
そして、上記(10)式(下記に示す)より目標旋回半径rgのときの目標操舵角度ζを求める。
【0226】
ζ=tan-1(L/rg) … (10)
こうして求めた目標操舵角度ζを、操舵指令算出手段5は移動車両S(車体7)に対して操舵指令として出力して移動車両Sの操舵角の制御を行う。
【0227】
これにより、直進している移動車両Sを次の任意の幾何学図形M2に向かわせることができる。
【0228】
次に旋回走行している移動車両Sを操舵せずにそのまま任意の幾何学図形M2に向けて進行させる処理について説明する。
【0229】
ステップ105では、旋回走行している移動車両Sが現在の任意の幾何学図形M1を最初に検出してから所定の距離だけ進行し、かつ任意の幾何学図形M1内の所定の地点P1に到達したか否かを判定する。
【0230】
つまりステップ105では、図2の走行条件選択手段4が移動車両Sの操舵を行うか否かを判断する。
【0231】
ここで移動車両Sが操舵しなくてもそのまま任意の幾何学図形M2に向かわせることができる場合(ステップ105の判断YES)、走行条件選択手段4は、移動車両Sをそのまま進行させるようにするデータを操舵指令算出手段5に対して出力する(ステップ107)。
【0232】
走行条件選択手段4で行われる処理について図14を参照して説明する。
【0233】
図14において移動車両Sは進行方向Θt、旋回半径rtで旋回走行している。
【0234】
また、任意の幾何学図形M2内において、移動車両Sの進行方向θtと垂直な位置に、一対の端点PR2(XR2、YR2)、PL2(XL2、YL2)が存在するものとする。
ここで、端点PR2(XR2、YR2)、PL2(XL2、YL2)間の距離をdとする。
【0235】
また、これら端点PR2、PL2の中心点をP2(X2、Y2)とする。さらに、移動車両Sが端点PR2、PL2間を通過する時点での中心点P2(X2、Y2)からの距離を横方向偏移ηとする。
【0236】
この横方向偏移ηは、移動車両Sが現在の任意の幾何学図形M1を最初に検出してから所定の距離だけ進行し、かつ任意の幾何学図形M1内の所定の地点P1に到達した時点以降、下記(18)、(19)式を用いて求められる。
【0237】
つまり、現在運動計測手段2によって求められた旋回半径rtと、移動車両Sの進行方向Θtとから、旋回半径rtが0より大きい場合には、
η=Y−rtcosΘt+√{rt2−(X+rtsinΘt))2} … (18)
と求められ、また旋回半径rtが0より小さい場合には、
η=Y−rtcosΘt−√{rt2−(X+rtsinΘt))2} … (19)
と求められる。
【0238】
また、上記(18)式及び上記(19)式のΘtの方向ベクトルは、移動車両Sの現在の進行方向θtを、次の任意の幾何学図形M2内の目標地点P2(X2、Y2)における進行方向に合わせて座標変換したものであり、下記(20)式で表される。
【0239】
さらに座標軸XとYは、座標軸xとyとを座標変換したものであり、下記(21)式で表される。
【0240】
また、上記(21)式のθ2の方向ベクトルcosθ2、sinθ2を求めるには、まず、移動車両Sの現在位置P1(x1、y1)と目標地点P2(x2、y2)から下記(22)式、(23)式を用いてcosφt、sinφtを求める。
【0241】
cosφt=(x2−x1)/{(x2−x1)2+(y2−y1)2 } … (22)
sinφt=(y2−y1)/{(x2−x1)2+(y2−y1)2 } … (23)
そして、これらcosφt、sinφtから下記(24)式、(25)式を用いてθ2の方向ベクトルcosθ2、sinθ2が求められる。
【0242】
cosθ2=(cos2φt−sin2φt)・cosθt+2sinφt・cosφt・sinθt … (24)
sinθ2=+2sinφt・cosφt・cosθt−(cos2φt−sin2φt)・sinθt… (25)
ここで、上記(18)式、(19)式を用いて求められた横方向偏移ηと、端点PR2(XR2、YR2)、PL2(XL2、YL2)間の距離dとの関係が−d/2<η<d/2である場合、走行条件選択手段4は移動車両Sが任意の幾何学図形M2内の端点PR2(xR2、yR2)、PL2(xL2、yL2)間を通るものと判断する。
【0243】
この走行条件選択手段4の判断結果に基づいて、操舵指令算出手段5は移動車両Sに対して操舵をそのまま維持するように操舵指令を出力する(ステップ107)。
【0244】
次に旋回走行している移動車両Sを操舵して任意の幾何学図形M2に向けて進行させる処理について説明する。
【0245】
移動車両Sが任意の幾何学図形M2を通過できない場合(ステップ105の判断NO)、走行条件選択手段4は、移動車両Sを操舵するためのデータを操舵指令算出手段5に対して出力する。
【0246】
走行条件選択手段4で行われる処理について図14を参照して説明する。
【0247】
上述したように横方向偏移ηが、移動車両Sが現在の任意の幾何学図形M1を最初に検出してから所定の距離だけ進行し、かつ任意の幾何学図形M1内の所定の地点P1に到達した時点以降、上記(18)、(19)式(下記に示す)を用いて求められる。
【0248】
η=Y−rtcosΘt+√{rt2−(X+rtsinΘt))2} … (18)
η=Y−rtcosΘt−√{rt2−(X+rtsinΘt))2} … (19)
ここで、上記(18)式、(19)式を用いて求められた横方向偏移ηが端点PR2(XR2、YR2)、PL2(XL2、YL2)間dに含まれない場合、横方向偏移ηと端点PR2、PL2間の距離dとの関係はη<−d/2、d/2<ηとなる。
【0249】
これにより走行条件選択手段4は移動車両Sが任意の幾何学図形M2内の端点PR2(xR2、yR2)、PL2(xL2、yL2)間を通ることができないと判断する。(ステップ104の判断NO)。
【0250】
そこで、走行条件選択手段4は、上述したように予定走行経路記憶手段1から取得した目標地点P2(x2、y2)のデータと、現在運動計測手段2から取得した移動車両Sの現在位置P1(x1、y1)、進行方向Θtのデータとを操舵指令算出手段5に出力する。
【0251】
操舵指令算出手段5は移動車両Sを操舵するための演算を行う(ステップ106)。
【0252】
ここで、図6、図13を示して上述したように、操舵指令算出手段5は、取得した目標地点P2(x2、y2)、移動車両Sの現在位置P1(x1、y1)、進行方向Θtの各データより、移動車両Sを目標地点P2(x2、y2)に向かわせるための目標旋回半径rgを上記(8)式(下記に示す)を用いて求める。
【0253】
rg={(x2−x1)2+(y2−y1)2}/{(x2−x1)・sinΘt−(y2−y1)・cosΘt}/2 … (8)
そして、上記(10)式(下記に示す)より目標旋回半径rgのときの目標操舵角度ζを求める。
【0254】
ζ=tan-1(L/rg) … (10)
こうして求めた目標操舵角度ζを、操舵指令算出手段5は移動車両S(車体7)に対して操舵指令として出力して移動車両Sの操舵角の制御を行う。
【0255】
これにより、旋回走行している移動車両Sを次の任意の幾何学図形M2に向かわせることができる。
【0256】
このように、上述した実施形態では、移動体Sが任意の幾何学図形M1を最初に検出してから所定の距離だけ進行し、かつ任意の幾何学図形M1内の所定の地点P1に到達した時点で、次の任意の幾何学図形M2に移動体Sを向かわせるようにしているので、移動体Sの予定走行経路K上の目標が一対の端点でなく任意の幾何学図形であっても、一対の端点の場合と同様に小回り現象を発生させることなく移動体Sを誘導することができる。
【0257】
また、この実施形態では、一対の端点の場合と同様に移動車両Sの前進時の操舵角ζと後退時の操舵角ζとを同一にすることができる。
【0258】
図15(a)は任意の幾何学図形Mnの目標地点Pnに向けて移動車両S0を前進させる場合を示す図であり、同図9(b)は任意の幾何学図形Mnの目標地点Pnに向けて移動車両S0を後退させる場合を示す図である。
【0259】
同図15(a)、(b)に示すように、移動車両S0の操舵角ζは前進時と後退時で同一にされている。
【0260】
従って、この実施形態では、一対の端点の場合と同様に移動車両Sの前進時と後退時の制御特性を同一にすることができる。また、操舵角ζの制御を簡易にすることができる。
【0261】
さて、上述した実施形態では、予定走行経路K上の目標データは任意の幾何学図形として説明したが、当然目標データは円形であってもよい。
【0262】
そこで、予定走行経路K上の目標データを円形とした場合の、図2の移動車両の誘導装置の動作について図3、図16を参照して説明する。
【0263】
図16は予定走行経路Kの目標データを円C1とした場合の実施形態を示す図である。
【0264】
同図16では円形C1が予定走行経路K上の目標とされている。
【0265】
なお、図3のフローチャートのステップ101〜103で行われる処理は、上述した予定走行経路K上の目標データが一対の端点あるいは任意の幾何学図形である場合の処理と同様なので説明を省略する。
【0266】
まず直進している移動車両Sを操舵せずにそのまま円C2に向けて進行させる処理について説明する。
【0267】
ステップ104では、直進している移動車両Sが現在の円C1を最初に検出してから所定の距離だけ進行し、かつ円C1内の所定の地点P1に到達した時点以降、次の円C2内を通過できるか否かを判定する。
【0268】
このときステップ104では、上述したように図2の走行条件選択手段4が移動車両Sの操舵を行うか否かを判断する。
【0269】
ここで移動車両Sが操舵しなくてもそのまま円C2を通過できる場合(ステップ104の判断YES)、走行条件選択手段4は、移動車両Sをそのまま進行させるようにするデータを操舵指令算出手段5に対して出力する(ステップ107)。
【0270】
直進している移動車両Sを操舵せずにそのまま円C2内に向けて進行させる走行条件選択手段4の処理について図17を参照して説明する。
【0271】
図17において、移動車両Sが直進する際の軌跡となる直線の方程式は、上記(4)式(下記に示す)で表される。
【0272】
(x−x1)・tanθt−(y−y1)=0 … (4)
また、中心点P2(x2、y2)、半径d/2の円C2の方程式は、下記(26)式で表される。
【0273】
(x−x2)2+(y−y2)2=(d/2)2 … (26)
そこで、上記(4)式と(26)式とを連立方程式とみて、この連立方程式の解が求められる。
【0274】
従って、この連立方程式の解が実数解であれば、上記(4)式の直線と円C2とが交差することがわかる。
【0275】
これにより、走行条件選択手段4は、移動車両Sは操舵しなくてもそのまま円C2内を通過できると判断する(ステップ104の判断YES)。
【0276】
この走行条件選択手段4の判断結果に基づいて、操舵指令算出手段5は移動車両Sに対して操舵をそのまま維持するように操舵指令を出力する(ステップ107)。
【0277】
次に直進している移動車両Sを操舵して円C2に向けて進行させる処理について説明する。
【0278】
移動車両Sが円C2内を通過できない場合(ステップ104の判断NO)、走行条件選択手段4は、移動車両Sを操舵するためのデータを操舵指令算出手段5に対して出力する。
【0279】
走行条件選択手段4で行われる処理について図17を参照して説明する。
【0280】
上述した図17に示すように走行条件選択手段4は、移動車両Sが現在の円C1を最初に検出してから所定の距離だけ進行し、かつ円C1内の所定の地点P1に到達したか否かを確認する。
【0281】
ここで移動車両Sを操舵して円C2に向かわせる場合(ステップ104の判断NO)、走行条件選択手段4は、円C2に対する現在の移動車両Sの相対位置を操舵指令算出手段5に対して出力する(ステップ107)。
【0282】
直進している移動車両Sを操舵して円C2内に向けて進行させる走行条件選択手段4の処理について図17を参照して説明する。
【0283】
図17において、上記(4)式と(26)式(下記に示す)との連立方程式の解が求められる。
【0284】
(x−x1)・tanθt−(y−y1)=0 … (4)
(x−x2)2+(y−y2)2=(d/2)2 … (26)
ここで、この連立方程式の解が実数解でなければ、上記(4)式の直線と上記(26)式の円C2とが交差しないことがわかる。
【0285】
これにより、走行条件選択手段4は、移動車両Sはこの状態では円C2内を通過できないと判断する(ステップ104の判断NO)。
【0286】
そこで、走行条件選択手段4は、上述したように予定走行経路記憶手段1から取得した目標地点P2(x2、y2)のデータと、現在運動計測手段2から取得した移動車両Sの現在位置P1(x1、y1)、進行方向θtのデータとを操舵指令算出手段5に出力する。
【0287】
操舵指令算出手段5は移動車両Sを操舵するための演算を行う(ステップ106)。
【0288】
ここで、図6、図13を示して上述したように、操舵指令算出手段5は、取得した目標地点P2(x2、y2)、移動車両Sの現在位置P1(x1、y1)、進行方向θtの各データより、移動車両Sを目標地点P2(x2、y2)に向かわせるための目標旋回半径rgを上記(8)式(下記に示す)を用いて求める。
【0289】
rg={(x2−x1)2+(y2−y1)2}/{(x2−x1)・sinθt−(y2−y1)・cosθt}/2 … (8)
そして、上記(10)式(下記に示す)より目標旋回半径rgのときの目標操舵角度ζを求める。
【0290】
ζ=tan-1(L/rg) … (10)
こうして求めた目標操舵角度ζを、操舵指令算出手段5は移動車両S(車体7)に対して操舵指令として出力して移動車両Sの操舵角の制御を行う。
【0291】
これにより、直進している移動車両Sを次の円C2に向かわせることができる。
【0292】
次に旋回走行している移動車両Sを操舵せずにそのまま円C2に向けて進行させる処理について説明する。
【0293】
ステップ105では、旋回走行している移動車両Sが現在の円C1を最初に検出してから所定の距離だけ進行し、かつ円C1内の所定の地点P1に到達したか否かを判定する。
【0294】
つまりステップ105では、図2の走行条件選択手段4が移動車両Sの操舵を行うか否かを判断する。
【0295】
ここで移動車両Sが操舵しなくてもそのまま円C2に向かわせることができる場合(ステップ105の判断YES)、走行条件選択手段4は、移動車両Sをそのまま進行させるようにするデータを操舵指令算出手段5に対して出力する(ステップ107)。
【0296】
走行条件選択手段4で行われる処理について図18を参照して説明する。
【0297】
図18において移動車両Sは進行方向Θt、旋回半径rtで旋回走行して、中心点P2(X2、Y2)、半径d/2の円C2内に向かわされているものとする。
さらに、移動車両Sが円C2の直径dを通過する時点での中心点P2からの距離を横方向偏移ηとする。
【0298】
この横方向偏移ηは、移動車両Sが現在の円C1を最初に検出してから所定の距離だけ進行し、かつ円C1内の所定の目標地点P1に到達した時点以降、上記(18)、(19)式(下記に示す)を用いて求められる。
【0299】
つまり、現在運動計測手段2によって求められた旋回半径rtと、移動車両Sの進行方向Θtとから、旋回半径rtが0より大きい場合には、
η=Y−rtcosΘt+√{rt2−(X+rtsinΘt))2} … (18)
と求められ、また旋回半径rtが0より小さい場合には、
η=Y−rtcosΘt−√{rt2−(X+rtsinΘt))2} … (19)
と求められる。
【0300】
ここで、上記(18)式、(19)式を用いて求められた横方向偏移ηと、円C2の半径d/2との関係が−d/2<η<d/2である場合、走行条件選択手段4は移動車両Sが円C2内を通るものと判断する。
【0301】
この走行条件選択手段4の判断結果に基づいて、操舵指令算出手段5は移動車両Sに対して操舵をそのまま維持するように操舵指令を出力する(ステップ107)。
【0302】
次に旋回走行している移動車両Sを操舵して円C2に向けて進行させる処理について説明する。
【0303】
移動車両Sが円M2を通過できない場合(ステップ105の判断NO)、走行条件選択手段4は、移動車両Sを操舵するためのデータを操舵指令算出手段5に対して出力する。
【0304】
走行条件選択手段4で行われる処理について図14を参照して説明する。
【0305】
上述したように横方向偏移ηが、移動車両Sが現在の円C1を最初に検出してから所定の距離だけ進行し、かつ円C1内の所定の地点P1に到達した時点以降、上記(18)、(19)(下記に示す)を用いて求められる。
【0306】
η=Y−rtcosΘt+√{rt2−(X+rtsinΘt))2} … (18)
η=Y−rtcosΘt−√{rt2−(X+rtsinΘt))2} … (19)
ここで、上記(18)式、(19)式を用いて求められた横方向偏移ηが円C2の直径dに含まれない場合、横方向偏移ηと円C2の半径d/2との関係はη<−d/2、d/2<ηとなる。
【0307】
これにより走行条件選択手段4は移動車両Sが円C2内を通ることができないと判断する。(ステップ104の判断NO)。
【0308】
そこで、走行条件選択手段4は、上述したように予定走行経路記憶手段1から取得した目標地点P2(x2、y2)のデータと、現在運動計測手段2から取得した移動車両Sの現在位置P1(x1、y1)、進行方向Θtのデータとを操舵指令算出手段5に出力する。
【0309】
操舵指令算出手段5は移動車両Sを操舵するための演算を行う(ステップ106)。
【0310】
ここで、図6、図17を示して上述したように、操舵指令算出手段5は、取得した目標地点P2(x2、y2)、移動車両Sの現在位置P1(x1、y1)、進行方向Θtの各データより、移動車両Sを目標地点P2(x2、y2)に向かわせるための目標旋回半径rgを上記(8)式(下記に示す)を用いて求める。
【0311】
rg={(x2−x1)2+(y2−y1)2}/{(x2−x1)・sinΘt−(y2−y1)・cosΘt}/2 … (8)
そして、上記(10)式(下記に示す)より目標旋回半径rgのときの目標操舵角度ζを求める。
【0312】
ζ=tan-1(L/rg) … (10)
こうして求めた目標操舵角度ζを、操舵指令算出手段5は移動車両S(車体7)に対して操舵指令として出力して移動車両Sの操舵角の制御を行う。
【0313】
これにより、旋回走行している移動車両Sを円C2に向かわせることができる。
【0314】
このように、上述した実施形態では、移動体Sが円C1を最初に検出してから所定の距離だけ進行し、かつ円C1内の所定の地点P1に到達した時点で、次の円C2に移動体Sを向かわせるようにしているので、移動体Sの予定走行経路K上の目標が一対の端点が円であっても、一対の端点の場合と同様に小回り現象を発生させることなく移動体Sを誘導することができる。
【0315】
また、この実施形態では、一対の端点の場合と同様に移動車両Sの前進時の操舵角ζと後退時の操舵角ζとを同一にすることができる。
【0316】
図19(a)は円Cn内の目標地点(円Cnの中心点)Pnに向けて移動車両S0を前進させる場合を示す図であり、同図19(b)は円Cnの目標地点Pnに向けて移動車両S0を後退させる場合を示す図である。
【0317】
同図19(a)、(b)に示すように、移動車両S0の操舵角ζは前進時と後退時で同一にされている。
【0318】
従って、この実施形態では、一対の端点の場合と同様に移動車両S0の前進時と後退時の制御特性を同一にすることができる。また、操舵角ζの制御を簡易にすることができる。
【0319】
次に予定走行経路K上の目標データの生成について説明する。
【0320】
例えば、点Pn(xn、yn)、及びこの点Pn(xn、yn)を中心とする半径dn/2の円から成る点列データから一対の端点の目標データを生成するものとする。
【0321】
なお、ここでは一対の端点をゲートとして説明する。
【0322】
また、点列データは上述したようにCAD(Computer Automation Design)やティーチングプレイバックによって作成される。
【0323】
そして、点列データからゲートに変換されたデータは目標データとして予定走行経路記憶手段1に記憶されている。
【0324】
図20(a)は、点列データの密度が予定経路Kの曲率に比べて十分密である場合を示す図であり、同図(b)は、点列データの密度が予定経路Kの曲率に比べて疎となる場合を示す図である。
【0325】
同図20(b)の走行経路Ka2に示すように、点列データの密度が予定経路Kの曲率に比べて疎になると、予定走行経路Kの曲線が再現できなくなる。
【0326】
従って、予定走行経路K上の目標データの生成について説明するにあたっては、同図20(a)に示すように、目標データが生成される点列データの密度が予定経路Kの曲率に比べて十分密であるものとする。
【0327】
また、目標データが生成される点列データの密度は、隣接する3つの目標地点を円弧で結んだときに、走行経路Ka1に示すように予定走行経路Kの曲線を十分再現できる程度とする。
【0328】
そこで、隣接する3つの目標地点が一直線上に並んでいる点列データを想定し、移動車両Sが初めの目標地点P1の周辺を通過して次の目標地点P2に向かう際に、目標地点P2から目標ゲートG2を生成する場合について図21を参照して説明する。
【0329】
図21は3つの目標地点が一直線上に並んでいる点列データを示す図である。
【0330】
同図21に示すように、3点の目標地点が一直線上に並んでいる場合、目標地点P1からP2への方向ベクトル、およびP1からP3への方向ベクトルは同一になる。
【0331】
よって、これらの方向ベクトルの関係は下記(27)式で表される。
【0332】
(x3−x1)/(y3−y1)=(x2−x1)/(y2−y1) … (27)
さらに、上記(27)式を変形すると、下記(28)式が得られる。
【0333】
(x3−x1)・(y2−y1)−(x2−x1)・(y3−y1)=0 … (28)
ここで、上記(28)式が成立している場合、目標地点P1、P2、P3の3点は一直線上に存在する。
【0334】
また、目標地点P2から生成される目標ゲートG2の方向ベクトルは目標地点P1(x1、y1)からP2(x2、y2)への方向ベクトルと直交する。よって目標ゲートG2の傾きθ2は下記(29)式で表される。
【0335】
従って、予定走行経路Kが直線の場合に目標地点P2から生成される目標ゲートG2は、中心点P2(x2、y2)、幅d2(目標地点P2(x2、y2)を中心とする円の直径)、及び上記(29)式で表される方向ベクトル(cosθ2、sinθ2)によって設定することができる。
【0336】
ところで、上記(28)式(下記に示す))が成立しない場合、目標地点P1、P2、P3の3点は直線上にないから、これら目標地点P1、P2、P3を通過するために移動車両Sは例えば円弧を描きながら旋回動作を行わねばならない。
【0337】
(x3−x1)・(y2−y1)−(x2−x1)・(y3−y1)=0 … (28)
図22は3つの目標地点P1、P2、P3が、移動車両Sの旋回円の円周上に並んでいる点列データを示す図である。
【0338】
この場合、同図22に示すように予定走行経路Kは曲線となる。
【0339】
そこで、次に隣接する3つの目標地点が移動車両Sの旋回円の円周上に並んでいる点列データを想定し、移動車両Sが初めの目標地点P1の周辺を通過して次の目標地点P2に向かう際に、目標地点P2から目標ゲートG2を生成する場合について図23、図24を参照して説明する。
【0340】
図23は3つの目標地点P1、P2、P3を通る円と目標ゲートの傾きを示す図である。
【0341】
ここで、目標地点P2から生成される目標ゲートG2の方向ベクトル(cosθ2、sinθ2)は、同図23の円の中心点P0(x0、y0)から目標ゲートG2の中心点P2(x2、y2)(目標地点P2)に向いたベクトルと等しい。
【0342】
よって、目標ゲートG2の方向ベクトル(cosθ2、sinθ2)は、下記(30)式で表される。
【0343】
また、目標ゲートG2の中心点P2(x2、y2)を通り、中心点P0(x0、y0)の円の半径r0は下記(31)式で表される。
【0344】
r0=√{(x2−x0)2+(y2−y0)2 } … (31)
ここで、円の中心点P0(x0、y0)の設定について説明する。
【0345】
図24は3つの目標地点P1、P2、P3を通る円の中心点P0(x0、y0)の設定について説明する図である。
【0346】
中心点P0(x0、y0)は、目標地点P1、P2を結ぶ線を垂直に2等分する直線
Tと、目標地点P2、P3を結ぶ線を垂直に2等分する直線Sとの交点である。
【0347】
ここで、直線Tは下記(32)式、一方、直線Sは下記(33)式で表される。
【0348】
従って、これら直線T、Sの交点となる中心点P0(x0、y0)の座標は下記(34)式で表される。
【0349】
但し、
t0={(−xb+xd)・yc−(−yb+yd)・xc}/(xa・yc−ya・xc)
… (35)
従って、隣接する3つの目標地点P1、P2、P3が円周上に存在する場合に目標地点P2から生成される目標ゲートG2は、中心点P2(x2、y2)、幅d2(目標地点P2(x2、y2)を中心とする円の直径)、及び上記(30)式で表される方向ベクトル(cosθ2、sinθ2)によって設定することができる。また、目標ゲートG2の中心点P2(x2、y2)を通り、中心点P0(x0、y0)の円の半径r0は上記(31)式で表することができる。
【0350】
以上説明したように、本実施形態では、移動車両Sの前方の予定走行経路Kが曲線の場合について、点列データから目標ゲートを生成するようにしているので、点列データの全てを目標ゲートとして生成して記憶しておく場合と比べてデータ量を減らすことができる。この結果、点列データから目標ゲートを生成する演算が、点列データの全てを目標ゲートに生成する演算を行う場合と比べて容易になる。
【0351】
また、本実施形態では、移動車両Sの前方の間もなく通過する予定の複数の目標点列について、点列データから目標ゲートを生成するようにしているが、本発明では移動車両Sの前方の間もなく通過する予定の一つの目標点について、点列データから目標ゲートを生成してもよい。
【0352】
なお、本実施形態では、移動車両Sの前方の予定走行経路Kが曲線の場合に、移動車両Sの前方の間もなく通過する予定の複数の点列について、点列データから目標ゲートを生成するようにしているが、移動車両Sの前方の予定走行経路Kが直線であっても、移動車両Sの前方の間もなく通過する予定の一つないし複数の点列について、点列データから目標ゲートを生成してもよい。
【0353】
また、移動体Sの予定走行経路Kが鋭角なカーブであっても、小回り現象を発生させることなく移動体Sを誘導することができる。
【0354】
ところで隣接する3つの目標地点P1、P2、P3、を通り、中心点P0(x0、y0)、半径r0の円の円周上を移動車両Sが走行しているとき、下記の例(イ)、(ロ)、(ハ)の場合には、車速指令算出手段6から移動車両Sに対して許容速度以下になるように適宜減速の走行指令を出力する必要がある。
【0355】
例(イ):移動車両Sは小さな旋回半径r0のカーブを高速で走行すると遠心力が生じ、車体が横滑りしてカーブを曲がりきれない場合がある。この場合、予め自動的に移動車両を旋回可能速度まで減速させる必要がある。
【0356】
例(ロ):移動車両Sが直線走行から小さな旋回半径r0のカーブに突入して、目標ゲートG1を通過し、次の目標ゲートG2に向かう瞬間、移動車両Sがステアリング車であれば操舵を直進から急旋回になるようにしなければならない。このとき、移動車両Sが高速で走行していれば、操舵を急旋回してもカーブを曲がりきれない場合がある。この場合、予め自動的に移動車両を操舵可能速度まで減速させる必要がある。
【0357】
例(ハ):上記例(イ)、(ロ)の場合、目標ゲートG1を通過した時点で目標ゲートG2に向かわせるように大幅に移動車両Sを減速しても、移動車両Sが大幅に高速で走行しているため目標ゲートG2の周辺のカーブを曲がりきれない場合がある。
【0358】
そこで、点列データから目標ゲートを生成する場合には、目標ゲートG1を通過する時点ではなく、移動車両が安全に減速あるいは停止できる十分早い時点で点列データから目標ゲートを生成する必要がある。
【0359】
さて、予定走行経路上に予定外の障害物が存在する場合には、移動車両を障害物から回避させるか、あるいは移動車両を障害物の直前で減速、停止させるなどの措置が必要になる。
【0360】
そこで、移動車両を障害物から回避させたり、移動車両を障害物の直前で減速、停止させる場合に予定走行経路上の目標データと異なるデータを生成する実施形態について図2、図25を参照して説明する。
【0361】
図25は移動車両を障害物から回避させる場合に予定走行経路上の目標データと異なるデータを生成する実施形態を示す図である。
【0362】
なお、この実施形態では目標データを点列データとし、目標データと異なるデータも点列データとしている。
【0363】
図25では、移動車両Sが予定走行経路K上の目標地点P1、P2、P3、P4、P5、P6、P7を順次通過するように進行する際に、移動車両Sの前方のαmの距離(予定走行経路K上の目標地点P3とP4との間)に障害物SBが存在する場合を想定している。また、同図25においては、移動車両Sの右前方から対向車TKが走行してくるものとする。
【0364】
ここで、予定走行経路K上に障害物SBが存在すると、図2の障害物検知手段8が下記(ニ)、(ホ)、(ヘ)、(ト)に示す障害物に関する情報を検知する。
【0365】
(ニ)障害物SBが移動車両Sの前方の距離αm、進路正面を中央にして左右方向に±β度の範囲に存在する。
【0366】
(ホ)移動車両Sの右前方から対向車が走行してくるので右側に回避したら危険である。
【0367】
(ヘ)移動車両Sの左前方には障害物がない。
【0368】
(ト)移動車両Sの左後方からは他の車両が迫ってきていない。
【0369】
障害物検知手段8は、上記(ニ)、(ホ)、(ヘ)、(ト)に示す障害物に関する情報を予定走行経路変更手段3に出力する。
【0370】
予定走行経路変更手段3は、障害物検知手段8から障害物の情報を受け取るとともに、現在運動計測手段2から移動車両Sの現在の運動状態の情報を取得する。そして、これら障害物の情報と移動車両Sの現在の運動状態の情報とに基づいて、走行条件選択手段4に対して「予定走行経路K上において移動車両Sから距離αの地点に障害物SBが存在するので、進行方向に対して左側に予定走行経路Kを変更せよ。障害物SBを回避して元の予定走行経路Kに復帰する際の経路に、もし新たな障害物が発見された場合にはそのまま減速停止せよ。もし元の予定走行経路Sに復帰できればそのまま元の予定走行経路Kに復帰して走行せよ。」という予定走行経路Kの変更に関する情報を出力する。
【0371】
走行条件選択手段4は、予定走行経路変更手段3から「予定走行経路K上において移動車両Sから距離αの地点に障害物SBが存在するので、進行方向に対して左β度の方向に回避して停車準備せよ。」との情報を取得する。
【0372】
そして、走行条件選択手段4はこの情報に基づき、直ちに安全性が確保できる範囲で可能な限り減速させるよう車速指令算出手段6に走行条件データを出力する。そして車速指令算出手段6は移動車両Sに対して減速させるように走行指令を出力する。さらに走行条件選択手段4は、移動車両Sから距離αmの地点から、進行方向に対して左β度の方向に移動車両Sの幅の分だけ空けて移動車両Sが走行できるように、予定走行経路K上の目標地点P2、P3、P4、P5、P6、P7と異なる地点VP2、VP3、VP4(障害回避点)、VP5(停止可能点)、VP6(安全停止点)を生成する。
【0373】
VP4(障害回避点)は目標地点P4を左β度の方向に移動させた地点である。
【0374】
VP5(停止可能点)は路面状況が悪くても移動車両Sが停止可能な地点である。
【0375】
VP6(安全停止点)はVP5よりも離れた次の地点である。
【0376】
地点VP2、VP3、VP4、VP5、VP6を生成した後、走行条件選択手段4は、地点VP2、VP3、VP4、VP5、VP6からさらにゲートを生成していく。
【0377】
そして、走行条件選択手段4は、移動車両Sの現在の運動状態の情報と上述した予定走行経路Kの変更に関する情報とに基づいて操舵指令算出手段5にはゲートに対する現在の移動車両の相対位置情報、一方、車速指令算出手段6に走行条件を出力する。
【0378】
さらに、移動車両Sに対して操舵指令算出手段5からは操舵指令(ゲートを通過するために必要な操舵角度)が出力され、車速指令算出手段6からは走行指令(ゲートを通過するのに必要な速度)が出力される。
【0379】
これにより、地点VP2、VP3、VP4、VP5、VP6から生成されたゲートを通過するように移動車両Sが誘導される。
【0380】
但し、移動車両Sの回避動作時の走行指令は地点VP5で停止可能な速度である。
【0381】
次に移動車両Sを障害物SBから回避させて予定走行経路Kに復帰させる場合について図26を参照して説明する。
【0382】
図26は移動車両Sを障害物SBから回避させて予定走行経路Kに復帰させる場合を説明する図である。
【0383】
図26では、地点VP4と目標地点P7との間の復帰用走行経路K1に復帰用のゲートTG6、TG7を生成している。
【0384】
ここでは、まず障害物検知手段8が復帰用走行経路K1を形成する予定の場所に障害物がないことを確認する。
【0385】
そして、予定走行経路変更手段3が「障害物センサの視野範囲に障害物なし」という情報を走行条件選択手段4に対して出力する。
【0386】
走行条件選択手段4はこの情報に基づいて、移動車両Sを現在の回避用走行経路K0から予定走行経路K上に復帰させるための復帰用ゲートTG6、TG7を、復帰用走行経路K1上に生成するとともに、移動車両Sの速度を元の速度に戻す。
【0387】
これにより移動車両Sは、復帰用ゲートTG6、TG7を通過して予定走行経路K上に復帰し、障害物SBが存在する地点P4を走り去る。
【0388】
このように、上述した実施形態では、障害物のある危険な地点で移動車両を停止させる必要がないので、移動車両と後続車両による追突事故を未然に防止することができる。
【0389】
なお、予定走行経路K上で障害物SBを発見したら移動車両Sを減速させる必要があることは上述した。
【0390】
ここで、移動車両Sの現在位置である地点P1から回避完了の地点VP4までの間は、さらにブレーキをかけて移動車両Sを減速させながら、急速にステアリングをきる動作が必要になる。
【0391】
そこで、移動車両Sの現在位置である地点P1から回避直前まで地点VP2、VP3を生成するが、これら地点VP2、VP3を通る移動車両Sの旋回円の半径r0は現在の速度で安全に操舵するのに十分大きな旋回半径とする。
【0392】
また、この実施形態では移動車両Sの現在位置は地点P1、障害物SBの位置は目標地点P3とP4との間に存在しているものとして説明しているが、理想的に移動車両Sは常に停止、操舵が可能な速度で走行させて、速度が高ければ地点P1よりも手前で減速させることが望ましい。
【0393】
次に上述した実施形態以外に、移動車両を障害物から回避させたり、移動車両を障害物の直前で減速、停止させる場合の実施形態について説明する。
【0394】
図27は移動車両を車庫に入れる場合に予定走行経路上の目標データと異なるデータを生成する実施形態を示す図である。
【0395】
同図27において、走行条件選択手段4は予定走行経路K上の目標ゲートG1、G2を通過した移動車両Sが目標ゲートG3に到達した時点で目標ゲートG1、G2、G3と異なるゲートTG1、TG2を生成する。
【0396】
そこで、移動車両Sを目標ゲートG3からゲートTG1、TG2に向かわせる。
【0397】
そして、ゲートTG2に到達した時点で移動車両Sを後退させて車庫SK内に生成したゲートPG1、PG2に向かわせる。
【0398】
このように、この実施形態では予定走行経路Kを走行している移動車両Sを後退させて車庫SKに入れることができる。
【0399】
図28は予定走行経路を走行している移動車両を予定走行経路と異なる走行経路に合流させる場合に予定走行経路上の目標データと異なるデータを生成する実施形態を示す図である。
【0400】
図28において、走行条件選択手段4は予定走行経路K上の目標ゲートG1に到達した時点で、目標ゲートG1と異なるゲートTG1を生成する。
【0401】
そこで、移動車両SをゲートTG1に向かわせる。
【0402】
そして、ゲートTG1に到達した時点で移動車両Sを予定走行経路Kb上の目標ゲートG2′、G3′に向かわせる。
【0403】
このように、この実施形態では予定走行経路Kを走行している移動車両Sを予定走行経路Kと異なる走行経路Kbに合流させることができる。
【0404】
図29は予定走行経路を走行している移動車両の前方に障害物が存在する場合、移動車両を障害物の手前で減速させる実施形態を示す図である。
【0405】
図29において、走行条件選択手段4は予定走行経路K上の目標ゲートG2に到達した時点で、目標ゲートG1、G2と異なるゲートTG1、TG2を障害物SB′の手前に生成する。
【0406】
そこで、移動車両SをゲートTG1、TG2で順次減速させる。
【0407】
このように、この実施形態では移動車両Sの前方に障害物SB′が存在する場合、移動車両Sを障害物の手前で減速させることができる。
【0408】
図30は移動車両の予定走行経路上に障害物が存在する場合に予定走行経路上の目標データと異なるデータを生成して障害物を回避する実施形態を示す図である。
【0409】
図30において、走行条件選択手段4は予定走行経路K上の目標ゲートG1に到達した時点で、目標ゲートG1と異なるゲートTG1、TG2、TG3を移動車両Sが障害物SB′を回避できるように進行方向の右側に生成する。
【0410】
そこで、移動車両SをゲートTG1、TG2、TG3に向かわせる。
【0411】
そして、ゲートTG3に到達した時点で移動車両Sを元の予定走行経路K上の目標ゲートG2に向かわせる。
【0412】
このように、この実施形態では移動車両Sの予定走行経路K上に障害物SB′が存在する場合、障害物SB′を回避することができる。
【0413】
図31は予定走行経路を走行している移動車両の前方に障害物が存在する場合、移動車両を障害物の手前で停止させる実施形態を示す図である。
【0414】
図31において、走行条件選択手段4は予定走行経路K上の目標ゲートG2に到達した時点で、目標ゲートG1、G2と異なるゲートTG1、TG2を障害物SB′の手前に生成する。
【0415】
そこで、移動車両SをゲートTG1で急減速させて、TG2またはTG3で停止させる。
【0416】
このように、この実施形態では移動車両Sの前方に障害物SB′が存在する場合、移動車両Sを障害物の手前で停止させることができる。
【0417】
図32は予定走行経路を走行している移動車両を停止点に横付けして停止させる場合に予定走行経路上の目標データと異なるデータを生成する実施形態を示す図である。
【0418】
図32において、走行条件選択手段4は予定走行経路K上の目標ゲートG2に到達した時点で、目標ゲートG1、G2と異なるゲートTG1、TG2を目標ゲートG2と停止点Psとの間に生成し、停止点PsにTG3を生成する。
【0419】
そこで、移動車両SをゲートTG1、TG2に向かわせながら減速させ、ゲートTG3で停止させる。
【0420】
このように、この実施形態では予定走行経路Kを走行している移動車両Sを停止点Psに横付けして停止させることができる。
【0421】
図33は停止点に横付けされて停止している移動車両を、発進させて徐々に加速させ、予定走行経路に復帰させる場合に予定走行経路上の目標データと異なるデータを生成する実施形態を示す図である。
【0422】
図33において、走行条件選択手段4は停止点Psから予定走行経路K上の目標ゲートG1との間に目標ゲートG1、G2と異なるゲートTG1、TG2、TG3を生成する。
【0423】
そこで、移動車両SをゲートTG1、TG2、TG3に向かわせながら徐々に加速させ、予定走行経路K上の目標G1、G2に向かわせる。
【0424】
このように、この実施形態では停止点Psに横付けされて停止している移動車両Sを発進させて徐々に加速させ、予定走行経路Kに復帰させることができる。
【0425】
図34は移動車両の隣を走行している車両が移動車両に対して幅寄せしてきた場合に、この幅寄せしてくる車両から移動車両を回避させる実施形態を示す図である。
【0426】
図34において、走行条件選択手段4は予定走行経路K上の目標ゲートG1に到達した時点で、目標ゲートG1、G2と異なるゲートTG1、TG2、TG3を移動車両Sが車両Sxを回避できるように進行方向の右側に生成する。
【0427】
そこで、移動車両SをゲートTG1、TG2、TG3に向かわせる。
【0428】
そして、ゲートTG3に到達した時点で移動車両Sを元の予定走行経路K上の目標ゲートG2に向かわせる。
【0429】
このように、この実施形態では移動車両Sの隣を走行している車両Sxが移動車両Sに対して幅寄せしてきた場合に、この幅寄せしてくる車両Sxから移動車両Sを回避させることができる。
【0430】
図35は移動車両の予定走行経路が急カーブの場合に目標ゲートと目標ゲートとの間隔を狭くして急カーブでの移動車両の速度を下げる実施形態を示す図である。
【0431】
図35において、急カーブKcに生成されている目標ゲートG3とG4との間隔WTおよび目標ゲートG3とG4との間隔WTは、目標ゲートG1とG2との間隔Wおよび目標ゲートG6とG7との間隔Wに比べて狭くされている。
【0432】
ここで、各目標ゲートでは移動車両Sが各目標ゲートに到達した時点で操舵指令算出手段5が操舵の演算を行うので、急カーブKcでは目標ゲートの間隔が狭くなった分だけ演算が連続して行われるようになる。この結果、急カーブKcでは演算時間が長くなるので移動車両Sが急カーブKcを通過する速度vが下がる。このように目標ゲート間の通過時間が一定になるように調整することができる。
【0433】
従って、この実施形態では予定走行経路Kが急カーブの場合には、移動車両Sの速度vを下げて脱輪を防ぎ、移動車両Sを安全に走行させることができる。
【0434】
図36は急カーブの予定走行経路を走行している移動車両に及ぼす遠心力を減らすために速度を下げる実施形態を示す図である。
【0435】
同図36において、急カーブの予定走行経路Kを走行している移動車両Sに及ぼす遠心力は、旋回半径r0に反比例し、移動車両Sの速度vに比例する。
【0436】
また、移動車両Sが急カーブを走行すると移動車両Sの旋回半径r0は小さくなる。
【0437】
このため、急カーブの予定走行経路Kを走行している移動車両Sに及ぼす遠心力は増加し、移動車両Sが横転事故やスリップ事故を起こす虞がある。
【0438】
従って移動車両Sの速度vは下げる必要がある。
【0439】
そこで、現在運動計測手段2(車速センサで速度v、角速度センサでωを各々検出)によって移動車両Sの旋回半径r0を求め(r0=v/ω)、車体7(移動車両S)において旋回半径r0が小さければ速度vを下げるように調整する。
【0440】
これにより急カーブの予定走行経路Kを走行している移動車両Sの横転事故やスリップ事故を防ぐことができる。
【0441】
なお、上述した実施形態では、上記(1)式及び(4)式に示す直線の方程式の傾きにtanθを用いているが、θが90度の整数倍のとき直線はX軸ないしY軸に平行になる。この場合、直線と点の座標との位置関係を判定するには、適宜、X座標ないしY座標だけを比較すればよい。
【0442】
また、上述した実施形態では、目標点列に予定走行経路記憶手段1に記憶された点列データを用いているが、この記憶された点列データに対応して実際の道路に磁石などの目印を埋設したり、道路に沿って移動車両Sの通過位置を示す発信機を設置すれば、現在運動計測手段2によって移動車両Sの現在位置を精度良く検出することができる。
【図面の簡単な説明】
【図1】図1は、本発明に係わる移動車両の誘導装置の実施形態を示す図である。
【図2】図2は、本発明に係わる移動車両の誘導装置の構成を示すブロック図である。
【図3】図3は、本発明に係わる移動車両の誘導装置が行う処理を説明するフローチャートである。
【図4】図4は、移動車両が一対の端点間を通過したことを確認する処理を説明する図である。
【図5】図5は、直進している移動車両を一対の端点間に向けて進行させる処理を説明する図である。
【図6】図6は、移動車両を等価2輪車に置き換えて移動車両の操舵を説明する図である。
【図7】図7は、スキッドステア方式の移動車両の操舵を説明する図である。
【図8】図8は、旋回走行している移動車両を一対の端点間に向けて進行させる処理を説明する図である。
【図9】図9(a)は目標ゲートに向けて移動車両を前進させる場合を示す図であり、同図9(b)は目標ゲートに向けて移動車両を後退させる場合を示す図である。
【図10】図10は、本発明に係わる移動車両の誘導装置の実施形態の変形例を示す図である。
【図11】図11は、本発明に係わる移動車両の誘導装置の実施形態の変形例を示す図である。
【図12】図12は、本発明に係わる移動車両の誘導装置の実施形態を示す図である。
【図13】図13は、直進している移動車両を任意の幾何学図形に向けて進行させる処理を説明する図である。
【図14】図14は、旋回走行している移動車両を任意の幾何学図形に向けて進行させる処理を説明する図である。
【図15】図15(a)は任意の幾何学図形に向けて移動車両を前進させる場合を示す図であり、同図15(b)は任意の幾何学図形に向けて移動車両を後退させる場合を示す図である。
【図16】図16は、本発明に係わる移動車両の誘導装置の実施形態を示す図である。
【図17】図17は、直進している移動車両を円に向けて進行させる処理を説明する図である。
【図18】図18は、旋回走行している移動車両を円に向けて進行させる処理を説明する図である。
【図19】図19(a)は円に向けて移動車両を前進させる場合を示す図であり、同図19(b)は円に向けて移動車両を後退させる場合を示す図である。
【図20】図20(a)は、点列データの密度が予定経路の曲率に比べて十分密である場合を示す図であり、同図(b)は、点列データの密度が予定経路Kの曲率に比べて疎となる場合を示す図である。
【図21】図21は、3つの目標地点が一直線上に並んでいる点列データを示す図である。
【図22】図22は、3つの目標地点が移動車両の旋回円の円周上に並んでいる点列データを示す図である。
【図23】図23は、3つの目標地点を通る円と目標ゲートの傾きを示す図である。
【図24】図24は、3つの目標地点を通る円の中心点の設定を説明する図である。
【図25】図25は、移動車両を障害物から回避させる場合に予定走行経路上の目標データと異なるデータを生成する実施形態を示す図である。
【図26】図26は、移動車両を障害物から回避させて予定走行経路に復帰させる場合を説明する図である。
【図27】図27は、本発明に係わる移動車両の誘導装置の実施形態の変形例を示す図である。
【図28】図28は、本発明に係わる移動車両の誘導装置の実施形態の変形例を示す図である。
【図29】図29は、本発明に係わる移動車両の誘導装置の実施形態の変形例を示す図である。
【図30】図30は、本発明に係わる移動車両の誘導装置の実施形態の変形例を示す図である。
【図31】図31は、本発明に係わる移動車両の誘導装置の実施形態の変形例を示す図である。
【図32】図32は、本発明に係わる移動車両の誘導装置の実施形態の変形例を示す図である。
【図33】図33は、本発明に係わる移動車両の誘導装置の実施形態の変形例を示す図である。
【図34】図34は、本発明に係わる移動車両の誘導装置の実施形態の変形例を示す図である。
【図35】図35は、本発明に係わる移動車両の誘導装置の実施形態の変形例を示す図である。
【図36】図36は、本発明に係わる移動車両の誘導装置の実施形態の変形例を示す図である。
【図37】図37は、従来技術を示す図である。
【図38】図38(a)は等価2輪車を前進させて目標地点に誘導する場合を示す図であり、同図(b)は等価2輪車を後退させて目標地点に誘導する場合を示す図である。
【符号の説明】
S…移動車両
K…予定走行経路
PRn、PLn…一対の端点[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a moving body guiding apparatus, and more particularly to a moving body guiding apparatus suitable for a case where the moving body bends a sharp curve with a narrow road width, or when the moving body moves forward or backward.
[0002]
[Background Art and Problems to be Solved by the Invention]
As a conventional technique for guiding a moving vehicle, there is a technique called a “point tracking method”.
[0003]
FIG. 37 is a diagram showing a technique for guiding a moving vehicle using the “point tracking method”.
[0004]
In the technique shown in FIG. 37, a curve that is a planned travel route of the moving vehicle S is taught as a point sequence of the target points P1, P2, P3, P4, P5, P6, and P7 of the moving vehicle S. A region where the moving vehicle S travels is expressed in a coordinate system, and target points P1, P2, P3, P4, P5, P6, and P7 of the moving vehicle S traveling in this coordinate system are expressed in coordinate data.
[0005]
Therefore, in the technique shown in FIG. 37, the coordinate data and the radii r1, r2, r3, r4, r5, r6, r7 of the circles centered on the target points P1, P2, P3, P4, P5, P6, P7, and Is used to guide the moving vehicle S to sequentially follow the target points P1, P2, P3, P4, P5, P6, and P7.
[0006]
The technique shown in FIG. 37 is suitable for guiding a large construction machine traveling on a vast rough terrain.
[0007]
On the other hand, small mobile vehicles can be used indoors, on narrow premises, or on narrow roads, such as using automated guided vehicles and automated forklifts in automated factories, or using automated vehicles with ITS (Intelligent Transportation System). May be induced.
[0008]
This case will be described with reference to FIG.
[0009]
For example, the moving vehicle S is guided to bend a curve while sequentially following each target point P1, P2, P3, P4, P5, P6, P7.
[0010]
At this time, since the curve is steep, the moving vehicle S is greatly deviated from the target points P1, P2, P3, P4, P5, P6, and P7, and a small turning phenomenon occurs through the inside K ′ of the curve.
[0011]
It is considered that this is because the moving vehicle S is guided toward the next target when it enters the circle corresponding to the current target point.
[0012]
That is, it is considered that the cause is that the moving vehicle S is guided to the next target before the target point.
[0013]
For this reason, if there is an obstacle at the point Kp inside the curve, there is a possibility that the obstacle and the moving vehicle S collide to cause an accident.
[0014]
The present invention has been made in view of such a situation, and even if the planned traveling route of the moving body is an acute curve, the first problem to be solved is to guide the moving body without generating a small turning phenomenon. .
[0015]
In the field of automotive engineering, a steering type four-wheeled vehicle may be virtually replaced with a two-wheeled vehicle. The two-wheeled vehicle in this case is called an equivalent two-wheeled vehicle.
[0016]
FIG. 38A is a diagram showing a case where the equivalent two-wheeled vehicle is moved forward and guided to the target point, and FIG. 38B is a diagram showing a case where the equivalent two-wheeled vehicle is moved backward and guided to the target point. is there.
[0017]
38 (a) and 38 (b), the equivalent two-wheeled vehicle S0 includes two wheels, a steering wheel S1 and a fixed wheel S2.
[0018]
In FIGS. 38 (a) and 38 (b), the steering angle ζ of the steered wheel S1 is directed to the target point Pn (Xn, Yn) so that the equivalent two-wheeled vehicle reaches the target point Pn (Xn, Yn). I have to.
[0019]
As shown in FIG. 38 (a), when the equivalent two-wheeled vehicle S0 is advanced to reach the target point Pn (Xn, Yn), the fixed wheel S2 advances according to the steering angle ζ of the steered wheel S1.
[0020]
Therefore, when the equivalent two-wheeled vehicle S0 is moved forward, the equivalent two-wheeled vehicle S0 can reach the target point Pn (Xn, Yn).
[0021]
However, as shown in FIG. 38B, when the equivalent two-wheeled vehicle S0 is moved backward to reach the target point Pn (Xn, Yn), the steering angle ζ is set to the target point Pn (Xn, Yn), the traveling direction of the steered wheel S1 and the fixed wheel S2 is different.
[0022]
Therefore, when the equivalent two-wheeled vehicle S0 is moved backward, the equivalent two-wheeled vehicle S0 cannot reach the target point Pn (Xn, Yn).
[0023]
That is, in FIGS. 38 (a) and 38 (b), the steering angle ζ when the equivalent two-wheeled vehicle moves forward cannot be made the same as the steering angle ζ when the vehicle reverses.
[0024]
For this reason, in the conventional technique for guiding the moving vehicle S to the target point Pn (Xn, Yn), for example, as shown in Japanese Patent Laid-Open No. 63-19011, a control algorithm is used when the equivalent two-wheeled vehicle moves forward and backward. And switched.
[0025]
As a result, the above-described prior art causes a problem that the control characteristics change when the moving vehicle S moves forward and backward. Further, there arises a problem that the control of the steering angle ζ becomes complicated.
[0026]
The present invention has been made in view of such a situation, and a second problem to be solved is to make the control characteristics of the moving vehicle forward and backward the same and to simplify the control of the steering angle ζ.
[0027]
[Means for solving the problems and effects]
Therefore, in the first invention of the present invention, in order to achieve the first problem to be solved,
In the guidance device for a moving body that guides the moving body toward the next target when the current target is reached among a plurality of targets on the planned traveling route of the moving body,
Scheduled travel routeTop target pointA pair of end points separated by a predetermined distance acrossArea betweenIs the goal,
When the moving body reaches between the current pair of end points,When traveling with the current steering angle maintained, it is determined whether or not the next target area between the pair of end points is reached,
If it is determined that the vehicle has reached the current steering angle, the current steering angle is maintained. If it is determined that the vehicle has not reached, the target steering angle for directing the moving body to the target point between the pair of target end points is calculated. The steering angle is changed based on the target steering angle, and then between the target pair of end points.The moving body is made to face.
[0028]
The first invention will be described with reference to FIG.
[0029]
According to the first aspect of the invention, the pair of end points PRn and PLn separated by a predetermined distance with the planned travel route K interposed therebetween are set as the targets of the moving body S.
[0030]
Therefore, for example, when the moving body S reaches between the current pair of end points PR1 and PL1, the moving body S is directed between the next pair of end points PR2 and PL2.
[0031]
Therefore, according to the first aspect of the invention, when the moving body S reaches between the current pair of end points PR1 and PL1, the moving body S is made to face between the next pair of end points PR2 and PL2. Even if the planned traveling route K of the moving body S is an acute curve, the moving body S can be guided without causing a small turning phenomenon.
[0032]
In the second invention of the present invention, in order to achieve the first solution,
In the moving body guidance device for guiding the moving body toward the next passing area when the current passing area is reached among the plurality of passing areas on the planned traveling route of the moving body,
When the mobile body reaches a predetermined point in the passing area, it is determined whether or not the next passing area is reached when traveling while maintaining the current steering angle;
If it is determined that the vehicle will reach the current steering angle, the current steering angle is maintained. If it is determined that the vehicle does not reach, the target steering angle for directing the moving body to the predetermined point in the next passing area is calculated and this is calculated. The steering angle is changed based on the target steering angle,The moving body is directed to the next passage area.
[0033]
The second invention will be described with reference to FIG.
[0034]
According to the second aspect of the present invention, when the mobile object S travels a predetermined distance after first detecting the current passing area M1 and reaches the predetermined point P1 in the passing area M1, the next pass The moving body S is directed to the area M2.
[0035]
Therefore, according to the second aspect of the present invention, when the moving body S first travels a predetermined distance after detecting the current passing area M1, and reaches a predetermined point P1 in the passing area M1, Since the moving body S is directed to the passing area M2 of the moving body S, even if the planned traveling route K of the moving body S is an acute curve as in the first aspect of the invention, the moving body S does not cause a small turning phenomenon. Can be induced. Furthermore, according to the second invention, the effect of the first invention can be obtained regardless of the geometric shape of the moving object S such as a circle or a polygon.
[0041]
In addition, the present inventionThird inventionThen, in order to achieve the first solution problem and the second solution problem,
Guidance of the moving body that guides the moving body toward the next target when the current target is reached among a plurality of targets on the planned traveling route of the moving body having the steering wheel and the fixed wheel In the device
A region between a pair of end points separated by a predetermined distance across the target point on the planned travel route is the target,
Using the wheel base of the steered wheel and the fixed wheel as a denominator, the steering angle of the steered wheel is obtained from an arc tangent function with the radius of the turning circle when the moving body turns to the next target as a numerator,
When the mobile body has reached between the current pair of end points, it is determined whether or not to reach the region between the next target pair of end points when traveling while maintaining the current steering angle,
If it is determined that the vehicle will reach the current steering angle, the current steering angle is maintained. If it is determined that the vehicle will not reach, the target steering angle for moving the moving body to the target point between the next pair of target end points is calculated. The steering angle is changed based on the target steering angle, and the moving body is made to face between a pair of target end points.
[0042]
the aboveThird inventionWill be described with reference to FIG. 1A, FIG. 2, FIG. 6, and FIG.
[0043]
the aboveThird inventionAccording to the above, the pair of end points PRn and PLn separated by a predetermined distance across the planned travel route K is set as the target of the moving body S.
[0044]
Therefore, the steering command calculation means 5 determines the steering angle ζ of the steering wheel S1 from the distance L between the central axis of the steering wheel S1 and the central axis of the fixed wheel S2 and the turning radius rg.
[0045]
When the moving body S reaches between the current pair of end points PR1 and PL1, the moving body S is steered based on the steering angle ζ, and the moving body S moves toward the next pair of end points PR2 and PL2. Is done.
[0046]
Therefore, the aboveThird inventionThe steering command calculation means 5 determines the steering angle ζ of the steering wheel S1 from the distance L between the central axis of the steering wheel S1 and the central axis of the fixed wheel S2 and the turning radius rg. When the moving body S arrives between the end points PR1 and PL1, the moving body S is steered based on the steering angle ζ, and the moving body S is directed toward the next pair of end points PR2 and PL2.The same effect as the first invention can be obtained. In addition, the control characteristics when the moving vehicle moves forward and backward can be made the same. Further, the control of the steering angle ζ can be simplified.
[0047]
In addition, the present inventionFourth inventionThen, in order to achieve the first solution problem and the second solution problem,
Movement that guides the moving body toward the next passing area when it reaches the current passing area among a plurality of passing areas on the planned traveling route of the moving body having the steering wheel and the fixed wheel. In the body guidance device,
Using the wheel base of the steered wheel and the fixed wheel as a denominator, the steering angle of the steered wheel is obtained from an arc tangent function with the radius of the turning circle when the moving body turns to the next target as a numerator,
When the mobile body reaches a predetermined point in the passing area, it is determined whether or not the next passing area is reached when traveling while maintaining the current steering angle;
If it is determined that the vehicle will reach the current steering angle, the current steering angle is maintained. If it is determined that the vehicle does not reach, the target steering angle for directing the moving body to the predetermined point in the next passing area is calculated and this is calculated. The steering angle is changed based on the target steering angle, and the moving body is directed toward the next passing area.
[0048]
the aboveFourth inventionWill be described with reference to FIG. 2, FIG. 6, and FIG.
[0049]
the aboveFourth inventionThe steering command calculation means 5 steers the steered wheel S1 from the distance L between the center axis of the steered wheel S1 and the center axis of the fixed wheel S2 and the turning radius rg when turning to the next target. An angle ζ is determined.
[0050]
Then, when the moving body S first travels a predetermined distance after detecting the current passing area M1 and reaches a predetermined point P1 in the passing area M1, the moving body S is based on the steering angle ζ. Is steered and the moving body S is directed toward the next passing area M2.
[0051]
Therefore, the aboveFourth inventionAccordingly, the steering angle ζ of the steered wheel S1 is obtained from the distance L between the center axis of the steered wheel S1 and the center axis of the fixed wheel S2 and the turning radius rg by the steering command calculation means 5, and the moving body S The vehicle S is steered based on the steering angle ζ when the vehicle travels a predetermined distance after first detecting the current passing region M1 and reaches a predetermined point P1 in the passing region M1. Since the moving body S is directed toward the passing area M2,The same effect as the second invention can be obtained. In addition, the control characteristics when the moving vehicle moves forward and backward can be made the same. Further, the control of the steering angle ζ can be simplified.
[0052]
In addition, the present invention5th inventionThen, in the first invention,
Generating a pair of end points for a point sequence corresponding to a curve among a plurality of target points on the planned travel route;
When the moving body reaches between a pair of end points centered on the target point, the moving body is made to face between the pair of end points centered on the next target point.
[0053]
the above5th inventionWill be described with reference to FIG.
[0054]
the above5th inventionAccording to the above, the point sequences P1, P1, P2, P3, P4, P5, P6, and P7 on the planned travel route K are set as a plurality of targets.
[0055]
Therefore, a pair of end points PR1 and PL1 are generated from the point P1 in the sequence of points P1, P1, P2, P3, P4, P5, P6, and P7 in the planned traveling route K of the curve.
[0056]
The moving body S is then moved between the generated pair of end points PR2 and PL2 when it reaches the current point P1 among the point sequences P1, P1, P2, P3, P4, P5, P6, and P7.
[0057]
That is, the above5th inventionAccording to the above, when the planned travel route K is a curve, a pair of end points PR2 and PL2 are generated from the point P2.
[0058]
Therefore, the above5th inventionAccording to the above, since the pair of end points PR2 and PL2 are generated when the planned travel route K is a curve, the calculation for generating the pair of end points from the point sequence becomes the pair of end points. Compared to the case of performing the operation to be generated. further5th inventionAccording to this, the same effect as the first invention can be obtained.
[0059]
DETAILED DESCRIPTION OF THE INVENTION
DESCRIPTION OF EMBODIMENTS Embodiments of a moving body guiding apparatus according to the present invention will be described below with reference to the drawings. The moving body of this embodiment is assumed to be a steering four-wheel vehicle.
[0060]
FIG. 2 is a block diagram showing the configuration of the moving vehicle guidance apparatus according to the present invention.
[0061]
The moving vehicle guidance apparatus shown in FIG. 2 includes a current motion measuring means 2, a planned travel route storage means 1, a planned travel route change means 3, a travel condition selection means 4, a steering command calculation means 5, a vehicle speed. The command calculation means 6, the obstacle detection means 8, and the vehicle body 7 (moving vehicle S) are comprised.
[0062]
Next, each said structure is demonstrated.
[0063]
The current motion measuring means 2 uses GPS (Global Positioning System), dead reckoning, etc. for information on the current motion state of the moving vehicle, such as the current position P1, moving direction θt, speed, and turning angular velocity ω of the moving vehicle S. Measure using
[0064]
The planned traveling route storage means 1 uses data converted from point data created by CAD (Computer Automation Design) or teaching playback into a pair of end points or arbitrary geometric figures as a plurality of target data of the planned traveling route K. Remember. The scheduled travel
[0065]
The obstacle detection means 8 detects an obstacle present on the planned travel route K.
[0066]
The planned traveling route changing means 3 stores data of a pair of end points or arbitrary geometric figures different from the target data of the planned traveling route K. Further, the planned traveling
[0067]
The travel condition selection means 4 acquires a plurality of target data of the planned travel route K from the planned travel route storage means 1 in the normal case (when there is no obstacle on the planned travel route K) and measures the current motion. Information on the current motion state of the moving vehicle S is acquired from the
[0068]
The steering command calculation means 5 calculates the steering angle ζ and outputs a steering command to the vehicle body 7 (moving vehicle S) to control the steering angle ζ of the moving vehicle S. As a result, the steering command calculation means 5 causes the moving vehicle S to go straight, turn right, and turn left.
[0069]
The vehicle speed command calculation means 6 calculates the speed of the vehicle body 7 and outputs a travel command to the vehicle body 7 to control the speed of the vehicle body 7. As a result, the vehicle speed command calculation means 6 causes the vehicle body 7 to accelerate, decelerate, advance, and reverse.
[0070]
The vehicle body 7 (moving vehicle S) adjusts the vehicle body speed in response to the steering command output from the steering command calculation means 5 and the travel command output from the vehicle speed command calculation means 6.
[0071]
Obstacle detection means 8 uses an ultrasonic sensor or a laser range finder, or uses a plurality of video cameras to measure the distance of the object from the parallax of the video imaged on the video camera. Detection of the presence or absence of obstacles in front of or around S, recognition of the movement status of the obstacles, measurement of the distance to the obstacles, and the like.
[0072]
The scheduled travel
[0073]
Next, the operation of the moving vehicle guidance device shown in FIG. 2 will be described.
[0074]
Here, a case where a plurality of target data of the planned travel route K are set as a plurality of a pair of end points will be described with reference to FIGS. 1 and 3.
[0075]
FIG. 1A is a diagram showing an embodiment in which a plurality of target data of the planned travel route K is a plurality of a pair of end points PRn and PLn (n = 1 to 7), and FIG. It is a figure which shows the example which described data as width d, inclination (theta) a with respect to a reference direction, and line segment Ga of center point Pa. FIG.
[0076]
The pair of end points PRn and PLn are separated so as to sandwich the planned travel route K.
[0077]
Each target point Pn (n = 1 to 7) is included between each pair of end points PRn and PLn.
[0078]
Further, the allowable amount of passage of the moving vehicle S is determined by the width d of the line segment Ga in FIG.
[0079]
Each pair of end points PRn and PLn and the line segment Ga is also called a gate.
[0080]
FIG. 3 is a flowchart for explaining processing performed by the moving vehicle guidance apparatus shown in FIG.
[0081]
In the flowchart shown in FIG. 3, first, in
[0082]
In
[0083]
If “YES” is determined in the
[0084]
First, a process for causing the moving vehicle S traveling straight ahead to proceed between the end points PR2 and PL2 without steering will be described.
[0085]
In
[0086]
That is, in
[0087]
Here, if the moving vehicle S can pass between the end points PR2 and PL2 without being steered (YES in step 104), the traveling condition selection means 4 provides the steering command with the data for causing the moving vehicle S to proceed as it is. It outputs to the calculation means 5 (step 107).
[0088]
Processing performed by the traveling condition selection means 4 will be described with reference to FIGS.
[0089]
First, a process for confirming the passage between the end points PR2 and PL2 will be described with reference to FIG.
[0090]
In FIG. 4, the pair of end points PR1 and PL1 are expressed as a width d, an inclination θ1 with respect to the reference direction, and a line segment G1 of the center point P1 (x1, y1). The representative point of the moving vehicle S at time t is Pt (xt, yt), and the representative point of the moving vehicle S at time t + 1 is Pt + 1 (xt + 1, yt + 1). Therefore, the equation of the line segment G1 is expressed by the following equation (1).
[0091]
(X−x1) · tan θ1− (y−y1) = 0 (1)
Here, the point Pt (xt, yt) exists below the line segment G1 as shown in FIG. Therefore, when the point Pt (xt, yt) is substituted into the above equation (1), the equation of a straight line passing through the point Pt (xt, yt) is expressed by the following equation (2).
[0092]
μt = (xt−x1) .tan θ1− (yt−y1)> 0 (2)
On the other hand, the point Pt + 1 (xt + 1, yt + 1) exists above the line segment G1, as shown in FIG. Therefore, when the point Pt + 1 (xt + 1, yt + 1) is substituted into the above equation (1), the equation of the straight line passing through the point Pt + 1 (xt + 1, yt + 1) is expressed by the following equation (3). expressed.
[0093]
μt + 1 = (xt + 1−x1) · tan θ1− (yt + 1−y1) <0 (3)
When the representative point Pt (xt, yt) or Pt + 1 (xt + 1, yt + 1) of the moving vehicle S is present on the line segment G1, the above equation (1) is established. Alternatively, the value of μt + 1 is 0.
[0094]
When the moving vehicle S passes through the line segment G1, the signs of the above-mentioned μt and μt + 1 are opposite to each other, or each value is zero.
[0095]
That is, the traveling condition selection means 4 uses the equation (1) of the line G1 that is the current target for the representative point Pt (xt, yt) of the moving vehicle S at the time t that changes every moment as the moving vehicle S advances. To obtain μt, and further substitute the representative point Pt + 1 (xt + 1, yt + 1) of the moving vehicle S at
[0096]
When the product of μt and μt + 1 obtained in this way becomes 0 or the sign of this product becomes negative (when μt · μt + 1 ≦ 0), the moving vehicle S is a line. It turns out that the minute G1 has been passed.
[0097]
Thus, the traveling condition selection means 4 confirms whether or not the moving vehicle S has reached the line segment G1.
[0098]
Here, a process of moving the moving vehicle S toward the pair of end points PR2 and PL2 will be described with reference to FIG.
[0099]
In FIG. 5, a representative point of the moving vehicle S (a point on the line segment G1) is P1 (x1, y1). The traveling direction of the moving vehicle S is θt. Therefore, the equation of the straight line that becomes the trajectory when the moving vehicle S goes straight can be expressed by the following equation (4).
[0100]
(X−x1) · tan θt− (y−y1) = 0 (4)
Here, when the straight line represented by the equation (4) is used as a boundary line, the end point PR2 (xR2, yR2) shown in FIG. 5 is negative because it exists below the straight line of the equation (4). It is included in the area. On the other hand, the end point PL2 (xL2, yL2) is included in the positive region because it exists above the straight line of the equation (4).
[0101]
By the way, the equation of the straight line through which the point P1 (x1, y1) and the end point PR2 (xR2, yR2) pass is
λR = (xR2−x1) · tan θt− (yR2−y1) (5)
It is represented by
[0102]
Further, the equation of a straight line passing through the point P1 (x1, y1) and the end point PL2 (xL2, yL2) is
λL = (xL2−x1) tan θt− (yL2−y1) (6)
It is represented by
[0103]
Here, since the straight line of the equation (5) passes through the negative region, the sign of λR becomes negative. On the other hand, since the straight line in the equation (6) passes through the positive region, the sign of λL becomes positive.
[0104]
Therefore, the product of the above equation (5) and equation (6),
λ = λR · λL (7)
, The sign of λ is negative.
[0105]
Further, if the straight line of the equation (4) passes through one of the end points PR2 (xR2, yR2) and PL2 (xL2, yL2), λ is 0.
[0106]
Therefore, it can be seen that the straight line of the equation (4) passes between the end points PR2 (xR2, yR2) and PL2 (xL2, yL2) when λ ≦ 0.
[0107]
Thus, the traveling condition selection means 4 determines that the moving vehicle S can pass between the end points PR2 and PL2 without being steered (determination YES in step 104).
[0108]
Based on the determination result of the traveling condition selection means 4, the steering command calculation means 5 outputs a steering command to the moving vehicle S so as to maintain the steering as it is (step 107).
[0109]
Next, a process of steering the moving vehicle S that is traveling straight and proceeding between the pair of end points PR2 and PL2 will be described.
[0110]
When the moving vehicle S cannot pass between the end points PR2 and PL2 (NO in Step 104), the traveling condition selection unit 4 outputs data for steering the moving vehicle S to the steering
[0111]
Processing performed by the traveling condition selection unit 4 will be described with reference to FIG.
[0112]
As shown in FIG. 4 described above, the traveling condition selecting means 4 confirms whether or not the moving vehicle S has reached the upper side between the end points PR1 and PL1 (on the line segment G1).
[0113]
Here, the above formula (4) (shown below) is
(X−x1) · tan θt− (y−y1) = 0 (4)
In the case where they exist above the end points PR2 and PL2 shown in FIG. 5, these end points PR2 and PL2 are included in the negative region.
[0114]
That is, the signs of λR and λL are negative.
[0115]
Therefore, when λ is obtained using the above equation (7) (shown below),
λ = λR · λL (7)
The sign of λ is positive.
[0116]
Further, when the above expression (4) exists below the end points PR2 and PL2 shown in FIG. 5, these end points PR2 and PL2 are included in the positive region.
[0117]
That is, the signs of λR and λL are positive.
[0118]
Therefore, when λ is obtained using the above equation (7), the sign of λ becomes positive.
[0119]
That is, when λ> 0, the straight line in the formula (4) does not pass between the end points PR2 and PL2.
[0120]
Thereby, the traveling condition selection means 4 determines that the moving vehicle S cannot pass between the end points PR2 and PL2 in this state (determination NO in step 104).
[0121]
Therefore, the travel condition selection means 4 includes the data of the target point P2 (x2, y2) acquired from the planned travel route storage means 1 and the current position P1 (x1, y1) of the moving vehicle S acquired from the current motion measurement means 2. Then, the data of the traveling direction θt is output to the steering command calculation means 5.
[0122]
The steering command calculation means 5 performs a calculation for steering the moving vehicle S (step 106).
[0123]
Processing performed by the steering command calculation means 5 will be described with reference to FIGS.
[0124]
The steering command calculation means 5 moves the moving vehicle S to the target point P2 (x2, y2) from the acquired target point P2 (x2, y2), the current position P1 (x1, y1) of the moving vehicle S, and the traveling direction θt. ) To obtain the target turning radius rg for use in the following equation (8).
[0125]
rg = {(x2-x1)2+ (Y2−y1)2} / {(X2−x1) · sin θt− (y2−y1) · cos θt} / 2 (8)
When rg> 0, the vehicle turns right, and when rg <0, the vehicle turns left.
[0126]
The moving vehicle S described above is assumed to be a steering four-wheel vehicle.
[0127]
Here, the moving vehicle S is replaced with an equivalent two-wheeled vehicle S0, and the steering of the moving vehicle S will be described with reference to FIG.
[0128]
In FIG. 6, the equivalent two-wheeled vehicle S0 includes a steering wheel S1 and a fixed wheel S2. The distance (wheel base) between the center axis A of the steered wheel S1 and the center axis B of the fixed wheel S2 is L. The turning radius rt of the turning circle and the tangential direction of the turning circle at the time when the equivalent two-wheeled vehicle S0 turns is always at a right angle R. The steering angle θt is equal to APcB around the turning center point Pc of the turning circle.
[0129]
Therefore, the current turning radius rt of the equivalent two-wheeled vehicle S0 is expressed by the following equation (9).
rt = L / tan θt (9)
It is represented by
[0130]
Therefore, the target steering angle ζ at the target turning radius rg from the above equation (9) is
ζ = tan-1(L / rg) (10)
Is required.
[0131]
The steering command calculation means 5 outputs the target steering angle ζ thus determined as a steering command to the moving vehicle S (vehicle body 7) to control the steering angle of the equivalent two-wheeled vehicle S0.
[0132]
As a result, the moving vehicle S can be directed between the next end points PR2 and PL2.
[0133]
However, the processing from
[0134]
By the way, the moving vehicle S can be steered using the turning radius even if it is not a steering system.
[0135]
FIG. 7 is a diagram illustrating a case where the skid steer type moving vehicle S is steered. The skid steer method is also called a “differential drive method”.
[0136]
The skid steer type moving vehicle S0 ′ shown in FIG. 7 includes two drive wheels SR and SL that can have different rotational speeds on the left and right. And it becomes possible to turn by making the rotational speeds vR and vL of the drive wheels SR and SL different from each other.
[0137]
Here, the turning radius rc of the moving vehicle S0 'is expressed by the following equation (11) from the vehicle width W and the speeds vR and vL of the drive wheels SR and SL.
[0138]
rc = W (vL + vR) / 2 (vL-vR) (11)
That is, when the moving vehicle S0 'goes straight in order to pass the target point P2 (x2, y2), the steering command calculation means 5 gives vR = vL as a steering command to the moving vehicle S0' (vehicle body 7). Is output.
[0139]
Similarly, when turning the moving vehicle S0 ′ in order to pass the target point P2 (x2, y2), the above equation (8) (shown below) is used.
rg = {(x2-x1)2+ (Y2−y1)2} / {(X2−x1) · sin θt− (y2−y1) · cos θt} / 2 (8)
The steering command calculation means 5 obtains a turning radius rc with rg = rc and outputs the turning radius rc as a steering command to the moving vehicle S0 '(vehicle body 7).
[0140]
Further, the vehicle speed command calculating means 6 calculates the vehicle center speed vc using the following equation (12).
[0141]
vc = (vR + vL) / 2 (12)
Then, the vehicle center speed vc is output as a travel command from the vehicle speed command calculation means 6 to the moving vehicle S0 '(vehicle body 7).
[0142]
The moving vehicle S0 ′ (vehicle body 7) receives these steering command and travel command and back-calculates the speeds vR and vL from the turning radius rc and the vehicle center speed vc obtained by the above equations (11) and (12). , Adjust the speed.
[0143]
As a result, even the skid steer type moving vehicle S0 ′ can be moved between the next end points PR2 and PL2.
[0144]
When the moving vehicle S0 'is steered from a state where the vehicle travels straight at the maximum speed vmax, the drive wheels S1 or S2 need to be set to the maximum speed vmax or more. Since the maximum speed vmax cannot be exceeded, only the drive wheel to be driven at a high speed out of the drive wheels S1 or S2 is driven at the maximum speed vmax. For the other drive wheel, the speed of the moving vehicle S0 'is adjusted by calculating backward the speed using the above equation (11) in the moving vehicle S0' so as to maintain the desired turning radius rc.
[0145]
Next, a description will be given of a process of causing the moving vehicle S that is turning to travel without being steered toward the end points PR2 and PL2.
[0146]
In
[0147]
That is, in
[0148]
Here, if the moving vehicle S can pass between the end points PR2 and PL2 without being steered (YES at step 105), the traveling condition selection means 4 provides the steering command with the data for causing the moving vehicle S to proceed as it is. It outputs to the calculation means 5 (step 107).
[0149]
The process performed by the traveling condition selection means 4 will be described with reference to FIG.
[0150]
In FIG. 8, the moving vehicle S is turning with a traveling direction θt and a turning radius rt.
[0151]
The traveling condition selecting means 4 confirms whether or not the moving vehicle S has reached the upper side between the end points PR1 and PL1 (on the line segment G1) as shown in FIG. Then, after the time when the moving vehicle S reaches between the end points PR1 and PL1 (on the line segment G1), the distance rR from the turning center point Pc (xc, yc) to the end point PR2 (xR2, yR2), and the turning center point A distance rL from Pc (xc, yc) to the end point PL2 (xL2, yL2) is obtained.
[0152]
The distance rR is
rR = √ {(xR2−xc)2+ (YR2-yc)2} (13)
It is represented by
[0153]
On the other hand, the distance rL is
rL = √ {(xL2−xc)2+ (YL2-yc)2} (14)
It is represented by
[0154]
Further, the current motion measuring means 2 measures the speed vt and the turning angular speed ωt of the moving vehicle S to obtain the turning radius rt.
[0155]
Here, if the turning radius rt is longer than the distance rR, the sign of the difference λrR between the distance rR and the turning radius rt shown in the following equation (15) becomes negative.
[0156]
λrR = rR− | rt | (15)
(Here, the turning radius rt is an absolute value because the sign changes between turning right and turning left.)
On the other hand, if the turning radius rt is shorter than the distance rL, the sign of the difference λrL between the distance rL and the turning radius rt shown in the following equation (16) is positive.
[0157]
λrL = rL− | rt | (16)
If the turning radius rt passes through one of the end points PR2 (xR2, yR2) and PL2 (xL2, yL2), either λrR or one of λrL becomes zero.
[0158]
Therefore, the product of the above formula (15) and the formula (16) shown in the following formula (17)
λ = λrR · λrL (17)
Thus, the traveling condition selection means 4 determines that the turning radius rt passes between the end points PR2 (xR2, yR2) and PL2 (xL2, yL2) when λ ≦ 0.
[0159]
Thereby, the traveling condition selection means 4 determines that the moving vehicle S can pass between the end points PR2 and PL2 without being steered (determination YES in step 105).
[0160]
Based on the determination result of the traveling condition selection means 4, the steering command calculation means 5 outputs a steering command to the moving vehicle S so as to maintain the steering as it is (step 107).
[0161]
Next, a process of steering the moving vehicle S that is turning and advancing it between the pair of end points PR2 and PL2 will be described.
[0162]
When the moving vehicle S cannot pass between the end points PR2 and PL2 (NO in Step 105), the traveling condition selection unit 4 outputs data for steering the moving vehicle S to the steering
[0163]
The process performed by the traveling condition selection means 4 will be described with reference to FIG.
[0164]
In FIG. 8, as described above, the distance rR from the turning center point Pc (xc, yc) to the end point PR2 (xR2, yR2) and the turning center point Pc (xc, yc) to the end point PL2 (xL2, yL2). Distance rL and the turning radius rt of the moving vehicle S are respectively obtained.
[0165]
In addition, as shown in FIG. 4 described above, the traveling condition selection means 4 confirms whether or not the moving vehicle S has reached the upper side between the end points PR1 and PL1 (on the line segment G1).
[0166]
Here, if the turning radius rt is shorter than the distance rR, the sign of λrR in the equation (15) (shown below) becomes positive.
[0167]
λrR = rR− | rt | (15)
On the other hand, when the turning radius rt is shorter than the distance rR, the turning radius rt is naturally shorter than the distance rL. Therefore, the sign of λrL in the above equation (16) (shown below) is positive.
[0168]
λrL = rL− | rt | (16)
Therefore, when the turning radius rt is shorter than the distances rR and rL, λ in the above equation (17) (shown below) is
λ = λrR · λrL (17)
Become positive. (Λ> 0)
If the turning radius rt is longer than the distance rL, the sign of λrL in the above equation (16) becomes negative.
[0169]
On the other hand, when the turning radius rt is longer than the distance rL, the turning radius rt is naturally longer than the distance rR. Therefore, the sign of λrR in the above equation (15) is negative.
[0170]
Therefore, when the turning radius rt is longer than the distances rR and rL, λ in the above equation (17) is positive. (Λ> 0)
Thereby, the traveling condition selection means 4 determines that the turning radius rt cannot pass between the end points PR2 (xR2, yR2) and PL2 (xL2, yL2) when λ> 0. (Decision NO in step 104).
[0171]
Therefore, the travel condition selection means 4 is the data of the target point P2 (x2, y2) acquired from the planned travel route storage means 1 as described above, and the current position P1 of the moving vehicle S acquired from the current motion measurement means 2 ( x1, y1) and the data of the traveling direction θt are output to the steering command calculation means 5.
[0172]
The steering command calculation means 5 performs a calculation for steering the moving vehicle S (step 106).
[0173]
Here, as described above with reference to FIGS. 5 and 6, the steering command calculation means 5 obtains the acquired target point P2 (x2, y2), the current position P1 (x1, y1) of the moving vehicle S, and the traveling direction θt. From these data, a target turning radius rg for moving the moving vehicle S toward the target point P2 (x2, y2) is obtained using the above equation (8) (shown below).
[0174]
rg = {(x2-x1)2+ (Y2−y1)2} / {(X2−x1) · sin θt− (y2−y1) · cos θt} / 2 (8)
Then, the target steering angle ζ at the target turning radius rg is obtained from the above equation (10) (shown below).
[0175]
ζ = tan-1(L / rg) (10)
The steering command calculation means 5 outputs the target steering angle ζ thus determined as a steering command to the moving vehicle S (vehicle body 7), and controls the steering angle of the moving vehicle S.
[0176]
Thereby, the moving vehicle S that is turning can be directed between the next end points PR2 and PL2.
[0177]
As described above, in the above-described embodiment, when the moving body S reaches between the pair of end points PR1 and PL1, the moving body S is directed between the next pair of end points PR2 and PL2. Even if the planned traveling route K of the body S is an acute curve, the moving body S can be guided without causing a small turning phenomenon.
[0178]
In the above-described embodiment, the steering angle ζ when the moving vehicle S0 moves forward can be made the same as the steering angle ζ when the vehicle moves backward.
[0179]
FIG. 9A is a view showing a case where the moving vehicle S0 is moved forward toward the center point Pn of the target gate Gn, and FIG. 9B is a view showing the moving vehicle S0 toward the center point Pn of the target gate Gn. It is a figure which shows the case where it makes it retreat.
[0180]
As shown in FIGS. 9A and 9B, the steering angle ζ of the moving vehicle S0 is the same when moving forward and when moving backward.
[0181]
Therefore, in the above-described embodiment, the control characteristics when the moving vehicle moves forward and backward can be made the same. Further, the control of the steering angle ζ can be simplified.
[0182]
By the way, the road surface of the planned travel route K of the moving vehicle S is uneven, or there are obstacles on the road and the vehicle cannot pass between the target pair of end points PLn and PRn. It may come off.
[0183]
Accordingly, when the moving vehicle S cannot pass between the target pair of end points PLn and PRn, an embodiment in which the moving vehicle S is directed between the next pair of end points PLn and PRn will be described with reference to FIGS. 10 and 11. explain. For the sake of explanation, a pair of target end points PLn and PRn are expressed by gates.
[0184]
In FIG. 10, since the moving vehicle S has deviated from the current target gate Gn, it reaches the extension line Gb of the current target gate Gn.
[0185]
Therefore, when the moving vehicle S reaches the extension line of the current target gate Gn, the moving vehicle S is directed to the next target gate Gn + 1.
[0186]
As a result, even when the road surface of the planned travel route K of the moving vehicle S is uneven or an obstacle exists on the road and cannot pass through the target gate Gn, the mobile vehicle S can be returned to the planned travel route K. it can. However, when the moving vehicle S deviates from the current target gate Gn as described above, it is desirable to reduce the speed of the moving vehicle S.
[0187]
In FIG. 11, the representative point of the moving vehicle S changes to Pt-1, Pt, Pt + 1, and the distance between these points Pt-1, Pt, Pt + 1 and the current end point of the target gate Gn. When the moving vehicle S moves such that changes to rt-1, rt, rt + 1, the moving vehicle S is directed to the next target gate Gn + 1.
[0188]
As a result, even when the road surface of the planned travel route K of the moving vehicle S is uneven or an obstacle exists on the road and cannot pass through the target gate Gn, the mobile vehicle S can be returned to the planned travel route K. it can. However, when the moving vehicle S deviates from the current target gate Gn as described above, it is desirable to reduce the speed of the moving vehicle S.
[0189]
In the above-described embodiment, the case where the target data on the planned travel route K is a pair of end points has been described, but the target data on the planned travel route K may be an arbitrary geometric figure.
[0190]
2 will be described with reference to FIGS. 3 and 12 when the target data on the planned travel route K is an arbitrary geometric figure.
[0191]
FIG. 12 is a diagram showing an embodiment in which a plurality of target data of the planned travel route K is a plurality of arbitrary geometric figures Mn (n = 1 to 3).
[0192]
In FIG. 12, an arbitrary geometric figure Mn is set as a target on the planned travel route K.
[0193]
Note that the processing performed in
[0194]
First, a description will be given of a process for causing the moving vehicle S traveling straight ahead to proceed to an arbitrary geometric figure M2 without steering.
[0195]
In
[0196]
At this time, in
[0197]
Here, when the moving vehicle S can pass through the arbitrary geometric figure M2 as it is without being steered (determination YES in step 104), the traveling condition selection means 4 steers data for allowing the moving vehicle S to proceed as it is. It outputs to the command calculation means 5 (step 107).
[0198]
The processing of the traveling condition selection means 4 for causing the moving vehicle S traveling straight ahead to proceed into an arbitrary geometric figure M2 without steering will be described with reference to FIG.
[0199]
This processing is performed with reference to FIG. 5 described above except that a pair of end points PRn and PLn are placed at a position perpendicular to the traveling direction θt of the moving vehicle S in an arbitrary geometric figure M2 with the target point P2 interposed therebetween. This is the same as the processing described.
[0200]
Also in FIG. 13, the equation of a straight line that becomes a trajectory when the moving vehicle S goes straight is expressed by the above equation (4) (shown below).
[0201]
(X−x1) · tan θt− (y−y1) = 0 (4)
Therefore, when the straight line represented by the above equation (4) is used as the boundary line, the end point PR2 (xR2, yR2) in the arbitrary geometric figure M2 shown in FIG. 13 is more than the straight line of the equation (4). Since it exists on the lower side, it is included in the negative region. On the other hand, the end point PL2 (xL2, yL2) is included in the positive region because it exists above the straight line of the equation (4).
[0202]
Further, the equation of a straight line passing through the point P1 (x1, y1) and the end point PR2 (xR2, yR2) is expressed by the above equation (5) (shown below).
[0203]
λR = (xR2−x1) · tan θt− (yR2−y1) (5)
Further, the equation of a straight line passing through the point P1 (x1, y1) and the end point PL2 (xL2, yL2) is expressed by the above equation (6) (shown below).
[0204]
λL = (xL2−x1) tan θt− (yL2−y1) (6)
Here, since the straight line in the equation (5) passes through the negative region, the sign of λR becomes negative. On the other hand, since the straight line in the equation (6) passes through the positive region, the sign of λL becomes positive.
[0205]
Therefore, when the above equation (7) (shown below) is obtained,
λ = λR · λL (7)
The sign of λ is negative.
[0206]
Further, if the straight line of the above equation (4) passes through one of the end points PR2 (xR2, yR2) and PL2 (xL2, yL2) in an arbitrary geometric figure M2, λ becomes zero.
[0207]
Therefore, it can be seen that when λ ≦ 0, the straight line of the above equation (4) passes between the end points PR2 (xR2, yR2) and PL2 (xL2, yL2) in an arbitrary geometric figure M2.
[0208]
Thereby, the traveling condition selection means 4 determines that the moving vehicle S can pass through the arbitrary geometric figure M2 as it is without steering (determination YES in step 104).
[0209]
Based on the determination result of the traveling condition selection means 4, the steering command calculation means 5 outputs a steering command to the moving vehicle S so as to maintain the steering as it is (step 107).
[0210]
Next, a process of steering the moving vehicle S traveling straight and moving it toward the end points PR2 and PL2 in an arbitrary geometric figure M2 will be described.
[0211]
When the moving vehicle S cannot pass between the end points PR2 and PL2 in the arbitrary geometric figure M2 (determination NO in step 104), the traveling condition selection means 4 uses the steering command calculation means as data for steering the moving vehicle S. 5 is output.
[0212]
Processing performed by the traveling condition selection unit 4 will be described with reference to FIG.
[0213]
As shown in FIG. 12 described above, the traveling condition selection means 4 advances a predetermined distance after the moving vehicle S first detects the present arbitrary geometric figure M1, and the traveling condition selection means 4 within the arbitrary geometric figure M1. It is confirmed whether or not a predetermined point P1 has been reached.
[0214]
Here, the above formula (4) (shown below) is
(X−x1) · tan θt− (y−y1) = 0 (4)
When existing above the end points PR2 and PL2 shown in FIG. 13, the end points PR2 and PL2 in these arbitrary geometric figures M1 are included in the negative region.
[0215]
That is, the signs of λR and λL are negative.
[0216]
Therefore, when λ is obtained using the above equation (7) (shown below),
λ = λR · λL (7)
The sign of λ is positive.
[0217]
Further, when the above equation (4) exists below the end points PR2 and PL2 shown in FIG. 13, these end points PR2 and PL2 are included in the positive region.
[0218]
That is, the signs of λR and λL are positive.
[0219]
Therefore, when λ is obtained using the above equation (7), the sign of λ becomes positive.
[0220]
That is, when λ> 0, the straight line in the formula (4) does not pass between the end points PR2 and PL2.
[0221]
Thereby, the traveling condition selection means 4 determines that the moving vehicle S cannot pass between the end points PR2 and PL2 in the arbitrary geometric figure M1 in this state (determination NO in step 104).
[0222]
Therefore, the travel condition selection means 4 is the data of the target point P2 (x2, y2) acquired from the planned travel route storage means 1 as described above, and the current position P1 of the moving vehicle S acquired from the current motion measurement means 2 ( x1, y1) and the data of the traveling direction θt are output to the steering command calculation means 5.
[0223]
The steering command calculation means 5 performs a calculation for steering the moving vehicle S (step 106).
[0224]
Here, as described above with reference to FIGS. 6 and 13, the steering command calculation means 5 obtains the acquired target point P2 (x2, y2), the current position P1 (x1, y1) of the moving vehicle S, and the traveling direction θt. From these data, a target turning radius rg for moving the moving vehicle S toward the target point P2 (x2, y2) is obtained using the above equation (8) (shown below).
[0225]
rg = {(x2-x1)2+ (Y2−y1)2} / {(X2−x1) · sin θt− (y2−y1) · cos θt} / 2 (8)
Then, the target steering angle ζ at the target turning radius rg is obtained from the above equation (10) (shown below).
[0226]
ζ = tan-1(L / rg) (10)
The steering command calculation means 5 outputs the target steering angle ζ thus determined as a steering command to the moving vehicle S (vehicle body 7), and controls the steering angle of the moving vehicle S.
[0227]
As a result, the moving vehicle S traveling straight can be directed to the next arbitrary geometric figure M2.
[0228]
Next, a description will be given of a process of causing the moving vehicle S that is turning to travel to an arbitrary geometric figure M2 without steering.
[0229]
In
[0230]
That is, in
[0231]
Here, when the moving vehicle S can be directed to the arbitrary geometric figure M2 as it is without being steered (YES in Step 105), the traveling condition selection means 4 causes the moving vehicle S to proceed as it is. Data is output to the steering command calculation means 5 (step 107).
[0232]
Processing performed by the traveling condition selection unit 4 will be described with reference to FIG.
[0233]
In FIG. 14, the moving vehicle S is turning in a traveling direction Θt and a turning radius rt.
[0234]
Further, it is assumed that a pair of end points PR2 (XR2, YR2) and PL2 (XL2, YL2) exist at positions perpendicular to the traveling direction θt of the moving vehicle S in an arbitrary geometric figure M2.
Here, the distance between the end points PR2 (XR2, YR2) and PL2 (XL2, YL2) is defined as d.
[0235]
The center point of these end points PR2 and PL2 is P2 (X2, Y2). Further, the distance from the center point P2 (X2, Y2) when the moving vehicle S passes between the end points PR2, PL2 is defined as a lateral shift η.
[0236]
This lateral deviation η travels a predetermined distance after the moving vehicle S first detects the present arbitrary geometric figure M1, and reaches a predetermined point P1 in the arbitrary geometric figure M1. After the time, it is obtained using the following formulas (18) and (19).
[0237]
That is, when the turning radius rt is larger than 0 from the turning radius rt obtained by the current motion measuring means 2 and the traveling direction Θt of the moving vehicle S,
η = Y−rt cos Θt + √ {rt2-(X + rtsinΘt))2} (18)
And when the turning radius rt is smaller than 0,
η = Y−rt cos Θ t−√ {rt2-(X + rtsinΘt))2} (19)
Is required.
[0238]
Further, the direction vector of Θt in the equations (18) and (19) indicates the current traveling direction θt of the moving vehicle S at the target point P2 (X2, Y2) in the next arbitrary geometric figure M2. The coordinate is converted according to the traveling direction, and is expressed by the following equation (20).
[0239]
Further, the coordinate axes X and Y are obtained by coordinate conversion of the coordinate axes x and y and are expressed by the following equation (21).
[0240]
In order to obtain the direction vectors cos θ2 and sin θ2 of θ2 in the above equation (21), first, from the current position P1 (x1, y1) and the target point P2 (x2, y2) of the moving vehicle S, the following equation (22): Cosφt and sinφt are obtained using equation (23).
[0241]
cosφt = (x2−x1) / {(x2−x1)2+ (Y2−y1)2 } (22)
sin φt = (y2−y1) / {(x2−x1)2+ (Y2−y1)2 } (23)
Then, the direction vectors cos θ2 and sin θ2 of θ2 are obtained from these cos φt and sin φt using the following equations (24) and (25).
[0242]
cos θ2 = (cos2φt-sin2φt) · cos θt + 2 sin φt · cos φt · sin θt (24)
sin θ2 = + 2 sin φt · cos φt · cos θt− (cos2φt-sin2φt) ・ sinθt ... (25)
Here, the relationship between the lateral shift η obtained using the above equations (18) and (19) and the distance d between the end points PR2 (XR2, YR2) and PL2 (XL2, YL2) is −d. When / 2 <η <d / 2, the traveling condition selection means 4 determines that the moving vehicle S passes between the end points PR2 (xR2, yR2) and PL2 (xL2, yL2) in an arbitrary geometric figure M2. To do.
[0243]
Based on the determination result of the traveling condition selection means 4, the steering command calculation means 5 outputs a steering command to the moving vehicle S so as to maintain the steering as it is (step 107).
[0244]
Next, a process of steering the moving vehicle S that is turning and moving it toward an arbitrary geometric figure M2 will be described.
[0245]
When the moving vehicle S cannot pass through the arbitrary geometric figure M 2 (NO in Step 105), the traveling condition selection unit 4 outputs data for steering the moving vehicle S to the steering
[0246]
Processing performed by the traveling condition selection unit 4 will be described with reference to FIG.
[0247]
As described above, the lateral deviation η travels a predetermined distance after the moving vehicle S first detects the present arbitrary geometric figure M1, and the predetermined point P1 in the arbitrary geometric figure M1. From the point of time when the value is reached, it is obtained using the above formulas (18) and (19) (shown below).
[0248]
η = Y−rt cos Θt + √ {rt2-(X + rtsinΘt))2} (18)
η = Y−rt cos Θ t−√ {rt2-(X + rtsinΘt))2} (19)
Here, when the lateral shift η obtained using the above formulas (18) and (19) is not included in d between the end points PR2 (XR2, YR2) and PL2 (XL2, YL2), the lateral shift The relationship between the shift η and the distance d between the end points PR2 and PL2 is η <−d / 2 and d / 2 <η.
[0249]
Thus, the traveling condition selection means 4 determines that the moving vehicle S cannot pass between the end points PR2 (xR2, yR2) and PL2 (xL2, yL2) in the arbitrary geometric figure M2. (Decision NO in step 104).
[0250]
Therefore, the travel condition selection means 4 is the data of the target point P2 (x2, y2) acquired from the planned travel route storage means 1 as described above, and the current position P1 of the moving vehicle S acquired from the current motion measurement means 2 ( x1, y1) and the data of the traveling direction Θt are output to the steering command calculation means 5.
[0251]
The steering command calculation means 5 performs a calculation for steering the moving vehicle S (step 106).
[0252]
Here, as described above with reference to FIGS. 6 and 13, the steering command calculation means 5 obtains the acquired target point P2 (x2, y2), the current position P1 (x1, y1) of the moving vehicle S, and the traveling direction Θt. From these data, a target turning radius rg for moving the moving vehicle S toward the target point P2 (x2, y2) is obtained using the above equation (8) (shown below).
[0253]
rg = {(x2-x1)2+ (Y2−y1)2} / {(X2−x1) · sinΘt− (y2−y1) · cosΘt} / 2 (8)
Then, the target steering angle ζ at the target turning radius rg is obtained from the above equation (10) (shown below).
[0254]
ζ = tan-1(L / rg) (10)
The steering command calculation means 5 outputs the target steering angle ζ thus determined as a steering command to the moving vehicle S (vehicle body 7), and controls the steering angle of the moving vehicle S.
[0255]
Thereby, the moving vehicle S that is turning can be directed to the next arbitrary geometric figure M2.
[0256]
As described above, in the above-described embodiment, the moving body S has traveled a predetermined distance after first detecting the arbitrary geometric figure M1, and has reached the predetermined point P1 in the arbitrary geometric figure M1. At this point, the moving object S is directed to the next arbitrary geometric figure M2, so even if the target on the planned travel route K of the moving object S is not a pair of end points but an arbitrary geometric figure. Similarly to the case of the pair of end points, the moving body S can be guided without causing the small turning phenomenon.
[0257]
Further, in this embodiment, similarly to the case of the pair of end points, the steering angle ζ when the moving vehicle S moves forward and the steering angle ζ when the vehicle moves backward can be made the same.
[0258]
FIG. 15 (a) is a diagram showing a case where the moving vehicle S0 is advanced toward the target point Pn of an arbitrary geometric figure Mn, and FIG. It is a figure which shows the case where the moving vehicle S0 is moved backwards.
[0259]
As shown in FIGS. 15 (a) and 15 (b), the steering angle ζ of the moving vehicle S0 is the same during forward movement and backward movement.
[0260]
Therefore, in this embodiment, the control characteristics when the moving vehicle S moves forward and backward can be made the same as in the case of the pair of end points. Further, the control of the steering angle ζ can be simplified.
[0261]
In the embodiment described above, the target data on the planned travel route K has been described as an arbitrary geometric figure, but the target data may naturally be circular.
[0262]
2 will be described with reference to FIGS. 3 and 16 when the target data on the planned travel route K is circular.
[0263]
FIG. 16 is a diagram showing an embodiment in which the target data of the planned travel route K is a circle C1.
[0264]
In FIG. 16, the circle C1 is set as a target on the planned travel route K.
[0265]
Note that the processing performed in
[0266]
First, a process for causing the moving vehicle S traveling straight ahead to proceed toward the circle C2 without steering will be described.
[0267]
In
[0268]
At this time, in
[0269]
Here, if the moving vehicle S can pass through the circle C2 as it is without being steered (YES in step 104), the traveling condition selection means 4 uses the steering command calculation means 5 to make the data for making the moving vehicle S travel as it is. (Step 107).
[0270]
The processing of the traveling condition selection means 4 for causing the moving vehicle S traveling straight ahead to proceed into the circle C2 without steering will be described with reference to FIG.
[0271]
In FIG. 17, the equation of a straight line that becomes a trajectory when the moving vehicle S travels straight is expressed by the above-described equation (4) (shown below).
[0272]
(X−x1) · tan θt− (y−y1) = 0 (4)
The equation of the circle C2 having the center point P2 (x2, y2) and the radius d / 2 is expressed by the following equation (26).
[0273]
(X-x2)2+ (Y−y2)2= (D / 2)2... (26)
Therefore, the equations (4) and (26) are regarded as simultaneous equations, and a solution of the simultaneous equations is obtained.
[0274]
Therefore, if the solution of the simultaneous equations is a real number solution, it can be seen that the straight line of the above equation (4) intersects with the circle C2.
[0275]
As a result, the traveling condition selection means 4 determines that the moving vehicle S can pass through the circle C2 without being steered (determination YES in step 104).
[0276]
Based on the determination result of the traveling condition selection means 4, the steering command calculation means 5 outputs a steering command to the moving vehicle S so as to maintain the steering as it is (step 107).
[0277]
Next, a process of steering the moving vehicle S traveling straight and moving toward the circle C2 will be described.
[0278]
When the moving vehicle S cannot pass through the circle C2 (NO in Step 104), the traveling condition selection unit 4 outputs data for steering the moving vehicle S to the steering
[0279]
Processing performed by the traveling condition selection unit 4 will be described with reference to FIG.
[0280]
As shown in FIG. 17 described above, the traveling condition selection means 4 determines whether the moving vehicle S has traveled a predetermined distance after first detecting the current circle C1 and has reached a predetermined point P1 in the circle C1. Confirm whether or not.
[0281]
Here, when the moving vehicle S is steered toward the circle C2 (NO in Step 104), the traveling condition selection means 4 determines the current relative position of the moving vehicle S with respect to the circle C2 with respect to the steering command calculation means 5. Output (step 107).
[0282]
The processing of the traveling condition selection means 4 that steers the traveling vehicle S that is traveling straight and proceeds toward the circle C2 will be described with reference to FIG.
[0283]
In FIG. 17, the solution of simultaneous equations of the above equations (4) and (26) (shown below) is obtained.
[0284]
(X−x1) · tan θt− (y−y1) = 0 (4)
(X-x2)2+ (Y−y2)2= (D / 2)2... (26)
Here, if the solution of the simultaneous equations is not a real number solution, it can be seen that the straight line of the above equation (4) and the circle C2 of the above equation (26) do not intersect.
[0285]
Thereby, the traveling condition selection means 4 determines that the moving vehicle S cannot pass through the circle C2 in this state (determination NO in step 104).
[0286]
Therefore, the travel condition selection means 4 is the data of the target point P2 (x2, y2) acquired from the planned travel route storage means 1 as described above, and the current position P1 of the moving vehicle S acquired from the current motion measurement means 2 ( x1, y1) and the data of the traveling direction θt are output to the steering command calculation means 5.
[0287]
The steering command calculation means 5 performs a calculation for steering the moving vehicle S (step 106).
[0288]
Here, as described above with reference to FIGS. 6 and 13, the steering command calculation means 5 obtains the acquired target point P2 (x2, y2), the current position P1 (x1, y1) of the moving vehicle S, and the traveling direction θt. From these data, a target turning radius rg for moving the moving vehicle S toward the target point P2 (x2, y2) is obtained using the above equation (8) (shown below).
[0289]
rg = {(x2-x1)2+ (Y2−y1)2} / {(X2−x1) · sin θt− (y2−y1) · cos θt} / 2 (8)
Then, the target steering angle ζ at the target turning radius rg is obtained from the above equation (10) (shown below).
[0290]
ζ = tan-1(L / rg) (10)
The steering command calculation means 5 outputs the target steering angle ζ thus determined as a steering command to the moving vehicle S (vehicle body 7), and controls the steering angle of the moving vehicle S.
[0291]
As a result, the moving vehicle S traveling straight can be directed to the next circle C2.
[0292]
Next, a description will be given of a process of causing the moving vehicle S that is turning to travel as it is toward the circle C2 without being steered.
[0293]
In
[0294]
That is, in
[0295]
Here, if the moving vehicle S can be directed to the circle C2 without being steered (YES at Step 105), the traveling condition selection means 4 provides the steering command with the data for causing the moving vehicle S to proceed as it is. It outputs to the calculation means 5 (step 107).
[0296]
Processing performed by the traveling condition selection unit 4 will be described with reference to FIG.
[0297]
In FIG. 18, it is assumed that the moving vehicle S turns in a traveling direction Θt and a turning radius rt and is directed into a circle C2 having a center point P2 (X2, Y2) and a radius d / 2.
Further, the distance from the center point P2 when the moving vehicle S passes the diameter d of the circle C2 is defined as a lateral shift η.
[0298]
This lateral shift η is equal to or greater than (18) after the time point when the moving vehicle S travels a predetermined distance after the current circle C1 is first detected and reaches a predetermined target point P1 within the circle C1. , (19) (shown below).
[0299]
That is, when the turning radius rt is larger than 0 from the turning radius rt obtained by the current motion measuring means 2 and the traveling direction Θt of the moving vehicle S,
η = Y−rt cos Θt + √ {rt2-(X + rtsinΘt))2} (18)
And when the turning radius rt is smaller than 0,
η = Y−rt cos Θ t−√ {rt2-(X + rtsinΘt))2} (19)
Is required.
[0300]
Here, when the relationship between the lateral deviation η obtained using the above equations (18) and (19) and the radius d / 2 of the circle C2 is −d / 2 <η <d / 2 The traveling condition selection means 4 determines that the moving vehicle S passes through the circle C2.
[0301]
Based on the determination result of the traveling condition selection means 4, the steering command calculation means 5 outputs a steering command to the moving vehicle S so as to maintain the steering as it is (step 107).
[0302]
Next, a description will be given of a process of steering the moving vehicle S that is turning to advance toward the circle C2.
[0303]
When the moving vehicle S cannot pass through the circle M2 (NO in Step 105), the traveling condition selection unit 4 outputs data for steering the moving vehicle S to the steering
[0304]
Processing performed by the traveling condition selection unit 4 will be described with reference to FIG.
[0305]
As described above, after the time point when the lateral deviation η travels a predetermined distance after the moving vehicle S first detects the current circle C1 and reaches the predetermined point P1 in the circle C1, the above ( 18), (19) (shown below).
[0306]
η = Y−rt cos Θt + √ {rt2-(X + rtsinΘt))2} (18)
η = Y−rt cos Θ t−√ {rt2-(X + rtsinΘt))2} (19)
Here, when the lateral shift η obtained using the above equations (18) and (19) is not included in the diameter d of the circle C2, the lateral shift η and the radius d / 2 of the circle C2 Of η <−d / 2 and d / 2 <η.
[0307]
As a result, the traveling condition selection means 4 determines that the moving vehicle S cannot pass through the circle C2. (Decision NO in step 104).
[0308]
Therefore, the travel condition selection means 4 is the data of the target point P2 (x2, y2) acquired from the planned travel route storage means 1 as described above, and the current position P1 of the moving vehicle S acquired from the current motion measurement means 2 ( x1, y1) and the data of the traveling direction Θt are output to the steering command calculation means 5.
[0309]
The steering command calculation means 5 performs a calculation for steering the moving vehicle S (step 106).
[0310]
Here, as described above with reference to FIGS. 6 and 17, the steering command calculation means 5 obtains the acquired target point P2 (x2, y2), the current position P1 (x1, y1) of the moving vehicle S, and the traveling direction Θt. From these data, a target turning radius rg for moving the moving vehicle S toward the target point P2 (x2, y2) is obtained using the above equation (8) (shown below).
[0311]
rg = {(x2-x1)2+ (Y2−y1)2} / {(X2−x1) · sinΘt− (y2−y1) · cosΘt} / 2 (8)
Then, the target steering angle ζ at the target turning radius rg is obtained from the above equation (10) (shown below).
[0312]
ζ = tan-1(L / rg) (10)
The steering command calculation means 5 outputs the target steering angle ζ thus determined as a steering command to the moving vehicle S (vehicle body 7), and controls the steering angle of the moving vehicle S.
[0313]
Accordingly, the moving vehicle S that is turning can be directed to the circle C2.
[0314]
As described above, in the above-described embodiment, when the moving body S detects the circle C1 for the first time and travels a predetermined distance and reaches the predetermined point P1 in the circle C1, the next circle C2 is reached. Since the moving body S is made to face, even if the target on the planned travel route K of the moving body S is a pair of end points, it moves without causing a small turning phenomenon as in the case of the pair of end points. The body S can be induced.
[0315]
Further, in this embodiment, similarly to the case of the pair of end points, the steering angle ζ when the moving vehicle S moves forward and the steering angle ζ when the vehicle moves backward can be made the same.
[0316]
FIG. 19 (a) is a diagram showing a case where the moving vehicle S0 is moved forward toward the target point (center point of the circle Cn) Pn in the circle Cn, and FIG. 19 (b) shows the target point Pn of the circle Cn. It is a figure which shows the case where the moving vehicle S0 is moved backwards.
[0317]
As shown in FIGS. 19 (a) and 19 (b), the steering angle ζ of the moving vehicle S0 is the same during forward movement and backward movement.
[0318]
Therefore, in this embodiment, as in the case of the pair of end points, the control characteristics when the moving vehicle S0 moves forward and backward can be made the same. Further, the control of the steering angle ζ can be simplified.
[0319]
Next, generation of target data on the planned travel route K will be described.
[0320]
For example, target data of a pair of end points is generated from point sequence data consisting of a point Pn (xn, yn) and a circle with a radius dn / 2 centered on the point Pn (xn, yn).
[0321]
Here, a pair of end points will be described as a gate.
[0322]
Further, the point sequence data is created by CAD (Computer Automation Design) or teaching playback as described above.
[0323]
The data converted from the point sequence data to the gate is stored in the planned traveling route storage means 1 as target data.
[0324]
FIG. 20A is a diagram showing a case where the density of the point sequence data is sufficiently dense compared with the curvature of the planned route K, and FIG. It is a figure which shows the case where it becomes sparse compared with.
[0325]
As shown in the travel route Ka2 in FIG. 20B, when the density of the point sequence data is sparse compared to the curvature of the planned route K, the curve of the planned travel route K cannot be reproduced.
[0326]
Therefore, in describing the generation of the target data on the planned travel route K, the density of the point sequence data for generating the target data is sufficiently higher than the curvature of the planned route K, as shown in FIG. It shall be dense.
[0327]
The density of the point sequence data for generating the target data is such that the curve of the planned travel route K can be sufficiently reproduced as shown by the travel route Ka1 when the three adjacent target points are connected by an arc.
[0328]
Therefore, assuming point sequence data in which three adjacent target points are arranged in a straight line, when the moving vehicle S passes around the first target point P1 and heads for the next target point P2, the target point P2 A case where the target gate G2 is generated from will be described with reference to FIG.
[0329]
FIG. 21 is a diagram showing point sequence data in which three target points are arranged in a straight line.
[0330]
As shown in FIG. 21, when the three target points are aligned, the direction vector from the target point P1 to P2 and the direction vector from P1 to P3 are the same.
[0331]
Therefore, the relationship between these direction vectors is expressed by the following equation (27).
[0332]
(X3−x1) / (y3−y1) = (x2−x1) / (y2−y1) (27)
Further, when the equation (27) is modified, the following equation (28) is obtained.
[0333]
(X3-x1). (Y2-y1)-(x2-x1). (Y3-y1) = 0 (28)
Here, when the above equation (28) is established, the three target points P1, P2, and P3 exist on a straight line.
[0334]
Further, the direction vector of the target gate G2 generated from the target point P2 is orthogonal to the direction vector from the target point P1 (x1, y1) to P2 (x2, y2). Therefore, the inclination θ2 of the target gate G2 is expressed by the following equation (29).
[0335]
Therefore, when the planned travel route K is a straight line, the target gate G2 generated from the target point P2 has a center point P2 (x2, y2) and a width d2 (the diameter of a circle centered on the target point P2 (x2, y2)). ) And the direction vector (cos θ2, sin θ2) represented by the above equation (29).
[0336]
By the way, if the above expression (28) (shown below) is not established, the three points of the target points P1, P2, and P3 are not on a straight line, so that the moving vehicle passes through these target points P1, P2, and P3. For example, S must turn while drawing an arc.
[0337]
(X3-x1). (Y2-y1)-(x2-x1). (Y3-y1) = 0 (28)
FIG. 22 is a diagram showing point sequence data in which three target points P1, P2, and P3 are arranged on the circumference of a turning circle of the moving vehicle S.
[0338]
In this case, as shown in FIG. 22, the planned travel route K is a curve.
[0339]
Therefore, assuming point sequence data in which the next three target points are lined up on the circumference of the turning circle of the moving vehicle S, the moving vehicle S passes around the first target point P1 and the next target point. A case where the target gate G2 is generated from the target point P2 when going to the point P2 will be described with reference to FIGS.
[0340]
FIG. 23 is a diagram showing a circle passing through the three target points P1, P2, and P3 and the inclination of the target gate.
[0341]
Here, the direction vector (cos θ2, sin θ2) of the target gate G2 generated from the target point P2 is from the center point P0 (x0, y0) of the circle in FIG. 23 to the center point P2 (x2, y2) of the target gate G2. It is equal to the vector facing (target point P2).
[0342]
Therefore, the direction vector (cos θ2, sin θ2) of the target gate G2 is expressed by the following equation (30).
[0343]
Further, the radius r0 of the circle of the center point P0 (x0, y0) passing through the center point P2 (x2, y2) of the target gate G2 is expressed by the following equation (31).
[0344]
r0 = √ {(x2−x0)2+ (Y2−y0)2 } (31)
Here, the setting of the center point P0 (x0, y0) of the circle will be described.
[0345]
FIG. 24 is a diagram for explaining the setting of the center point P0 (x0, y0) of a circle passing through the three target points P1, P2, P3.
[0346]
The center point P0 (x0, y0) is a straight line that bisects the line connecting the target points P1 and P2 vertically.
This is the intersection of T and a straight line S that bisects the line connecting the target points P2 and P3 vertically.
[0347]
Here, the straight line T is represented by the following equation (32), while the straight line S is represented by the following equation (33).
[0348]
Therefore, the coordinates of the center point P0 (x0, y0) that is the intersection of the straight lines T and S are expressed by the following equation (34).
[0349]
However,
t0 = {(-xb + xd) .yc-(-yb + yd) .xc} / (xa.yc-ya.xc)
... (35)
Therefore, when three adjacent target points P1, P2, and P3 exist on the circumference, the target gate G2 generated from the target point P2 has a center point P2 (x2, y2) and a width d2 (target point P2 ( x2 and y2), and a direction vector (cos θ2, sin θ2) expressed by the above equation (30). Further, the radius r0 of the circle of the center point P0 (x0, y0) passing through the center point P2 (x2, y2) of the target gate G2 can be expressed by the above equation (31).
[0350]
As described above, in the present embodiment, when the planned traveling route K ahead of the moving vehicle S is a curve, the target gate is generated from the point sequence data. The amount of data can be reduced compared to the case where the data is generated and stored. As a result, the calculation for generating the target gate from the point sequence data is easier than the case of performing the calculation for generating all of the point sequence data in the target gate.
[0351]
Further, in the present embodiment, the target gate is generated from the point sequence data for a plurality of target point sequences scheduled to pass immediately before the moving vehicle S. For one target point scheduled to pass, a target gate may be generated from the point sequence data.
[0352]
In the present embodiment, when the planned traveling route K ahead of the moving vehicle S is a curve, the target gate is generated from the point sequence data for a plurality of point sequences scheduled to pass immediately before the moving vehicle S. However, even if the planned traveling route K ahead of the moving vehicle S is a straight line, the target gate is generated from the point sequence data for one or more point sequences scheduled to pass immediately before the moving vehicle S. May be.
[0353]
Further, even if the planned traveling route K of the moving body S is an acute curve, the moving body S can be guided without causing a small turning phenomenon.
[0354]
By the way, when the moving vehicle S travels on the circumference of a circle having a center point P0 (x0, y0) and a radius r0 through three adjacent target points P1, P2, P3, the following example (A) In the cases of (b) and (c), it is necessary to appropriately output a deceleration command from the vehicle speed command calculation means 6 so that the moving vehicle S is less than the allowable speed.
[0355]
Example (A): When the moving vehicle S travels at a high speed on a curve with a small turning radius r0, there is a case where centrifugal force is generated and the vehicle body slides sideways and cannot bend the curve. In this case, it is necessary to automatically decelerate the moving vehicle to a turnable speed in advance.
[0356]
Example (b): If the moving vehicle S is a steering vehicle at the moment when the moving vehicle S enters a curve with a small turning radius r0 from a straight run, passes through the target gate G1, and moves toward the next target gate G2, steering is performed. You must make a sharp turn from going straight. At this time, if the moving vehicle S is traveling at a high speed, the curve may not be able to bend even if the steering is suddenly turned. In this case, it is necessary to automatically decelerate the moving vehicle to a steerable speed in advance.
[0357]
Example (c): In the cases (a) and (b) above, even if the moving vehicle S is decelerated greatly so as to go to the target gate G2 when it passes through the target gate G1, the moving vehicle S is greatly reduced. Since the vehicle is traveling at high speed, the curve around the target gate G2 may not be able to bend.
[0358]
Therefore, when generating the target gate from the point sequence data, it is necessary to generate the target gate from the point sequence data not at the time of passing through the target gate G1 but at a sufficiently early time when the moving vehicle can be decelerated or stopped safely. .
[0359]
Now, when there is an unscheduled obstacle on the planned travel route, it is necessary to take measures such as avoiding the moving vehicle from the obstacle or decelerating and stopping the moving vehicle immediately before the obstacle.
[0360]
Therefore, an embodiment in which data different from the target data on the planned travel route is generated when the moving vehicle is avoided from an obstacle or the moving vehicle is decelerated and stopped immediately before the obstacle is described with reference to FIGS. I will explain.
[0361]
FIG. 25 is a diagram illustrating an embodiment in which data different from target data on a planned travel route is generated when a moving vehicle is avoided from an obstacle.
[0362]
In this embodiment, the target data is point sequence data, and data different from the target data is also point sequence data.
[0363]
In FIG. 25, when the moving vehicle S travels sequentially through the target points P1, P2, P3, P4, P5, P6, and P7 on the scheduled travel route K, the distance αm in front of the moving vehicle S ( It is assumed that an obstacle SB exists between the target points P3 and P4 on the planned travel route K). In FIG. 25, it is assumed that the oncoming vehicle TK travels from the right front of the moving vehicle S.
[0364]
Here, when there is an obstacle SB on the planned travel route K, the obstacle detection means 8 in FIG. 2 detects information on the obstacles shown in the following (d), (e), (f), and (g). .
[0365]
(D) The obstacle SB exists in the range of ± β degrees in the left-right direction with the distance αm in front of the moving vehicle S and the front of the route in the center.
[0366]
(E) Since an oncoming vehicle runs from the right front of the moving vehicle S, it is dangerous to avoid it on the right side.
[0367]
(F) There is no obstacle in the left front of the moving vehicle S.
[0368]
(G) No other vehicles are approaching from the left rear of the moving vehicle S.
[0369]
The obstacle detection means 8 outputs information related to the obstacles shown in (d), (e), (f), and (g) to the scheduled travel
[0370]
The scheduled travel
[0371]
The travel condition selecting means 4 is notified by the planned travel route changing means 3 that “the obstacle SB exists on the planned travel route K at a distance α from the moving vehicle S, so that it is avoided in the direction of left β degrees with respect to the traveling direction. And get ready to stop. "
[0372]
Based on this information, the traveling condition selection means 4 outputs traveling condition data to the vehicle speed command calculation means 6 so as to decelerate as much as possible within a range where safety can be secured immediately. The vehicle speed command calculation means 6 outputs a travel command so as to decelerate the moving vehicle S. Further, the traveling condition selection means 4 is configured to perform the planned traveling so that the moving vehicle S can travel from the point of the distance αm from the moving vehicle S in the direction of the left β degrees with respect to the traveling direction by the width of the moving vehicle S. Points VP2, VP3, VP4 (failure avoidance points), VP5 (stoppable points), and VP6 (safe stop points) different from the target points P2, P3, P4, P5, P6, and P7 on the route K are generated.
[0373]
VP4 (failure avoidance point) is a point where the target point P4 is moved in the direction of left β degrees.
[0374]
VP5 (stoppable point) is a point where the moving vehicle S can stop even if the road surface condition is bad.
[0375]
VP6 (safety stop point) is the next point away from VP5.
[0376]
After generating the points VP2, VP3, VP4, VP5, and VP6, the traveling condition selecting means 4 generates further gates from the points VP2, VP3, VP4, VP5, and VP6.
[0377]
Then, the traveling condition selection unit 4 determines the relative position of the current moving vehicle with respect to the gate based on the information on the current motion state of the moving vehicle S and the information on the change of the planned traveling route K described above. On the other hand, the traveling condition is output to the vehicle speed command calculating means 6.
[0378]
Further, a steering command (a steering angle necessary for passing through the gate) is output from the steering command calculation means 5 to the moving vehicle S, and a travel command (necessary for passing through the gate) is output from the vehicle speed command calculation means 6. Output).
[0379]
As a result, the moving vehicle S is guided to pass through the gates generated from the points VP2, VP3, VP4, VP5, and VP6.
[0380]
However, the travel command during the avoiding operation of the moving vehicle S is a speed that can be stopped at the point VP5.
[0381]
Next, a case where the moving vehicle S is returned from the obstacle SB and returned to the planned travel route K will be described with reference to FIG.
[0382]
FIG. 26 is a diagram illustrating a case where the moving vehicle S is avoided from the obstacle SB and returned to the planned travel route K.
[0383]
In FIG. 26, return gates TG6 and TG7 are generated on the return travel route K1 between the point VP4 and the target point P7.
[0384]
Here, first, the obstacle detection means 8 confirms that there is no obstacle at the place where the return travel route K1 is to be formed.
[0385]
Then, the planned traveling
[0386]
Based on this information, the travel condition selection means 4 generates return gates TG6 and TG7 on the return travel route K1 for returning the moving vehicle S from the current avoidance travel route K0 to the planned travel route K. At the same time, the speed of the moving vehicle S is returned to the original speed.
[0387]
As a result, the moving vehicle S passes through the return gates TG6 and TG7, returns to the planned travel route K, and runs away from the point P4 where the obstacle SB exists.
[0388]
In this way, in the above-described embodiment, it is not necessary to stop the moving vehicle at a dangerous point where there is an obstacle, so it is possible to prevent a rear-end collision caused by the moving vehicle and the following vehicle.
[0389]
As described above, when the obstacle SB is found on the planned travel route K, the moving vehicle S needs to be decelerated.
[0390]
Here, between the point P1 which is the current position of the moving vehicle S and the point VP4 where the avoidance is completed, an operation of rapidly turning the steering wheel while decelerating the moving vehicle S by applying a brake is necessary.
[0390]
Therefore, points VP2 and VP3 are generated from the point P1 which is the current position of the moving vehicle S to immediately before avoidance, and the radius r0 of the turning circle of the moving vehicle S passing through these points VP2 and VP3 is safely steered at the current speed. The turning radius is sufficiently large.
[0392]
In this embodiment, the current position of the moving vehicle S is described as being located at the point P1, and the position of the obstacle SB is present between the target points P3 and P4. It is desirable to always run at a speed at which the vehicle can be stopped and steered, and decelerate before point P1 if the speed is high.
[0393]
Next, in addition to the above-described embodiment, an embodiment in which the moving vehicle is avoided from the obstacle, or the moving vehicle is decelerated and stopped immediately before the obstacle will be described.
[0394]
FIG. 27 is a diagram illustrating an embodiment in which data different from target data on a planned travel route is generated when a moving vehicle is put in a garage.
[0395]
In FIG. 27, the travel condition selection means 4 is configured to have gates TG1, TG2 different from the target gates G1, G2, G3 when the moving vehicle S that has passed the target gates G1, G2 on the planned travel route K reaches the target gate G3. Is generated.
[0396]
Therefore, the moving vehicle S is directed from the target gate G3 to the gates TG1 and TG2.
[0397]
When the vehicle reaches the gate TG2, the moving vehicle S is moved backward to the gates PG1 and PG2 generated in the garage SK.
[0398]
Thus, in this embodiment, the moving vehicle S traveling on the planned travel route K can be moved backward and placed in the garage SK.
[0399]
FIG. 28 is a diagram showing an embodiment in which data different from target data on a planned travel route is generated when a moving vehicle traveling on the planned travel route is merged with a travel route different from the planned travel route.
[0400]
In FIG. 28, the travel condition selection means 4 generates a gate TG1 different from the target gate G1 when it reaches the target gate G1 on the planned travel route K.
[0401]
Therefore, the moving vehicle S is directed to the gate TG1.
[0402]
When the vehicle reaches the gate TG1, the moving vehicle S is directed toward the target gates G2 'and G3' on the planned travel route Kb.
[0403]
Thus, in this embodiment, the moving vehicle S traveling on the planned travel route K can be joined to a travel route Kb different from the planned travel route K.
[0404]
FIG. 29 is a diagram illustrating an embodiment in which when an obstacle is present in front of a moving vehicle traveling on a planned traveling route, the moving vehicle is decelerated in front of the obstacle.
[0405]
In FIG. 29, when the travel condition selection means 4 reaches the target gate G2 on the planned travel route K, the travel condition selection means 4 generates gates TG1, TG2 different from the target gates G1, G2 before the obstacle SB '.
[0406]
Therefore, the moving vehicle S is sequentially decelerated at the gates TG1 and TG2.
[0407]
Thus, in this embodiment, when the obstacle SB ′ exists in front of the moving vehicle S, the moving vehicle S can be decelerated before the obstacle.
[0408]
FIG. 30 is a diagram showing an embodiment for avoiding an obstacle by generating data different from the target data on the planned traveling route when an obstacle exists on the planned traveling route of the moving vehicle.
[0409]
In FIG. 30, when the traveling condition selection means 4 reaches the target gate G1 on the planned traveling route K, the traveling vehicle S can avoid the obstacle SB 'through the gates TG1, TG2, and TG3 different from the target gate G1. Generate to the right of the direction of travel.
[0410]
Therefore, the moving vehicle S is directed to the gates TG1, TG2, and TG3.
[0411]
When the vehicle reaches the gate TG3, the moving vehicle S is directed to the target gate G2 on the original scheduled travel route K.
[0412]
Thus, in this embodiment, when the obstacle SB ′ exists on the planned travel route K of the moving vehicle S, the obstacle SB ′ can be avoided.
[0413]
FIG. 31 is a diagram illustrating an embodiment in which a moving vehicle is stopped in front of an obstacle when an obstacle is present in front of the moving vehicle traveling on the planned traveling route.
[0414]
In FIG. 31, when the travel condition selection means 4 reaches the target gate G2 on the planned travel route K, the travel condition selection means 4 generates gates TG1 and TG2 different from the target gates G1 and G2 before the obstacle SB '.
[0415]
Therefore, the moving vehicle S is rapidly decelerated at the gate TG1 and stopped at TG2 or TG3.
[0416]
Thus, in this embodiment, when the obstacle SB ′ is present in front of the moving vehicle S, the moving vehicle S can be stopped before the obstacle.
[0417]
FIG. 32 is a diagram showing an embodiment in which data different from the target data on the planned travel route is generated when a moving vehicle traveling on the planned travel route is stopped at the stop point.
[0418]
In FIG. 32, when the travel condition selection means 4 reaches the target gate G2 on the planned travel route K, the travel condition selection means 4 generates gates TG1, TG2 different from the target gates G1, G2 between the target gate G2 and the stop point Ps. TG3 is generated at the stop point Ps.
[0419]
Therefore, the moving vehicle S is decelerated while moving toward the gates TG1 and TG2, and stopped at the gate TG3.
[0420]
As described above, in this embodiment, the moving vehicle S traveling on the planned travel route K can be placed sideways on the stop point Ps and stopped.
[0421]
FIG. 33 shows an embodiment in which data that is different from the target data on the planned travel route is generated when the moving vehicle that has been stopped at the stop point is started, gradually accelerated, and returned to the planned travel route. FIG.
[0422]
In FIG. 33, the travel condition selection means 4 generates gates TG1, TG2, TG3 different from the target gates G1, G2 between the stop point Ps and the target gate G1 on the planned travel route K.
[0423]
Therefore, the moving vehicle S is gradually accelerated while moving toward the gates TG1, TG2, and TG3, and is directed toward the targets G1 and G2 on the scheduled travel route K.
[0424]
As described above, in this embodiment, the moving vehicle S that is stopped at the stop point Ps can be started, gradually accelerated, and returned to the planned travel route K.
[0425]
FIG. 34 is a diagram showing an embodiment in which when a vehicle traveling next to a moving vehicle approaches the moving vehicle, the moving vehicle is avoided from the approaching vehicle.
[0426]
In FIG. 34, when the traveling condition selecting means 4 reaches the target gate G1 on the planned traveling route K, the traveling vehicle S can avoid the vehicle Sx by using the gates TG1, TG2, TG3 different from the target gates G1, G2. Generate to the right of the direction of travel.
[0427]
Therefore, the moving vehicle S is directed to the gates TG1, TG2, and TG3.
[0428]
When the vehicle reaches the gate TG3, the moving vehicle S is directed to the target gate G2 on the original scheduled travel route K.
[0429]
As described above, in this embodiment, when the vehicle Sx traveling next to the moving vehicle S has approached the moving vehicle S, the moving vehicle S is avoided from the approaching vehicle Sx. Can do.
[0430]
FIG. 35 is a diagram showing an embodiment in which when the planned travel route of a moving vehicle is a sharp curve, the distance between the target gate and the target gate is narrowed to reduce the speed of the moving vehicle on the sharp curve.
[0431]
In FIG. 35, the distance WT between the target gates G3 and G4 and the distance WT between the target gates G3 and G4 generated on the sharp curve Kc are the distance W between the target gates G1 and G2 and the target gates G6 and G7. It is narrower than the interval W.
[0432]
Here, at each target gate, the steering command calculation means 5 performs the steering calculation when the moving vehicle S reaches each target gate. Therefore, the calculation is continued for the sharp curve Kc corresponding to the narrowing of the target gate interval. Will be done. As a result, since the calculation time becomes longer at the sharp curve Kc, the speed v at which the moving vehicle S passes the sharp curve Kc decreases. Thus, it can adjust so that the passage time between target gates may become constant.
[0433]
Therefore, in this embodiment, when the planned travel route K is a sharp curve, the speed v of the moving vehicle S can be reduced to prevent the wheel from being removed, and the moving vehicle S can travel safely.
[0434]
FIG. 36 is a diagram showing an embodiment in which the speed is lowered in order to reduce the centrifugal force exerted on the moving vehicle traveling along the planned traveling route with a sharp curve.
[0435]
In FIG. 36, the centrifugal force exerted on the moving vehicle S traveling along the sharply planned traveling route K is inversely proportional to the turning radius r0 and proportional to the speed v of the moving vehicle S.
[0436]
Further, when the moving vehicle S travels on a sharp curve, the turning radius r0 of the moving vehicle S decreases.
[0437]
For this reason, the centrifugal force exerted on the moving vehicle S traveling on the planned traveling route K having a sharp curve increases, and the moving vehicle S may cause a rollover accident or a slip accident.
[0438]
Therefore, it is necessary to reduce the speed v of the moving vehicle S.
[0439]
Therefore, the turning radius r0 of the moving vehicle S is obtained by the current motion measuring means 2 (speed v is detected by the vehicle speed sensor and ω is detected by the angular velocity sensor) (r0 = v / ω), and the turning radius is determined in the vehicle body 7 (moving vehicle S). If r0 is small, the speed v is adjusted to decrease.
[0440]
As a result, it is possible to prevent a rollover accident or a slip accident of the moving vehicle S traveling on the planned traveling route K having a sharp curve.
[0441]
In the above-described embodiment, tan θ is used for the slope of the linear equation shown in the above equations (1) and (4). However, when θ is an integral multiple of 90 degrees, the straight line is on the X axis or the Y axis. Become parallel. In this case, in order to determine the positional relationship between the straight line and the coordinates of the points, it is only necessary to compare only the X or Y coordinates.
[0442]
In the above-described embodiment, the point sequence data stored in the planned travel
[Brief description of the drawings]
FIG. 1 is a diagram showing an embodiment of a moving vehicle guidance device according to the present invention.
FIG. 2 is a block diagram showing a configuration of a moving vehicle guidance device according to the present invention.
FIG. 3 is a flowchart for explaining processing performed by the moving vehicle guidance device according to the present invention;
FIG. 4 is a diagram illustrating a process for confirming that a moving vehicle has passed between a pair of end points.
FIG. 5 is a diagram illustrating a process of causing a moving vehicle traveling straight toward a pair of end points.
FIG. 6 is a diagram illustrating steering of a moving vehicle by replacing the moving vehicle with an equivalent two-wheeled vehicle.
FIG. 7 is a diagram illustrating steering of a skid steer type moving vehicle.
FIG. 8 is a diagram illustrating a process of causing a moving vehicle that is turning to travel toward a pair of end points.
FIG. 9A is a diagram showing a case where the moving vehicle is moved forward toward the target gate, and FIG. 9B is a diagram showing a case where the moving vehicle is moved backward toward the target gate. .
FIG. 10 is a view showing a modification of the embodiment of the guidance device for a moving vehicle according to the present invention.
FIG. 11 is a view showing a modification of the embodiment of the guidance device for a moving vehicle according to the present invention.
FIG. 12 is a diagram showing an embodiment of a moving vehicle guidance device according to the present invention.
FIG. 13 is a diagram illustrating a process of causing a moving vehicle traveling straight toward an arbitrary geometric figure.
FIG. 14 is a diagram illustrating a process of causing a moving vehicle that is turning to travel toward an arbitrary geometric figure.
FIG. 15A is a diagram showing a case in which a moving vehicle is advanced toward an arbitrary geometric figure, and FIG. 15B is a diagram in which the moving vehicle is moved backward toward an arbitrary geometric figure. It is a figure which shows a case.
FIG. 16 is a diagram showing an embodiment of a moving vehicle guidance device according to the present invention.
FIG. 17 is a diagram for explaining a process of causing a moving vehicle traveling straight toward a circle.
FIG. 18 is a diagram illustrating a process of causing a moving vehicle that is turning to travel toward a circle.
FIG. 19A is a diagram showing a case where a moving vehicle is moved forward toward a circle, and FIG. 19B is a diagram showing a case where the moving vehicle is moved backward toward a circle.
FIG. 20A is a diagram showing a case where the density of the point sequence data is sufficiently dense compared to the curvature of the planned route, and FIG. 20B is a diagram where the density of the point sequence data is the planned route. It is a figure which shows the case where it becomes sparse compared with the curvature of K.
FIG. 21 is a diagram showing point sequence data in which three target points are arranged in a straight line.
FIG. 22 is a diagram showing point sequence data in which three target points are arranged on the circumference of a turning circle of a moving vehicle.
FIG. 23 is a diagram showing a circle passing through three target points and the inclination of the target gate.
FIG. 24 is a diagram illustrating the setting of the center point of a circle passing through three target points.
FIG. 25 is a diagram illustrating an embodiment in which data different from target data on a planned travel route is generated when a moving vehicle is avoided from an obstacle.
FIG. 26 is a diagram illustrating a case where a moving vehicle is avoided from an obstacle and is returned to a planned travel route.
FIG. 27 is a diagram showing a modification of the embodiment of the moving vehicle guidance device according to the present invention.
FIG. 28 is a diagram showing a modification of the embodiment of the guide device for a moving vehicle according to the present invention.
FIG. 29 is a diagram showing a modification of the embodiment of the guide device for a moving vehicle according to the present invention.
FIG. 30 is a diagram showing a modification of the embodiment of the guide device for a moving vehicle according to the present invention.
FIG. 31 is a diagram showing a modification of the embodiment of the guidance device for a moving vehicle according to the present invention.
FIG. 32 is a view showing a modified example of the embodiment of the guidance device for a moving vehicle according to the present invention.
FIG. 33 is a diagram showing a modified example of the embodiment of the guidance device for a moving vehicle according to the present invention.
FIG. 34 is a diagram showing a modified example of the embodiment of the guidance device for a moving vehicle according to the present invention.
FIG. 35 is a diagram showing a modification of the embodiment of the moving vehicle guidance device according to the present invention.
FIG. 36 is a diagram showing a modified example of the embodiment of the guidance device for a moving vehicle according to the present invention.
FIG. 37 is a diagram illustrating a conventional technique.
FIG. 38 (a) is a diagram showing a case where the equivalent two-wheeled vehicle is moved forward and guided to the target point, and FIG. 38 (b) is a case where the equivalent two-wheeled vehicle is moved backward and guided to the target point. FIG.
[Explanation of symbols]
S ... Mobile vehicle
K ... Planned route
PRn, PLn ... A pair of end points
Claims (5)
前記予定走行経路上の目標点を挟んで所定の距離だけ離間させた一対の端点間の領域を前記目標とし、
現在の前記一対の端点間に前記移動体が到達した時点で、現状の操舵角を維持して走行した場合に次に目標とする一対の端点間の領域に到達するか否かを判断し、
到達すると判断した場合は現状の操舵角を維持するようにし、到達しないと判断した場合は次に目標とする一対の端点間の目標点に前記移動体を向かわせるための目標操舵角度を演算してこの目標操舵角度に基づいて操舵角を変更するようにし、次に目標とする一対の端点間に前記移動体を向かわせることを特徴とする移動体の誘導装置。In the guidance device for a moving body that guides the moving body toward the next target when the current target is reached among a plurality of targets on the planned traveling route of the moving body,
The region between a pair of end points separated by a predetermined distance across the target point on the planned travel route is the target,
When the mobile body has reached between the current pair of end points, it is determined whether or not to reach the region between the next target pair of end points when traveling while maintaining the current steering angle,
If it is determined that the vehicle will reach the current steering angle, the current steering angle is maintained. If it is determined that the vehicle does not reach, the target steering angle for directing the moving body to the target point between the pair of target end points is calculated. An apparatus for guiding a moving body, wherein the steering angle is changed based on the target steering angle, and the moving body is then directed between a pair of target end points.
前記移動体が前記通過領域内の所定の地点に到達した時点で、現状の操舵角を維持して走行した場合に次の通過領域に到達するか否かを判断し、
到達すると判断した場合は現状の操舵角を維持するようにし、到達しないと判断した場合は次の通過領域内の前記所定の地点に前記移動体を向かわせるための目標操舵角度を演算してこの目標操舵角度に基づいて操舵角を変更するようにし、前記次の通過領域に前記移動体を向かわせることを特徴とする移動体の誘導装置。In the moving body guidance device for guiding the moving body toward the next passing area when the current passing area is reached among the plurality of passing areas on the scheduled traveling route of the moving body,
When the mobile body reaches a predetermined point in the passing area, it is determined whether or not the next passing area is reached when traveling while maintaining the current steering angle;
If it is determined that the vehicle will reach the current steering angle, the current steering angle is maintained. If it is determined that the vehicle does not reach, the target steering angle for directing the moving body to the predetermined point in the next passing area is calculated and this is calculated. An apparatus for guiding a moving body, wherein the steering angle is changed based on a target steering angle, and the moving body is directed to the next passage region.
前記予定走行経路上の目標点を挟んで所定の距離だけ離間させた一対の端点間の領域を前記目標とし、
前記操舵輪と前記固定輪とのホイールベースを分母とし、前記移動体が次の目標に旋回移動する際の旋回円の半径を分子とする逆正接関数から前記操舵輪の操舵角度を求め、
現在の前記一対の端点間に前記移動体が到達した時点で、現状の操舵角を維持して走行した場合に次に目標とする一対の端点間の領域に到達するか否かを判断し、
到達すると判断した場合は現状の操舵角を維持するようにし、到達しないと判断した場合は次に目標とする一対の端点間の前記目標点に移動体を向かわせるための目標操舵角度を演算しこの目標操舵角度に基づいて操舵角を変更するようにして、次に目標とする一対の端点間に前記移動体を向かわせることを特徴とする移動体の誘導装置。Guidance of the moving body that guides the moving body toward the next target when the current target is reached among a plurality of targets on the planned traveling route of the moving body having the steering wheel and the fixed wheel In the device
The region between a pair of end points separated by a predetermined distance across the target point on the planned travel route is the target,
Using the wheel base of the steered wheel and the fixed wheel as a denominator, the steering angle of the steered wheel is obtained from an arc tangent function with the radius of the turning circle when the moving body turns to the next target as a numerator,
When the mobile body has reached between the current pair of end points, it is determined whether or not to reach the region between the next target pair of end points when traveling while maintaining the current steering angle,
If it is determined that the vehicle will reach the current steering angle, the current steering angle will be maintained. An apparatus for guiding a moving body, wherein the steering angle is changed based on the target steering angle, and the moving body is then directed between a pair of target end points.
前記操舵輪と前記固定輪とのホイールベースを分母とし、前記移動体が次の目標に旋回移動する際の旋回円の半径を分子とする逆正接関数から前記操舵輪の操舵角度を求め、
前記移動体が前記通過領域内の所定の地点に到達した時点で、現状の操舵角を維持して走行した場合に次の通過領域に到達するか否かを判断し、
到達すると判断した場合は現状の操舵角を維持するようにし、到達しないと判断した場合は次の通過領域内の前記所定の地点に前記移動体を向かわせるための目標操舵角度を演算してこの目標操舵角度に基づいて操舵角を変更するようにし、前記次の通過領域に向けて前記移動体を向かわせることを特徴とする移動体の誘導装置。Movement that guides the moving body toward the next passing area when it reaches the current passing area among a plurality of passing areas on the planned traveling route of the moving body having the steering wheel and the fixed wheel. In the body guidance device,
Using the wheel base of the steered wheel and the fixed wheel as a denominator, the steering angle of the steered wheel is obtained from an arc tangent function with the radius of the turning circle when the moving body turns to the next target as a numerator,
When the mobile body reaches a predetermined point in the passing area, it is determined whether or not the next passing area is reached when traveling while maintaining the current steering angle;
If it is determined that the vehicle will reach the current steering angle, the current steering angle is maintained. If it is determined that the vehicle does not reach, the target steering angle for directing the moving body to the predetermined point in the next passing area is calculated and this is calculated. An apparatus for guiding a moving body, wherein the steering angle is changed based on a target steering angle, and the moving body is directed toward the next passing region.
前記移動体を、目標点を中心とする一対の端点間に到達した時点で、次の目標点を中心とする一対の端点間に向かわせることを特徴とする請求項1記載の移動体の誘導装置。Generating a pair of end points for a point sequence corresponding to a curve among a plurality of target points on the planned travel route;
2. The moving body guide according to claim 1, wherein when the moving body reaches between a pair of end points centered on a target point, the moving body is directed between a pair of end points centered on a next target point. apparatus.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP14083599A JP4097844B2 (en) | 1999-05-20 | 1999-05-20 | Moving body guidance device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP14083599A JP4097844B2 (en) | 1999-05-20 | 1999-05-20 | Moving body guidance device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2000330632A JP2000330632A (en) | 2000-11-30 |
| JP4097844B2 true JP4097844B2 (en) | 2008-06-11 |
Family
ID=15277831
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP14083599A Expired - Fee Related JP4097844B2 (en) | 1999-05-20 | 1999-05-20 | Moving body guidance device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4097844B2 (en) |
Families Citing this family (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4647201B2 (en) * | 2003-12-05 | 2011-03-09 | 富士重工業株式会社 | Vehicle travel control device |
| JP5560979B2 (en) * | 2010-07-13 | 2014-07-30 | 村田機械株式会社 | Autonomous mobile |
| JP5510188B2 (en) * | 2010-08-24 | 2014-06-04 | 株式会社豊田中央研究所 | Autonomous mobile |
| JP6448118B2 (en) * | 2014-09-05 | 2019-01-09 | 株式会社Ihi | Route planning method and apparatus for moving body |
| KR101813610B1 (en) * | 2014-10-21 | 2018-01-03 | 서울대학교산학협력단 | Three-dimensional nonlinear path-following guidance system and method based on differential geometry |
| JP7613862B2 (en) * | 2020-09-24 | 2025-01-15 | 株式会社Subaru | Vehicle control device and control method |
| JP7787983B2 (en) * | 2022-03-24 | 2025-12-17 | 株式会社東芝 | Data processing device, mobile system, mobile body, data processing method, program, and storage medium |
-
1999
- 1999-05-20 JP JP14083599A patent/JP4097844B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2000330632A (en) | 2000-11-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN112068545B (en) | Method and system for planning running track of unmanned vehicle at crossroad and storage medium | |
| CN113895463A (en) | Path planning method suitable for automatic driving vehicle turning | |
| JP6376059B2 (en) | Control device for autonomous driving vehicle | |
| US10730555B2 (en) | System for controlling the steering means of a motor vehicle in case of an imminent collision with an obstacle | |
| JP6361567B2 (en) | Automated driving vehicle system | |
| US6519514B2 (en) | Automatic travel control apparatus for vehicle | |
| KR102464484B1 (en) | Assistant system and assistant method for backward driving of vehicle | |
| CN113985875B (en) | Dynamic path planning method for unmanned vehicles in artificial potential field based on collision prediction model | |
| CN110361013A (en) | A kind of path planning system and method for auto model | |
| JP6696593B2 (en) | Travel history storage method, travel locus model generation method, self-position estimation method, and travel history storage device | |
| US12037014B2 (en) | Method for determining an avoidance path of a motor vehicle | |
| JPH096434A (en) | Robot automatic travel control device and method thereof | |
| CN106394650A (en) | Field-based torque steering control | |
| CN106843223A (en) | A kind of intelligent avoidance AGV cart systems and barrier-avoiding method | |
| CN105752081A (en) | Lane Change Control Device And Control Method | |
| JP7535648B2 (en) | VEHICLE CONTROL DEVICE, VEHICLE CONTROL METHOD, TARGET TRACK CALCULATION METHOD, AND VEHICLE | |
| JPH04315300A (en) | Method and apparatus for high-speed vehicle control | |
| JP2012084021A (en) | Travel controller | |
| TW200415056A (en) | Method and device for steering vehicle without contact with track | |
| JP4097844B2 (en) | Moving body guidance device | |
| JP4670807B2 (en) | Travel route creation method, autonomous mobile body, and autonomous mobile body control system | |
| EP3679441B1 (en) | Mobile robot having collision avoidance system for crossing a road from a pedestrian pathway | |
| JP4264399B2 (en) | Automated guided vehicle | |
| JP6898636B2 (en) | Vehicle travel control device | |
| JP2022536743A (en) | Trajectory shape generation method and apparatus for autonomous vehicle |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050304 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070524 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070529 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070727 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080205 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080218 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080311 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080312 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110321 Year of fee payment: 3 |
|
| LAPS | Cancellation because of no payment of annual fees |