<実施例1>
以下、本発明の実施例1について添付図面を参照しつつ説明する。
本発明の実施例1に係る物流システム1は、販売された物品を購入者によって指定された宛先まで運搬する。このため、物流システム1は、運搬システムとも称される。
物流システム1は、販売された物品を運搬する、図1に示すような第1運搬機11と、宛先に設置されており、かつ、運搬された物品を格納するロッカー装置12と、を有する第1物流機構10と、購入者によって携帯される端末装置19と、を備える。本実施例では、説明を簡単にするため、購入者と受取人とは、同一人物であると説明するが、これに限定される訳では無く、購入者と受取人とは、別人物であっても良い。
また、物流システム1は、例えば、工場から物品を運搬してきた運搬業者から物品を引き受け、引き受けた物品を運搬する第2運搬機21と、第2運搬機21によって運搬された物品を保管する保管庫22と、を有する第2物流機構20をさらに備える。第2物流機構20の第2運搬機21は、物品が販売されると、販売された物品を保管庫22から第1物流機構10の第1運搬機11まで運搬し、運搬された物品を第1運搬機11へ受け渡す。
さらに、物流システム1は、販売された物品を保管庫22から宛先まで配送させる制御を、第1物流機構10の第1運搬機11と、第2物流機構20の第2運搬機21と、に行う情報処理装置100を備える。このような構成が用いられて、物流システム1では、販売された物品の配送に関する下記9つの手順が実行される。
1番目の手順は、第2運搬機21が運搬業者から物品を引き受ける引受手順であり、2番目の手順は、引き受けられた物品を第2運搬機21が保管庫22へ運搬する手順(以下、保管庫への運搬手順という)であり、3番目の手順は、運搬された物品を第2運搬機21が保管庫22へ格納させる手順(以下、保管庫への格納手順という)である。1番目から3番目の手順は、販売される前の物品に対して行われる手順であるため、前段の手順と称される。
4番目の手順は、販売された物品を第2運搬機21が保管庫22から取り出す取出手順であり、5番目の手順は、取り出された物品を第2運搬機21が第1運搬機11まで運搬する手順(以下、第1運搬機への運搬手順という)である。6番目の手順は、運搬された物品を第2運搬機21が第1運搬機11に受け渡す受渡手順である。7番目の手順は、受け渡された物品を、当該物品の宛先に設置されたロッカー装置12まで第1運搬機11が運搬する手順(以下、ロッカー装置への運搬手順という)であり、8番目の手順は、運搬された物品を第1運搬機11がロッカー装置12へ格納する手順(以下、ロッカー装置への格納手順という)である。9番目の手順は、物品が宛先のロッカー装置12に配送されたことを知らせる通知を、受取人が携帯する端末装置19へ情報処理装置100が送信する手順(以下、通知手順という)である。4番目から9番目の手順は、販売された物品に対して行われる手順であり、かつ、前段の手順の後に実行されるため、後段の手順と称される。
情報処理装置100は、配送された物品が受取人によって受け取られる受取時刻よりも前の時刻であり、かつ、人間が当該物品に接触した最後の時刻(以下、第1時刻という)を管理する。情報処理装置100が第1時刻を管理するのは、人間から排出されて物品に付着したウィルス及び菌の感染力の大きさは、時間の経過に伴って小さくなるため、第1時刻に基づいて当該物品の受け取りの開始を推奨する推奨受取開始時刻を通知するためである。
本実施例において、時刻は、日、時、及び、分で表されると説明するが、これに限定される訳では無い。時刻は、日、時、分、及び、秒で表されても良いし、日及び時で表されても良いし、日で表されても良い。また、時刻は、時、分、及び、秒で表されても良いし、時及び分で表されても良いし、時で表されても良い。
また、本実施例において、人間が物品に接触するとは、人間が物品に物理的に触れることを意味する。人間が物品に物理的に触れるとは、人間の身体が物品に物理的に触れることだけでなく、例えば、手袋や作業着といった人間が身に着けている衣服が物品に物理的に触れることも含む。
また、情報処理装置100は、第2物流機構20から第1物流機構10の第1運搬機11に物品が受け渡される受渡時刻よりも前の時刻であり、かつ、第2物流機構20が運搬又は保管する当該物品に人間が接触した最後の時刻(以下、第2時刻という)をさらに管理する。情報処理装置100が第2時刻を管理するのは、初期の第1時刻を第2時刻に基づいて設定できるようにするためである。
1番目の手順を実行する第2運搬機21は、図2に示すような、無人地上車両であり、人間の立ち入りが禁じられた販売業者の倉庫に配置されている。このため、第2運搬機21に、人間が乗車しない。
第2運搬機21は、車輪211及び212を含む複数の車輪を備える車台213と、車台213の上面に設置された格納庫214と、格納庫214に内蔵された制御装置219と、を備える。
第2運搬機21の格納庫214は、1つの格納ボックス215を備える。格納ボックス215は、不図示の1枚の底板、天板、及び、背板、並びに、2枚の側板を備え、これらの板により閉塞されて前方が開放された空間を形成する箱体を備える。箱体の開口部には、扉215aを受け止める扉枠215bが設置されている。扉215aは、カンヌキであるデッドボルト215cを備え、扉枠215bは、デッドボルト215cの受座であるストライク215dを備える。
第2運搬機21が備える格納庫214の扉215aは、制御装置219から出力される信号に従って、デッドボルト215cをストライク215dへ挿入させることで、扉215aを施錠する不図示のモータをさらに備えている。当該モータは、制御装置219から出力される信号に従って、デッドボルト215cをストライク215dから抜出させることで、扉215aを解錠する。
第2運搬機21は、車台213の前面に設置されたLiDAR(Light Detection and Ranging)センサ216と、車台213の後面に設置された不図示のLiDARセンサと、をさらに備える。
第2運搬機21が備える前面のLiDARセンサ216は、第2運搬機21の前方向を基準の方位として用いる場合に、当該基準の方位となす方位角が-90度から+90度まで、かつ、第2運搬機21の前方向となす仰角が-90度から+90度までの範囲に含まれる複数の方向へレーザー光を照射する。前面のLiDARセンサ216は、照射されたレーザー光の反射光を受光し、レーザー光の照射から反射光の受光までの時間に基づいて、レーザー光が反射された複数の反射点までの距離を計測する。次に、前面のLiDARセンサ216は、レーザー光の照射方向と計測された距離とに基づいて、第2運搬機21の中心点を原点として用いた第2運搬機21の三次元座標系における座標値を、複数の反射点について算出する。その後、前面のLiDARセンサ216は、算出された複数の反射点の座標値を制御装置219へ出力する。
第2運搬機21が備える後面のLiDARセンサは、第2運搬機21の後方向を基準の方位として用いる場合に、当該基準の方位となす方位角が-90度から+90度まで、かつ、第2運搬機21の後方向となす仰角が-90度から+90度までの範囲に含まれる複数の方向へ赤外線のレーザー光を照射する。また、後面のLiDARセンサは、照射されたレーザー光の複数の反射点について第2運搬機21の三次元座標系における座標値を算出し、算出された複数の反射点の座標値を制御装置219へ出力する。
第2運搬機21が備える前面のLiDARセンサ216及び後面のLiDARセンサが複数の反射点の座標値を制御装置219へ出力するのは、制御装置219が、例えば、障害物等の物体を回避して走行するために、第2運搬機21を基準として用いた全方向にある物体の三次元空間における座標値及びサイズ等を特定するためである。
第2運搬機21は、格納庫214の前面に設置され、第2運搬機21の前方を撮像できるように光軸及び画角を調整された撮像装置217をさらに備える。撮像装置217は、デジタル式のモノラルカメラであり、例えば、1秒に1度といった予め定められた周期で、第2運搬機21の前方を撮像し、撮像により得られた画像を表す画像信号を制御装置219へ出力する。
また、第2運搬機21は、格納庫214の上面に設置されたロボットアーム218をさらに備える。ロボットアーム218は、垂直多関節ロボットであり、制御装置219から出力される制御信号に従って不図示のモータを駆動させる駆動回路と、モータによって平行に開閉させられる二爪式のグリッパー218aと、を備える。
第2運搬機21のロボットアーム218は、グリッパー218aに搭載され、グリッパー218aの爪先が撮像範囲に含まれるように光軸及び画角が調整された撮像装置218bと、不図示のモータによって可動させられる複数の関節構造及び関節構造を中心として可動する複数のアーム218cと、を備える。グリッパー218aは、二爪式に限定される訳で無く、三本以上の爪を有しても良いし、二本の爪の代わりに複数本の指を有しても良い。
第2運搬機21のロボットアーム218が備える撮像装置218bは、デジタル式のステレオカメラであり、制御装置219から出力される信号に応じて撮像を行い、互いに視差を有する2つの画像を表す信号を制御装置219へ出力する。このような信号が制御装置219へ出力されるのは、2つの画像が有する視差に基づいて、グリッパー218aの摘持対象物とされる物品の三次元空間における位置座標及びサイズ等を制御装置219が特定するためである。
第2運搬機21の制御装置219は、図3に示すようなハードウェアを備えている。制御装置219のハードウェアは、CPU(Central Processing Unit)219a、RAM(Random Access Memory)219b、ROM(Read Only Memory)219c、フラッシュメモリ219d、データ通信回路219e、ビデオカード219f、表示装置219g、入力装置219h、位置計測回路219i、入出力ポート219j、及び、駆動回路219kを含む。本実施例では、第2運搬機21は、1つのCPU219aを備えるが、複数のCPUを備えても良い。また、第2運搬機21は、複数のRAM及びフラッシュメモリを備えても良い。
第2運搬機21のCPU219aは、ROM219c又はフラッシュメモリ219dに保存されたプログラムを実行することで、第2運搬機21の全体制御を行う。RAM219bは、CPU219aによるプログラムの実行時において、処理対象とするデータを一時的に記憶する。
第2運搬機21のROM219c及びフラッシュメモリ219dは、各種のプログラムを記憶している。また、フラッシュメモリ219dは、プログラムの実行に用いられる各種のデータやデータが保存されたテーブルをさらに記憶している。第2運搬機21は、フラッシュメモリ219dの代わりに、ハードディスクを備えても良い。
第2運搬機21のデータ通信回路219eは、例えば、NIC(Network Interface Card)であり、TCP(Transmission Control Protocol)/IP(Internet Protocol)といった通信規格に従って、ローカルエリアネットワークLNに接続された不図示のアクセスポイントと電波を用いたデータ通信を行う。このようにして、第2運搬機21のデータ通信回路219eは、ローカルエリアネットワークLNに接続された保管庫22及び情報処理装置100とデータ通信を行う。
第2運搬機21のビデオカード219fは、CPU219aから出力されたデジタル信号に基づいて画像をレンダリングすると共に、描画された画像を表す画像信号を出力する。表示装置219gは、EL(Electroluminescence)ディスプレイであり、ビデオカード219fから出力された画像信号に従って画像を表示する。第2運搬機21は、ELディスプレイの代わりに、PDP(Plasma Display Panel)又はLCD(Liquid Crystal Display)を備えても良い。入力装置219hは、キーボード、マウス、タッチパッド、及び、ボタンのいずれか1つ以上であり、運搬業者の従業員が行う操作に従った信号を出力する。
第2運搬機21の位置計測回路219iは、QZSS(Quasi-Zenith Satellite System)回路である。位置計測回路219iは、準天頂衛星から発せられた信号を受信し、受信された信号に基づいて第2運搬機21の位置を表す緯度、経度、及び、高度を計測し、計測された緯度、経度、及び、高度を表す信号を出力する。位置計測回路219iは、QZSS回路ではなく、GPS(Global Positioning System)衛星から発せられたGPS信号を受信し、受信されたGPS信号に基づいて第2運搬機21の位置を表す緯度、経度、及び、高度を計測するGPS回路であっても良い。
第2運搬機21の入出力ポート219jは、不図示のケーブルを介して、前面のLiDARセンサ216及び後面のLiDARセンサとそれぞれ接続された不図示のケーブルに接続されている。入出力ポート219jは、前面のLiDARセンサ216及び後面のLiDARセンサがそれぞれ出力する座標値を表す信号をCPU219aへ入力する。
また、第2運搬機21の入出力ポート219jは、不図示のケーブルを介して、格納庫214の前面に設置された撮像装置217と、ロボットアーム218が備える撮像装置218bと、に接続されており、撮像装置217及び218bが出力する画像信号をCPU219aへ入力する。
さらに、第2運搬機21の入出力ポート219jは、不図示のケーブルを介して、ロボットアーム218に接続されており、CPU219aが出力する制御信号をロボットアーム218へ入力する。
駆動回路219kは、複数の車輪を回転させる不図示のモータにそれぞれ接続された不図示のケーブルに接続されている。駆動回路219kは、CPU219aが出力する制御信号に従って当該モータを駆動させることで、複数の車輪を回転させる。
駆動回路219kは、扉215aが備えるデッドボルト215cをストライク215dから抜出させる又はストライク215dに挿入させる不図示のモータに接続されたケーブルに接続されており、CPU219aが出力する信号に従って当該モータを駆動させる。
運搬業者の従業員は、販売業者の倉庫に到着すると、不図示の端末装置を操作し、端末装置は、当該操作に従って、営業所への到着を知らせる通知を情報処理装置100へ送信する。情報処理装置100は、当該通知を受信すると、運搬業者から物品を引き受ける引受手順の実行を命じる実行命令を第2運搬機21へ送信する。
第2運搬機21のデータ通信回路219eが当該実行命令を受信すると、CPU219aは、当該実行命令に従って引受手順を行うため、図4に示すような引受処理を実行する。
引受処理の実行を開始すると、第2運搬機21のCPU219aは、フラッシュメモリ219dから、予め定められた引受場所の位置を緯度、経度、及び、高度で表す情報を取得する(ステップS01)。本実施例では、引受場所は、倉庫の搬入口であるが、これに限定される訳では無い。
次に、第2運搬機21のCPU219aは、位置計測回路219iから出力される信号に基づいて、第2運搬機21の緯度、経度、及び、高度を特定する。その後、第2運搬機21のCPU219aは、例えば、倉庫内の通路といった第2運搬機21が移動可能な部分経路に関する情報が予め保存されている不図示の部分経路テーブルをフラッシュメモリ219dから読み出し、読み出された部分経路テーブルから複数のレコードを読み出す。部分経路テーブルの各レコードには、部分経路の始点ノードの緯度、経度、及び、高度と、当該部分経路の終点ノードの緯度、経度、及び、高度と、当該部分経路であるエッジの長さと、が対応付けられて予め保存されている。
第2運搬機21のCPU219aは、特定された第2運搬機21の緯度、経度、及び、高度と、読み込まれた複数のレコードにそれぞれ保存されている部分経路であるエッジの長さ並びにノードの緯度、経度、及び、高度と、引受場所の緯度、経度、及び、高度と、を用いて、例えば、ダイクストラ法といった経路探索アルゴリズムを実行する。これにより、CPU219aは、第2運搬機21の位置から、引受場所までの最短の全体経路を算出し、算出された全体経路を移動経路として決定する(ステップS02)。
次に、第2運搬機21のCPU219aは、移動経路を順行するために、位置計測回路219iから出力される信号に基づいて、第2運搬機21の緯度、経度、及び、高度を特定する。その後、CPU219aは、特定された緯度、経度、及び、高度と、移動経路に含まれる複数の未到着のノードの内で最も到着順が早いノードの緯度、経度、及び、高度と、の相違を縮小させる走行をするための制御信号を生成する。その後、CPU219aは、生成された制御信号を駆動回路219kへ出力し(ステップS03)、駆動回路219kは、制御信号に従って複数の車輪を回転させる。
その後、第2運搬機21のCPU219aは、移動経路に含まれる1又は複数のノードの全てに到着した訳ではないため、引受場所に到着していないと判別すると(ステップS04;No)、ステップS03から上記処理を繰り返す。これに対して、CPU219aは、移動経路に含まれる1又は複数のノードの全てに到着したため、引受場所に到着したと判別すると(ステップS04;Yes)、格納庫214の扉215aを解錠させるための制御信号を駆動回路219kに出力することで、デッドボルト215cをストライク215dから抜出させる(ステップS05)。
その後、運搬業者の従業員は、物品を手で持ちながら第2運搬機21の前方に移動する。第2運搬機21の撮像装置217が、従業員によって保持された物品を撮像し、撮像により得られた画像を表す画像信号を入出力ポート219jが入力すると、第2運搬機21のCPU219aは、例えば、パターンマッチングを行う。これにより、CPU219aは、画像信号で表される画像から、撮像された物品に対応する画像領域を検出する。パターンマッチングでは、CPU219aは、フラッシュメモリ219dに予め記憶されている物品のパターンを表す情報を用いる。次に、CPU219aは、検出された画像領域に、例えば、OCR(Optical Character Recognition)処理を実行することで、物品又は物品の梱包に印字された物品ID(IDentification)を取得する(ステップS06)。
本実施例において、物品を識別する物品IDは、当該物品の品番と、当該物品の製造者又は販売者によって当該物品に割り振られた、例えば、シリアル番号である個別識別番号と、の組み合わせであるが、これに限定される訳では無い。
次に、運搬業者の従業員は、手を使って物品を第2運搬機21の格納庫214に入れてから、格納庫214の扉215aを施錠させる操作を入力装置219hに行う。第2運搬機21の入力装置219hが当該操作に応じた信号を出力すると、CPU219aは、格納庫214の扉215aを施錠させるための制御信号を駆動回路219kに出力することで、デッドボルト215cをストライク215dに挿入させる(ステップS07)。
その後、第2運搬機21のCPU219aは、取得された物品IDと、当該物品IDで識別される物品を引き受ける引受手順を識別する手順IDと、を含み、かつ、引受手順が完了したことを告げる完了報告を生成する。次に、第2運搬機21のCPU219aは、生成された完了報告を、情報処理装置100を宛先としてデータ通信回路219eへ出力する(ステップS08)。第2運搬機21のCPU219aは、データ通信回路219eが完了報告を情報処理装置100へ送信してから、引受処理の実行を終了する。
このように、本実施例では、引受手順を行うために、運搬業者の従業員が手を使って物品を第2運搬機21に格納させる必要があるため、引受手順には、人間が介在している。本明細書において、手順に人間が介在するとは、当該手順を行うために、人間が物品に物理的に触れる必要があることをいう。
このため、情報処理装置100は、引受手順が完了したことを告げる完了報告を受信し取得すると、完了報告を取得した時刻を第2時刻として管理する。その後、情報処理装置100は、引き受けられた物品を保管庫22へ運搬させるため、保管庫への運搬手順の実行を命じる実行命令を第2運搬機21へ送信する。
第2運搬機21のデータ通信回路219eが当該実行命令を受信すると、CPU219aは、当該実行命令に従って保管庫への運搬手順を行うため、図5に示すような保管庫運搬処理を実行する。
保管庫運搬処理の実行を開始すると、第2運搬機21のCPU219aは、フラッシュメモリ219dから、保管庫22の位置を緯度、経度、及び、高度で表す情報を取得する(ステップS11)。次に、CPU219aは、図4のステップS02からS04と同様の処理を実行することで(ステップS12からS14)、物品を保管庫22まで運搬する。その後、CPU219aは、保管庫への運搬手順の手順IDを含み、かつ、当該手順が完了したことを告げる完了報告を、情報処理装置100を宛先としてデータ通信回路219eへ出力する(ステップS15)。第2運搬機21のCPU219aは、データ通信回路219eが完了報告を情報処理装置100へ送信してから、保管庫運搬処理の実行を終了する。
このように、本実施例では、無人地上車両である第2運搬機21が保管庫への運搬手順の全てを行うため、当該手順には、人間が介在していない。このため、情報処理装置100は、保管庫への運搬手順が完了したことを告げる完了報告を受信しても、第2時刻を更新せずに維持する。
保管庫22は、物品の格納に用いられる、図6に示すような複数の格納ボックス225と、複数の格納ボックス225それぞれの施錠及び解錠を制御する制御装置229と、を備える。
保管庫22が備える複数の格納ボックス225それぞれは、不図示の箱体及び扉、並びに、箱体の開口部に設置された扉枠をそれぞれ備える。また、それぞれの扉は、カンヌキである不図示のデッドボルトを備え、それぞれの扉枠は、デッドボルトの受座である不図示のストライクを備える。複数の格納ボックス225それぞれが備える箱体、扉、扉枠、デッドボルト、及び、ストライクの構成及び機能は、第2運搬機21が備える格納ボックス215の箱体、扉215a、扉枠215b、デッドボルト215c、及び、ストライク215dの構成及び機能と同様である。
保管庫22が備える制御装置229は、ハードウェアである不図示のCPU、RAM、ROM、フラッシュメモリ、データ通信回路、ビデオカード、表示装置、入力装置、入出力ポート、及び、駆動回路を備える。保管庫22の制御装置229が備えるこれらのハードウェアの構成及び機能は、第2運搬機21の制御装置219が備えるハードウェアの構成及び機能と同様である。本実施例では、保管庫22は、1つのCPUを備えるが、複数のCPUを備えても良い。また、保管庫22は、複数のRAM及びフラッシュメモリを備えても良い。
保管庫22へ物品を運搬した第2運搬機21から、保管庫への運搬手順が完了したことを告げる完了報告を受信すると、情報処理装置100は、保管庫への格納手順の実行を命じる実行命令を第2運搬機21へ送信する。
第2運搬機21のデータ通信回路219eが当該実行命令を受信すると、CPU219aは、当該実行命令に従って保管庫への格納手順を行うため、図7に示すような保管庫格納処理を実行する。
保管庫格納処理の実行を開始すると、第2運搬機21のCPU219aは、第2運搬機21の緯度、経度、及び、高度と、保管庫22の緯度、経度、及び、高度と、に基づいて、ロボットアーム218が備える撮像装置218bの光軸を、保管庫22が備える複数の格納ボックス225の1つが撮像可能となるように変更させる制御信号を生成する。次に、CPU219aは、生成された制御信号と、撮像を命じる制御信号と、を、入出力ポート219jを介して撮像装置218bへ出力する。
次に、CPU219aは、撮像装置218bから出力された信号に基づいて2枚の画像を取得し、取得された2枚の画像の一方に、例えば、OCR処理を実行する。これにより、CPU219aは、撮像された格納ボックス225の扉に表示された番号であり、かつ、当該格納ボックス225を識別するボックスIDを取得する(ステップS21)。
次に、第2運搬機21のCPU219aは、取得された2枚の画像の視差に基づいて、撮像された扉の位置及び形状を表す座標値を算出する。本実施例において、CPU219aが算出する座標値は、第2運搬機21の中心点を原点として用いる三次元座標系の座標値であるが、これに限定される訳では無い。
その後、第2運搬機21のCPU219aは、算出された座標値に基づいて、撮像された扉をロボットアーム218に開けさせる制御信号をロボットアーム218へ出力する。ロボットアーム218は、当該制御信号に従って、保管庫22の扉を開ける。
次に、第2運搬機21のCPU219aは、第2運搬機21が備える格納庫214の扉215aを解錠させるための制御信号を駆動回路219kに出力する(ステップS22)。
その後、第2運搬機21のCPU219aは、フラッシュメモリ219dから、第2運搬機21の格納庫214が備える扉215aの位置及び形状を表す座標値を取得する。その後、CPU219aは、取得された座標値に基づいて、ロボットアーム218に扉215aを開けさせる制御信号をロボットアーム218へ出力する。ロボットアーム218は、制御信号に従って第2運搬機21の扉215aを開ける。
その後、第2運搬機21のCPU219aは、フラッシュメモリ219dから取得された座標値に基づいて、ロボットアーム218が備える撮像装置218bの光軸を、第2運搬機21が備える格納庫214の箱体の開口部と内部とが撮像可能となるように変更させる制御信号を生成する。次に、CPU219aは、生成された制御信号と、撮像を命じる制御信号と、をロボットアーム218へ出力する。その後、CPU219aは、撮像装置218bから出力された信号に基づいて2枚の画像を取得し、取得された2枚の画像の視差に基づいて、格納庫214の箱体に格納された物品の位置及び形状を表す座標値を算出する。次に、CPU219aは、算出された座標値に基づいて、格納庫214に格納された物品を摘持して、格納庫214から取り出させる制御信号をロボットアーム218へ出力する(ステップS23)。ロボットアーム218は、制御信号に従って、格納庫214に格納された物品を摘持して格納庫214から取り出す。
その後、第2運搬機21のCPU219aは、開けられる前の保管庫22の扉の位置を表す座標値に基づいて、ロボットアーム218が備える撮像装置218bの光軸を、扉が開けられた後の格納ボックス215の開口部と内部とが撮像可能となるように変更させる制御信号を生成する。次に、CPU219aは、生成された制御信号と、撮像を命じる制御信号と、をロボットアーム218へ出力する。その後、CPU219aは、撮像装置218bから出力された信号で表される2枚の画像の視差に基づいて、箱体の開口部の位置及び形状を表す座標値と、箱体の奥行きと、を算出する。次に、CPU219aは、算出された座標値及び奥行きに基づいて、第2運搬機21から取り出された物品を、開口部から保管庫22の格納ボックス225へ入れさせる制御信号をロボットアーム218へ出力する(ステップS24)。ロボットアーム218は、当該制御信号に従って、物品を保管庫22に格納させる。
その後、第2運搬機21のCPU219aは、ロボットアーム218に開けさせた第2運搬機21の扉225aと、保管庫22の扉と、を閉めさせる制御信号をロボットアーム218へ出力する。
その後、第2運搬機21のCPU219aは、物品を格納させた保管庫22の格納ボックス225を識別するボックスIDと、保管庫への格納手順の手順IDと、を含み、かつ、保管庫への格納手順が完了したことを告げる完了報告を生成する。次に、第2運搬機21のCPU219aは、生成された完了報告を、情報処理装置100を宛先としてデータ通信回路219eへ出力する(ステップS25)。第2運搬機21のCPU219aは、データ通信回路219eが完了報告を情報処理装置100へ送信してから、保管庫格納処理の実行を終了する。
このように、本実施例では、第2運搬機21が保管庫への格納手順の全てを行うため、当該手順には、人間が介在していない。このため、情報処理装置100は、保管庫への格納手順が完了したことを告げる完了報告を受信しても第2時刻を更新しない。その後、情報処理装置100は、当該完了報告に含まれるボックスIDを含み、当該ボックスIDで識別される格納ボックス225の施錠を命じる施錠命令を保管庫22へ送信する。
保管庫22の不図示のデータ通信回路が施錠命令を受信すると、保管庫22のCPUは、施錠命令に含まれるボックスIDを取得し、取得されたボックスIDで識別される格納ボックス225を施錠させるための制御信号を駆動回路に出力する。これにより、当該格納ボックス225が施錠される。
購入者によって携帯される端末装置19は、例えば、スマートフォンであり、図8に示すようなCPU191、RAM192、ROM193a、フラッシュメモリ193b、データ通信回路194a、音声通信回路194b、ビデオカード195a、表示装置195b、入力装置195c、位置計測回路196、スピーカ199a、及び、マイクロフォン199bを備える。本実施例では、端末装置19は、1つのCPU191を備えるが、複数のCPUを備えても良い。また、端末装置19は、複数のRAM及びフラッシュメモリを備えても良い。
端末装置19のCPU191、RAM192、ROM193a、フラッシュメモリ193b、データ通信回路194a、ビデオカード195a、表示装置195b、入力装置195c、及び、位置計測回路196の構成及び機能は、図3に示した第2運搬機21が備える制御装置219のCPU219a、RAM219b、ROM219c、フラッシュメモリ219d、データ通信回路219e、ビデオカード219f、表示装置219g、入力装置219h、及び、位置計測回路219iの構成及び機能と同様である。
端末装置19の音声通信回路194bは、不図示の基地局と電波を用いた音声通信を行う。スピーカ199aは、CPU191が出力する信号に従って音声を出力し、マイクロフォン199bは、端末装置19の周囲の音声を表す信号を出力する。
購入者は、物品を購入するために端末装置19の入力装置195cを操作する。端末装置19の入力装置195cが当該操作に応じた信号を出力すると、CPU191は、当該信号に基づいて、購入が求められた物品の品番と、購入者によって指定された宛先の住所を表す情報と、を取得する。次に、CPU191は、品番と宛先の住所を表す情報とを含み、かつ、当該品番が割り振られた物品を販売し、販売された物品を宛先まで運搬することを求める販売要求を生成する。その後、端末装置19のCPU191は、生成された販売要求を、情報処理装置100を宛先としてデータ通信回路194aへ出力する。
情報処理装置100は、端末装置19のデータ通信回路194aから販売要求を受信すると、保管庫22に格納された1又は複数の物品の内で、販売要求に含まれる品番が割り振られた物品を1つ選択し、選択された物品を購入者へ販売する。次に、情報処理装置100は、販売された物品が格納されている保管庫22の格納ボックス225を識別するボックスIDを含み、かつ、取出手順の実行を命じる実行命令を第2運搬機21へ送信する。
第2運搬機21のデータ通信回路219eが当該実行命令を受信すると、CPU219aは、当該実行命令に従って取出手順を行うため、図9に示すような取出処理を実行する。
取出処理の実行を開始すると、第2運搬機21のCPU219aは、図5のステップS11からS14と同様の処理を実行する(ステップS31からS34)。これにより、第2運搬機21は、保管庫22まで移動する。
その後、第2運搬機21のCPU219aは、保管庫22に到着したことを告げる到着報告を、情報処理装置100を宛先としてデータ通信回路219eへ出力する(ステップS35)。
情報処理装置100は、到着報告を受信すると、販売された物品が格納されている格納ボックス225のボックスIDを含み、かつ、当該格納ボックス225の解錠を命じる解錠命令を保管庫22へ送信する。保管庫22の不図示のデータ通信回路が解錠命令を受信すると、保管庫22のCPUは、解錠命令に含まれるボックスIDによって識別される格納ボックス225を解錠させるための制御信号を駆動回路に出力する。
ステップS35で到着報告を出力した後に、第2運搬機21のCPU219aは、データ通信回路219eが受信した実行命令からボックスIDを取得する(ステップS36)。
その後、第2運搬機21のCPU219aは、ロボットアーム218が備える撮像装置218bの光軸を、保管庫22が備える複数の格納ボックス225の1つが撮像可能となるように変更させる制御信号を生成する。次に、CPU219aは、生成された制御信号と、撮像を命じる制御信号と、を、撮像装置218bへ出力する処理を実行する。その後、CPU219aは、撮像装置218bから出力された信号に基づいて2枚の画像を取得し、取得された2枚の画像の一方から、撮像された格納ボックス225の扉に表示されたボックスIDを取得する。
次に、第2運搬機21のCPU219aは、実行命令から取得されたボックスIDと、画像から取得されたボックスIDと、が一致するか否かを判別する。このとき、CPU219aは、2つのボックスIDが一致しないと判別すると、撮像装置218bの光軸を、複数の格納ボックス225の内で、未だ撮像されていないものの1つが撮像可能となるように変更させる制御信号を生成する。その後、CPU219aは、生成された制御信号と、撮像を命じる制御信号と、を、撮像装置218bへ出力する処理から上記処理を繰り返す。
これに対して、第2運搬機21のCPU219aは、2つのボックスIDが一致すると判別すると、取得された2枚の画像の視差に基づいて、撮像された保管庫22の扉を開けさせる制御信号をロボットアーム218へ出力する。
次に、第2運搬機21のCPU219aは、第2運搬機21が備える格納庫214の扉215aを解錠させる制御信号を駆動回路219kに出力する(ステップS37)。その後、第2運搬機21のCPU219aは、第2運搬機21の扉215aを開けさせる制御信号をロボットアーム218へ出力する。
次に、第2運搬機21のCPU219aは、開けられる前の保管庫22の扉の位置を表す座標値に基づいて、ロボットアーム218が備える撮像装置218bの光軸を、扉が開けられた後の格納ボックス225の開口部と内部とが撮像可能となるように変更させる制御信号と、撮像を命じる制御信号と、を出力する。次に、CPU219aは、撮像装置218bから出力された信号で表される2枚の画像の視差に基づいて、保管庫22の格納ボックス225に格納された物品を摘持して、格納ボックス225から取り出させる制御信号を出力する(ステップS38)。ロボットアーム218は、出力された制御信号に従って、格納ボックス225に格納された物品を摘持して格納ボックス225から取り出す。
次に、第2運搬機21のCPU219aは、フラッシュメモリ219dから、第2運搬機21の格納庫214が備える箱体の開口部の位置及び形状を表す座標値と、箱体の奥行きと、を取得する。次に、CPU219aは、取得された座標値及び奥行きに基づいて、保管庫22から取り出された物品を、開口部から第2運搬機21の格納庫214へ入れさせる制御信号を出力する(ステップS39)。ロボットアーム218は、出力された制御信号に従って、物品を第2運搬機21に格納させる。
その後、第2運搬機21のCPU219aは、ロボットアーム218に開けさせた第2運搬機21の扉225aと、保管庫22の扉と、を閉めさせる制御信号をロボットアーム218へ出力する。その後、第2運搬機21のCPU219aは、第2運搬機21が備える格納庫214の扉215aを施錠させる制御信号を駆動回路219kに出力する(ステップS40)。
次に、第2運搬機21のCPU219aは、取出手順の手順IDを含み、かつ、当該手順が完了したことを告げる完了報告を、情報処理装置100を宛先としてデータ通信回路219eへ出力した後に(ステップS41)、取出処理の実行を終了する。
このように、本実施例では、第2運搬機21が取出手順の全てを行うため、当該手順には、人間が介在していない。このため、情報処理装置100は、出手順が完了したことを告げる完了報告を受信しても第2時刻を更新しない。
その後、情報処理装置100は、第2運搬機21から第1運搬機11へ物品が受け渡される場所として予め定められた受渡場所への移動を命じる移動命令を、第1運搬機11へ送信する。また、情報処理装置100は、第1運搬機への運搬手順の実行を命じる実行命令を第2運搬機21へ送信する。本実施例では、受渡場所は、倉庫の搬出口であるが、これに限定される訳では無い。
第1運搬機11は、不図示の複数の車輪、複数の車輪を備える車台、車台の上面に設置された格納庫、車台の前面及び後面にそれぞれ設置されたLiDARセンサ、車台の前面に設置された撮像装置、格納庫の上面に設置されたロボットアーム、及び、格納庫に内蔵された制御装置を備える。第1運搬機11の複数の車輪、車台、格納庫、前面のLiDARセンサ、後面のLiDARセンサ、撮像装置、ロボットアーム、及び、制御装置の構成及び機能は、第2運搬機21の複数の車輪、車台213、格納庫214、前面のLiDARセンサ216、不図示の後面のLiDARセンサ、撮像装置217、ロボットアーム218、及び、制御装置219の構成及び機能と同様である。
また、第1運搬機11の制御装置は、ハードウェアである不図示のCPU、RAM、ROM、フラッシュメモリ、データ通信回路、ビデオカード、表示装置、入力装置、位置計測回路、入出力ポート、及び、駆動回路を備える。第1運搬機11の制御装置が備えるハードウェアの構成及び機能は、図3に示した第2運搬機21の制御装置219が備えるハードウェアの構成及び機能と同様である。本実施例では、第1運搬機11は、1つのCPUを備えるが、複数のCPUを備えても良い。また、第1運搬機11は、複数のRAM及びフラッシュメモリを備えても良い。
第1運搬機11のデータ通信回路が移動命令を受信すると、第1運搬機11のCPUは、フラッシュメモリから受渡場所の緯度、経度、及び、高度を表す情報を取得する。次に、第1運搬機11のCPUは、図4のステップS02からS04と同様の処理を実行することで、受渡場所まで移動する。
第2運搬機21のデータ通信回路219eが、第1運搬機への運搬手順の実行を命じる実行命令を受信すると、第2運搬機21のCPU219aは、不図示の第1運搬機運搬処理を実行する。
第1運搬機運搬処理を開始すると、第2運搬機21のCPU219aは、フラッシュメモリ219dから、受渡場所の緯度、経度、及び、高度を表す情報を取得する。次に、CPU219aは、図4のステップS02からS04と同様の処理を実行することで、物品を受渡場所まで運搬する。その後、CPU219aは、第1運搬機への運搬手順の手順IDを含み、かつ、当該手順が完了したことを告げる完了報告を、情報処理装置100を宛先としてデータ通信回路219eへ出力してから、第1運搬機運搬処理の実行を終了する。
このように、本実施例では、第2運搬機21が第1運搬機への運搬手順の全てを行うため、当該手順には、人間が介在していない。このため、情報処理装置100は、第1運搬機への運搬手順が完了したことを告げる完了報告を受信しても第2時刻を更新しない。その後、情報処理装置100は、第2運搬機21から第1運搬機11へ物品を受け渡す受渡手順の実行を命じる実行命令を第2運搬機21へ送信する。
第2運搬機21のデータ通信回路219eが当該実行命令を受信すると、CPU219aは、当該実行命令に従って受渡手順を行うため、図10に示すような受渡処理を実行する。
受渡処理の実行を開始すると、第2運搬機21のCPU219aは、第2運搬機21が備える格納庫214の扉215aを解錠させる制御信号を駆動回路219kに出力する(ステップS51)。
次に、第2運搬機21のCPU219aは、第2運搬機21が備える格納庫214の扉215aと、第1運搬機11が備える格納庫の扉と、を開けさせる制御信号をロボットアーム218へ出力する。その後、第2運搬機21のCPU219aは、図7のステップS23と同様の処理を実行することで、第2運搬機21の格納庫214に格納された物品を取り出させる制御信号をロボットアーム218へ出力する(ステップS52)。
その後、図7のステップS24と同様の処理を実行することで、第2運搬機21から取り出された物品を、第1運搬機11の格納庫へ格納させる制御信号をロボットアーム218へ出力する(ステップS53)。ロボットアーム218は、当該制御信号に従って、物品を第1運搬機11の格納庫に格納させる。
次に、第2運搬機21のCPU219aは、ロボットアーム218に開けさせた第2運搬機21の扉225aと、第1運搬機11の扉と、を閉めさせる制御信号をロボットアーム218へ出力する。
その後、第2運搬機21のCPU219aは、受渡手順の手順IDを含み、かつ、当該手順が完了したことを告げる完了報告を、情報処理装置100を宛先としてデータ通信回路219eへ出力した後に(ステップS25)、受渡処理の実行を終了する。
このように、本実施例では、第2運搬機21が受渡手順の全てを行うため、当該手順には、人間が介在していない。このため、情報処理装置100は、受渡手順が完了したことを告げる完了報告を受信すると、第2時刻を第1時刻として管理する。
次に、情報処理装置100は、第1運搬機11の格納庫の施錠を命じる施錠命令を第1運搬機11へ送信する。第1運搬機11のデータ通信回路が施錠命令を受信すると、第1運搬機11のCPUは、第1運搬機11の格納庫を施錠させる制御信号を駆動回路に出力する。
その後、情報処理装置100は、販売された物品の宛先の住所を表す情報を含み、かつ、ロッカー装置への運搬手順の実行を命じる実行命令を第1運搬機11へ送信する。
第1運搬機11のデータ通信回路が、当該実行命令を受信すると、第1運搬機11のCPUは、不図示のロッカー装置運搬処理を実行する。
ロッカー装置運搬処理を開始すると、第1運搬機11のCPUは、データ通信回路から実行命令を取得し、取得された実行命令から宛先の住所を表す情報を取得する。次に、第1運搬機11のCPUは、宛先の住所を表す情報と予め対応付けられてフラッシュメモリに予め記憶されている緯度、経度、及び、高度を表す情報を取得する。
次に、第1運搬機11のCPUは、取得された情報を用いて、図4のステップS02からS04と同様の処理を実行することで、物品の宛先まで物品を運搬する。その後、第1運搬機11のCPUは、ロッカー装置への運搬手順の手順IDを含み、かつ、当該手順が完了したことを告げる完了報告を、情報処理装置100を宛先としてデータ通信回路219eへ出力してから、ロッカー装置運搬処理の実行を終了する。
このように、本実施例では、第1運搬機11がロッカー装置への運搬手順の全てを行うため、当該手順には、人間が介在していない。このため、情報処理装置100は、ロッカー装置への運搬手順が完了したことを告げる完了報告を受信しても第1時刻を更新しない。
ロッカー装置12は、受取人が居住するマンションのエントランスに設置されている宅配ボックスである。ロッカー装置12は、不図示の複数の格納ボックスと、複数の格納ボックスそれぞれの施錠及び解錠を制御する制御装置と、を備える。ロッカー装置12が備える複数の格納ボックス及び制御装置の構成及び機能は、保管庫22が備える複数の格納ボックス225及び制御装置229の構成及び機能と同様である。
ロッカー装置12が備える複数の格納ボックスそれぞれは、不図示の箱体、扉、扉枠、デッドボルト、及び、ストライクを備える。ロッカー装置12が備える箱体、扉、扉枠、デッドボルト、及び、ストライクの構成及び機能は、保管庫22が備える複数の格納ボックス225それぞれが有する不図示の箱体、扉、扉枠、デッドボルト、及び、ストライクの構成及び機能と同様である。
ロッカー装置12が備える制御装置は、ハードウェアである不図示のCPU、RAM、ROM、フラッシュメモリ、データ通信回路、ビデオカード、表示装置、入力装置、入出力ポート、及び、駆動回路を備える。ロッカー装置12の制御装置が備えるこれらのハードウェアの構成及び機能は、保管庫22の制御装置229が備えるハードウェアの構成及び機能と同様である。本実施例では、ロッカー装置12は、1つのCPUを備えるが、複数のCPUを備えても良い。また、ロッカー装置12は、複数のRAM及びフラッシュメモリを備えても良い。
ロッカー装置12へ物品を運搬した第1運搬機11から、ロッカー装置への運搬手順が完了したことを告げる完了報告を受信すると、情報処理装置100は、ロッカー装置への格納手順の実行を命じる実行命令を第1運搬機11へ送信する。
第1運搬機11のデータ通信回路が当該実行命令を受信すると、第1運搬機11のCPUは、当該実行命令に従ってロッカー装置への格納手順を行うため、不図示のロッカー装置格納処理を実行する。
ロッカー装置格納処理の実行を開始すると、第1運搬機11のCPUは、図7のステップS21からS24と同様の処理を実行する。これにより、第1運搬機11は、ロボットアームを用いて、第1運搬機11の格納庫から物品を取り出し、取り出された物品をロッカー装置12が備える複数の格納ボックスの1つに格納させることで、第1運搬機11からロッカー装置12へ当該物品を移動させる。
その後、第1運搬機11のCPUは、物品を格納させたロッカー装置12の格納ボックスを識別するボックスIDと、ロッカー装置への格納手順の手順IDと、を含み、かつ、当該手順が完了したことを告げる完了報告を生成する。次に、第1運搬機11のCPUは、生成された完了報告を、情報処理装置100を宛先としてデータ通信回路219eへ出力する。第1運搬機11のCPUは、データ通信回路が完了報告を情報処理装置100へ送信してから、ロッカー装置格納処理の実行を終了する。その後、第1運搬機11のCPUは、移動経路を逆行するための制御信号を出力することで、引受場所へ帰還する。
このように、本実施例では、第1運搬機11がロッカー装置への格納手順の全てを行うため、当該手順には、人間が介在していない。このため、情報処理装置100は、ロッカー装置への格納手順が完了したことを告げる完了報告を受信しても第1時刻を更新しない。
次に、情報処理装置100は、第1時刻よりも目標経過時間だけ遅い時刻を、受取の開始が推奨される推奨受取開始時刻として算出する。その後、情報処理装置100は、第1時刻と、推奨受取開始時刻と、ボックスIDと、パスワードと、を知らせる通知を受取人の端末装置19へ送信することで、通知手順を実行する。
本実施例では、目標経過時間は、予め定められたウィルス又は菌が人間から排出されて物品に付着してから、当該予め定められたウィルス又は菌の感染力の大きさが予め定められた大きさ以下となるまでの時間に予め設定されている。本実施例において、物品に付着したウィルス又は菌の感染力とは、当該ウィルス又は当該菌が感染を達成する能力をいい、ウィルス又は菌が感染を達成する能力は、当該ウィルス又は当該菌に物理的に触れた人間が当該ウィルス又は当該菌に感染する感染確率で表されるが、これらに限定される訳では無い。また、本実施例において、ウィルス又は菌に物理的に触れた人間が当該ウィルス又は当該菌に感染するとは、当該ウィルス又は当該菌が当該人間の体内又は表面に寄生して増殖することをいうが、これに限定される訳では無い。
端末装置19のデータ通信回路219eが通知を受信すると、CPU219aは、データ通信回路219eから通知を取得し、取得された通知を表示装置219gに表示させる。当該表示を視認した受取人は、推奨受取開始時刻以降に、ロッカー装置12へ到着するように移動し、ロッカー装置12が備える入力装置に対してボックスIDとパスワードとを入力させる操作をする。
ロッカー装置12の入力装置が当該操作に応じた信号を出力すると、ロッカー装置12のCPUは、当該信号に基づいてボックスIDとパスワードを表す情報とを取得する。次に、ロッカー装置12のCPUは、取得されたボックスIDとパスワードを表す情報とを含み、当該ボックスIDで識別される格納ボックスの解錠の許否を問う問合せを生成する。その後、ロッカー装置12のCPUは、生成された問合せを、情報処理装置100を宛先としてロッカー装置12のデータ通信回路に出力する。
情報処理装置100は、問合せを受信すると、当該問合せに含まれるボックスIDとパスワードとの組み合わせが、端末装置19に送信したボックスIDとパスワードとの組み合わせと一致するか否かを判別する。情報処理装置100は、これらの組み合わせが一致すると判別すると、解錠を許可するという回答を返信し、これらの組み合わせが一致しないと、解錠を許可しないという回答を返信する。
ロッカー装置12のデータ通信回路が回答を受信すると、ロッカー装置12のCPUは、受信された回答をデータ通信回路から取得する。次に、CPUは、取得された回答が解錠を許可しないという回答であると、ボックスID及びパスワードの少なくとも1つが誤っていることを知らせるメッセージを表示装置に表示させる。当該表示を視認した受取人は、ボックスIDとパスワードとを入力させる操作を再度行う。
これに対して、取得された回答が解錠を許可するという回答であると、ロッカー装置12のCPUは、取得されたボックスIDで識別される格納ボックスを解錠させる制御信号を駆動回路に出力する。受取人は、解錠された格納ボックスの扉を開けて、購入した物品を受け取る。
情報処理装置100は、サーバ機であり、物品の販売を行う販売業者の倉庫又は営業所に設置されている。情報処理装置100は、1番目から9番目の手順を実行させる制御を、第1物流機構10及び第2物流機構20に行う。
情報処理装置100は、図11に示すようなCPU101、RAM102、ROM103a、ハードディスク103b、第1データ通信回路104a、第2データ通信回路104b、ビデオカード105a、表示装置105b、及び、入力装置105cを備えている。情報処理装置100が備えるCPU101、RAM102、ROM103a、ビデオカード105a、表示装置105b、及び、入力装置105cの構成及び機能は、図3に示した第2運搬機21のCPU219a、RAM219b、ROM219c、ビデオカード219f、表示装置219g、及び、入力装置219hの構成及び機能と同様である。
情報処理装置100のハードディスク103bは、プログラムの実行に用いられる各種のデータやデータが保存されたテーブルを記憶している。情報処理装置100は、ハードディスク103bの代わりに、フラッシュメモリを備えても良い。
情報処理装置100の第1データ通信回路104aは、例えば、NICであり、LTE(Long Term Evolution)及び5G(5th Generation)といった通信規格に従って、インターネットINに接続された不図示の基地局と電波を用いたデータ通信を行う。このようにして、情報処理装置100の第1データ通信回路104aは、インターネットINに接続された第1物流機構10の第1運搬機11及びロッカー装置12、並びに、端末装置19とデータ通信を行う。
情報処理装置100の第2データ通信回路104bは、例えば、NICであり、TCP/IPといった通信規格に従って、ローカルエリアネットワークLNに接続された不図示のアクセスポイントと電波を用いたデータ通信を行う。このようにして、情報処理装置100の第2データ通信回路104bは、ローカルエリアネットワークLNに接続された第2物流機構20の第2運搬機21及び保管庫22とデータ通信を行う。
情報処理装置100の第1データ通信回路104aが、運搬業者が営業所へ到着したことを知らせる通知を受信すると、情報処理装置100のCPU101は、販売される前の物品に対して行われる前段の手順を第2物流機構20に実行させる制御を行う、図12に示すような前段制御処理を実行する。
これにより、情報処理装置100のCPU101は、配送手順を実行させる制御を、第1物流機構10及び第2物流機構20に行う、図13に示すような制御部110として機能する。また、CPU101は、第1物流機構10又は第2物流機構20によって実行された手順を識別する手順IDを取得する取得部120として機能する。
さらに、情報処理装置100のCPU101は、受取人が物品を受け取る受取時刻よりも前の時刻であり、かつ、物品の配送手順が行われた当該物品に人間が接触した最後の時刻である第1時刻を管理する管理部130として機能する。管理部130は、第2物流機構20から第1物流機構10に当該物品が受け渡される受渡時刻よりも前の時刻であり、かつ、人間が当該物品に接触した最後の時刻である第2時刻をさらに管理する。
本実施例において、第1時刻及び第2時刻を含む時刻の管理は、例えば、揮発性メモリである情報処理装置100のRAM102、又は、不揮発性メモリである情報処理装置100のハードディスク103bに、時刻を表す情報を保存すること、及び、保存された時刻を表す情報を読み出すことを含む。
情報処理装置100のハードディスク103bは、前段制御処理の実行に用いられるデータが保存された各種のテーブルを予め記憶する情報記憶部190として機能する。
情報処理装置100の情報記憶部190は、配送手順に関する情報が予め保存された、図14に示すような手順テーブルを予め記憶している。手順テーブルには、複数のレコードが予め保存されており、手順テーブルの各レコードには、手順を識別する手順IDと、当該手順の名称を表す情報と、当該手順に人間が介在するか否かを表す介在フラグと、が対応付けられて予め保存されている。
本実施例では、手順テーブルの1番目のレコードには、運搬業者から物品を引き受ける引受手順に関する情報が保存されている。このため、1番目のレコードには、引受手順を識別する手順ID「P1」と、名称「引受手順」を表す情報と、当該引受手順に人間が介在することを表す値が「TRUE」のフラグと、が予め対応付けられて保存されている。本実施例において、引受手順に人間が介在するのは、運搬業者の従業員が手で物品を第2運搬機21に格納する必要があるからである。
また、手順テーブルの2番目のレコードには、保管庫への運搬手順の手順ID「P2」及び名称を表す情報と、保管庫への運搬手順に人間が介在しないことを表す値が「FALSE」のフラグと、が予め対応付けられて保存されている。本実施例において、保管庫への運搬手順に人間が介在しないのは、物品を運搬する第2運搬機21は、無人で自律的に地上を走行して保管庫22へ移動するためである。
また、手順テーブルの3番目のレコードには、保管庫への格納手順を識別する手順ID「P3」及び名称を表す情報と、保管庫への格納手順に人間が介在しないことを表す値が「FALSE」のフラグと、が予め対応付けられて保存されている。本実施例において、保管庫への格納手順に人間が介在しないのは、第2運搬機21は、ロボットアーム218を用いて物品を保管庫22に格納させるためである。
さらに、手順テーブルの4番目のレコードには、販売された物品を保管庫22から取り出す取出手順の手順ID「P4」及び名称を表す情報と、取出手順に人間が介在しないことを表す値が「FALSE」のフラグと、が予め対応付けられて保存されている。本実施例において、取出手順に人間が介在しないのは、第2運搬機21がロボットアーム218を用いて物品を保管庫22から取り出すからである。
また、手順テーブルの5番目のレコードには、第1運搬機への運搬手順の手順ID「P5」及び名称を表す情報と、第1運搬機への運搬手順に人間が介在しないことを表す値が「FALSE」のフラグと、が予め対応付けられて保存されている。
またさらに、手順テーブルの6番目のレコードには、取り出された物品を、第2物流機構20から第1物流機構10へ受け渡す受渡手順の手順ID「P6」及び名称を表す情報と、受渡手順に人間が介在しないことを表す値が「FALSE」のフラグと、が予め対応付けられて保存されている。本実施例において、受渡手順に人間が介在しないのは、第2物流機構20の第2運搬機21がロボットアーム218を用いて、第1運搬機11の第1運搬機11へ物品を受け渡すからである。
また、手順テーブルの7番目のレコードには、ロッカー装置への運搬手順の手順ID「P7」及び名称を表す情報と、ロッカー装置への運搬手順に人間が介在しないことを表す値が「FALSE」のフラグと、が予め対応付けられて保存されている。本実施例において、ロッカー装置への運搬手順に人間が介在しないのは、物品を運搬する第1運搬機11は、無人で自律的に地上を走行してロッカー装置12へ移動するためである。
さらに、手順テーブルの8番目のレコードには、ロッカー装置への格納手順の手順ID「P8」及び名称を表す情報と、ロッカー装置への格納手順に人間が介在しないことを表す値が「FALSE」のフラグと、が予め対応付けられて保存されている。本実施例において、ロッカー装置への格納手順に人間が介在しないのは、第1運搬機11は、不図示のロボットアームを用いて物品をロッカー装置12に格納させるからである。
またさらに、手順テーブルの9番目のレコードには、通知手順の手順ID「P9」及び名称を表す情報と、通知手順に人間が介在しないことを表す値が「FALSE」のフラグと、が予め対応付けられて保存されている。
情報処理装置100の情報記憶部190は、第2時刻に関する情報が保存される、図15に示すような第2時刻テーブルを予め記憶している。第2時刻テーブルには、物品の物品IDと、当該物品の第2時刻を表す情報と、が対応付けられて1又は複数保存される。
また、情報処理装置100の情報記憶部190は、保管庫22に格納される物品に関する情報が保存される、図16に示すような保管庫テーブルを予め記憶している。保管庫テーブルには、保管庫22の格納ボックス225を識別するボックスIDと、当該格納ボックス225に格納された物品の物品IDと、が対応付けられて保存される。
図12の前段制御処理の実行が開始されると、情報処理装置100の制御部110は、運搬業者から物品を引き受ける引受手順の実行を命じる実行命令を、第2運搬機21を宛先として第2データ通信回路104bへ出力する(ステップS61)。情報処理装置100の第2データ通信回路104bは、ローカルエリアネットワークLNを介して接続された第2運搬機21へ実行命令を送信する。
その後、情報処理装置100の第2データ通信回路104bが、実行命令に従って引受手順を実行した第2運搬機21から、当該手順が完了したことを告げる完了報告を受信すると、第2時刻の設定を行う、図17に示すような第2時刻設定処理が実行される(ステップS62)。
第2時刻設定処理の実行が開始されると、情報処理装置100の取得部120は、第2データ通信回路104bから完了報告を取得し、引受手順の手順ID「P1」と、引受手順の実行により引き受けられた物品の物品IDと、を完了報告から取得する(ステップS71)。次に、取得部120は、手順ID「P1」が取得された取得時刻を、物品の引受が行われた時刻として取得する。このため、取得部120は、例えば、OS(Operating System)が管理するシステム時刻を、手順ID「P1」の取得時刻として取得する(ステップS72)。このようにして取得時刻が取得されるのは、本実施例において、物品の引受が行われた時刻は、引受手順が完了した時刻を意味するからである。また、本実施例において、引受手順の実行が完了する時刻から、情報処理装置100が引受手順の完了報告を受信し、完了報告から引受手順の手順ID「P1」を取得する取得時刻までの時間長は、例えば、「1」分といった予め定められた長さ以下であるため、物品の引受が行われた時刻と、引受手順の手順ID「P1」が取得された取得時刻と、は、同視できるからである。
次に、情報処理装置100の取得部120は、図14の手順テーブルから、引受手順の手順ID「P1」に対応付けられた介在フラグを取得し(ステップS73)、管理部130は、取得された介在フラグの値が、引受手順に人が介在することを表す値「TRUE」であると判別する(ステップS74;Yes)。
その後、情報処理装置100の管理部130は、第2時刻を取得時刻で初期化する(ステップS75)。その後、管理部130は、図15の第2時刻テーブルに、ステップS71で取得された物品IDと、取得時刻で初期化された第2時刻と、を対応付けて保存することで、物品の引受が行われた時刻として取得された取得時刻を第2時刻として管理する。その後、管理部130は、第2時刻設定処理の実行を終了する。
図12のステップS62で、第2時刻設定処理が実行された後、情報処理装置100の制御部110は、保管庫への運搬手順の実行を命じる実行命令を、第2運搬機21を宛先として第2データ通信回路104bへ出力する(ステップS63)。
その後、情報処理装置100は、完了報告を受信すると、第2時刻の更新を行う、図18に示すような第2時刻更新処理を、図17のステップS71で取得された物品IDを引数として実行する(ステップS64)。
第2時刻更新処理の実行が開始されると、情報処理装置100の取得部120は、保管庫への運搬手順が行われた物品の物品IDを引数から取得する。また、取得部120は、第2運搬機21から送信された完了報告を第2データ通信回路104bから取得し、保管庫への運搬手順の手順ID「P2」を完了報告から取得する(ステップS81)。次に、取得部120は、手順ID「P2」の取得時刻を、保管庫22への運搬が行われた時刻として取得する。このため、取得部120は、例えば、OSが管理するシステム時刻を、手順ID「P2」の取得時刻として取得する(ステップS82)。このようにして取得時刻が取得されるのは、本実施例において、保管庫22への運搬が行われた時刻は、保管庫への運搬手順が完了した時刻を意味し、かつ、保管庫への運搬手順が完了する時刻と、完了報告から当該手順の手順ID「P2」が取得される取得時刻と、は、同視できるからである。
次に、情報処理装置100の取得部120は、図14の手順テーブルから、保管庫への運搬手順の手順ID「P2」に対応付けられた介在フラグを取得する(ステップS83)。その後、管理部130は、取得された介在フラグの値が、保管庫への運搬手順に人が介在しないことを表す値「FALSE」であると判別し(ステップS84;No)、第2時刻を更新することなく、第2時刻更新処理の実行を終了する。
図12のステップS64で、第2時刻更新処理が実行された後、情報処理装置100の制御部110は、保管庫への格納手順の実行を命じる実行命令を、第2運搬機21を宛先として第2データ通信回路104bへ出力する(ステップS65)。
その後、情報処理装置100は、完了報告を受信すると、第2時刻更新処理を実行する(ステップS66)。これにより、情報処理装置100の管理部130は、保管庫への格納手順の手順ID「P3」に対応付けられた介在フラグの値が、人が介在しないことを表す値「FALSE」であると判別し、第2時刻を更新せずに維持する。
次に、情報処理装置100の取得部120は、第2データ通信回路104bによって受信された完了報告から、保管庫への格納手順によって物品が格納された保管庫22の格納ボックス225を識別するボックスIDを取得する(ステップS67)。次に、管理部130は、図16の保管庫テーブルに、取得されたボックスIDと、当該ボックスIDで識別される格納ボックス225に格納された物品の物品IDと、を対応付けて保存する(ステップS68)。
その後、情報処理装置100の制御部110は、ステップS67で取得されたボックスIDを含み、当該ボックスIDで識別される格納ボックス225の施錠を命じる施錠命令を、保管庫22を宛先として第2データ通信回路104bへ出力してから(ステップS69)、前段制御処理の実行を終了する。
情報処理装置100の第1データ通信回路104aが、品番と宛先の住所を表す情報とを含む販売要求を端末装置19から受信すると、情報処理装置100のCPU101は、後段の手順を第1物流機構10及び第2物流機構20に実行させる制御を行う、図19に示すような後段制御処理を実行する。
情報処理装置100の情報記憶部190は、販売された物品に関する情報が保存される、図20に示すような物品テーブルを予め記憶している。物品テーブルには、販売された物品の物品IDと、当該物品の宛先を表す情報と、第1時刻と、当該物品が格納されたロッカー装置12の格納ボックスを識別するボックスIDと、当該物品の受取人の認証に用いられるパスワードを表す情報と、が対応付けられて保存される。
図19の後段制御処理の実行が開始されると、情報処理装置100の取得部120は、第1データ通信回路104aから販売要求を取得し、販売が求められた物品の品番と宛先を表す情報とを取得する(ステップS91)。次に、取得部120は、図15の第2時刻テーブルにおいて、取得された品番と対応付けられた1又は複数の第2時刻の内で、最も前の第2時刻を取得する。その後、取得部120は、取得された品番と、取得された最も前の第2時刻と、に対応付けられた個別識別番号を取得する(ステップS92)。
次に、情報処理装置100の制御部110は、取得された物品番号と個別識別番号とを含む物品IDを生成し、生成された物品IDによって識別される物品を、販売要求に応じて販売する物品として選択する(ステップS93)。販売要求に含まれる品番と、最も前の第2時刻に対応付けられた個別識別番号と、で識別される物品が販売する物品として選択されるのは、人間に触れられてから最も時間が経過している物品を販売するためである。
次に、情報処理装置100の管理部130は、図20の物品テーブルに、生成された物品IDと、当該物品IDで識別される物品の宛先を表す情報と、を保存する(ステップS94)。
その後、情報処理装置100の取得部120は、図16の保管庫テーブルから、販売された物品の物品IDと対応付けられたボックスIDを取得する。その後、制御部110は、取得されたボックスIDを含み、かつ、当該ボックスIDで識別される保管庫22の格納ボックス225に格納された物品を取り出す取出手順の実行を命じる実行命令を生成する。次に、制御部110は、生成された実行命令を、第2運搬機21を宛先として第2データ通信回路104bへ出力する(ステップS95)。
物品を取り出すために第2運搬機21が保管庫22に到着したことを知らせる到着報告を、情報処理装置100の第2データ通信回路104bが受信すると(ステップS96)、情報処理装置100の制御部110は、販売された物品を格納した格納ボックス225の解錠を命じる解錠命令を生成する。次に、制御部110は、販売された物品を格納した格納ボックス225のボックスIDを、生成された解錠命令に追加してから、解錠命令を、保管庫22を宛先として第2データ通信回路104bへ出力する(ステップS97)。
その後、情報処理装置100は、取出手順の完了を告げる完了報告を受信すると、図18に示した第2時刻更新処理を実行する(ステップS98)。これにより、情報処理装置100の管理部130は、取出手順の手順ID「P4」に対応付けられた介在フラグの値が、人が介在しないことを表す値「FALSE」であると判別し、第2時刻を更新せずに維持する。
次に、情報処理装置100の制御部110は、第1運搬機への運搬手順の実行を命じる実行命令を、第2運搬機21を宛先として第2データ通信回路104bへ出力する(ステップS99)。その後、情報処理装置100は、完了報告を受信すると、図18に示した第2時刻更新処理を実行する(ステップS100)。このとき、管理部130は、第1運搬機への運搬手順の手順ID「P5」に対応付けられた介在フラグの値が「FALSE」であると判別し、第2時刻を更新しない。
次に、情報処理装置100の制御部110は、第2運搬機21から第1運搬機11へ物品を受け渡す受渡手順の実行を命じる実行命令を、第2運搬機21を宛先として第2データ通信回路104bへ出力する(ステップS101)。
その後、情報処理装置100は、完了報告を受信すると、第1時刻の設定を行う、図21に示すような第1時刻設定処理を、図19のステップS93で生成された物品IDを引数として実行する(ステップS102)。
第1時刻設定処理の実行が開始されると、情報処理装置100の取得部120は、受渡手順が行われた物品の物品IDを引数から取得する。また、取得部120は、第2運搬機21から送信された完了報告を第2データ通信回路104bから取得し、受渡手順の手順ID「P6」を完了報告から取得する(ステップS111)。次に、取得部120は、手順ID「P6」が取得された取得時刻を、物品の受渡が行われた時刻として取得する(ステップS112)。
次に、情報処理装置100の取得部120は、図14の手順テーブルから、受渡手順の手順ID「P6」に対応付けられた介在フラグを取得する(ステップS113)。その後、管理部130は、取得された介在フラグの値が「FALSE」であると判別し(ステップS114;No)、受渡が行われるより前に人間が最後に物品に接触した時刻である第2時刻で第1時刻を初期化する(ステップS115)。その後、管理部130は、図20の物品テーブルから、取得された物品IDが保存されたレコードを検索し、検索されたレコードに、第2時刻で初期化された第1時刻を当該物品IDと対応付けて保存することで、第2時刻を第1時刻として管理する。その後、管理部130は、第1時刻設定処理の実行を終了する。
その後、情報処理装置100の制御部110は、第1運搬機11が備える格納庫の施錠を命じる施錠命令を、第1運搬機11を宛先として第1データ通信回路104aへ出力する(ステップS103)。
次に、情報処理装置100の制御部110は、ロッカー装置への運搬手順の実行を命じる実行命令を、第1運搬機11を宛先として第1データ通信回路104aへ出力する(ステップS104)。
その後、情報処理装置100は、完了報告を受信すると、第1時刻の更新を行う、図22に示すような第1時刻更新処理を、物品IDを引数として実行する(ステップS105)。
第1時刻更新処理の実行が開始されると、情報処理装置100の取得部120は、ロッカー装置への運搬手順が行われた物品の物品IDを引数から取得する。また、取得部120は、第1運搬機11から送信された完了報告を第1データ通信回路104aから取得し、ロッカー装置への運搬手順の手順ID「P7」を完了報告から取得する(ステップS121)。次に、取得部120は、手順ID「P7」が取得された取得時刻を、ロッカー装置12への運搬が行われた時刻として取得する(ステップS122)。
次に、情報処理装置100の取得部120は、図14の手順テーブルから、ロッカー装置への運搬手順の手順ID「P7」に対応付けられた介在フラグを取得する(ステップS123)。その後、管理部130は、取得された介在フラグの値が「FALSE」であると判別し(ステップS124;No)、第1時刻を更新することなく、第1時刻更新処理の実行を終了する。
図19のステップS105で、第1時刻更新処理が実行された後、情報処理装置100の制御部110は、ロッカー装置への格納手順の実行を命じる実行命令を、第1運搬機11を宛先として第1データ通信回路104aへ出力する(ステップS106)。
その後、情報処理装置100は、完了報告を受信すると、第1時刻更新処理を実行する(ステップS107)。これにより、情報処理装置100の取得部120は、第1運搬機11から送信された完了報告からロッカー装置への格納手順の手順ID「P8」を取得する。また、管理部130は、手順ID「P8」に対応付けられた介在フラグの値が「FALSE」であると判別し、第1時刻を更新せずに維持する。
その後、情報処理装置100の取得部120は、第1運搬機11から送信された完了報告から、物品が格納されたロッカー装置12の格納ボックスを識別するボックスIDを取得する。次に、制御部110は、当該物品の受取人の認証に用いられるパスワードを、例えば、ソフトウェア乱数又は予め定められた規則に基づいて生成する。その後、管理部130は、図20の物品テーブルから、ステップS93で生成された物品IDが保存されたレコードを検索し、検索されたレコードに、取得されたボックスIDと、生成されたパスワードを表す情報と、を当該物品IDに対応付けて保存する(ステップS108)。
次に、情報処理装置100の制御部110は、取得されたボックスIDを含み、当該ボックスIDで識別される格納ボックスの施錠を命じる施錠命令を、ロッカー装置12を宛先として第1データ通信回路104aへ出力してから(ステップS109)、後段制御処理の実行を終了する。
情報処理装置100のCPU101は、後段制御処理の実行を終了すると、物品が宛先のロッカー装置12に配送されたことを知らせる通知を行う通知手順を実行するため、図23に示すような通知処理を、物品IDを引数として実行する。これにより、情報処理装置100のCPU101は、図13に示すような通知部140として機能する。
通知処理の実行が開始されると、情報処理装置100の取得部120は、ロッカー装置12に格納された物品の物品IDを引数から取得する。次に、取得部120は、図20の物品テーブルから、取得された物品IDと対応付けられた第1時刻を取得する(ステップS131)。
その後、情報処理装置100の取得部120は、情報記憶部190が予め記憶する目標経過時間を表す情報を取得する(ステップS132)。次に、通知部140は、取得された第1時刻に対して、取得された情報で表される目標経過時間を加算した時刻を、推奨受取開始時刻として算出する(ステップS133)。取得部120は、情報記憶部190が予め記憶する余裕時間を表す情報をさらに取得し、通知部140は、第1時刻に対して目標経過時間と余裕時間とを加算した値を、推奨受取開始時刻として算出しても良い。
その後、情報処理装置100の取得部120は、図20の物品テーブルから、取得された物品IDと対応付けられたボックスID及びパスワードを表す情報を取得する。次に、通知部140は、ボックスID及びパスワードと、取得された第1時刻と、算出された推奨受取開始時刻と、を含む通知を生成する。生成される通知は、物品が宛先のロッカー装置12の当該ボックスIDで識別される格納ボックスに配送されたこと、当該物品の受け取りに当該パスワードが必要であること、第1時刻より後に人間が物品に接触していないこと、及び、当該物品の受取の開始が推奨される推奨受取開始時刻を知らせるメッセージを含んでいる。その後、通知部140は、生成された通知を、受取人が携帯する端末装置19を宛先として第1データ通信回路104aへ出力した後に(ステップS134)、通知処理の実行を終了する。
通知を視認した受取人によって操作されたロッカー装置12から、情報処理装置100の第1データ通信回路104aが、ロッカー装置12の解錠の許否を問う問合せを受信すると、情報処理装置100のCPU101は、不図示の解錠許否処理を実行する。
解錠許否処理の実行を開始すると、情報処理装置100の取得部120は、第1データ通信回路104aから問合せを取得し、取得された問合せからボックスIDとパスワードを表す情報を取得する。その後、取得部120は、図20の物品テーブルから、取得されたボックスIDに対応付けられたパスワードを表す情報を取得する。次に、制御部110は、問合せから取得された情報で表されるパスワードと、物品テーブルから取得された情報で表されるパスワードと、が一致すると判別すると、解錠を許可するという回答を、ロッカー装置12を宛先として第1データ通信回路104aへ出力する。これに対して、制御部110は、これらのパスワードが一致しないと判別すると、解錠を許可せず拒否するという回答を、ロッカー装置12を宛先として第1データ通信回路104aへ出力する。その後、制御部110は、解錠許否処理の実行を終了する。
これらの構成によれば、物流システム1は、物品の宛先へ当該物品を運搬する第1運搬機11を含む第1物流機構10と、第1運搬機11によって運搬される物品が受け取られる受取時刻より前の時刻であり、かつ、当該物品に人間が接触した最後の時刻である第1時刻を管理する管理部130と、を備える。このため、物流システム1は、受取人による物品の受取前において人間が当該物品に触れた最後の時刻である第1時刻を管理できる。
またこれらの構成によれば、物流システム1は、第1物流機構10と異なる機構であり、かつ、物品を運搬又は保管する第2物流機構20をさらに備える。また、情報処理装置100の管理部130は、第2物流機構20が第1物流機構10に物品を受け渡す受渡時刻よりも前の時刻であり、かつ、第2物流機構20が運搬又は保管する物品に人間が接触した最後の時刻である第2時刻をさらに管理する。このため、物流システム1は、第1物流機構10に物品が受け渡される前において人間が当該物品に触れた最後の時刻である第2時刻を管理できる。
これらの構成によれば、物流システム1の管理部130は、物品の第1運搬機11への受渡に人間が介在しなかった場合に、当該受渡が行われるより前に人間が最後に物品に接触した第2時刻を第1時刻として管理する。すなわち、管理部130は、第2物流機構20から第1物流機構10への物品の受渡に人間が介在しなかった場合、第2時刻を第1時刻として管理する。このため、物流システム1は、受取人による物品の受け取り前において人間が当該物品に触れた最後の時刻である第1時刻を、当該物品を運搬する第1運搬機11へ当該物品が受け渡されるよりも前において人間が当該物品に触れた最後の時刻である第2時刻に基づいて管理できる。
これらの構成によれば、第1物流機構10は、物品を格納するロッカー装置12をさらに備え、第1運搬機11は、物品を第1運搬機11からロッカー装置12へ移動させる。このため、物流システム1は、人を介在させずに物品を第1運搬機11からロッカー装置12へ移動させることができる。よって、物流システム1は、第1運搬機11からロッカー装置12への物品の移動に人が介在する場合と比べて、第1時刻をより前の時刻に維持できる。このため、第1時刻にウィルス又は菌が物品に付着したとしても、物流システム1は、ウィルス又は菌の感染力の大きさをより小さくして物品を宛先まで運搬させることができる。よって、物流システム1は、物品にウィルス又は菌が付着していたとしても、当該物品の受取人が当該ウィルス又は当該菌に感染することを抑制できる。
これらの構成によれば、物流システム1は、第1時刻に基づいて受取人へ通知を行う通知部140をさらに備える。通知部140が行う通知は、第1時刻より後に、人間が物品に接触していないことを知らせる。これらのため、通知に基づいて第1時刻から十分に時間が経過した後に受取人が物品を受け取れば、人間の接触により物品にウィルス又は菌が付着していたとしても、当該物品の受取人が当該ウィルス又は菌に感染することを抑制できる。
これらの構成によれば、目標経過時間は、予め定められたウィルス又は菌が人間の体外に排出されてから、当該ウィルス又は当該菌の感染力の大きさが予め定められた大きさ以下となるまでの時間である。また、情報処理装置100の通知部140は、第1時刻よりも目標経過時間だけ後の時刻、又は、当該時刻よりも後の時刻であり、かつ、物品の受取の開始が推奨される推奨受取開始時刻を知らせる通知を行う。このため、通知を視認した受取人が、推奨受取開始時刻よりも後の時刻に物品を受け取れば、人間の接触により物品にウィルス又は菌が付着していたとしても、当該物品の受取人が当該ウィルス又は菌に感染することを抑制できる。
<実施例1の変形例1>
実施例1では、運搬業者から物品を引き受ける引受手順には、人間が介在していると説明したが、これに限定される訳では無い。本変形例に係る引受手順には、人間が介在していない。
本変形例において、運搬業者は、第2運搬機21の構成及び機能と同様の構成及び機能を有し、かつ、無人地上車両である不図示の第3運搬機を備える不図示の第3物流機構を用いて物品を運搬する。第3物流機構は、第3運搬機から第2運搬機21が物品を引き受ける引受時刻よりも前の時刻であり、かつ、人間が当該物品に触れた最後の時刻である第3時刻を管理する不図示の情報処理装置をさらに備えている。第3物流機構の情報処理装置の構成及び機能は、情報処理装置100の構成及び機能と同様である。
運搬業者の第3運搬機が物品を格納して引受場所に到着すると、第2運搬機21は、第2運搬機21のロボットアーム218を用いて、第3運搬機に格納された物品を取り出した後に、第2運搬機21の格納庫214に格納することで、引受手順を実行する。
本変形例に係る手順テーブルの1番目のレコードには、引受手順を識別する手順ID「P1」及び名称を表す情報と、当該引受手順に人間が介在しないことを表す値が「FALSE」のフラグと、が予め対応付けられて保存されている。
本変形例に係る手順テーブルを用いて、情報処理装置100が、図12に示した前段制御処理の実行を開始すると、ステップS61の処理を実行する(ステップS61)。これにより、情報処理装置100は、引受手順の実行を命じる実行命令を、第2物流機構20の第2運搬機21へ送信する。
その後、情報処理装置100は、引受手順の実行の完了を告げる完了報告を第2運搬機21から受信すると、図17に示した第2時刻設定処理を実行する(ステップS62)。情報処理装置100は、第2時刻設定処理の実行を開始すると、ステップS71からS74の処理を実行する(ステップS71からS74)。これにより、情報処理装置100の取得部120は、引受手順の手順ID「P1」を取得し、管理部130は、本変形例に係る手順テーブルにおいて、引受手順の手順ID「P1」に対応付けられた介在フラグの値が、引受手順に人が介在しないことを表す値「FALSE」であると判別する(ステップS74;No)。
次に、情報処理装置100の管理部130は、第3時刻を表す情報の送信を求める送信要求を、第3物流機構の情報処理装置を宛先として第1データ通信回路104aに出力する(ステップS76)。
その後、情報処理装置100の第1データ通信回路104aが、第3物流機構の情報処理装置から第3時刻を表す情報を受信すると、情報処理装置100の取得部120は、第1データ通信回路104aから第3時刻を表す情報を取得する(ステップS77)。
その後、情報処理装置100の管理部130は、取得された情報で表される第3時刻で第2時刻を初期化する(ステップS78)。次に、管理部130は、図15の第2時刻テーブルに、ステップS71で取得された物品IDと、第3時刻で初期化された第2時刻と、を対応付けて保存することで、第3時刻を第2時刻として管理する。その後、管理部130は、第2時刻設定処理の実行を終了する。
図12のステップS62で第2時刻設定処理が実行された後に、ステップS63からS69の処理が実行されることで(ステップS63からS69)、保管庫への運搬手順及び保管庫への格納手順が実行される。本変形例では、これらの手順に人間が介在していないため、第2時刻が更新されずに維持される。その後、前段制御処理の実行が終了される。
その後、図19に示した後段制御処理が実行される。本変形例では、後段の手順に人間が介在していないため、第1時刻が第2時刻に設定された後に、第1時刻が更新されずに維持される。
<実施例1の変形例2>
実施例1では、保管庫への運搬手順には、人間が介在していないと説明したが、これに限定される訳では無い。本変形例に係る保管庫への運搬手順には、人間が介在している。
本変形例において、保管庫への運搬手順は、無人地上車両である第2運搬機21ではなく、販売業者の従業員が行う。従業員は、受取人が携帯する端末装置19の構成及び機能と同様の構成及び機能を有する不図示の端末装置を携帯している。
従業員の端末装置は、保管庫への運搬手順の実行を命じる実行命令を情報処理装置100から受信すると、当該手順の実行を命じるメッセージを表示する。従業員は、当該メッセージを視認すると、受取場所へ移動し、受取場所に停車している第2運搬機21の格納庫214から手を使って物品を取り出し、物品を手で持って保管庫22まで運搬する。
従業員は、保管庫22に到着すると、従業員の端末装置又は保管庫22の入力装置を操作する。従業員の端末装置又は保管庫22は、当該操作に従って、保管庫への運搬手順の手順ID「P2」を含み、かつ、当該手順が完了したことを告げる完了報告を情報処理装置100へ送信する。
本変形例に係る手順テーブルの2番目のレコードには、保管庫への運搬手順を識別する手順ID「P2」及び名称を表す情報と、保管庫への運搬手順に人間が介在することを表す値が「TRUE」のフラグと、が予め対応付けられて保存されている。
本変形例に係る手順テーブルを用いて、情報処理装置100が、図12に示した前段制御処理の実行を開始すると、ステップS61及びS62の処理を実行して(ステップS61及びS62)、第2時刻を設定する。次に、情報処理装置100の制御部110は、保管庫への運搬手順の実行を命じる実行命令を、従業員の端末装置を宛先として第1データ通信回路104aへ出力する(ステップS63)。
その後、情報処理装置100は、完了報告を端末装置又は保管庫22から受信すると、図18に示した第2時刻更新処理を実行する(ステップS64)。情報処理装置100は、第2時刻更新処理の実行を開始すると、ステップS81及びS82の処理を実行する(ステップS81及びS82)。これにより、情報処理装置100の取得部120は、保管庫への運搬手順の手順ID「P2」を取得し、当該手順ID「P2」の取得時刻を保管庫22への運搬が行われた時刻として取得する。このようにして取得時刻が取得されるのは、本実施例において、保管庫22への運搬が行われた時刻は、保管庫への運搬手順が完了した時刻を意味し、かつ、保管庫への運搬手順が完了する時刻と、完了報告から当該手順の手順ID「P2」が取得される取得時刻と、は、同視できるからである。
次に、情報処理装置100は、ステップS83の処理を実行する(ステップS83)。その後、情報処理装置100の管理部130は、本変形例に係る手順テーブルにおいて、保管庫への運搬手順の手順ID「P2」に対応付けられた介在フラグの値が、当該手順に人が介在することを表す値「TRUE」であると判別する(ステップS84;Yes)。
次に、情報処理装置100の管理部130は、図15の第2時刻テーブルにおいて、ステップS81で取得された物品IDと対応付けられた第2時刻を取得時刻で更新することで、保管庫22への運搬が行われた時刻として取得された取得時刻を第2時刻として管理する(ステップS85)。その後、管理部130は、第2時刻更新処理の実行を終了する。
情報処理装置100は、図12のステップS64で第2時刻更新処理を実行した後に、ステップS65からS69の処理を実行した後に(ステップS65からS69)、前段制御処理の実行を終了する。
本変形例では、保管庫への運搬手順の全体を、販売業者の従業員が行うと説明したが、これに限定される訳では無く、従業員は、保管庫への運搬手順の一部を行っても良い。この場合、引受場所から保管庫22までの移動ルートの途中まで第2運搬機21が物品を運搬した後に、従業員が第2運搬機21の格納庫214から手を使って物品を取り出し、手で物品を持って保管庫22まで運搬すれば良い。
本変形例では、保管庫への運搬手順に人間が介在していると説明したが、これに限定される訳では無い。保管庫への運搬手順に人間が介在していないが、保管庫への格納手順、保管庫22から物品を取り出す取出手順、及び、第1運搬機への運搬手順のいずれかに人間が介在していても良い。この場合、保管庫への格納手順、取出手順、及び、第1運搬機への運搬手順の全体又は一部を、販売業者の従業員が行えば良い。
<実施例1の変形例3>
実施例1では、第1運搬機11へ物品を受け渡す受渡手順には、人間が介在していないと説明したが、これに限定される訳では無い。本変形例に係る受渡手順には、人間が介在している。
本変形例において、受渡手順は、第2運搬機21ではなく、販売業者の従業員が行う。従業員は、実施例1の変形例2で説明した端末装置を携帯している。従業員の端末装置は、実施例1の変形例2と同様に、受渡手順の実行を命じる実行命令を受信すると、受渡手順の実行を命じるメッセージを表示する。従業員は、当該メッセージを視認すると、受渡場所へ移動し、受渡場所に停車している第2運搬機21の格納庫214から手を使って物品を取り出し、受渡場所に停車している第1運搬機11の格納庫に手を使って物品を格納させる。
従業員は、受渡手順を完了すると端末装置又は第1運搬機11の入力装置を操作する。従業員の端末装置又は第1運搬機11は、当該操作に従って、受渡手順の手順ID「P6」を含み、かつ、受渡手順が完了したことを告げる完了報告を情報処理装置100へ送信する。
本変形例に係る手順テーブルの6番目のレコードには、受渡手順を識別する手順ID「P6」及び名称を表す情報と、受渡手順に人間が介在することを表す値が「TRUE」のフラグと、が予め対応付けられて保存されている。
本変形例に係る手順テーブルを用いて、情報処理装置100は、図19に示した後段制御処理の実行を開始すると、ステップS91からS100の処理を実行する(ステップS91からS100)。その後、情報処理装置100の制御部110は、受渡手順の実行を命じる実行命令を、従業員の端末装置を宛先として第1データ通信回路104aへ出力する(ステップS101)。
その後、情報処理装置100は、完了報告を端末装置又は第1運搬機11から受信すると、図21に示した第1時刻設定処理を実行する(ステップS102)。情報処理装置100は、第1時刻設定処理の実行を開始すると、ステップS111及びS112の処理を実行する(ステップS111及びS112)。これにより、情報処理装置100の取得部120は、受渡手順の手順ID「P6」を取得し、当該手順ID「P6」の取得時刻を物品の受渡が行われた時刻として取得する。このようにして受渡時刻が取得されるのは、本実施例において、受渡が行われた時刻は、受渡手順が完了した時刻を意味し、かつ、受渡手順が完了する時刻と、完了報告から受渡手順の手順ID「P6」が取得される取得時刻と、は、同視できるからである。
次に、情報処理装置100は、ステップS113の処理を実行する(ステップS113)。その後、情報処理装置100の管理部130は、本変形例に係る手順テーブルにおいて、受渡手順の手順ID「P6」に対応付けられた介在フラグの値が、受渡手順に人が介在することを表す値「TRUE」であると判別する(ステップS114;Yes)。
次に、情報処理装置100の管理部130は、第1時刻を取得時刻で初期化する(ステップS116)。次に、管理部130は、図20の物品テーブルにおいて、ステップS111で取得された物品IDが保存されたレコードを検索し、検索されたレコードに、取得時刻で初期化された第1時刻を当該物品IDと対応付けて保存することで、受渡が行われた時刻として取得された取得時刻を第1時刻として管理する。その後、管理部130は、第1時刻設定処理の実行を終了する。
情報処理装置100は、図19のステップS102で第1時刻設定処理を実行した後に、ステップS103からS109の処理を実行する(ステップS103からS109)。その後、情報処理装置100は、後段制御処理の実行を終了する。
本変形例では、受渡手順の全体を、販売業者の従業員が行うと説明したが、これに限定される訳では無く、従業員は、受渡手順の一部を行っても良い。この場合、第2運搬機21がロボットアーム218を用いて第2運搬機21の格納庫214から取り出した物品を、従業員が手で受け取り、受け取った物品を第1運搬機11の格納庫へ手で格納させれば良い。また、この場合、従業員が手で第2運搬機21の格納庫214から取り出した物品を、第1運搬機11がロボットアームを用いて受け取り、受け取った物品を第1運搬機11の格納庫へ手で格納させても良い。
<実施例1の変形例4>
実施例1では、ロッカー装置への運搬手順には、人間が介在していないと説明したが、これに限定される訳では無い。本変形例に係るロッカー装置への運搬手順には、人間が介在している。
本変形例において、ロッカー装置への運搬手順は、無人地上車両である第1運搬機11ではなく、販売業者の従業員が行う。従業員は、ロッカー装置への運搬手順を完了すると、実施例1の変形例2で説明した端末装置又はロッカー装置12の入力装置を操作する。従業員の端末装置又はロッカー装置12は、当該操作に従って、ロッカー装置への運搬手順の手順ID「P7」を含み、かつ、当該手順が完了したことを告げる完了報告を情報処理装置100へ送信する。
本変形例に係る手順テーブルの7番目のレコードには、保管庫への運搬手順を識別する手順ID「P7」及び名称を表す情報と、値が「TRUE」のフラグと、が予め対応付けられて保存されている。
本変形例に係る手順テーブルを用いて、図19に示した後段制御処理の実行が開始されると、ステップS91からS103の処理が実行された後に(ステップS91からS103)、情報処理装置100の制御部110は、ロッカー装置への運搬手順の実行を命じる実行命令を、従業員の端末装置を宛先として第1データ通信回路104aへ出力する(ステップS104)。
その後、情報処理装置100は、携帯端末又はロッカー装置12から完了報告を受信すると、図22に示した第1時刻更新処理を実行する(ステップS105)。情報処理装置100は、第1時刻更新処理の実行を開始すると、ステップS121からS124の処理を実行する(ステップS121からS124)。これにより、情報処理装置100の取得部120は、ロッカー装置への運搬手順の手順ID「P7」を取得し、当該手順ID「P7」の取得時刻をロッカー装置12への運搬が行われた時刻として取得する。また、管理部130は、本変形例に係る手順テーブルにおいて、ロッカー装置への運搬手順の手順ID「P7」に対応付けられた介在フラグの値が「TRUE」であると判別する(ステップS124;Yes)。
次に、情報処理装置100の管理部130は、図20の物品テーブルにおいて、ステップS121で取得された物品IDと対応付けられた第1時刻を、取得時刻で更新することで(ステップS125)、ロッカー装置12への運搬が行われた時刻として取得された取得時刻を第1時刻として管理する。その後、管理部130は、第1時刻更新処理の実行を終了する。
情報処理装置100は、図19のステップS105で第1時刻更新処理を実行した後に、ステップS106からS109の処理を実行する(ステップS106からS109)。その後、情報処理装置100は、後段制御処理の実行を終了する。
本変形例では、ロッカー装置への運搬手順の全体を、販売業者の従業員が行うと説明したが、これに限定される訳では無く、従業員は、ロッカー装置への運搬手順の一部を行っても良い。
また、本変形例では、ロッカー装置への運搬手順に人間が介在していると説明したが、これに限定される訳では無い。ロッカー装置への運搬手順に人間が介在していないが、ロッカー装置への格納手順に人間が介在していても良い。この場合、従業員が、ロッカー装置への格納手順の全体又は一部を行えば良い。
これらの構成によれば、物流システム1の管理部130は、第1運搬機11への物品の受渡に人間が介在した場合に、当該受渡が行われた時刻を第1時刻として管理する。また、これらの構成によれば、物流システム1が備える情報処理装置100は、物品の配送に関する手順であり、かつ、当該物品に対して行われた手順を識別する手順IDを取得する取得部120をさらに備える。また、情報処理装置100が備える管理部130は、手順を識別する手順IDと、当該手順において人間の介在があるか否かを表すフラグと、を対応付けて複数記憶する情報記憶部190において、取得された手順IDに対応付けられたフラグが人間の介在があることを表す場合に、手順IDが取得された時刻で第1時刻を更新する。このため、物流システム1は、例えば、撮像により得られた画像を解析することで人間が物品に触れたこと、及び、物品に人間が触れた時刻を検知して第1時刻を更新する場合と比べて、少ない計算量で第1時刻を更新できる。また、そのような場合と比べて、物流システム1の構成を簡素化できるため、物流システム1の製造費用及び設置費用を低下させることができる。
<実施例1の変形例5>
実施例1及び実施例1の変形例2から4では、引受手順からロッカー装置への格納手順のいずれか1つに人間が介在していると説明したが、これに限定される訳では無い。引受手順からロッカー装置への格納手順のいずれか2つ以上に人間が介在していても良い。
<実施例1の変形例6>
実施例1では、第2運搬機21は、ロボットアーム218を備えていると説明した。また、実施例1では、保管庫への格納手順において、第2運搬機21が、ロボットアーム218を用いて、物品を第2運搬機21から保管庫22へ移動させると説明した。しかし、これらに限定される訳では無く、保管庫22が、第2運搬機21のロボットアーム218の構成及び機能と同様の構成及び機能を有する不図示のロボットアームを備えても良い。また、保管庫への格納手順において、保管庫22が、保管庫22のロボットアームを用いて物品を第2運搬機21から保管庫22へ移動させても良い。
また、保管庫への格納手順において、第2運搬機21と保管庫22とが、物品を第2運搬機21から保管庫22へ移動させても良い。この場合、第2運搬機21がロボットアーム218を用いて物品を第2運搬機21から取り出した後、取り出された物品を、保管庫22が、保管庫22のロボットアームを用いて第2運搬機21から受け取り、受け取られた物品を保管庫22のロボットアームを用いて保管庫22へ格納すれば良い。
実施例1では、第2運搬機21から第1運搬機11へ物品を受け渡す受渡手順において、第2運搬機21がロボットアーム218を用いて物品を第2運搬機21から第1運搬機11へ移動させると説明したが、これに限定される訳では無い。受渡手順において、第1運搬機11が、第1運搬機11の不図示のロボットアームを用いて物品を第2運搬機21から第1運搬機11へ移動させても良い。
また、受渡手順において、第1運搬機11と第2運搬機21とが、物品を第2運搬機21から第1運搬機11へ移動させても良い。この場合、第2運搬機21がロボットアーム218を用いて物品を第2運搬機21から取り出した後、取り出された物品を、第1運搬機11が、第1運搬機11のロボットアームを用いて第2運搬機21から受け取り、受け取られた物品を第1運搬機11のロボットアームを用いて第1運搬機11へ格納すれば良い。
実施例1では、第1運搬機11は、不図示のロボットアームを備えると説明した。また、実施例1では、ロッカー装置への格納手順において、第1運搬機11が、第1運搬機11のロボットアームを用いて物品を第1運搬機11からロッカー装置12へ移動させると説明した。しかし、これらに限定される訳では無く、ロッカー装置12が、第2運搬機21のロボットアーム218の構成及び機能と同様の構成及び機能を有する不図示のロボットアームを備えても良い。また、ロッカー装置への格納手順において、ロッカー装置12が、ロッカー装置12のロボットアームを用いて物品を第1運搬機11からロッカー装置12へ移動させても良い。
また、ロッカー装置への格納手順において、第1運搬機11とロッカー装置12とが、物品を第1運搬機11からロッカー装置12へ移動させても良い。この場合、第1運搬機11が第1運搬機11のロボットアームを用いて物品を第1運搬機11から取り出した後、取り出された物品を、ロッカー装置12が、ロッカー装置12のロボットアームを用いて第1運搬機11から受け取り、受け取られた物品をロッカー装置12のロボットアームを用いてロッカー装置12へ格納すれば良い。
<実施例1の変形例7>
実施例1では、情報処理装置100の管理部130は、第1時刻及び第2時刻を管理すると説明した。また、情報処理装置100の通知部140は、第1時刻より後に人間が物品に接触していないことを知らせる通知を行うと説明した。
しかし、これらに限定される訳ではなく、本変形例に係る情報処理装置100の管理部130は、第1時刻からの経過時間である第1経過時間と、第2時刻からの経過時間である第2経過時間と、を管理する。また、本変形例に係る通知部140は、第1経過時間に亘って人間が物品に接触していないことを知らせる通知を行う。
このために、本変形例に係る情報処理装置100の情報記憶部190は、図15に示した第2時刻テーブルに代えて、不図示の第2経過時間テーブルを予め記憶している。第2経過時間テーブルには、物品を識別する物品IDと、当該物品の第2経過時間を計時する計時プログラムを実行するスレッドを識別するスレッドIDと、が対応付けられて保存される。
計時プログラムは、実行が開始されると1分に亘ってスリープする処理をした後に、経過時間を表すカウンタを値「1」だけインクリメントする。その後、計時プログラムは、スリープする処理から上記処理を繰り返す。
本変形例に係る情報処理装置100は、図12のステップS62において、図17に示した第2時刻設定処理に代えて、第2経過時間を設定する、図24に示すような第2経過時間設定処理を実行する。
第2経過時間設定処理の実行が開始されると、情報処理装置100の取得部120は、図17のステップS71及びS73と同様の処理を実行することで(ステップS141及びS142)、引受手順が行われた物品の物品IDと、引受手順の手順ID「P1」と、を取得し、取得された引受手順の手順ID「P1」に対応付けられた介在フラグを取得する。
次に、情報処理装置100の管理部130は、取得された介在フラグの値が、人が介在することを表す値「TRUE」であると判別すると(ステップS143;Yes)、第2経過時間を計時する計時プログラムを実行するスレッドを生成し、取得部120は、生成されたスレッドを識別するスレッドIDをOSから取得する。
その後、情報処理装置100の管理部130は、生成されたスレッドで実行される計時プログラムが用いるカウンタであり、かつ、第2経過時間を表すカウンタを「0」分で初期化した後に(ステップS144)、計時プログラムの実行を開始する。これにより、管理部130は、物品の引受が行われた時刻、又は、引受手順の手順ID「P1」が取得された取得時刻からの経過時間を計時プログラムに計時させる。このような計時がされるのは、本実施例において、引受が行われる時刻は、引受手順が完了する時刻を意味し、かつ、引受手順の実行が完了する時刻から、情報処理装置100が引受手順の完了報告から引受手順の手順ID「P1」を取得し、手順IDに対応付けられた介在フラグの値に基づいてカウンタを初期化し、計時プログラムの実行を再開し終える時刻までの時間長は、例えば、「1」分といった予め定められた長さ以下だからである。すなわち、物品の引受が行われた時刻と、引受手順の手順ID「P1」が取得された取得時刻と、計時プログラムの実行が再開された時刻と、は、同視できるからである。
その後、情報処理装置100の管理部130は、第2経過時間テーブルに、ステップS141で取得された物品IDと、取得されたスレッドIDと、を対応付けて保存することで、計時プログラムで計時される時間を第2経過時間として管理する。その後、管理部130は、第2経過時間設定処理の実行を終了する。
ステップS143において、情報処理装置100の管理部130は、取得された介在フラグの値が、人が介在しないことを表す値「FALSE」であると判別すると(ステップS143;No)、第3時刻からの経過時間である第3経過時間を表す情報の送信を求める送信要求を生成する。その後、管理部130は、生成された送信要求を、第3物流機構の情報処理装置を宛先として第1データ通信回路104aに出力する(ステップS145)。
情報処理装置100の第1データ通信回路104aが、第3経過時間を表す情報を受信すると、情報処理装置100の取得部120は、第1データ通信回路104aから第3経過時間を表す情報を取得する(ステップS146)。
その後、情報処理装置100の管理部130は、スレッドを生成し、取得部120は、生成されたスレッドを識別するスレッドIDを取得する。次に、管理部130は、生成されたスレッドで実行される計時プログラムが用いる第2経過時間を表すカウンタを、第3経過時間で初期化した後に(ステップS147)、計時プログラムの実行を開始する。その後、管理部130は、第2経過時間テーブルに、物品IDとスレッドIDとを対応付けて保存することで、第3経過時間を第2経過時間として管理する。その後、管理部130は、第2経過時間設定処理の実行を終了する。
また、本変形例に係る情報処理装置100は、図12のステップS64及びS66、並びに、図19のステップS98及びS100において、図18に示した第2時刻更新処理に代えて、第2経過時間を再設定する、図25に示すような第2経過時間再設定処理を実行する。
第2経過時間再設定処理の実行が開始されると、情報処理装置100の取得部120は、図18のステップS81及びS83と同様の処理を実行することで(ステップS151及びS152)、実行された手順の手順ID「P2」から「P5」のいずれかと、当該手順が行われた物品の物品IDと、を取得する。また、取得部120は、取得された手順ID「P2」から「P5」のいずれかに対応付けられた介在フラグを取得する。
次に、情報処理装置100の管理部130は、取得された介在フラグの値が、人が介在しないことを表す値「FALSE」であると判別すると(ステップS153;No)、第2経過時間を再設定することなく、第2経過時間再設定処理の実行を終了する。
これに対して、情報処理装置100の管理部130は、取得された介在フラグの値が、人が介在することを表す値「TRUE」であると判別すると(ステップS153;Yes)、取得部120は、不図示の第2経過時間テーブルにおいて、物品IDと対応付けられたスレッドIDを取得する。その後、管理部130は、取得されたスレッドIDで識別されるスレッドで実行される計時プログラムの実行を終了した後に、計時プログラムの第2経過時間を表すカウンタを「0」分で初期化する(ステップS154)。次に、管理部130は、計時プログラムの実行を再開する。これらにより、管理部130は、物品の保管庫22への運搬、保管庫22への格納、保管庫22からの取出、若しくは、第1運搬機11への運搬が行われた時刻、又は、手順ID「P2」から「P5」のいずれかが取得された取得時刻からの経過時間を計時プログラムに計時させる。またこれにより、管理部130は、計時プログラムによって計時される時間を第2経過時間として管理する。その後、管理部130は、第2経過時間再設定処理の実行を終了する。
さらに、本変形例に係る情報処理装置100の情報記憶部190は、図20に示した物品テーブルに代えて、不図示の物品テーブルを予め記憶している。本変形例に係る物品テーブルには、販売された物品の物品ID、当該物品の宛先を表す情報、当該物品が格納されたロッカー装置12の格納ボックスを識別するボックスID、及び、当該物品の受取人の認証に用いられるパスワードを表す情報と、当該物品の第1経過時間を計時する計時プログラムを実行するスレッドのスレッドIDと、が対応付けられて保存される。
本変形例に係る情報処理装置100は、図19のステップS101において、受渡手順の実行を命じる実行命令を出力した後に、ステップS102において、図21に示した第1時刻設定処理に代えて、第1経過時間を設定する不図示の第1経過時間設定処理を実行する。
情報処理装置100は、第1経過時間設定処理の実行を開始すると、図24のステップS141からS147と同様の処理を実行する。これにより、情報処理装置100の取得部120は、受渡手順が行われた物品の物品IDと、受渡手順の手順ID「P6」と、を取得する。次に、情報処理装置100の管理部130は、受渡手順の手順ID「P6」に対応付けられた介在フラグの値が、人が介在することを表す値「TRUE」であると判別すると、第1経過時間を計時する計時プログラムが実行されるスレッドを生成する。その後、管理部130は、第1経過時間を表すカウンタを「0」分で初期化してから、当該スレッドで計時プログラムの実行を開始する。これにより、管理部130は、受渡が行われた時刻、又は、受渡手順の手順ID「P6」が取得された取得時刻からの経過時間を計時プログラムに計時させる。
このような計時がされるのは、本実施例において、受渡が行われる時刻は、受渡手順が完了する時刻を意味し、かつ、受渡手順の実行が完了する時刻から、引受手順の完了報告を受信した情報処理装置100が、完了報告から引受手順の手順ID「P1」を取得し、手順IDに基づいてカウンタを初期化し、計時プログラムの実行を再開し終える時刻までの時間長は予め定められた長さ以下であるためである。すなわち、受渡が行われた時刻と、受渡手順の手順ID「P6」が取得された取得時刻と、計時プログラムの実行が再開された時刻と、は、同視できるからである。
その後、情報処理装置100の管理部130は、生成されたスレッドのスレッドIDを、販売された物品の物品IDに対応付けて、本変形例に係る物品テーブルに保存する。これにより、管理部130は、計時プログラムによって計時される経過時間を第1経過時間として管理する。その後、管理部130は、第1経過時間設定処理の実行を終了する。
これに対して、情報処理装置100の管理部130は、取得された介在フラグの値が、人が介在しないことを表す値「FALSE」であると判別すると、スレッドを生成し、第1経過時間を表すカウンタを第2経過時間で初期化してから、当該スレッドで計時プログラムの実行を開始する。次に、管理部130は、スレッドIDを物品IDに対応付けて物品テーブルに保存することで、第2経過時間を第1経過時間として管理する。その後、管理部130は、第1経過時間設定処理の実行を終了する。
また、本変形例に係る情報処理装置100は、図19のステップS105及びS107において、図22に示した第1時刻更新処理に代えて、第1経過時間を再設定する不図示の第1経過時間再設定処理を実行する。
情報処理装置100は、第1経過時間再設定処理の実行を開始すると、図25のステップS151からS154と同様の処理を実行する。これにより、情報処理装置100は、完了した手順を識別する手順IDと、当該手順が行われた物品の物品IDと、を取得し、取得された手順IDに対応付けられた介在フラグを取得する。次に、情報処理装置100の管理部130は、取得された介在フラグの値が、人が介在しないことを表す値「FALSE」であると判別すると、第1経過時間を再設定せずに計時を継続する。その後、管理部130は、第1経過時間再設定処理の実行を終了する。
これに対して、情報処理装置100は、取得された介在フラグの値が、人が介在することを表す値「TRUE」であると判別すると、取得された物品IDに対応付けられたスレッドIDを取得する。次に、情報処理装置100の管理部130は、取得されたスレッドIDで識別されるスレッドで実行される計時プログラムの実行を終了した後に、計時プログラムの第1経過時間を表すカウンタを「0」分で初期化してから、計時プログラムの実行を再開する。これにより、管理部130は、ロッカー装置12への運搬又は格納が行われた時刻、又は、ロッカー装置への運搬手順の手順ID「P7」若しくはロッカー装置への格納手順の手順ID「P8」が取得された取得時刻からの経過時間を計時プログラムに計時させる。またこれにより、管理部130は、計時プログラムによって計時される経過時間を第1経過時間として管理する。その後、管理部130は、第1経過時間再設定処理の実行を終了する。
また、本変形例に係る情報処理装置100の通知部140は、第1時刻に基づいて受取人へ通知を行う、図23に示した通知処理に代えて、第1経過時間に基づいて受取人へ通知を行う不図示の通知処理を実行する。
情報処理装置100の取得部120は、不図示の通知処理の実行を開始すると、本変形例に係る物品テーブルから、ロッカー装置12に配送された物品の物品IDに対応付けられたボックスID及びパスワードを表す情報と、スレッドIDと、を取得する。次に、取得部120は、スレッドIDで識別されるスレッドで実行される計時プログラムが用いるカウンタの値を参照することで、第1経過時間を取得する。
その後、情報処理装置100の通知部140は、ボックスID、パスワード、第1経過時間と、を含み、物品が宛先のロッカー装置12の当該ボックスIDで識別される格納ボックスに配送されたこと、当該物品の取り出しに当該パスワードが必要であること、及び、第1経過時間に亘って人間が物品に接触していないこと、を知らせる通知を生成する。その後、通知部140は、生成された通知を、受取人が携帯する端末装置19を宛先として第1データ通信回路104aへ出力してから、通知処理の実行を終了する。
これらの構成によれば、物流システム1は、物品の宛先へ当該物品を運搬する第1運搬機11を含む第1物流機構10と、第1運搬機11によって運搬される物品が受け取られる受取時刻より前の時刻であり、かつ、当該物品に人間が接触した最後の時刻である第1時刻からの経過時間である第1経過時間を管理する管理部130と、を備える。このため、物流システム1は、受取人による物品の受け取り前において人間が当該物品に触れた最後の時刻からの経過時間である第1経過時間を管理できる。
またこれらの構成によれば、物流システム1は、第1物流機構10と異なる機構であり、かつ、物品を運搬又は保管する第2物流機構20をさらに備える。また、情報処理装置100の管理部130は、第2物流機構20が第1物流機構10に物品を受け渡す受渡時刻よりも前の時刻であり、かつ、第2物流機構20が運搬又は保管する当該物品に人間が接触した最後の時刻である第2時刻からの経過時間である第2経過時間をさらに管理する。このため、物流システム1は、第1物流機構10に物品が受け渡される前において人間が当該物品に触れた最後の時刻からの経過時間である第2経過時間を管理できる。
これらの構成によれば、物流システム1は、第1経過時間に基づいて受取人へ通知を行う通知部140をさらに備える。通知部140が行う通知は、第1経過時間に亘って、人間が物品に接触していないことを知らせる。これらのため、通知がされてから、目標経過時間と第1経過時間との時間差だけ待ってから、受取人が物品を受け取れば、人間の接触により物品にウィルス又は菌が付着していたとしても、当該物品の受取人が当該ウィルス又は当該菌に感染することを抑制できる。
<実施例1の変形例8>
実施例1の変形例3と、実施例1の変形例7と、は、組み合わせることができる。このため、情報処理装置100の管理部130は、第1運搬機11への物品の受渡に人間が介在する場合に、当該受渡が行われた時刻からの経過時間を第1経過時間として管理できる。
<実施例1の変形例9>
実施例1では、受取人は、推奨受取開始時刻以降に、ロッカー装置12が備える入力装置に対してボックスIDとパスワードとを入力させる操作をすると説明したが、これに限定される訳では無い。本変形例において、受取人は、推奨受取開始時刻よりも前の時刻に、ロッカー装置12が備える入力装置に対してボックスIDとパスワードとを入力させる操作を行う。
本変形例に係るロッカー装置12は、実施例1で説明した通り、当該操作に従って、ボックスIDとパスワードとを含む問合せを情報処理装置100へ送信する。情報処理装置100は、推奨受取開始時刻よりも前の時刻に問合せを受信しても、問合せに含まれるボックスIDとパスワードとの組み合わせが、端末装置19に送信したボックスIDとパスワードとの組み合わせと一致すると、解錠を許可するという回答を返信する。これに対して、情報処理装置100は、これらの組み合わせが一致しないと、解錠を許可しないという回答を返信する。
<実施例1の変形例10>
実施例1の変形例9では、情報処理装置100は、推奨受取開始時刻よりも前の時刻に問合せを受信しても、問合せに含まれるボックスIDとパスワードとの組み合わせが、端末装置19に送信したボックスIDとパスワードとの組み合わせと一致すると、解錠を許可するという回答を返信すると説明した。しかし、これに限定される訳では無く、情報処理装置100は、推奨受取開始時刻よりも前の時刻に問合せを受信すると、解錠を許可しないという回答を返信する。
このために、本変形例に係る情報処理装置100の情報記憶部190は、図20の物品テーブルに代えて、不図示の物品テーブルを予め記憶している。本変形例に係る物品テーブルには、販売された物品の物品ID、当該物品の宛先を表す情報、当該物品の第1時刻、当該物品が格納されたロッカー装置12の格納ボックスを識別するボックスID、及び、当該物品の受取人の認証に用いられるパスワードを表す情報と、当該物品の推奨受取開始時刻と、が対応付けられて保存される。
本変形例に係る情報処理装置100は、図23の通知処理に代えて、不図示の通知処理を実行する。本変形例に係る通知処理の実行が開始されると、図23のステップS131からS133と同様の処理が実行される。これにより、ロッカー装置12へ格納された物品の第1時刻が取得され、取得された第1時刻に基づいて推奨受取開始時刻が算出される。
その後、情報処理装置100の管理部130は、本変形例に係る物品テーブルから、当該物品の物品IDが保存されたレコードを検索し、検索されたレコードに、算出された推奨受取開始時刻を当該物品IDに対応付けて保存する。
その後、情報処理装置100は、図23のステップS134と同様の処理を実行することで、第1時刻、推奨受取開始時刻、ボックスID、及び、パスワードを含んだ通知を、受取人が携帯する端末装置19へ送信してから、通知処理の実行を終了する。
通知を視認した受取人によって操作されたロッカー装置12から、情報処理装置100の第1データ通信回路104aが問合せを受信すると、情報処理装置100のCPU101は、不図示の解錠許否処理を実行する。
解錠許否処理の実行を開始すると、情報処理装置100の取得部120は、受信された問合せからボックスIDとパスワードを表す情報を取得し、本変形例に係る物品テーブルから、問合せから取得されたボックスIDに対応付けられた推奨受取開始時刻を取得する。次に、取得部120は、例えば、OSからシステム時刻を取得し、制御部110は、取得されたシステム時刻が、取得された推奨受取開始時刻よりも前の時刻であると判別すると、解錠を許可しないという回答を、ロッカー装置12を宛先として第1データ通信回路104aへ出力する。
これに対して、情報処理装置100の取得部120は、取得されたシステム時刻が、取得された推奨受取開始時刻以降の時刻であると判別すると、実施例1で説明した通り、本変形例に係る物品テーブルから、取得されたボックスIDに対応付けられたパスワードを表す情報を取得する。次に、制御部110は、問合せから取得された情報で表されるパスワードと、物品テーブルから取得された情報で表されるパスワードと、が一致すると判別すると、解錠を許可するという回答を、ロッカー装置12を宛先として第1データ通信回路104aへ出力する。これに対して、制御部110は、これらのパスワードが一致しないと判別すると、解錠を許可しないという回答を、ロッカー装置12を宛先として第1データ通信回路104aへ出力する。その後、制御部110は、解錠許否処理の実行を終了する。
これらの構成によれば、目標経過時間は、予め定められたウィルス又は菌が人間の体外に排出されてから、当該ウィルス又は当該菌の感染力の大きさが予め定められた大きさ以下となるまでの時間である。また、物流システム1は、第1物流機構10の第1運搬機11に、宛先に設置されたロッカー装置12へ物品を運搬させる制御を行ってから、運搬された物品を格納し、かつ、施錠されたロッカー装置12に、解錠させる制御を、第1時刻から目標経過時間だけ後の推奨受取開始時刻以降に行う制御部110をさらに備える。このため、物流システム1は、物品の受取時刻を、推奨受取開始時刻以降にすることができるため、人間の接触により物品にウィルス又は菌が付着していたとしても、当該物品の受取人が当該ウィルス又は菌に感染することを抑制できる。
<実施例1の変形例11>
実施例1の変形例7と、実施例1の変形例10と、は、組み合わせることができる。実施例1の変形例7と、実施例1の変形例10と、の組み合わせである本変形例に係る情報処理装置100の制御部110は、ロッカー装置12を解錠させる制御を、第1経過時間が目標経過時間となる時刻以降に行う。
このために、情報処理装置100の取得部120は、受取人の端末装置19から受信された問合せから、ボックスIDとパスワードを表す情報を取得し、本変形例に係る物品テーブルから、問合せから取得されたボックスIDに対応付けられたスレッドIDを取得する。次に、取得部120は、取得されたスレッドIDで識別されるスレッドで実行される計時プログラムのカウンタを参照することで、第1経過時間を取得する。その後、取得部120は、情報記憶部190から目標経過時間を表す情報を取得する。
次に、情報処理装置100の制御部110は、取得された第1経過時間の長さが、取得された目標経過時間の長さ未満であると判別すると、システム時刻が、第1経過時間が目標経過時間となる推奨受取開始時刻よりも前の時刻であると判別する。その後、制御部110は、解錠を許可しないという回答を、ロッカー装置12を宛先として第1データ通信回路104aへ出力する。
これに対して、情報処理装置100の制御部110は、取得された第1経過時間の長さが、取得された目標経過時間の長さ以上であると判別すると、システム時刻が推奨受取開始時刻以降の時刻であると判別する。その後、制御部110は、問合せから取得された情報で表されるパスワードと、物品テーブルから取得された情報で表されるパスワードと、が一致すると判別すると、解錠を許可するという回答を出力し、これらのパスワードが一致しないと判別すると、解錠を許可しないという回答を出力する。
<実施例1の変形例12>
実施例1では、情報処理装置100の通知部140は、物品がロッカー装置12に格納されると、物品がロッカー装置12に配送されたことを知らせる通知を行うと説明したが、これに限定される訳では無い。本変形例に係る情報処理装置100の通知部140は、推奨受取開始時刻が経過すると、物品がロッカー装置12に配送されたことを知らせる通知を行う。
このために、本変形例に係る情報処理装置100の情報記憶部190は、図20の物品テーブルに代えて、不図示の物品テーブルを予め記憶している。本変形例に係る物品テーブルには、物品ID、宛先を表す情報、第1時刻、ボックスID、及び、パスワードを表す情報と、推奨受取開始時刻と、通知が行われたか否かを表すフラグと、が対応付けられて保存される。
本変形例に係る情報処理装置100のCPU101は、図19に示した後段制御処理の実行が終了することで、物品がロッカー装置12に格納されると、当該物品の推奨受取開始時刻を算出する、不図示の時刻算出処理を実行する。
情報処理装置100は、時刻算出処理の実行を開始すると、図23のステップS131からS133と同様の処理を実行する。これにより、ロッカー装置12へ格納された物品の第1時刻が取得され、取得された第1時刻に基づいて推奨受取開始時刻が算出される。その後、情報処理装置100の管理部130は、本変形例に係る物品テーブルから、当該物品の物品IDが保存されたレコードを検索し、検索されたレコードに、算出された推奨受取開始時刻と、通知が行われていないこと表すフラグと、を当該物品IDに対応付けて保存する。その後、管理部130は、推奨受取開始時刻算出処理の実行を終了する。
本変形例に係る情報処理装置100のCPU101は、起動すると、図23に示した通知処理に代えて、不図示の通知処理を、例えば、1分間といった予め定められた間隔で実行する。
本変形例に係る通知処理の実行が開始されると、情報処理装置100の取得部120は、例えば、OSからシステム時刻を取得する。次に、通知部140は、本変形例に係る物品テーブルに、取得されたシステム時刻以前の推奨受取開始時刻と、通知が行われていないことを表すフラグと、が保存されたレコードが存在するか否かを判別する。このとき、通知部140は、そのようなレコードが存在しないと判別すると、通知処理の実行を終了する。
これに対して、情報処理装置100の通知部140が、そのようなレコードが存在すると判別すると、取得部120は、そのようなレコードの1つを選択し、選択されたレコードからボックスID、及び、パスワードを取得する。
その後、通知部140は、宛先のロッカー装置12の当該ボックスIDで識別される格納ボックスに物品が配送されたこと、当該物品の受け取りに当該パスワードが必要であること、及び、当該物品に人間が最後に触れてから目標経過時間が経過したことを知らせる通知を生成する。
次に、情報処理装置100の通知部140は、生成された通知を、受取人が携帯する端末装置19を宛先として第1データ通信回路104aへ出力する。その後、通知部140は、選択されたレコードのフラグを、通知が行われたことを表すフラグに更新してから、通知処理の実行を終了する。
これらの構成によれば、物流システム1の通知部140は、第1時刻から目標経過時間だけ後の時刻である推奨受取開始時刻以降に、人間が最後に物品に触れてから目標経過時間が経過したことを知らせる通知をさらに行う。このため、受取人が当該通知を視認してから物品を受け取れば、人間の接触により物品にウィルス又は菌が付着していたとしても、受取人が当該ウィルス又は菌に感染することを抑制できる。また、受取人は、目標経過時間を知らなくとも、当該通知を視認すれば、人間が最後に物品に触れてから目標経過時間が経過することで、当該ウィルス又は菌の感染力の大きさが予め定められた大きさ以下となったことを知ることができるため、受取人の利便性が向上する。
これらの構成によれば、物流システム1の通知部140は、推奨受取開始時刻以降に、物品が宛先のロッカー装置12に配送されたことを知らせる通知を行い、かつ、推奨受取開始時刻より前に、当該通知を行わない。このため、例えば、推奨受取開始時刻よりも前の時刻においてロッカー装置12の解錠を制限しなくとも、物流システム1は、受取時刻を推奨受取開始時刻以降の時刻にすることができる。このため、人間の接触により物品にウィルス又は菌が付着していたとしても、受取人が当該ウィルス又は菌に感染することを抑制できる。
<実施例1の変形例13>
実施例1の変形例7と、実施例1の変形例12と、は、組み合わせることができる。このため、実施例1の変形例7と、実施例1の変形例12と、の組み合わせである本変形例に係る情報処理装置100の通知部140は、第1経過時間が目標経過時間となる時刻以降に、人間が最後に物品に触れてから目標経過時間が経過したことを知らせる通知をさらに行う。
<実施例1の変形例14>
実施例1では、物流システム1が備える第1物流機構10は、第1運搬機11とロッカー装置12とを備えると説明したが、これに限定される訳では無い。本変形例に係る第1物流機構10は、第1運搬機11を備えるが、ロッカー装置12を備えない。本変形例に係る第1運搬機11は、物品の宛先まで当該物品を運搬すると宛先で停車する。
第1運搬機11は、宛先の近傍で、予め定められた速度以下の速度で、巡回走行又は往復走行しても良い。宛先の近傍は、宛先から予め定められた距離の境界線よりも宛先側の区域である。
受取人は、第1運搬機11が備える不図示の入力装置にパスワードを入力させる操作を行う。第1運搬機11が備える不図示のCPUは、入力装置から出力される信号に基づいてパスワードを表す情報を取得し、取得された情報を含む問い合わせを、情報処理装置100を宛先としてデータ通信回路へ出力する。
その後、第1運搬機11のデータ通信回路が、情報処理装置100から解錠を許可しないという回答を受信すると、第1運搬機11のCPUは、パスワードが誤っていることを知らせるメッセージを不図示の表示装置に表示させる。これに対して、解錠を許可するという回答が受信されると、第1運搬機11のCPUは、格納庫を解錠させる制御信号を駆動回路に出力する。受取人は、解錠された格納庫の扉を開けて、購入した物品を受け取る。
<実施例1の変形例15>
実施例1では、ロッカー装置12は、受取人が居住するマンションのエントランスに設置されていると説明したが、これに限定される訳では無い。ロッカー装置12は、アパートを含む共同住宅、オフィスビル、ホテル、コンビニエンスストア、ショッピングモール、及び、百貨店を含む商業施設、若しくは、駅、空港、及び、バス停を含む公共施設のエントランス、又は、一軒家の玄関先に設置されていても良い。また、ロッカー装置12は、共同住宅、オフィスビル、ホテル、商業施設、又は、公共施設のロビーに設置されていても良い。さらに、ロッカー装置12は、一軒家、共同住宅、オフィスビル、ホテル、商業施設、又は、公共施設の庭、又は、駐車場に設置されていても良い。また、ロッカー装置12は、共同住宅、オフィスビル、ホテル、商業施設、又は、公共施設の通路に設置されていても良い。
実施例1の変形例14では、第1運搬機11は、宛先で停車する、又は、宛先の近傍で巡回走行若しくは往復走行すると説明した。第1運搬機11が停車する宛先の場所、又は、巡回走行等する宛先の近傍は、共同住宅、オフィスビル、ホテル、商業施設、若しくは、公共施設のエントランス、又は、一軒家の玄関先であっても良い。また、第1運搬機11が停車する宛先の場所、又は、巡回走行等する宛先の近傍は、共同住宅、オフィスビル、ホテル、商業施設、又は、公共施設のロビーであっても良いし、一軒家、共同住宅、オフィスビル、ホテル、商業施設、若しくは、公共施設の庭、又は、駐車場であっても良いし、共同住宅、オフィスビル、ホテル、商業施設、又は、公共施設の通路であっても良い。
<実施例1の変形例16>
実施例1では、物流システム1は、不図示のロボットアームを備えた無人地上車両である第1運搬機11と、第1運搬機11によって物品を格納させられるロッカー装置12と、を備えると説明した。しかし、これに限定される訳では無く、本変形例に係る物流システム1は、図26に示すような、例えば、ドローン等の無人航空機であり、かつ、ロボットアームを備えていない第1運搬機11と、不図示のロボットアームを備え、当該ロボットアームで第1運搬機11が運搬した物品を格納するロッカー装置12と、を備える。
第1運搬機11は、第1運搬機11の姿勢及び飛行を制御する制御装置910を備える。第1運搬機11は、制御装置910の前面から右前方及び左前方、並びに、制御装置910の後面から左後方及び右後方にそれぞれ突出したプロペラアーム921及び922、並びに、923及び924を備える。さらに、第1運搬機11は、プロペラアーム921から924の先端にそれぞれ設置されたプロペラ931から934、及び、制御装置910の制御に従ってプロペラ931から934を回転させる不図示のモータを備える。
また、第1運搬機11の制御装置910の下面には、物品を格納する格納庫940が設置されている。格納庫940は、不図示の箱体、扉、扉枠、デッドボルト、及び、ストライクを備える。格納庫940が備える箱体、扉、扉枠、デッドボルト、及び、ストライクの構成及び機能は、第2運搬機21が備える格納ボックス215の箱体、扉215a、扉枠215b、デッドボルト215c、及び、ストライク215dの構成及び機能と同様である。
第1運搬機11は、制御装置910の下面から下方に突出しており、制御装置910を支持する支持脚943をさらに備えている。また、第1運搬機11は、制御装置910の前面に設けられたLiDARセンサ951と、制御装置910の後面に設けられた不図示のLiDARセンサと、を備える。第1運搬機11が備える前面のLiDARセンサ951と後面のLiDARセンサとの構成及び機能は、それぞれ第2運搬機21が備える前面のLiDARセンサ216と後面のLiDARセンサとの構成及び機能と同様である。
第1運搬機11は、第1運搬機11の前方を撮像できるように光軸及び画角を調整された撮像装置961をさらに備える。第1運搬機11が備える撮像装置961の構成及び機能は、第2運搬機21が備える撮像装置217の構成及び機能と同様である。
第1運搬機11の制御装置910は、ハードウェアである不図示のCPU、RAM、ROM、フラッシュメモリ、データ通信回路、ビデオカード、表示装置、入力装置、位置計測回路、入出力ポート、及び、駆動回路を備える。第1運搬機11の制御装置910が備えるこれらのハードウェアの構成及び機能は、図3に示した第2運搬機21の制御装置219が備えるハードウェアの構成及び機能と同様である。
第1運搬機11の駆動回路は、プロペラ931から934を回転させる不図示のモータにそれぞれ接続された不図示のケーブルに接続されている。駆動回路は、CPUが出力する信号に従って、プロペラ931から934を回転させる不図示のモータを駆動させる。
第1運搬機11のデータ通信回路が、情報処理装置100から送信された実行命令を受信すると、第1運搬機11のCPUは、実行命令に従って配送手順を実行する。
本変形例では、物流システム1は、無人航空機であり、ロボットアームを備えていない第1運搬機11と、ロボットアームを備えたロッカー装置12と、を備えると説明した。また、本変形例では、ロッカー装置12は、ロッカー装置12のロボットアームを用いて、第1運搬機11が運搬した物品を、第1運搬機11からロッカー装置12へ移動させると説明した。しかし、これに限定される訳では無く、物流システム1は、無人航空機であり、ロボットアームを備える第1運搬機11と、第1運搬機11のロボットアームによって物品を格納させられるロッカー装置12と、を備えても良い。
また、本変形例では、物流システム1は、無人航空機である第1運搬機11と、無人地上車両である第2運搬機21と、を備えると説明したが、これに限定される訳では無い。物流システム1は、無人航空機である第1運搬機11及び第2運搬機21を備えても良い。
また、本変形例では、第1運搬機11は、無人航空機であると説明したが、これに限定される訳ではなく、無人飛翔体であっても良い。さらに、本変形例では、第1運搬機11は、プロペラ931から934で揚力及び推力を得るドローンであると説明したが、これに限定される訳ではない。第1運搬機11は、翼を備え、翼で揚力を得えても良いし、空気よりも比重の小さい気体で満たされた気嚢を備え、気嚢で揚力を得えても良い。また、第1運搬機11は、ジェットエンジン又はロケットエンジンを備え、ジェットエンジン又はロケットエンジンで推力を得ても良い。
実施例1では、ロッカー装置12は、受取人が居住するマンションのエントランスに設置されていると説明したが、これに限定される訳では無く、一軒家、共同住宅、オフィスビル、ホテル、商業施設、又は、公共施設のベランダ、又は、屋上に設置されていても良い。
本変形例と、第1運搬機11が宛先で停車する、又は、宛先の近傍で巡回走行若しくは往復走行する実施例1の変形例14と、は、組み合わせることができる。この場合、第1運搬機11が着陸する宛先の場所、又は、巡回飛行、往復飛行、若しくは、ホバリング飛行する宛先の近傍は、一軒家、共同住宅、オフィスビル、ホテル、商業施設、又は、公共施設のベランダ、又は、屋上であっても良い。
<実施例1の変形例17>
実施例1では、第1運搬機11は、無人地上車両であると説明したが、必ずしも無人である必要はなく、情報処理装置100による制御を除き、自律して移動する物体であれば、人間が乗っていても良い。
<実施例1の変形例18>
実施例1では、第1運搬機11は、無人地上車両であると説明したが、これに限定される訳では無い。本変形例に係る第1運搬機11は、第1運搬機11に乗車するドライバーの操作に従って走行する有人地上車両である。
本変形例では、第2運搬機21から第1運搬機11へ物品が受け渡される受渡手順において、第1運搬機11のドライバーが、物品に触れて、当該物品を第2運搬機21から第1運搬機11へ移動させるため、本変形例では、受渡手順に人間が介在している。このため、第1運搬機11は、ロボットアームを備えても良いし、備えなくとも良く、例えば、トラックを含む自動車であっても良い。
また、これに限定される訳ではなく、受渡手順において、第1運搬機11のドライバーではなく、第2運搬機21のロボットアーム218及び第1運搬機11の不図示のロボットアームの1つ以上が、物品を第2運搬機21から第1運搬機11へ移動させても良い。すなわち、受渡手順に人間が介在しなくても良い。
また、本変形例では、ロッカー装置への運搬手順において、物品は、第1運搬機11の格納庫内に格納されるため、第1運搬機11のドライバーは、物品に触れることなく、第1運搬機11を運転してロッカー装置12へ物品を運搬する。このため、本変形例では、ロッカー装置への運搬手順には、人間が介在していない。しかし、これに限定される訳では無く、ロッカー装置への運搬手順において、第1運搬機11のドライバーが、物品に触れる必要があれば、ロッカー装置への運搬手順に人間が介在していても良い。
さらに、本変形例では、物流システム1は、実施例1の変形例14と同様に、保管庫22を備えない。このため、本変形例に係る第1運搬機11は、宛先まで物品を運搬すると、ロッカー装置への格納手順を実行せずに、宛先で停車した後に、受取人の操作に応じて物品を受取人に引き渡す。受取人は、第1運搬機11の格納庫から物品を受け取る。
しかし、これに限定される訳では無く、物流システム1は、実施例1と同様に、保管庫22を備え、第1運搬機11は、宛先まで物品を運搬すると、ロッカー装置への格納手順を実行しても良い。この場合、ロッカー装置への格納手順において、第1運搬機11のドライバーが、物品に触れて第1運搬機11からロッカー装置12へ移動させる必要があり、ロッカー装置への格納手順に人間が介在していても良い。また、この場合、ドライバーが、物品に触れて第1運搬機11からロッカー装置12へ移動させる必要がなく、第1運搬機11のロボットアームが、第1運搬機11からロッカー装置12へ物品を移動させるため、ロッカー装置への格納手順に、人間が介在していなくとも良い。さらに、この場合、ロッカー装置12が不図示のロボットアームを備えるため、ドライバーが物品に触れる必要がなく、ロッカー装置12のロボットアームが、第1運搬機11からロッカー装置12へ物品を移動させても良い。
また、実施例1では、第2運搬機21は、無人地上車両であると説明したが、これに限定される訳では無く、第2運搬機21は、第2運搬機21に乗車するドライバーの操作に従って走行する有人地上車両であっても良い。さらに、運搬業者から物品を引き受ける引受手順、保管庫への運搬手順、保管庫への格納手順、保管庫22から物品を取り出す取出手順、及び、第1運搬機への運搬手順において、ドライバーが物品に触れる必要がなく、これらの手順に人間が介在しなくとも良い。これに対して、これらの手順において、ドライバーが物品に触れる必要があり、これらの手順に人間が介在しても良い。
<実施例1の変形例19>
実施例1では、目標経過時間は、予め定められたウィルス又は菌の感染力の大きさが予め定められた大きさ以下となる時間に予め設定されていると説明した。予め定められたウィルス又は菌は、それぞれどのようなウィルス又は菌であっても良く、例えば、SARS(Severe Acute Respiratory Syndrome)-Cov(Coronavirus)-2であっても良い。この場合、目標経過時間は、SARS-Cov-2の感染力の大きさが予め定められた大きさ以下となる72時間であっても良いし、72時間よりも短くても長くても良い。
また、予め定められたウィルスは、例えば、インフルエンザウィルスであっても良いし、ノロウィルス又はロタウィルスであっても良い。予め定められた菌は、例えば、大腸菌又は溶連菌であっても良い。
<実施例1の変形例20>
第1運搬機11及び第2運搬機21が運搬する物品は、どのようなものであっても良く、荷物又は貨物であっても良い。また、物品は、物に限定される訳では無く、生き物であっても良い。
<実施例1の変形例21>
実施例1では、第1物流機構10は、1個の第1運搬機11と、1個のロッカー装置12と、を備えると説明したが、これに限定される訳では無い。第1物流機構10は、N1個の第1運搬機11と、M1個のロッカー装置12と、を備えても良い(但し、N1及びM1は、自然数)。また、実施例1では、第2物流機構20は、1個の第2運搬機21と、1個の保管庫22と、を備えると説明したが、これに限定される訳で無い。第2物流機構20は、N2個の第2運搬機21と、M2個の保管庫22と、を備えても良い(但し、N2及びM2は、自然数)。
<実施例1の変形例22>
実施例1では、第1運搬機11は、1つの物品を運搬し、運搬された1つの物品をロッカー装置12が備える1つの格納ボックスに格納させると説明した。また、情報処理装置100の通知部140は、ロッカー装置12の1つの格納ボックスに格納された1つの物品の第1時刻及び推奨受取開始時刻を含み、第1時刻よりも後に人間が当該1つの物品に触れていないこと、及び、当該1つの物品の推奨受取開始時刻を知らせる通知を行うと説明した。
しかし、これらに限定される訳では無く、第1運搬機11は、複数の物品を運搬し、運搬された複数の物品をロッカー装置12が備える1つの格納ボックスに格納させても良い。また、情報処理装置100の通知部140は、ロッカー装置12の1つの格納ボックスに格納された複数の物品の第1時刻の内で、最も遅い第1時刻と、当該複数の物品の推奨受取開始時刻の内で、最も遅い推奨受取開始時刻と、を含む通知を行っても良い。最も遅い第1時刻と最も遅い推奨受取開始時刻とを含む通知は、当該最も遅い第1時刻よりも後に人間が当該複数の物品のいずれにも触れていないこと、及び、当該複数の物品について受取の開始が推奨される時刻が、最も遅い推奨受取開始時刻であることを知らせる通知である。
実施例1では、第2運搬機21は、保管庫22が備える1つの格納ボックス225に1つの物品を格納させると説明したが、これに限定される訳では無い。第2運搬機21は、第2時刻が同じである複数の物品を同じ格納ボックス225に格納させても良い。
<実施例1の変形例23>
実施例1では、情報処理装置100は、情報記憶部190を備えると説明したが、これに限定される訳では無い。本変形例に係る情報処理装置100は、情報記憶部190を備えない。本変形例に係る情報処理装置100は、例えば、NAS(Network Attached Storage)であり、かつ、情報記憶部190の機能と同様の機能を有する不図示の情報記憶装置とインターネットINを介して接続されている。本変形例に係る物流システム1は、情報記憶装置を備えても良いし、情報記憶装置を備えなくても良い。本変形例に係る情報処理装置100は、情報記憶装置が記憶する情報を用いて、図12に示した前段制御処理、図17に示した第2時刻設定処理、図18に示した第2時刻更新処理、図19に示した後段制御処理、図21に示した第1時刻設定処理、図22に示した第1時刻更新処理、及び、図23に示した通知処理を実行する。
<実施例1の変形例24>
実施例1では、端末装置19は、スマートフォンであると説明したが、これに限定される訳では無く、タブレット型のパーソナルコンピュータ、又は、ノートブック型のパーソナルコンピュータであっても良い。
<実施例2>
実施例1に係る情報処理装置100は、販売要求を受信すると、販売された物品を保管庫22から取り出して第1運搬機11へ受け渡させる制御を第2運搬機21に行った後、受け渡された物品を宛先まで運搬させる制御を第1運搬機11に行うと説明した。しかし、これに限定される訳では無い。
本実施例に係る情報処理装置100は、販売要求を受信すると、販売された物品が第2運搬機21から第1運搬機11へ受け渡される受渡タイミングを、当該物品に人間が最後に接触した第2時刻から受取人が当該物品を受け取る受取時刻までに目標経過時間が経過するように決定する。その後、情報処理装置100は、決定された受渡タイミングで受け渡しが行われるように第2運搬機21の制御を行った後、受け渡された物品を宛先まで運搬させる制御を第1運搬機11に行う。以下、実施例1と同様の構成については、実施例1で用いた符号と同一の符号を用いて説明するが、本実施例と実施例1との相違について主に説明する。
本実施例に係る情報処理装置100の第1データ通信回路104aが、販売要求を受信すると、情報処理装置100のCPU101は、図27に示すような後段制御処理を実行する。これにより、情報処理装置100のCPU101は、物品の受け渡しが行われる受渡場所から当該物品の宛先までの運搬に要する運搬時間を推定する、図28に示すような推定部150、及び、推定された運搬時間に基づいて受渡タイミングを決定する決定部160、として機能する。
図27の後段制御処理の実行が開始されると、情報処理装置100は、図19のステップS91からS94と同様の処理を実行することで(ステップS161からS164)、販売される物品を選択する。その後、情報処理装置100は、販売される物品の受渡タイミングを決定する、図29に示すようなタイミング決定処理を、選択された物品の物品IDを引き数として実行する。
タイミング決定処理の実行が開始されると、情報処理装置100の取得部120は、引き数から物品IDを取得し、図20の物品テーブルから、取得された物品IDと対応付けられた宛先を表す情報を取得する(ステップS181)。その後、取得部120は、宛先の住所を表す情報と予め対応付けられて情報記憶部190に予め記憶されている緯度、経度、及び、高度を表す情報を取得する。
その後、情報処理装置100の制御部110は、図4のステップS02と同様の処理を実行することで、物品が第1運搬機11に受け渡される受渡場所から当該物品の宛先までの移動経路を決定する(ステップS182)。
次に、情報処理装置100の取得部120は、情報記憶部190に予め記憶されている第1運搬機11の移動速度を表す情報を取得する。第1運搬機11の移動速度は、予め定められた速度であっても良いし、過去に計測された第1運搬機11の移動速度の平均速度であっても良い。
その後、情報処理装置100の推定部150は、決定された移動経路の距離を算出し、算出された距離を、取得された情報で表される速度で除算する。これにより、推定部150は、第1運搬機11が移動経路を走行して、受渡場所から宛先まで物品を運搬するのに要する運搬時間を推定する(ステップS183)。
その後、情報処理装置100の取得部120は、情報記憶部190に予め記憶されている目標経過時間を表す情報を取得する。次に、決定部160は、目標経過時間である第1目標経過時間から、推定された運搬時間を減算することで得られる時間を、第2目標経過時間として算出する(ステップS184)。その後、取得部120は、図20の物品テーブルから、取得された物品IDと対応付けられた第2時刻を取得し、決定部160は、第2時刻に第2目標経過時間を加算することで得られる時刻を、受渡タイミングである受渡時刻に決定する(ステップS185)。その後、決定部160は、タイミング決定処理の実行を終了する。
図27のステップS165で、タイミング決定処理の実行が終了すると、情報処理装置100の制御部110は、決定された受渡タイミングを表す情報を含み、かつ、販売された物品を保管庫22から取り出す取出手順、第1運搬機への運搬手順、及び、受渡手順の実行を命じる実行命令を生成する。その後、制御部110は、生成された実行命令を、第2運搬機21を宛先として第2データ通信回路104bへ出力する(ステップS166)。
実行命令を受信した第2運搬機21は、実行命令に含まれる受渡タイミングに基づいて、保管庫22から物品を取り出すために保管庫22の位置へ移動を開始する移動開始タイミングを決定する。その後、第2運搬機21は、決定された移動開始タイミングが到来すると、保管庫22への移動を開始する。
情報処理装置100は、第2運搬機21が保管庫22に到着したことを告げる到着報告を受信すると、図19のステップS96及びS97と同様の処理を実行することで(ステップS167及びS168)、保管庫22を解錠させる。
その後、取出手順の実行を完了した第2運搬機21は、取出手順が完了したことを告げる完了報告を送信し、情報処理装置100の第2データ通信回路104bが完了報告を受信すると、図18に示した第2時刻更新処理が実行される(ステップS169)。
次に、第2運搬機21は、第1運搬機への運搬手順を実行した後に完了報告を送信し、情報処理装置100は、当該完了報告を受信すると、第2時刻更新処理を再度実行する(ステップS170)。
その後、第2運搬機21は、受渡タイミングにおいて、第1運搬機11へ物品を受け渡す受渡手順を実行してから完了報告を送信する。情報処理装置100は、当該完了報告を受信すると、図21に示した第1時刻設定処理を実行する(ステップS171)。
次に、情報処理装置100は、図19のステップS103からS109の処理と同様の処理を実行することで(ステップS172からS178)、ロッカー装置への運搬手順、及び、ロッカー装置への格納手順を第1運搬機11に実行させる制御を行う。これにより、情報処理装置100は、受渡タイミングから運搬時間だけ後の時刻であり、かつ、第1時刻から目標経過時間だけ後の時刻である推奨受取開始時刻に、ロッカー装置12への物品の運搬を完了させる制御を第1運搬機11に行う。
本変形例に係る第2運搬機21のデータ通信回路が、図27のステップS166で出力された実行命令を受信すると、第2運搬機21のCPU219aは、図30に示すような取出処理を実行する。
取出処理の実行が開始されると、第2運搬機21のCPU219aは、図9のステップS31及びS32と同様の処理を実行する(ステップS191及びS192)。これにより、第2運搬機21は、第2運搬機21の位置から保管庫22までの移動経路と、保管庫22から受渡場所までの移動経路と、を決定する。
次に、第2運搬機21のCPU219aは、図29のステップS183と同様の処理を実行することで、第2運搬機21の位置から保管庫22への移動時間と、保管庫22から受渡場所への移動時間と、を推定する(ステップS193)。
その後、第2運搬機21のCPU219aは、データ通信回路219eから実行命令を取得し、取得された実行命令から受渡タイミングを表す情報を取得する。その後、第2運搬機21のCPU219aは、フラッシュメモリ219dが予め記憶している情報であり、かつ、保管庫22から物品を取り出すのに要する取出時間を表す情報を取得する。取出時間は、例えば、予め定められた時間であっても良いし、過去に計測された時間であり、かつ、第2運搬機21が保管庫22から物品を取り出すのに要した時間の平均値であっても良い。
また、第2運搬機21のCPU219aは、フラッシュメモリ219dが予め記憶している情報であり、かつ、第2運搬機21が物品を第1運搬機11に受け渡すのに要する受渡時間を表す情報を取得する。受渡時間は、例えば、予め定められた時間であっても良いし、過去に計測された時間であり、かつ、第2運搬機21が物品を受け渡すのに要した時間の平均値であっても良い。
次に、第2運搬機21のCPU219aは、第2運搬機21の位置から保管庫22への移動時間と、取出時間と、保管庫22から受渡場所への移動時間と、受渡時間と、の合計時間を算出する。その後、第2運搬機21のCPU219aは、取得された情報で表される受渡タイミングよりも、算出された合計時間だけ前の時刻を、保管庫22への移動を開始する移動開始タイミングに決定する(ステップS194)。
このような合計時間に基づいて移動開始タイミングが決定されるのは、本実施例において、物品が受け渡される受渡タイミングは、受渡が完了したタイミングを意味するからである。しかし、受渡タイミングは、これに限定される訳では無く、受渡が開始したタイミングを意味し、第2運搬機21のCPU219aは、保管庫22への移動時間と、取出時間と、保管庫22から受渡場所への移動時間と、の合計時間に基づいて移動開始タイミングを算出しても良い。また、受渡タイミングは、受渡が行われ期間に含まれる一時点を意味しても良い。
その後、第2運搬機21のCPU219aは、例えば、OSからシステム時刻を取得し、取得された時刻が、決定された移動開始タイミング以降の時刻であるか否かを判別する(ステップS195)。このとき、CPU219aは、システム時刻が移動開始タイミングよりも前の時刻であると判別すると(ステップS195;No)、例えば、1分といった予め定められた時間だけスリープした後に、ステップS195から上記処理を繰り返す。
これに対して、第2運搬機21のCPU219aは、システム時刻が移動開始タイミング以降の時刻であると判別すると(ステップS195;Yes)、図9のステップS33からS41の処理と同様の処理を実行する(ステップS196からS204)。これにより、第2運搬機21は、保管庫22への移動を開始し、取出手順を実行してから、取出処理の実行を終了する。
取出処理の実行を終了すると、第2運搬機21は、実施例1で説明した不図示の第1運搬機運搬処理を実行することで、第1運搬機への運搬手順を行う。その後、第1運搬機運搬処理の実行を終了すると、第2運搬機21は、図10に示した受渡処理を実行する。これにより、第2運搬機21は、情報処理装置100によって決定された受渡タイミングで、第1運搬機11へ物品を受け渡す。本実施例では、受渡タイミングで物品を受け渡すとは、受渡タイミングで物品の受け渡しを完了することを意味する。しかし、これに限定される訳では無く、受渡タイミングで物品の受け渡しを開始することを意味しても良いし、受渡タイミングで物品の受け渡しを行っていることを意味しても良い。
これらの構成によれば、物流システム1は、第2時刻に基づいて、物品に人間が最後に接触した第2時刻から受取人が物品を受け取る受取時刻までに目標経過時間が経過するように、第2物流機構20から第1物流機構10の第1運搬機11への物品の受渡タイミングを決定する決定部160をさらに備える。また、これらの構成によれば、目標経過時間は、予め定められたウィルス又は菌が人間の体外に排出されてから、当該ウィルス又は当該菌の感染力の大きさが予め定められた大きさ以下となるまでの時間である。また、物流システム1は、第1時刻から目標経過時間だけ後の時刻に、物品を宛先へ運搬させる制御を、第1物流機構10の第1運搬機11に行う制御部110をさらに備える。このため、人間の接触により物品にウィルス又は菌が付着していたとしても、物品に人間が最後に接触してから目標経過時間が経過してから物品が宛先に運搬されるため、物品を宛先で受け取った受取人が当該ウィルス又は菌に感染することを、物流システム1は、確実に抑制できる。
さらに、これらの構成によれば、物流システム1は、宛先に基づいて、第1物流機構10の第1運搬機11が宛先まで物品を運搬するのに要する運搬時間を推定する推定部150をさらに備える。また、決定部160は、目標経過時間である第1目標経過時間よりも、推定された運搬時間だけ短い第2目標経過時間を算出し、第2時刻よりも第2目標経過時間だけ後の時刻のタイミングを、受渡タイミングに決定する。このため、物流システム1は、第2時刻から目標経過時間だけ後の時刻に物品を宛先へ運搬させることができるように、受渡タイミングを決定できる。よって、第1運搬機11から受取人が物品を受け取る場合には、人間の接触により物品にウィルス又は菌が付着していたとしても、物流システム1は、受取人が当該ウィルス又は菌に感染することを抑制しながら、第1運搬機11が宛先に留まる時間を短くして、第1運搬機11による物品の運搬効率を向上できる。第1運搬機11の運搬効率は、例えば、単位時間当たりに第1運搬機11が運搬する物品の数で表されるが、これに限定される訳は無い。さらに、第1運搬機11がロッカー装置12へ物品を移動させ、受取人がロッカー装置12から物品を受け取る場合には、物流システム1は、感染を抑制しながら、ロッカー装置12が物品を格納する時間を短くし、ロッカー装置12の保管効率を向上できる。ロッカー装置12の保管効率は、例えば、単位時間当たりにロッカー装置12が保管する物品の数で表されるが、これに限定される訳は無い。
<実施例2の変形例1>
実施例2では、情報処理装置100の決定部160は、第2時刻に第2目標経過時間を加算することで得られる時刻を受渡タイミングに決定すると説明したが、これに限定される訳では無い。情報処理装置100の決定部160は、第2時刻に第2目標経過時間を加算することで得られる時刻以降の時刻を受渡タイミングに決定しても良い。
<実施例2の変形例2>
実施例2では、情報処理装置100の決定部160は、受渡タイミングを決定すると説明したが、これに限定される訳では無い。本変形例に係る決定部160は、第2運搬機21が物品を取り出すために保管庫22への移動を開始する移動開始タイミングを決定してもよい。
本変形例に係る情報処理装置100は、図27の後段制御処理の実行を開始すると、ステップS161からS164の処理を実行することで(ステップS161からS164)、販売される物品を選択する。
その後、情報処理装置100は、図30のステップS191から194の処理と同様の処理を実行することで、移動開始タイミングを決定する(ステップS165)。
その後、情報処理装置100の取得部120は、例えば、OSからシステム時刻を取得し、制御部110は、取得されたシステム時刻が移動開始タイミング以降の時刻であるか否かを判別する処理を実行する。このとき、制御部110は、システム時刻が移動開始タイミングよりも前の時刻であると判別すると、予め定められた時間だけスリープした後に、システム時刻が移動開始タイミング以降の時刻であるか否かを判別する処理から上記処理を繰り返す。
これに対して、情報処理装置100の制御部110は、システム時刻が移動開始タイミング以降の時刻であると判別すると、取出手順、第1運搬機への運搬手順、及び、受渡手順の実行を命じる実行命令を、第2運搬機21を宛先として第2データ通信回路104bへ出力する。
その後、情報処理装置100は、図27のステップS167からS178の処理を実行する(ステップS167からS178)。これにより、情報処理装置100は、実施例2と同様に、受渡タイミングから運搬時間だけ後の時刻であり、かつ、第1時刻から目標経過時間だけ後の時刻である推奨受取開始時刻に、ロッカー装置12への物品の運搬を完了させる制御を第1運搬機11に行う。その後、情報処理装置100は、後段制御処理の実行を終了する。
<実施例2の変形例3>
実施例2では、情報処理装置100の決定部160は、第2時刻に基づいて受渡タイミングを決定すると説明したが、これに限定される訳では無い。本変形例に係る情報処理装置100の決定部160は、販売された物品の第2時刻と、当該物品の種別と、に基づいて受渡タイミングを決定する。
本変形例に係る情報記憶部190は、物品の品番に関する情報が保存されている、図31に示すような品番テーブルを予め記憶している。品番テーブルには、複数のレコードが予め保存されており、各レコードには、品番と、当該品番が割り振られた物品の種別を識別する種別IDと、が予め対応付けられて保存されている。本実施例では、物品の種別は、物品の表面部材の材質で決まる種別であるが、これに限定される訳では無い。表面部材の材質は、例えば、ガラス、プラスティック、紙、及び、金属を含み、表面部材の材質で決まる種別は、例えば、ガラス製品、プラスティック製品、紙製品、及び、金属製品を含むが、これらに限定される訳では無い。
また、本変形例に係る情報記憶部190は、物品の種別に関する情報が保存されている、図32に示すような種別テーブルを予め記憶している。種別テーブルには、複数のレコードが予め保存されており、各レコードには、種別を識別する種別IDと、当該種別の物品の推奨受取開始時刻を決定するために用いられる目標経過時間の補正係数と、が予め対応付けられて保存されている。種別IDと補正係数とが予め対応づけられているのは、ウィルス又は菌の感染力の減少速度は、当該ウィルス又は菌が付着した材質の種別に依存するためである。
本変形例に係る情報処理装置100は、図31及び図32に示したテーブルを用いて、図33に示すようなタイミング決定処理を実行する。情報処理装置100は、タイミング決定処理の実行を開始すると、図29のステップS181からS183の処理と同様の処理を実行することで(ステップS211からS213)、受渡場所から宛先まで物品を運搬するのに要する運搬時間を推定する。
その後、情報処理装置100の取得部120は、図31の品番テーブルから、販売された物品の物品IDに含まれる品番に対応付けられた種別IDを取得する(ステップS214)。次に、取得部120は、図32の種別テーブルから、取得された種別IDに対応付けられた補正係数を取得する(ステップS215)。これらにより、取得部120は、販売された物品の表面部材の種別に応じた補正係数を取得する。
その後、情報処理装置100の取得部120は、情報記憶部190に予め記憶されている第1目標経過時間を表す情報を取得する。次に、決定部160は、第1目標経過時間に対して、ステップS215で取得された補正係数を乗算することで、第1目標経過時間を補正する(ステップS216)。
その後、情報処理装置100の決定部160は、補正後の第1目標経過時間から、ステップS213で推定された運搬時間を減算することで得られる時間を、第2目標経過時間として算出する(ステップS217)。
次に、情報処理装置100の取得部120は、図20の物品テーブルから、販売された物品の物品IDと対応付けられた第2時刻を取得し、決定部160は、ステップS217で算出された第2目標経過時間を第2時刻に加算することで、受渡タイミングを決定する(ステップS218)。その後、決定部160は、タイミング決定処理の実行を終了する。
これらの構成によれば、物流システム1の決定部160は、第2時刻と、物品の種別と、に基づいて受渡タイミングを決定する。ウィルス又は菌の感染力の減少速度は、当該ウィルス又は菌が付着した物品の種別に依存するため、人間との接触により物品にウィルス又は菌が付着していたとしても、例えば、第2時刻のみに基づいて受渡タイミングを決定する場合よりも、当該物品の受取人が当該ウィルス又は菌に感染することを確実に抑制できる。
<実施例2の変形例4>
実施例2の変形例3では、情報処理装置100の決定部160は、販売された物品の第2時刻と、当該物品の種別と、に基づいて受渡タイミングを決定すると説明した。しかし、これに限定される訳では無く、本変形例に係る情報処理装置100の決定部160は、販売された物品の第2時刻と、当該物品を梱包する梱包部材の種別と、に基づいて受渡タイミングを決定する。
このために、本変形例に係る品番テーブルの各レコードには、品番と、当該品番が割り振られた物品の梱包部材の種別を識別する種別IDと、が予め対応づけられて保存されている。梱包部材は、例えば、ガラスケース、プラスティックケース、段ボール、及び、ビニール袋を含むが、これに限定される訳では無い。また、本実施例では、梱包部材の種別は、梱包部材の材質で決まる種別であるが、これに限定される訳では無い。梱包部材の材質は、ガラス、プラスティック、紙又は段ボール、ビニール、及び、金属を含み、梱包部材の材質で決まる種別は、例えば、ガラス梱包、プラスティック梱包、紙梱包、ビニール梱包、及び、金属梱包を含むが、これらに限定される訳では無い。
<実施例2の変形例5>
販売された物品の第2時刻と、当該物品の種別と、に基づいて受渡タイミングを決定する実施例2の変形例3と、販売された物品の第2時刻と、当該物品の梱包部材の種別と、に基づいて受渡タイミングを決定する実施例2の変形例4と、は、組み合わせることができる。実施例2の変形例3と実施例2の変形例4との組み合わせである本変形例に係る情報処理装置100の決定部160は、物品の第2時刻と、当該物品の種別と、に基づいて受渡タイミングの第1候補を決定し、かつ、物品の第2時刻と、当該物品の梱包部材の種別と、に基づいて受渡タイミングの第2候補を決定する。その後、決定部160は、第1候補と第2候補との遅い方の候補を採用し、採用された候補を受渡タイミングに決定する。
<実施例2の変形例6>
実施例2の変形例3では、情報処理装置100の決定部160は、第2時刻と物品の種別とに基づいて受渡タイミングを決定すると説明したが、これに限定される訳では無い。本変形例に係る情報処理装置100の決定部160は、販売された物品の第2時刻と、第2時刻から当該物品が第1運搬機11に受け渡されるまでにおける当該物品の環境と、に基づいて受渡タイミングを決定する。
このために、本変形例に係る物流システム1は、第2時刻から当該物品が第1運搬機11に受け渡されるまでの間、物品が保管又は運搬される第2物流機構20の環境を計測する、不図示の環境センサを備えている。本変形例では、第2物流機構20は、販売業者の倉庫に設置されており、第2物流機構20の環境は、第2物流機構20の気温を含むため、環境センサは、倉庫の気温を計測できる位置に設置されている。
また、物品は、運搬業者から引き受けられた後、販売されるまで、保管庫22の格納ボックス225の内部に格納されて保管される。このため、本変形例では、環境センサは、倉庫内に設置された保管庫22が備える格納ボックス225の内部に設置されており、格納ボックス225の内部の気温を計測する。このため、環境センサは、例えば、IC(Integrated Circuit)温度センサであり、情報処理装置100に接続されており、計測された格納ボックス225の内部の温度を表す信号を情報処理装置100に出力する。
本変形例に係る情報記憶部190は、環境に関する情報が保存されている、図34に示すような環境テーブルを予め記憶している。環境テーブルには、複数のレコードが予め保存されており、各レコードには、予め定められた温度の範囲を表す情報と、当該範囲に含まれる気温の場所に保管された物品の推奨受取開始時刻を決定するために用いられる目標経過時の補正係数と、が予め対応付けられて保存されている。温度の範囲を表す情報と補正係数とが予め対応付けられているのは、ウィルス又は菌の感染力の減少速度は、当該ウィルス又は菌が付着した場所の温度に依存するためである。
本変形例に係る情報処理装置100は、図34に示したテーブルを用いて、図35に示すようなタイミング決定処理を実行する。情報処理装置100は、タイミング決定処理の実行を開始すると、図33のステップS211からS213の処理と同様の処理を実行することで(ステップS221からS223)、運搬時間を推定する。
次に、情報処理装置100の取得部120は、情報記憶部190に予め記憶されている第1目標経過時間を表す情報を取得し、決定部160は、取得された情報で表される第1目標経過時間から、ステップS223で推定された運搬時間を減算することで得られる時間を、第2目標経過時間として算出する(ステップS224)。
その後、情報処理装置100の取得部120は、不図示の環境センサが出力する信号に基づいて保管庫22内の気温を表す情報を取得する(ステップS225)。次に、取得部120は、取得された気温に基づいて補正係数を取得する。このため、取得部120は、図34の環境テーブルから、取得された情報で表される温度が含まれる範囲を表す情報に対応付けられた補正係数を取得する(ステップS226)。
その後、情報処理装置100の取得部120は、算出された第2目標経過時間に対して、ステップS226で取得された補正係数を乗算することで、補正係数に基づいて第2目標経過時間を補正する(ステップS227)。
次に、情報処理装置100の決定部160は、図33のステップS218の処理と同様の処理を実行することで、第2時刻と、補正された第2目標経過時間と、に基づいて受渡タイミングを決定した後に(ステップS228)、タイミング決定処理の実行を終了する。
これらの構成によれば、物流システム1の決定部160は、物品に人間が最後に接触した第2時刻から物品が第1運搬機11に受け渡されるまでにおける物品の環境と、第2時刻と、に基づいて受渡タイミングを決定する。ウィルス又は菌の感染力の減少速度は、当該ウィルス又は菌が付着した場所の環境に依存するため、人間との接触により物品にウィルス又は菌が付着したとしても、例えば、第2時刻のみに基づいて受渡タイミングを決定する場合よりも、当該物品の受取人が当該ウィルス又は菌に感染することを確実に抑制できる。
<実施例2の変形例7>
実施例2の変形例6では、情報処理装置100の決定部160は、販売された物品の第2時刻と、第2時刻から当該物品が第1運搬機11に受け渡されるまでの間に当該物品を保管していた保管庫22内の気温と、に基づいて受渡タイミングを決定すると説明した。しかし、これに限定される訳では無い。本変形例に係る情報処理装置100の決定部160は、物品の第2時刻と、第2時刻から当該物品が第1運搬機11に受け渡されるまでの間に当該物品を保管していた保管庫22内の湿度、又は、照度と、に基づいて受渡タイミングを決定する。
本実施例に係る環境センサは、保管庫22が備える格納ボックス225の内部の湿度を計測する電気式の湿度計、又は、照度を計測する電気式の照度計である。
本変形例に係る環境テーブルの各レコードには、予め定められた湿度又は照度の範囲を表す情報と、当該範囲に含まれる湿度又は照度の場所に保管された物品の補正係数と、が予め対応づけられて保存されている。物品の補正係数とは、当該物品の推奨受取開始時刻を決定するために用いられる目標経過時間の補正係数である。このように湿度又は照度の範囲を表す情報と補正係数とが予め対応付けられているのは、ウィルス又は菌の感染力の減少速度は、当該ウィルス又は菌が付着した場所の湿度又は照度に依存するためである。
<実施例2の変形例8>
実施例2の変形例3から7は、それぞれ組み合わせることができる。このため、実施例2の変形例3から7の組み合わせである本変形例に係る情報処理装置100の決定部160は、販売された物品の第2時刻と、当該物品の種別と、当該物品の梱包部材の種別と、当該物品に人間が最後に接触した第2時刻から受取人が物品を受け取る受取時刻までの間における気温、湿度、及び、照度のいずれか1つ以上を含む当該物品の環境と、のいずれか1つ以上に基づいて受渡タイミングを決定する。
<実施例2の変形例9>
第1経過時間と第2経過時間とを管理する実施例1の変形例7と、実施例2と、は、組み合わせることができる。実施例1の変形例7と実施例2との組み合わせである本変形例に係る情報処理装置100の決定部160は、販売された物品の第2経過時間に基づいて受渡タイミングを決定する。
このために、本変形例に係る情報処理装置100の取得部120は、図29のステップS185において、不図示の第2経過時間テーブルから、販売された物品の物品IDと対応付けられたスレッドIDを取得する。次に、取得部120は、スレッドIDで識別されるスレッドで実行される計時プログラムが用いるカウンタの値を参照することで、第2経過時間を取得する。
その後、情報処理装置100の取得部120は、例えば、OSからシステム時刻を取得する。次に、情報処理装置100の決定部160は、第2目標経過時間から、取得された第2経過時間を減算することで得られる経過時間だけシステム時刻よりも後の時刻を、受渡タイミングである受渡時刻に決定する。すなわち、決定部160は、第2経過時間が第2目標経過時間となる時刻を、受渡タイミングに決定する。
<実施例2の変形例10>
実施例2の変形例9では、情報処理装置100の決定部160は、第2経過時間が第2目標経過時間となる時刻を、受渡タイミングに決定すると説明したが、これに限定される訳では無い。情報処理装置100の決定部160は、第2経過時間が第2目標経過時間となる時刻以降の時刻を、受渡タイミングに決定しても良い。
実施例1、実施例1の変形例1から24、実施例2、及び、実施例2の変形例1から10は、互いにそれぞれ組み合わせることができる。実施例1、実施例1の変形例1から24、実施例2、及び、実施例2の変形例1から10のいずれかに係る機能を実現するための構成を備えた情報処理装置100として提供できることはもとより、複数の装置で構成されるシステムであって、実施例1、実施例1の変形例1から24、実施例2、及び、実施例2の変形例1から10のいずれかに係る機能を実現するための構成をシステム全体として備えたシステムとして提供することもできる。
また、プログラムの適用により、既存の情報処理装置を実施例1、実施例1の変形例1から24、実施例2、及び、実施例2の変形例1から10のいずれかに係る情報処理装置100として機能させることもできる。すなわち、実施例1、実施例1の変形例1から24、実施例2、及び、実施例2の変形例1から10のいずれかで例示した情報処理装置100による各機能構成を実現させるためのプログラムを、既存の制御装置を制御するコンピュータ(CPUなど)が実行できるように適用することで、実施例1、実施例1の変形例1から24、実施例2、及び、実施例2の変形例1から10のいずれかに係る情報処理装置100として機能させることができる。
このようなプログラムの配布方法は任意であり、例えば、メモリカード、CD-ROM(Compact Disc Read Only Memory)、又はDVD-ROM(Digital Versatile Disk Read Only Memory)などの記録媒体に搭載して配布できる他、インターネットなどの通信媒体を介して配布することもできる。また、本発明に係る方法は、実施例1、実施例1の変形例1から24、実施例2、及び、実施例2の変形例1から10のいずれかに係る情報処理装置100、並びに、実施例1、実施例1の変形例1から24、実施例2、及び、実施例2の変形例1から10のいずれかに係る物流システム1を用いて実施できる。
以上本発明の好ましい実施例について詳述したが、本発明は係る特定の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形、変更が可能である。
(付記)
(付記1)
物品の宛先へ前記物品を運搬する運搬機を含む第1物流機構と、
前記運搬機によって運搬される前記物品が受け取られる受取時刻より前の時刻であり、かつ、前記物品に人間が接触した最後の時刻である第1時刻、又は、前記第1時刻からの経過時間である第1経過時間を管理する管理部と、を備える、
ことを特徴とする物流システム。
(付記2)
前記管理部は、前記物品の前記運搬機への受渡に人間が介在した場合に、当該受渡が行われた時刻を前記第1時刻として管理する、又は、当該受渡が行われた当該時刻からの経過時間を前記第1経過時間として管理する、
ことを特徴とする付記1に記載の物流システム。
(付記3)
前記管理部は、前記物品の前記運搬機への前記受渡に人間が介在しなかった場合に、前記受渡が行われるより前に人間が最後に前記物品に接触した時刻を前記第1時刻として管理する、又は、前記受渡が行われるより前に人間が最後に前記物品に接触した前記時刻からの経過時間を前記第1経過時間として管理する、
ことを特徴とする付記2に記載の物流システム。
(付記4)
前記物流システムは、前記第1時刻又は前記第1経過時間に基づいて前記物品の受取人へ通知を行う通知部をさらに備える、
ことを特徴とする付記1から3のいずれか一つに記載の物流システム。
(付記5)
前記通知は、前記第1時刻より後に人間が前記物品に接触していないこと、又は、前記第1経過時間に亘って人間が前記物品に接触していないことを知らせる、
ことを特徴とする付記4に記載の物流システム。
(付記6)
前記通知部は、前記第1時刻から目標経過時間だけ後の時刻以降に、若しくは、前記第1経過時間が前記目標経過時間となる時刻以降に、人間が最後に前記物品に触れてから前記目標経過時間が経過したことを知らせる通知をさらに行う、
ことを特徴とする付記4又は5に記載の物流システム。
(付記7)
前記第1物流機構は、前記物品を格納するロッカー装置をさらに備え、
前記運搬機及び前記ロッカー装置のいずれか1つ以上は、前記物品を前記運搬機から前記ロッカー装置へ移動させる、
ことを特徴とする付記1から6のいずれか一つに記載の物流システム。
(付記8)
前記物流システムは、前記第1物流機構と異なる機構であり、かつ、前記物品を運搬又は保管する第2物流機構をさらに備え、
前記管理部は、前記第2物流機構が前記第1物流機構に前記物品を受け渡す受渡時刻よりも前の時刻であり、かつ、前記第2物流機構が運搬又は保管する前記物品に人間が接触した最後の時刻である第2時刻、又は、前記第2時刻からの経過時間である第2経過時間をさらに管理する、
ことを特徴とする付記1から7のいずれか一つに記載の物流システム。
(付記9)
前記管理部は、前記第2物流機構から前記第1物流機構への前記物品の受渡に人間が介在しなかった場合、前記第2時刻を前記第1時刻として管理する、又は、前記第2経過時間を前記第1経過時間として管理する、
ことを特徴とする付記8に記載の物流システム。
(付記10)
前記第2時刻又は前記第2経過時間に基づいて、前記物品に人間が最後に接触した前記第2時刻から前記物品が受け取られる前記受取時刻までに目標経過時間が経過するように、前記第2物流機構から前記第1物流機構の前記運搬機への前記物品の受渡タイミングを決定する決定部をさらに備える、
ことを特徴とする付記9に記載の物流システム。
(付記11)
前記物流システムは、前記宛先に基づいて、前記第1物流機構の前記運搬機が前記宛先まで前記物品を前記運搬するのに要する運搬時間を推定する推定部をさらに備え、
前記決定部は、
前記目標経過時間である第1目標経過時間よりも、推定された前記運搬時間だけ短い第2目標経過時間を算出し、
前記第2時刻よりも前記第2目標経過時間だけ後の時刻、又は、前記第2経過時間が前記第2目標経過時間となる時刻、以降のタイミングを、前記受渡タイミングに決定する、
ことを特徴とする付記10に記載の物流システム。
(付記12)
前記決定部は、前記物品の種別、前記物品を梱包する梱包部材の種別、及び、前記物品に人間が最後に接触した前記第2時刻から前記物品が前記運搬機に受け渡されるまでにおける前記物品の環境のいずれか1つ以上にさらに基づいて、前記受渡タイミングを決定する、
ことを特徴とする付記10又は11に記載の物流システム。
(付記13)
前記目標経過時間は、予め定められたウィルス又は菌が人間の体外に排出されてから、当該ウィルス又は当該菌の感染力の大きさが予め定められた大きさ以下となるまでの時間であり、
前記通知部は、前記第1時刻よりも前記目標経過時間だけ後の時刻、又は、当該時刻よりも後の時刻であり、かつ、前記物品の受け取りの開始が推奨される推奨受取開始時刻を知らせる前記通知を行う、
ことを特徴とする付記6に記載の物流システム。
(付記14)
前記目標経過時間は、予め定められたウィルス又は菌が人間の体外に排出されてから、当該ウィルス又は当該菌の感染力の大きさが予め定められた大きさ以下となるまでの時間であり、
前記物流システムは、前記第1時刻から前記目標経過時間だけ後の時刻以降に、又は、前記第1経過時間が前記目標経過時間となる時刻以降に、前記物品の前記宛先への運搬を完了させる制御を、前記第1物流機構の前記運搬機に行う制御部をさらに備える、
ことを特徴とする付記6に記載の物流システム。
(付記15)
前記目標経過時間は、予め定められたウィルス又は菌が人間の体外に排出されてから、当該ウィルス又は当該菌の感染力の大きさが予め定められた大きさ以下となるまでの時間であり、
前記物流システムは、前記第1物流機構の前記運搬機に、前記宛先に設置されたロッカー装置へ前記物品を運搬させる制御を行ってから、運搬された前記物品を格納し、かつ、施錠された前記ロッカー装置に、解錠させる制御を、前記第1時刻から前記目標経過時間だけ後の時刻以降に、又は、前記第1経過時間が前記目標経過時間となる時刻以降に行う、制御部をさらに備える、
ことを特徴とする付記6に記載の物流システム。
(付記16)
前記物品の配送に関する手順であり、かつ、前記物品に対して行われた前記手順を識別する手順識別情報を取得する取得部、をさらに備え、
前記管理部は、前記手順を識別する前記手順識別情報と、前記手順において人間の介在があるか否かを表す情報と、を対応付けて複数記憶する記憶部において、取得された前記手順識別情報に対応付けられた前記情報が人間の介在があることを表す場合に、前記手順識別情報が取得された取得時刻を前記第1時刻として管理する、又は、当該取得時刻からの経過時間を前記第1経過時間として管理する、
ことを特徴とする付記1から15のいずれか一つに記載の物流システム。
(付記17)
物品の宛先へ前記物品を運搬させる制御を、運搬機を含む第1物流機構に行う制御部と、
前記運搬機によって運搬される前記物品が受け取られる受取時刻より前の時刻であり、かつ、前記物品に人間が接触した最後の時刻である第1時刻、又は、前記第1時刻からの経過時間である第1経過時間を管理する管理部と、を備える、
ことを特徴とする情報処理装置。
(付記18)
物品の宛先へ前記物品を運搬する運搬機を含む第1物流機構を備える物流システムが、前記運搬機によって運搬される前記物品が受け取られる受取時刻より前の時刻であり、かつ、前記物品に人間が接触した最後の時刻である第1時刻、又は、前記第1時刻からの経過時間である第1経過時間を管理する管理ステップを有する、
ことを特徴とする方法。
(付記19)
物品が受け取られる受取時刻より前の時刻であり、かつ、前記物品に人間が接触した最後の時刻である第1時刻、又は、前記第1時刻からの経過時間である第1経過時間を取得する取得部と、
取得された前記第1時刻から目標経過時間だけ後の時刻、又は、前記第1経過時間が前記目標経過時間となる時刻、以降に、前記物品を前記宛先へ運搬する運搬機と、を備える、
ことを特徴とする物流システム。