(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024018510
(43)【公開日】2024-02-08
(54)【発明の名称】荷役車両、荷役車両の制御方法、及び荷役車両の制御システム
(51)【国際特許分類】
B66F 9/24 20060101AFI20240201BHJP
【FI】
B66F9/24 L
【審査請求】未請求
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2022121895
(22)【出願日】2022-07-29
(71)【出願人】
【識別番号】000001236
【氏名又は名称】株式会社小松製作所
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】岩永 圭弘
【テーマコード(参考)】
3F333
【Fターム(参考)】
3F333AA02
3F333AB13
3F333FD14
3F333FE05
(57)【要約】
【課題】荷役作業の対象を適切に識別可能な荷役車両、荷役車両の制御方法、及び荷役車両の制御システムを提供すること。
【解決手段】フォークリフト1は、フォークリフト1に取り付けられ、フォークリフト1の周辺に存在する物体を検出する物体検出センサである3次元センサ51と、3次元センサ51から物体検出データを取得可能なコントローラ60とを備える。コントローラ60は、フォークリフト1の車体座標系を基準とした探索範囲を記憶する記憶部63と、3次元センサ51からの物体検出データに基づいて、探索範囲内に存在する物体から対象を識別する識別部66とを備える。
【選択図】
図3
【特許請求の範囲】
【請求項1】
荷役車両に取り付けられ、前記荷役車両の周辺に存在する物体を検出する物体検出センサと、
前記物体検出センサから物体検出データを取得可能なコントローラと、
を備え、
前記コントローラは、
前記荷役車両の車体座標系を基準とした探索範囲を記憶する記憶部と、
前記物体検出センサからの前記物体検出データに基づいて、前記探索範囲内に存在する物体から対象を識別する識別部と、
を備える、荷役車両。
【請求項2】
前記探索範囲は、
前記荷役車両が前記対象に対して切り返しなしで正対できる位置に設定される、
請求項1に記載の荷役車両。
【請求項3】
前記荷役車両の作業機の負荷を検出する作業機負荷センサ、
を備え、
前記コントローラは、
前記作業機負荷センサからの負荷データに基づいて、識別する前記対象を決定する決定部、を備え、
前記識別部は、前記物体検出センサからの前記物体検出データに基づいて、前記探索範囲内に存在する、前記決定部によって決定された対象を識別する、
を備える、請求項1に記載の荷役車両。
【請求項4】
前記コントローラは、
前記作業機負荷センサからの負荷データに基づいて、前記作業機上の積荷の有無を判定する判定部、を備え、
前記決定部は、前記判定部によって前記作業機上に前記積荷がないと判定された場合、運搬物を識別する対象として決定する、
請求項3に記載の荷役車両。
【請求項5】
オペレータによって操作される操作部、
を備え、
前記決定部は、前記作業機上に前記積荷があると判定された場合、前記操作部からの操作信号に基づいて、識別する前記対象を決定する、
請求項4に記載の荷役車両。
【請求項6】
前記決定部は、前記作業機上に前記積荷があると判定された場合、荷置きスペースを識別する対象として決定する、
請求項4に記載の荷役車両。
【請求項7】
前記コントローラは、
前記作業機負荷センサからの前記負荷データに基づいて、前記作業機上の積荷の有無を判定する判定部、を備え、
前記識別部は、前記判定部の判定結果に基づいて、前記探索範囲を変化させて前記対象を識別する、
請求項3に記載の荷役車両。
【請求項8】
前記記憶部は、第1探索範囲と、前記第1探索範囲と異なる第2探索範囲とを記憶し、
前記識別部は、前記判定部の判定結果に基づいて、前記第1探索範囲と前記第2探索範囲とを切り換えて前記対象を識別する、
請求項7に記載の荷役車両。
【請求項9】
前記第1探索範囲は第1辺を有する矩形形状であり、
前記第1探索範囲の前記第1辺の長さは、運搬物の正面の幅寸法に等しく、
前記運搬物の正面は、前記荷役車両が前記運搬物を取り上げる際に正対する面である、
請求項8に記載の荷役車両。
【請求項10】
前記第2探索範囲は第1辺を有する矩形形状であり、
前記第2探索範囲の前記第1辺の長さは、運搬物の正面の幅寸法より長く、
前記運搬物の正面は、前記荷役車両が前記運搬物を取り上げる際に正対する面である、
請求項8に記載の荷役車両。
【請求項11】
前記荷役車両に取り付けられ、前記荷役車両の周辺に存在する物体を撮像するカメラと、
表示装置と、
を備え、
前記コントローラは、
前記識別部の識別結果に基づいて、前記カメラによって撮像された撮像画像に、識別した前記対象の位置に前記対象の形状を示す想像線を重畳して前記表示装置に表示させる表示制御部、を備える、
請求項2に記載の荷役車両。
【請求項12】
荷役車両に取り付けられ、前記荷役車両の周辺に存在する物体を検出する物体検出センサと、
前記物体検出センサから物体検出データを取得可能なコントローラと、
を備えた荷役車両の制御方法であって、
前記荷役車両の車体座標系を基準とした探索範囲を記憶し、
前記物体検出センサから取得した前記物体検出データに基づいて、前記探索範囲内に存在する物体から対象を識別する、
荷役車両の制御方法。
【請求項13】
荷役車両に取り付けられ、前記荷役車両の周辺に存在する物体を検出する物体検出センサと、
前記物体検出センサから物体検出データを取得可能なコントローラと、
を備え、
前記コントローラは、
前記荷役車両の車体座標系を基準とした探索範囲を記憶する記憶部と、
前記物体検出センサからの前記物体検出データに基づいて、前記探索範囲内に存在する物体から対象を識別する識別部と、
を備える、荷役車両の制御システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、荷役車両、荷役車両の制御方法、及び荷役車両の制御システムに関する。
【背景技術】
【0002】
荷役車両に係る技術分野において、特許文献1に開示されているような無人フォークリフトが知られている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
荷役車両が行う荷役作業には、車両に配置されたフォークで運搬物を取り上げる荷取り作業と、取り上げた運搬物を所定の位置に置く荷置き作業とがある。荷取り作業を行う際に目標とする対象は、運搬物である。一方、荷置き作業を行う際に目標とする対象は、運搬物を荷置きする荷置きスペースである。しかしながら、荷役作業の種別に関わらず検出範囲内に存在する全ての対象を識別した場合、処理の負荷が増加する。このため、荷役作業を行う際に目標とする対象を適切に識別することが望まれる。
【0005】
本開示の態様は、荷役作業の対象を適切に識別可能な荷役車両、荷役車両の制御方法、及び荷役車両の制御システムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本開示の態様に従えば、荷役車両に取り付けられ、荷役車両の周辺に存在する物体を検出する物体検出センサと、物体検出センサから物体検出データを取得可能なコントローラと、を備える荷役車両が提供される。コントローラは、荷役車両の車体座標系を基準とした探索範囲を記憶する記憶部と、物体検出センサからの物体検出データに基づいて、探索範囲内に存在する物体から対象を識別する識別部とを備える。
【0007】
本開示の態様に従えば、荷役車両に取り付けられ、荷役車両の周辺に存在する物体を検出する物体検出センサと、物体検出センサから物体検出データを取得可能なコントローラと、を備えた荷役車両の制御方法が提供される。第1のステップは、荷役車両の車体座標系を基準とした探索範囲を記憶する。第2のステップは、物体検出センサから取得した物体検出データに基づいて、探索範囲内に存在する物体から対象を識別する。
【0008】
本開示の態様に従えば、荷役車両に取り付けられ、荷役車両の周辺に存在する物体を検出する物体検出センサと、物体検出センサから物体検出データを取得可能なコントローラと、を備えた荷役車両の制御システムが提供される。コントローラは、荷役車両の車体座標系を基準とした探索範囲を記憶する記憶部と、物体検出センサからの物体検出データに基づいて、探索範囲内に存在する物体から対象を識別する識別部とを備える。
【発明の効果】
【0009】
本開示の態様によれば、荷役作業の対象を適切に識別可能な荷役車両、荷役車両の制御方法、及び荷役車両の制御システムが提供される。
【図面の簡単な説明】
【0010】
【
図1】
図1は、実施形態に係るフォークリフトを左前方斜め上側から見た斜視図である。
【
図2-1】
図2-1は、実施形態に係る3次元センサの取付位置及び指向方向を示す概略図である。
【
図2-2】
図2-2は、実施形態に係るフォークリフトの積荷時の3次元センサの取付位置及び指向方向を示す概略図である。
【
図2-3】
図2-3は、実施形態に係るフォークリフトの空荷時の3次元センサの取付位置及び指向方向を示す概略図である。
【
図3】
図3は、実施形態に係るフォークリフトの構成の一例を示す機能ブロック図である。
【
図4】
図4は、実施形態に係るコンピュータシステムの一例を示すブロック図である。
【
図5】
図5は、実施形態に係る対象を探索する第1探索範囲を示す模式図である。
【
図6】
図6は、実施形態に係る対象を探索する第2探索範囲を示す模式図である。
【
図7】
図7は、実施形態に係る運搬物を識別する方法の一例を示す概略図である。
【
図8】
図8は、実施形態に係る運搬物の周囲に存在する荷置きスペースの位置を示す模式図である。
【
図9】
図9は、実施形態に係る、運搬物を識別した場合における、表示装置の表示の一例を示す模式図である。
【
図10】
図10は、実施形態に係る、荷置きスペースを識別した場合における、表示装置の表示の一例を示す模式図である。
【
図11】
図11は、実施形態に係るフォークリフトの制御方法の処理の一例を示すフローチャートである。
【
図12】
図12は、実施形態に係るフォークリフトの制御方法の識別対象切替処理の一例を示すフローチャートである。
【
図13】
図13は、変形例に係る遠隔で操作されるフォークリフトの構成の一例を示す機能ブロック図である。
【発明を実施するための形態】
【0011】
以下、本開示に係る実施形態について図面を参照しながら説明するが、本開示はこれに限定されない。以下で説明する各実施形態の構成要素は、適宜組み合わせることができる。また、一部の構成要素を用いない場合もある。
【0012】
実施形態においては、左、右、前、後、上、及び下の用語を用いて各部の位置関係について説明する。これらの用語は、荷役車両に規定された車体座標系の原点を基準とする相対位置又は方向を示す。
【0013】
<荷役車両>
荷役車両1は、荷役車両1の作業現場において、荷役車両1の周辺に存在する物体から対象を識別する。本実施形態においては、荷役車両1を適宜、フォークリフト1、と称する。なお、荷役車両は特に限定されるものではなく、例えば、フォークアタッチメントを取り付け可能なホイールローダであってもよい。
【0014】
フォークリフト1は、運搬物の荷取り作業及び荷置き作業等の荷役作業を行う。フォークリフト1は、例えば、地面上に置かれた運搬物を取り上げる荷取り作業を行う。フォークリフト1は、例えば、他の運搬物の上段に積まれた運搬物を取り上げる荷取り作業を行う。フォークリフト1は、例えば、フォーク13で取り上げた運搬物を荷置きスペースに取りおろす荷置き作業を行う。フォークリフト1は、例えば、フォーク13で取り上げた運搬物を貨物車両の荷台上に取りおろす荷置き作業を行う。フォークリフト1は、例えば、フォーク13で取り上げた運搬物を地面上に置かれた他の運搬物の上段に取りおろす荷置き作業を行う。
【0015】
対象とは、フォークリフト1の荷役対象である。本実施形態では、対象は、例えば、運搬物、運搬物を載置可能な荷置きスペース、又は、貨物車両の荷台である。
【0016】
本実施形態では、運搬物は、荷物を積載する荷役台や容器である。運搬物は、例えば、パレットやスキッド、コンテナである。運搬物は、フォーク挿し込み穴を備える。
【0017】
フォークリフト1は、荷取り作業及び荷置き作業の際に、対象(運搬物、荷置きスペース、又は、貨物車両の荷台)を識別して、フォークリフト1を当該対象に対して自動で正対するように操舵制御が行われる(自動制御機能)。
【0018】
自動制御機能では、フォークリフト1のステアリング操作又は作業機操作の少なくともいずれか一方が自動制御される。本実施形態では、オペレータは、フォークリフト1のアクセル操作を行う。本実施形態では、自動制御開始エリアまで、言い換えると、対象が識別されるまでは、フォークリフト1は、オペレータの操作によりマニュアルで移動する。
【0019】
<フォークリフトの全体構成>
図1は、実施形態に係るフォークリフト1を左前方斜め上側から見た斜視図である。フォークリフト1は、車体10と、動力源21と、車体10の前方に配置される作業機2と、車体10を支持する走行装置と、運転室20とを備える。動力源21は、図示しない油圧ポンプを駆動する。動力源21は、例えばエンジンである。
【0020】
車体10の前方には、運搬物の取り上げるための作業機2が設置されている。作業機2は、マスト14と、支持部131と、フォーク13と、リフトシリンダ15と、チルトシリンダ16と、サイドシフトシリンダ17とを有する。マスト14は、左右軸回りに回転可能に車体10の前方に取り付けられている。マスト14は、車体10に対して前傾姿勢又は後傾姿勢をとることが可能である。支持部131は、マスト14に支持される。支持部131は、マスト14に沿って上下方向に移動可能である。フォーク13は、支持部131を介してマスト14に支持される。フォーク13は、マスト14に沿って昇降する。
【0021】
リフトシリンダ15は、車体10に対してフォーク13を上下方向に移動させる。チルトシリンダ16は、車体10に対してマスト14を前後方向に傾斜させる。サイドシフトシリンダ17は、車体10に対してフォーク13を左右方向に移動させる。
【0022】
リフトシリンダ15は、マスト14と支持部131との間に配置される。リフトシリンダ15は、支持部131を上下方向に移動することにより、フォーク13を上下方向に移動させる。支持部131とフォーク13とは、上下方向に一緒に移動する。支持部131とフォーク13とは、マスト14に沿って上下方向に移動する。チルトシリンダ16は、車体10とマスト14との間に配置される。チルトシリンダ16は、マスト14を前後方向に傾斜させることにより、フォーク14を前後方向に傾斜させる。
【0023】
走行装置は、フォークリフト1を走行させる。走行装置は、フォークリフト1の進行、制動、及び操舵を行う。進行とは、フォークリフト1が前進又は後進することをいう。制動とは、フォークリフト1が減速又は停止することをいう。操舵とは、フォークリフト1の走行方向が変更されることをいう。走行装置は、前輪11と、後輪12と、走行モータ22と、図示しないブレーキ装置と、ステアリングシリンダ18とを有する。
【0024】
前輪11及び後輪12のそれぞれは、車体10を支持する。前輪11の少なくとも一部は、車体10よりも下方に配置される。後輪12の少なくとも一部は、車体10よりも下方に配置される。前輪11は、後輪12よりも前方に配置される。前輪11は、車体10の左側及び右側のそれぞれに配置される。後輪12は、車体10の左側及び右側のそれぞれに配置される。前輪11及び後輪12のそれぞれは、回転軸を中心に回転可能である。
【0025】
走行モータ22は、フォークリフト1を進行させるための駆動力を発生する。走行モータ22は、前輪11を回転させることによって、フォークリフト1を前進又は後進させる。走行モータ22は、図示しない油圧ポンプから吐出される作動油によって駆動する。前輪11は、走行モータ22が発生する回転力により回転する駆動輪である。ブレーキ装置は、フォークリフト1を制動させる。
【0026】
ステアリングシリンダ18は、フォークリフト1を操舵する。ステアリングシリンダ18は、後輪12を操舵することによって、フォークリフト1の走行方向を変更させる。後輪12は、ステアリングシリンダ18により操舵される操舵輪である。ステアリングシリンダ18は、ステアリング制御弁24を介して供給される作動油によって動作する。
【0027】
表示装置26は、運転室20に配置されている。表示装置26は、液晶ディスプレイ(LCD:Liquid Crystal Display)又は有機ELディスプレイ(OELD:Organic Electroluminescence Display)のようなフラットパネルディスプレイを含む。表示装置26は、コントローラ60から送信された画像を表示する。
【0028】
操作部27は、フォークリフト1のオペレータによって操作される。操作部27は、運転室20の運転席の周辺に配置される。操作部27は、例えば、自動制御機能の開始及び終了を切り替える操作を受け付ける。操作部27は、識別部66によって対象が識別された場合、対象を自動制御機能の対象として決定する操作を受け付ける。操作部27に対して行われた操作は、操作信号(オペレータ指令)としてコントローラ60によって取得される。
【0029】
運転室20の前方には、ステアリングホイール31が配置される。オペレータは、手でステアリングホイール31を操作して、フォークリフト1を操舵する。
【0030】
フォークリフト1は、作業機レバー32、前後進切替レバー33、アクセルペダル34、車速センサ35、ステアリング角センサ36、及び、作業機負荷センサ37を備える。作業機レバー32は、フォークリフト1のフォーク13を操作するための操作用の部材である。前後進切替レバー33は、フォークリフト1の進行方向を前方又は後方のいずれか一方に切り替えるための操作用の部材である。アクセルペダル34は、フォークリフト1の走行速度を変更するための操作用の部材である。
【0031】
車速センサ35は、フォークリフト1の車速を検出する。車速センサ35は、検出した車速データをコントローラ60へ送信する。
【0032】
ステアリング角センサ36は、フォークリフト1のステアリング角を検出する。ステアリング角センサ36は、検出したステアリング角度データをコントローラ60へ送信する。
【0033】
作業機負荷センサ37は、作業機2にかかる負荷を検出する。作業機負荷センサ37は、例えば、作業機2の少なくとも一部に配置された歪ゲージやロードセル等の荷重測定デバイスである。作業機負荷センサ37により検出された負荷データは、コントローラ60へ出力される。なお、作業機2にかかる負荷は、例えば、リフトシリンダ15を駆動させる圧油の圧力を検出する油圧センサを用いて検出してもよい。この場合、運搬物がフォーク13によって支持されている状態と支持されていない状態とで、作業機2に掛かる負荷が変化する。作業機負荷センサ37は、作業機2に掛かる負荷の変化を検出する。
【0034】
<3次元センサ及びカメラ>
フォークリフト1は、3次元センサ51、カメラ52及びコントローラ60を備える。3次元センサ51、カメラ52及びコントローラ60は、無線又は有線によりデータを通信可能に接続されている。
【0035】
3次元センサ51及びカメラ52は、1組としてフォークリフト1に取り付けられている。本実施形態では、フォークリフト1には、4組の3次元センサ51及びカメラ52が配置されている。なお、3次元センサ51及びカメラ52の数は特に限定されるものではなく、例えば、フォークリフト1に2つの3次元センサ51が配置されていてもよいし、4つ以上のカメラ52が配置されていてもよい。
【0036】
3次元センサ51は、物体の3次元データを取得する。物体の3次元データは、物体の表面に規定される複数の検出点からなる点群を含む。点群は、3次元センサ51と物体の表面に規定される複数の検出点のそれぞれとの相対距離及び相対位置を示す。3次元センサ51として、レーザ光を射出することにより物体を検出するレーザセンサ(LiDAR:Light Detection and Ranging)が例示される。なお、3次元センサ51は、赤外光を射出することにより物体を検出する赤外線センサ又は電波を射出することにより物体を検出するレーダセンサ(RADAR:Radio Detection and Ranging)でもよい。
【0037】
3次元センサ51は、フォークリフト1の周辺に存在する物体を検出する物体検出センサである。3次元センサ51は、フォークリフト1の周辺の対象を検出可能である。3次元センサ51は、検出した物体検出データをコントローラ60へ送信する。3次元センサ51は、例えば、数10[m]程度の範囲を検出可能である。3次元センサ51は、フォークリフト1に複数が配置されている。3次元センサ51の少なくとも1つは、運搬物を識別するために、運搬物のフォーク挿し込み穴と近い高さに配置されている。3次元センサ51の少なくとも1つは、例えば、地面上又は貨物車両の荷台上に配置された運搬物のフォーク挿し込み穴と近い高さに配置される。本実施形態では、3次元センサ51は、3次元センサ511、3次元センサ512、3次元センサ513、及び3次元センサ514を備える。3次元センサ511、3次元センサ512、3次元センサ513、及び3次元センサ514の区別を特に要しない場合、単に3次元センサ51という。3次元センサ51は、検出した物体検出データをコントローラ60へ送信する。
【0038】
3次元センサ511は、フォークリフト1の前方の右側方を検出する。3次元センサ511は、前輪11の上方に位置するフェンダ19Rより上方に配置されている。3次元センサ511は、運転室20の前下方の右側方に配置されている。本実施形態では、3次元センサ511は、カメラ521の下方に配置されている。
【0039】
3次元センサ512は、フォークリフト1の前方の左側方を検出する。3次元センサ512は、前輪11の上方に位置するフェンダ19Lより上方に配置されている。3次元センサ512は、運転室20の前下方の左側方に配置されている。本実施形態では、3次元センサ512は、カメラ522の下方に配置されている。
【0040】
3次元センサ513は、フォークリフト1の積荷時に、フォークリフト1の前方を検出する。3次元センサ513は、フォークリフト1の積荷時に、フォーク13上の積荷によって前方の検出範囲が遮られない位置に配置されている。3次元センサ513は、前輪11の上方に位置するフェンダ19L上に配置されている。本実施形態では、3次元センサ513は、カメラ523の下方に配置されている。
【0041】
3次元センサ514は、フォークリフト1の空荷時に、フォークリフト1の前方中央の下方を検出する。3次元センサ514は、フォークリフト1の空荷時に、フォーク13によって前方の検出範囲が遮られない位置に配置されている。3次元センサ514は、フォークリフト1の空荷時に、地面等に置かれた運搬物のフォーク挿し込み穴、又は、他の運搬物の上段に積まれた運搬物のフォーク挿し込み穴を検出可能な位置に配置されている。3次元センサ514は、車体10の前方中央部の下方に配置されている。3次元センサ514は、フォーク13の後部に配置され車体10に対してフォーク13を支持する支持部131の中央部の下方に配置されている。3次元センサ514は、フォーク13とともに昇降する。本実施形態では、3次元センサ514は、カメラ524の下方に配置されている。
【0042】
図2-1は、実施形態に係る3次元センサの取付位置及び指向方向を示す概略図である。
図2-1に示す例では、フォークリフト1の右側に、フォークリフト1から近い順に運搬物201R、運搬物202R及び運搬物203Rが配置されている。フォークリフト1の左側に、フォークリフト1から近い順に運搬物201L、運搬物202L及び運搬物203Lが配置されている。符号101は、3次元センサ51
1の指向方向及び検出範囲を模式的に示す。符号102は、3次元センサ51
2の指向方向及び検出範囲を模式的に示す。符号103は、3次元センサ51
3の指向方向及び検出範囲を模式的に示す。符号104は、3次元センサ51
4の指向方向及び検出範囲を模式的に示す。フォークリフト1は、3次元センサ51は、3次元センサ51
1、3次元センサ51
2、3次元センサ51
3、及び3次元センサ51
4によりフォークリフト1の前方の全方位を検出可能である。
【0043】
図2-2は、実施形態に係るフォークリフトの積荷時の3次元センサの取付位置及び指向方向を示す概略図である。
図2-2は、3次元センサ51
3の取付位置及び指向方向を示す。
図2-2に示すように、フォークリフト1の積荷時、3次元センサ51
3の検出範囲は、運搬物200によって遮られない。フォークリフト1の積荷時、フォークリフト1は、3次元センサ51
3により前方が検出可能である。
【0044】
図2-3は、実施形態に係るフォークリフトの空荷時の3次元センサの取付位置及び指向方向を示す概略図である。
図2-3は、3次元センサ51
4の取付位置及び指向方向を示す。
図2-3の左側の図に示すように、フォークリフト1の空荷時、フォーク13が下げられている状態では、2段積みの運搬物200の下段の運搬物200の下方が、3次元センサ51
4の検出範囲に含まれる。
図2-3の右側の図に示すように、フォークリフト1の空荷時、フォーク13が持ち上げられた状態では、2段積みの運搬物200の上段の運搬物200の下方が、3次元センサ51
4の検出範囲に含まれる。フォークリフト1の空荷時、フォークリフト1は、3次元センサ51
4により前方が検出可能である。
【0045】
カメラ52は、フォークリフト1の周辺に存在する物体を撮像する。本実施形態では、カメラ52は、単眼のカメラである。カメラ52は、光学系と、イメージセンサとを有する。イメージセンサは、CCD(Couple Charged Device)イメージセンサ又はCMOS(Complementary Metal Oxide Semiconductor)イメージセンサを含む。カメラ52によって撮像された画像は、フレームレートに応じて、単位時間あたりに複数の画像を含む。
【0046】
カメラ52は、フォークリフト1の周辺の画像を撮像可能である。カメラ52は、例えば、数10[m]程度の範囲を撮像可能である。カメラ52は、フォークリフト1に複数が配置されている。カメラ52の少なくとも1つは、運搬物を識別するために、運搬物のフォーク挿し込み穴と近い高さに配置されている。カメラ52の少なくとも1つは、例えば、地面上又は貨物車両の荷台上に配置された運搬物のフォーク挿し込み穴と近い高さに配置される。本実施形態では、カメラ52は、カメラ521、カメラ522、カメラ523、及びカメラ524を備える。カメラ521、カメラ522、カメラ523、及びカメラ524の区別を特に要しない場合、単にカメラ52という。カメラ52は、撮像した画像データを物体検出データとしてコントローラ60へ送信する。
【0047】
カメラ521は、フォークリフト1の前方の右側方を撮像する。カメラ521は、フェンダ19Rより上方に配置されている。カメラ521は、運転室20の前下方の右側方に配置されている。本実施形態では、カメラ521は、3次元センサ511の上方に配置されている。
【0048】
カメラ522は、フォークリフト1の前方の左側方を撮像する。カメラ522は、フェンダ19Lより上方に配置されている。カメラ522は、運転室20の前下方の左側方に配置されている。本実施形態では、カメラ522は、3次元センサ512の上方に配置されている。
【0049】
カメラ523は、フォークリフト1の積荷時に、フォークリフト1の前方を撮像する。カメラ523は、フォークリフト1の積荷時に、フォーク13上の積荷によって前方の撮像範囲が遮られない位置に配置されている。カメラ523は、フェンダ19L上に配置されている。本実施形態では、カメラ523は、3次元センサ513の上方に配置されている。
【0050】
カメラ524は、フォークリフト1の空荷時に、フォークリフト1の前方中央の下方を撮像する。カメラ524は、フォークリフト1の空荷時に、フォーク13によって前方の撮像範囲が遮られない位置に配置されている。カメラ524は、フォークリフト1の空荷時に、地面等に置かれた運搬物のフォーク挿し込み穴、又は、他の運搬物の上段に積まれた運搬物のフォーク挿し込み穴を撮像可能な位置に配置されている。カメラ524は、車体10の前方中央部の下方に配置されている。カメラ524は、フォーク13の後部に配置され車体10に対してフォーク13を固定し支持する支持部131の中央部の下方に配置されている。カメラ524は、フォーク13とともに昇降する。本実施形態では、カメラ524は、3次元センサ514の上方に配置されている。
【0051】
<フォークリフトの制御システム>
図3は、実施形態に係るフォークリフトの構成の一例を示す機能ブロック図である。フォークリフト1の制御システム70は、3次元センサ51と、コントローラ60とを備える。コントローラ60は、フォークリフト1の周辺の探索範囲内に存在する物体から対象を識別する。コントローラ60は、物体検出センサとしての3次元センサ51から物体検出データを取得可能である。コントローラ60は、CPU(Central Processing Unit)のような数値演算装置(プロセッサ)を含む。
【0052】
図4は、実施形態に係るコンピュータシステムの一例を示すブロック図である。コントローラ60は、コンピュータシステム1000を含む。コンピュータシステム1000は、CPUのようなプロセッサ1001と、ROMのような不揮発性メモリ及びRAMのような揮発性メモリを含むメインメモリ1002と、ストレージ1003と、入出力回路を含むインターフェース1004とを有する。上述のコントローラ60の機能は、プログラムとしてストレージ1003に記憶されている。プロセッサ1001は、プログラムをストレージ1003から読み出してメインメモリ1002に展開し、プログラムに従って上述の処理を実行する。なお、プログラムは、ネットワークを介してコンピュータシステム1000に配信されてもよい。
【0053】
本実施形態では、コントローラ60は、センサデータ取得部61と、画像取得部62と、記憶部63と、判定部64と、決定部65と、識別部66と、表示制御部69とを備える。判定部64及び決定部65は、必須の構成ではない。
【0054】
センサデータ取得部61は、3次元センサ51から物体検出データを取得する。センサデータ取得部61が取得した物体検出データは、例えば、複数の検出点からなる点群である。
【0055】
画像取得部62は、カメラ52が撮像した画像の画像データを取得する。画像取得部62が取得した画像データは、フレームごとの画像データである。
【0056】
記憶部63は、RAM、ROM、フラッシュメモリ、及びハードディスクドライブの少なくとも一つを含む。記憶部63は、コントローラ60の処理で使用するデータ等を記憶する。
【0057】
記憶部63は、対象を識別するための対象辞書データ、及びフォークリフト1の車体座標系の原点を基準とした探索範囲を記憶する。本実施形態では、記憶部63は、第1探索範囲と、第1探索範囲と異なる第2探索範囲とを記憶する。第1探索範囲と第2探索範囲との区別を特に要しない場合、単に探索範囲という。
【0058】
探索範囲について説明する。フォークリフト1は、対象に正対するための自動操舵制御を行う場合、フォークリフト1の最大曲率等に応じて、切り返しなしで正対できる範囲が限定される。このため、3次元センサ51で検出できる範囲内の全ての対象を識別した場合、切り返しなしで正対ができない対象が含まれることがあり、自動操舵制御を開始しても正対が困難なおそれがある。また、自動制御機能の実行時、複数の対象が識別された場合、オペレータは、複数の対象から正対したい対象を選択する手間が増える。このように、3次元センサ51で検出できる範囲内の対象を全て識別することは、処理負荷の増大だけでなく、利便性の低下を招く。そこで、フォークリフト1が対象に対して切り返しなしで正対可能な範囲に応じて探索範囲を限定する。これにより、自動制御機能の実行時の処理負荷の増加を防ぎ、正対できない対象や複数の対象をオペレータに提示しないようにできる。
【0059】
図5は、実施形態に係る対象を探索する第1探索範囲110を示す模式図である。第1探索範囲110は、フォークリフト1の空荷時に、運搬物200を探索する探索範囲である。第1探索範囲110は、矩形形状である。第1探索範囲110は、前後方向と平行な第1辺110aと、左右方向と平行な第2辺110bを有する。第1探索範囲の第1辺110aの長さは、Lyである。第1探索範囲110の第2辺110bの長さは、Lxである。
【0060】
第1探索範囲110は、フォークリフト1が対象に対して切り返しなしで正対できる位置に設定される。本実施形態では、第1探索範囲110は、フォークリフト1の車体座標の原点を基準にして、左右方向(
図5では左方)に距離Rx離間した位置に設定される。第1探索範囲110は、フォークリフト1の車体座標の原点を基準にして、第1辺110aの中点が前方に距離Ry離間した位置に設定される。第1探索範囲110は、フォークリフト1の車体座標の原点から距離Rx及び距離Ry離間した位置と、フォークリフト1近傍側(
図5では右側)の第1辺110aと第1辺110aの垂直二等分線との交点の位置とが一致するように設定される。フォークリフト1の車体座標系の原点とは、例えば、前輪11の回転軸と車体10の幅方向中心を通る軸の交点である。フォークリフト1は、車体座標系の原点から左右方向に距離Rx以上、かつ、車体座標の原点から前方に距離Ry以上離間して位置する対象に対して、切り返しなしで正対可能である。
【0061】
本実施形態においては、第1探索範囲110の第1辺110aの長さは、対象である運搬物の正面の幅寸法と等しい。運搬物の正面とは、フォークリフト1が運搬物を取り上げる際に正対する面である。第1探索範囲110の第1辺の長さLyを運搬物の幅と同じとすることで、前後方向に並んだ複数の運搬物のうち1つの運搬物のみが第1探索範囲に入る。このため、複数の運搬物から1つの運搬物のみを識別することができる。本実施形態においては、第1探索範囲110の第2辺110bの長さは、第1辺よりも長く、第1探索範囲110は、長方形状である。
【0062】
図6は、実施形態に係る対象を探索する第2探索範囲111を示す模式図である。第2探索範囲111は、フォークリフト1の積荷時に、荷置きスペースを探索する探索範囲である。第2探索範囲111は、矩形形状である。第2探索範囲111は、前後方向と平行な第1辺111aと、左右方向と平行な第2辺111bを有する。第2探索範囲111の第1辺111aの長さは、3Ly+2Cyである。第2探索範囲111の第2辺111bの長さは、Lxである。
【0063】
第2探索範囲111は、フォークリフト1が対象に対して切り返しなしで正対できる位置に設定される。本実施形態では、第2探索範囲111は、フォークリフト1の車体座標の原点を基準にして、左右方向(
図6では左方)に距離Rx離間した位置に設定される。第2探索範囲111は、フォークリフト1の車体座標の原点を基準にして、第1辺111aの中点が前方に距離Ry離間した位置に設定される。第2探索範囲111は、フォークリフト1の車体座標の原点から距離Rx及び距離Ry離間した位置と、フォークリフト1近傍側(
図6では右側)の第1辺111aと第1辺111aの垂直二等分線との交点の位置とが一致するように設定される。
【0064】
本実施形態においては、第2探索範囲111の第1辺111aの長さは、第1探索範囲110の第1辺110aの長さよりも長い。
図6に示す例では、第2探索範囲111は、領域C、領域F、及び領域Bを含む。領域C、領域F、及び領域Bの前後方向の長さは、Lyである。領域C、領域F、及び領域Bのそれぞれの前後方向の長さは、第1探索範囲110の第1辺110aの長さと等しい。領域Cと領域Fとの間隔、及び領域Fと領域Bとの間隔は、Cyである。Cyは、例えば、運搬物を隣接して載置する場合に必要な間隔である。領域Cは、
図6に示す位置のフォークリフト1が切り返しなしで正対可能な範囲である。領域Bは、
図6に示す位置のフォークリフト1が切り返しなしで正対可能な範囲よりも前方に位置する。領域Bは、領域Cよりも前方に位置する。領域Fは、
図6に示す位置のフォークリフト1が切り返しなしで正対可能な範囲よりも後方に位置する。領域Fは、領域Cよりも後方に位置する。本実施形態においては、第2探索範囲111の第1辺111aの長さは、第2辺111bよりも長く、第2探索範囲111は、長方形状である。
【0065】
判定部64は、作業機負荷センサ37からの負荷データに基づいて、フォーク13上の積荷の有無を判定する。より詳しくは、判定部64は、作業機負荷センサ37からの負荷データから、作業機2にかかる負荷が閾値以上である場合、フォーク13上に積荷があると判定する。判定部64は、作業機負荷センサ37からの負荷データから、フォーク13にかかる負荷が閾値未満である場合、フォーク13上に積荷がないと判定する。
【0066】
本実施形態では、判定部64は、3次元センサ514からの物体検出データに基づいて、フォーク13上の積荷の有無を判定してもよい。より詳しくは、判定部64は、3次元センサ514からの物体検出データが前方1m程度の視界が遮られていることを示す場合、フォーク13上に積荷があると判定する。判定部64は、3次元センサ514からの物体検出データが前方の視界が遮られていないことを示す場合、フォーク13上に積荷がないと判定する。
【0067】
決定部65は、作業機負荷センサ37からの負荷データに基づいて、識別する対象を決定する。より詳しくは、決定部65は、判定部64の判定結果からフォーク13上に積荷がある場合とない場合とで、識別する対象をそれぞれ決定する。言い換えると、決定部65は、判定部64の判定結果から、積荷時と空荷時とで、識別する対象をそれぞれ決定する。
【0068】
本実施形態では、決定部65は、判定部64によってフォーク13上に積荷がないと判定した場合、運搬物を識別する対象として決定してもよい。決定部65は、判定部64によってフォーク13上に積荷がないと判定された場合、運搬物を荷取り作業を自動で行う対象として決定してもよい。
【0069】
本実施形態では、決定部65は、判定部64によってフォーク13上に積荷があると判定した場合、荷置きスペースを識別する対象として決定してもよい。決定部65は、判定部64によってフォーク13上に積荷があると判定した場合、荷置きスペースを荷置き作業を自動で行う対象として決定してもよい。
【0070】
本実施形態では、決定部65は、判定部64によってフォーク13上に積荷があると判定された場合、貨物車両の荷台を識別する対象として決定してもよい。決定部65は、判定部64によってフォーク13上に積荷があると判定した場合、貨物車両の荷台を荷置き作業を自動で行う対象として決定してもよい。
【0071】
本実施形態では、決定部65は、判定部64によってフォーク13上に積荷があると判定された場合、操作部27からの操作信号に基づいて、識別する対象を決定してもよい。より詳しくは、決定部65は、判定部64によってフォーク13上に積荷があると判定された場合、操作部27からの操作信号に基づいて、荷置きスペースを荷置き作業を自動で行う対象として決定してもよい。
【0072】
識別部66は、物体検出センサとしての3次元センサ51からの物体検出データに基づいて、探索範囲内に存在する物体から対象を識別する。本実施形態では、識別部66は、物体検出センサとしての3次元センサ51からの物体検出データに基づいて、探索範囲内に存在する、決定部65によって決定された対象を識別する。識別部66は、例えば、判定部64によってフォーク13上に積荷がないと判定された場合、物体検出データから運搬物を識別する。識別部66は、例えば、判定部64によってフォーク13上に積荷があると判定された場合、物体検出データから荷置きスペースを識別する。識別部66は、例えば、判定部64によってフォーク13上に積荷があると判定された場合、物体検出データから貨物車両の荷台を識別する。
【0073】
まず、識別部66による運搬物の識別について説明する。識別部66は、物体検出データから、探索範囲内に存在する運搬物を識別する。
【0074】
図7は、実施形態に係る運搬物を識別する方法の一例を示す概略図である。
図7に示す運搬物は、例えば、箱形状のパレットである。(a1)は、運搬物に3次元センサ51からレーザ光を照射して得られた物体検出データである点群を示す。(a2)は、(a1)の点群から推定した平面を網掛けして示す。平面は、点群が示す、3次元センサ51と物体の表面に規定される複数の検出点のそれぞれとの相対位置に基づいて推定される。推定された平面は、フォークリフト1が運搬物を取り上げる際にフォークリフト1と正対する面である。(a3)は、(a2)を上下方向視(平面視)に視点を変換した図である。(a3)において、(a2)で推定した平面を破線で示す。(a3)では、(a2)で推定した平面より左方に点群が表れている。楕円で囲んだ点群は、(a2)で推定した平面を通過した点群を示す。言い換えると、楕円で囲んだ点群は、運搬物のフォーク挿し込み穴を通過した点群である。(a4)は、推定した平面と、平面を通過した点群と3次元センサ51の座標系基準とを結ぶ直線との交点を求めた図である。(a5)は、(a4)で求めた交点の位置に点群を補完した図である。(a6)は、推定した平面を正面から見た二値画像に変換した図である。四角で囲んだ部分は、(a5)で補完した点群を示す。識別部66は、記憶部63に記憶された対象辞書データを参照して、補完した点群がフォーク挿し込み穴を示す特徴部であるか否かを判定し、運搬物を識別する。
【0075】
例えば、運搬物を一時保管しておく施設では、運搬物が隣接して載置されている。このため、3次元センサ51の物体検出データである点群から、各運搬物を独立した物体として識別することが難しい。しかしながら、各運搬物に設けられたフォーク挿し込み穴を識別することにより、隣接した運搬物群から1つの運搬物を識別することが可能である。
【0076】
次に、識別部66による荷置きスペースの識別について説明する。識別部66は、物体検出センサとしての3次元センサ51からの物体検出データから、識別された対象を基準として、基準から所定範囲内に存在する所定の大きさの空間を探索し、荷置きスペースを識別する。本実施形態では、識別部66は、物体検出データから、探索範囲内に存在する運搬物に基づいて、フォークリフト1が取り上げた運搬物を載置可能な荷置きスペースを識別する。より詳しくは、まず、識別部66は、探索範囲内に存在する運搬物を識別する。そして、識別部66は、識別した運搬物を基準として、基準の運搬物の周囲に存在する、所定の大きさの空間を探索する。言い換えると、探索部67は、識別した運搬物の周囲から、他の運搬物を載置可能な大きさの空間を探索する。
【0077】
図8は、実施形態に係る運搬物200の周囲に存在する荷置きスペースの位置を示す模式図である。運搬物の周囲とは、その運搬物に隣接する位置のことである。
図8に示すように、運搬物200の周囲は、運搬物200の前方、運搬物200の後方、運搬物200の右方、及び運搬物200の上方である。所定の大きさの空間とは、例えば、運搬物の寸法以上の大きさを有する空間である。識別部66は、探索範囲内の運搬物を識別し、識別した運搬物の周囲に存在する所定の大きさの空間に基づいて、荷置きスペース140を識別する。識別部66は、第2探索範囲111に位置する運搬物200を基準の運搬物として、第2探索範囲111から基準の運搬物200の周囲に存在する、他の運搬物を載置可能な大きさの空間を探索する。
【0078】
本実施形態では、識別部66は、3次元センサ51からの物体検出データを用いて対象の識別を行うが、これに限られない。例えば、他の実施形態においては、識別部66は、カメラ52が撮像した撮像画像から特徴量を抽出し、抽出した特徴量と対象辞書データとに基づいて、撮像画像から対象を識別してもよい。対象の識別方法は、例えば、パターンマッチング、機械学習に基づく識別処理を行ってもよい。
【0079】
本実施形態では、識別部66は、判定部64の判定結果に基づいて、探索範囲を変化させて対象を識別してもよい。より詳しくは、識別部66は、判定部64の判定結果から積荷がある場合とない場合とで、第1探索範囲と第2探索範囲とを切り換えて対象を識別してもよい。言い換えると、識別部66は、判定部64の判定結果から、積荷時と空荷時とで、第1探索範囲と第2探索範囲とを切り換えて対象を識別してもよい。
【0080】
本実施形態では、識別部66は、判定部64の判定結果に基づいて、第1探索範囲と第2探索範囲とを切り換えて対象を識別してもよい。より詳しくは、識別部66は、判定部64によってフォーク13上に積荷がないと判定された場合、第1探索範囲内に存在する物体から対象を識別する。識別部66は、判定部64によってフォーク13上に積荷があると判定された場合、第2探索範囲内に存在する物体から対象を識別する。
【0081】
表示制御部69は、表示装置26に画像を表示させる画像信号を出力する。本実施形態では、表示制御部69は、識別部66によって識別された対象を、カメラ52によって撮像された撮像画像に重畳して表示させる画像信号を出力する。より詳しくは、表示制御部69は、識別部66の識別結果に基づいて、カメラ52によって撮像された撮像画像に、識別した対象の位置に対象の形状を示す想像線を重畳して表示装置26に表示させる画像信号を出力する。
【0082】
表示制御部69は、例えは、カメラ52によって撮像された撮像画像に、識別した運搬物を示す枠線を重畳して表示装置26に表示させる画像信号を出力する。表示制御部69は、例えは、カメラ52によって撮像された撮像画像に、識別した荷置きスペースに載置される運搬物を示す枠線を重畳して表示装置26に表示させる画像信号を出力する。
【0083】
図9は、実施形態に係る、運搬物を識別した場合における、表示装置26の表示の一例を示す模式図である。表示装置26の表示部160には、カメラ52によって撮像された画像に、識別部66によって識別された運搬物を示す枠線151を重畳させた画像が表示される。
図9に示すように、撮像画像の識別された運搬物の位置に枠線151を重畳表示させることにより、オペレータは識別された運搬物を認識できる。
【0084】
図10は、実施形態に係る、荷置きスペースを識別した場合における、表示装置26の表示の一例を示す模式図である。表示装置26の表示部160には、カメラ52によって撮像された画像に、識別部66によって識別された荷置きスペースに取りおろされる運搬物を示す枠線152を重畳させた画像が表示される。
図10に示すように、識別された荷置きスペースの位置に枠線152を重畳表示させることにより、オペレータは識別された荷置きスペースを認識できる。
【0085】
本実施形態では、表示制御部69は、表示装置26への出力を制御する。表示制御部69は、表示制御部69は、図示しないネットワークを介して、表示装置26へ画像を配信するように制御してもよい。
【0086】
<コントローラによる処理>
フォークリフト1の起動中に、対象の識別処理が開始されると、
図11及び
図12に示す処理が実行される。
【0087】
<基本処理>
図11は、実施形態に係るフォークリフトの制御方法の処理の一例を示すフローチャートである。コントローラ60は、対象を探索する(ステップST11)。より詳しくは、コントローラ60は、識別部66によって、物体検出センサとしての3次元センサ51からの物体検出データに基づいて、探索範囲内に存在する物体から対象を探索する。探索範囲内から探索する対象は、運搬物、荷置きスペース又は貨物車両の荷台である。探索範囲内から探索する対象は、
図12のフローチャートによって切り替えられる。コントローラ60は、ステップST12へ進む。
【0088】
コントローラ60は、対象が識別されたか否かを判定する(ステップST12)。より詳しくは、コントローラ60は、識別部66によって、物体検出データから、探索範囲内に存在する運搬物、荷置きスペース又は貨物車両の荷台が識別されたか否かを判定する。コントローラ60は、識別部66によって、物体検出データから、探索範囲内に存在する物体から対象が識別された場合(ステップST12でYes)、ステップST13へ進む。コントローラ60は、識別部66によって、物体検出データから、探索範囲内に存在する物体から対象が識別されていない場合(ステップST12でNo)、ステップST11の処理を再度実行する。
【0089】
コントローラ60は、識別した対象をオペレータが選択したか否かを判定する(ステップST13)。より詳しくは、コントローラ60は、操作部27からの選択操作を受信したか否かを判定する。コントローラ60は、操作部27からの選択操作を受信した場合(ステップST13でYes)、ステップST14へ進む。コントローラ60は、操作部27からの選択操作を受信しなかった場合(ステップST13でNo)、ステップST11の処理を再度実行する。
【0090】
コントローラ60は、選択した対象を荷役作業を行う目標として特定する(ステップST14)。コントローラ60は、ステップST15へ進む。
【0091】
コントローラ60は、車体座標系の原点から目標までの距離を検出する(ステップST15)。コントローラ60は、ステップST16へ進む。
【0092】
コントローラ60は、目標までの経路を生成する(ステップST16)。コントローラ60は、ステップST17へ進む。
【0093】
コントローラ60は、経路を追従するように制御する(ステップST17)。より詳しくは、コントローラ60は、経路を追従して走行するようにフォークリフト1を制御する。コントローラ60は、走行装置を制御する。本実施形態では、コントローラ60は、ステアリング制御弁24を介して、ステアリングシリンダ18を制御する。コントローラ60は、ステップST18へ進む。
【0094】
コントローラ60は、車両と目標とが正対したか否かを判定する(ステップST18)。コントローラ60は、車両と目標とが正対したと判定する場合(ステップST18でYes)、ステップST19へ進む。コントローラ60は、車両と目標とが正対したと判定しない場合(ステップST18でNo)、ステップST17の処理を再度実行する。
【0095】
コントローラ60は、車体座標系における目標基準点の位置を検出する(ステップST19)。より詳しくは、コントローラ60は、アプローチする対象の基準点である目標基準点の位置を検出する。コントローラ60は、ステップST20へ進む。
【0096】
コントローラ60は、作業機2の位置を検出する(ステップST20)。コントローラ60は、ステップST21へ進む。
【0097】
コントローラ60は、目標基準点の位置と作業機2の位置とが一致するように作業機2を制御する(ステップST21)。より詳しくは、コントローラ60は、目標基準点の位置に作業機2の位置が一致するように作業機2を制御する。コントローラ60は、作業機制御弁23を介して、リフトシリンダ15、チルトシリンダ16及びサイドシフトシリンダ17を制御する。コントローラ60は、ステップST22へ進む。
【0098】
コントローラ60は、目標基準点の位置と作業機2の位置とが一致したか否かを判定する(ステップST22)。コントローラ60は、目標基準点の位置と作業機2の位置とが一致したと判定する場合(ステップST22でYes)、処理を終了する。コントローラ60は、目標基準点の位置と作業機2の位置とが一致していないと判定した場合(ステップST22でNo)、ステップST21の処理を再度実行する。
【0099】
<識別対象切替処理>
図12は、実施形態に係るフォークリフトの制御方法の識別対象切替処理の一例を示すフローチャートである。
図12に示すフローチャートの処理は、
図11に示すフローチャートの実行前に実行される。
図12に示すフローチャートの処理は、識別対象を切り替える処理である。ステップST41からステップST43の処理は、荷取り制御ロジックである。ステップST51からステップST57の処理は、荷置き制御ロジックである。
【0100】
コントローラ60は、作業機負荷センサ37からの検出信号を受信する(ステップST31)。より詳しくは、コントローラ60は、作業機負荷センサ37から負荷データを受信する。コントローラ60は、ステップST32へ進む。
【0101】
コントローラ60は、積荷状態か否かを判定する(ステップST32)。より詳しくは、コントローラ60は、判定部64によって、作業機負荷センサ37からの負荷データに基づいて、フォーク13上の積荷の有無を判定する。コントローラ60は、積荷状態であると判定した場合(ステップST32でYes)、ステップST51へ進む。コントローラ60は、積荷状態でないと判定した場合(ステップST32でNo)、ステップST41へ進む。
【0102】
コントローラ60は、探索範囲内の運搬物を探索する(ステップST41)。より詳しくは、コントローラ60は、識別部66によって、物体検出センサとしての3次元センサ51からの物体検出データに基づいて、第1探索範囲110内に存在する運搬物を識別する。コントローラ60は、ステップST42へ進む。
【0103】
コントローラ60は、探索範囲内の運搬物を識別したか否かを判定する(ステップST42)。コントローラ60は、識別部66によって、第1探索範囲110内に運搬物が識別されたと判定した場合(ステップST42でYes)、ステップST43へ進む。コントローラ60は、識別部66によって、第1探索範囲110内に運搬物が識別されていないと判定した場合(ステップST42でNo)、ステップST41の処理を再度実行する。
【0104】
コントローラ60は、識別された運搬物が荷役作業を行う目標として決定されたか否かを判定する(ステップST43)。より詳しくは、コントローラ60は、操作部27から、識別した運搬物を荷役作業を行う目標とする決定操作を受信したか否かを判定する。コントローラ60は、識別した運搬物が荷役作業を行う目標として決定されたと判定した場合(ステップST43でYes)、ステップST44へ進む。コントローラ60は、識別した運搬物が荷役作業を行う目標として決定されていないと判定した場合(ステップST43でNo)、ステップST41の処理を再度実行する。
【0105】
コントローラ60は、荷取り制御に移行する(ステップST44)。コントローラ60は、このフローチャートの処理を終了する。この後、
図11に示すフローチャートのステップST12以降の処理が実行される。
【0106】
コントローラ60は、探索範囲を変更する(ステップST51)。より詳しくは、コントローラ60は、第2探索範囲111を探索範囲にする。コントローラ60は、ステップST52へ進む。
【0107】
コントローラ60は、探索範囲内の運搬物を探索する(ステップST52)。より詳しくは、コントローラ60は、識別部66によって、物体検出センサとしての3次元センサ51からの物体検出データに基づいて、第2探索範囲111内に存在する運搬物を探索する。コントローラ60は、ステップST53へ進む。
【0108】
コントローラ60は、探索範囲内の運搬物を識別したか否かを判定する(ステップST53)。コントローラ60は、識別部66によって、第2探索範囲111内に運搬物が識別されたと判定した場合(ステップST53でYes)、ステップST54へ進む。コントローラ60は、識別部66によって、第2探索範囲111内に運搬物が識別されていないと判定した場合(ステップST53でNo)、ステップST52の処理を再度実行する。
【0109】
コントローラ60は、識別した運搬物の周囲の空間を探索する(ステップST54)。より詳しくは、コントローラ60は、識別部66によって、物体検出センサとしての3次元センサ51からの物体検出データに基づいて、ステップST52において識別した運搬物の周囲の空間を識別する。コントローラ60は、ステップST55へ進む。
【0110】
コントローラ60は、所定の大きさの空間を識別したか否かを判定する(ステップST55)。より詳しくは、コントローラ60は、識別部66によって所定の大きさの空間が識別されたか否かを判定する。コントローラ60は、所定の大きさの空間が識別されたと判定した場合(ステップST55でYes)、ステップST56へ進む。コントローラ60は、所定の大きさの空間が識別されていないと判定した場合(ステップST55でNo)、ステップST52の処理を再度実行する。
【0111】
コントローラ60は、識別した空間を荷置きスペースとして決定する(ステップST56)。より詳しくは、コントローラ60は、決定部65によって、識別した空間を荷置きスペースとして決定する。コントローラ60は、ステップST57へ進む。
【0112】
コントローラ60は、識別した荷置きスペースが荷役作業を行う目標として決定されたか否かを判定する(ステップST57)。より詳しくは、コントローラ60は、操作部27から、識別した荷置きスペースを荷役作業を行う目標とする決定操作を受信したか否かを判定する。コントローラ60は、識別した荷置きスペースが荷役作業を行う目標として決定されたと判定した場合(ステップST57でYes)、ステップST58ヘ進む。コントローラ60は、識別した荷置きスペースが荷役作業を行う目標として決定されていないと判定した場合(ステップST57でNo)、ステップST52の処理を再度実行する。
【0113】
コントローラ60は、荷置き制御に移行する(ステップST58)。コントローラ60は、このフローチャートの処理を終了する。この後、
図11に示すフローチャートのステップST12以降の処理が実行される。
【0114】
<効果>
以上説明したように、本実施形態では、3次元センサ51からの物体検出データに基づいて、探索範囲内に存在する物体から対象を識別する。本実施形態によれば、探索範囲内に限定して識別処理を行うことにより、処理負荷を軽減することができる。
【0115】
本実施形態では、フォークリフト1に対する探索範囲の相対的な位置が適切に設定されている。本実施形態では、探索範囲は、フォークリフト1が対象に対して切り返しなしで正対できる位置に設定される。本実施形態によれば、探索範囲から識別された対象は、フォークリフト1が切り返しなしで正対することができるため、利便性の低下を防ぐことができる。
【0116】
本実施形態では、作業機負荷センサ37からの負荷データに基づいて、識別する対象を決定する。本実施形態では、3次元センサ51からの物体検出データに基づいて、探索範囲内に存在する、決定された対象を識別する。本実施形態によれば、積荷の検出結果に応じて決定された対象を識別することができる。本実施形態では、オペレータは、識別する対象を決定する操作を行う必要がないので、作業効率を向上することができる。
【0117】
本実施形態では、作業機負荷センサ37からの負荷データに基づいて、フォーク13上の積荷の有無を判定する。本実施形態では、フォーク13上に積荷がないと判定された場合、運搬物を識別する対象として決定することができる。
【0118】
本実施形態では、フォーク13上に積荷があると判定された場合、オペレータによって操作される操作部27からの操作信号に基づいて、識別する対象を決定することができる。
【0119】
本実施形態では、フォーク13上に積荷があると判定された場合、荷置きスペースを識別する対象として決定することができる。
【0120】
本実施形態では、作業機負荷センサ37からの負荷データに基づいて、フォーク13上の積荷の有無を判定する。本実施形態では、積荷の有無の判定結果に基づいて、探索範囲を変化させて対象を識別することができる。本実施形態によれば、探索範囲を適切に変化させることができる。
【0121】
本実施形態では、積荷の有無の判定結果に基づいて、第1探索範囲と第2探索範とを切り換えて対象を識別することができる。
【0122】
本実施形態では、第1探索範囲110は、前後方向に平行な第1辺110aを有する矩形形状である。第1探索範囲110の第1辺110aの長さは、運搬物の正面の幅寸法に等しい。運搬物の正面とは、フォークリフト1が運搬物を取り上げる際に正対する面である。本実施形態は、探索範囲の第1辺110aの長さをフォークリフト1が運搬物を取り上げる際に正対する面の幅と同じとすることにより、運搬物が複数並んでいるときに1つの運搬物のみしか探索範囲に入らない。本実施形態は、運搬物がフォークリフト1の前後方向対して整列している場合は、フォークリフト1に対して手前側の運搬物のみが識別される。本実施形態によれば、運搬物が識別されると、常に荷役作業を行う候補が一意に定まる。本実施形態では、オペレータは、複数の対象からアプローチ先を選択する必要がないので、作業効率が向上する。このように、本実施形態は、自動制御機能の実行時、オペレータが複数の対象から正対したい対象を選択する手間を削減することができる。
【0123】
このように、本実施形態は、処理負荷の増大だけでなく、利便性の低下を抑えることができる。本実施形態は、自動制御機能の実行時の処理負荷の増加を防ぎ、正対できない対象や複数の対象がオペレータに提示されることを抑えることができる。
【0124】
本実施形態では、第2探索範囲111は、前後方向と平行な第1辺111aを有する矩形形状であり、第2探索範囲111の第1辺111aの長さは、運搬物の正面の幅寸法より長い。運搬物の正面とは、フォークリフト1が運搬物を取り上げる際に正対する面である。本実施形態によれば、第2探索範囲からは、複数の荷置きスペースを識別することができる。
【0125】
本実施形態では、カメラ52によって撮像された撮像画像に、識別した対象の位置に対象の形状を示す想像線を重畳して表示させることができる。
【0126】
<変形例>
図13は、変形例に係る遠隔で操作されるフォークリフトの構成の一例を示す機能ブロック図である。上述の実施形態においては、表示装置26は、運転室20に配置されているものとして説明したが、これに限定されない。
図13に示すように、表示装置26は、例えば、フォークリフト1から離れた、遠隔に位置する監視室等に配置されていてもよい。
【0127】
上述の実施形態においては、フォークリフト1の動力源21がエンジンであることとしたが、エンジンに限定されない。例えば、フォークリフト1の動力源21は、電力を供給するバッテリであってもよい。この場合、走行モータ22は、電動モータでもよい。
【0128】
上述の実施形態においては、走行モータ22がフォークリフト1を進行させるための駆動力を発生するとしたが、これに限定されない。例えば、フォークリフト1は、変速機を備え、変速機を介したエンジンの駆動力によってフォークリフト1を進行させてもよい。この場合、コントローラ60は、経路を追従して走行するようにエンジンと変速機を制御する。
【0129】
上述の実施形態においては、自動制御機能では、オペレータは、フォークリフト1のアクセル操作を行うこととしたが、これに限定されない。自動制御機能では、コントローラ60は、フォークリフト1の進行及び制動を制御してもよい。
【0130】
上述の実施形態においては、自動制御開始エリアまで、言い換えると、対象が識別されるまでは、フォークリフト1は、オペレータの操作によりマニュアルで移動するとしたが、これに限定されない。例えば、フォークリフト1は、自車位置を検出するために衛星測位システム(GNSS:Global Navigation Satellite System)等を備え、対象の位置情報を含む地図データと自車位置とを参照しながら目的の対象まで自動で走行してもよい。
【符号の説明】
【0131】
1…フォークリフト(荷役車両)、2…作業機、10…車体、11…前輪、12…後輪、13…フォーク、14…マスト、15…リフトシリンダ、16…チルトシリンダ、17…サイドシフトシリンダ、18…ステアリングシリンダ、19L…フェンダ、19R…フェンダ、20…運転室、21…動力源、22…走行モータ、23…作業機制御弁、24…ステアリング制御弁、26…表示装置、27…操作部、31…ステアリングホイール、32…作業機レバー、33…前後進切替レバー、34…アクセルペダル、35…車速センサ、36…ステアリング角センサ、37…作業機負荷センサ(負荷センサ)、51…3次元センサ(物体検出センサ)、52…カメラ、60…コントローラ、61…センサデータ取得部、62…画像取得部、63…記憶部、64…判定部、65…決定部、66…識別部、69…表示制御部、70…制御システム。