IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本車輌製造株式会社の特許一覧

<>
  • 特許-無人搬送車 図1
  • 特許-無人搬送車 図2
  • 特許-無人搬送車 図3
  • 特許-無人搬送車 図4
  • 特許-無人搬送車 図5
  • 特許-無人搬送車 図6
  • 特許-無人搬送車 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-26
(45)【発行日】2024-10-04
(54)【発明の名称】無人搬送車
(51)【国際特許分類】
   G05D 1/43 20240101AFI20240927BHJP
【FI】
G05D1/43
【請求項の数】 5
(21)【出願番号】P 2020131823
(22)【出願日】2020-08-03
(65)【公開番号】P2022028432
(43)【公開日】2022-02-16
【審査請求日】2023-06-26
(73)【特許権者】
【識別番号】000004617
【氏名又は名称】日本車輌製造株式会社
(74)【代理人】
【識別番号】110000534
【氏名又は名称】弁理士法人真明センチュリー
(72)【発明者】
【氏名】北田 慎治
【審査官】影山 直洋
(56)【参考文献】
【文献】特開2005-258754(JP,A)
【文献】特開2012-046079(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/43
(57)【特許請求の範囲】
【請求項1】
両側部にそれぞれ複数設けられた脚と当該脚によって支持される台部とを有するパレットの前記台部の下方へ進入し、その台部の下方において荷台を上昇させることにより前記パレットを積載し、搬送する無人搬送車であって、
周囲の物体との距離および方向を測定するセンサであって、前記パレットへの進入方向側に設けられた進入センサと、
周囲の物体との距離および方向を測定するセンサであって、前記進入方向における側方側に設けられた側方センサと、
前記無人搬送車が前記パレットへ進入し又は前記パレットから離脱する場合、前記側方センサが前記パレットの外部に位置する際には前記進入センサによる測定データによって前記パレットの脚を検出し、前記側方センサが前記パレットの内部に位置する際には前記側方センサによる測定データによって前記パレットの脚を検出する脚検出手段と、
その脚検出手段で検出されたパレットの脚から、前記パレットの両脚間の中心線を算出する中心線算出手段と、
その中心線算出手段で算出されたパレットの両脚間の中心線と、前記無人搬送車の中心線とのズレ量を小さくするような前記無人搬送車の操舵角を算出する操舵角算出手段とを備えていることを特徴とする無人搬送車。
【請求項2】
前記中心線算出手段は、前記脚検出手段で検出されたパレットの脚における最も内側の位置に基づいて、前記パレットの両脚間の中心線を算出することを特徴とする請求項記載の無人搬送車。
【請求項3】
前記脚検出手段は、前記パレットの両側に設けられた複数のパレットの脚における左右のペアを検出するものであり、
前記脚検出手段で検出されたパレットの脚の左右のペア毎に、それらの中間点を算出する中間点算出手段を備え、
前記中心線算出手段は、その中間点算出手段で算出されたパレットの脚の左右のペアの中間点に基づいて前記パレットの両脚間の中心線を算出することを特徴とする請求項又はに記載の無人搬送車。
【請求項4】
前記中心線算出手段は、
前記中間点算出手段で算出されたパレットの脚の左右のペアの中間点であって、前記無人搬送車寄りの中間点と、それ以外の中間点とを結ぶ複数の直線を算出する個別中心線算出手段と、
その個別中心線算出手段で算出された直線を平均することで、前記パレットの両脚間の中心線を算出する中心線平均手段とを備えていることを特徴とする請求項記載の無人搬送車。
【請求項5】
前記側方センサの正面を通過する前記パレットの脚の数を計測するパレット通過数計測手段と、
そのパレット通過数計測手段で計測されたパレットの脚の数から、前記パレット内における前記無人搬送車の位置を検出する位置検出手段とを備えていることを特徴とする請求項1からのいずれかに記載の無人搬送車。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、無人搬送車に関するものである。
【背景技術】
【0002】
特許文献1には、重量物が載置される架台21の下部両側に平板状の脚部22a,22bが一体に形成されたパレット20に進入し、荷台にパレット20を積載して搬送する無人搬送車10が開示されている。無人搬送車10の荷台の前後には、パレット20の架台21の裏面に貼着されたパレットガイド26を検出するパレットガイドセンサ12が設けられ、無人搬送車10の荷台の両側端には、パレット20の脚部22a,22bとの距離を検出するパレット側面ガイドセンサ15が設けられる。
【0003】
無人搬送車10がパレット20に進入する場合に、パレットガイドセンサ12でパレットガイド26を検出し、パレット側面ガイドセンサ15で脚部22a,22bとの距離を検出することで、無人搬送車10とパレット20との位置関係を把握し、無人搬送車10の中心線とパレット20の中心線とが一致するように無人搬送車10を操舵する。これにより、作業員が無人搬送車10を操舵することなく、無人搬送車10をパレット20へ正確に進入させることができる。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2001-209432号公報(例えば、段落0010-0025,図1,2)
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし特許文献1では、パレット20の全てにパレットガイド26を設け、無人搬送車10にパレットガイドセンサ12を設ける必要がある。従って、これらを設置するための手間およびコストが増大してしまう。また、パレット20を軽量にするため、パレット20の脚部22a,22bを平板状ではなく、トラス状や格子状等にして複数設けることが考えられる。このような場合、パレット側面ガイドセンサ15は、無人搬送車10のパレット20への進入と共に、距離の検出および非検出が繰り返され、脚部22a,22bとの距離を継続して検出することができないという問題点があった。
【0006】
本発明は、上述した問題点を解決するためになされたものであり、パレットの脚が複数形成された場合でも、低コストかつ正確にパレットに進入できる無人搬送車を提供することを目的としている。
【課題を解決するための手段】
【0007】
この目的を達成するために本発明の無人搬送車は、両側部にそれぞれ複数設けられた脚と当該脚によって支持される台部とを有するパレットの前記台部の下方へ進入し、その台部の下方において荷台を上昇させることにより前記パレットを積載し、搬送するものであって、周囲の物体との距離および方向を測定するセンサであって、前記パレットへの進入方向側に設けられた進入センサと、周囲の物体との距離および方向を測定するセンサであって、前記進入方向における側方側に設けられた側方センサと、前記無人搬送車が前記パレットへ進入し又は前記パレットから離脱する場合、前記側方センサが前記パレットの外部に位置する際には前記進入センサによる測定データによって前記パレットの脚を検出し、前記側方センサが前記パレットの内部に位置する際には前記側方センサによる測定データによって前記パレットの脚を検出する脚検出手段と、その脚検出手段で検出されたパレットの脚から、前記パレットの両脚間の中心線を算出する中心線算出手段と、その中心線算出手段で算出されたパレットの両脚間の中心線と、前記無人搬送車の中心線とのズレ量を小さくするような前記無人搬送車の操舵角を算出する操舵角算出手段とを備えている。
【発明の効果】
【0008】
請求項1記載の無人搬送車によれば、無人搬送車がパレットの下方へ進入し又はパレットから離脱する場合、進入センサ又は側方センサで測定された測定データからパレットの脚が検出され、検出されたパレットの脚に基づいて無人搬送車の操舵角を算出される。これにより、無人搬送車をパレットに進入させ、又はパレットから離脱させる際の位置制御のためにパレットにガイド等を設け、無人搬送車にそのガイド等を読み取るセンサを設ける必要がないので、無人搬送車およびパレットのコストを低減できるという効果がある。
【0009】
ここで進入センサ及び側方センサは、周囲の物体との距離および方向を測定するので、パレットの脚が複数設けられ、パレットの脚と脚との間に間隔がある場合でも、進入センサ及び側方センサの検出範囲におけるパレットの脚の位置を継続して検出できる。これにより、無人搬送車を正確にパレットへ進入させ、またはパレットから離脱させることができるという効果がある。
【0010】
また、側方センサがパレットの外部に位置する場合は進入センサによる測定データによってパレットの脚が検出され、側方センサがパレットの内部に位置する場合は側方センサによる測定データによってパレットの脚が検出される。側方センサがパレットの外部に位置する場合は、進入センサはパレットの脚と対向するので、パレットに設けられる脚を多数検出できる。このように進入センサによって多数検出されたパレットの脚に基づくことで、パレットの両脚間の位置をより正確に算出できるという効果がある。
【0011】
その一方で、側方センサがパレットの内部に位置する場合は、パレットの脚が側方センサと対向するので、かかる場合は側方センサによってパレットの脚が多数検出される。このように側方センサによって多数検出されたパレットの脚に基づくことで、無人搬送車がパレット内に位置する場合であっても、パレットの両脚間の位置をより正確に算出できるという効果がある。
【0012】
更に検出されたパレットの脚から算出されたパレットの両脚間の中心線と、無人搬送車の中心線とのズレ量を小さくするような無人搬送車の操舵角が算出される。これにより、無人搬送車をパレットの中心に沿って走行させることができるので、無人搬送車1とパレット、特にパレットの脚との接触を抑制できるという効果がある。
【0013】
請求項記載の無人搬送車によれば、請求項記載の無人搬送車の奏する効果に加え、次の効果を奏する。パレットの脚における最も内側の位置に基づいて、パレットの両脚間の中心線が算出される。即ち中心線がパレットの両脚間における最も狭い位置に基づいて算出されるので、無人搬送車とパレットの脚との接触を抑制できるという効果がある。
【0014】
請求項記載の無人搬送車によれば、請求項又はに記載の無人搬送車の奏する効果に加え、次の効果を奏する。パレットの脚の左右のペア毎にそれらの中間点が算出され、算出された中間点に基づいてパレットの両脚間の中心線が算出される。かかる中心線に基づいて無人搬送車の操舵角を算出することで、無人搬送車は、パレットの脚の左右のペアの中間点に沿って走行できるので、無人搬送車とパレットの脚との接触を好適に抑制できるという効果がある。
【0015】
請求項記載の無人搬送車によれば、請求項記載の無人搬送車の奏する効果に加え、次の効果を奏する。パレットの脚の左右のペアの中間点であって、無人搬送車寄りの中間点と、それ以外の中間点とを結ぶ複数の直線が算出され、算出された直線を平均することで、パレットの両脚間の中心線が算出される。即ち中心線が、最も無人搬送車に近い中間点、即ち無人搬送車が通過中または通過する直前のパレットの脚の中間点と、それ以外のパレットの脚の中間点とから算出されるので、かかる中心線に基づいて操舵角を算出することで、操舵角の変化を小さく留めながらも無人搬送車とパレットの脚との接触をより好適に抑制できるという効果がある。
【0016】
請求項記載の無人搬送車によれば、請求項1からのいずれかに記載の無人搬送車の奏する効果に加え、次の効果を奏する。側方センサの正面を通過するパレットの脚の数が計測され、計測されたパレットの脚の数から、パレット内における無人搬送車の位置が検出される。これにより、パレットに無人搬送車の位置を表すマーカ等を設け、無人搬送車にそのマーカ等を検出するセンサ等を設けることなく、パレット内における無人搬送車の位置が把握できるので、無人搬送車およびパレットのコストを低減できるという効果がある。
【図面の簡単な説明】
【0017】
図1】(a)は、無人搬送車およびパレットを表す図であり、(b)は、矢印Ib方向における無人搬送車およびパレットを表す図である。
図2】(a)は、無人搬送車がパレットに進入しようとしている状態を表す図であり、(b)は、無人搬送車がパレットに進入した状態を表す図である。
図3】無人搬送車の操舵制御を説明する図である。
図4】無人搬送車の電気的構成を示すブロック図である。
図5】パレット進入・離脱処理のフローチャートである。
図6】(a)は、前後側検出処理のフローチャートであり、(b)は、側方側検出処理のフローチャートである。
図7】(a)は、中心線選択処理のフローチャートであり、(b)は、速度算出処理のフローチャートである。
【発明を実施するための形態】
【0018】
以下、本発明の好ましい実施形態について、添付図面を参照して説明する。まず、図1を参照して、本実施形態における無人搬送車1の構成を説明する。図1(a)は、無人搬送車1及びパレット50を表す図であり、図1(b)は、矢印Ib方向における無人搬送車1及びパレット50を表す図である。図1,2における矢印Fの方向は、無人搬送車1の進行方向を表す。本実施形態では、無人搬送車1の長手方向を「前後」とし、図1(a)の左側を仮に前方とする。
【0019】
無人搬送車1は、積載物Wを搭載したパレット50を積載して自動走行する搬送車であり、車体2と、走行装置3と、進入センサ4aと、側方センサ4bとを備える。走行装置3は、無人搬送車1を走行させる装置であり、無人搬送車1の上面視における4隅にそれぞれ配設される。
【0020】
進入センサ4aは、周囲の物体との距離および方向を測定するセンサであり、無人搬送車1の前後に設けられる。本実施形態では、前後の進入センサ4aのうち、パレット50への進入方向側の進入センサ4aを「進入センサ4a1」とし、パレット50への進入方向と逆側の進入センサ4aを「進入センサ4a2」とする。側方センサ4bは、周囲の物体との距離および方向を測定するセンサであり、無人搬送車1の側方の一側(本実施形態では図1(a)の進行方向の左側)に設けられる。進入センサ4a,側方センサ4bは、その周囲にレーザ光L(図2参照)を照射することで、進入センサ4a,側方センサ4bと物体との距離および方向が測定される。なお、進入センサ4aを設ける位置は、無人搬送車1の前後両方に限らず、無人搬送車1の前側のみでも良いし、後側のみでも良い。また側方センサ4bを設ける位置は、進行方向の左側に限らず、右側でも良いし、無人搬送車1の両側方に設けても良い。
【0021】
その無人搬送車1に積載されるパレット50は、脚51と、台部52とを有する。脚51は、パレット50の両側部にそれぞれ複数設けられる柱状の部材である。脚51はパレット50の両側部に6本ずつ設けられ、6本の脚51がトラス構造となるように接合されて構成される。台部52は、両側の脚51の上部に接合され、積載物Wを搭載するための平板状の部材である。なお、脚51の脚の数は6本に限らず、台部52の全長や搭載する積載物Wの質量に応じて6本以上でも良いし、6本以下でも良い。
【0022】
無人搬送車1はパレット50を積載する場合は、その車高を下げて台部52の下方に進入する。パレット50における所定の位置まで進入した後、走行を停止し、無人搬送車1の車高を上げることで、車体2の上面に形成される荷台にパレット50が積載される。一方で、積載したパレット50を無人搬送車1から降ろし、パレット50から離脱させる場合は、無人搬送車1の車高を下げ、車体2の荷台からパレット50を降ろし、車高を下げた状態で、パレット50に進入してきた方向の逆方向に走行することで、無人搬送車1がパレット50から離脱される。
【0023】
本実施形態では、無人搬送車1のパレット50への進入およびパレットからの離脱において、進入センサ4a及び側方センサ4bで測定された周囲の物体との距離および方向による測定データからパレット50の脚51を検出し、検出された脚51の位置に基づいて、無人搬送車1を操舵する。図2,3を用いて、進入センサ4a及び側方センサ4bによる脚51の検出および無人搬送車1の操舵方式を説明する。
【0024】
図2(a)は、無人搬送車1がパレット50に進入しようとしている状態を表す図であり、図2(b)は、無人搬送車1がパレット50に進入した状態を表す図である。図2においては、説明のため、パレット50における台部52の図示を省略して表し、脚51において、進入センサ4a及び側方センサ4bによって検出されている部分を太線で表し、検出されていない部分を破線で表す。
【0025】
まず、図2(a)に示す通り、無人搬送車1がパレット50の外部に位置する場合は、パレット50と対向する進入センサ4a1によって脚51が検出される。かかるパレット50と対向する進入センサ4a1によって、パレット50の脚51が多数検出されるので、脚51の位置を的確に検出できる。
【0026】
本実施形態では、パレット50の脚51等の位置を、無人搬送車1の上面視における中央を基準位置(即ち原点(0,0))として、無人搬送車1の前後方向および左右方向を座標軸とした場合の「相対位置」で表現される。進入センサ4a及び側方センサ4bで測定された測定データの相対位置への変換は、公知技術のためその説明は省略する。なお、基準位置は、無人搬送車1の上面視における中央に限らず、無人搬送車1の前端における中央等、無人搬送車1の他の部分でも良い。また、パレット50の脚51等の位置を相対位置で表現するものに限らず、特定の地点を基準位置とした「絶対位置」で表現しても良い。
【0027】
パレット50の脚51が検出された場合、検出された脚51から、両側左右の脚51のペアが形成される。具体的には、検出された脚51の中で、パレット50の長さ方向における位置が略同一の脚51同士が、脚51のペアとしてグルーピングされる。その脚51のペアの最も内側の位置PpL及び位置PpRが取得され、これら位置PpL及び位置PpRを結ぶ線の中間点Ccに基づいて両側の脚51の中心線Pcが算出される。そして、その中心線Pcに基づいて、無人搬送車1が操舵される。なお、操舵角θvの具体的な操舵方式は図3で後述する。
【0028】
一方で、無人搬送車1がパレット50の内部に位置する場合は、図2(b)に示す通り、側方センサ4bを用いて脚51が検出される。無人搬送車1がパレット50の内部に位置する場合は、側方センサ4bが脚51と対向するので、側方センサ4bによって多数の脚51が検出される。これにより、脚51の位置を的確に検出できる。
【0029】
側方センサ4bからは、両側の脚51のうちの片方の脚51のみが検出されるので、検出された片方の脚51から、図2(a)同様の中心線Pcが算出される。具体的には、側方センサ4bから検出された片方の脚51の位置を、後述するパレットデータ11bに記憶される両側の脚51間の距離Lpの半分である距離Lp/2だけ、両側の脚51の内側へ移動(オフセット)することでそれらの中間点Ccが取得され、取得された中間点Ccに基づいて中心線Pcが算出される。
【0030】
本実施形態において、パレット50内における無人搬送車1の停止位置、即ち無人搬送車1の車体2にパレット50を積載させる位置は、脚51のうち、無人搬送車1の進入方向側から3本目の脚51aと4本目の脚51bとの中間の位置(即ち図2(b)における無人搬送車1の位置)とされる。そのため本実施形態においては、パレット50内における無人搬送車1の位置を側方センサ4bの真正面を通過した脚51の数(図4で後述する通過脚位置メモリ12h)から判断する。
【0031】
具体的には、無人搬送車1がパレット50に進入する場合は、パレット50の進入前の脚51の数を0本として、側方センサ4bの真正面を脚51が通過するごとに1本ずつ加算していく。即ち無人搬送車1がパレット50に進入する場合は、パレット50内に進入してから通過した脚51の数に基づき、パレット50内における無人搬送車1の位置が判断される。
【0032】
一方で無人搬送車1がパレット50から離脱する場合は、パレット50内における停止位置(即ち脚51aと脚51bとの間)の脚51の数である3本から、側方センサ4bの真正面を脚51が通過するごとに1本ずつ減算していく。即ち無人搬送車1がパレット50から離脱する場合は、パレット50から離脱するまでの脚51の数に基づき、パレット50内における無人搬送車1の位置が判断される。
【0033】
このように、側方センサ4bを通過した脚51の数に基づいて、パレット50内の位置を判断する。これにより、パレット50内に無人搬送車1の位置を表すマーカ等を設け、無人搬送車1にそのマーカ等を検出するセンサ等を設けることなく、無人搬送車1のパレット50内の位置を容易に判断できる。よって、無人搬送車1及びパレット50のコストを低減できる。
【0034】
次に図3を参照して、図2(a),(b)で説明したパレット50の中心線Pcから無人搬送車1の操舵方式を説明する。
【0035】
図3は、無人搬送車1の操舵制御を説明する図である。無人搬送車1の前端部および後端部には、無人搬送車の中心線Lcとパレット50の中心線Pcとのズレ量を検出する仮想の検出エリアDpがそれぞれ設けられる。各走行装置3の操舵角θvは、前後の検出エリアDpで検出された、無人搬送車の中心線Lcとパレット50の中心線Pcとのズレ量df,drに基づいて算出される。
【0036】
具体的には、まず中心線Lc上であって、前側の検出エリアDpの上面視における中央位置から、後方に所定の距離Lipを移動した位置に仮想原点Cfを設定し、後側の検出エリアDpの上面視における中央位置から、後方に距離Lipを移動した位置に仮想原点Crを設定する。そして、前側の検出エリアDpにおけるパレット50の中心線Pcの位置Gf、即ち中心線Lcとのズレ量dfに応じた位置と仮想原点Cfとを結ぶ線分に直交し、かつ車体2の後方側に向かう直線を引く。後側の検出エリアDpにおける中心線Pcの検出位置Gr、即ち中心線Lcとのズレ量drに応じた位置と仮想原点Crとを結ぶ線分に直交し、かつ車体2の前方側に向かう直線を引く。これらの直線の交点が旋回中心Cとされる。
【0037】
その旋回中心Cを中心とし、走行装置3の中心を通る、円弧状の旋回経路Rを生成する。その旋回経路Rにおける各走行装置3の中心における接線方向のうち、無人搬送車1の進行方向側の方向Vのなす角θvが、操舵角θvとされる。
【0038】
なお図3では、無人搬送車1の上面視右上における走行装置3の操舵角θvのみを図示しているが、他の走行装置3に対する操舵角θvの算出方式も同様なので、図示は省略する。各走行装置3の向きがそれぞれに対して算出された操舵角θvと一致するように、各走行装置3が操舵制御される。
【0039】
次に、図4を参照して、無人搬送車1の電気的構成について説明する。図4は、無人搬送車1の電気的構成を示すブロック図である。無人搬送車1は、CPU10と、フラッシュROM11と、RAM12とを備え、これらはバスライン13を介して、入出力ポート14にそれぞれ接続されている。入出力ポート14には、上述した進入センサ4a(進入センサ4a1,4a2)と、側方センサ4bと、走行装置3と、外部の機器と情報を送受信する通信装置15とがそれぞれ接続されている。なお、走行装置3は、無人搬送車1に複数配設されるが、図4においては、まとめて1つの走行装置3として表している。
【0040】
CPU10は、バスライン13及び入出力ポート14に接続された各部を制御する演算装置である。フラッシュROM11は、書き換え可能な不揮発性のメモリであり、制御プログラム11aと、パレットデータ11bと、停止速度ゲインデータ11cとが記憶される。制御プログラム11aは、CPU10に図5のパレット進入・離脱処理を実行させるプログラムである。
【0041】
パレットデータ11bには、パレット50の各種情報、具体的には、パレット50の脚51間の距離Lpや、各脚51の位置と無人搬送車1の停止位置との距離や、パレット50の全長や全幅等が記憶される。停止速度ゲインデータ11cには、無人搬送車1がパレット50内を走行する際の、無人搬送車1とパレット50内における停止位置との距離(残距離)に応じた速度を算出するためのゲイン値が記憶される。無人搬送車1とパレット50の停止位置との距離に停止速度ゲインデータ11cに記憶されるゲイン値を乗じることで、無人搬送車1の位置に応じた速度が算出される。
【0042】
RAM12は、CPU10が制御プログラム11a等の実行時に各種のワークデータやフラグ等を書き換え可能に記憶するためのメモリであり、各走行装置3の操舵角θvが区別されて記憶される操舵角メモリ12aと、無人搬送車1の走行速度が記憶される速度メモリ12bと、進入センサ4aに基づいて算出された中心線Pcが記憶される前後中心線メモリ12cと、側方センサ4bに基づいて算出された中心線Pcが記憶される側方中心線メモリ12dと、操舵角θvの算出に用いられる中心線Pcが記憶される中心線メモリ12eと、進入センサ4aで検出されたパレット50の脚51のペア数が記憶される前後側ペア数メモリ12fと、側方センサ4bで検出されたパレット50の脚51の数が記憶された側方側脚数メモリ12gと、通過脚位置メモリ12hと、無人搬送車1の位置とパレット50内の無人搬送車1の停止位置との距離を記憶する残距離メモリ12iとが設けられる。
【0043】
通過脚位置メモリ12hには、無人搬送車1のパレット50内の位置に応じたパレット50の脚51の数が記憶される。具体的に、通過脚位置メモリ12hには側方センサ4bの真正面を通過した脚51の数が記憶され、上記した通り、無人搬送車1がパレット50に進入する場合は、通過脚位置メモリ12hの初期値が0とされ、側方センサ4bの真正面を通過する度に通過脚位置メモリ12hに1が加算される。一方で、無人搬送車1がパレット50から離脱する場合は、通過脚位置メモリ12hの初期値がパレット50内の無人搬送車1の停止位置である3とされ、側方センサ4bの真正面を通過する度に通過脚位置メモリ12hから1が減算される。
【0044】
次に、図5~7を参照して、無人搬送車1のCPU10で実行される処理について説明する。図5は、パレット進入・離脱処理のフローチャートである。パレット進入・離脱処理は、上位プロコン(図示せず)から通信装置15を介して受信した無人搬送車1への動作モードが、パレット50への進入を指示する「パレット進入」、又はパレット50から離脱を指示する「パレット離脱」である場合に実行される処理である。
【0045】
パレット進入・離脱処理はまず、初期化処理を行う(S1)。S1の初期化処理では、特に、前後側ペア数メモリ12f及び側方側脚数メモリ12gに「0」が設定され、通過脚位置メモリ12hには、上記した通り、無人搬送車1をパレット50に進入させる場合には「0」が、パレット50から無人搬送車1を離脱させる場合には「3」がそれぞれ設定される。S1の初期化処理によって、その他のRAM12のメモリ値もそれぞれに応じた初期値が設定される。
【0046】
S1の処理の後、無人搬送車1の現在位置が停止位置に到達したかを確認する(S2)。S2の処理で確認される停止位置は、無人搬送車1をパレット50へ進入させる場合は、上記した停止位置、即ちパレット50における進入方向側から3本目の脚51aと4本目の脚51bとの中間の位置であり(図2(b)参照)、無人搬送車1をパレット50から離脱させる場合は上位プロコンで指定されたパレット50の外部における位置である。
【0047】
S2の処理において、無人搬送車1の現在位置が停止位置に到達していない場合は(S2:No)、前後側検出処理(S3)を実行する。ここで図6(a)を参照して、前後側検出処理を説明する。
【0048】
図6(a)は、前後側検出処理のフローチャートである。前後側検出処理は、進入センサ4aに基づいて、中心線Pc及びパレットの脚51のペア数を算出する処理である。前後側検出処理はまず、上位プロコンから指示された動作モードを確認する(S20)。
【0049】
S20の処理において、動作モードがパレット進入である場合は(S20:「パレット進入」)、前後の進入センサ4aのうち、測定データを測定するセンサとして無人搬送車1の前方の進入センサ4aが設定され(S21)、S20の処理において、動作モードがパレット離脱である場合は(S20:「パレット離脱」)、測定データを測定するセンサとして後方の進入センサ4aが設定される(S22)。以下、前後側検出処理において、S21,S22の処理で設定される進入センサ4aのことを「対象センサ」という。
【0050】
即ちS21,S22の処理によって、無人搬送車1の前後の進入センサ4aのうち、パレット50の脚51と対向する進入センサ4aが「対象センサ」に設定される。パレット50への進入時においては、無人搬送車1の前後に設けられる進入センサ4aのうち、パレット50に近い進入センサ4aが対象センサに設定されるので、パレット50の脚51をより正確に検知できる。一方でパレット50からの離脱時においては、S22の処理で図2(a)における進入センサ4a1が対象センサに設定されることで、かかる進入センサ4a1では無人搬送車1の走行に応じて検出されるパレット50の脚51の数を徐々に増加させることができる。
【0051】
S21,S22の処理の後、対象センサから測定データを取得し(S23)、取得された測定データから、上記したパレット50の脚51のペアを全て検出する(S24)。その後、S24の処理によって、パレット50の脚51のペアが検出されたかを確認する(S25)。
【0052】
S25の処理において、脚51のペアが検出された場合は(S25:Yes)、検出された各脚51のペアにおける、中間点Ccを取得する(S26)。具体的には、検出された各脚51のペアに該当する測定データを図2で上記した相対位置に変換した上で、脚51のペアのそれぞれにおいて、脚51のペア同士の最も内側の位置を結ぶ線の中間点Ccが取得される。
【0053】
S26の処理の後、取得された各脚51のペアの中間点Ccから、パレット50の中心線Pcを算出し、前後中心線メモリ12cに保存する(S27)。具体的には、取得された脚51のペアの中間点Ccのうち、最も無人搬送車1に近い中間点Ccと、それ以外の中間点Ccとの直線を全て算出し、算出された直線を平均することで中心線Pcが算出され、前後中心線メモリ12cに保存される。
【0054】
S27の処理の後、S25の処理で検出された脚51のペア数を取得し、前後側ペア数メモリ12fに保存する(S28)。
【0055】
S25の処理で脚51のペアが検出されなかった場合(S25:No)、又はS28の処理の後、前後側検出処理を終了する。
【0056】
図5に戻る。S3の前後側検出処理の後、側方側検出処理(S4)を実行する。ここで、図6(b)を参照して、側方側検出処理を説明する。
【0057】
図6(b)は、側方側検出処理のフローチャートである。側方側検出処理は、側方センサ4bに基づいて、中心線Pcと側方センサ4bが通過した脚51の数とを算出する処理である。
【0058】
側方側検出処理はまず、側方センサ4bから測定データを取得する(S40)。S40の処理の後、取得した測定データからパレット50の脚51を全て検出する(S41)。S41の処理の後、脚51が検出されたかを確認する(S42)。
【0059】
S42の処理において、脚51が検出された場合は(S42:Yes)、検出された各脚51から、パレット50の中間点Ccを算出する(S43)。具体的には、検出された各脚51に該当する測定データを図2で上記した相対位置に変換した上で、各脚51の最も内側、即ちパレット50の中心側の位置を取得し、その位置からパレットデータ11bに記憶されるパレット50の左右の脚51間の半分の距離Lp/2だけ、両側の脚51の内側へ移動した位置が、各脚51の中間点Ccに設定される。
【0060】
S43の処理の後、S43の処理で算出された中間点Ccからパレット50の中心線Pcを算出し、側方中心線メモリ12dに保存する(S44)。具体的には、図6(a)のS27の処理と同様に、S43の処理で算出された中間点Ccのうち、最も無人搬送車1に近い中間点Ccと、それ以外の中間点Ccとの直線を全て算出し、算出された直線を平均することで中心線Pcが算出され、側方中心線メモリ12dに保存される。
【0061】
S44の処理の後、S42の処理で検出された脚51の数を取得し、側方側脚数メモリ12gに保存する(S45)。S45の処理の後、S42の処理で検出された脚51のうち、側方センサ4bの真正面に位置する脚51が存在するかを確認する(S46)。具体的には、側方センサ4bで取得された測定データにおける側方センサ4bの真正面(0度)に該当する距離を確認し、脚51における最も進行方向側の位置が検出できた場合、例えば、側方センサ4bの真正面に該当する距離が10m以上から1m以下に変化した場合に、側方センサ4bの真正面に位置する脚51が存在すると判断される。S46の処理において、側方センサ4bの真正面に位置する脚51が存在する場合は(S46:Yes)、上記した上位プロコンから指示された動作モードを確認する(S47)。
【0062】
S47の処理において、動作モードがパレット進入である場合は(S47:「パレット進入」)、通過脚位置メモリ12hに1を加算し(S48)、動作モードがパレット離脱である場合は(S47:「パレット離脱」)、通過脚位置メモリ12hから1を減算する(S49)。
【0063】
S42の処理において、脚51が検出されなかった場合(S42:No)、S46の処理において側方センサ4bの真正面に位置する脚51が存在しなかった場合(S46:No)、またはS48,S49の処理の後、側方側検出処理を終了する。
【0064】
図5に戻る。S4の側方側検出処理の後、前後側ペア数メモリ12fの脚51のペア数が2以上または側方側脚数メモリ12gの脚51の数が2以上かを確認する(S5)。S5の処理において、前後側ペア数メモリ12fの脚51のペア数が2以上または側方側脚数メモリ12gの脚51の数が2以上である場合は(S5:Yes)、進入センサ4a又は側方センサ4bによって脚51のペアが検出され、S3又はS4の処理によって中心線Pcが算出できたと判断できるので、かかる場合に中心線選択処理(S6)を実行する。ここで図7(a)を参照して、中心線選択処理を説明する。
【0065】
図7(a)は、中心線選択処理のフローチャートである。中心線選択処理は、側方側脚数メモリ12gの脚51の数に応じて、走行装置3の操舵角θvの算出に用いる中心線Pcを、前後中心線メモリ12cと側方中心線メモリ12dとのいずれかから選択する処理である。中心線選択処理は、まず、側方側脚数メモリ12gの脚51の数が2以上かを確認する(S60)。
【0066】
S60の処理において、側方側脚数メモリ12gの脚51の数が2より小の場合は(S60:No)、中心線メモリ12eに前後中心線メモリ12cの値を設定し(S61)、一方で側方側脚数メモリ12gの脚51の数が2以上の場合は(S60:Yes)、中心線メモリ12eに側方中心線メモリ12dの値を設定する(S62)。
【0067】
具体的に、S60の処理において、側方側脚数メモリ12gの脚51の数が2より小の場合は(S60:No)、S4の側方側検出処理(図6(b))によって側方センサ4bで検出された脚51の数が少ない一方で、S3の前後側検出処理(図6(a))によって進入センサ4aで多くの脚51のペアが検出された場合である。即ち無人搬送車1(特に側方センサ4b)がパレット50の進入する前の場合またはパレット50へ進入して間もない場合や、無人搬送車1がパレット50から離脱する直前の場合または離脱した後の場合である。
【0068】
かかる場合に、前方の進入センサ4aはパレット50の脚51と対向する一方で、側方センサ4bは、パレット50の脚51と対向しないので、前方の進入センサ4aで検出されるパレットの脚51の数は、側方センサ4bで検出される脚51の数よりも多く検出できる。よって、より多くのパレットの脚51から算出された、前方の進入センサ4aによる前後中心線メモリ12cを中心線メモリ12eに設定することで、中心線メモリ12eには多くのパレットの脚51から算出された、より正確な中心線Pcを設定できる。
【0069】
一方で、S60の処理において、側方側脚数メモリ12gの脚51の数が2以上の場合は(S60:Yes)、S3の前後側検出処理によって進入センサ4aで検出された脚51のペアが少ない一方で、S4の側方側検出処理によって側方センサ4bで多くの脚51の数が検出された場合である。即ち無人搬送車1がパレット50に進入して、しばらく経った場合や、無人搬送車がパレット50から離脱し始めてから間もない状態で、無人搬送車1がパレット50内に位置する場合である。
【0070】
かかる場合、前方の進入センサ4aと対向するパレット50の脚51が少ない一方で、側方センサ4bは、パレット50の脚51と対向するので、側方センサ4bによって多くの脚51が検出できる。よって、側方センサ4bによる側方中心線メモリ12dを中心線メモリ12eに設定することで、無人搬送車1がパレット50内を進行している場合でも、中心線メモリ12eには多くのパレットの脚51から算出された、より正確な中心線Pcを設定できる。
【0071】
S61又はS62の処理の後、中心線選択処理を終了する。
【0072】
図5に戻る。S6の中心線選択処理の後、図3で説明した方式により、無人搬送車1の仮想原点Cf,Crと、中心線メモリの中心線Pcとのズレ量df,drとに基づいて、旋回中心Cを算出し(S7)、その旋回中心Cに基づいて各走行装置3の操舵角θvを算出し、操舵角メモリ12aに保存する(S8)。S8の処理の後、速度算出処理(S9)を実行する。ここで図7(b)を参照して、速度算出処理を説明する。
【0073】
図7(b)は、速度算出処理のフローチャートである。速度算出処理は、無人搬送車1のパレット50内における位置に応じた無人搬送車1の走行速度を設定する処理である。速度算出処理はまず、上位プロコンから指示された動作モードを確認する(S70)。S70の処理において、動作モードがパレット進入である場合は(S70:「パレット進入」)、通過脚位置メモリ12hの脚51の数が3であるかを確認する(S71)。上記した通り、パレット50内における停止位置は、無人搬送車1の進入方向側から3本目の脚51aと4本目の脚51b(共に図2(b)参照)との中間の位置とされるので、S71の処理では、停止位置の手前の3本目の脚51aを通過したかが確認される。
【0074】
S71の処理において、通過脚位置メモリ12hの脚51の数が3である場合(S71:Yes)、通過脚位置メモリ12hの脚51の数から、停止位置までの残距離を算出し、残距離メモリ12iに保存する(S72)。具体的には、パレットデータ11bには、パレット50の各脚51の位置から停止位置までの無人搬送車1の進行方向側の距離が記憶されているので、通過脚位置メモリ12hの脚51の数に該当する停止位置までの距離をパレットデータ11bから取得し、残距離メモリ12iに記憶する。この際、無人搬送車1が隣り合う脚51の中間に位置する場合は、直前に検出した脚51からの移動距離が、残距離メモリ12iから減算される。
【0075】
S72の処理の後、速度メモリ12bに、残距離メモリ12iの残距離に停止速度ゲインデータ11cのゲイン値を乗じた速度を設定する(S73)。
【0076】
即ち無人搬送車1がパレット50内に進入して停止する場合、無人搬送車1とパレット50内の停止位置との残距離が通過脚位置メモリ12hの脚51の数によって算出され、その残距離に応じて走行速度が制御される。よって、パレット50内に無人搬送車1の走行速度を制御するためのマーカ等を設け、無人搬送車1にそのマーカ等を検出するセンサ等を設けることなく、無人搬送車1の走行速度を制御できるので、無人搬送車1及びパレット50のコストを低減できる。
【0077】
S70の処理において、動作モードがパレット離脱である場合(S70:「パレット離脱」)、または、S71の処理において、通過脚位置メモリ12hの脚51の数が3ではない場合は(S71:No)、無人搬送車1を停止させるタイミングではないので、速度メモリ12bに上位プロコンから設定された走行速度を設定する(S74)。S73又はS74の処理の後、速度算出処理を終了する。
【0078】
S9の速度算出処理の後、操舵角メモリ12aの操舵角θvと、速度メモリ12bの走行速度に応じて、各走行装置3を動作させて無人搬送車1を走行させる(S10)。S10の処理の後、無人搬送車1の現在位置をS10の走行処理に応じた走行距離で補正する(S11)。この際、無人搬送車1がパレット50内を走行している場合は、通過脚位置メモリ12hの脚51の数とパレットデータ11bとに応じた無人搬送車1のパレット50内の位置を用いて、無人搬送車1の現在位置を更に補正しても良い。S11の処理の後、S2以下の処理を繰り返す。
【0079】
S2の処理において、無人搬送車1の現在位置が停止位置に到達した場合は(S2:Yes)、無人搬送車1の走行を停止させる(S12)。また、S5の処理において、前後側ペア数メモリ12fの脚51のペア数と側方側脚数メモリ12gの脚51の数とが、いずれも2より小さい場合は(S5:No)、進入センサ4a又は側方センサ4bが故障している場合等、進入センサ4a及び側方センサ4bによって脚51の数が十分に検出できない、異常な状態と判断される。かかる場合に、上位プロコンに異常が発生した旨を通知し(S13)、S12の処理によって無人搬送車1の走行を停止させる。S12の処理の後、パレット進入・離脱処理を終了する。
【0080】
以上説明した通り、無人搬送車1がパレット50の外部に位置する場合は、進入センサ4aの測定データに基づいてパレット50の脚51が検出され、その検出された脚51に基づいて中心線Pcが算出され、算出された中心線Pcに基づいて走行装置3の操舵角θvが算出される。一方で、無人搬送車1がパレット50の内部に位置する場合は、側方センサ4bの測定データに基づいてパレット50の脚51が検出され、その検出された脚51に基づいて中心線Pc及び操舵角θvが算出される。
【0081】
これにより、無人搬送車1をパレット50に進入させ、又はパレット50から離脱させる際の位置制御のために、パレット50に磁気ガイド等を設け、無人搬送車にその磁気ガイド等を読み取るセンサを設ける必要がないので、無人搬送車1及びパレット50のコストを低減できる。ここで進入センサ4a及び側方センサ4bは、周囲の物体との距離および方向を測定するので、パレット50の脚51がトラス状に複数設けられ、脚51間に間隔がある場合でも、進入センサ4a及び側方センサ4bの検出範囲における脚51の位置を継続して検出できる。これにより、無人搬送車1を正確にパレット50へ進入させ、またはパレット50から離脱させることができる。
【0082】
また、図6(a)のS27の処理で、パレット50の中心線Pcを算出する際、パレット50の脚51のペア同士の最も内側を結ぶ線における中間点Ccが用いられる。これにより、パレット50の両脚間における最も狭い位置に基づいて中心線Pcが算出されるので、無人搬送車1とパレット50の脚51との接触を抑制しつつ、無人搬送車1をパレット50に進入または離脱させることができる。
【0083】
更に中心線Pcを算出する際に、最も無人搬送車1に近い中間点Ccと、それ以外の中間点Ccとを結ぶ直線が全て算出され、算出された直線を平均することで、パレット50の中心線Pcが算出される。即ち中心線Pcが、最も無人搬送車1に近い中間点Cc、即ち無人搬送車1が通過中または通過する直前のパレット50の脚51の中間点Ccと、それ以外の脚51の中間点Ccとから算出されるので、かかる中心線Pcに基づいて走行装置3の操舵角θvを算出することで、操舵角θvの変化を小さく留めながらも、無人搬送車1と脚51との接触をより好適に抑制できる。
【0084】
以上、実施形態に基づき本発明を説明したが、本発明は上述した実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変更が可能であることは容易に推察できるものである。
【0085】
上記実施形態では、パレット50の脚51をトラス状に構成したが、これに限られない。例えば脚51を略垂直な柱状に構成しても良いし、脚51を格子状に構成しても良い。
【0086】
また、脚51を壁状に形成し、1の壁状の脚51によってパレット50の両側面を形成しても良い。この場合、図7(a)のS60の処理や、図7(b)のS71の処理において側方側脚数メモリ12gの脚51の数と通過脚位置メモリ12hの脚51の数とによって、パレット50における無人搬送車1の位置を取得する代わりに、無人搬送車1がパレット50に進入するまで又は進入してからの距離や、無人搬送車1がパレット50から離脱するまで又は離脱してからの距離に基づいて、パレット50における無人搬送車1の位置を取得して操舵制御および速度制御をすれば良い。
【0087】
上記実施形態では、図6(a)のS26の処理において、検出された脚51のペアのそれぞれにおいて、脚51のペア同士の最も内側を結ぶ線における中間点Ccを取得した。中間点Ccを取得する方式は、これに限らず、例えば、図6(b)のS43の処理と同様に、検出された各脚51のペアにおける片方の脚51の位置を、距離Lp/2だけパレット50の中心側に移動した位置を各脚51における中間点Ccとしても良い。
【0088】
上記実施形態では、図6(a)のS27の処理および図6(b)のS44の処理において、取得された中間点Ccのうち、最も無人搬送車1に近い中間点Ccと、それ以外の中間点Ccとの直線を全て算出し、算出された直線を平均することで、中心線Pcを算出した。しかし、これに限らず、例えば、最も無人搬送車1に近い中間点Cc以外の中間点Ccに基づいて中心線Pcを算出しても良いし、最も無人搬送車1に近い中間点Ccと最も無人搬送車1に遠い中間点Ccとを結ぶことで中心線Pcを算出しても良い。
【0089】
また、中間点Ccによる直線を全て平均して中心線Pcを算出するものに限らず、例えば、中間点Ccによる直線の中から選択した特定の直線を用いて中心線Pcを算出しても良いし、中間点Ccによる直線の中からランダム選択した直線を用いて中心線Pcを算出しても良い。或いは、全ての中間点Ccから最小二乗法により中心線Pcを算出しても良い。
【0090】
上記実施形態では、図7(a)の中心線選択処理において、側方側脚数メモリ12gの脚51の数に応じて、中心線Pcを前後中心線メモリ12cと側方中心線メモリ12dとのいずれかから選択した。しかし、これに限らず、側方側脚数メモリ12gの脚51の数と前後側ペア数メモリ12fの脚51のペア数とに応じて、中心線Pcを選択しても良い。この場合、例えば、前後側ペア数メモリ12fの脚51のペア数が1より大または側方側脚数メモリ12gの脚51の数が2より小の場合に、中心線メモリ12eに前後中心線メモリ12cの値を設定し(即ち図7(a)のS61)、前後側ペア数メモリ12fの脚51のペア数が1以下かつ側方側脚数メモリ12gの脚51の数が2以上の場合に、中心線メモリ12eに側方中心線メモリ12dの値を設定(即ち図7(a)のS62)すれば良い。また、前後側ペア数メモリ12fの脚51のペア数のみに応じて、中心線Pcを選択しても良い。
【0091】
更に図7(a)の中心線選択処理において、中心線Pcを前後中心線メモリ12cと側方中心線メモリ12dとのいずれかから選択したが、これに限らず、常に前後中心線メモリ12c又は側方中心線メモリ12dのいずれかの中心線Pcを、中心線メモリ12eに設定しても良いし、常に前後中心線メモリ12cの中心線Pcと側方中心線メモリ12dの中心線Pcとを平均した中心線Pcを中心線メモリ12eに設定しても良い。
【0092】
上記実施形態では、図5のS7,S8の処理において、中心線メモリ12eの中心線Pcに基づいて旋回中心Cおよび各走行装置3の操舵角θvを算出した。旋回中心C及び操舵角θvの算出は、中心線Pcに基づくものに限らず、例えば、パレット50の中心からズレた直線に基づいて、旋回中心C及び操舵角θvを算出しても良いし、無人搬送車1と各脚51との接触を回避するように算出された曲線状または直線状の経路に基づいて、旋回中心C及び操舵角θvを算出しても良い。
【0093】
上記実施形態では、図6(b)のS46の処理において、側方センサ4bの真正面に位置する脚51が存在するかを確認したが、これに限らず、側方センサ4bの真正面からズレた位置に脚51が存在するかを確認しても良い。この際、側方センサ4bと、脚51とが所定の相対角度(例えば20度)となった場合に、側方センサ4bの真正面からズレた位置に脚51が存在すると判断しても良い。
【0094】
上記実施形態では、無人搬送車1を用いて説明したが、これに限られるものではなく、例えば、本発明をユニットキャリアなどに適用しても良い。
【0095】
上記実施形態では、制御プログラム11aをフラッシュROM11に記憶した。これに限らず、制御プログラム11aをRAMカード等のフラッシュROM11以外の半導体メモリや、DVD等の光ディスクや、ハードディスク・ドライブ等の磁気媒体に記憶して実行しても良いし、ネットワーク(インターネットやイントラネット等)上のサーバに制御プログラム11aを記憶し、該サーバから制御プログラム11aをダウンロードして実行しても良い。
【0096】
上記実施形態に挙げた数値は一例であり、他の数値を採用することは当然可能である。
【符号の説明】
【0097】
1 無人搬送車
4a 進入センサ
4b 側方センサ
50 パレット
51 脚
52 台部
Cc 中間点
Pc 中心線
S8 操舵角算出手段
S24,S25,S41,S42 脚検出手段
S27,S44 中心線算出手段
S26,S43 中間点算出手段
S48,S49 パレット通過数計測手段
S71 位置検出手段
図1
図2
図3
図4
図5
図6
図7