(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023158660
(43)【公開日】2023-10-30
(54)【発明の名称】行動指示システム
(51)【国際特許分類】
G05D 1/02 20200101AFI20231023BHJP
G05D 1/10 20060101ALI20231023BHJP
【FI】
G05D1/02 J
G05D1/10
【審査請求】未請求
【請求項の数】23
【出願形態】OL
(21)【出願番号】P 2023067423
(22)【出願日】2023-04-17
(31)【優先権主張番号】P 2022068214
(32)【優先日】2022-04-18
(33)【優先権主張国・地域又は機関】JP
(71)【出願人】
【識別番号】501428545
【氏名又は名称】株式会社デンソーウェーブ
(74)【代理人】
【識別番号】110000110
【氏名又は名称】弁理士法人 快友国際特許事務所
(72)【発明者】
【氏名】浅原 英行
(72)【発明者】
【氏名】外山 孝広
【テーマコード(参考)】
5H301
【Fターム(参考)】
5H301AA06
5H301BB05
5H301CC04
5H301CC07
5H301DD07
5H301DD16
5H301EE08
5H301EE13
5H301FF06
5H301FF18
5H301GG08
5H301GG09
5H301GG27
(57)【要約】
【課題】無人航空機とは異なる移動用の装置を所定の空間内に準備することなく、無人航空機の行動を指示するための技術を提供する。
【解決手段】行動指示システムは、所定の空間の中を飛行する無人航空機と、前記所定の空間における複数の箇所のそれぞれに表示されている指示コードと、を備え、前記指示コードは、情報コードであり、前記指示コードは、前記無人航空機の進行方向及び前記無人航空機の回転方向のうちの少なくとも1個の指示を示し、前記無人航空機は、前記情報コードから情報を光学的に読み取る光学読取装置を備え、前記無人航空機が、複数個の前記指示コードのうちの第1の指示コードの周囲に位置し、前記光学読取装置が、前記第1の指示コードから第1の指示を読み取る場合に、前記無人航空機は、前記第1の指示に従った行動を実行する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
所定の空間の中を飛行する無人航空機と、
前記所定の空間における複数の箇所のそれぞれに表示されている指示コードと、
を備え、
前記指示コードは、情報コードであり、
前記指示コードは、前記無人航空機の進行方向及び前記無人航空機の回転方向のうちの少なくとも1個の指示を示し、
前記無人航空機は、前記情報コードから情報を光学的に読み取る光学読取装置を備え、
前記無人航空機が、複数個の前記指示コードのうちの第1の指示コードの周囲に位置し、前記光学読取装置が、前記第1の指示コードから第1の指示を読み取る場合に、前記無人航空機は、前記第1の指示に従った行動を実行する、行動指示システム。
【請求項2】
前記所定の空間は、第1の空間と、前記第1の空間とは異なる第2の空間と、を含み、
前記行動指示システムは、さらに、
前記第1の空間に向かう経路と前記第2の空間に向かう経路との分岐箇所に表示されている前記情報コードである分岐コードを備え、
前記分岐コードは、特定の識別情報を示し、
前記光学読取装置において前記特定の識別情報に対応付けて前記第1の空間への前記進行方向が設定されている状況において、前記無人航空機が、前記分岐コードの周囲に位置し、前記光学読取装置が、前記分岐コードから前記特定の識別情報を読み取る場合に、前記無人航空機は、前記特定の識別情報に対応付けて設定されている前記進行方向に従って前記第1の空間へと移動し、
前記光学読取装置において前記特定の識別情報に対応付けて前記第2の空間への前記進行方向が設定されている状況において、前記無人航空機が、前記分岐コードの周囲に位置し、前記光学読取装置が、前記分岐コードから前記特定の識別情報を読み取る場合に、前記無人航空機は、前記特定の識別情報に対応付けて設定されている前記進行方向に従って前記第2の空間へと移動する、請求項1に記載の行動指示システム。
【請求項3】
前記光学読取装置が、前記第1の空間内に表示されている前記第1の指示コードから前記第1の指示を読み取り、前記無人航空機が、前記第1の指示に従った行動を実行した後に、前記光学読取装置が、前記分岐コードから前記特定の識別情報を再び読み取る場合に、前記無人航空機は、前記第1の空間から特定の箇所へと戻る、請求項2に記載の行動指示システム。
【請求項4】
前記無人航空機は、前記所定の空間内の所定の経路を飛行し、
前記複数の箇所は、前記所定の経路上の箇所であり、
前記複数個の指示コードの少なくとも一部は、前記無人航空機が前記所定の経路に沿って移動するための前記進行方向を示す、請求項1に記載の行動指示システム。
【請求項5】
前記所定の経路は、前記複数個の箇所のうちの第1の箇所と、前記所定の経路において前記第1の箇所の1つ後に位置する、前記複数個の箇所のうちの第2の箇所と、を含み、
前記第1の指示コードは、前記第1の箇所に表示されており、
前記複数個の指示コードのうちの第2の指示コードは、前記第2の箇所に表示されており、
前記行動指示システムは、さらに、
前記所定の空間のうち、前記第2の箇所から前記第1の指示コードによって示される前記進行方向と同じ方向に進んだ箇所に表示されている逆コードを含み、
前記逆コードは、前記第1の指示コードによって示される前記進行方向とは逆の前記進行方向である逆方向を示し、
前記光学読取装置が、前記第1の指示コードから前記第1の指示を読み取った後に、前記光学読取装置が、前記第2の指示コードから前記指示を読み取ることなく、前記逆コードから前記逆方向を読み取る場合に、前記無人航空機は、前記逆方向に移動して前記第2の指示コードの周囲まで移動する、請求項4に記載の行動指示システム。
【請求項6】
前記所定の経路は、前記複数個の箇所のうちの第3の箇所と、前記所定の経路において前記第3の箇所の1つ後に位置する、前記複数個の箇所のうちの第4の箇所と、を含み、
前記第3の箇所には、前記第1の指示コードが表示され、
前記第4の箇所には、前記複数個の指示コードのうちの第4の指示コードが表示され、
前記光学読取装置が前記第1の指示コードから前記第1の指示を読み取ってから予定時間が経過したにも関わらず、前記光学読取装置が、前記第4の指示コードから指示を読み取らない場合に、前記無人航空機は、前記第1の指示である前記進行方向とは逆の前記進行方向に移動して前記第4の指示コードの周囲まで移動する、請求項4に記載の行動指示システム。
【請求項7】
前記第1の指示コードには、前記第3の箇所から前記第4の箇所までの距離が記録されており、
前記予定時間は、前記光学読取装置が前記第1の指示コードから読み取った前記距離を利用して算出される、請求項6に記載の行動指示システム。
【請求項8】
前記所定の経路は、第1の経路と、第2の経路と、第3の経路と、を含み、
前記第1の経路は、前記第3の箇所と前記第4の箇所と含み、
前記第4の箇所は、前記第1の経路の終端であり、
前記第2の経路は、前記第1の経路と交差し、
前記第4の箇所は、前記第2の経路の始端であり、
前記第3の経路は、前記複数の箇所のうちの第5の箇所を含み、
前記第5の箇所は、前記第1の経路の延長線上に位置しており、
前記第5の箇所には、前記複数個の指示コードのうちの第5の指示コードが表示され、
前記第4の箇所に表示されている前記第4の指示コードによって示される前記進行方向は、前記第3の箇所に表示されている前記第1の指示コードによって示される前記進行方向と交差する特定の方向であり、
前記行動指示システムは、さらに、
前記光学読取装置が前記第1の指示コードから前記第1の指示を読み取ってから前記所定の予定時間が経過する前に、前記光学読取装置が、特定の指示コードから特定の指示を読み取る場合に、前記特定の指示が前記特定の方向であるのか否かを判断する第1の判断部を備え、
前記無人航空機は、前記特定の指示コードが前記第4の指示コードであることに起因して、前記特定の指示が前記特定の方向であると判断される場合に、前記第4の指示コードによって示される前記特定の方向に移動し、
前記無人航空機は、前記特定の指示コードが前記第5の指示コードであることに起因して、前記特定の指示が前記特定の方向でないと判断される場合に、前記第1の指示コードによって示される前記進行方向とは逆の前記進行方向に移動して前記第4の指示コードの周囲まで移動する、請求項7に記載の行動指示システム。
【請求項9】
前記行動指示システムは、さらに、
前記無人航空機が前記第1の経路に沿って移動している間に前記光学読取装置が読み取った前記指示コードの個数をカウントするカウント部と、
カウント済みの前記個数に基づいて、前記無人航空機が前記第1の経路の前記終端であるとともに前記第2の経路の前記始端である前記第4の箇所に到達しているのか否かを判断する第2の判断部と、
を備える、請求項8に記載の行動指示システム。
【請求項10】
前記所定の経路は、前記複数個の箇所のうちの第6の箇所と、前記所定の経路において前記第6の箇所の1つ後に位置する、前記複数個の箇所のうちの第7の箇所と、を含み、
前記第6の箇所には、前記第1の指示コードが表示され、
前記第7の箇所には、前記複数個の指示コードのうちの第7の指示コードが表示され、
前記行動指示システムは、さらに、
前記無人航空機が前記第1の指示コードの周囲に位置する場合に、前記無人航空機の現在の位置を示す位置情報をメモリに記憶する記憶部を備え、
前記光学読取装置が前記第1の指示コードから前記第1の指示を読み取った後に、前記光学読取装置が、前記第7の指示コードから前記指示を読み取らない場合に、前記無人航空機は、前記メモリに記憶されている前記位置情報を利用して、前記第1の指示コードの周囲まで移動する、請求項4に記載の行動指示システム。
【請求項11】
前記無人航空機が、前記メモリに記憶されている前記位置情報を利用して、前記第1の指示コードの周囲まで移動した後に、前記光学読取装置が前記第1の指示コードから前記第1の指示を再び読み取る場合に、前記無人航空機は、前記第1の指示に従った行動を実行する、請求項10に記載の行動指示システム。
【請求項12】
前記所定の空間には、第1の棚が設置されており、
前記複数個の指示コードは、前記第1の棚の正面上に設定されている第1の棚経路上に配置されている2個以上の棚コードを含み、
前記2個以上の棚コードのそれぞれは、前記無人航空機が前記第1の棚経路に沿って移動するための前記進行方向を示す、請求項1から11のいずれか一項に記載の行動指示システム。
【請求項13】
前記複数個の指示コードは、前記第1の棚の周囲に配置されている第1の周囲コードを含み、
前記第1の周囲コードは、前記無人航空機の向きを現在の向きから前記光学読取装置に含まれる光学センサが前記第1の棚と対面する向きに変更するための前記回転方向を示す、請求項12に記載の行動指示システム。
【請求項14】
前記所定の空間には、前記第1の棚と、前記第1の棚の裏側に配置されている第2の棚と、が設置されており、
前記複数個の指示コードは、前記第1の棚の周囲に配置されている第2の周囲コードを含み、
前記第2の周囲コードは、前記無人航空機が前記第1の棚経路に沿って移動した後に、前記無人航空機を前記第2の棚の正面上に設定されている第2の棚経路まで移動させるための前記進行方向を示す、請求項13に記載の行動指示システム。
【請求項15】
前記所定の空間には、複数個の物品が配置されており、
前記複数個の物品のそれぞれの表面には、前記情報コードである物品コードが表示されており、
前記無人航空機が、前記複数個の物品のうちの第1の物品の周囲に位置する場合に、前記光学読取装置は、前記第1の物品の表面に表示されている前記物品コードから情報を読み取る、請求項1から11のいずれか一項に記載の行動指示システム。
【請求項16】
前記無人航空機が前記複数個の物品のうちの第2の物品の周囲に位置する場合において、前記光学読取装置が、前記第2の物品の表面に表示されている前記物品コードから情報を読み取れないときに、前記無人航空機は、前記無人航空機の向き及び位置の少なくとも一方を変更するように行動する、請求項15に記載の行動指示システム。
【請求項17】
前記複数個の指示コードのそれぞれには、前記無人航空機が向き及び位置の少なくとも一方を変更する範囲を示す範囲情報が記録されており、
前記無人航空機は、前記指示コードから読み取った前記範囲情報に従って、前記無人航空機の向き及び位置の少なくとも一方を変更するように行動する、請求項16に記載の行動指示システム。
【請求項18】
前記無人航空機が前記複数個の箇所のうちの2個の箇所の間を飛行する間に、前記光学読取装置が前記物品コードから前記情報を読み取らなかった場合に、前記光学読取装置は、前記2個の箇所の間の位置を示す情報と、前記2個の箇所の間において前記光学読取装置が撮像した画像と、をメモリに記憶させる、請求項15に記載の行動指示システム。
【請求項19】
前記指示コードは、第1種の前記情報コードであり、
前記物品コードは、前記第1種とは異なる第2種の前記情報コードである、請求項15に記載の行動指示システム。
【請求項20】
前記光学読取装置は、
前記所定の空間における水平方向に向く水平光学センサと、
前記所定の空間における垂直方向に向く垂直光学センサと、
を備える、請求項1から11のいずれか一項に記載の行動指示システム。
【請求項21】
前記指示コードは、2次元コードであり、
前記2次元コードは、記録領域を含み、
前記光学読取装置は、前記2次元コードのうちの前記記録領域とは異なる他の領域の態様を分析して、前記指示コードから前記指示を読み取り、
前記記録領域は、前記指示を示す情報を記録しない、請求項1から11のいずれか一項に記載の行動指示システム。
【請求項22】
前記他の領域は、前記2次元コードに含まれるシンボルを含み、
前記光学読取装置は、前記2次元コードの内側における前記シンボルのレイアウトを分析して、前記指示コードから前記指示を読み取る、請求項21に記載の行動指示システム。
【請求項23】
前記他の領域は、前記2次元コードに含まれる所定の画像を含み、
前記光学読取装置は、前記所定の画像を分析して、前記指示コードから前記指示を読み取る、請求項21に記載の行動指示システム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書で開示する技術は、無人航空機の行動を指示するための行動指示システムに関する。
【背景技術】
【0002】
特許文献1には、倉庫内の複数個の棚の間を走行する車と、給電ワイヤを介して移動機に接続されているドローンと、を備えるシステムが開示されている。車が棚と棚の間を移動することにより、ドローンが棚と棚の間の任意の箇所に案内される。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1の技術では、ドローンを第1の箇所から第1の箇所とは異なる第2の箇所に移動させるために、ドローンとは異なる車を第1の箇所から第2の箇所に移動させる必要がある。
【0005】
本明細書では、無人航空機とは異なる移動用の装置(例えば車)を所定の空間内に準備することなく、無人航空機の行動を指示するための技術を提供する。
【課題を解決するための手段】
【0006】
本明細書で開示する行動指示システムは、所定の空間の中を飛行する無人航空機と、前記所定の空間における複数の箇所のそれぞれに表示されている指示コードと、を備え、前記指示コードは、情報コードであり、前記指示コードは、前記無人航空機の進行方向及び前記無人航空機の回転方向のうちの少なくとも1個の指示を示し、前記無人航空機は、前記情報コードから情報を光学的に読み取る光学読取装置を備え、前記無人航空機が、複数個の前記指示コードのうちの第1の指示コードの周囲に位置し、前記光学読取装置が、前記第1の指示コードから第1の指示を読み取る場合に、前記無人航空機は、前記第1の指示に従った行動を実行する。
【0007】
上記の構成によれば、所定の空間内における複数の箇所に表示されている指示コードを利用して、無人航空機の行動を指示することができる。無人航空機とは異なる移動用の装置を所定の空間内に準備しなくてもよい。
【0008】
前記所定の空間は、第1の空間と、前記第1の空間とは異なる第2の空間と、を含み、前記行動指示システムは、さらに、前記第1の空間に向かう経路と前記第2の空間に向かう経路との分岐箇所に表示されている前記情報コードである分岐コードを備え、前記分岐コードは、特定の識別情報を示し、前記光学読取装置において前記特定の識別情報に対応付けて前記第1の空間への前記進行方向が設定されている状況において、前記無人航空機が、前記分岐コードの周囲に位置し、前記光学読取装置が、前記分岐コードから前記特定の識別情報を読み取る場合に、前記無人航空機は、前記特定の識別情報に対応付けて設定されている前記進行方向に従って前記第1の空間へと移動し、前記光学読取装置において前記特定の識別情報に対応付けて前記第2の空間への前記進行方向が設定されている状況において、前記無人航空機が、前記分岐コードの周囲に位置し、前記光学読取装置が、前記分岐コードから前記特定の識別情報を読み取る場合に、前記無人航空機は、前記特定の識別情報に対応付けて設定されている前記進行方向に従って前記第2の空間へと移動してもよい。
【0009】
上記の構成によれば、分岐コードによって示される特定の識別情報に対応付けて設定されている進行方向を切り換えることにより、無人航空機が移動すべき空間を第1の空間と第2の空間のいずれかに切り換えることができる。
【0010】
前記光学読取装置が、前記第1の空間内に表示されている前記第1の指示コードから前記第1の指示を読み取り、前記無人航空機が、前記第1の指示に従った行動を実行した後に、前記光学読取装置が、前記分岐コードから前記特定の識別情報を再び読み取る場合に、前記無人航空機は、前記第1の空間から特定の箇所へと戻ってもよい。
【0011】
上記の構成によれば、分岐コードを利用して無人航空機を第1の空間に移動させるだけでなく、同じ分岐コードを利用して無人航空機を特定の箇所に戻すことができる。
【0012】
前記無人航空機は、前記所定の空間内の所定の経路を飛行し、前記複数の箇所は、前記所定の経路上の箇所であり、前記複数個の指示コードの少なくとも一部は、前記無人航空機が前記所定の経路に沿って移動するための前記進行方向を示してもよい。
【0013】
上記の構成によれば、複数個の指示コードの少なくとも一部を利用して、無人航空機を所定の経路に沿って移動させることができる。
【0014】
前記所定の経路は、前記複数個の箇所のうちの第1の箇所と、前記所定の経路において前記第1の箇所の1つ後に位置する、前記複数個の箇所のうちの第2の箇所と、を含み、前記第1の指示コードは、前記第1の箇所に表示されており、前記複数個の指示コードのうちの第2の指示コードは、前記第2の箇所に表示されており、前記行動指示システムは、さらに、前記所定の空間のうち、前記第2の箇所から前記第1の指示コードによって示される前記進行方向と同じ方向に進んだ箇所に表示されている逆コードを含み、前記逆コードは、前記第1の指示コードによって示される前記進行方向とは逆の前記進行方向である逆方向を示し、前記光学読取装置が、前記第1の指示コードから前記第1の指示を読み取った後に、前記光学読取装置が、前記第2の指示コードから前記指示を読み取ることなく、前記逆コードから前記逆方向を読み取る場合に、前記無人航空機は、前記逆方向に移動して前記第2の指示コードの周囲まで移動してもよい。
【0015】
上記の構成によれば、第2の指示コードの読み飛ばしが発生する場合でも、逆コードを利用して、第2の指示コードを光学読取装置に読み取らせることができる。
【0016】
前記所定の経路は、前記複数個の箇所のうちの第3の箇所と、前記所定の経路において前記第3の箇所の1つ後に位置する、前記複数個の箇所のうちの第4の箇所と、を含み、前記第3の箇所には、前記第1の指示コードが表示され、前記第4の箇所には、前記複数個の指示コードのうちの第4の指示コードが表示され、前記光学読取装置が前記第1の指示コードから前記第1の指示を読み取ってから予定時間が経過したにも関わらず、前記光学読取装置が、前記第4の指示コードから指示を読み取らない場合に、前記無人航空機は、前記第1の指示である前記進行方向とは逆の前記進行方向に移動して前記第4の指示コードの周囲まで移動してもよい。
【0017】
上記の構成によれば、第4の指示コードの読み飛ばしが発生する場合でも、所定の予定時間を利用して、第4の指示コードを光学読取装置に読み取らせることができる。
【0018】
前記第1の指示コードには、前記第3の箇所から前記第4の箇所までの距離が記録されており、前記予定時間は、前記光学読取装置が前記第1の指示コードから読み取った前記距離を利用して算出されてもよい。
【0019】
複数個の箇所が等間隔に並んでいない場合には、複数個の箇所のそれぞれについて、当該箇所から次の箇所に到達するまでの予定時間が一定でない。上記の構成によれば、第3の箇所から第4の箇所までの実際の距離を第1の指示コードから読み取り、第4の箇所へ到達する予定時間を算出することができる。
【0020】
前記所定の経路は、第1の経路と、第2の経路と、第3の経路と、を含み、前記第1の経路は、前記第3の箇所と前記第4の箇所と含み、前記第4の箇所は、前記第1の経路の終端であり、前記第2の経路は、前記第1の経路と交差し、前記第4の箇所は、前記第2の経路の始端であり、前記第3の経路は、前記複数の箇所のうちの第5の箇所を含み、
前記第5の箇所は、前記第1の経路の延長線上に位置しており、前記第5の箇所には、前記複数個の指示コードのうちの第5の指示コードが表示され、前記第4の箇所に表示されている前記第4の指示コードによって示される前記進行方向は、前記第3の箇所に表示されている前記第1の指示コードによって示される前記進行方向と交差する特定の方向であり、前記行動指示システムは、さらに、前記光学読取装置が前記第1の指示コードから前記第1の指示を読み取ってから前記所定の予定時間が経過する前に、前記光学読取装置が、特定の指示コードから特定の指示を読み取る場合に、前記特定の指示が前記特定の方向であるのか否かを判断する第1の判断部を備え、前記無人航空機は、前記特定の指示コードが前記第4の指示コードであることに起因して、前記特定の指示が前記特定の方向であると判断される場合に、前記第4の指示コードによって示される前記特定の方向に移動し、前記無人航空機は、前記特定の指示コードが前記第5の指示コードであることに起因して、前記特定の指示が前記特定の方向でないと判断される場合に、前記第1の指示コードによって示される前記進行方向とは逆の前記進行方向に移動して前記第4の指示コードの周囲まで移動してもよい。
【0021】
上記の構成によれば、第3の指示コードの次に第4の指示コードが読み取られるべき状況において、他の第5の指示コードが誤って読み取られる事態が発生する場合でも、第4の指示コードを光学読取装置に正しく読み取らせることができる。
【0022】
前記行動指示システムは、さらに、前記無人航空機が前記第1の経路に沿って移動している間に前記光学読取装置が読み取った前記指示コードの個数をカウントするカウント部と、カウント済みの前記個数に基づいて、前記無人航空機が前記第1の経路の前記終端であるとともに前記第2の経路の前記始端である前記第4の箇所に到達しているのか否かを判断する第2の判断部を備えてもよい。
【0023】
上記の構成によれば、他の第5の指示コードが誤って読み取られる事態が発生する可能性のある終端に無人航空機が到達していることを判断することができる。
【0024】
前記所定の経路は、前記複数個の箇所のうちの第6の箇所と、前記所定の経路において前記第6の箇所の1つ後に位置する、前記複数個の箇所のうちの第7の箇所と、を含み、前記第6の箇所には、前記第1の指示コードが表示され、前記第7の箇所には、前記複数個の指示コードのうちの第7の指示コードが表示され、前記行動指示システムは、さらに、前記無人航空機が前記第1の指示コードの周囲に位置する場合に、前記無人航空機の現在の位置を示す位置情報をメモリに記憶する記憶部を備え、前記光学読取装置が前記第1の指示コードから前記第1の指示を読み取った後に、前記光学読取装置が、前記第7の指示コードから前記指示を読み取らない場合に、前記無人航空機は、前記メモリに記憶されている前記位置情報を利用して、前記第1の指示コードの周囲まで移動してもよい。
【0025】
第1の指示コードの読み取り後に第7の指示コードの読み取りが実行されない場合には、無人航空機が所定の経路から外れている可能性がある。上記の構成によれば、無人航空機が所定の経路から外れる場合でも、メモリに記憶される位置情報を利用して、無人航空機を所定の経路に戻すことができる。
【0026】
前記無人航空機が、前記メモリに記憶されている前記位置情報を利用して、前記第1の指示コードの周囲まで移動した後に、前記光学読取装置が前記第1の指示コードから前記第1の指示を再び読み取る場合に、前記無人航空機は、前記第1の指示に従った行動を実行してもよい。
【0027】
例えば、無人航空機が第1の指示コードの周囲まで移動することを試みるものの、外乱(例えば風)の影響により、無人航空機が第1の指示コードの周囲(即ち所定の経路)に戻らない可能性がある。光学読取装置が第1の指示コードから第1の指示を再び読み取ることは、無人航空機が所定の経路に戻ったことを意味する。上記の構成によれば、無人航空機が所定の経路に戻った後に第1の指示に従った行動を無人航空機に実行させることができる。
【0028】
前記所定の空間には、第1の棚が設置されており、前記複数個の指示コードは、前記第1の棚の正面上に設定されている第1の棚経路上に配置されている2個以上の棚コードを含み、前記2個以上の棚コードのそれぞれは、前記無人航空機が前記第1の棚経路に沿って移動するための前記進行方向を示してもよい。
【0029】
上記の構成によれば、棚に配置されている物品(例えば商品、機材、部品等)を管理する目的で上記の行動指示システムを利用することができる。
【0030】
前記複数個の指示コードは、前記第1の棚の周囲に配置されている第1の周囲コードを含み、前記第1の周囲コードは、前記無人航空機の向きを現在の向きから前記光学読取装置に含まれる光学センサが前記第1の棚と対面する向きに変更するための前記回転方向を示してもよい。
【0031】
上記の構成によれば、第1の周囲コードを利用して、無人航空機の向きを現在の向きから光学センサが第1の棚と対面する向きに変更することができる。
【0032】
前記所定の空間には、前記第1の棚と、前記第1の棚の裏側に配置されている第2の棚と、が設置されており、前記複数個の指示コードは、前記第1の棚の周囲に配置されている第2の周囲コードを含み、前記第2の周囲コードは、前記無人航空機が前記第1の棚経路に沿って移動した後に、前記無人航空機を前記第2の棚の正面上に設定されている第2の棚経路まで移動させるための前記進行方向を示してもよい。
【0033】
上記の構成によれば、第1の棚の管理に続けて第1の棚の裏側に配置されている第2の棚を管理することができる。
【0034】
前記所定の空間には、複数個の物品が配置されており、前記複数個の物品のそれぞれの表面には、前記情報コードである物品コードが表示されており、前記無人航空機が、前記複数個の物品のうちの第1の物品の周囲に位置する場合に、前記光学読取装置は、前記第1の物品の表面に表示されている前記物品コードから情報を読み取ってもよい。
【0035】
上記の構成によれば、無人航空機が所定の空間を飛行している間に、棚に配置されている物品から情報を収集することができる。
【0036】
前記無人航空機が前記複数個の物品のうちの第2の物品の周囲に位置する場合において、前記光学読取装置が、前記第2の物品の表面に表示されている前記物品コードから情報を読み取れないときに、前記無人航空機は、前記無人航空機の向き及び位置の少なくとも一方を変更するように行動してもよい。
【0037】
光学読取装置が第2の物品コードの商品コードに向いていない場合には、当該物品コードから情報を読み取れない場合がある。上記の構成によれば、光学読取装置が物品コードへ向くように、無人航空機の向き及び位置の少なくとも一方を変更することができる。
【0038】
前記複数個の指示コードのそれぞれには、前記無人航空機が向き及び位置の少なくとも一方を変更する範囲示す範囲情報が記録されており、前記無人航空機は、前記指示コードから読み取った前記範囲情報に従って、前記無人航空機の向き及び位置の少なくとも一方を変更するように行動してもよい。
【0039】
上記の構成によれば、複数個の指示コードを利用して、無人航空機の向き及び位置の少なくとも一方を変更する範囲を制御することができる。
【0040】
前記無人航空機が前記複数個の箇所のうちの2個の箇所の間を飛行する間に、前記光学読取装置が前記物品コードから前記情報を読み取らなかった場合に、前記光学読取装置は、前記2個の箇所の間の位置を示す情報と、前記2個の箇所の間において前記光学読取装置が撮像した画像と、をメモリに記憶させてもよい。
【0041】
上記の構成によれば、物品コードから情報を読み取らなかった2個の箇所の間の位置と画像がメモリに記憶される。ユーザは、メモリから位置及び画像を取得して、物品コードから情報を読み取らなかった2個の箇所の間の状況を知ることができる。
【0042】
前記指示コードは、第1種の前記情報コードであり、前記物品コードは、前記第1種とは異なる第2種の前記情報コードであってもよい。
【0043】
上記の構成によれば、指示コードと物品コードとが混同して処理されることを抑制することができる。
【0044】
前記光学読取装置は、前記所定の空間における水平方向に向く水平光学センサと、
前記所定の空間における垂直方向に向く垂直光学センサと、を備えていてもよい。
【0045】
指示コードは、所定の空間内の垂直な面(例えば壁)だけでなく、所定の空間内の水平な面(例えば床)に表示され得る。例えば、1個の光学センサで垂直な面の指示コードだけでなく水平な面の指示コードを撮像する比較例が想定される。この比較例では、両者を撮像するために無人航空機のロール又はピッチを調整する必要がある。これに対して、上記の構成によれば、垂直な面の指示コードは水平光学センサで撮像し、水平な面の指示コードは垂直光学センサで撮像することができる。両者を撮像するために無人航空機のロール又はピッチを調整する必要がない。
【0046】
前記指示コードは、2次元コードであり、前記2次元コードは、記録領域を含み、前記光学読取装置は、前記2次元コードのうちの前記記録領域とは異なる他の領域の態様を分析して、前記指示コードから前記指示を読み取り、前記記録領域は、前記指示を示す情報を記録しなくてもよい。
【0047】
前記他の領域は、前記2次元コードに含まれるシンボルを含み、前記光学読取装置は、前記2次元コードの内側における前記シンボルのレイアウトを分析して、前記指示コードから前記指示を読み取ってもよい。
【0048】
前記他の領域は、前記2次元コードに含まれる所定の画像を含み、前記光学読取装置は、前記所定の画像を分析して、前記指示コードから前記指示を読み取ってもよい。
【0049】
上記の構成によれば、進行方向等の指示を記録領域に記録する構成と比較して、記録領域に記録する情報量が増大することを抑制することができる。
【図面の簡単な説明】
【0050】
【
図1】行動指示システムの概要及び具体的な飛行経路を示す。
【
図3】無人航空機の構成及び情報読取端末のブロック図を示す。
【
図4】第2実施例に係る行動指示システムの概要を示す。
【
図8】第3実施例に係る棚の構成及び具体的な飛行経路を示す。
【
図9】第4実施例に係る棚の構成及び具体的な飛行経路を示す。
【
図10】第4実施例に係る読み飛ばし対処処理のフローチャート図を示す。
【
図11】第5実施例に係る棚の構成及び具体的な飛行経路を示す。
【
図12】第5実施例に係る読み飛ばし対処処理のフローチャート図を示す。
【
図13】第6実施例に係る棚コード及び床コードを示す。
【
図14】第7実施例に係る棚コード及び床コードを示す。
【
図15】第8実施例に係る棚の構成及び具体的な飛行経路を示す。
【
図16】第8実施例に係る読み飛ばし対処処理のフローチャート図を示す。
【
図17】第9実施例に係る棚の構成及び具体的な飛行経路を示す。
【
図18】第9実施例に係るバーコード検索処理のフローチャート図を示す。
【発明を実施するための形態】
【0051】
(第1実施例)
(行動指示システム2の構成;
図1、
図2)
行動指示システム2は、倉庫内において無人航空機10の行動を指示するためのシステムである。倉庫には、3個の棚300、400、500が設置されている。
図1は、倉庫を上側から見た平面図である。
図2は、棚300を正面から見た正面図である。なお、棚400、500にも、棚300と同様に、後述する棚コードが表示されているが、図示を省略している。また、各図には、東西南北の方位及び上下の方向を示す座標系が記載されている。例えば、
図1では、紙面左右方向が東西方向と一致するが、これは一例に過ぎない。例えば、紙面左右方向が北南方向と一致してもよい。
【0052】
図2に示すように、棚300には、複数個の商品GDが配置されている。各商品GDの包装には、バーコードBCが表示されている(例えば印字されている)。バーコードBCには、商品を識別する商品情報(例えば商品番号)が記録されている。倉庫は、棚300~500を利用して、複数個の商品GDを保管する。なお、
図2では、1個の商品に、符号GD及びBCを付し、他の商品への当該符号を省略している。また、図面に記載の棚の個数、段数、及び、レイアウトは、一例に過ぎない。
【0053】
行動指示システム2は、無人航空機10と、複数個の床コードFC1~FC8と、複数個の棚コードSC1~SC6と、3個のアクセスポイント100~102と、端末装置200と、を備える。無人航空機10は、内蔵のプログラム又は外部からの指示に従って無人で飛行可能な航空機である。無人航空機10は、いわゆる、ドローンである。3個のアクセスポイント100~102のそれぞれは、無線LANを形成する装置である。無線LANは、例えば、Wi-Fi(登録商標)である。端末装置200は、例えば、デスクトップPC、ノートPC、タブレットPC、スマートフォン等である。なお、以下では、「アクセスポイント」を「AP」と記載する。
【0054】
図1に示す複数個の床コードFC1~FC8のそれぞれは、2次元コードである。複数個の床コードFC1~FC8は、倉庫の床に表示されている(例えば張り付けられている)。複数個の床コードFC1~FC8のそれぞれには、無人航空機10の行動の指示が記録されている(即ちコード化されている)。行動の指示は、無人航空機10の回転方向(即ちヨー方向)と、無人航空機10の進行方向と、を含む。例えば、床コードFC1、FC3、FC8には、それぞれ、指示(-、上)、(90左、右)、(-、止)が記録されている。ここで、指示「-」は、回転方向が何ら指示されていないことを示す。ここで、指示内の「上」及び「下」は、図中の座標系の「上」及び「下」と一致する。また、指示内の「左」は、無人航空機10が正面を向いている状況において無人航空機10の左方向を示す。同様に、指示内の「右」、「前」、「後」は、それぞれ、無人航空機10が正面を向いている状況における、無人航空機10の右方向、前方向、後方向を示す。例えば、指示(-、上)は、回転することなく、上へ移動する進行方向を示す。指示(90左、右)は、ヨー軸を中心に90度左側に回転する回転方向と、無人航空機10の右方向へ移動する進行方向を示す。また、指示(-、止)は、回転及び移動せずにその場に止まる指示(即ち一旦停止)を示す。
【0055】
図2に示す複数個の棚コードSC1~SC6のそれぞれも、2次元コードである。複数個の棚コードSC1~SC6は、棚300の正面に表示されている。本実施例では、棚300は、3段の棚板302a~302cと、天板304と、を備える。なお、棚板の個数は、一例に過ぎない。
【0056】
棚コードSC1、SC2、SC5、SC6は、天板304の正面に表示されている。棚コードSC3、SC4は、最下段の棚板302aの正面に表示されている。複数個の棚コードSC1~SC6のそれぞれには、無人航空機10の進行方向が記録されている。例えば、棚コードSC1、SC2には、それぞれ、指示(右)、(下)が記録されている。ここで、指示(右)は、無人航空機10の右方向へ移動する進行方向を示す。また、指示(下)は、下へ移動する進行方向を示す。
【0057】
(無人航空機10の構成;
図3)
無人航空機10は、航空機本体12と、情報読取端末14と、を備える。航空機本体12は、プロペラ(図示及び符号省略)と、当該プロペラを制御する制御装置12aと、当該プロペラと制御装置12aを支持する筐体12bと、を備える。航空機本体12は、例えば、市販の製品である。
【0058】
情報読取端末14は、情報コード(例えば2次元コード、バーコード)から情報を光学的に読み取りための携帯型の端末装置である。情報読取端末14は、例えば、市販の製品である。情報読取端末14は、航空機本体12の筐体12bの下面に取り付けられる。
【0059】
情報読取端末14は、表示部16と、操作部18と、水平カメラ20と、垂直カメラ22と、無線LANインターフェイス24と、接続部26と、制御部30と、を備える。なお、以下では、情報読取端末14を「端末14」と記載する。また、以下では、インターフェイスを「I/F」と記載する。
【0060】
表示部16は、各種情報を表示するディスプレイを含む。操作部18は、ユーザが操作可能な複数個のボタンを含む。無線LANI/F24は、無線LANを介した通信を実行するためのI/Fである。本実施例では、無線LANI/F24は、AP100~102によって形成される無線LANの何れかに接続されている。接続部26は、航空機本体12の制御装置との通信を実行するためのコネクタである。接続部26は、有線又は無線で航空機本体12の制御装置12aに接続されている。制御部30は、CPU32と、不揮発性メモリなどによって構成されるメモリ34と、を備える。CPU32は、メモリ34に記憶されているプログラム40、42に従って、様々な処理を実行する。
【0061】
OSプログラム40は、端末14の基本的な動作を制御するためのプログラムである。操縦アプリ42は、指示を無人航空機10に送信して無人航空機10を操縦するためのアプリケーションプログラムである。操縦アプリ42は、例えば、端末14のベンダによって提供されるインターネット上のサーバから端末14にインストールされる。例えば、制御部30は、操縦アプリ42に従って、カメラ(例えば水平カメラ20)を起動し、情報コードを撮像する。そして、制御部30は、撮像済みの情報コードに記録された情報を読み取る。例えば、制御部30は、床コード(例えば
図1のFC1)から指示を読み取ると、接続部26を介して当該指示を航空機本体12の制御装置12aに送信する。また、例えば、制御部30は、バーコードBC(
図2参照)から商品情報を読み取ると、無線LANI/F24を介して当該商品情報を端末装置200に送信する。また、例えば、制御部30は、読み取った商品情報をメモリ34に記憶し、無人航空機10の飛行が終了した後に、メモリ34内の商品情報を外部の装置(例えば、PC)にアップロードする。
【0062】
水平カメラ20及び垂直カメラ22は、CCDイメージセンサを備える。なお、変形例では、端末14は、水平カメラ20及び垂直カメラ22のうちの少なくとも一方に代えて、レーザ光源及び受光部を備えるスキャナを備えてもよい。
【0063】
垂直カメラ22は、端末14の表面に露出している。端末14の表面には、表示部16も露出している。
図3に示すように、端末14の表面とは反対の裏面は、航空機本体12の筐体12bに接している。筐体12bに端末14が取り付けられると、垂直カメラ22のCCDイメージセンサは、下方向を向く。
【0064】
また、水平カメラ20は、端末14の表面と交差する側面に露出している。筐体12bに端末14が取り付けられると、水平カメラ20のCCDイメージセンサは、水平方向(即ち、左右方向及び前後方向)を向く。水平カメラ20は、無人航空機10の正面を向く。
【0065】
(具体的な飛行経路;
図1、
図2)
行動指示システム2は、倉庫に保管されている複数個の商品GDの棚卸作業に利用される。
図1、
図2に示す具体的なケースでは、3個の棚300~500に保管されている全ての商品GDの棚卸作業が行われる。本ケースの飛行経路は、
図1及び
図2の一点鎖線の矢印で示されている。
【0066】
以下では、端末14のCPU32が各プログラム40、42に従って実行する処理について、理解の容易さの観点から、各CPUを主体として記載せずに、端末14を主体として記載する。また、以下では、端末14と制御装置12aとの通信は、接続部26を介して実行され、端末14と端末装置200との通信は、無線LANI/F24を介して実行される。以下では、特に言及しない限り、「接続部26を介して」及び「無線LANI/F24を介して」という説明を省略する。
【0067】
最初に、行動指示システム2のユーザは、端末14の操作部18を操作して、棚卸作業の開始の指示を入力する。端末14は、開始の指示に従って、航空機本体12の飛行を開始する。本ケースでは、開始時点において、航空機本体12の進行方向は前方向であり、水平カメラ20も前方向を向いている(
図1の矢印参照)。即ち、無人航空機10の正面は、
図1の矢印の方向である北方向を向いている。
【0068】
無人航空機10が、床コードFC1の周囲に到達すると、端末14は、垂直カメラ22で床コードFC1を撮像する。端末14は、床コードFC1から指示(-、上)を読み取り、指示(-、上)を航空機本体12に送信する。これにより、無人航空機10は、指示(-、上)に従って、上方向に移動して、次に読み取るべき棚コードSC1へと向かう。
【0069】
図2に示すように、無人航空機10は、床コードFC1から上方向に移動する。無人航空機10が上方向に移動している間、端末14は、水平カメラ20で棚300の各段に配置されている1個以上の商品GDのそれぞれについて、当該商品GDのバーコードBCを撮像する。端末14は、バーコードBCから商品情報を読み取ると、読み取り済みの商品情報を端末装置200に送信する。
【0070】
続いて、無人航空機10が、棚コードSC1の周囲に到達すると、端末14は、水平カメラ20で棚コードSC1を撮像する。端末14は、棚コードSC1から指示(右)を読み取り、指示(右)を航空機本体12に送信する。これにより、無人航空機10は、指示(右)に従って、右方向(即ち東方向)に移動する。続いて、無人航空機10が、棚コードSC2の周囲に到達すると、端末14は、水平カメラ20を利用して、棚コードSC2から指示(下)を読み取る。これにより、無人航空機10は、下方向に移動する。
【0071】
同様に、無人航空機10は、棚コードSC3~SC6に順次に到達し、
図2の一点鎖線の矢印によって示されるジグザグな飛行経路に沿って飛行する。当該飛行経路を無人航空機10が飛行している間、端末14は、棚300の全てのバーコードBCから商品情報を読み取り、当該商品情報を端末装置200に送信する。これにより、棚300に配置されている全ての商品GDに対応する全ての商品情報が端末装置200に収集される。
【0072】
続いて、無人航空機10が、床コードFC2の周囲に到達すると、端末14は、垂直カメラ22を利用して、床コードFC2から指示(-、右)を読み取る。これにより、無人航空機10は、右方向に移動する。
【0073】
続いて、
図1に示すように、無人航空機10が、床コードFC3の周囲に到達すると、端末14は、垂直カメラ22を利用して、床コードFC3から指示(90左、右)を読み取る。これにより、無人航空機10は、90度左側に回転し、無人航空機10の右方向に移動する。90度左側に回転すると、水平カメラ20は、西方向に向き、無人航空機10の正面は、西方向を向く。
【0074】
同様に、無人航空機10は、床コードFC4、SC5に順次に到達し、
図1の一点鎖線の矢印によって示される飛行経路に沿って飛行する。この際、無人航空機10は、床コードFC4の指示(90左、右)に従って、90度左側に回転し、これにより、水平カメラ20は、南方向を向き、棚400の正面と対面し、無人航空機10の正面は、南方向を向く。即ち、床コードFC3、FC4から指示を読み取ることによって、無人航空機10の向きを、水平カメラ20が棚300の正面を向いている向き(即ち北向き)から、水平カメラ20が棚400の正面を向いている向き(即ち南向き)に変更することができる。
【0075】
以下、棚400及び棚400の次の棚500でも、棚300と同様に、棚400及び棚500の正面に表示されている複数個の棚コード(符号及び図示省略)の複数個の指示に従って、無人航空機10が飛行する。これにより、棚400及び500に配置されている全ての商品GDに対応する全ての商品情報が端末装置200に収集される。
【0076】
(本実施例の効果)
例えば、無人航空機10を車に繋げ、車が倉庫の床を走行することにより、棚(例えば300)の複数の列のいずれかに到達する比較例が想定される。これに対して、本実施例では、倉庫内における複数の箇所に表示されている床コード及び棚コードを利用して、無人航空機10の行動を指示することができる。無人航空機10とは異なる車を倉庫内に準備しなくてもよい。さらに、床コード及び棚コードを
図1及び
図2の一点鎖線の矢印によって示される所定の飛行経路上に配置することにより、無人航空機10を当該所定の飛行経路に沿って移動させることができる。
【0077】
また、本実施例では、倉庫の床及び棚に床コード及び棚コードを表示すればよい。無人航空機10の飛行経路をプログラミングしなくても、床コード及び棚コードに沿った無人航空機10の飛行を実現することができる。
【0078】
また、棚コード及び床コードは、2次元コードであり、商品GDのバーコードBCとは異なる種類の情報コードである。棚コード及び床コードの双方と商品GDのバーコードBCとが混同することを抑制することができる。例えば、商品GDのバーコードBCに記録されている商品情報を無人航空機10の行動の指示であると誤って解釈して、無人航空機10が誤って行動することを抑制することができる。
【0079】
また、例えば、1個のカメラで棚コードだけでなく床コードを撮像する比較例が想定される。この比較例では、両者を撮像するために無人航空機10のロール又はピッチを調整する必要がある。これに対して、本実施例の構成によれば、棚コードは水平カメラ20で撮像し、床コードは垂直カメラで撮像することができる。両者を撮像するために無人航空機10のロール又はピッチを調整する必要がない。なお、変形例では、上記の比較例の構成を採用してもよい。
【0080】
(対応関係)
行動指示システム2、倉庫が、それぞれ、「行動指示システム」、「所定の空間」の一例である。床コード及び棚コードが、「指示コード」の一例である。
図1及び
図2の一点鎖線の矢印で示される飛行経路が、「所定の経路」の一例である。無人航空機10、端末14、水平カメラ20のCCDイメージセンサ、垂直カメラ22のCCDイメージセンサが、それぞれ、「無人航空機」、「光学読取装置」、「水平光学センサ」、「垂直光学センサ」の一例である。商品GD、バーコードBCが、それぞれ、「物品」、「物品コード」の一例である。2次元コード、バーコードが、それぞれ、「第1種の情報コード」、「第2種の情報コード」の一例である。棚400が、「第1の棚」の一例であり、この場合、床コードFC4が、「第1の周囲コード」の一例である。棚300も、「第1の棚」の一例であり、この場合、棚400、床コードFC3が、それぞれ、「第2の棚」、「第2の周囲コード」の一例である。
【0081】
(第2実施例)
(行動指示システム2の構成;
図4)
本実施例の行動指示システム2は、第1実施例の構成に加えて、複数個のルートコードRC00~RC11を備える。複数個のルートコードRC00~RC11のそれぞれは、2次元コードである。ルートコードRC00は、倉庫内の待機場600の上面に表示されている。待機場600は、無人航空機10が待機する箇所である。残りのルートコードRC01~RC11は、待機場600から各棚(例えば300)へと向かう経路上に表示されている。残りのルートコードRC01~RC11は、倉庫の床に表示されている。
【0082】
複数個のルートコードRC00~RC11のそれぞれには、当該ルートコードを識別する識別情報が記録されている。例えば、ルートコードRC00には、識別情報「RC00」が記録されている。
【0083】
(操縦アプリ42の構成;
図5)
本実施例では、操縦アプリ42は、2個のルートテーブル44a、44bを記憶する。ルートテーブル44aには、後述する
図6の飛行経路に沿った行動を指示するための情報が記憶されている。ルートテーブル44bには、後述する
図7の飛行経路に沿った行動を指示するための情報が記憶されている。2個のルートテーブル44a、44bは、ユーザによって操縦アプリ42に記憶される。ユーザは、2個のルートテーブル44a、44bのうちのいずれかを選択する。無人航空機10は、ユーザによって選択されたルートテーブルに従った行動を実行し、当該ルートテーブルに対応する飛行経路に沿って行動する。なお、ルートテーブルの個数は、2個に限らず、1個でもよいし、3個以上でもよい。
【0084】
ルートテーブル44aには、ルートコードの識別情報と指示(例えば回転方向と進行方向)との組み合わせが読み取り順に記憶されている。ルートテーブル44aによって示される読み取り順に沿ってルートコードが読み取られることにより、無人航空機10がルートテーブル44aによって示される進行方向に沿って移動する。ルートテーブル44bは、組み合わせの内容が異なる点を除いて、ルートテーブル44aと同様である。
【0085】
(飛行経路の具体的なケースC1;
図6)
本ケースC1は、ルートテーブル44aに対応する飛行経路の具体例である。本ケースC1では、無人航空機10は、待機場600を出発後、棚300、400、500の順番に移動し、待機場600に戻る。
【0086】
本ケースの初期状態では、無人航空機10は、水平カメラ20が北方向を向いている状態で待機場600に留まっている。また、端末14では、ルートテーブル44aが選択されている。
【0087】
無人航空機10は、開始の指示を受けると、飛行を開始し、端末14は、垂直カメラ22を利用して、待機場600のルートコードRC00から識別情報「RC00」を読み取る。端末14は、ルートテーブル44aから識別情報「RC00」に対応付けて記憶されている進行方向「上前」を読み出す(
図5参照)。進行方向「上前」は、上方向及び前方向への移動の指示である。端末14は、進行方向「上前」を航空機本体12に送信する。これにより、無人航空機10は、進行方向「上前」に従って、上方向へ移動するとともに、前方向へ移動する。例えば、無人航空機10は、人の高さよりも高く、上方向へ移動する。これにより、無人航空機10が、人と接触することを抑制することができる。
【0088】
続いて、無人航空機10が、ルートコードRC01の周囲に到達すると、端末14は、垂直カメラ22を利用して、ルートコードRC01から識別情報「RC01」を読み取り、ルートテーブル44aから指示(90左、前)を読み出す(
図5参照)。これにより、無人航空機10は、90度左側に回転し、前方向(即ち西方向)に移動する。続いて、無人航空機10は、ルートコードRC02、RC03に順次に到達し、
図6の一点鎖線の矢印によって示される飛行経路に沿って、棚300の周囲の床コードFC1の周囲に到達する。
【0089】
床コードFC1から指示を読み取ってから床コードFC8から指示を読み取る前までの飛行経路は、第1実施例の
図1及び
図2の一点鎖線の矢印で示す飛行経路と同様である。ここで、本ケースの床コードFC8には、指示(-、後)が記録されている。無人航空機10が、床コードFC8の周囲に到達すると、端末14は、垂直カメラ22を利用して、床コードFC8から指示(-、後)を読み取る。これにより、無人航空機10は、後方向(即ち南方向)に移動する。
【0090】
続いて、無人航空機10は、ルートコードRC13、RC12、RC11に順次に到達し、
図6の一点鎖線の矢印によって示される飛行経路に沿って、ルートコードRC01の周囲に再び到達する。
【0091】
無人航空機10が、ルートコードRC01の周囲に再び到達すると、端末14は、垂直カメラ22を利用して、ルートコードRC01から識別情報「RC01」を読み取る。端末14は、識別情報「RC01」の読み取りが2回目であると判断して、ルートテーブル44aから、2回目の読み取り順に対応する進行方向「前」を読み出す(
図5参照)。これにより、無人航空機10は、前方向(即ち南方向)に移動する。
【0092】
続いて、無人航空機10が、ルートコードRC00の周囲に再び到達すると、端末14は、垂直カメラ22を利用して、ルートコードRC00から識別情報「RC00」を読み取る。端末14は、ルートテーブル44aから、2回目の読み取り順に対応する指示(止、180、下)を読み出す(
図5参照)。指示(止、180、下)は、一旦停止後に、ヨー軸を中心に180度回転し、下方向へ移動する指示である。無人航空機10は、指示(止、180、下)に従って行動し、これにより、無人航空機10は、正面を北方向に向いて待機場600に戻る。
【0093】
本ケースによれば、ルートコードRC01を利用して無人航空機10を棚300が設置されている空間に移動させるだけでなく、同じルートコードRC01を利用して無人航空機10を待機場600に戻すことができる。
【0094】
(飛行経路の具体的なケースC2;
図7)
本ケースC2は、ルートテーブル44bに対応する飛行経路の具体例である。ケースC2では、無人航空機10は、待機場600を出発後、棚300、500に移動することなく、棚400に移動し、待機場600に戻る。本ケースでは、棚300、500に配置されている商品GDに対応する商品情報が端末装置200に収集されず、棚400に配置されている商品GDに対応する商品情報が端末装置200に収集される。
【0095】
本ケースの初期状態は、端末14でルートテーブル44bが選択されていることを除いて、
図6のケースC1と同様である。
【0096】
ルートコードRC00に対応する行動は、ケースC1と同様である。続いて、無人航空機10が、ルートコードRC01の周囲に到達すると、端末14は、垂直カメラ22を利用して、ルートコードRC01から識別情報「RC01」を読み取り、ルートテーブル44bから進行方向「前」を読み出す(
図5参照)。これにより、無人航空機10は、進行方向「前」に従って、前方向へ移動する。続いて、無人航空機10は、ルートコードRC11、RC12に順次に到達し、
図7の一点鎖線の矢印によって示される飛行経路に沿って、棚400の周囲の床コードFC5の周囲に到達する。
【0097】
床コードFC5から指示を読み取ってから床コードFC6から指示を読み取る前までの飛行経路は、第1実施例の
図1の一点鎖線の矢印で示す飛行経路と同様である。無人航空機10が、床コードFC6の周囲に到達すると、端末14は、垂直カメラ22を利用して、床コードFC6から指示(180、前)を読み取る。これにより、無人航空機10は、ヨー軸を中心に180度回転し、前方向に移動する。
【0098】
続いて、無人航空機10は、ルートコードRC14、RC13、RC12、RC11、RC01、RC00に順次に到達し、
図7の一点鎖線の矢印によって示される飛行経路に沿って、待機場600に戻る。
【0099】
(本実施例の効果)
本実施例によれば、ルートコードRC01の識別情報「RC01」に対応付けて記憶される指示を(90左、前)に設定することにより、無人航空機10を
図6のケースC1によって示される飛行経路(棚300~500を通る飛行経路)に沿って飛行させることができる。また、ルートコードRC01の識別情報「RC01」に対応付けて記憶される指示を進行方向「前」に設定することにより、無人航空機10を
図7のケースC2によって示される飛行経路(棚400のみを通る飛行経路)に沿って飛行させることができる。即ち、ルートテーブル44a、44bのいずれかに切り換えることにより、無人航空機10が移動する空間を
図6の空間(即ち棚300の周囲の空間)と
図7の空間(即ち棚400の周囲の空間)のいずれかに切り換えることができる。
【0100】
また、本実施例では、倉庫の床にルートコードを表示して、ルートテーブル44a及び44bを操縦アプリ42に記憶すればよい。無人航空機10の飛行経路をプログラミングしなくても、無人航空機10が移動する空間の切り替えを実現することができる。
【0101】
(対応関係)
ルートコードRC01、識別情報「RC01」が、それぞれ、「分岐コード」、「特定の識別情報」の一例である。
図6における棚300の周囲の空間、
図7における棚400の周囲の空間が、それぞれ、「第1の空間」、「第2の空間」の一例である。待機場600が、「特定の箇所」の一例である。
【0102】
(第3実施例)
(行動指示システム2の構成;
図8)
本実施例の行動指示システム2は、第1実施例の構成に加えて、複数個の逆コードRV1~RV5を備える。複数個の逆コードRV1~RV5のそれぞれは、2次元コードである。複数個の逆コードRV1~RV5は、棚300の正面に表示されている。
【0103】
逆コードRV1は、棚コードSC1の上側の板306の正面に表示されている。逆コードRV1は、床コードFC1から次に読み取るべき棚コードSC1までの進行方向「上」とは逆の進行方向「下」を記録する。例えば、床コードFC1から指示(-、上)が読み取られた後に、無人航空機10が、棚コードSC1の周囲に到達するものの、棚コードSC1の読み取りを失敗する(即ち棚コードSC1を読み飛ばす)可能性がある。この場合、無人航空機10は、棚コードSC1を通過して、そのまま、上方向に移動し続ける。しかし、無人航空機10は、逆コードRV1の周囲に到達するので、端末14は、水平カメラ20を利用して、逆コードRV1から進行方向「下」を読み取る。これにより、無人航空機10は、下方向に移動する。そして、無人航空機10が、棚コードSC1の周囲に戻り、端末14が棚コードSC1の読み取りを再び実行する。棚コードSC1の読み飛ばしが発生する場合でも、逆コードRV1を利用して、棚コードSC1を端末14に読み取らせることができる。
【0104】
棚コードSC2の読み飛ばしに対する対処として、棚コードSC2の右側に逆コードRV2が表示され、逆コードRV2には、棚コードSC1の進行方向「右」とは逆の進行方向「左」が記憶されている。また、棚コードSC3の読み飛ばしに対する対処として、進行方向「上」を記憶する逆コードRV3が、棚コードSC3の下側の板306の正面に表示されている。また、逆コードRV4及びRV5は、棚コードSC4及びSC6の読み飛ばしに対処するものであり、逆コードRV2と同様である。
【0105】
(対応関係)
棚コードSC1の読み飛ばしに対する対処において、床コードFC1の表示箇所、棚コードSC1の表示箇所、床コードFC1、棚コードSC1が、それぞれ、「第1の箇所」、「第2の箇所」、「第1の指示コード」、「第2の指示コード」の一例である。さらに、逆コードRV1、進行方向「下」が、それぞれ、「逆コード」、「逆方向」の一例である。
【0106】
(第4実施例)
(行動指示システム2の構成;
図9)
本実施例の行動指示システム2は、第1実施例の構成に加えて、3個の棚コードSC10と、2個の棚コードSC12と、2個の棚コードSC14と、3個の棚コードSC16と、を備える。
【0107】
棚コードSC10は、床コードFC1から棚コードSC1までの飛行経路上の3段の棚板302a~302cのそれぞれの正面に表示されている。同様に、棚コードSC16は、棚コードSC6から床コードFC2までの飛行経路上に表示される。
【0108】
また、棚コードSC12は、棚コードSC2から棚コードSC3までの飛行経路上の2段の棚板302c、302bのそれぞれの正面に表示されている。同様に、棚コードSC14は、棚コードSC4から棚コードSC5までの飛行経路上に表示される。
【0109】
本実施例では、棚板302a~302cは、等間隔に並んでいる。また、棚コードSC1、SC2、SC5、SC6も、等間隔に並んでいる。例えば、無人航空機10の上方向への速度は一定であり、無人航空機10が棚コードSC10から次に棚コードSC10に到達する迄の予定時間は所定の時間T1である。また、例えば、無人航空機10の右方向への速度も一定であり、無人航空機10が棚コードSC1から次に棚コードSC2に到達する迄の予定時間は所定の時間T2である。
【0110】
(読み飛ばし対処処理;
図10)
図10を参照して、本実施例の端末14が実行する読み飛ばし対処処理について説明する。なお、端末14は、
図10の読み飛ばし対処処理と並行して、棚コード及び床コードから読み取った指示を航空機本体12に送信する処理と、商品GDのバーコードBCから読み取った情報を端末装置200に送信する処理と、を実行する。
【0111】
図10の処理は、棚300の正面上の飛行経路に沿った行動を開始するための床コードFC1の読み取りが成功したことをトリガとして開始される。
【0112】
図10の処理では、カウンタとタイマとが利用される。カウンタは、読み取った棚コードの個数をカウントする値である。タイマは、時間のカウントアップである。
【0113】
図10の処理では、設定テーブル46が利用される。設定テーブル46は、ユーザによって操縦アプリ42に予め記憶される。設定テーブル46内の情報は、棚300の正面上の飛行経路(
図9の一点鎖線の矢印参照)に従ってユーザによって決定される。
【0114】
設定テーブル46は、無人航空機10の進行方向が変更される回数の連番(以下では、「変更回数」と記載)それぞれについて、当該変更回数と、カウンタ目標値と、タイムアウト値と、を対応付けて記憶する。
【0115】
S10では、端末14は、設定処理を実行する。設定処理は、S102の処理と、S104の処理と、を含む。S102では、端末14は、現在のカウンタ目標値と現在のタイムアウト値の双方を設定テーブル46のうち現在の変更回数に対応付けて記憶されている値に設定する。S104では、端末14は、現在のカウンタを「0」に設定する。
【0116】
S12では、端末14は、タイマをリセットする。S30では、端末14は、棚コードを読み取ることを監視する。そして、端末14は、棚コードの読み取りを検知する場合(S30でYES)に、S40に進む。例えば、端末14は、2次元コードの読み取りが成功し、かつ、当該2次元コードから読み取った情報内に棚コードを示す情報が含まれる場合に、棚コードの読み取りを検知したと判断する。
【0117】
S40では、端末14は、カウンタをインクリメントする。S42では、端末14は、現在のカウンタが現在のカウンタ目標値以上であるのか否かを判断する。端末14は、現在のカウンタが現在のカウンタ目標値未満であると判断する場合(S42でNO)に、後述するS44、S46の処理をスキップして、S50に進む。
【0118】
また、端末14は、現在のカウンタが現在のカウンタ目標値以上であると判断する場合(S42でYES)に、S44に進む。S44では、端末14は、S30において最新に読み取った進行方向(以下では「最新の進行方向」と記載)が、進行方向の変更を示すのか否かを判断する。例えば、端末14は、最新の進行方向が、S30で1つ前に読み取った進行方向と異なる場合に、最新の進行方向が、進行方向の変更を示すと判断する。
【0119】
端末14は、最新の進行方向が、進行方向の変更を示すと判断する場(S44でYES)に、S46に進む。S46、S50は、S10、S12と同様である。S50の処理が終了すると、端末14は、S30の監視に戻る。
【0120】
また、端末14は、現在のカウンタが現在のカウンタ目標値以上であるにも関わらず、最新の進行方向が、進行方向の変更を示さないと判断する場合(S44でNO)に、S34に進む。S34では、端末14は、最新の進行方向とは逆の進行方向を航空機本体12に送信する。これにより、無人航空機10は、進行方向の変更を示す棚コードを読み取るために、最新の進行方向とは逆の進行方向に移動する。
【0121】
続くS36は、S12と同様である。S36の処理が終了すると、端末14は、S30の監視に戻る。
【0122】
また、端末14は、棚コードの読み取りを検知しない場合(S30でNO)に、S32に進む。例えば、端末14は、2次元コードの読み取りが実行されない、又は、2次元コードの読み取りが成功するものの、当該2次元コードから読み取った情報内に棚コードを示す情報が含まれない場合に、棚コードの読み取りを検知しないと判断する。
【0123】
S32では、端末14は、現在のタイマの値が現在のタイムアウト値を超えているのか否かを判断する。端末14は、現在のタイマの値が現在のタイムアウト値を超えていないと判断する場合(S32でNO)に、S30の監視に戻る。
【0124】
また、端末14は、現在のタイマの値が現在のタイムアウト値を超えていると判断する場合(S32でYES)に、S34に進む。
【0125】
S30~S50の処理は、設定テーブル46内の全ての情報が設定処理(S10及びS46)で利用されるまで、繰り返し実行される。
図10の処理は、設定テーブル46内の全ての情報が設定処理で利用される場に、終了する。
【0126】
(具体的なケースD1;
図9)
図10の読み飛ばし対処処理を実行して、棚コードSC1の読み飛ばしに対処する具体的なケースD1について説明する。
【0127】
端末14は、床コードFC1の読み取りが成功すると、
図10の読み飛ばし対処処理を実行する。現時点にて、変更回数は、「0」である。端末14は、カウンタ目標値「4」とタイムアウト値T1を設定し(
図10のS102)、現在のカウンタを「0」に設定し(S104)、タイマをリセットする(S12)。
【0128】
無人航空機10が、1段目の棚板302aの棚コードSC10に到達すると、端末14は、棚コードSC10から進行方向「上」を読み取る(S30でYES)。端末14は、現在のカウンタを「0」から「1」にインクリメントする(S40)。端末14は、現在のカウンタ「1」がカウンタ目標値「4」未満であると判断して(S42でNO)、タイマをリセットする(S50)。
【0129】
本ケースでは、2段目の棚板302bの棚コードSC10及び3段目の棚板302cの棚コードSC10の読み取りも成功する。3段目の棚コードSC10の読み取りが成功した時点において、現在のカウンタは、「3」を示す。また、本ケースでは、3段目の棚コードSC10の次に読み取られるべき棚コードSC1が読み飛ばされる。このため、無人航空機10は、3段目の棚コードSC10によって示される進行方向「上」に従って、棚コードSC1を超えて、上方向に移動する。
【0130】
棚コードSC1の読み取りが検知されず、現在のタイムがタイムアウト値「T1」を超える場合(S30でNO、S32でYES)に、端末14は、最新の進行方向「上」とは逆の進行方向「下」を航空機本体12に送信する(S34)。これにより、無人航空機10は、下方向に移動する。
【0131】
本ケースでは、無人航空機10が、棚コードSC1に到達すると、端末14は、棚コードSC1から進行方向「右」を読み取る(S30でYES)。これにより、無人航空機10は、右方向に移動する。本ケースによれば、棚コードSC1の読み飛ばしが発生する場合でも、所定の予定時間T1を利用して、棚コードSC1を端末14に読み取らせることができる。
【0132】
(具体的なケースD2;
図9)
図10の読み飛ばし対処処理を実行して、棚コードSC2の読み飛ばしに対処する具体的なケースD2について説明する。
【0133】
本ケースでは、棚コードSC1の読み取りが検知され、棚コードSC1から進行方向「右」を読み取る(S30でYES)。端末14は、現在のカウンタを「3」から「4」にインクリメントする(S40)。端末14は、現在のカウンタ「4」がカウンタ目標値「4」以上であると判断する(S42でYES)。端末14は、最新の進行方向「右」が1つ前に読み取った進行方向「上」と異なることに起因して、最新の進行方向「右」が進行方向の変更を示すと判断する(S44でYES)。現時点の変更回数は「1」であるので、端末14は、カウンタ目標値「1」とタイムアウト値T2を設定する(S102)。
【0134】
本ケースでは、棚コードSC1の次に読み取られるべき棚コードSC2が読み飛ばされる。さらに、タイマが現在のタイムアウト値T2を超える前に、無人航空機10が棚コードSC2の右隣の棚コードSC5に到達する。この場合、端末14は、棚コードSC5の読み取りが検知され、棚コードSC5から進行方向「右」を読み取る(S30でYES)。端末14は、現在のカウンタを「0」から「1」にインクリメントする(S40)。端末14は、現在のカウンタ「1」がカウンタ目標値「1」以上であると判断する(S42でYES)。端末14は、最新の進行方向「右」が1つ前に読み取った進行方向「右」と一致することに起因して、最新の進行方向「右」が進行方向の変更を示さないと判断する(S44でNO)。端末14は、最新の進行方向「右」とは逆の進行方向「左」を航空機本体12に送信する(S34)。これにより、無人航空機10は、左方向(即ち西方向)に移動する。
【0135】
本ケースでは、無人航空機10が、棚コードSC2に到達すると、端末14は、棚コードSC2から進行方向「下」を読み取る(S30でYES)。これにより、無人航空機10は、下方向に移動する。なお、この場合、現在のカウンタは、「1」から「2」にインクリメントされ(S40)、現在のカウンタ「2」がカウンタ目標値「1」以上であると判断される(S42でYES)。現時点の変更回数は「2」であるので、カウンタ目標値「3」とタイムアウト値T1が設定される(S102)。
【0136】
本ケースによれば、棚コードSC1の次に棚コードSC2が読み取られるべき状況において、他の棚コードSC5が誤って読み取られる事態が発生する場合でも、棚コードSC2を端末14に正しく読み取らせることができる。
【0137】
また、
図9の一点鎖線の矢印で示すように、棚コードSC1が表示されている箇所は、無人航空機10の進行方向が変更される箇所である。無人航空機10の進行方向が変更される箇所では、本ケースのように、他の棚コードSC5が誤って読み取られる事態が発生する可能性がある。本ケースでは、
図9のS44の判断を実行することにより、現在の状況が、他の棚コードSC5が誤って読み取られる事態が発生する可能性がある状況であることを判断することができる。特に、カウンタを利用して、S44の判断を実行することができる。
【0138】
(対応関係)
図9のケースD1において、3段目の棚板302cの棚コードSC10の表示箇所、棚コードSC1の表示箇所、3段目の棚板302cの棚コードSC10、棚コードSC1、予定時間T1が、それぞれ、「第3の箇所」、「第4の箇所」、「第1の指示コード」、「第4の指示コード」、「予定時間」の一例である。
【0139】
図9のケースD2において、棚コードSC1から棚コードSC2までの飛行経路、棚コードSC2から棚コードSC3までの飛行経路、棚コードSC4から棚コードSC5までの飛行経路が、それぞれ、「第1の経路」、「第2の経路」、「第3の経路」の一例である。棚コードSC1の表示箇所、棚コードSC2の表示箇所、棚コードSC5の表示箇所が、それぞれ、「第3の箇所」、「第4の箇所」、「第5の箇所」の一例である。棚コードSC1、棚コードSC2、棚コードSC5が、それぞれ、「第1の指示コード」、「第4の指示コード」、「第5の指示コード」の一例である。進行方向「下」が、「特定の方向」の一例である。予定時間T2が、「予定時間」の一例である。
【0140】
(第5実施例)
(行動指示システム2の構成;
図11)
本実施例の行動指示システム2は、読み飛ばし対処処理の内容の一部が第4実施例と異なる点を除いて、第4実施例と同様である。
【0141】
(読み飛ばし対処処理;
図12)
本実施例の読み取り飛ばし対処処理では、
図12のS200の処理が追加され、かつ、
図10のS34に代えてS204の処理が実行される点を除いて、
図10の処理と同様である。
【0142】
端末14は、棚コードの読み取りを検知する場合(S30でYES)に、S40の処理及びS200の処理を実行する。S200では、端末14は、無線LANI/F24から3個のAP100~102のそれぞれから送信されているビーコン信号の現在の電波強度を取得して記憶する。3個のAP100~102のそれぞれは、倉庫内の所定の位置に固定されている。各AP100~102のビーコン信号の電波強度は、各AP100~102から離れるほど弱くなる。別言すれば、ビーコン信号の電波強度は、各AP100~102からの距離と負の相関関係を示す。端末14は、AP100~AP102のそれぞれの現在の電波強度から、倉庫内における無線LANI/F24の現在の位置、即ち、無人航空機10の現在の位置を推定可能である。なお、APの個数は、3個に限らず、例えば、1個でもよいし、4個以上でもよい。APの個数が1個でも、APのビーコン信号の電波強度から無人航空機10の現在の位置を推定可能である。
【0143】
また、端末14は、現在のタイマの値が現在のタイムアウト値を超えていると判断する場合(S32でYES)に、S204の処理及びS36の処理を実行する。S204では、端末14は、S200で記憶された電波強度を利用して算出される元の位置まで戻る指示を航空機本体12に送信する。これにより、無人航空機10が元の位置まで移動する。なお、元の位置は、電波強度だけでなく、無人航空機10の速度と、最新の進行方向等も利用して算出されてもよい。
【0144】
(具体的なケースE1;
図11)
図12の読み飛ばし対処処理を実行して、棚コードSC1の読み飛ばしに対処する具体的なケースE1について説明する。
【0145】
本ケースでは、3段目の棚板302cの棚コードSC10の読み取りが検知される(S30でYES)。端末14は、現在のカウンタを「2」から「3」にインクリメントする(S40)。さらに、端末14は、無人航空機10が3段目の棚板302cの棚コードSC10に位置する状況における現在の電波強度を記憶する(S200)。端末14は、現在のカウンタ「3」がカウンタ目標値「4」未満であると判断して(S42でNO)、タイマをリセットする(S50)。
【0146】
本ケースでは、3段目の棚板302cの棚コードSC10の読み取りが検知された後に、倉庫内の外乱(例えば風)の影響により、無人航空機10が、正しい飛行経路から左側に外れる。このため、棚コードSC1の読み取りが検知されず、現在のタイムがタイムアウト値「T1」を超える(S30でNO、S32でYES)。この場合、端末14は、記憶済みの電波強度を利用して算出した元の位置(即ち3段目の棚板302cの棚コードSC10の周囲)まで戻る指示を航空機本体12に送信する。これにより、無人航空機10が3段目の棚板302cの棚コードSC10の周囲に戻る。本ケースによれば、無人航空機10が正しい経路から外れる場合でも、メモリに記憶されている電波強度を利用して、無人航空機10を正しい経路に戻すことができる。
【0147】
また、本ケースでは、端末14は、無人航空機10が3段目の棚板302cの棚コードSC10の周囲に戻った後に、棚コードSC10の読み取りが再び検知されるまで、無人航空機10の上方向への移動を再開しない。そして、端末14は、棚コードSC10の読み取りが再び検知されることをトリガとして、無人航空機10の上方向への移動を再開する。
【0148】
例えば、無人航空機10が棚コードSC10の周囲まで戻ることを試みるものの、外乱の影響により、無人航空機10が棚コードSC10の周囲(即ち正しい経路)に戻らない可能性がある。端末14が棚コードSC10の読み取りを再び検知することは、無人航空機10が正しい経路に戻ったことを意味する。本ケースの構成によれば、無人航空機10が正しい経路に戻った後に無人航空機10の上方向への移動を再開することができる。なお、変形例では、棚コードSC10の読み取りが再び検知されなくても、無人航空機10の上方向への移動を再開してもよい。
【0149】
(第6実施例;
図13)
第1~第5実施例では、床コード、棚コード、及び、逆コードに進行方向が記録される。これに代えて、本実施例では、床コード、棚コード、及び、逆コードのうちの少なくとも1個に進行方向が記録されない。
【0150】
図13に示すように、2次元コードは、情報を記録する記録領域SAと、3個のシンボルマークSMと、を含む。本実施例では、端末14は、床コード(例えばFC1)の読み取りを検知する場合に、当該床コードの内側における3個のシンボルマークSMのレイアウトを分析して、床コードから進行方向を読み取る。本実施例では、床コードの記録領域SAには、進行方向以外の情報(例えば床コードを示す情報)が記録される。
【0151】
具体的には、
図13の(a1)で示すレイアウトで床コードが撮像される場合には、端末14は、3個のシンボルマークSMのレイアウトを分析して、床コードから進行方向「前」を読み取る。また、
図13の(a2)は、
図13の(a1)で示すレイアウトから右側に90度回転したレイアウトである。
図13の(a2)で示すレイアウトで床コードが撮像される場合には、端末14は、床コードから進行方向「右」を読み取る。また、
図13の(a3)は、
図13の(a1)で示すレイアウトから180度回転したレイアウトである。
図13の(a3)で示すレイアウトで床コードが撮像される場合には、端末14は、床コードから進行方向「後」を読み取る。また、
図13の(a4)は、
図13の(a3)で示すレイアウトから右側に90度回転したレイアウトである。
図13の(a4)で示すレイアウトで床コードが撮像される場合には、端末14は、床コードから進行方向「左」を読み取る。
【0152】
棚コード及び逆コードも、床コードと同様に、3個のシンボルマークSMのレイアウトの違いを利用して、進行方向を示すことが可能である。具体的には、
図13の(a1)、(a2)、(a3)、(a4)が、それぞれ、進行方向「上」、「右」、「下」、「左」を示す。
【0153】
本実施例の構成によれば、進行方向を記録領域SAに記録する第1~第5実施例と比較して、記録領域SAに記録する情報量が増大することを抑制することができる。なお、変形例では、3個のシンボルマークSMのレイアウトの違いを利用して、回転方向を示してもよい。また、他の変形例では、シンボルマークSMの個数は、3個に限らず、例えば、1個、2個でもよい。記録領域SA、3個のシンボルマークSMを含む領域が、それぞれ、「記憶領域」、「他の領域」の一例である。
【0154】
(第7実施例;
図14)
本実施例でも、床コード、棚コード、及び、逆コードには、進行方向が記録されない。本実施例では、
図14に示すように、2次元コードは、記録領域SAと3個のシンボルマークSMとに加えて、2次元コードの中央に位置する画像IMを含む。本実施例では、端末14は、床コード(例えばFC1)の読み取りを検知する場合に、当該床コードの画像IMを分析して、床コードから進行方向を読み取る。本実施例でも、床コードの記録領域SAには、進行方向以外の情報(例えば床コードを示す情報)が記録される。
【0155】
具体的には、
図14の(b1)の床コードは、紙面上向きの矢印を示す画像IMを含む。当該床コードが撮像される場合には、端末14は、当該画像IMを分析して、床コードから進行方向「前」を読み取る。また、
図14の(b2)の床コードは、紙面右向きの矢印を示す画像IMを含む。当該床コードが撮像される場合には、端末14は、床コードから進行方向「右」を読み取る。また、
図14の(b3)の床コードは、紙面下向きの矢印を示す画像IMを含む。当該床コードが撮像される場合には、端末14は、床コードから進行方向「下」を読み取る。また、
図14の(b4)の床コードは、紙面左向きの矢印を示す画像IMを含む。当該床コードが撮像される場合には、端末14は、床コードから進行方向「左」を読み取る。なお、画像IMは、矢印の画像に限らず、例えば、進行方向(例えば前方向)を意味する文字(例えば前)であってもよい。一般的に言えば、4個の態様(b1)~(b4)において、互いに異なる画像IMが描かれていればよい。なお、画像IMは、2次元コードの中心以外(例えば左隅)に位置していてもよい。
【0156】
本実施例の構成でも、進行方向を記録領域SAに記録する第1~第5実施例と比較して、記録領域SAに記録する情報量が増大することを抑制することができる。記録領域SA、画像IMを含む領域が、それぞれ、「記憶領域」、「他の領域」の一例である。
【0157】
(第8実施例)
(行動指示システム2の構成;
図15)
本実施例では、棚板302a~302cは、等間隔に並んでいない。例えば、
図15のケースでは、棚板302a及び302bの間隔が距離d3であり、棚板302b及び302cの間隔が距離d3より長い距離d4であり、棚板302cと天板304の間隔が距離d3である。
【0158】
本実施例の行動指示システム2は、4個の棚コードSC20と、2個の棚コードSC22と、2個の棚コードSC24と、4個の棚コードSC26と、2個の棚コードSC28と、1個の棚コードSC30と、1個の棚コードSC16と、を備える。
【0159】
本実施例でも、第4実施例と同様に、無人航空機10は、一点鎖線の矢印によって示されるジグザグな飛行経路に沿って飛行する。棚コードSC20~SC30は、距離が各々に記録されている点を除いて、第4実施例の棚コードSC1~SC6及びSC10~SC16と同様である。具体的には、棚コードSC20には、指示(上)に加えて、次の棚板までの間隔である距離d3が記録されている。棚コードSC22には、指示(上)に加えて、次の棚板までの間隔である距離d4が記録されている。棚コードSC24には、指示(右)に加えて、距離d5が記録されている。距離d5は、最初の上向きの経路に続く下向きの経路までの距離及び二番目の上向きの経路に続く下向きの経路までの距離である。棚コードSC26には、指示(下)に加えて、次の棚板までの間隔である距離d3が記録されている。棚コードSC28には、指示(下)に加えて、次の棚板までの間隔である距離d4が記録されている。棚コードSC30には、指示(右)に加えて、距離d6が記録されている。距離d6は、最初の下向きの経路に続く上向きの経路までの距離である。距離d6は、距離d5よりも長い。本実施例では、ジグザグな飛行経路の上向きの経路及び下向きの経路が並ぶ間隔も、等間隔ではない。なお、変形例では、棚板の間隔、及び、上向きの経路及び下向きの経路が並ぶ間隔のうちのいずれかが等間隔であってもよい。
【0160】
本実施例では、各距離d3~d6を利用して、棚コードから次の棚コードに到達するべき時間、又は、経路から経路へ到達するべき時間であるタイムアウト時間が算出される。例えば、無人航空機10が上方向に移動する場合には、距離d3を利用して、タイムアウト値T3が算出され、距離d4を利用して、タイムアウト値T3とは異なるタイムアウト値T4が算出される。また、無人航空機10が水平方向に移動する場合には、距離d5を利用して、タイムアウト値T5が算出され、距離d6を利用して、タイムアウト値T5とは異なるタイムアウト値T6が算出される。なお、各距離d3~d6及びタイムアウト値T3~T6は、一例に過ぎないことに留意されたい。
【0161】
(読み飛ばし対処処理;
図16)
図16を参照して、本実施例の端末14が実行する読み飛ばし対処処理について説明する。
図16の処理は、
図10のS12に代えてS300及びS302が含まれる点、S46に代えてS306が含まれる点、S304が追加された点、設定テーブル46に代えて設定テーブル48が利用される点を除いて、
図10の処理と同様である。
図16に示すように、設定テーブル48は、タイムアウト値が記憶されない点を除いて、
図10の設定テーブル46と同様である。
【0162】
S300では、端末14は、現在のカウンタ目標値を、設定テーブル48のうち現在の変更回数に対応付けて記憶されているカウンタ目標値に設定する。さらに、端末14は、現在のカウンタを「0」に設定する。
【0163】
続くS302では、端末14は、現在のタイムアウト値をデフォルトのタイムアウト値に設定する。デフォルトのタイムアウト値は、床コードFC1が表示されている床から1段目の棚板302aに到達するべき時間である。デフォルトのタイムアウト値は、床から棚板302aまでの距離と無人航空機10の現在の速度を利用して算出される。床から棚板302aまでの距離は、操縦アプリ42に予め記憶される。なお、変形例では、この距離は、床コードFC1に記録されていてもよい。また、無人航空機10の速度は、一定であってもよいし、変化してもよい。無人航空機10の現在の速度は、例えば、無人航空機10によって測定されてもよい。また、他の変形例では、デフォルトのタイムアウト値そのものが、操縦アプリ42に予め記憶されてもよいし、床コードFC1に記録されていてもよい。S302が終了すると、端末14は、S12以降の処理を実行する。
【0164】
また、端末14は、棚コードの読み取りを検知する場合(S30でYES)に、S304に進む。S304では、端末14は、棚コードから読み取った距離と無人航空機10の現在の速度を利用して次のタイムアウト値を算出する。そして、端末14は、現在のタイムアウト値を算出したタイムアウト値に変更する。S304が終了すると、端末14は、S40以降の処理を実行する。
【0165】
また、端末14は、最新の進行方向が、進行方向の変更を示すと判断する場(S44でYES)に、S306に進む。S306は、S300と同様である。
【0166】
(具体的なケースF1;
図15)
図16の読み飛ばし対処処理の具体的なケースF1について説明する。本ケースでは、端末14は、ジグザグな飛行経路のうちの最初の上向きの経路において、1段目の棚板302aの棚コードSC20、2段目の棚板302bの棚コードSC22、及び、3段目の棚板302cの棚コードSC20を読み取る(S30でYES)。棚コードSC20が読み取られる場合には、端末14は、棚コードSC20内の距離d3と無人航空機10の現在の速度を利用して、タイムアウト値T3を算出する(S304)。また、棚コードSC22が読み取られる場合には、端末14は、棚コードSC22内の距離d4と無人航空機10の現在の速度を利用して、タイムアウト値T4を算出する(S304)。
【0167】
本ケースでは、3段目の棚コードSC20の次に読み取られるべき棚コードSC24が読み飛ばされる。棚コードSC24の読み取りが検知されず、現在のタイムがタイムアウト値「T3」を超える場合(S30でNO、S32でYES)に、端末14は、最新の進行方向「上」とは逆の進行方向「下」を航空機本体12に送信する(S34)。これにより、無人航空機10は、下方向に移動して、読み飛ばされた棚コードSC24まで戻ることができる。タイムアウト値T3を利用して、棚コードSC24を端末14に読み取らせることができる。また、本ケースのように棚コードが等間隔に並んでいない場合であっても、3段目の棚板302cから天板304までの実際の距離d3を棚コードSC20から読み取り、次の棚コードSC24が表示されている天板304へ到達するべきタイムアウト値T3を算出することができる。
【0168】
また、図示は省略するが、水平方向の飛行における棚コードの読み取りが発生する場合でも、タイムアウト値T5及びT6を利用して、読み飛ばされた棚コード(例えばSC26)を端末14に読み取らせることができる。
【0169】
(対応関係)
棚コードSC20の表示箇所、棚コードSC24の表示箇所が、それぞれ、「第3の箇所」、「第4の箇所」の一例である。棚コードSC20、距離d3、タイムアウト値T3が、それぞれ、「第1の指示コード」、「距離」、「予定時間」の一例である。
【0170】
(第8実施例)
(行動指示システム2の構成;
図17)
本実施例では、第4実施例と同様に、棚300及び棚コードSC1~SC16が利用される。また、本実施例では、
図10の読み飛ばし対処処理に加えて、
図18のバーコード検索処理が実行される。なお、変形例では、
図10の読み飛ばし対処処理は実行されなくてもよい。
【0171】
図17に示すように、本実施例の無人航空機10の飛行経路は、第4実施例と同様にジグザグである。ただし、本実施例では、いくつかのバーコードBCが飛行経路からずれる。例えば、ケースG1及びG2では、商品GDが飛行経路からずれており、これにより、バーコードBCが飛行経路からずれる。また、ケースG3では、商品GDの形状が細長く、これにより、バーコードBCが飛行経路からずれる。
【0172】
バーコードBCが飛行経路からずれると、無人航空機10が飛行経路に沿っていても、端末14の水平カメラ20がバーコードBCの正面に位置しない場合がある。水平カメラ20がバーコードBCの正面に位置しないと、バーコードBCから情報を正確に読み取れない可能性がある。本実施例の端末14は、バーコードBCから情報を正確に読み取れない場合に対処するために
図18のバーコード検索処理を実行する。
【0173】
(バーコード検索処理;
図18)
図18を参照して、本実施例の端末14が実行するバーコード検索処理について説明する。S400では、端末14は、棚コード(例えば
図17のSC10)を読み取ったのか否かを監視する。端末14は、棚コードを読みっとった場合(S400でYES)に、S410に進む。
【0174】
S410では、端末14は、棚コードの読み取り後に何らかの情報コードの読み取りに成功したのか否かを判断する。端末14は、何らかの情報コードの読み取りに成功したと判断する場合(S410でYES)に、S430に進む。
【0175】
S430では、端末14は、読み取った情報コードが棚コードであるのかバーコードBCであるのかを判断する。例えば、端末14は、情報コードから読み取った情報が、商品情報ではなく、特定の指示(例えば指示(上))である場合に、読み取った情報コードが棚コードであると判断する。一方、端末14は、情報コードから読み取った情報が特定の指示でない場合に、読み取った情報コードがバーコードBCであると判断する。端末14は、読み取った情報コードがバーコードBCであると判断する場合(S430でNO)に、S434に進む。
【0176】
S434では、端末14は、無線LANI/F24を介して、商品情報を端末装置200に送信する。S434が終了すると、端末14は、
図18の処理を終了して、S400の監視に戻る。
【0177】
また、端末14は、何らかの情報コードの読み取りに成功していないと判断する場合(S410でNO)に、S412に進む。S412では、端末14は、水平カメラ20によって撮像された画像(以下では「撮像画像」と記載)の中にバーコードBCが含まれるのか否かを判断する。例えば、端末14は、撮像画像の中にバーコードBCに似た特徴を有する画像が含まれる場合に、撮像画像の中にバーコードBCが含まれると判断する。端末14は、撮像画像の中にバーコードBCが含まれると判断する場合(S412でYES)に、S414に進む。
【0178】
S414では、端末14は、撮像画像においてバーコードBCが存在する方向へ無人航空機10の向きを変える向き変更指示を航空機本体12に送信する。例えば、
図18に示すように、無人航空機10の経路から左側に商品GDがずれている場合には、向き変更指示は、無人航空機10をヨー軸に沿って所定の角度だけ右側に回転させる指示である。
図18に示すように、無人航空機10が正面を向いているときには、水平カメラ20の画角内にバーコードBCの一部が含まれる。向き変更指示に従って回転することにより、水平カメラ20の画角内にバーコードBCの全体が含まれる。これにより、バーコードBCから情報を読み取る可能性を高めることができる。ここで、所定の角度は、操縦アプリ42に予め記憶されている。
【0179】
続くS416は、S410と同様である。端末14は、S414の処理を実行しても、何らかの情報コードの読み取りに成功していないと判断する場合(S416でNO)に、又は、撮像画像の中にバーコードBCが含まれないと判断する場合(S412でNO)に、S420に進む。
【0180】
S420では、端末14は、無人航空機10の現在の位置を示す現在位置情報をメモリ34の所定の記憶領域に一時的に記憶する。現在位置情報は、S400で読み取った棚コードの位置を特定可能な情報であればよい。現在位置情報は、例えば、棚300の番号と当該棚300で読み取った棚コードの個数である。棚300の番号は、例えば、床コードFC1に記録されていてもよい。なお、変形例では、現在位置情報は、GPSセンサから取得した情報であってもよい。
【0181】
続くS422では、端末14は、所定の範囲に亘って無人航空機10を水平移動させる水平移動指示を航空機本体12に送信する。水平移動では、無人航空機10は、水平カメラ20が正面に向いている状態で、経路から右方向へ移動するとともに、経路から左方向へも移動する。例えば、S414において、無人航空機10を右側に回転させて水平カメラ20の画角内にバーコードBCの全体が含まれたとしても、バーコードBCが斜めに撮像される。バーコードBCが斜めに撮像される場合には、台形補正等により画像を補正してバーコードBCをデコードする。しかし、画像を補正しても、バーコードBCから情報を読み取れない場合がある。水平移動をすれば、水平カメラ20は、正面からバーコードBCを撮像することができる。これにより、バーコードBCから情報を読み取る可能性を高めることができる。ここで、所定の範囲は、操縦アプリ42に予め記憶されている。
【0182】
続くS424は、S410と同様である。端末14は、S422の処理を実行しても、何らかの情報コードの読み取りに成功していないと判断する場合(S424でNO)に、S440に進む。S440では、端末14は、通知情報をメモリ34の所定の記憶領域に一時的に記憶する。通知情報は、S420で記憶した現在位置情報と、S410からS424の処理の間において水平カメラ20によって撮像された撮像画像と、を含む。ここで、通知情報は、所定のタイミングで端末装置200に送信される。端末装置200のユーザは、通知情報に含まれる現在位置情報によって示される位置においてバーコードBCが読み取れなかったことを知ることができ、さらに、通知情報内の撮像画像を見て、バーコードBCが読み取れなかった位置の現在の状況を知ることができる。ここで、所定のタイミングは、例えば、S440において通知情報を記憶したタイミング、所定の周期が到来したタイミング、無人航空機10が待機場600に戻ったタイミングである。S440が終了すると、端末14は、
図18の処理を終了し、S400の監視に戻る。なお、変形例では、通知情報は、現在位置情報を含み、撮像画像を含まなくてもよい。
【0183】
また、端末14は、何らかの情報コードの読み取りに成功したと判断する場合(S424でYES)に、S430に進む。例えば、水平移動の結果、無人航空機10が、S400で読み取った棚コードとは異なる棚コードまで到達する可能性がある。この場合にも、端末14は、S424において、何らかの情報コードの読み取りに成功したと判断する。端末14は、S424で読み取った情報コードが棚コードであると判断する場合(S430でYES)に、S434に進む。
【0184】
S434では、端末14は、S400でYESと判断してから所定時間が経過したのか否かを判断する。端末14は、S400でYESと判断してから所定時間が経過したと判断する場合(S432でYES)に、S440に進む。一方、端末14は、S400でYESと判断してから所定時間が経過していないと判断する場合(S432でNO)に、S422に戻り、無人航空機10を再び水平移動させる。
【0185】
(対応関係)
図17のケースG1~G3における商品GDが、「第2の物品」の一例である。端末14のメモリ34が、「メモリ」の一例である。
【0186】
(第9実施例の変形例)
本変形例では、棚300に表示されている複数個の棚コードのそれぞれが、S414において無人航空機10が回転する所定の角度及びS422において無人航空機10が水平移動する所定の範囲を含む範囲情報を記録している。なお、
図17では、複数個の棚コードのうち、ケースG1における棚コードSC10に範囲情報を記載し、残りの棚コードについて、範囲情報の記載を省略している。端末14は、各棚コードから読み取った範囲情報を利用して、S414及びS416の処理を実行する。このような構成によれば、複数個の棚コードを利用して、無人航空機10の向き及び位置を変更する範囲を制御することができる。例えば、棚コードSC12に記録されている所定の角度を棚コードSC10に記録されている所定の角度と異ならせることにより、無人航空機10が回転する範囲を制御することができる。また、例えば、棚コードSC10が範囲情報を記録する一方で、棚コードSC12が範囲情報を記録しないことにより、
図18の処理の実行の有無を制御することができる。
【0187】
以上、本明細書で開示する技術の具体例を説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。例えば、以下の変形例を採用してもよい。
【0188】
(変形例1) 無人航空機10は、端末14を備えなくてもよい。本変形例では、端末14の機能を実現する構成(即ち制御部30とカメラ20、22)が航空機本体12に備えられていてもよい。航空機本体12に備えられる当該構成が、「情報読取装置」の一例である。
【0189】
(変形例2) 「所定の空間」は、倉庫に限らず、例えば、店舗、野外で区画された空間等であってもよい。これら変形例では、「第1の棚経路」を省略可能である。
【0190】
(変形例3) 行動指示システム2は、床コードを備えなくてもよい。本変形例では、棚コードが「指示コード」の一例であり、「指示コード」は、回転方向を示さず、進行方向を示してもよい。また、本変形例では、「第1の周囲コード」を省略可能である。
【0191】
(変形例4) 行動指示システム2は、棚コードを備えなくてもよい。本変形例では、床コードは、倉庫内の特定の空間への進行方向を示してもよい。そして、無人航空機10は、当該床コードによって示される進行方向に従って特定の空間に移動した後に、当該特定の空間の中から目標物(例えば商品GD等の物品、特定の人物)を検索するように自由に飛行してもよい。本変形例では、床コードが「指示コード」の一例である。
【0192】
(変形例5) 床コードは、所定の回転方向を示し、無人航空機10は、当該床コードによって示される回転方向に従って機首を向けて、機首の示す方向に移動してもよい。本変形例では、「指示コード」は、進行方向を示さず、回転方向を示してもよい。
【0193】
(変形例6) 第2実施例において、無人航空機10は、ルートコードRC01を再び読み取ることなく、待機場600に戻ってもよい。本変形例では、「前記分岐コードから前記特定の識別情報を再び読み取る」ことを省略可能である。
【0194】
(変形例7)
図9のケースD2は実行されなくてもよい。本変形例では、
図10のS44の処理が実行されなくてもよい。本変形例では、「第1の判断部」を省略可能である。
【0195】
(変形例8) 第4実施例では、端末14は、
図10のS42の判断を利用して、現在が進行方向の変更のタイミングであるのか否かを判断する。これに代えて、端末14は、無人航空機10が直線の経路(例えば床コードFC1から棚コードSC1までの経路)の始端から終端に到達する予定時間が経過したのか否かの判断を利用して、現在が進行方向の変更のタイミングであるのか否かを判断してもよい。本変形例では、当該直線の経路の途中の棚コード(例えばSC10)を省略可能であり、一般的に言えば、「カウント部」を省略可能である。
【0196】
(変形例9) 「位置情報」は、AP100~102のビーコン信号の電波強度に限らず、例えば、他の無線通信(例えばBluetooth(登録商標))の信号の強度、カメラ(た例えば20)によって撮像された画像内の背景等を分析して推定される倉庫内の位置を示す情報等であってもよい。
【0197】
(変形例10) 第1実施例において、棚400及び床コードFC3が省略されてもよい。本変形例では、「第2の棚」及び「第2の周囲コード」を省略可能である。
【0198】
(変形例11) 端末14は、商品GDのバーコードBCを読み取らなくてもよい。本変形例では、「物品コード」を省略可能である。
【0199】
(変形例12) 「指示コード」は、2次元コードに限らず、例えば、バーコード、多段のバーコードであってもよい。「物品コード」は、バーコードに限らず、2次元コード、多段のバーコードであってもよい。また、「指示コード」が、第1種の規格に準ずる2次元コードであり、「物品コード」が、第1種の規格とは異なる第2種の規格に準ずる2次元コードであってもよい。また、「指示コード」と「物品コード」との双方が、同じ規格に準ずる情報コードであってもよい。
【0200】
(変形例13) 垂直カメラ22は、上側を向いていてもよい。本変形例では、床コードと同様の機能を有する2次元コードが、天井に表示されていてもよい。
【0201】
(変形例14) 第4実施例において、棚コードSC10は、進行方向「上」を記録しなくてもよい。この場合、棚コードSC10は、床コードFC1によって示される進行方向「上」に従った移動を維持することを示す維持指示を記録してもよい。本変形例では、維持指示が、「第1の指示」の一例である。
【0202】
(変形例15) 第9実施例において、
図18のS414の処理が実行されず、S422の処理が実行されてもよい。また、S422の処理が実行されず、S414の処理が実行されてもよい。一般的に言えば、「前記無人航空機は、前記無人航空機の向き及び位置の少なくとも一方を変更するように行動」すればよい。
【0203】
(変形例16) 第9実施例の
図18のS440において、通知情報が無人航空機10とは異なる外部の装置、例えば、端末装置200に送信されてもよい。そして、通知情報が外部の装置のメモリに記憶されてもよい。本変形例では、外部の装置のメモリが、「メモリ」の一例である。
【0204】
本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【符号の説明】
【0205】
2 :行動指示システム
10 :無人航空機
12 :航空機本体
12a :制御装置
12b :筐体
14 :端末
16 :表示部
18 :操作部
20 :水平カメラ
22 :垂直カメラ
24 :無線LANI/F
26 :接続部
30 :制御部
32 :CPU
34 :メモリ
40 :OSプログラム
42 :操縦アプリ
44a、44b :ルートテーブル
46 :設定テーブル
100、101、102 :AP
200 :端末装置
300 :棚
302a、302b、302c:棚板
304 :天板
306 :板
400 :棚
500 :棚
600 :待機場
GD :商品
BC :バーコード
FC1~FC8 :床コード
RC00~RC14 :ルートコード
RV1~RV5 :逆コード
SC1~SC6 :棚コード
SC10、SC12、SC14、SC16、SC20~SC30 :棚コード
SA :記録領域
SM :シンボルマーク
IM :画像
T1~T6 :予定時間(タイムアウト値)
d3~d6 :距離