(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-10-10
(45)【発行日】2023-10-18
(54)【発明の名称】荷役システム
(51)【国際特許分類】
B66F 9/24 20060101AFI20231011BHJP
【FI】
B66F9/24 A
B66F9/24 Z
(21)【出願番号】P 2020130287
(22)【出願日】2020-07-31
【審査請求日】2022-11-17
(31)【優先権主張番号】P 2020065209
(32)【優先日】2020-03-31
(33)【優先権主張国・地域又は機関】JP
【国等の委託研究の成果に係る記載事項】(出願人による申告)国立研究開発法人農業・食品産業技術総合研究機構生物系特定産業技術研究支援センター「革新的技術開発・緊急展開事業(うち人工知能未来農業創造プロジェクト)」、産業技術力強化法第17条の適用を受ける特許出願
(73)【特許権者】
【識別番号】000003218
【氏名又は名称】株式会社豊田自動織機
(74)【代理人】
【識別番号】100105957
【氏名又は名称】恩田 誠
(74)【代理人】
【識別番号】100068755
【氏名又は名称】恩田 博宣
(72)【発明者】
【氏名】三田 達也
【審査官】太田 義典
(56)【参考文献】
【文献】特開平10-338497(JP,A)
【文献】特許第6265445(JP,B1)
【文献】特開平4ー64599(JP,A)
【文献】特開2017-178567(JP,A)
【文献】特開2020-70121(JP,A)
【文献】米国特許出願公開第2018/0089616(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B66F 9/00-11/04
(57)【特許請求の範囲】
【請求項1】
パレットの搬送を行う搬送車が停車する停車位置であって予め定められた停車位置が検出可能範囲に含まれるように設けられたセンサと、
フォークリフトと、
前記パレット、前記搬送車又はコンテナを移動目標とし、前記移動目標に前記フォークリフトを誘導するように構成された上位制御装置と、を備えた荷役システムであって、
前記フォークリフトは、
前記フォークリフトが用いられる環境を地図座標系での座標で表した環境地図を記憶するように構成された記憶装置と、
前記上位制御装置から送信された情報を受信可能に構成された受信部と、
前記受信部により受信した前記情報から得られる前記地図座標系の座標であって前記移動目標の座標に向けて前記フォークリフトを移動させる移動制御部と、を備え、
前記上位制御装置は、
前記センサの検出結果から前記地図座標系での前記移動目標の座標を得られる情報を導出する導出部と、
前記地図座標系での前記移動目標の座標を得られる情報を前記受信部に送信する送信部と、を備える荷役システム。
【請求項2】
前記上位制御装置は、前記地図座標系での前記移動目標の座標を得られる情報として前記地図座標系での前記移動目標の座標を導出する地図座標導出部を備える請求項1に記載の荷役システム。
【請求項3】
前記センサは、2つの固定構造物が前記検出可能範囲に含まれるように配置されており、
前記上位制御装置は、前記センサの検出結果から前記センサのセンサ座標系での前記移動目標の座標を導出するセンサ座標導出部を備え、
前記2つの固定構造物は、前記地図座標系の同一の座標軸上に位置するように設けられており、
前記2つの固定構造物のうちの一方は、前記地図座標系の原点に位置するように設けられており、
前記センサ座標導出部は、前記2つの固定構造物、及び前記移動目標それぞれの前記センサ座標系での座標を導出し、
前記地図座標導出部は、前記センサ座標系での前記2つの固定構造物の座標、及び前記センサ座標系での前記移動目標の座標を用いた三辺測量によって前記地図座標系での前記移動目標の座標を導出する請求項2に記載の荷役システム。
【請求項4】
前記センサは、カメラであり、
前記カメラは、前記2つの固定構造物のそれぞれに設けられた固定マーカー、及び前記移動目標に設けられたマーカーを撮像するように配置されており、
前記センサ座標導出部は、前記固定マーカーの前記センサ座標系での座標を前記固定構造物の前記センサ座標系での座標として導出し、前記マーカーの前記センサ座標系での座標を前記移動目標の前記センサ座標系での座標として導出する請求項3に記載の荷役システム。
【請求項5】
前記センサは、カメラであり、
前記上位制御装置は、教師データを学習器に入力して生成された学習済みモデルにより前記移動目標の前記センサのセンサ座標系での座標を導出し、
前記学習済みモデルは、前記移動目標を撮像した画像データに前記センサ座標系での前記移動目標の座標をラベルとして付与したデータを前記教師データとして生成されている請求項1に記載の荷役システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、荷役システムに関する。
【背景技術】
【0002】
操作者に操作されることなく自動で動作するフォークリフトとしては、例えば、特許文献1に記載されている。特許文献1に記載のフォークリフトは、車載カメラと、車載カメラの撮像により得られた画像データからパレットの位置や姿勢を検出する制御装置と、を備える。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
トラックなどの搬送車に積まれたパレットをフォークリフトによって別の場所や別の装置に搬送する場合、フォークリフトは搬送車に積まれたパレットをフォークに積載する荷取り作業を行う。搬送車によってパレットを別の場所に搬送する場合、フォークリフトは搬送車あるいは搬送車に連結されたコンテナにパレットを積載する荷積み作業を行う。特許文献1に記載のように自動で動作するフォークリフトに荷取り作業を行わせる場合、搬送車が停車する停車位置を予め設定しておくことが考えられる。停車位置に搬送車が到着すると、フォークリフトは停車位置に向けて移動する。フォークリフトが停車位置に近付き、車載カメラによってパレットが撮像されると、制御装置によってパレットの位置が検出される。制御装置は、パレットの位置を検出すると、パレットに向けてフォークリフトが移動するようにフォークリフトの制御を行う。このように、停車位置を定めている場合であっても、搬送車に積まれたパレットの位置は不定であるため、フォークリフトが停車位置に近付かないとパレットの位置を検出することができない。自動で動作するフォークリフトに荷積み作業を行わせる場合であっても、搬送車が停車する停車位置を予め設定しておくことが考えられる。フォークリフトが停車位置に近付くと、車載カメラによって搬送車及びコンテナの少なくともいずれかが撮像される。制御装置は、搬送車及びコンテナのいずれかを移動目標とし、移動目標の位置を検出する。このように、フォークリフトが荷積み作業を行う場合であっても、フォークリフトが停車位置に近付かないと搬送車の位置を検出することができない。
【0005】
本発明の目的は、フォークリフトを移動目標に誘導することができる荷役システムを提供することにある。
【課題を解決するための手段】
【0006】
上記課題を解決する荷役システムは、パレットの搬送を行う搬送車が停車する停車位置であって予め定められた停車位置が検出可能範囲に含まれるように設けられたセンサと、フォークリフトと、前記パレット、前記搬送車又はコンテナを移動目標とし、前記移動目標に前記フォークリフトを誘導するように構成された上位制御装置と、を備えた荷役システムであって、前記フォークリフトは、前記フォークリフトが用いられる環境を地図座標系での座標で表した環境地図を記憶するように構成された記憶装置と、前記上位制御装置から送信された情報を受信可能に構成された受信部と、前記受信部により受信した前記情報から得られる前記地図座標系の座標であって前記移動目標の座標に向けて前記フォークリフトを移動させる移動制御部と、を備え、前記上位制御装置は、前記センサの検出結果から前記地図座標系での前記移動目標の座標を得られる情報を導出する導出部と、前記地図座標系での前記移動目標の座標を得られる情報を前記受信部に送信する送信部と、を備える。
【0007】
停車位置に搬送車が停車すると、上位制御装置は、センサの検出結果から、地図座標系での移動目標の座標を得られる情報を導出する。上位制御装置が地図座標系での移動目標の座標を得られる情報をフォークリフトに送信することで、フォークリフトは地図座標系での移動目標の座標に向けて移動する。移動目標を検出できるようにセンサを設けて、上位制御装置で地図座標系での移動目標の座標を得られる情報を導出することで、上位制御装置を用いてフォークリフトを移動目標に誘導することができる。
【0008】
上記課題を解決する荷役システムは、前記上位制御装置は、前記地図座標系での前記移動目標の座標を得られる情報として前記地図座標系での前記移動目標の座標を導出する地図座標導出部を備えていてもよい。
【0009】
上記荷役システムについて、前記センサは、2つの固定構造物が前記検出可能範囲に含まれるように配置されており、前記上位制御装置は、前記センサの検出結果から前記センサのセンサ座標系での前記移動目標の座標を導出するセンサ座標導出部を備え、前記2つの固定構造物は、前記地図座標系の同一の座標軸上に位置するように設けられており、前記2つの固定構造物のうちの一方は、前記地図座標系の原点に位置するように設けられており、前記センサ座標導出部は、前記2つの固定構造物、及び前記移動目標それぞれの前記センサ座標系での座標を導出し、前記地図座標導出部は、前記センサ座標系での前記2つの固定構造物の座標、及び前記センサ座標系での前記移動目標の座標を用いた三辺測量によって前記地図座標系での前記移動目標の座標を導出してもよい。
【0010】
上記荷役システムについて、前記センサは、カメラであり、前記カメラは、前記2つの固定構造物のそれぞれに設けられた固定マーカー、及び前記移動目標に設けられたマーカーを撮像するように配置されており、前記センサ座標導出部は、前記固定マーカーの前記センサ座標系での座標を前記固定構造物の前記センサ座標系での座標として導出し、前記マーカーの前記センサ座標系での座標を前記移動目標の前記センサ座標系での座標として導出してもよい。
【0011】
上記荷役システムについて、前記センサは、カメラであり、前記上位制御装置は、教師データを学習器に入力して生成された学習済みモデルにより前記移動目標の前記センサのセンサ座標系での座標を導出し、前記学習済みモデルは、前記移動目標を撮像した画像データに前記センサ座標系での前記移動目標の座標をラベルとして付与したデータを前記教師データとして生成されていてもよい。
【発明の効果】
【0012】
本発明によれば、フォークリフトを移動目標に誘導することができる。
【図面の簡単な説明】
【0013】
【
図1】第1実施形態における荷役システムの概略図、及び荷役システムが用いられる作業場の模式図。
【
図2】停車位置に停車しているトラックを示す側面図。
【
図4】フォークリフトの一部を破断して示す斜視図。
【
図5】第1実施形態における荷役システムの概略構成図。
【
図6】荷取り作業を行う際のトラックとフォークリフトとの位置関係を示す図。
【
図7】第1実施形態における荷役システムで行われる制御を示す相互作用図。
【
図8】パレットの地図座標を導出する際に上位制御装置が行う処理を説明するための図。
【
図9】学習済みモデルを生成する際に学習器に入力される画像データを示す図。
【
図10】第3実施形態における荷役システムの概略図、及び荷役システムが用いられる作業場の模式図。
【
図11】移動目標であるコンテナを模式的に示す斜視図。
【
図13】第3実施形態における荷役システムの概略構成図。
【
図14】レーザー距離計の配置位置を説明するための図。
【
図15】第3実施形態における荷役システムで行われる制御を示す相互作用図。
【
図16】コンテナにレーザーを照射した際に得られる照射点の一例を示す図。
【
図17】縁照射点を抽出するために上位制御装置が行う処理を説明するための図。
【発明を実施するための形態】
【0014】
(第1実施形態)
以下、荷役システムの第1実施形態について説明する。以下の説明において、上下とは鉛直方向での上下を示す。
【0015】
図1に示すように、荷役システムCSは、フォークリフト10と、カメラ60と、上位制御装置70と、を備える。フォークリフト10は、工場、港湾、空港、商業施設などのパレットPを搬送する必要のある作業場で使用される。フォークリフト10は、トラックTに積まれたパレットPをフォークリフト10に積載する荷取り作業を行った後に、パレットPを別の場所や別の装置まで搬送する。トラックTの停車位置A1は、予め定められている。フォークリフト10は、荷取り位置A2まで移動した後に、荷取り作業を行う。荷取り位置A2は、荷取り作業を行う対象となるパレットPの正面位置である。
【0016】
作業場には、停車位置A1を間に挟んで2つの柱Pi1,Pi2が設けられている。なお、2つの柱Pi1,Pi2が停車位置A1を間に挟んでいるとは、水平方向のうち2つの柱Pi1,Pi2が並ぶ方向に直交する方向から見て、2つの柱Pi1,Pi2が停車位置A1を間に挟んでいることを意味する。2つの柱Pi1,Pi2は、作業場に元々備わっている既設構造物である。2つの柱Pi1,Pi2は、固定構造物である。固定構造物とは、時間経過によって位置が変わらない、あるいは、変わりにくい構造物である。2つの柱Pi1,Pi2は、例えば、軒を支持する支柱である。停車位置A1は、2つの柱Pi1,Pi2の間に設定されていると捉えることもできる。なお、2つの柱Pi1,Pi2の間とは、水平方向のうち2つの柱Pi1,Pi2が並ぶ方向に直交する方向から見て、停車位置A1が2つの柱Pi1,Pi2の間に位置していることを意味する。
【0017】
2つの柱Pi1,Pi2のそれぞれには、固定マーカーMA1,MA2が設けられている。2つの柱Pi1,Pi2に設けられた固定マーカーMA1,MA2は、同一方向を向くように設けられている。固定マーカーMA1,MA2としては、2次元的に配列された複数の矩形又は複数のドットを含む識別画像であるARマーカーやQRコード(登録商標)、所定の周波数で発光している発光体によるマーカー、物体の画像そのものなど、種々のマーカーを用いることができる。固定マーカーMA1,MA2は、作業場での位置が変化しないマーカーである。以下の説明において、2つの柱Pi1,Pi2の一方を第1柱Pi1、他方を第2柱Pi2とし、第1柱Pi1に設けられた固定マーカーMA1を第1固定マーカーMA1、第2柱Pi2に設けられた固定マーカーMA2を第2固定マーカーMA2として説明を行う。
【0018】
図2に示すように、トラックTは、平ボディのトラックである。トラックTは、荷台TBと、側あおりSSと、後あおりRSと、タイヤT1と、を備える。荷台TBには、複数のパレットPが積まれている。トラックTは、荷台TBに積まれたパレットPを搬送する搬送車である。側あおりSSは、荷台TBの側部に設けられている。側あおりSSは、上下方向に回動可能である。後あおりRSは、荷台TBの後部に設けられている。後あおりRSは、上下方向に回動可能である。トラックTの走行中などには、側あおりSS及び後あおりRSによって荷台TBが囲まれている。フォークリフト10が荷取り作業を行う際には、側あおりSS及び後あおりRSは、下方に回動させられており、側あおりSS及び後あおりRSはパレットPに向かい合わない。即ち、フォークリフト10が荷取り作業を行う際には、側あおりSS及び後あおりRSは、フォークリフト10による荷取り作業を阻害しないように回動させられる。
【0019】
パレットPは、搬送物を収容する四角箱状の収容部Sと、収容部Sの四隅に設けられた脚部Lと、を備える。本実施形態のパレットPは、メッシュパレットである。なお、図示は省略しているが、収容部Sには搬送物が収容されている。パレットPには、マーカーMA3,MA4が設けられている。マーカーMA3,MA4は、1つのパレットP毎に2つずつ設けられている。同一のパレットPに設けられるマーカーMA3,MA4については、異なる模様のマーカーが用いられることが好ましい。また、荷台TBに搭載される各パレットPに設けられる全てのマーカーMA3,MA4が異なる模様であることがより好ましい。マーカーMA3,MA4としては、2次元的に配列された複数の矩形又は複数のドットを含む識別画像であるARマーカーやQRコード、所定の周波数で発光している発光体によるマーカー、物体の画像そのものなど、種々のマーカーを用いることができる。パレットPは、マーカーMA3,MA4がトラックTの車幅方向を向く態様で荷台TBに積まれている。
【0020】
荷役システムCSは、荷取り位置A2とは異なる位置A3にあるフォークリフト10をトラックTに積まれたパレットPの位置まで誘導することで、フォークリフト10を円滑にパレットPまで移動させるシステムである。第1実施形態では、パレットPが移動目標である。
【0021】
図3及び
図4に示すように、フォークリフト10は、車体11と、車体11の前下部に配置された駆動輪12と、車体11の後下部に配置された操舵輪13と、車体11の前方に設けられた荷役装置14と、車載カメラ45と、を備える。荷役装置14は、車体11の前部に設けられたマスト15と、バックレスト18と、バックレスト18に固定された一対のフォーク31と、リフトシリンダ20と、ティルトシリンダ21と、を備える。
【0022】
マスト15は、車体11に対して前後に傾動可能に支持されたアウタマスト16と、アウタマスト16に対して昇降可能なインナマスト17と、を備える。バックレスト18は、インナマスト17に固定されている。バックレスト18及びフォーク31は、インナマスト17とともに昇降する。リフトシリンダ20は、インナマスト17を昇降動作させる。ティルトシリンダ21は、マスト15を傾動動作させる。リフトシリンダ20及びティルトシリンダ21は、油圧シリンダである。フォーク31には、パレットPが積載される。フォーク31は、脚部L同士の間に差し込まれ、収容部Sの底を支持する。
【0023】
車載カメラ45は、フォークリフト10の車幅方向において2つのフォーク31の間に設けられている。車載カメラ45は、フォーク31とともに昇降するように設けられている。本実施形態において、車載カメラ45はバックレスト18に設けられている。車載カメラ45は、フォークリフト10の前方を撮像するように配置されている。車載カメラ45は、単眼カメラである。
【0024】
図5に示すように、フォークリフト10は、駆動機構51と、油圧機構52と、制御装置53と、補助記憶装置56と、環境センサ58と、通信部59と、を備える。
駆動機構51は、フォークリフト10を走行動作させるための部材であり、駆動輪12を駆動させるための走行用モータや、操舵輪13を操舵させるための操舵機構を含む。
【0025】
油圧機構52は、リフトシリンダ20及びティルトシリンダ21への作動油の給排を制御するための部材であり、ポンプを駆動させるための荷役モータや、コントロールバルブを含む。リフトシリンダ20への作動油の給排によってインナマスト17は昇降する。ティルトシリンダ21への作動油の給排によってマスト15は車体11の前後方向に対して傾動する。インナマスト17の昇降とはフォーク31の昇降ともいえる。マスト15の傾動とは、フォーク31の傾動ともいえる。
【0026】
制御装置53は、CPUやGPU等のプロセッサ54と、RAM及びROM等からなる記憶部55と、を備える。記憶部55は、処理をプロセッサ54に実行させるように構成されたプログラムコードまたは指令を格納している。記憶部55、すなわち、コンピュータ可読媒体は、汎用または専用のコンピュータでアクセスできるあらゆる利用可能な媒体を含む。制御装置53は、ASIC:Application Specific Integrated CircuitやFPGA:Field Programmable Gate Array等のハードウェア回路によって構成されていてもよい。処理回路である制御装置53は、コンピュータプログラムに従って動作する1つ以上のプロセッサ、ASICやFPGA等の1つ以上のハードウェア回路、或いは、それらの組み合わせを含み得る。
【0027】
制御装置53は、記憶部55に記憶されたプログラムに従い、駆動機構51及び油圧機構52を制御することで、フォークリフト10を動作させる。フォークリフト10は、操作者による操作が行われることなく、制御装置53による制御によって自動で動作するフォークリフトである。
【0028】
制御装置53には、車載カメラ45が接続されている。車載カメラ45の撮像により得られた画像データは、制御装置53に入力される。
補助記憶装置56は、制御装置53が読み取り可能な情報を記憶している。補助記憶装置56としては、例えば、ハードディスクドライブや、ソリッドステートドライブが用いられる。記憶部55に記憶されるプログラムコードや指令は、記憶部55に代えて補助記憶装置56に記憶されてもよい。
【0029】
記憶装置としての補助記憶装置56には、環境地図を示す情報が記憶されている。環境地図とは、フォークリフト10の用いられる環境の形状、広さなど、フォークリフト10の周辺環境の物理的構造に関する情報である。フォークリフト10の用いられる環境には、停車位置A1が含まれており、環境地図は停車位置A1の周辺環境を表しているともいえる。環境地図は、フォークリフト10の用いられる環境、即ち、
図1に示す作業場を地図座標系での座標で表したデータといえる。詳細に言えば、地図座標系は、原点を基準とした座標でフォークリフト10の用いられる環境の物理的構造に関する位置を表現したものである。本実施形態において、地図座標系の原点は第1固定マーカーMA1である。地図座標系の座標軸のうちX軸は、第1固定マーカーMA1と第2固定マーカーMA2の並ぶ方向に延びる軸であり、地図座標系の座標軸のうちY軸は水平方向のうちX軸に直交する方向に延びる軸である。第1固定マーカーMA1は、第1柱Pi1に設けられているため、地図座標系の原点は第1柱Pi1ともいえる。第2固定マーカーMA2は、第2柱Pi2に設けられているため、地図座標系の座標軸のうちX軸は、第1柱Pi1と第2柱Pi2の並ぶ方向に延びる軸ともいえる。前述した停車位置A1とは、地図座標系でのX座標が第1柱Pi1のX座標と第2柱Pi2のX座標との間となる位置といえる。なお、
図1及び
図8において、矢印Xは地図座標系のX軸、矢印Yは地図座標系のY軸を示している。
【0030】
第1固定マーカーMA1と第2固定マーカーMA2は、同一の座標軸上に位置している。2つの固定マーカーMA1,MA2は柱Pi1,Pi2に設けられているため、地図座標系での固定マーカーMA1,MA2の座標は、地図座標系での柱Pi1,Pi2の座標を表していると捉えることもできる。地図座標系は、フォークリフト10が使用される環境から固定マーカーMA1,MA2を設置し得る物理的構造を抽出し、この物理的構造に合わせた座標軸を設定した座標系といえる。本実施形態において地図座標系での第1固定マーカーMA1のY座標、及び第2固定マーカーMA2のY座標はともに0である。本実施形態では、説明の便宜上、X座標及びY座標のみについて説明するが、地図座標系は、2軸直交座標系に限られず、3軸直交座標系であってもよい。即ち、地図座標系は、座標軸としてX軸及びY軸に直交するZ軸を備えていてもよい。以下の説明において、地図座標系の座標を地図座標と称する。
【0031】
環境地図は、フォークリフト10が用いられる周辺環境を予め把握できていれば、予め補助記憶装置56に記憶されていてもよい。環境地図を予め補助記憶装置56に記憶する場合、建築物の壁、柱など位置の変化しにくい物の座標を環境地図として記憶する。環境地図は、SLAM:Simultaneous Localization and Mappingによるマッピングにより作成されてもよい。マッピングは、例えば、環境センサ58によって得られた座標から局所地図を作成し、この局所地図を自己位置に応じて組み合わせることによって行われる。マッピングにより環境地図を作成する場合であっても、第1固定マーカーMA1は原点、固定マーカーMA1,MA2の座標はX軸上の座標となるように予め設定しておく。
【0032】
制御装置53は、環境地図上でのフォークリフト10の自己位置を推定する自己位置推定を行いながら駆動機構51を制御することで、荷取り位置A2にフォークリフト10を移動させることが可能である。自己位置推定は、例えば、走行用モータの回転数を用いて自己移動量を推定するオドメトリを用いて行われてもよいし、ランドマークと環境地図とのマッチング結果から行われてもよい。また、これらを組み合わせて自己位置推定をしてもよい。フォークリフト10が用いられる環境が屋外であれば、制御装置53は、GNSS(Global Navigation Satellite System)を用いて自己位置を推定してもよい。GNSSは、GPS(Global Positioning System)、IRNSS(Indian Regional Navigational Satellite System)、及びQZSS(Quasi-Zenith Satellite System)を含む。なお、自己位置とは、車体11の一点を示す座標であり、例えば、車体11の水平方向の中央の座標である。
【0033】
環境センサ58は、フォークリフト10の後方に位置する物体と、フォークリフト10との相対位置を制御装置53に認識させることができるセンサである。環境センサ58としては、例えば、ミリ波レーダー、ステレオカメラ、LIDAR:Laser Imaging Detection and Rangingなどを用いることができる。環境センサ58は、自己位置推定を行う際のランドマークを検出するために設けられている。
【0034】
通信部59は、無線LAN、Zigbee(登録商標)、LPWA:Low Power Wide Areaなどの無線通信方式で通信を行うことが可能な通信機器である。受信部としての通信部59は、受信した無線信号を復調したデータを制御装置53に入力したり、制御装置53から入力されたデータを変調して無線信号として送信することが可能である。
【0035】
図1に示すように、センサとしてのカメラ60は、作業場の一定位置に配置されている。カメラ60は、停車位置A1、及び固定マーカーMA1,MA2を撮像するように配置されている。詳細に言えば、カメラ60は、停車位置A1にトラックTが停車している場合に、トラックTの荷台TBに積まれたパレットPの全てのマーカーMA3,MA4及び2つの固定マーカーMA1,MA2を撮像できるように配置されている。カメラ60は、単眼カメラである。カメラ60の検出可能範囲とは、カメラ60によって撮像可能な範囲である。カメラ60は、停車位置A1、及び固定マーカーMA1,MA2が検出可能範囲となるように配置されているといえる。
【0036】
図5に示すように、上位制御装置70は、制御部75と、指令通信部73と、補助記憶装置76と、入力装置77と、を備える。制御部75は、CPUやGPU等のプロセッサ71と、RAM及びROM等からなる記憶部72と、を備える。記憶部72は、処理をプロセッサ71に実行させるように構成されたプログラムコードまたは指令を格納している。記憶部72、すなわち、コンピュータ可読媒体は、汎用または専用のコンピュータでアクセスできるあらゆる利用可能な媒体を含む。制御部75は、ASICやFPGA等のハードウェア回路によって構成されていてもよい。処理回路である制御部75は、コンピュータプログラムに従って動作する1つ以上のプロセッサ、ASICやFPGA等の1つ以上のハードウェア回路、或いは、それらの組み合わせを含み得る。
【0037】
送信部としての指令通信部73は、無線LAN、Zigbee、LPWAなどの無線通信方式で通信を行うことが可能な通信機器である。指令通信部73は、受信した無線信号を復調したデータを制御部75に入力したり、制御部75から入力されたデータを変調して無線信号として送信することが可能である。指令通信部73は、通信部59が受信可能な無線信号を生成し、通信部59に送信する。
【0038】
上位制御装置70の制御部75には、カメラ60の画像データが入力される。上位制御装置70は、作業場に配置されていてもよいし、作業場とは異なる位置に配置されていてもよい。上位制御装置70が作業場とは異なる位置に配置される場合、カメラ60の画像データは、画像データを上位制御装置70に送信可能な通信部などによって上位制御装置70に送信される。
【0039】
補助記憶装置76は、例えば、ハードディスクドライブや、ソリッドステートドライブが用いられる。記憶部72に記憶されるプログラムコードや指令は、記憶部72に代えて補助記憶装置76に記憶されてもよい。また、補助記憶装置76は、フォークリフト10に搭載された補助記憶装置56と同様に、環境地図を記憶していてもよい。
【0040】
入力装置77は、操作者の操作を受け付けて、入力信号として出力する部材である。入力装置77としては、キーボード、物理ボタン、マイク、マウス、タッチパネルなどが挙げられる。
【0041】
図6に示すように、フォークリフト10による荷取り作業が行われる際には、制御装置53は、荷台TB、脚部L、及び収容部Sに囲まれる孔である差込孔IHとフォーク31の先端とが向かい合うようにフォーク31の揚高を上昇させる。そして、フォークリフト10を前進させることで、フォーク31を差込孔IHに差し込み、その後、フォーク31を上昇させることでフォーク31にパレットPを積載する。フォーク31を差込孔IHに差し込むためには、パレットPの位置を精度良く検出し、パレットPの正面にフォークリフト10を位置させることが好ましい。制御装置53及び上位制御装置70は、以下の制御を行うことで、フォークリフト10をパレットPまで移動させる。
【0042】
図7に示すように、ステップS1において、上位制御装置70は、カメラ60のカメラ座標系でのパレットPの座標を導出する。カメラ60のカメラ座標系は、カメラ60を原点とする座標系である。カメラ座標系は、例えば、光軸をY軸、水平方向のうちY軸に直交する方向をX軸とする座標系である。本実施形態では、X座標及びY座標のみについて説明するが、カメラ座標系は、2軸直交座標系に限られず、3軸直交座標系であってもよい。即ち、カメラ座標系は、座標軸としてX軸及びY軸に直交するZ軸を備えていてもよい。以下、カメラ60のカメラ座標系での座標をカメラ座標と称する。第1実施形態では、カメラ座標系がセンサ座標系である。
【0043】
上位制御装置70は、カメラ60から入力された画像データからマーカーMA3,MA4を画像認識する画像認識処理を行う。画像認識処理により画像データからマーカーMA3,MA4が抽出されると、上位制御装置70は、カメラ60により撮影されたマーカーMA3,MA4の画像を解析して、マーカーMA3,MA4の大きさからマーカーMA3,MA4のカメラ座標を導出する。本実施形態では、パレットP毎に2つのマーカーMA3,MA4を設けているため、パレットP毎に、2つのマーカーMA3,MA4のカメラ座標が導出される。マーカーMA3,MA4は、パレットPに設けられているため、マーカーMA3,MA4のカメラ座標は、パレットPのカメラ座標と捉えることができる。上位制御装置70は、同様の手法で、2つの固定マーカーMA1,MA2のカメラ座標を導出する。固定マーカーMA1,MA2のカメラ座標は、柱Pi1,Pi2のカメラ座標とみなすことができるため、上位制御装置70は、固定マーカーMA1,MA2のカメラ座標を柱Pi1,Pi2のカメラ座標として導出しているといえる。マーカーMA3,MA4のカメラ座標は、パレットPのカメラ座標とみなすことができるため、上位制御装置70は、マーカーMA3,MA4のカメラ座標をパレットPのカメラ座標として導出しているといえる。ステップS1の処理を行うことで、上位制御装置70はセンサ座標導出部として機能している。
【0044】
次に、ステップS2において、上位制御装置70は、パレットPの地図座標を導出する。上位制御装置70は、2つの固定マーカーMA1,MA2のカメラ座標、及びマーカーMA3,MA4のカメラ座標を用いた三辺測量によってパレットPの地図座標を導出する。パレットPの地図座標の導出は、各マーカーMA3,MA4の地図座標を導出することで行われる。以下、パレットPのマーカーMA3,MA4のうち1つのマーカーMA3を例に挙げて、マーカーMA3の地図座標を導出する方法について説明する。以下では、1つのマーカーMA3についての説明を行うが、同様の手法により上位制御装置70は、画像データ中のマーカーMA3,MA4の全てについて地図座標を導出する。
【0045】
図8に示すように、カメラ60を原点(0,0)とするカメラ座標系において、第1固定マーカーMA1のカメラ座標を(xa,ya)、第2固定マーカーMA2のカメラ座標を(xb,yb)、マーカーMA3のカメラ座標を(xc,yc)とする。第1固定マーカーMA1のカメラ座標(xa,ya)、第2固定マーカーMA2のカメラ座標(xb,yb)、及びマーカーMA3のカメラ座標(xc,yc)はステップS1で導出されている。このため、上位制御装置70は、第2固定マーカーMA2とマーカーMA3との間の距離a、第1固定マーカーMA1とマーカーMA3との間の距離b、第1固定マーカーMA1と第2固定マーカーMA2との間の距離cを導出可能である。即ち、上位制御装置70は、第1固定マーカーMA1、第2固定マーカーMA2、及びマーカーMA3を頂点とする三角形の各辺の長さを導出可能である。詳細にいえば、距離aは以下の(1)式、距離bは以下の(2)式、距離cは以下の(3)式によって導出可能である。
【0046】
【0047】
【0048】
【数3】
ここで、第1固定マーカーMA1のカメラ座標(xa,ya)からマーカーMA3のカメラ座標(xc,yc)までの距離bにおいて、2つの柱Pi1,Pi2同士が向かい合う方向に対する距離成分を距離xpとする。距離xpは、第1固定マーカーMA1、第2固定マーカーMA2、及びマーカーMA3を頂点とする三角形において、2つの固定マーカーMA1,MA2を結ぶ線分にマーカーMA3から垂線を下ろしたときの交点CPと第1固定マーカーMA1との間の距離ともいえる。第1固定マーカーMA1のカメラ座標(xa,ya)からマーカーMA3のカメラ座標(xc,yc)までの距離bにおいて、距離xpに直交する方向への距離成分を距離ypとする。距離ypは、交点CPとマーカーMA3との間の距離ともいえる。距離xp,ypは距離a,b,cを用いて導出することができる。詳細にいえば、距離xpは以下の(4)式、距離ypは以下の(5)式で導出できる。
【0049】
【0050】
【数5】
距離xp,ypは、第1固定マーカーMA1からマーカーMA3までの距離bを互いに直交する方向に分解した距離成分を表しており、座標(xp,yp)は、第1固定マーカーMA1を原点とする座標系でのマーカーMA3の座標と捉えることができる。また、距離xpは地図座標系のX軸方向の距離、距離ypは地図座標系のY軸方向の距離である。更に、地図座標系の原点を第1固定マーカーMA1としているため、座標(xp,yp)は、地図座標系でのマーカーMA3の座標と捉えることができる。
【0051】
ここで、(5)式で導出される距離yp=地図座標系でのY座標ypは、地図座標系において+座標なのか-座標なのかを考慮していない値なので、以下の(6)式からY座標ypが+座標なのか-座標なのかを判定する。なお、+座標か-座標かは、地図座標系での座標軸に対して座標がいずれの方向に位置しているかを表すものであり、座標軸毎に任意に設定することができる。例えば、
図8に示す環境を示す地図座標系において、原点よりもカメラ60側をY軸の-座標、反対を+座標とした場合、座標が+か-かによって地図座標系でのY軸方向において、マーカーMA3が原点よりもカメラ60側に位置しているか、原点よりもカメラ60から離れて位置しているかを表しているといえる。
【0052】
【数6】
(6)式により求められたL>0であれば、Y座標ypは+座標、L<0であればY座標ypは-座標である。従って、L<0の場合には、(5)式により導出されたY座標ypに-1を乗算する。
【0053】
なお、(4)式で導出される距離xp=地図座標系でのX座標xpについても、+座標なのか-座標なのかを考慮していない値であるが、地図座標系での第2固定マーカーMA2のX座標に合わせたX座標xpが導出されるようにすることで、+座標なのか-座標なのかを判定する必要がない。例えば、地図座標系のX軸において、原点よりも第2固定マーカーMA2側を+座標、反対を-座標としたとする。停車位置A1の関係上、地図座標系でのパレットPのX座標は必ず+座標となる。このため、(4)式により導出されたxpを地図座標系でのパレットPのX座標と捉えることができる。また、原点よりも第2固定マーカーMA2側を-座標にした場合には、パレットPのX座標は必ず-座標となるため、(4)式により導出されたX座標xpに-1を乗算すればよい。このように、地図座標系での第2固定マーカーMA2のX座標が+座標であればX座標xpも+座標、地図座標系での第2固定マーカーMA2のX座標が-座標であればX座標xpも-座標が導出されるようにすればよい。
【0054】
上位制御装置70は、同一のパレットPに設けられた2つのマーカーMA3,MA4の地図座標からパレットPの地図座標を導出する。上位制御装置70は、2つのマーカーMA3,MA4の地図座標のうちいずれかをパレットPの地図座標と捉えてもよいし、2つのマーカーMA3,MA4の地図座標の中心座標をパレットPの地図座標と捉えてもよい。いずれの場合であっても、マーカーMA3,MA4の地図座標は、パレットPの地図座標と紐付けられているため、パレットPの地図座標として捉えることができる。上位制御装置70は、2つのマーカーMA3,MA4の地図座標から、地図座標系でのパレットPの姿勢を導出することも可能である。例えば、上位制御装置70は、2つのマーカーMA3,MA4の地図座標を結ぶ線分の傾きから地図座標系でのパレットPの姿勢を導出することができる。上位制御装置70は、ステップS2の処理を行うことで地図座標導出部として機能している。本実施形態において、上位制御装置70は、地図座標系でのパレットPの座標を得られる情報として地図座標系でのパレットPの座標を導出する。上位制御装置70は、ステップS2の処理を行うことで導出部として機能している。
【0055】
図7に示すように、ステップS3において、上位制御装置70は、パレットPの地図座標を示す情報を含む指令を指令通信部73から送信する。指令には、パレットPの地図座標を示す情報に加えて、パレットPの姿勢を示す情報、3つのパレットPのうちいずれのパレットPを荷取り対象とするかを示す情報等、種々の情報が含まれていてもよい。即ち、指令には、フォークリフト10に荷取り作業を行わせる対象となるパレットPに関する情報が含まれる。指令は、フォークリフト10をパレットPの地図座標に移動させるための移動開始指令である。なお、上位制御装置70は、作業場に配備される複数のフォークリフト10に対して、個別に指令を与えることができる。
【0056】
ステップS11において、制御装置53は、上位制御装置70からの指令を受信すると、受信した指令に含まれるパレットPの地図座標へ向けてフォークリフト10を移動させる。制御装置53は、パレットPの地図座標を把握できるため、パレットPの地図座標、あるいは、パレットPの地図座標よりも若干手前の地図座標を目標地点としてフォークリフト10を移動させる。
図1に示すように、本実施形態において、制御装置53は、パレットPの地図座標に向けた経路TPを生成し、この経路TPに追従するようにフォークリフト10を移動させる。これにより、フォークリフト10は、荷取り作業の対象となるパレットPに向けて移動する。ステップS11の処理を行うことで、制御装置53は移動制御部として機能している。
【0057】
図7に示すように、ステップS12において、フォークリフト10が荷取り作業の対象となるパレットPに近付くと、制御装置53は車載カメラ45によってパレットPを検出する。車載カメラ45によるパレットPの検出は、例えば、上位制御装置70によって行われるカメラ60によるマーカーMA3,MA4の検出と同様の手法で行われる。即ち、制御装置53は、車載カメラ45から入力された画像データからマーカーMA3,MA4が抽出されると、マーカーMA3,MA4の画像を解析することで、車載カメラ45のカメラ座標系でのマーカーMA3,MA4の座標を導出することができる。車載カメラ45のカメラ座標系とは、車載カメラ45を原点とする座標系である。制御装置53は、車載カメラ45の撮像により得られた画像データからパレットPの座標を導出し、パレットPに合わせてフォークリフト10の位置を調整する。これにより、フォークリフト10は、荷取り作業を行う荷取り位置A2まで移動する。車載カメラ45の位置と自己位置との位置関係は一定であるため、制御装置53は、車載カメラ45のカメラ座標系でのパレットPの座標を用いて、フォークリフト10の位置を調整することができる。
【0058】
第1実施形態の作用について説明する。
停車位置A1にパレットPを積んだトラックTが停車すると、上位制御装置70は、パレットPの地図座標を導出し、導出されたパレットPの地図座標を含む指令をフォークリフト10に送信する。通信部59により制御装置53が指令を受信すると、フォークリフト10は荷取り作業の対象となるパレットPまで誘導される。
【0059】
仮に、上位制御装置70から、パレットPの地図座標が送信されないとする。停車位置A1は予め定まっているため、トラックTが停車位置A1に停車すると、フォークリフト10は停車位置A1まで移動する。停車位置A1は、予め定められているものの、パレットPの位置は不定であるため、制御装置53は、車載カメラ45によって撮像される画像データからパレットPの検出を行う。車載カメラ45によってパレットPを検出する場合、フォークリフト10がパレットPに近付かなければ制御装置53はパレットPを検出することができない。また、トラックTには複数のパレットPが搭載され得るので、車載カメラ45の画角は、複数のパレットPを撮像できるように広くする必要がある。結果として、フォークリフト10による作業効率が低下したり、パレットPの検出精度の低下などを招く。
【0060】
これに対し、本実施形態では、上位制御装置70でフォークリフト10をパレットPに誘導している。フォークリフト10が荷取り作業の対象となるパレットPに近付くと、制御装置53は、車載カメラ45によって撮像される画像データからパレットPを検出する。フォークリフト10とパレットPとの位置の調整は車載カメラ45によって撮像された画像データに基づき行われるため、上位制御装置70は、車載カメラ45によってパレットPが撮像できる程度の大まかな位置までフォークリフト10を誘導できればよい。このため、カメラ60や上位制御装置70によって検出されるパレットPの地図座標に高い位置精度は求められない。更に、フォークリフト10は、荷取り作業の対象となるパレットPに誘導されるため、トラックTに搭載され得る全てのパレットPを車載カメラ45によって撮像する必要がない。車載カメラ45として、狭角の高精度カメラを用いることができる。このため、フォークリフト10を円滑にパレットPまで移動させることによる作業効率の向上と、制御装置53によって検出されるパレットPの位置精度の向上とが図られる。
【0061】
第1実施形態の効果について説明する。
(1-1)停車位置A1を撮像できるカメラ60を設けて、カメラ60の画像データから上位制御装置70で地図座標系でのパレットPの座標を導出することで、上位制御装置70を用いてフォークリフト10をパレットPに誘導することができる。
【0062】
(1-2)上位制御装置70は、地図座標系でのパレットPの座標を得られる情報として地図座標系でのパレットPの座標を導出している。制御装置53が、地図座標系でのパレットPの座標を得られる情報から、地図座標系でのパレットPの座標を導出しなくてもよい。制御装置53の処理負荷が大きくなることを抑制することができる。
【0063】
(1-3)2つの柱Pi1,Pi2を地図座標系のX軸上に位置するようにし、第1柱Pi1を地図座標系の原点としている。これにより、三辺測量により、パレットPのカメラ座標からパレットPの地図座標を導出することができる。
【0064】
(1-4)第1固定マーカーMA1と第2固定マーカーMA2を地図座標系のX軸上に位置するようにし、第1固定マーカーMA1を地図座標系の原点としている。三辺測量によって導出されるマーカーMA3,MA4の座標は、第1固定マーカーMA1を原点とした座標系の座標といえる。固定マーカーMA1,MA2と地図座標系との対応関係を上記のようにすることで、第1固定マーカーMA1を原点とした座標系と地図座標系で原点及び座標軸とが一致する。従って、三辺測量によって導出されたマーカーMA3,MA4の座標が地図座標系の座標となる。三辺測量によって導出されたマーカーMA3,MA4の座標から、更に、マーカーMA3,MA4の地図座標を導出する場合に比べて制御装置53の行う処理が少なくなる。
【0065】
また、第1固定マーカーMA1と第2固定マーカーMA2を地図座標系のX軸上に位置するようにし、第1固定マーカーMA1を地図座標系の原点とすることで、地図座標系でのカメラ60の位置を把握できてなくてもパレットPの地図座標を導出することができる。また、カメラ60のカメラ座標系の座標軸と地図座標系の座標軸とを一致させなくてもパレットPの地図座標を導出することができる。従って、カメラ60を配置するときに、地図座標系でのカメラ60の位置や姿勢を把握しなくてもよいし、予め定められた位置にカメラ60を配置する必要もない。言い換えれば、固定マーカーMA1,MA2と地図座標系との対応関係を上記のようにすることで、停車位置A1及び2つの固定マーカーMA1,MA2を撮像できれば、カメラ60は任意の位置に任意の姿勢で配置することができるし、カメラ60の位置や姿勢を上位制御装置70や制御装置53が把握する必要もない。
【0066】
(第2実施形態)
荷役システムの第2実施形態について説明する。第2実施形態の荷役システムでは、パレットのカメラ座標を導出する態様が第1実施形態とは異なる。以下の説明では、第1実施形態とは異なる部分について説明する。
【0067】
上位制御装置70は、教師データを機械学習モデルに入力して生成された学習済みモデルによってパレットPのカメラ座標を導出する。詳細にいえば、上位制御装置70の記憶部72や補助記憶装置76など制御部75の読み取り可能な記憶装置には、学習済みモデルが記憶されている。上位制御装置70は、ステップS1において、カメラ60によってパレットPが撮像されると、学習済みモデルを用いて、画像データからパレットPのカメラ座標を導出する。
【0068】
図9に示すように、学習済みモデルは、機械学習のアルゴリズムにより構築された学習器74に教師データを入力することで生成されている。学習器74は、教師有り学習モデルである。機械学習としては、例えば、サポートベクタマシン、ニューラルネットワーク、ナイーブベイズ、ディープラーニング、決定木を挙げることができる。本実施形態では、機械学習として、ディープラーニングを用いる。
【0069】
教師データとしては、パレットPを撮像した画像データIMにパレットPのカメラ座標をラベルとして付与したデータを用いる。詳細にいえば、
図9に示すように、トラックTの荷台TBに積まれたパレットPを撮像した画像データIMに、パレットPを囲むバウンディングボックスを設定する。そして、バウンディングボックス毎にラベルを設定したデータを教師データとする。この教師データを学習器74に入力することで、学習済みモデルが生成される。学習済みモデルは、パレットPの画像データを入力することで、カメラ座標を出力する。なお、図示は省略しているが、パレットPの画像データIMには、収容部Sに収容された搬送物が含まれる。即ち、パレットPの画像データIMとは、搬送物を収容部Sに収容した状態でのパレットPの画像データである。
【0070】
カメラ60によって撮像されるパレットPの画像データと、パレットPのカメラ座標には相関がある。カメラ座標系においてカメラ60の座標とパレットPの座標が近いほど、画像データ中のパレットPのサイズは大きくなる。また、カメラ60の姿勢とパレットPの姿勢に応じて、画像データ中のパレットPは歪む。このため、上記した学習器74を用いて学習した学習済みモデルを用いて、パレットPのカメラ座標を導出することができる。
【0071】
また、上位制御装置70は、上記した学習済みモデルと同様の手法で学習を行った学習済みモデルを用いて、カメラ座標系での2つの柱Pi1,Pi2のカメラ座標を導出する。詳細にいえば、2つの柱Pi1,Pi2を撮像した画像データに柱Pi1,Pi2を囲むバウンディングボックスを設定し、バウンディングボックス毎にカメラ座標をラベルとして付与する。これにより得られた教師データによって機械学習を行った学習済みモデルを用いて、2つの柱Pi1,Pi2のカメラ座標を導出することができる。
【0072】
上位制御装置70は、2つの柱Pi1,Pi2のカメラ座標、及びパレットPのカメラ座標を、学習済みモデルを用いて導出することができる。なお、学習済みモデルは、パレットP及び2つの柱Pi1,Pi2の両方が写る画像データIMにラベルを付与した教師データを用いて生成してもよい。
【0073】
学習済みモデルを用いてパレットPのカメラ座標を導出する場合、上位制御装置70は、マーカーMA3,MA4を用いることなく、パレットPのカメラ座標を導出可能である。従って、制御装置53についても上位制御装置70と同様に、マーカーMA3,MA4を用いることなく、パレットPの検出を行う。制御装置53は、上位制御装置70と同様に、学習済みモデルを用いてパレットPの検出を行うようにしてもよいし、他の手法でパレットPの検出を行うようにしてもよい。
【0074】
第2実施形態では、第1実施形態の効果(1-1)~(1-3)に加えて、以下の効果を得ることができる。
(2-1)上位制御装置70は、学習済みモデルを用いて、パレットPのカメラ座標を導出することができる。上位制御装置70は、マーカーMA3,MA4を認識することなく、パレットPのカメラ座標を導出できるため、パレットPにマーカーMA3,MA4を取り付ける手間を軽減することができる。
【0075】
(第3実施形態)
荷役システムの第3実施形態について説明する。以下の説明では、第1実施形態とは異なる部分について説明する。なお、第1実施形態と同様の部材、あるいは、同様の機能を発揮する部材については、第1実施形態と同一の符号を付すことで説明を省略する。
【0076】
図10に示すように、荷役システムCS1は、センサとしてのレーザー距離計81と、トラック検出カメラ82と、を備える。第3実施形態のトラックTCは、コンテナC1の搬送を行う。トラックTCは、トラックTCに連結されたコンテナC1を搬送する搬送車である。第3実施形態の停車位置A11は、2つの柱Pi1,Pi2を含む領域である。停車位置A11は、2つの柱Pi1,Pi2同士の間でなくてもよい。本実施形態のトラックTCは、2つのコンテナC1を搬送するが、トラックTCとしては単数のコンテナC1を搬送するものであってもよいし、3つ以上のコンテナC1を搬送するものであってもよい。
【0077】
フォークリフト10は、コンテナC1にパレットPを積む荷積み作業、及びコンテナC1に積まれたパレットPをフォークリフト10に積む荷取り作業を含む荷役作業を行う。パレットPには、荷Wが積まれている。本実施形態では、フォークリフト10が荷積み作業を行う場合を例に挙げて説明を行う。荷取り作業は、第1実施形態と同様の手法で行うことができる。フォークリフト10は、荷役位置A21まで移動した後に、荷積み作業を行う。荷役位置A21は、パレットPを置く対象となるコンテナC1の正面位置である。
【0078】
フォークリフト10は、荷積み作業を行わない際には、作業場に設定された待機位置A31で待機している。停車位置A11にトラックTCが停車すると、フォークリフト10は、荷役位置A21まで移動し、荷積み作業を行う。
【0079】
トラックTCは、2つの柱Pi1,Pi2に沿って停車される。例えば、トラックTCは、水平方向のうち2つの柱Pi1,Pi2の並ぶ方向に直交する方向から見て、2つの柱Pi1,Pi2同士の間に1つのコンテナC1が位置するように停車される。
【0080】
図11及び
図12に示すように、コンテナC1は中空状であり、内部がパレットPを収容可能な収容空間になっている。コンテナC1は、底部BWと、天部CWと、2つの前壁FW1,FW2と、2つの後壁RW1,RW2と、2つの側壁SW1,SW2と、を備える。底部BW、天部CW、前壁FW1,FW2、後壁RW1,RW2及び側壁SW1,SW2は、それぞれ、四角板状の壁部である。底部BWと天部CWとは互いに向かい合っている。前壁FW1,FW2、後壁RW1,RW2及び側壁SW1,SW2は、底部BWと天部CWとの間に位置する。2つの側壁SW1,SW2同士は、互いに向かい合っている。2つの前壁FW1,FW2と、2つの後壁RW1,RW2とは互いに向かい合っている。前壁FW1はヒンジ等により回動可能な状態で側壁SW1に取り付けられている。前壁FW2はヒンジ等により回動可能な状態で側壁SW2に取り付けられている。後壁RW1はヒンジ等により回動可能な状態で側壁SW1に取り付けられている。後壁RW2はヒンジ等により回動可能な状態で側壁SW2に取り付けられている。前壁FW1,FW2及び後壁RW1,RW2は、扉といえる。前壁FW1,FW2が回動することで、底部BW、天部CW及び側壁SW1,SW2に囲まれた開口部O11の開放と閉塞とが切り替えられる。後壁RW1,RW2が回動することで、底部BW、天部CW及び側壁SW1,SW2に囲まれた開口部O12の開放と閉塞とが切り替えられる。
【0081】
コンテナC1は、底部BWと天部CWとが鉛直方向に向かい合い、かつ、底部BWが天部CWよりも下方に位置する態様で用いられる。前壁FW1,FW2と、後壁RW1,RW2とは、水平方向に互いに向かい合う壁部といえる。側壁SW1,SW2は、水平方向に互いに向かい合う壁部といえる。
【0082】
2つの前壁FW1,FW2はそれぞれ外面O1,O2を備える。2つの側壁SW1,SW2はそれぞれ外面O3,O4を備える。2つの後壁RW1,RW2はそれぞれ外面O5,O6を備える。なお、前壁FW1,FW2の外面O1,O2及び後壁RW1,RW2の外面O5,O6とは、前壁FW1,FW2及び後壁RW1,RW2が閉塞されている状態でコンテナC1の外部に位置する面である。前壁FW1,FW2が閉塞されている状態で、前壁FW1の外面O1と前壁FW2の外面O2とは同一面とみなすことができる。後壁RW1,RW2が閉塞されている状態で、後壁RW1の外面O5と後壁RW2の外面O6とは同一面とみなすことができる。前壁FW1,FW2及び後壁RW1,RW2が閉塞されている状態での前壁FW1,FW2の外面O1,O2と後壁RW1,RW2の外面O5,O6との間の距離L2は、側壁SW1,SW2の外面O3,O4同士の距離L1に比べて短い。以下の説明において、水平方向に互いに向かい合う壁部のうち、互いの離間距離が長い壁部が向かい合う方向をコンテナC1の長手方向、互いの離間距離が短い壁部が向かい合う方向をコンテナC1の短手方向とする。本実施形態では、側壁SW1,SW2同士が向かい合う方向が長手方向であり、前壁FW1,FW2と後壁RW1,RW2が向かい合う方向が短手方向である。なお、コンテナC1とは、荷Wが収容される収容体であればどのようなものであってもよい。コンテナC1は、荷Wが収容可能な形状であればどのような形状であってもよく、例えば、天部CWがない形状であってもよいし、後壁RW1,RW2が開かない形状であってもよい。
【0083】
図13に示すように、フォークリフト10は、車載センサ46を備える。車載センサ46は、フォークリフト10の荷役作業に用いるためのセンサである。本実施形態において、車載センサ46は、少なくとも、フォークリフト10の荷積み作業に用いられるセンサを含む。車載センサ46は、フォークリフト10が荷積み作業を行う際に、パレットPを置く位置である荷置き位置を検出するために用いられる。車載センサ46としては、例えば、レーザー距離計、カメラ、ミリ波レーダー等、フォークリフト10とコンテナC1との相対位置を制御装置53に認識させることができるものが用いられる。
【0084】
図14に示すように、レーザー距離計81は、検出可能範囲DAに存在する物体までの距離を測定する。レーザー距離計81は、水平方向への照射角度を角度分解能に応じた角度で変更しながらレーザーを照射する。本実施形態のレーザー距離計81は、鉛直方向への照射角度が変更されない2次元のレーザー距離計である。なお、レーザー距離計81は、レーザーレンジファインダやLIDARと称されることもある。
【0085】
レーザーが物体に当たると、レーザー距離計81は物体からの反射光を受光する。物体において、レーザーが当たった部分を照射点P1とすると、レーザー距離計81は、レーザー距離計81から照射点P1までの距離を算出する。レーザー距離計81は、照射点P1までの距離と照射角度とを対応付けた情報を距離情報として上位制御装置70に出力する。なお、照射角度と距離を用いることで、レーザー距離計81を原点とするセンサ座標系での照射点P1の座標を導出することができる。センサ座標系は、水平方向に互いに直交する軸の1つをX軸、X軸とは異なる軸をY軸とする直交座標系である。レーザー距離計81によって導出された距離と、照射角度を用いて、照射点P1までの距離をX軸方向への成分とY軸方向への成分に分解することができる。これにより、レーザー距離計81を原点とするセンサ座標系での照射点P1の座標を導出することができる。従って、距離情報とは、レーザー距離計81を原点とするセンサ座標系での照射点P1の座標と捉えることもできる。センサ座標系の座標をセンサ座標とする。センサ座標系のXY平面は、水平方向を表す座標平面である。従って、センサ座標は水平方向を表す方向での座標といえる。センサ座標系での照射点P1の座標は、レーザー距離計81で導出されてもよいし、上位制御装置70で導出されてもよい。
【0086】
レーザー距離計81の検出可能範囲DAは、レーザーの照射可能角度θ1と、レーザーの照射可能距離Rによって定まる。レーザー距離計81の検出可能範囲DAは、例えば、照射可能角度θ1を中心角、照射可能距離Rを半径とする扇形である。
【0087】
レーザー距離計81は、作業場の一定位置に配置されている。レーザー距離計81は、検出可能範囲DAに停車位置A11及び2つの柱Pi1,Pi2が含まれるように配置されている。詳細にいえば、レーザー距離計81は、停車位置A11にトラックTCが停車した状態で、少なくとも1つのコンテナC1と2つの柱Pi1,Pi2にレーザーが照射されるように配置されている。レーザー距離計81は、レーザーの照射方向が鉛直方向に傾かないように配置されることが好ましいが、僅かであればレーザーの照射方向が鉛直方向に傾いていてもよい。
【0088】
なお、トラックTCが停車位置A11に停車しており、かつ、前壁FW1,FW2及び後壁RW1,RW2が閉塞している状態で、コンテナC1の前壁FW1,FW2は、レーザー距離計81を向く。コンテナC1の後壁RW1,RW2は、コンテナC1の前壁FW1,FW2よりもレーザー距離計81から離間する。本実施形態では、コンテナC1の壁部のうち、トラックTCが停車位置A11に停車している状態で、レーザー距離計81を向く壁部を便宜上、前壁と称しているが、コンテナC1とレーザー距離計81の位置関係によっては、底部BWと天部CWとの間で延びる各壁部のいずれであっても前壁となり得る。
【0089】
トラック検出カメラ82は、作業場の一定位置に配置されている。トラック検出カメラ82は、停車位置A11を撮像するように配置されている。詳細に言えば、トラック検出カメラ82は、停車位置A11にトラックTCが停車している場合に、トラックTCを撮像できるように配置されている。トラック検出カメラ82は、単眼カメラである。
【0090】
上位制御装置70の制御部75には、レーザー距離計81の測定結果が入力される。上位制御装置70の制御部75には、トラック検出カメラ82の撮像結果が入力される。
上位制御装置70は、停車位置A11にトラックTCが停車したことを検出する。トラックTCの検出は、教師データを機械学習モデルに入力して生成された学習済みモデルによって行うことができる。詳細にいえば、上位制御装置70の記憶部72や補助記憶装置76など制御部75の読み取り可能な記憶装置には、学習済みモデルが記憶されている。上位制御装置70は、トラック検出カメラ82から入力される画像データからトラックTCの検出を行う。機械学習は、第2実施形態と同様の手法で行うことができる。教師データとしては、トラックTCを撮像した画像データが用いられる。
【0091】
上位制御装置70は、トラックTCが停車位置A11に停車したことを検出すると、コンテナC1の位置を導出する。コンテナC1の位置は、コンテナC1の互いに水平方向に離間したエッジを導出することで行われる。
【0092】
図11及び
図12に示すように、本実施形態では、2つの前壁FW1,FW2における互いに水平方向に離間した2つのエッジE1,E2の位置を検出する。2つのエッジE1,E2は、コンテナC1の長手方向に互いに離間して隣り合うエッジである。2つのエッジE1,E2のうち1つを第1エッジE1とし、残りの1つを第2エッジE2とする。第1エッジE1は、前壁FW1のうち水平方向に最も前壁FW2から離間している位置といえる。第2エッジE2は、前壁FW2のうち水平方向に最も前壁FW1から離間している位置といえる。2つの前壁FW1,FW2の外面O1,O2を1つの平面として捉えると、2つのエッジE1,E2は同一平面で水平方向に互いに隣り合うエッジといえる。
【0093】
上位制御装置70は、2つのエッジE1,E2の位置からコンテナC1の位置を導出し、移動目標としてのコンテナC1までフォークリフト10を誘導する。フォークリフト10が荷積み作業を行う際には、開口部O11からコンテナC1にパレットPを積み込む。以下、上位制御装置70で行われる処理について詳細に説明する。上位制御装置70で行われる処理は、例えば、プロセッサ71がRAMに読み込まれたプログラムを実行することで実施される。説明の便宜上、複数のコンテナC1のうち1つのコンテナC1のエッジE1,E2を検出する場合について説明する。また、コンテナC1の前壁FW1,FW2は閉塞されている状態とする。
【0094】
本実施形態では、第1エッジ検出処理と、第2エッジ検出処理の2つのエッジ検出処理を併用することで、エッジE1,E2の位置を精度良く検出できるようにしている。
図15に示すように、ステップS21において、上位制御装置70の制御部75は、レーザー距離計81の測定結果を取得する。レーザー距離計81の測定結果とは、照射点P1のセンサ座標である。停車位置A11にトラックTCが停車した場合には、トラックTCやコンテナC1にレーザーが当たることによる照射点P1を上位制御装置70が取得することになる。以下の説明において、一例として、
図16に示すように照射点P1のセンサ座標が得られた場合について説明する。
【0095】
図15に示すように、ステップS22において、上位制御装置70の制御部75は、第1柱Pi1及び第2柱Pi2のセンサ座標を取得する。レーザー距離計81の配置位置から、第1柱Pi1及び第2柱Pi2の大まかな位置は把握することができる。従って、第1柱Pi1が存在すると想定される範囲を予め設定しておき、この範囲内の照射点P1の座標が第1柱Pi1のセンサ座標として上位制御装置70に取得されるようにすればよい。同様に、第2柱Pi2が存在すると想定される範囲を予め設定しておき、この範囲内の照射点P1の座標が第2柱Pi2のセンサ座標として上位制御装置70に取得されるようにすればよい。レーザー距離計81の位置、第1柱Pi1の位置、第2柱Pi2の位置関係が一定であれば、第1柱Pi1のセンサ座標、及び第2柱Pi2のセンサ座標は予め把握することができる。この場合、上位制御装置70の記憶部72や補助記憶装置76に第1柱Pi1のセンサ座標、及び第2柱Pi2のセンサ座標を予め記憶しておけばよい。
【0096】
次に、ステップS23において、上位制御装置70の制御部75は、照射点P1のセンサ座標を地図座標に変換する。センサ座標系において第1柱Pi1の座標を(0,0)とした場合の第2柱Pi2の座標を(x1,y1)とすると、センサ座標系に対する地図座標系の傾きθは、θ=Atan(x1,y1)で導出することができる。なお、傾きθは、センサ座標系のX軸に対する地図座標系のX軸の傾きである。傾きθが予め把握できている場合、傾きθは上位制御装置70の記憶部72や補助記憶装置76に記憶されていてもよい。
【0097】
上位制御装置70の制御部75は、照射点P1のセンサ座標に回転行列を乗算した後に、第1柱Pi1の座標が(0,0)になるように照射点P1を平行移動させる。照射点P1のセンサ座標を(x’,y’)、地図座標系との傾きを0にしたセンサ座標系での照射点P1の座標を(x,y)とする。以下の(7)式により照射点P1のセンサ座標に回転行列を乗算することで、地図座標系との傾きを0にしたセンサ座標系での照射点P1の座標(x,y)を導出することができる。
【0098】
【数7】
以下の(8)式により、回転行列を乗算した後のセンサ座標(x,y)を第1柱Pi1の座標が(0,0)になるように平行移動させる。
【0099】
【数8】
(x
m,y
m)は、地図座標系での照射点P1の座標である。(x1’,y1’)は、地図座標系との傾きを0にしたセンサ座標系での第1柱Pi1の座標である。即ち、(x1’,y1’)は、第1柱Pi1のセンサ座標に回転行列を乗算した座標である。
【0100】
上位制御装置70は、第1エッジ検出処理を行う。
ステップS24において、上位制御装置70は、ステップS23で得られた照射点P1の地図座標から、直線を抽出する。ステップS23で照射点P1のセンサ座標を地図座標に変換しているため、ステップS24では、水平方向を表す座標平面として、地図座標系のXY平面での直線が抽出される。本実施形態において、上位制御装置70はRANSAC(Random Sample Consensus)によって直線を抽出する。上位制御装置70は、照射点P1が含まれる直線を複数抽出する。直線は、地図座標系のXY平面で直線の長さ方向に直交する方向に所定の幅を有する。直線は、地図座標系のXY平面において直線の延びる方向と、直線の延びる方向に直交する方向に広がる長方形状の範囲と捉えることもできる。直線の幅は、荷役システムCS1の管理者等が適宜設定することができる。
図16に示す例では、2つの直線L11,L21を図示しているが、上位制御装置70は、複数の照射点P1の組み合わせにより得られる直線のうち、例えば、数十~数百の直線を抽出する。
【0101】
図15に示すように、ステップS25において、上位制御装置70は、ステップS24で抽出された複数の直線L11,L21から、地図座標系のXY平面でコンテナC1の2つのエッジE1,E2が含まれる直線を抽出する。上位制御装置70は、直線上に位置する照射点P1が最も多い直線を、コンテナC1の2つのエッジE1,E2が含まれる直線として抽出する。
図16に示す例では、複数の直線L11,L21のうち直線L11がエッジE1,E2が含まれる直線として抽出される。直線上に位置する照射点P1は、直線の幅内に位置する照射点P1ともいえる。レーザーが平面に照射されている場合、平面に照射された照射点P1は一直線上に位置するため、同一平面に照射された照射点P1は直線の幅内に位置しやすい。前述したように、前壁FW1,FW2が閉塞されている場合には、2つの前壁FW1,FW2の外面O1,O2は同一平面とみなすことができる。レーザーが照射されるコンテナC1の外面のうち水平方向の寸法が最も長い面は、前壁FW1,FW2の外面O1,O2といえる。従って、直線の幅内に位置する照射点P1が最も多い直線は、前壁FW1,FW2の外面O1,O2に照射された照射点P1により得られた直線といえる。
【0102】
なお、コンテナC1によっては、前壁FW1,FW2に起伏があり、外面O1,O2が滑らかではない場合がある。この場合、前壁FW1,FW2の外面O1,O2に照射された照射点P1が、起伏によって一直線上に位置しない場合がある。前述したように、直線の幅は適宜設定することができるため、起伏による照射点P1のずれを吸収できるように直線の幅を設定すればよい。例えば、起伏による前壁FW1,FW2の厚み方向への照射点P1のずれ量よりも直線の幅を広くすればよい。
【0103】
図15に示すように、ステップS26において、上位制御装置70は、エッジE1,E2にレーザーが照射されることで得られた照射点P1を抽出する。
図17に示すように、上位制御装置70は、ステップS25で抽出された直線L11の幅内に位置する照射点P1のうち、直線L11の延びる方向の片側に対して予め定められた距離D1以上隣り合う照射点P1が存在しない2つの照射点P1を2つのエッジE1,E2に照射された照射点P1として抽出する。なお、以下の説明では、エッジE1,E2に照射された照射点P1を縁照射点PE1,PE2と称する。縁照射点PE1は、レーザーが第1エッジE1に照射されることで得られた照射点P1であり、縁照射点PE2は、レーザーが第2エッジE2に照射されることで得られた照射点P1である。
【0104】
直線L11は、2つの前壁FW1,FW2の外面O1,O2に照射されることで得られた直線なので、エッジE1,E2に照射された照射点P1を境にして、照射点P1が途切れることになる。直線L11の延びる方向の片側に対して予め定められた距離D1以上隣り合う照射点P1が存在しない照射点P1は、エッジE1,E2に照射された縁照射点PE1,PE2とみなすことができる。また、2つの前壁FW1,FW2の外面O1,O2に照射されることで得られた直線L11は、エッジE1,E2に照射されることで照射点P1が途切れるまでは、連続して照射点P1が位置する。従って、直線L11の延びる方向の片側に対して予め定められた距離D1以上隣り合う照射点P1が存在せず、かつ、もう片側に対しては連続して照射点P1が存在する照射点P1をエッジE1,E2に照射された縁照射点PE1,PE2としてもよい。連続して照射点P1が存在するか否かは、所定距離内に閾値以上の個数の照射点P1が存在するか否かで判定することができる。所定距離は、2つのエッジE1,E2間距離以下の範囲で適宜設定することができる。閾値は、所定距離内に照射されると想定される照射点P1以下の範囲で適宜設定することができる。例えば、直線L11の延びる方向の片側に対して予め定められた距離D1以上隣り合う照射点P1が存在せず、かつ、もう片側に対しては距離D1内に複数の照射点P1が存在する照射点P1をエッジE1,E2に照射された縁照射点PE1,PE2としてもよい。なお、縁照射点PE1,PE2は、実際にはエッジE1,E2に照射された照射点P1ではない場合がある。縁照射点PE1,PE2は、前壁FW1,FW2にレーザーが当たることで得られた照射点P1のうち最もエッジE1,E2に近い照射点P1、あるいは、側壁SW1,SW2にレーザーが当たることで得られた照射点P1のうち最もエッジE1,E2に近い照射点P1の場合がある。この場合であっても、縁照射点PE1,PE2は、エッジE1,E2に最も近い照射点P1であり、エッジE1,E2に照射された照射点P1として取り扱って差し支えないといえる。
【0105】
次に、ステップS27において、上位制御装置70は、第2エッジ検出処理を行う。第2エッジ検出処理では、照射点P1同士を結んだときの方向変化を利用して縁照射点PE1,PE2の検出を行う。
図16に示す縁照射点PE1に着目すると、縁照射点PE1に隣り合う2つの照射点P2,P3のうちの1つの照射点P2は前壁FW1の外面O1に照射された照射点P1であり、もう1つの照射点P3は側壁SW1の外面O3に照射された照射点P1である。同一面にレーザーが照射されることで得られた照射点P1は一直線上に位置しやすい一方で、異なる面にレーザーが当たることで得られた照射点P1は一直線上に位置しにくい。従って、照射点P1同士を線分で結んだ場合、第1エッジE1にレーザーが当たることで得られた照射点P1と、この照射点P1に隣り合う照射点P1とを結ぶ線分で、傾斜角度が急激に変化することになる。従って、縁照射点PE1と、縁照射点PE1に隣り合う照射点P2,P3を線分で結ぶと、線分の傾きが大きく変化する。上位制御装置70は、隣り合う照射点P1同士を結んだときの線分の傾きの変化量が予め定められた判定閾値よりも大きい照射点P1を縁照射点PE1として抽出する。判定閾値は、レーザーが異なる面に照射されたことを検出できるように設定されている。判定閾値は、例えば、レーザー距離計81の角度分解能と、前壁FW1,FW2の外面O1,O2と側壁SW1,SW2の外面O3,O4との交わる角度に応じて設定される。上位制御装置70は、同様の手法で縁照射点PE2も抽出することができる。
【0106】
図15に示すように、ステップS28において、上位制御装置70は、2つのエッジE1,E2の位置を導出する。2つのエッジE1,E2の位置とは、地図座標系での位置である。2つのエッジE1,E2の位置とは、エッジE1,E2の地図座標といえる。上位制御装置70は、第1エッジ検出処理による検出結果と、第2エッジ検出処理による検出結果から2つのエッジE1,E2の位置を導出する。上位制御装置70は、第1エッジ検出処理によって抽出された縁照射点PE1と第2エッジ検出処理によって抽出された縁照射点PE1とが一致している場合、当該縁照射点PE1の地図座標を第1エッジE1の位置とする。
【0107】
上位制御装置70は、第1エッジ検出処理によって抽出された縁照射点PE1と第2エッジ検出処理によって抽出された縁照射点PE1とが一致していない場合で、両者の離間距離が許容範囲内の場合、検出結果から第1エッジE1の位置を導出する。上位制御装置70は、第1エッジ検出処理によって抽出された縁照射点PE1と第2エッジ検出処理によって抽出された縁照射点PE1の中間位置の地図座標を第1エッジE1の位置として導出する。第1エッジ検出処理によって抽出された縁照射点PE1と第2エッジ検出処理によって抽出された縁照射点PE1の中間位置とは、例えば、第1エッジ検出処理によって抽出された縁照射点PE1と第2エッジ検出処理によって抽出された縁照射点PE1の中心位置である。
【0108】
上位制御装置70は、第1エッジ検出処理によって抽出された縁照射点PE1と第2エッジ検出処理によって抽出された縁照射点PE1とが一致していない場合で、両者の離間距離が許容範囲外の場合、第1エッジ検出処理及び第2エッジ検出処理を再度実施してもよい。また、上位制御装置70は、第1エッジ検出処理によって抽出された縁照射点PE1と第2エッジ検出処理によって抽出された縁照射点PE1とが一致していない場合で、両者の離間距離が許容範囲外の場合、第1エッジ検出処理及び第2エッジ検出処理のうち、予め定められた方の検出結果を採用してもよい。なお、許容範囲は、荷役システムCS1の管理者等が適宜設定することができる。許容範囲としては、例えば、2つのエッジ検出処理の手法による差異を許容できるように設定される。第1エッジ検出処理と、第2エッジ検出処理では縁照射点PE1,PE2を導出する手法が異なるため、レーザー距離計81の測定結果によっては、縁照射点として異なる照射点P1が検出される。しかしながら、2つのエッジ検出処理の手法の差異を原因とする場合、2つのエッジ検出処理で導出される縁照射点同士の差は小さい。例えば、第1エッジ検出処理により照射される縁照射点と、第2エッジ検出処理により照射される縁照射点は互いに隣り合う照射点P1になり得る。一方で、外れ値の影響や、取得できた照射点P1の個数が少ない場合など、エッジ検出処理の手法による差異とは異なる要因によって2つのエッジ検出処理で導出される縁照射点が異なる場合、縁照射点同士は大きく離間し得る。このため、許容範囲は、2つのエッジ検出処理の手法の差異を原因とする縁照射点のずれを許容できるように設定されればよい。
【0109】
上記した説明では、第1エッジE1の位置を導出する態様について説明したが、第2エッジE2の位置についても、縁照射点PE2を用いて第1エッジE1と同様の手法により導出することができる。
【0110】
上記したように、第1エッジ検出処理及び第2エッジ検出処理の検出結果から2つのエッジE1,E2の位置を導出する態様は、種々の態様が挙げられる。荷役システムCS1の管理者は、任意の態様で2つのエッジE1,E2の位置を導出することができる。
【0111】
次に、ステップS29において、上位制御装置70は、ステップS28で導出されたエッジE1,E2の位置をフィルタ処理により補正する。上位制御装置70は、IIRフィルタの処理を行うことで、今回抽出された第1エッジE1の地図座標を過去に得られた第1エッジE1の地図座標によって重み付けする。例えば、上位制御装置70は、以下の(9)式から、第1エッジE1の位置を補正する。
【0112】
Y[n]=aY[n-1]+(1-a)X[n] … (9)
Yは出力、Xは入力である。Y[n]は、今回の出力、Y[n-1]は、前回の出力である。X[n]は、今回の入力である。aは係数である。aは1未満の任意の数に設定することができる。aは、例えば、0.9である。
【0113】
今回抽出された第1エッジE1の地図座標をX[n]として入力することで、前回の第1エッジE1の地図座標と、今回の第1エッジE1の地図座標とを係数によって重み付けした出力を得ることができる。
【0114】
上記した説明では、第1エッジE1の位置を補正する態様について説明したが、第2エッジE2の位置についても、第1エッジE1と同様の手法により補正することができる。上位制御装置70は、第1エッジE1の位置と第2エッジE2の位置の両方を個別に補正する。
【0115】
次に、ステップS30において、上位制御装置70は、地図座標系におけるコンテナC1の位置、即ち、コンテナC1の地図座標を導出する。地図座標系におけるコンテナC1の位置とは、2つのエッジE1,E2の中間位置である。2つのエッジE1,E2の中間位置としては、例えば、2つのエッジE1,E2の中心位置を挙げることができる。コンテナC1の位置とは、開口部O11における水平方向の中心位置ともいえる。フォークリフト10は、開口部O11からコンテナC1にパレットPを積み込むため、コンテナC1の位置としては、フォークリフト10が荷積み作業を行う際に、車載センサ46によって荷置き位置を検出しやすいように設定されている。言い換えれば、上位制御装置70により位置の検出が行われるエッジE1,E2は、コンテナC1の地図座標を導出することができるエッジが選択されているともいえる。上位制御装置70は、ステップS29で導出された2つのエッジE1,E2の地図座標から、地図座標系におけるコンテナC1の位置を導出する。コンテナC1の地図座標は、地図座標系でのコンテナC1の座標を得られる情報である。ステップS30の処理を行うことで、上位制御装置70は、地図座標導出部及び導出部を備えているといえる。
【0116】
ステップS31において、上位制御装置70は、コンテナC1の地図座標を示す情報を含む指令を指令通信部73から送信する。指令は、フォークリフト10をコンテナC1の地図座標に移動させるための移動開始指令である。
【0117】
ステップS41において、制御装置53は、上位制御装置70からの指令を受信すると、フォーク31にパレットPを積載し、受信した指令に含まれるコンテナC1の地図座標へ向けてフォークリフト10を移動させる。制御装置53は、コンテナC1の地図座標を把握できるため、コンテナC1の地図座標、あるいは、コンテナC1の地図座標よりも若干手前の地図座標を目標地点としてフォークリフト10を移動させる。
【0118】
ステップS42において、フォークリフト10がコンテナC1に近付くと、フォークリフト10は荷積み作業を行う。荷積み作業を開始する位置が、荷役位置A21である。荷役位置A21は、コンテナC1の位置等により変化する位置といえる。フォークリフト10による荷積みは、車載センサ46を用いて行われる。制御装置53は、コンテナC1の底部BWの上面を荷置き位置とし、この荷置き位置にパレットPを置くように駆動機構51及び油圧機構52の制御を行う。制御装置53は、車載センサ46によって荷置き位置を検出し、この荷置き位置にパレットPを置く。車載センサ46が、鉛直方向に対する照射角度を変更しながらレーザーを照射するレーザー距離計を含んでいる場合、このレーザー距離計の検出結果によって荷置き位置の高さを検出することができる。車載センサ46が、水平方向に対する照射角度を変更しながらレーザーを照射するレーザー距離計を含んでいる場合、このレーザー距離計の検出結果によって荷置き位置の水平方向の位置を導出することができる。なお、フォークリフト10が荷積み作業を行う前に、前壁FW1,FW2は開放されており、開口部O11からの荷積みが可能な状態にされている。
【0119】
ステップS43において、制御装置53は、荷積み作業を終えると、フォークリフト10を待機位置A31に移動させる。これにより、フォークリフト10は、待機位置A31に戻り、次の指令を受信するまで待機位置A31で待機する。
【0120】
第3実施形態の作用について説明する。
停車位置A11にトラックTCが停車すると、上位制御装置70は、エッジE1,E2の地図座標を導出する。上位制御装置70は、エッジE1,E2の地図座標からコンテナC1の地図座標を導出し、導出されたコンテナC1の地図座標を示す情報含む指令をフォークリフト10に送信する。通信部59により制御装置53が指令を受信すると、フォークリフト10は荷積み作業の対象となるコンテナC1まで誘導される。そして、フォークリフト10は、荷積み作業を行う。
【0121】
第3実施形態の効果について説明する。第3実施形態では、第1実施形態の各効果に加えて、以下の効果を得ることができる。
(3-1)上位制御装置70は、コンテナC1の地図座標を導出している。これにより、コンテナC1を移動目標とし、移動目標にフォークリフト10を誘導することができる。
【0122】
(3-2)上位制御装置70は、フォークリフト10に搭載された制御装置53とは異なる装置である。フォークリフト10に搭載された制御装置53は、自己位置推定など、フォークリフト10の動作に関する種々の制御を行っている。このため、制御装置53によって、コンテナC1のエッジE1,E2の位置を検出し、エッジE1,E2の補正を行う場合、制御装置53の処理負荷が過剰に大きくなるおそれがある。特に、エッジE1,E2の補正を行う場合には、処理負荷が大きくなりやすい。これに対し、上位制御装置70は、フォークリフト10の動作に関する制御を行わないため、エッジE1,E2の位置の検出、及びエッジE1,E2の位置の補正を行っても、処理負荷が過剰に大きくなりにくい。上位制御装置70は、エッジE1,E2の位置の補正を行うことができる。エッジE1,E2の位置の補正を行うことで、エッジE1,E2の位置の検出精度を向上させることができる。これにより、コンテナC1の地図座標の検出精度を向上させることができる。
【0123】
各実施形態は、以下のように変更して実施することができる。各実施形態及び以下の変形例は、技術的に矛盾しない範囲で互いに組み合わせて実施することができる。
○各実施形態において、カメラ座標系での地図座標系の原点の座標を把握できており、かつ、カメラ座標系の座標軸の向きと地図座標系の座標軸の向きとを一致させていれば、2つの柱Pi1,Pi2のカメラ座標は導出されなくてもよい。この場合、上位制御装置70は、パレットPのカメラ座標を導出すると、パレットPのカメラ座標からパレットPの地図座標を導出する。記憶部72や補助記憶装置76など制御部75が読み取り可能な情報を記憶する記憶装置には、カメラ座標系での地図座標系の原点の座標が記憶されている。カメラ座標系での地図座標系の原点の座標とは、カメラ座標系の原点と地図座標系の原点との座標のずれともいえる。上位制御装置70は、パレットPのカメラ座標を導出すると、パレットPのカメラ座標を、カメラ座標系での地図座標系の原点の座標分だけずらす。これにより、パレットPのカメラ座標は、地図座標系の原点を基準とした座標になり、上位制御装置70によりパレットPの地図座標が導出される。
【0124】
各実施形態において、地図座標系でのカメラ60の座標を把握できており、かつ、カメラ座標系の座標軸の向きと地図座標系の座標軸の向きとを一致させていれば、パレットPのカメラ座標からパレットPの地図座標への変換は、制御装置53によって行われてもよい。上位制御装置70は、パレットPのカメラ座標を導出すると、パレットPのカメラ座標をフォークリフト10に送信する。制御装置53は、パレットPのカメラ座標を受信すると、パレットPのカメラ座標からパレットPの地図座標を導出する。記憶部55や補助記憶装置56など制御装置53の読み取り可能な情報を記憶する記憶装置には、地図座標系でのカメラ60の座標が記憶されている。制御装置53は、パレットPのカメラ座標を受信すると、地図座標系の原点と地図座標系でのカメラ60の座標とのずれの分だけ、パレットPのカメラ座標をずらす。これにより、制御装置53は、パレットPのカメラ座標からパレットPの地図座標を導出することができる。このように、地図座標系でのカメラ60の座標を把握できていれば、制御装置53は、パレットPのカメラ座標からパレットPに地図座標を取得することができる。従って、地図座標系でのパレットP(移動目標)の座標を得られる情報とは、実施形態のようにパレットPの地図座標であってもよいし、上記したようにパレットPのカメラ座標であってもよい。言い換えれば、パレットPのカメラ座標をパレットPの地図座標に変換する処理は、上位制御装置70によって行われてもよいし、制御装置53によって行われてもよい。荷役システムCS,CS1がパレットPのカメラ座標をパレットPの地図座標に変換する座標変換部を備えていればよい。
【0125】
上記したように、上位制御装置70及び制御装置53の少なくともいずれかが、カメラ座標系の原点と地図座標系の原点との座標のずれを把握できており、かつ、カメラ座標系の座標軸の向きと地図座標系の座標軸の向きとを一致させていれば、上位制御装置70によって2つの柱Pi1,Pi2のカメラ座標は導出されなくてもよい。従って、停車位置A1,A11を2つの柱Pi1,Pi2に合わせて設定する必要がなく、停車位置A1,A11の自由度が向上する。また、上位制御装置70が行う処理を少なくすることができる。
【0126】
また、カメラ座標系の座標軸の向きと地図座標系の座標軸の向きとが一致していない場合であっても、カメラ座標系の座標軸と地図座標系の座標軸とのずれ角、及びカメラ座標系の原点と地図座標系の原点との座標のずれを把握できていれば、移動目標のカメラ座標から移動目標の地図座標を導出することができる。この場合であっても、上位制御装置70及び制御装置53のいずれであっても、移動目標のカメラ座標から移動目標の地図座標への変換を行うことができる。そして、上記した効果と同様の効果を得ることができる。
【0127】
○各実施形態において、フォークリフト10は、車載カメラ45を備えていなくてもよい。この場合、フォークリフト10のパレットPへの移動は、上位制御装置70から受信したパレットPのカメラ座標のみで行われる。
【0128】
○各実施形態において、フォークリフト10は、車載カメラ45に代えて、ミリ波レーダー、ステレオカメラ、LIDARなど、制御装置53がパレットPを検出できるものを備えていてもよい。
【0129】
○第1実施形態及び第3実施形態において、パレットPに設けられるマーカーは1つであってもよい。この場合、マーカーの地図座標がパレットPの地図座標となる。また、上位制御装置70は、画像データ中のマーカーの歪み方からカメラ座標系でのマーカーの姿勢を導出することができる。上位制御装置70は、カメラ座標系でのマーカーの姿勢から、環境地図でのマーカーの姿勢を導出することで、地図座標系でのパレットPの姿勢を導出することができる。
【0130】
○各実施形態において、地図座標系の原点と第1固定マーカーMA1の座標とは一致していなくてもよい。この場合、地図座標系での第1固定マーカーMA1の座標と地図座標系の原点との座標のずれを予め把握し、上位制御装置70の記憶部72や補助記憶装置76など、制御部75が読み取り可能な記憶装置に地図座標系での第1固定マーカーMA1の座標と地図座標系の原点との座標のずれを記憶しておく。上位制御装置70は、地図座標系での第1固定マーカーMA1の座標と地図座標系の原点との座標のずれの分だけ、三辺測量によってマーカーMA3,MA4の座標をずらす。これにより上位制御装置70は、地図座標系でのマーカーMA3,MA4の座標、ひいては、地図座標系でのパレットPの座標を導出することができる。
【0131】
○第3実施形態において、地図座標系の原点と第1柱Pi1の座標とは一致していなくてもよい。この場合、地図座標系での第1柱Pi1の座標と地図座標系の原点との座標のずれを予め把握し、上位制御装置70の記憶部72や補助記憶装置76など、制御部75が読み取り可能な記憶装置に地図座標系での第1柱Pi1の座標と地図座標系の原点との座標のずれを記憶しておく。上位制御装置70は、照射点P1のセンサ座標を地図座標に変換する際に、地図座標系での第1柱Pi1の座標と地図座標系の原点との座標のずれの分だけ、実施形態よりも余分に照射点P1を平行移動させる。これにより上位制御装置70は、照射点P1のセンサ座標を地図座標に変換することができる。
【0132】
○第1実施形態及び第3実施形態において、上位制御装置70は、(5)式を省略し、(6)式からY座標ypを導出してもよい。
○第1実施形態及び第3実施形態において、マーカーMA3のY座標ypが+座標になるか-座標になるかを予め把握できていれば、(6)式による判定を行わなくてもよい。例えば、地図座標系のY軸方向において、停車位置A1,A11を+座標側のみとし、-座標側へのトラックT,TCの停車を禁止することで、マーカーMA3のY座標は+座標になる。この場合、Y座標ypが+座標になるか-座標になるかを判定しなくてもよいため、上位制御装置70が行う処理を少なくすることができる。
【0133】
○第3実施形態において、上位制御装置70は、コンテナC1に積まれたパレットPをフォークリフト10に積む荷取り作業を行う際に、レーザー距離計81の測定結果からコンテナC1の地図座標を導出してもよい。
【0134】
○第1実施形態において、上位制御装置70は、補助記憶装置76及び入力装置77の少なくともいずれかを備えていなくてもよい。
○第2実施形態において、学習済みモデルは、パレットP及び2つの柱Pi1,Pi2が写る画像データを入力することで、柱Pi1を原点とする座標が導出されるものであってもよい。この場合の教師データとしては、パレットP及び2つの柱Pi1,Pi2を撮像した画像データIMに柱Pi1を原点とするパレットPの座標をラベルとして付与したデータを用いる。パレットP及び2つの柱Pi1,Pi2の位置関係によって、画像データにおけるパレットPと柱Pi1との比率、画像データにおけるパレットPの位置と柱Pi1との位置関係等が異なる。このため、上記した教師データを用いて機械学習を行った学習済みモデルでは、パレットP及び2つの柱Pi1,Pi2が写る画像データを入力することで、柱Pi1を原点とするパレットPの座標が得られる。この場合、第1実施形態と同様に、柱Pi1を地図座標系の原点にしておくことで、上位制御装置70によって導出されるパレットPの座標は、パレットPの地図座標となる。
【0135】
○各実施形態において、フォークリフト10は、自動での動作と手動での動作を切り替え可能なフォークリフトであってもよい。
○各実施形態において、フォークリフト10は、荷役装置14を前進及び後進させることができるリーチシリンダを備えるリーチ式のフォークリフトであってもよい。
【0136】
○各実施形態において、通信部59は、少なくとも指令通信部73からの指令を受信する機能を備えていればよく、送信機能を備えていなくてもよい。
○各実施形態において、指令通信部73は、少なくとも通信部59に指令を送信する機能を備えていればよく、受信機能を備えていなくてもよい。
【0137】
○各実施形態において、センサ座標導出部と、地図座標導出部と、導出部と、は別々の装置によって構成されていてもよい。
○各実施形態において、環境地図の記憶される記憶装置としては、制御装置53の読み取り可能な情報を記憶できる記憶媒体であれば、どのようなものであってもよい。例えば、EEPROMなどの不揮発性メモリであってもよい。
【0138】
○各実施形態において、固定マーカーMA1,MA2の設けられる既設構造物は、柱Pi1,Pi2以外の固定構造物であってもよい。また、固定マーカーMA1,MA2を設けるための構造物を設置してもよい。
【0139】
○各実施形態において、荷役システムCS,CS1は複数のカメラ60を備えていてもよい。
○各実施形態において、停車位置A1,A11は複数設定されていてもよい。この場合、停車位置A1,A11毎に個別にカメラ60を設ける。上位制御装置70は、カメラ60毎に1つずつ設けられていてもよいし、複数のカメラ60に対して1つのみであってもよい。荷役システムCS,CS1が備えるフォークリフト10、カメラ60、及び上位制御装置70は、それぞれ、単数であってもよいし、複数であってもよい。また、第3実施形態において、荷役システムCS1が備えるレーザー距離計81及びトラック検出カメラ82は、それぞれ、単数であってもよいし、複数であってもよい。
【0140】
○第3実施形態において、荷役システムCS1は、カメラ60、レーザー距離計81、及びトラック検出カメラ82毎に個別に上位制御装置を備えていてもよい。即ち、カメラ60の撮像結果からパレットPの地図座標を導出する装置と、レーザー距離計81の測定結果からコンテナC1の地図座標を検出する装置と、トラック検出カメラ82の撮像結果からトラックTCを検出する装置とは別々に設けられていてもよい。
【0141】
○第3実施形態において、荷役システムCS1は、トラック検出カメラ82を備えていなくてもよい。この場合であっても、上位制御装置70は、レーザー距離計81の測定結果から停車位置A11にトラックTCが停車していることを検知することができる。トラックTCが停車位置A11に停車しているか否かにより、得られる照射点P1が変化するため、上位制御装置70は、レーザー距離計81の測定結果からトラックTCの有無を判定することができる。
【0142】
○第3実施形態において、上位制御装置70は、エッジE1,E2の地図座標からコンテナC1の姿勢を導出してもよい。コンテナC1の姿勢とは、地図座標系のX軸あるいはY軸に対するコンテナC1の傾きである。上位制御装置70は、2つのエッジE1,E2が含まれる直線のX軸あるいはY軸に対する傾きをコンテナC1の姿勢として導出することができる。
【0143】
上位制御装置70は、地図座標系におけるコンテナC1の姿勢をフォークリフト10に送信してもよい。制御装置53は、地図座標系におけるコンテナC1の姿勢から、フォークリフト10の進行方向を制御する。詳細にいえば、制御装置53は、フォークリフト10が開口部O11に対して垂直に進行するようにフォークリフト10の進行方向を制御する。
【0144】
○第3実施形態において、
図11及び
図12に示すように、コンテナC1は、互いに水平方向に離間して隣り合うエッジとして、短手方向に隣り合う2つのエッジE1,E3を備える。上位制御装置70は、互いに水平方向に離間して隣り合うエッジとして、これらのエッジE1,E3の位置を検出してもよい。これらのエッジE1,E3は、側壁SW1を間に挟んで位置しているため、側壁SW1にレーザーが照射されることで得られる照射点P1による直線を抽出できれば、これらのエッジE1,E3に照射された照射点P1を抽出できる。レーザー距離計81と停車位置A11の位置関係、及びトラックTCの向きによっては、前壁FW1,FW2にレーザーが照射されることで得られる照射点P1の数に比べて、側壁SW1に照射されることで得られる照射点P1の数の方が少なくなる。このため、レーザー距離計81と停車位置A11の位置関係及び、トラックTCの向きを想定し、直線上に位置する照射点P1の数が2番目に多い直線を、2つのエッジE1,E3が含まれる直線として抽出してもよい。上位制御装置70は、互いに短手方向に隣り合うエッジE1,E3の位置を検出することで、地図座標系におけるコンテナC1の姿勢を導出することができる。また、コンテナの種類によっては、コンテナの長手方向に扉が位置しており、コンテナの長手方向の開口部から荷積みを行う場合がある。この種のコンテナに荷積み作業を行う場合、互いに短手方向に隣り合うエッジE1,E3の中間位置をコンテナの地図座標として導出するようにしてもよい。
【0145】
○第3実施形態において、
図11及び
図12に示すように、コンテナC1は、互いに水平方向に離間して隣り合うエッジとして後壁RW1,RW2の内面のエッジE4,E5を備える。詳細にいえば、コンテナC1は、後壁RW1の内面と側壁SW1の内面とが交わるエッジE4と、後壁RW2の内面と側壁SW2の内面とが交わるエッジE5と、を備える。2つのエッジE4,E5は、互いにコンテナC1の長手方向に隣り合うエッジである。上位制御装置70は、互いに水平方向に離間して互いに隣り合うエッジとして、これらのエッジE4,E5の位置を検出してもよい。上位制御装置70は、実施形態と同様の手法により、エッジE4,E5の位置を導出できる。上位制御装置70は、コンテナC1の前壁FW1,FW2が開放されている状態であっても閉塞されている状態であっても水平方向に離間して互いに隣り合うエッジの位置を導出できるといえる。そして、上位制御装置70は、エッジE4,E5の位置からコンテナC1の地図座標を導出することができる。
【0146】
○第3実施形態において、上位制御装置70は、ステップS24において、最小二乗法やハフ変換などの回帰分析によって、地図座標系におけるXY平面で2つのエッジE1,E2が含まれる直線を抽出してもよい。
【0147】
○第3実施形態において、上位制御装置70は、ステップS24において、予め定められた範囲に存在する照射点P1から直線を抽出してもよい。トラックTCが停車位置A11に停車した場合のエッジE1,E2の位置は予め想定することができる。上位制御装置70は、トラックTCが停車位置A11に停車した場合にエッジE1,E2が位置すると想定される範囲に存在する照射点P1から直線を抽出するようにしてもよい。
【0148】
○第3実施形態において、上位制御装置70は、ステップS24において、複数の照射点P1の組み合わせにより得られる全ての直線を抽出してもよい。
○第3実施形態において、上位制御装置70は、照射点P1から直線を抽出する前に、外れ値除去フィルタを用いて、外れ値を除去してもよい。
【0149】
○第3実施形態において、レーザー距離計81を用いて、コンテナC1に積まれたパレットにフォークリフト10を誘導してもよい。一例として、コンテナC1に積載された平パレットを移動目標とし、平パレットにフォークリフト10を誘導する場合について説明する。
【0150】
図18に示すように、パレットFPは、平パレットである。パレットFPは、フォーク31が差し込まれる差込孔H1を画定する画定面HSと、差込孔H1が開口する外面OFPと、を備える。差込孔H1は2つ設けられている。パレットFPは、差込孔H1が水平方向に開口する状態でコンテナC1に置かれている。上位制御装置70は、外面OFPのうち水平方向に互いに最も離間した2つのエッジE11,E12の位置を導出することで、2つのエッジE11,E12の中間位置をパレットFPの地図座標として導出することができる。
図18から把握できるように、外面OFPにレーザーが照射された場合、照射点P1は差込孔H1の存在する位置で途切れることになる。2つのエッジE11,E12にレーザーが照射されることで得られる照射点P1を縁照射点PE11,PE12とする。上位制御装置70は、地図座標系のXY平面でエッジE11,E12が含まれる直線を抽出した後に、この直線から縁照射点PE11,PE12を抽出する。上位制御装置70は、直線上に位置する照射点P1のうち直線の延びる方向の片側に対して予め定められた距離以上隣り合う照射点P1が存在しない2つの照射点P1を、縁照射点PE11,PE12として抽出する。この場合、予め定められた距離として、水平方向のうち差込孔H1の延びる方向に直交する方向の差込孔H1の寸法よりも長い距離を設定する。これにより、画定面HSと外面OFPとが交差することによるエッジE13,E14に照射された照射点P1が縁照射点として抽出されないようにすることができる。
【0151】
また、パレットFPは、2つの画定面HSと外面OFPとが交差することによるエッジのうち、水平方向に互いに最も近接した2つのエッジE13,E14を備える。上位制御装置70は、この2つのエッジE13,E14の位置を検出することで、地図座標系におけるパレットPの位置及び姿勢を導出することができる。2つのエッジE13,E14にレーザーが照射されることで得られる照射点P1を縁照射点PE13,PE14とする。この場合、予め定められた距離として、水平方向のうち差込孔H1の延びる方向に直交する方向の差込孔H1の寸法よりも短い距離が設定される。これにより、2つのエッジE13,E14にレーザーが照射されることによる照射点P1を縁照射点PE13,PE14として抽出できるようにする。この場合、前述した2つのエッジE11,E12に照射された照射点P1についても縁照射点PE11,PE12として抽出され得る。4つの縁照射点PE11,PE12,PE13,PE14が抽出された場合、互いに最も離間する2つの縁照射点PE11,PE12を除去するなど、2つのエッジE11,E12に照射された照射点P1については縁照射点PE11,PE12として抽出されないようにすればよい。
【0152】
なお、レーザー距離計81を用いて、パレットの特徴を検出することができれば、平パレットに限られず、レーザー距離計81を用いて、パレットの地図座標を導出することができる。レーザー距離計81を用いてパレットの地図座標を導出できる場合、上位制御装置70は、レーザー距離計81を用いて、荷取り作業及び荷積み作業の両方をフォークリフト10に行わせることができる。従って、荷役システムCS1は、カメラ60を備えていなくてもよい。上位制御装置70がカメラ60を用いることなく移動目標の地図座標を導出する場合、固定マーカーMA1,MA2を柱Pi1,Pi2に設けなくてもよい。同様に、移動目標にマーカーを設けなくてもよい。
【0153】
上位制御装置70は、パレットFPのセンサ座標を導出することもできる。この場合、上記した処理を、地図座標に代えてセンサ座標を用いて行えばよい。上位制御装置70がパレットFPのセンサ座標を導出する場合、パレットFPのセンサ座標から地図座標への変換は、制御装置53で行われるようにしてもよいし、上位制御装置70で行われるようにしてもよい。パレットFPのセンサ座標から地図座標への変換を制御装置53が行う場合、センサ座標系の座標軸の向きと地図座標系の座標軸の向きとを一致させる。制御装置53は、パレットFPのセンサ座標を受信すると、センサ座標系の原点と地図座標系の原点とのずれの分だけ、パレットFPのセンサ座標をずらす。パレットFPのカメラ座標から地図座標への変換を上位制御装置70が行う場合、上位制御装置70は、パレットFPのセンサ座標と、柱Pi1,Pi2のセンサ座標を用いた三辺測量によってパレットFPの地図座標を導出してもよいし、センサ座標系と地図座標系との傾きθを用いてパレットFPの地図座標を導出してもよい。地図座標系でのパレットFPの座標を得られる情報は、パレットFPの地図座標であってもよいし、パレットFPのセンサ座標であってもよい。
【0154】
○各実施形態において、上位制御装置70が行う各種処理には、上位制御装置70の操作者が行う入力装置77の操作が介在していてもよい。各実施形態において、上位制御装置70は、入力装置77によりパレットPの地図座標を導出することが指示された場合に、パレットPの地図座標を導出し、パレットPまでフォークリフト10を誘導してもよい。上位制御装置70は、入力装置77によりフォークリフト10に移動開始指令を送信することが指示された場合に、フォークリフト10に移動開始指令を送信してもよい。上位制御装置70は、入力装置77によりフォークリフト10の荷取り作業の開始が指示された場合に、フォークリフト10に荷取り指令を送信してもよい。荷取り指令とは、フォークリフト10に荷取り作業を開始させるための指令である。上位制御装置70が荷取り指令を送信する場合、フォークリフト10は、パレットPまで移動してから荷取り指令を受信するまでの間、荷取り作業を行わずに待機する。
【0155】
第3実施形態において、上位制御装置70は、入力装置77によりコンテナC1の地図座標を導出することが指示された場合に、コンテナC1の地図座標を導出し、コンテナC1までフォークリフト10を誘導してもよい。上位制御装置70は、入力装置77によりフォークリフト10の荷積み作業の開始が指示された場合に、フォークリフト10に荷積み指令を送信してもよい。荷積み指令とは、フォークリフト10に荷積み作業を開始させるための指令である。上位制御装置70が荷積み指令を送信する場合、フォークリフト10は、コンテナC1まで移動してから荷積み指令を受信するまでの間、荷積み作業を行わずに待機する。
【0156】
○第3実施形態において、上位制御装置70は、第1エッジ検出処理、及び第2エッジ検出処理のうちいずれかのみを行ってもよい。上位制御装置70が、第1エッジ検出処理のみを行う場合、上位制御装置70は、第1エッジ検出処理によって検出された縁照射点PE1,PE2の地図座標をエッジE1,E2の位置とする。上位制御装置70が、第2エッジ検出処理のみを行う場合、上位制御装置70は、第2エッジ検出処理によって検出された縁照射点PE1,PE2の地図座標をエッジE1,E2の位置とする。また、上位制御装置70は、エッジE1,E2の位置を補正しなくてもよい。エッジE1,E2の位置とは、第1エッジ検出処理によって検出された縁照射点PE1,PE2の地図座標であってもよいし、この地図座標を補正した後の地図座標であってもよい。エッジE1,E2の位置とは、第2エッジ検出処理によって検出された縁照射点PE1,PE2の地図座標であってもよいし、この地図座標を補正した後の地図座標であってもよい。エッジE1,E2の位置とは、実施形態のように第1エッジ検出処理及び第2エッジ検出処理の両方を用いて導出された地図座標であってもよいし、この地図座標を補正した後の地図座標であってもよい。いずれの場合であっても、エッジE1,E2の位置から、コンテナC1の地図座標を導出し、フォークリフト10を誘導することができる。
【0157】
○第3実施形態において、エッジE1,E2の位置を補正する際に行われるフィルタ処理は、カルマンフィルタや移動平均フィルタであってもよい。
○第3実施形態において、センサ座標系での地図座標系の原点の座標を把握できており、かつ、センサ座標系の座標軸の向きと地図座標系の座標軸の向きとを一致させていれば、傾きθを導出しなくてもよい。記憶部72や補助記憶装置76など制御部75が読み取り可能な情報を記憶する記憶装置には、センサ座標系での地図座標系の原点の座標が記憶されている。センサ座標系での地図座標系の原点の座標とは、センサ座標系の原点と地図座標系の原点との座標のずれともいえる。上位制御装置70は、照射点P1のセンサ座標を、センサ座標系での地図座標系の原点の座標分だけずらす。これにより、照射点P1のセンサ座標は、地図座標系の原点を基準とした座標になり、照射点P1のセンサ座標を地図座標に変換できる。
【0158】
上位制御装置70は、傾きθを導出しなくてもよいため、傾きθを導出するために、上位制御装置70によって2つの柱Pi1,Pi2のセンサ座標が取得されなくてもよい。従って、停車位置A1を2つの柱Pi1,Pi2に合わせて設定する必要がなく、停車位置A1の自由度が向上する。
【0159】
○第3実施形態において、上位制御装置70は、コンテナC1のセンサ座標を導出した後に、コンテナC1のセンサ座標をコンテナC1の地図座標に変換してもよい。コンテナC1のセンサ座標は、ステップS24~ステップS29で行われた処理を、センサ座標を用いて行うことで導出することができる。コンテナC1のセンサ座標から地図座標への変換は、ステップS23と同様の処理によって行うことができる。また、柱Pi1,Pi2を用いた三辺測量によってコンテナC1のセンサ座標から地図座標への変換を行ってもよい。
【0160】
なお、地図座標系でのレーザー距離計81の座標を把握できており、かつ、センサ座標系の座標軸の向きと地図座標系の座標軸の向きとを一致させていれば、コンテナC1のセンサ座標からコンテナC1の地図座標への変換は、制御装置53によって行われてもよい。上位制御装置70は、コンテナC1のセンサ座標を導出すると、コンテナC1のセンサ座標をフォークリフト10に送信する。制御装置53は、コンテナC1のセンサ座標を受信すると、コンテナC1のセンサ座標からコンテナC1の地図座標を導出する。記憶部55や補助記憶装置56など制御装置53の読み取り可能な情報を記憶する記憶装置には、地図座標系でのレーザー距離計81の座標が記憶されている。制御装置53は、コンテナC1のセンサ座標を受信すると、地図座標系の原点と地図座標系でのレーザー距離計81の座標とのずれの分だけ、コンテナC1のセンサ座標をずらす。これにより、制御装置53は、コンテナC1のセンサ座標からコンテナC1の地図座標を導出することができる。このように、地図座標系でのレーザー距離計81の座標を把握できていれば、制御装置53は、コンテナC1のセンサ座標からコンテナC1の地図座標を取得することができる。この場合、地図座標系でのコンテナC1の座標を得られる情報は、コンテナC1のセンサ座標である。
【0161】
○第1実施形態において、移動目標はトラックTであってもよい。移動目標をトラックTとする場合、トラックTにマーカーを設ける。上位制御装置70は、マーカーのカメラ座標をトラックTのカメラ座標として導出する。トラックTのカメラ座標から地図座標への変換は、制御装置53で行われるようにしてもよいし、上位制御装置70で行われるようにしてもよい。トラックTのカメラ座標から地図座標への変換を制御装置53が行う場合、カメラ座標系の座標軸の向きと地図座標系の座標軸の向きとを一致させる。制御装置53は、トラックTのカメラ座標を受信すると、カメラ座標系の原点と地図座標系の原点とのずれの分だけ、トラックTのカメラ座標をずらす。トラックTのカメラ座標から地図座標への変換を上位制御装置70が行う場合、上位制御装置70は、マーカーを用いて、柱Pi1,Pi2を用いた三辺測量によりトラックTの地図座標を導出することができる。地図座標系でのトラックTの座標を得られる情報は、トラックTの地図座標であってもよいし、トラックTのカメラ座標であってもよい。上位制御装置70は、トラックTにフォークリフト10を誘導することができる。
【0162】
同様に、第3実施形態において、移動目標はトラックTCであってもよい。移動目標をトラックTCとする場合、上位制御装置70は、教師データを機械学習モデルに入力して生成された学習済みモデルによってトラックTCのカメラ座標を導出してもよい。上位制御装置70の記憶部72や補助記憶装置76など制御部75の読み取り可能な記憶装置には、学習済みモデルが記憶されている。上位制御装置70は、カメラ60から入力される画像データからトラックTCのカメラ座標を導出する。機械学習は、第2実施形態と同様の手法で行うことができる。教師データとしては、トラックTCを撮像した画像データにトラックTCのカメラ座標をラベルとして付与したデータを用いる。トラックTCが停車位置A11に停車すると、上位制御装置70は、トラックTCのカメラ座標を導出することができる。トラックTCのカメラ座標から地図座標への変換は、制御装置53で行われるようにしてもよいし、上位制御装置70で行われるようにしてもよい。トラックTCのカメラ座標から地図座標への変換を制御装置53が行う場合、カメラ座標系の座標軸の向きと地図座標系の座標軸の向きとを一致させる。制御装置53は、トラックTCのカメラ座標を受信すると、カメラ座標系の原点と地図座標系の原点とのずれの分だけ、トラックTCのカメラ座標をずらす。トラックTCのカメラ座標から地図座標への変換を上位制御装置70が行う場合、上位制御装置70は、トラックTCのカメラ座標と、柱Pi1,Pi2のカメラ座標を用いた三辺測量によってトラックTCの地図座標を導出してもよいし、カメラ座標系と地図座標系との傾きを用いてトラックTCの地図座標を導出してもよい。上位制御装置70は、トラックTCにフォークリフト10を誘導することができる。
【0163】
○第3実施形態において、コンテナC1にマーカーを設けて、マーカーを用いてコンテナC1にフォークリフト10を誘導できるようにしてもよい。上位制御装置70は、マーカーのカメラ座標をコンテナC1のカメラ座標として導出する。コンテナC1のカメラ座標から地図座標への変換は、制御装置53で行われるようにしてもよいし、上位制御装置70で行われるようにしてもよい。コンテナC1のカメラ座標から地図座標への変換を制御装置53が行う場合、カメラ座標系の座標軸の向きと地図座標系の座標軸の向きとを一致させる。制御装置53は、コンテナC1のカメラ座標を受信すると、カメラ座標系の原点と地図座標系の原点とのずれの分だけ、コンテナC1のカメラ座標をずらす。コンテナC1のカメラ座標から地図座標への変換を上位制御装置70が行う場合、上位制御装置70は、コンテナC1のカメラ座標と、柱Pi1,Pi2のカメラ座標を用いた三辺測量によってコンテナC1の地図座標を導出してもよいし、カメラ座標系と地図座標系との傾きを用いてコンテナC1の地図座標を導出してもよい。地図座標系でのコンテナC1の座標を得られる情報は、コンテナC1の地図座標であってもよいし、コンテナC1のカメラ座標であってもよい。
【0164】
○第3実施形態において、移動目標はコンテナC1であってもよい。移動目標をコンテナC1とする場合、上位制御装置70は、教師データを機械学習モデルに入力して生成された学習済みモデルによってコンテナC1のカメラ座標を導出する。上位制御装置70の記憶部72や補助記憶装置76など制御部75の読み取り可能な記憶装置には、学習済みモデルが記憶されている。上位制御装置70は、カメラ60から入力される画像データからコンテナC1のカメラ座標を導出する。機械学習は、第2実施形態と同様の手法で行うことができる。教師データとしては、コンテナC1を撮像した画像データにコンテナC1のカメラ座標をラベルとして付与したデータを用いる。トラックTCが停車位置A11に停車すると、上位制御装置70は、コンテナC1のカメラ座標を導出することができる。コンテナC1のカメラ座標から地図座標への変換は、制御装置53で行われるようにしてもよいし、上位制御装置70で行われるようにしてもよい。上位制御装置70は、コンテナC1にフォークリフト10を誘導することができる。
【0165】
○第3実施形態において、レーザー距離計81を用いて、トラックTCの地図座標を導出してもよい。例えば、上位制御装置70は、トラックTCにレーザーが照射されたときの照射点P1のセンサ座標を地図座標に変換する。上位制御装置70は、照射点P1のパターンから、特徴となり得る照射点P1を抽出する。この照射点P1の地図座標をトラックTCの地図座標としてもよい。同様に、上位制御装置70は、照射点P1のパターンからトラックTCのセンサ座標を導出してもよい。この場合、トラックTCのセンサ座標から地図座標への変換は、制御装置53で行われるようにしてもよいし、上位制御装置70で行われるようにしてもよい。
【0166】
○第1実施形態において、パレットPの地図座標は、カメラ座標系と地図座標系との傾きを用いて導出されてもよい。第3実施形態に記載した傾きθを導出するのと同様の態様で、カメラ座標系と地図座標系との傾きは導出することができる。上位制御装置70は、第3実施形態に記載したセンサ座標から地図座標への変換と同様の態様で、カメラ座標を地図座標に変換することができる。
【0167】
○第3実施形態において、カメラ60をトラック検出カメラとして兼用するようにしてもよい。
○第3実施形態において、レーザー距離計81は、少なくとも水平方向への照射角度を変更しながらレーザーを照射できるものであればよく、水平方向に加えて鉛直方向への照射角度を変更しながらレーザーを照射できるものであってもよい。この場合、センサ座標系は、座標軸としてX軸及びY軸に直交するZ軸を備えていてもよい。
【0168】
○各実施形態において、センサとしては、ミリ波レーダーやステレオカメラを用いてもよい。
○各実施形態において、パレットPは、平パレットやポストパレット等、どのようなパレットであってもよい。
【0169】
○各実施形態において、フォークリフト10が荷取り作業を行う対象となるパレットPを積載したトラックT,TCは、平ボディのトラックに限られず、コンテナトラックなどであってもよい。フォークリフト10が荷取り作業を行う対象となるパレットPを積載した搬送車は、トラックT,TC以外の車両であってもよい。
【0170】
○コンテナC1は、荷Wを収容できればよく、フォークリフト10によって運搬可能なものであってもよい。
○各実施形態において、トラックT,TCは、2つの柱Pi1,Pi2を用いてコンテナC1の地図座標を導出することができれば、どのように停車してもよい。
【符号の説明】
【0171】
A1,A11…停車位置、C1…移動目標としてのコンテナ、CS,CS1…荷役システム、DA…検出可能範囲、IM…画像データ、MA1,MA2…固定マーカー、MA3,MA4…マーカー、P,FP…移動目標としてのパレット、Pi1,Pi2…固定構造物としての柱、T,TC…移動目標及び搬送車としてのトラック、10…フォークリフト、53…移動制御部として機能する制御装置、56…記憶装置としての補助記憶装置、59…受信部としての通信部、60…センサとしてのカメラ、70…上位制御装置、73…送信部としての指令通信部、81…センサとしてのレーザー距離計。