(57)【要約】【課題】カーブ状の走行路においても安定走行できる搬送車および搬送車の操舵制御プログラムを提供すること。【解決手段】ガイドセンサ４に対する仮想原点Ｃｆ，Ｃｒの距離Ｌｉｐは走行路が直線状の場合よりカーブ状の場合の方が短く設定される。距離Ｌｉｐが長い程、ズレ量ｄｆ，ｄｒが同じであっても操舵角θｖは小さくなるので、直線状の走行路を安定走行できる。一方、距離Ｌｉｐが短い程、ズレ量ｄｆ，ｄｒに対する旋回中心Ｃを算出するためのなす角θｆ，θｒは大きくなり、旋回中心Ｃから各回転軸３ｃまでの旋回半径は小さくなる。これにより、ズレ量ｄｆ，ｄｒが同じであっても操舵角θｖは大きくなるので、カーブ状の走行路での追従性が向上する。従って、カーブ状の走行路においても安定走行を実現できる。【選択図】図３
2020140424.tif 000002
【特許請求の範囲】
【請求項１】
車体と、その車体に操舵自在に配設される複数の回転軸と、それら複数の回転軸をそれぞれ個別に操舵する複数の操舵手段と、前記複数の回転軸に車軸を介してそれぞれ取着される車輪と、その車輪を回転駆動させる駆動手段とを備えた搬送車において、
走行路を示すガイドを検知可能なガイドセンサと、
前記搬送車を前記ガイドに沿って走行させるように、前記ガイドセンサが検出したズレ量に基づいて旋回中心を算出し、その旋回中心に基づいて前記複数の操舵手段の操舵角をそれぞれ算出して操舵制御する操舵制御手段とを備え、
前記ガイドセンサは、前記車体の走行方向を車長とした場合の前後に少なくとも２か所設けられ、その前後２か所において、それぞれ前記車体の車幅中心に対する前記ガイドの位置のズレ量を検出するものであり、
前記操舵制御手段は、前記旋回中心を算出するための仮想原点を、前後２か所の前記ガイドセンサ毎にそれぞれ前記車体の車幅中心線上に設けており、前記ガイドセンサに対する前記仮想原点の距離は、前記走行路が直線状の場合よりカーブ状の場合の方が短く設定されることを特徴とする搬送車。
【請求項２】
前記操舵制御手段は、前記ガイドセンサが検出した前記ガイドの位置のズレ量の今回検出値と前回検出値との差分値を、前回検出時までの積算値に更に積算した積算値に基づいて前記旋回中心を算出するものであることを特徴とする請求項１記載の搬送車。
【請求項３】
車体と、その車体に操舵自在に配設される複数の回転軸と、それら複数の回転軸をそれぞれ個別に操舵する複数の操舵手段と、前記複数の回転軸に車軸を介してそれぞれ取着される車輪と、その車輪を回転駆動させる駆動手段とを備えた搬送車において、
走行路を示すガイドを検知可能なガイドセンサと、
前記搬送車を前記ガイドに沿って走行させるように、前記ガイドセンサが検出したズレ量に基づいて旋回中心を算出し、その旋回中心に基づいて前記複数の操舵手段の操舵角をそれぞれ算出して操舵制御する操舵制御手段とを備え、
前記ガイドセンサは、前記車体の走行方向を車長とした場合の前後に少なくとも２か所設けられ、その前後２か所において、それぞれ前記車体の車幅中心に対する前記ガイドの位置のズレ量を検出するものであり、
前記操舵制御手段は、前記ガイドセンサが検出した前記ガイドの位置のズレ量の今回検出値と前回検出値との差分値を、前回検出時までの積算値に更に積算した積算値に基づいて前記旋回中心を算出するものであることを特徴とする搬送車。
【請求項４】
前記操舵制御手段は、前記ガイドの位置のズレ量が前記車幅中心に対して正方向にある場合、そのズレ量の今回検出値と前回検出値との差分値が正であれば、その差分値を前記前回検出時までの積算値に更に積算した積算値に基づいて前記旋回中心を算出し、一方、前記ズレ量の今回検出値と前回検出値との差分値が負であれば、前記前回検出時までの積算値に基づいて前記旋回中心を算出するものであることを特徴とする請求項２又は３に記載の搬送車。
【請求項５】
前記操舵制御手段は、前記走行路の形状が直線状からカーブ状へ切り替わる場合に、前記ガイドの位置のズレ量の前回検出値を、前記前回検出時までの積算値とするものであることを特徴とする請求項２から４のいずれかに記載の搬送車。
【請求項６】
車体と、その車体に操舵自在に配設される複数の回転軸と、それら複数の回転軸をそれぞれ個別に操舵する複数の操舵手段と、その操舵手段を操舵制御するコンピュータと、前記複数の回転軸に車軸を介してそれぞれ取着される車輪と、その車輪を回転駆動させる駆動手段とを備えた搬送車に対し、前記コンピュータに前記操舵制御を実行させる搬送車の操舵制御プログラムにおいて、
前記搬送車は、走行路を示すガイドを検知可能なガイドセンサを備え、そのガイドセンサは、前記車体の走行方向を車長とした場合の前後に少なくとも２か所設けられ、その前後２か所において、それぞれ前記車体の車幅中心に対する前記ガイドの位置のズレ量を検出するものであり、
前記操舵制御プログラムは、前記搬送車を前記ガイドに沿って走行させるように、
前記ガイドセンサが検出したズレ量に基づいて旋回中心を算出する旋回中心算出ステップと、
そのステップで算出された旋回中心に基づいて前記複数の操舵手段の操舵角をそれぞれ算出する操舵角算出ステップと、
そのステップで算出された操舵角に基づいて操舵制御を実行する操舵制御ステップと、を前記コンピュータに実行させるものであり、
前記旋回中心算出ステップは、前記ガイドセンサが検出した前記ガイドの位置のズレ量の今回検出値と前回検出値との差分値を、前回検出時までの積算値に更に積算した積算値に基づいて前記旋回中心を算出するものであることを特徴とする搬送車の操舵制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、搬送車および搬送車の操舵制御プログラムに関し、特にカーブ状の走行路においても安定走行できる搬送車および搬送車の操舵制御プログラムに関するものである。
【背景技術】
【０００２】
特許文献１には、パレット２００の下方へ進入した後、リフタ１４０を上昇させてパレット２００を持ち上げ、パレット２００と共にパレット２００上に載置されたワーク２８０を無人で搬送する搬送車１００が開示されている。搬送車１００は、パレット２００の下面から下方へ突き出しパレット２００の中心線を貫くように延設されたブラケット２３０に沿って、パレット２００の下方へ進入する。具体的には、搬送車１００は、車体１１０の上面に設けられたレーザーセンサ１５０によりブラケット２３０を検出し、ブラケット２３０が車体１１０の中央に位置するように操舵制御を行って、パレット２００の下方へ進入する。
【０００３】
かかる操舵制御は、次のように行われる（文献１の図６参照）。まずレーザーセンサ１５０の後方であって車体１１０の車幅方向中心線ＣＬ上に２つの仮想原点ＶＰ１，ＶＰ３を設定する。次に、仮想原点ＶＰ１，ＶＰ３と、レーザーセンサ１５０で測定された車体中心ＣＬからブラケット２３０までの距離（ズレ量）ＬＺＳ１，ＬＺＳ３とに基づいて、車体１１０の旋回中心ＡＲを算出する。この旋回中心ＡＲと各走行装置１２０の回転軸とをそれぞれ結ぶ直線に直交する方向へ各回転軸を回転させることにより操舵制御を行っている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１７−２２８１５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、直線状に形成されるブラケット２３０に沿って搬送車１００が走行するように仮想原点ＶＰ１，ＶＰ３を設定すると、直線状の走行路では安定走行できるが、カーブ状の走行路では操舵制御の追従遅れが生じ、場合によっては搬送車１００が走行路から外れてしまうことがあった。操舵制御後における車体１１０の角度変更には、どうしても追従遅れが生じるからである。
【０００６】
本発明は、上述した問題点を解決するためになされたものであり、カーブ状の走行路においても安定走行できる搬送車および搬送車の操舵制御プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００７】
この目的を達成するために本発明の搬送車は、車体と、その車体に操舵自在に配設される複数の回転軸と、それら複数の回転軸をそれぞれ個別に操舵する複数の操舵手段と、前記複数の回転軸に車軸を介してそれぞれ取着される車輪と、その車輪を回転駆動させる駆動手段とを備え、更に、走行路を示すガイドを検知可能なガイドセンサと、前記搬送車を前記ガイドに沿って走行させるように、前記ガイドセンサが検出したズレ量に基づいて旋回中心を算出し、その旋回中心に基づいて前記複数の操舵手段の操舵角をそれぞれ算出して操舵制御する操舵制御手段とを備え、前記ガイドセンサは、前記車体の走行方向を車長とした場合の前後に少なくとも２か所設けられ、その前後２か所において、それぞれ前記車体の車幅中心に対する前記ガイドの位置のズレ量を検出するものであり、前記操舵制御手段は、前記旋回中心を算出するための仮想原点を、前後２か所の前記ガイドセンサ毎にそれぞれ前記車体の車幅中心線上に設けており、前記ガイドセンサに対する前記仮想原点の距離は、前記走行路が直線状の場合よりカーブ状の場合の方が短く設定される。
【０００８】
また、前記操舵制御手段は、前記ガイドセンサが検出した前記ガイドの位置のズレ量の今回検出値と前回検出値との差分値を、前回検出時までの積算値に更に積算した積算値に基づいて前記旋回中心を算出するものである。
【０００９】
本発明の搬送車の操舵制御プログラムは、車体と、その車体に操舵自在に配設される複数の回転軸と、それら複数の回転軸をそれぞれ個別に操舵する複数の操舵手段と、その操舵手段を操舵制御するコンピュータと、前記複数の回転軸に車軸を介してそれぞれ取着される車輪と、その車輪を回転駆動させる駆動手段とを備えた搬送車に対し、前記コンピュータに前記操舵制御を実行させるものであり、前記搬送車は、走行路を示すガイドを検知可能なガイドセンサを備え、そのガイドセンサは、前記車体の走行方向を車長とした場合の前後に少なくとも２か所設けられ、その前後２か所において、それぞれ前記車体の車幅中心に対する前記ガイドの位置のズレ量を検出するものであり、前記操舵制御プログラムは、前記搬送車を前記ガイドに沿って走行させるように、前記ガイドセンサが検出したズレ量に基づいて旋回中心を算出する旋回中心算出ステップと、そのステップで算出された旋回中心に基づいて前記複数の操舵手段の操舵角をそれぞれ算出する操舵角算出ステップと、そのステップで算出された操舵角に基づいて操舵制御を実行する操舵制御ステップと、を前記コンピュータに実行させるものであり、前記旋回中心算出ステップは、前記ガイドセンサが検出した前記ガイドの位置のズレ量の今回検出値と前回検出値との差分値を、前回検出時までの積算値に更に積算した積算値に基づいて前記旋回中心を算出するものである。
【発明の効果】
【００１０】
本発明の搬送車によれば、旋回中心を算出するための仮想原点は、前後２か所のガイドセンサ毎にそれぞれ車体の車幅中心線上に設けられ、ガイドセンサに対する仮想原点の距離は走行路が直線状の場合よりカーブ状の場合の方が短く設定される。ここで、仮想原点とガイドセンサとの距離が長い程、ガイドセンサにより検出されたズレ量に対する旋回中心を算出するための角度は小さくなり、旋回中心から各回転軸までの旋回半径は大きくなる。よって、仮想原点とガイドセンサとの距離が長い程、前記ズレ量が同じであっても操舵角は小さくなるので、直線状の走行路を安定走行させることができる。一方、仮想原点とガイドセンサとの距離が短い程、前記ズレ量に対する旋回中心を算出するための角度は大きくなり、旋回中心から各回転軸までの旋回半径は小さくなる。よって、仮想原点とガイドセンサとの距離が短い程、前記ズレ量が同じであっても操舵角は大きくなるので、カーブ状の走行路での追従性が向上する。従って、カーブ状の走行路においても安定走行を実現できる。
【００１１】
ところで、旋回中心の算出を、ガイドの位置のズレ量の今回検出値だけに基づいて行う場合、ノイズなどの影響によりガイドの検出位置にばらつきが生じると、算出される旋回中心がその都度大きくばらついてしまう。すると、当然に操舵角もばらつくので、搬送車は小刻みな振動を繰り返す。即ち、安定走行ができない。かかる振動は、仮想原点とガイドセンサとの距離が短いほど顕著に現れる。仮想原点とガイドセンサとの距離が短いほど、旋回中心は車体に近づき、旋回半径は小さくなるからである。
【００１２】
これに対し、本発明の搬送車および搬送車の操舵制御プログラムによれば、ガイドセンサが検出したガイドの位置のズレ量の今回検出値と前回検出値との差分値を、前回検出時までの積算値に更に積算した積算値に基づいて旋回中心を算出する。よって、ガイドの検出位置にばらつきが生じても、算出される旋回中心のばらつきを極力抑えることができる。即ち、操舵角を安定させて搬送車をガイドに沿って安定走行させることができる。特に、かかる構成は仮想原点とガイドセンサとの距離が短い場合に有効である。
【図面の簡単な説明】
【００１３】
【図１】（ａ）は、本発明の一実施形態の無人搬送車の側面図であり、（ｂ）は、図１（ａ）の矢印Ｉｂの方向から見た無人搬送車の上面図である。
【図２】無人搬送車の電気的構成を示すブロック図である。
【図３】メイン処理を示すフローチャートである。
【図４】（ａ）は、カーブ処理を示すフローチャートであり、（ｂ）は、差分値の積算を説明するための図である。
【図５】ズレ量の今回検出値と積算値とを比較するためのグラフである。
【発明を実施するための形態】
【００１４】
以下、本発明の好ましい実施形態について、添付図面を参照して説明する。まず、図１を参照して、本実施形態における無人搬送車１の構成を説明する。図１（ａ）は本発明の一実施形態における無人搬送車１の側面図であり、図１（ｂ）は、図１（ａ）の矢印Ｉｂの方向から見た無人搬送車１の上面図である。図１における矢印Ｆの方向は、無人搬送車１の走行方向である。無人搬送車１は、搬送物（図示せず）を載置し、走行路上に設置された磁気テープ製の磁気ガイドＧに従って走行する搬送車であり、上面視長方形状の車体２と、走行装置３と、ガイドセンサ４とを備える。なお、無人搬送車１のその他の構成は、既知のため説明は省略する。
【００１５】
走行装置３は、無人搬送車１を走行させる装置であり、車体２の下方であって、無人搬送車１の上面視における４隅にそれぞれ配設される。各走行装置３には、車軸３ａと、その車軸３ａの両端に配設される一対の車輪３ｂと、その車軸３ａと車体２とを、車体２の上面視回りに操舵自在に接続する回転軸３ｃとが配設される。走行装置３には更に、車輪３ｂを回転駆動させる回転駆動装置３ｄ（図２参照）と、回転軸３ｃを操舵する操舵駆動装置３ｅ（図２参照）とが設けられる。走行装置３毎に、無人搬送車１が磁気ガイドＧに沿って走行するための操舵角θｖが算出され、操舵駆動装置３ｅは車輪３ｂがその操舵角θｖを向くように、回転軸３ｃを操舵する。
【００１６】
ガイドセンサ４は、磁気ガイドＧから発する磁力を検知することで、磁気ガイドＧの位置を検知する幅広のセンサであり、車体２の下部であって、無人搬送車１の上面視における長さ方向側および幅方向側の両端部中央に、それぞれ配設される。本実施形態の無人搬送車１は、車体２の長さ方向側または幅方向側のいずれかが走行方向とされ、その走行方向における前後２か所のガイドセンサ４によって、磁気ガイドＧが検知される。以下、無人搬送車１の走行方向側のことを「前側」、走行方向と対向する側のことを「後側」とそれぞれ称す。
【００１７】
各走行装置３の操舵角θｖは、前後のガイドセンサ４で検知された、ガイドセンサ４の中心位置と磁気ガイドＧとの車幅方向側の偏差であるズレ量ｄｆ，ｄｒに基づいて算出される。具体的には、図１（ｂ）に示す通り、まず、前後のガイドセンサ４の車幅方向における中心線Ｌｃ上であって、前側のガイドセンサ４の上面視における中央位置から、後方に距離Ｌｉｐ移動した位置に仮想原点Ｃｆを設定し、後側のガイドセンサ４の上面視における中央位置から、後方に距離Ｌｉｐ移動した位置に仮想原点Ｃｒを設定する。
【００１８】
そして、前側のガイドセンサ４における磁気ガイドＧの検知位置Ｇｆ、即ち中心線Ｌｃとのズレ量ｄｆに応じた位置と仮想原点Ｃｆとを結ぶ線分に直交し、なおかつ車体２の後方側に向かう直線を引き、後側のガイドセンサ４における磁気ガイドＧの検知位置Ｇｒ、即ち中心線Ｌｃとのズレ量ｄｒに応じた位置と仮想原点Ｃｒとを結ぶ線分に直交し、なおかつ車体２の前方側に向かう直線を引く。これら直線の交点が旋回中心Ｃとされる。
【００１９】
その旋回中心Ｃを中心とし、走行装置３の回転軸３ｃの中心を通る、円弧状の旋回経路Ｒを生成する。その旋回経路Ｒの、回転軸３ｃの中心における接線方向のうち、無人搬送車１の走行方向側の方向Ｖのなす角θｖが、操舵角θｖとされる。なお、図１（ｂ）においては、無人搬送車１の上面視右上における走行装置３の操舵角θｖのみを図示しているが、他の走行装置３の操舵角θｖの算出方法も同様なので、図示は省略する。
【００２０】
ところで、ガイドセンサ４は、走行装置３とは離れた位置に配設されるので、ズレ量ｄｆ，ｄｒ及び仮想原点Ｃｆ，Ｃｒから操舵角θｖを算出し、操舵駆動装置３ｅで回転軸３ｃを操舵しても、実際にズレ量ｄｆ，ｄｒが縮小するのは無人搬送車１がしばらく走行してからとなる。かかるタイムラグによって、追従遅れが生じる虞がある。特に、カーブ状の走行路を走行する場合は、かかる追従遅れが顕著に発生し、更に走行路の曲率等によっては、幅が有限であるガイドセンサ４から磁気ガイドＧが外れることで走行路を追従できなくなり、結果として走行路から外れてしまう虞がある。
【００２１】
ここで、仮想原点Ｃｆと旋回中心Ｃとを結ぶ線分と、仮想原点Ｃｒと旋回中心Ｃとを結ぶ線分とのなす角は、中心線Ｌｃと線分ＧｆＣｆとのなす角θｆと、中心線Ｌｃと線分ＧｒＣｒとのなす角θｒとの和に等しい。従って、旋回中心Ｃの位置は、なす角θｆ，θｒの大きさに応じた位置、即ちズレ量ｄｆ，ｄｒの大きさと仮想原点Ｃｆ，Ｃｒの位置とに応じた位置とされる。
【００２２】
よって、ズレ量ｄｆ，ｄｒの大きさが同じであっても仮想原点Ｃｆ，Ｃｒがガイドセンサ４に近い（即ち距離Ｌｉｐが小さい）程、なす角θｆ，θｒが大きくなり、旋回中心Ｃが無人搬送車１に近づく。この場合、旋回中心Ｃと回転軸３ｃの中心との距離、即ち旋回経路Ｒの旋回半径が小さくなり、これによって、操舵角θｖが大きくなる。従って、仮想原点Ｃｆ，Ｃｒがガイドセンサ４に近い程、無人搬送車１は急旋回できる。
【００２３】
一方で、直線状の走行路において、仮想原点Ｃｆ，Ｃｒをガイドセンサ４に近づけると、ズレ量ｄｆ，ｄｒの少しの変化でも、なす角θｆ，θｒ及び操舵角θｖが大きく変化してしまう。即ち操舵に時間がかかるようになるため追従性が下がり、直線状の走行路を蛇行してしまう虞がある。
【００２４】
そこで、本実施形態では、無人搬送車１がカーブ状の走行路を走行している場合に、距離Ｌｉｐを直線状の走行路を走行する場合よりも小さくして、仮想原点Ｃｆ，Ｃｒをガイドセンサ４に近づけることで、操舵の追従性を向上させる。
【００２５】
次に、図２を参照して、無人搬送車１の電気的構成について説明する。図２は無人搬送車１の電気的構成を示すブロック図である。無人搬送車１は、ＣＰＵ１０と、フラッシュＲＯＭ１１と、ＲＡＭ１２とを備え、これらはバスライン１３を介して、入出力ポート１４にそれぞれ接続されている。入出力ポート１４には、上述したガイドセンサ４と、回転駆動装置３ｄと、操舵駆動装置３ｅとがそれぞれ接続されている。なお、ガイドセンサ４、回転駆動装置３ｄ及び操舵駆動装置３ｅは、無人搬送車１に対してそれぞれ４つずつ配設されるが、図２においては、それぞれまとめて１つのガイドセンサ４、回転駆動装置３ｄ及び操舵駆動装置３ｅとして表している。
【００２６】
ＣＰＵ１０は、バスライン１３及び入出力ポート１４に接続された各部を制御する演算装置である。フラッシュＲＯＭ１１は、書き換え可能な不揮発性のメモリであり、制御プログラム１１ａと、地図データ１１ｂとが記憶される。制御プログラム１１ａは、ＣＰＵ１０に図３のメイン処理や図４のカーブ処理を実行させるプログラムである。地図データ１１ｂは、無人搬送車１の走行路に関する情報が記憶されるデータ領域であり、走行路の地図情報と共に、地点毎の走行路の形状（直線状またはカーブ状）が記憶される。
【００２７】
ＲＡＭ１２は、ＣＰＵ１０が制御プログラム１１ａ等の実行時に各種のワークデータやフラグ等を書き換え可能に記憶するためのメモリであり、旋回中心Ｃが記憶される旋回中心メモリ１２ａと、距離Ｌｉｐが記憶される仮想原点距離メモリ１２ｂと、ガイドセンサ４が検知したズレ量ｄｆ，ｄｒ（以下「ズレ量の今回検出値」とも称す）が記憶されるズレ量今回値メモリ１２ｃと、ズレ量ｄｆ，ｄｒの前回値（以下「ズレ量の前回検出値」とも称す）が記憶されるズレ量前回値メモリ１２ｄと、ズレ量今回値メモリ１２ｃのズレ量の今回検出値とズレ量前回値メモリ１２ｄのズレ量の前回検出値との差分値が記憶されるズレ量差分値メモリ１２ｅと、ズレ量差分値メモリ１２ｅの差分値を積算した積算値が記憶される差分積算値メモリ１２ｆと、出力値メモリ１２ｇとが設けられる。
【００２８】
出力値メモリ１２ｇは、旋回中心Ｃ及び操舵角θｖの算出に用いられるズレ量ｄｆ，ｄｒに相当する値が、それぞれ区別可能に記憶されるメモリである。詳細は後述するが、直線状の走行路を走行している場合は、ガイドセンサ４が検知したズレ量の今回検出値に応じた値が出力値メモリ１２ｇに記憶され、カーブ状の走行路を走行している場合は、上述した積算値に応じた値が記憶される。
【００２９】
なお、ズレ量今回値メモリ１２ｃ、ズレ量前回値メモリ１２ｄ、ズレ量差分値メモリ１２ｅ、差分積算値メモリ１２ｆ及び出力値メモリ１２ｇには、前側のガイドセンサ４に応じた値と、後側のガイドセンサ４に応じた値とがそれぞれ区別可能に記憶される。
【００３０】
次に、図３，図４を参照して、無人搬送車１のＣＰＵ１０で実行される、メイン処理について説明する。図３は、メイン処理のフローチャートを示す図である。メイン処理は、無人搬送車１の電源投入直後から繰り返し実行される。
【００３１】
メイン処理はまず、前後のガイドセンサ４から検知された検知位置Ｇｆ，Ｇｒから、ズレ量ｄｆ，ｄｒをそれぞれ取得し、ズレ量今回値メモリ１２ｃへ保存する（Ｓ１）。なお、以下の図３のメイン処理および図４のカーブ処理において、ガイドセンサ４から取得されたズレ量に関する処理は、いずれも前後のガイドセンサ４のそれぞれに対して行われるが、処理内容は前後のガイドセンサ４で同様なので、特に区別しない場合は前後のガイドセンサ４に対して行うものとする。
【００３２】
Ｓ１の処理の後、無人搬送車１に搭載される公知の位置検知装置（図示せず）によって検知された現時点の走行地点を地図データ１１ｂで参照し、該当する走行路の形状を取得する（Ｓ２）。Ｓ２の処理の後、取得した走行路の形状がカーブ状であるかを確認する（Ｓ３）。Ｓ３の処理において、取得した走行路の形状がカーブ状である場合は（Ｓ３：Ｙｅｓ）、仮想原点距離メモリ１２ｂ（即ち図１の距離Ｌｉｐ）に「５００ｍｍ」を設定し（Ｓ４）、図４で示す後述のカーブ処理を行う（Ｓ５）。
【００３３】
一方で、取得した走行路の形状がカーブ状ではない場合、即ち走行路の形状が直線状である場合（Ｓ３：Ｎｏ）は、まず、差分積算値メモリ１２ｆに０を設定する（Ｓ６）。詳細は後述するが、カーブ状の走行路を走行している場合は、差分積算値メモリ１２ｆの積算値に応じて操舵角θｖが算出される。この積算値は、カーブ状の走行路を走行している場合にのみ積算されるので、直線状の走行路を走行している場合は、前回のカーブ状の走行路を走行していた時点での積算値のままである。そこで走行路が直線状である場合に、差分積算値メモリ１２ｆの積算値を０で初期化することで、前回のカーブ状の走行路での積算値が、次のカーブ状の走行路での操舵角θｖに影響しないようにする。
【００３４】
Ｓ６の処理の後、仮想原点距離メモリ１２ｂ（即ち図１の距離Ｌｉｐ）に「１０００ｍｍ」を設定し（Ｓ７）、ズレ量今回値メモリ１２ｃの値に、所定のゲイン値Ｇｐを乗じた値を出力値メモリ１２ｇに保存する（Ｓ８）。本実施形態においてゲイン値Ｇｐは「３．０」が例示されるが、３．０以上でも、３．０以下でも良い。
【００３５】
即ち直線状の走行路を走行する場合の仮想原点Ｃｒ，Ｃｆは、カーブ状の走行路を走行する場合よりもガイドセンサ４から遠ざかる。これによって、ズレ量ｄｆ，ｄｒが同じであっても、後述のＳ１０の処理で算出される旋回半径は大きくなり、更にＳ１１の処理で算出される操舵角θｖは小さくなる。よって、操舵角θｖの変化量を小さくできるので、操舵が安定し、直線状の走行路を安定して走行させることができる。
【００３６】
一方で、カーブ状の走行路を走行する場合の仮想原点Ｃｒ，Ｃｆの位置は、直線状の走行路を走行する場合よりもガイドセンサ４に近くなる。これにより、ズレ量ｄｆ，ｄｒが同じであっても、操舵角θｖを大きくできる。かかる大きな操舵角θｖによって、ズレ量ｄｆ，ｄｒの縮小を早めることができるので、カーブ状の走行路での追従性を向上できる。これによって、カーブ状の走行路でも安定して走行させることができる。
【００３７】
ところで、磁気ガイドＧの局所的な歪みや磁気不良等に起因するノイズによって、ズレ量の今回検出値が突発的にばらつく場合がある。カーブ状の走行路を走行する場合は、仮想原点Ｃｒ，Ｃｆの位置がガイドセンサ４に近いので、ズレ量の今回検出値のばらつきによって、操舵角θｖが大きく振動し、無人搬送車１の挙動が不安定となってしまう。
【００３８】
そこで、Ｓ５のカーブ処理によって、カーブ状の走行路を走行する場合は、ズレ量の今回検出値とズレ量の前回検出値との差分値を積算した積算値を、旋回中心Ｃ及び操舵角θｖの算出に用いるズレ量ｄｆ、ｄｒとすることで、ズレ量ｄｆ、ｄｒのばらつきを極力抑え、カーブ状の走行路を更に安定して走行させる。図４を参照して、かかるカーブ処理を説明する。
【００３９】
図４（ａ）は、カーブ処理のフローチャートを示す図であり、図４（ｂ）は、差分値の積算を説明するための図である。カーブ処理はまず、ズレ量今回値メモリ１２ｃの値と、ズレ量前回値メモリ１２ｄの値との差分値を算出し、ズレ量差分値メモリ１２ｅに保存する（Ｓ２０）。Ｓ２０の処理の後、後述のＳ２１〜Ｓ２４の処理による、差分積算値メモリ１２ｆへの差分値の積算を行い、その差分積算値メモリ１２ｆの積算値に、所定のゲイン値Ｇｐを乗じた値を出力値メモリ１２ｇに保存する（Ｓ２５）。なお、Ｓ２５の処理におけるゲイン値Ｇｐは、図３のＳ８の処理におけるゲイン値Ｇｐと同一であっても良いし、異なった値でも良い。
【００４０】
次にＳ２１〜Ｓ２４の処理を、図４（ｂ），図５を参照しながら説明する。図４（ｂ）においては、ガイドセンサ４における車幅方向側の位置関係として、中心線Ｌｃの位置が０とされ、ガイドセンサ４の上面視における右側が正、左側が負とされる。図４（ｂ）では、４つのズレ量の今回値とズレ量の前回値との推移の例（パターン１〜４）を示しており、ズレ量の前回値を一重の丸で表し、ズレ量の今回値を二重の丸で表している。Ｓ２１〜Ｓ２４の処理においては、差分積算値メモリ１２ｆにＳ２０の処理で算出した差分値を積算するが、その積算する条件は、ズレ量今回値メモリ１２ｃのズレ量の今回検出値の正負と、ズレ量の今回検出値とズレ量の前回検出値との差分値の正負とに基づく。
【００４１】
具体的には、ズレ量今回値メモリ１２ｃのズレ量の今回検出値が正で、ズレ量差分値メモリ１２ｅの差分値も正の場合（Ｓ２１：Ｙｅｓ、且つＳ２２：Ｙｅｓ）、即ち図４（ｂ）におけるパターン１の場合は、ズレ量が拡大していると判断され、かかる場合は、Ｓ２３の処理によって、差分値を差分積算値メモリ１２ｆに積算する。
【００４２】
また、ズレ量の今回検出値が負であり、差分値が負の場合（Ｓ２１：Ｎｏ、且つＳ２４：Ｙｅｓ）、即ち図４（ｂ）におけるパターン３の場合は、パターン１と同様にズレ量が拡大していると判断されるので、Ｓ２３の処理によって、差分値を差分積算値メモリ１２ｆに積算する。
【００４３】
一方で、ズレ量の今回検出値が正で、差分値が負の場合（Ｓ２１：Ｙｅｓ、且つＳ２２：Ｎｏ）、即ち図４（ｂ）におけるパターン２の場合は、ズレ量の今回検出値は正側に位置するものの、そのズレ量は縮小していると判断されるので、かかる場合は、Ｓ２３の処理をスキップし、差分積算値メモリ１２ｆの値をキープする。同様に、ズレ量の今回検出値が負で、差分値が正の場合（Ｓ２１：Ｎｏ、且つＳ２４：Ｎｏ）、即ち図４（ｂ）におけるパターン４の場合も、ズレ量が中心線Ｌｃに近づく方向に縮小していると判断されるので、Ｓ２３の処理をスキップし、差分積算値メモリ１２ｆの値をキープする。ここで、図５を参照して、ズレ量の今回検出値と差分積算値メモリ１２ｆの積算値とを比較する。
【００４４】
図５は、ズレ量の今回検出値と積算値とを比較するためのグラフである。図５において、積算値を実線で、ズレ量の今回値を破線でそれぞれ表しており、横軸は時間軸を、縦軸はズレ量の今回検出値および積算値の大きさをそれぞれ表している。
【００４５】
まず、時刻０から時刻ｔ１にかけて、ズレ量の今回検出値が増加している。かかる場合は、ズレ量の今回検出値が正であり、差分値も正側に推移しているので、図４（ｂ）のパターン１に該当し、積算値が積算される。
【００４６】
その後、時刻ｔ１においてズレ量の今回検出値が突発的に減少される。かかる場合、ズレ量の今回検出値が正である一方で、差分値が負側に推移するので、図４（ｂ）のパターン２に該当し、積算値がキープされる。
【００４７】
時刻ｔ１〜時刻ｔ２にかけては、再びズレ量の今回検出値が増加することでパターン１に該当するので、積算値が積算され、時刻ｔ２〜時刻ｔ３にかけては、ズレ量の今回検出値が正であるのに対して、差分値が減少することで、パターン２に該当するので、積算値がキープされる。
【００４８】
時刻ｔ３において、ズレ量の今回検出値が突発的に増加する。かかる場合、ズレ量の今回検出値が正であると共に、差分値が正側に推移するので、図４（ｂ）のパターン１に該当し、積算値が積算される。
【００４９】
時刻ｔ４〜ｔ５にかけては、ズレ量の今回検出値が減少することで、図４（ｂ）のパターン３に該当するので、積算値が積算され、時刻ｔ５〜ｔ６にかけては、ズレ量の今回検出値が負であるのに対して、差分値が増加するので、図４（ｂ）のパターン４に該当し、積算値がキープされる。
【００５０】
即ちズレ量が正側または負側に拡大している場合は、差分積算値メモリ１２ｆに差分値が積算されるので、差分積算値メモリ１２ｆの値から算出される出力値メモリ１２ｇの値も積算され、出力値メモリ１２ｇの値によって算出される操舵角θｖも積算される。これによって、無人搬送車１はズレ量を減少させる方向に操舵されるので、カーブ状の走行路を追従させることができる。
【００５１】
一方でズレ量が縮小している状態では、差分積算値メモリ１２ｆの値がキープされる。従って、ズレ量の今回検出値がノイズによって左右に振動し、ズレ量の拡大および縮小が繰り返されても、ズレ量を縮小する方向への差分積算値メモリ１２ｆの差分値の積算が抑制される。これにより、差分積算値メモリ１２ｆの積算値の振動が抑えられることで、操舵角θｖの振動が極力抑えられ、無人搬送車１を安定して走行させることができる。
【００５２】
図４（ａ）に戻る。Ｓ２５の処理の後、図３のメイン処理へ戻る。
【００５３】
図３に戻る。Ｓ５，Ｓ８の処理の後、ズレ量前回値メモリ１２ｄに、ズレ量今回値メモリ１２ｃの値を保存する（Ｓ９）。Ｓ９の処理の後、仮想原点距離メモリ１２ｂの距離Ｌｉｐに応じた仮想原点Ｃｆ，Ｃｒと、出力値メモリ１２ｇの値をズレ量ｄｆ，ｄｒに換算した値とを用いて、図１で説明した方法により旋回中心Ｃを算出し、旋回中心メモリ１２ａに保存する（Ｓ１０）。
【００５４】
Ｓ１０の処理の後、旋回中心メモリ１２ａの旋回中心Ｃと、各走行装置３の回転軸３ｃの中心とから操舵角θｖを算出し、その操舵角θｖに基づいて各操舵駆動装置３ｅを操舵させながら、回転駆動装置３ｄを動作させて無人搬送車１を走行させる（Ｓ１１）。Ｓ１１の処理の後、Ｓ１の処理を繰り返す。
【００５５】
以上、実施形態に基づき本発明を説明したが、本発明は上述した実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変更が可能であることは容易に推察できるものである。
【００５６】
上記実施形態では、搬送車の例として、無人搬送車１を用いて説明したが、必ずしもこれに限られるものではなく、例えば本発明をユニットキャリアなどに適用しても良い。
【００５７】
上記実施形態では、制御プログラム１１ａをフラッシュＲＯＭ１１に記憶した。しかし、必ずしもこれに限られるものではなく、制御プログラム１１ａをＲＡＭカード等のフラッシュＲＯＭ１１以外の半導体メモリや、ＤＶＤ等の光ディスクや、ハードディスク・ドライブ等の磁気媒体に記憶して実行しても良いし、ネットワーク（インターネットやイントラネット等）上のサーバに制御プログラム１１ａを記憶し、該サーバから制御プログラム１１ａをダウンロードして実行しても良い。
【００５８】
上記実施形態では、ガイドとして磁気テープ製の磁気ガイドＧを走行路上に設置した。しかし、必ずしもこれに限られるものではなく、例えば、走行路の上方の天井に、走行路に沿って吊設されたブラケットをガイドとしても良いし、無人搬送車１が潜り込むパレットの天井に走行路に沿って吊設されたブラケットをガイドとしても良い。かかる場合、ガイドセンサ４の代わりに、光学式センサ（例えば、カメラや赤外線式センサ、レーザー式センサ等）を車体２の上部に設け、光学式センサによってブラケットの位置を検知すれば良い。
【００５９】
また、走行路上に設置されるガイドは、磁気テープ製の磁気ガイドＧに限られるものではなく、ガイドを走行路上に塗られた白線としても良い。かかる場合、ガイドセンサ４の代わりに車体２の下部に設けた、上述の光学式センサによって該白線の位置を検知すれば良い。
【００６０】
上記実施形態では、図３のＳ５，Ｓ６の処理によって、直線状の走行路を走行している場合に、差分積算値メモリ１２ｆを０で初期化した。しかし、積算値の初期値は０に限られるものではなく、０以上でも、０以下でも良い。特に、差分積算値メモリ１２ｆの初期値として、ズレ量前回値メモリ１２ｄのズレ量の前回検出値を設定しても良い。これにより、ズレ量の前回検出値、即ちカーブ状の走行路に切り替わる直前のズレ量に対して、差分値が積算されるので、ズレ量が大きい状態で走行路がカーブ状に切り替わっても、無人搬送車１をスムーズに操舵させることができる。
【００６１】
また、差分積算値メモリ１２ｆを初期化するタイミングは、直線状の走行路を走行している場合に限られるものではなく、走行路が直線状からカーブ状に切り替わった直後に行っても良いし、直線状またはカーブ状にかかわらず、走行路の形状が切り替わった直後に行っても良い。
【００６２】
上記実施形態では、図３のＳ３，Ｓ４，Ｓ７の処理によって、カーブ状の走行路において距離Ｌｉｐを５００ｍｍに設定し、直線状の走行路では距離１０００ｍｍに設定した。しかし、必ずしもこれに限られるものではなく、カーブ状の走行路における距離Ｌｉｐを５００ｍｍ以上に設定しても良いし、５００ｍｍ以下に設定しても良い。また、直線状の走行路における距離Ｌｉｐを１０００ｍｍ以上に設定しても良いし、１０００ｍｍ以下に設定しても良い。更に、カーブ状の走行路での距離Ｌｉｐと、直線状の走行路での距離Ｌｉｐとを、同じ長さとしても良いし、カーブ状の走行路での距離Ｌｉｐを直線状の走行路での距離Ｌｉｐよりも長くしても良い。
【００６３】
上記実施形態では、直線状の走行路では、Ｓ８の処理によってズレ量の今回検出値に基づいて旋回中心Ｃ及び操舵角θｖを算出し、カーブ状の走行路では、Ｓ５の処理によって積算値に基づいて旋回中心Ｃ及び操舵角θｖを算出した。しかし、必ずしもこれに限られるものではなく、直線状の走行路でも、Ｓ８の処理の代わりにＳ５のカーブ処理を実行して、積算値に基づいて旋回中心Ｃ及び操舵角θｖを算出しても良いし、カーブ状の走行路でも、Ｓ５のカーブ処理の代わりにＳ８の処理を行い、ズレ量の今回検出値に基づいて旋回中心Ｃ及び操舵角θｖを算出しても良い。
【００６４】
上記実施形態では、図４のカーブ処理において、ズレ量が拡大している場合に、差分積算値メモリ１２ｆに差分値を積算し、ズレ量が縮小している場合に、差分積算値メモリ１２ｆの値をキープした。しかし、必ずしもこれに限られるものではなく、Ｓ２１，Ｓ２２，Ｓ２４の処理を省略して、ズレ量が縮小している場合でも差分積算値メモリ１２ｆの値に差分値を積算しても良い。
【符号の説明】
【００６５】
１          無人搬送車（搬送車）
２          車体
３ｃ        回転軸
３ｅ        操舵駆動装置（操舵手段）
３ｂ        車輪
３ａ        車軸
３ｄ        回転駆動装置（駆動手段）
１０        ＣＰＵ（コンピュータ）
１１ａ      制御プログラム（操舵制御プログラム）
１２ｅ      ズレ量差分値メモリ（差分値）
１２ｆ      差分積算値メモリ（積算値）
Ｃ          旋回中心
Ｃｆ，Ｃｒ  仮想原点
Ｇ          磁気ガイド（ガイド）
Ｓ１１      操舵制御手段、操舵制御ステップ、操舵角算出ステップ
Ｓ１０      旋回中心算出ステップ
【図１】
2020140424.tif 000003
【図２】
2020140424.tif 000004
【図３】
2020140424.tif 000005
【図４】
2020140424.tif 000006
【図５】
2020140424.tif 000007