次に、本発明の実施形態について、図面を用いて説明する。図1は、本発明の一実施形態であるストッカシステム1の構成の概略説明図である。図2は、親装置61の記憶部63に記憶された管理情報65の説明図である。図3は、第1子装置71の記憶部83に記憶された管理情報85の説明図である。ストッカシステム1は、複数のストッカ40と、親装置61及び複数の子装置70を備えたストッカ管理装置60と、を備えている。ストッカシステム1は、ネットワーク2に接続されており、ネットワーク2を介して納品関連システム5及び受取者20の携帯端末21と通信可能である。
納品関連システム5は、事業者が有するシステムであり、物品17の受取者20への納品に関連するシステムである。ここで、「事業者」は、物品の販売業者と物品17の配送業者とを含む。また、「納品関連システム」は、物品17の納品に関連するシステムであればよく、例えば物品17の発注に関連する(例えば発注を受け付ける)システムや、物品17の配送に関連する(例えば配送依頼を受け付ける)システムを含む。本実施形態では、納品関連システム5として、物品17の販売業者且つ配送業者である事業者Aが有する納品関連システム5aと、物品17の配送業者である事業者Bが有する納品関連システム5bと、が存在する場合を例として説明する。なお、事業者Aは、納品関連システム5aを用いて、物品17として例えば食品や日用品などの商品の発注を受取者20から受け付け、その物品17を事業者Aの配達者19によりストッカ40に納入し、ストッカ40を介して受取者20に受け渡す。また、事業者Bは、納品関連システム5bを用いて、物品17として例えば書類などの配送の依頼を差出人から受け付け、その物品17を事業者Bの配達者19によりストッカ40に納入し、ストッカ40を介して受取者20に受け渡す。
納品関連システム5aは、受取者20に物品17の販売及び配送を行うシステムであり、事業者Aの商店10aと、商店10aに配置され納品関連システム5aを管理するコンピュータである事業者PC12aと、事業者Aによって運営されるネットスーパーのウェブサイト15aと、を備えている。ウェブサイト15aは、ネットワーク2を介して例えば事業者PC12aや携帯端末21からアクセス可能になっている。
納品関連システム5bは、受取者20に物品17の配送を行うシステムであり、事業者Bの事業所10bと、事業所10bに配置され納品関連システム5bを管理するコンピュータである事業者PC12bと、事業者Bによって運営されるメール便のウェブサイト15bと、を備えている。ウェブサイト15bは、ネットワーク2を介して例えば事業者PC12bや携帯端末21からアクセス可能になっている。
携帯端末21は、事業者Aへの物品17の発注と、事業者A,Bからの物品17の受取とを行う受取者20が所持する機器であり、例えばスマートフォンなどの携帯可能なコンピュータとして構成されている。
複数のストッカ40は、事業者A,Bから配送される物品17の受け渡しに用いられるものである。本実施形態では、ストッカシステム1は2台のストッカ40(第1,第2ストッカ41,42)を備えている。複数のストッカ40の各々は、施錠可能な複数(本実施形態では30個)の納品庫45と、表示操作部54と、読取機55,56と、を備えている。納品庫45の各々は、物品17等の物品を収容可能な内部空間を有しており、前面の扉46と、扉46の施錠及び解錠を行うロック機構47と、納品庫45内の物品の有無を検出する物品センサ48と、扉46の開閉を検出する開閉センサ49と、を備えている。表示操作部54は、ストッカ40の前面に配置されたタッチパネルなどを備えており、配達者19及び受取者20への各種情報の表示や、配達者19及び受取者20からの各種操作の入力を行う。読取機55は、前方にかざされたコード(例えばQRコード(登録商標)などの二次元コード)を読み取る固定式のコードリーダであり、ストッカ40の前面の表示操作部54付近に配置されている。読取機56は、物品17に付されたバーコード18を読み取る手持ち式のバーコードリーダである。ストッカ40は、多数の受取者20が利用可能であり、オフィス、コンビニエンスストア、工場、駅、学校、マンションなど様々な場所に配置することができる。
ストッカ管理装置60は、複数のストッカ40を管理する装置であり、親装置61と、複数の子装置70と、を備えたシステムとして構成されている。親装置61は、複数の子装置70に対するサーバーとして構成されており、親制御部62と、記憶部63と、通信部64と、を備えている。親制御部62は、CPU,ROM及びRAMなどにより構成され装置全体の制御を司る。記憶部63は、処理プログラムなどの各種アプリケーションプログラムやストッカ40の管理情報65などの各種データを記憶している。通信部64は、ネットワーク2に接続されて、他の機器と双方向の通信を行う。
図2に示すように、記憶部63に記憶された管理情報65は、納品庫対応テーブル66と、仮予約テーブル67と、物品有無テーブル68と、優先納品庫テーブル69と、を含んでいる。納品庫対応テーブル66は、受取者IDと、事業者IDと、納品IDと、ストッカ番号と、納品庫番号と、解錠コードと、を対応付けたテーブルである。受取者IDは、受取者20を識別可能な情報である。なお、受取者を識別可能な情報であればよく、例えば受取者IDの代わりに受取者のメールアドレスなどを対応付けてもよい。事業者IDは、事業者(ここでは事業者A,B)を識別可能な情報である。納品IDは、納品関連システム5a,5bにおける物品17の発注や配送を識別可能な情報である。ストッカ番号は、複数のストッカ40の中のいずれのストッカ40かを特定可能な情報である。納品庫番号は、ストッカ40の中のいずれの納品庫45かを特定可能な情報である。解錠コードは、受取者20が物品17を受け取る際に納品庫45を解錠するための情報(受取時解錠コード)である。仮予約テーブル67は、納品庫番号が対応付けられていない点以外は、納品庫対応テーブル66と同様の情報を対応付けたテーブルである。物品有無テーブル68は、ストッカ番号と、納品庫番号と、納品庫45内の物品の有無を表す物品有無と、を対応付けたテーブルである。なお、納品庫45内の物品有無は、物品センサ48による物品の有無の検出に基づく情報であり、親装置61が子装置70から取得した情報である。優先納品庫テーブル69は、ストッカ番号と、納品庫番号と、事業者IDと、を対応付けたテーブルである。優先納品庫テーブル69は、複数の納品庫45の各々に関して、事業者に優先的に使用可能に割り当てられた納品庫(優先納品庫とも称する)であるか否か、及び優先納品庫である場合にはいずれの事業者に割り当てられているか、を特定可能なテーブルである。なお、図2の優先納品庫テーブル69において事業者IDが「-」となっている納品庫45は、いずれの事業者に対しても優先的に使用可能に割り当てられていない納品庫45(フリー納品庫とも称する)であることを表す。本実施形態では、第1ストッカ41に設けられた複数の納品庫45の各々は、事業者Aの優先納品庫,事業者Bの優先納品庫,及びフリー納品庫のいずれかであるものとした。また、第1ストッカ41に設けられた複数の納品庫45は、事業者Aの優先納品庫,事業者Bの優先納品庫,及びフリー納品庫をそれぞれ1以上含むものとした。また、図示は省略するが、管理情報65には、複数の受取者20の受取者IDと、複数の受取者20のメールアドレスとを対応付けた受取者情報テーブルも含まれている。
複数の子装置70は、親装置61に対するクライアントとして構成されている。本実施形態では、ストッカ管理装置60は2台の子装置70(第1,第2子装置71,72)を備えている。第1子装置71は、第1ストッカ41を管理する装置であり、第1ストッカ41のうち納品庫45と同様の箱状の1室(機器保管庫)内に配置されている。第1子装置71は、子制御部82と、記憶部83と、通信部84とを備えている。子制御部82は、CPU,ROM及びRAMなどにより構成され装置全体の制御を司る。記憶部83は、処理プログラムなどの各種アプリケーションプログラムや、第1ストッカ41の管理情報85などの各種データを記憶している。通信部84は、ネットワーク2に接続されて、他の機器と双方向の通信を行う。第1子装置71は、第1ストッカ41の表示操作部54に表示信号を出力して表示操作部54に情報を表示させたり、第1ストッカ41の表示操作部54から操作信号を入力したり、第1ストッカ41の読取機55,56が読み取ったコード情報を入力したりする。また、第1子装置71は、第1ストッカ41のロック機構47に制御信号を出力して納品庫45の施錠及び解錠を制御したり、第1ストッカ41の物品センサ48及び開閉センサ49からの検出信号を入力して納品庫45内の物品の有無や扉46の開閉を検出したりする。第2子装置72は、第2ストッカ42を管理する装置であり、第1子装置71と同様に第2ストッカ42の機器保管庫内に配置されている。図示は省略するが、第2子装置72は、第1子装置71と同様に子制御部82と、管理情報85などを記憶する記憶部83と、通信部84と、を備えている。
第1子装置71の記憶部83に記憶された管理情報85は、自身が管理する第1ストッカ41の情報のみを含む点以外は親装置61の納品庫対応テーブル66,仮予約テーブル67,物品有無テーブル68,及び優先納品庫テーブル69と同様のテーブル、すなわち図3に示す納品庫対応テーブル86,仮予約テーブル87,物品有無テーブル88,及び優先納品庫テーブル89を含んでいる。第2子装置72の記憶部83に記憶された管理情報85も、同様に自身が管理する第2ストッカ42の情報のみを含む各テーブルを含んでいる。なお、親装置61は、管理情報65の納品庫対応テーブル66及び仮予約テーブル67の情報に変更が生じると、対応するストッカ40を管理する子装置70に変更後の情報を送信する。同様に、子装置70は、管理情報85の納品庫対応テーブル86,仮予約テーブル87及び物品有無テーブル88の情報に変更が生じると、親装置61に変更後の情報を送信する。そのため、親装置61の管理情報65と複数の子装置70の管理情報85とは、情報の同期が取られている。
続いて、こうして構成されたストッカシステム1及び納品関連システム5a,5bの動作について説明する。受取者20は、携帯端末21を操作してウェブサイト15aにアクセスし、希望する物品17,自身の受取者ID,受け渡しを希望するストッカ40のストッカ番号などを入力して、事業者Aに対して物品17の発注を行う。発注が行われると、納品関連システム5aの事業者PC12aは入力された情報を取得し、発注を管理する納品IDを付してこれらの発注情報を管理する。また、事業者PC12aは、事業者Aの事業者IDと、発注情報のうち受取者ID,納品ID及び受渡希望のストッカ40のストッカ番号と、を含む納入先決定要求を親装置61に送信する。また、差出人は、携帯端末を操作してウェブサイト15bにアクセスし、配送を希望する受取者20の受取者ID,受取者20への受け渡しを希望するストッカ40のストッカ番号などを入力して、事業者Bに対して物品17の配送の依頼を行う。依頼が行われると、納品関連システム5bの事業者PC12bは入力された情報を取得し、配送を管理する納品IDを付してこれらの配送情報を管理する。また、事業者PC12bは、事業者Bの事業者IDと、配送情報のうち受取者ID,納品ID及び受渡希望のストッカ40のストッカ番号と、を含む納入先決定要求を親装置61に送信する。親装置61は、このように納品関連システム5a,5bの各々から物品17の納入先決定要求を入力すると、入力した納入先決定要求に基づいて、複数のストッカ40のうちいずれかのストッカ40を納入先ストッカに決定する処理を含む納入先決定処理を行う。図4は、親装置61の親制御部62により実行される納入先決定処理ルーチンの一例を表すフローチャートである。このルーチンは、記憶部63に記憶されており、親装置61の電源がONされると開始される。
このルーチンを開始すると、親制御部62は、まず、納品関連システム5から上述した納入先決定要求を受信(入力)するまで待つ(ステップS100)。納入先決定要求を入力すると、親制御部62は、入力した納入先決定要求に含まれる事業者IDに基づいて、いずれの事業者からの納入先決定要求であるかを判定する(ステップS105)。判定した事業者が事業者Aであった場合、親制御部62は、入力した納入先決定要求に基づいて納入先ストッカを決定する(ステップS110)。例えば、親制御部62は、納入先決定要求に含まれる受渡希望のストッカ40をそのまま納入先ストッカに決定する。続いて、親制御部62は、ステップS115~S130の処理を行って、納入先ストッカが備える複数の納品庫45の中から物品17の納入先となる納入先納品庫を決定する。具体的には、まず、親制御部62は、事業者Aに予め割り当てられた優先納品庫の中に空き納品庫があるか否かを調べる(ステップS115)。なお、空き納品庫とは、使用予定のない納品庫45であり、本実施形態では納品庫対応テーブル66に納品庫番号が記憶されていない納品庫45である。親制御部62は、優先納品庫テーブル69に基づいて事業者Aの優先納品庫の納品庫番号を調べ、さらにその納品庫番号が納品庫対応テーブル66に記憶されていないか否かを調べることで、事業者Aの優先納品庫の中に空き納品庫があるか否かを調べる。優先納品庫のうち1以上が空き納品庫であった場合には、親制御部62は、その空き納品庫のいずれかを納入先納品庫に決定する(ステップS120)。一方、事業者Aの優先納品庫がいずれも空き納品庫ではなかった場合には、親制御部62は、事業者A,Bのいずれの優先納品庫にも割り当てられていない納品庫45であるフリー納品庫の中に空き納品庫があるか否かを調べる(ステップS125)。すなわち、親制御部62は、優先納品庫テーブル69に基づいてフリー納品庫の納品庫番号を調べ、その納品庫番号が納品庫対応テーブル66に記憶されていないか否かを調べる。そして、フリー納品庫のうち1以上が空き納品庫であった場合には、親制御部62は、その空き納品庫のいずれかを納入先納品庫に決定する(ステップS130)。このように、親制御部62は、ステップS115~S130の処理を行うことで、空き納品庫のうち納入先決定要求に関連する事業者(ここでは、納入先決定要求を送信した事業者A)の優先納品庫を優先的に納入先納品庫に決定する。なお、ステップS125でフリー納品庫も全て空き納品庫ではなかった場合には、親制御部62は、ステップS110以降の処理を行う。すなわち、親制御部62は、納入先ストッカを他のストッカ40に変更して、変更後のストッカ40が備える納品庫45の中から納入先納品庫を決定する。納入先ストッカを変更する際には、例えば納入先決定要求に含まれる受渡希望のストッカ40に最も近い位置にあるストッカ40に変更してもよい。また、親制御部62は、ステップS125でフリー納品庫も全て空き納品庫ではなかった場合に、納入先ストッカの変更を行わずに納品関連システム5aに対してエラー通知を送信してもよい。この場合、納品関連システム5aは、受取者20の携帯端末21に発注のキャンセルや受渡希望のストッカ40を変更した新たな発注を行うよう通知してもよい。
ステップS120又はS130で納入先納品庫を決定すると、親制御部62は、決定した納入先ストッカのストッカ番号と、決定した納入先納品庫の納品庫番号と、納品庫対応テーブル66及び仮予約テーブル67に記憶済みのいずれの解錠コードとも異なる解錠コードと、ステップS100で入力した納入先決定要求に含まれる受取者ID,事業者ID及び納品IDと、を対応付けて納品庫対応テーブル66に記憶する(ステップS140)。また、親制御部62は、ストッカ番号と、納品庫番号と、納入先決定要求に含まれる納品IDと、を対応付けて事業者Aの事業者PC12aに送信する(ステップS145)。なお、ステップS145では、親制御部62は、納品庫番号については送信しなくてもよい。また、親制御部62は、ステップS100で受信した受渡希望のストッカ40をステップS110で納入先ストッカに決定した場合には、ステップS145の処理を省略してもよい。続いて、親制御部62は、ステップS140で記憶した解錠コードを表す二次元コードを含む解錠コード通知を、今回記憶した受取者IDのメールアドレスに送信して(ステップS150)、ステップS100以降の処理を実行する。なお、解錠コード通知には、決定した納入先ストッカや納入先納品庫の情報などが含まれていてもよい。
一方、ステップS105で判定した事業者が事業者Bであった場合、親制御部62は、入力した納入先決定要求に含まれる受渡希望のストッカ40をそのまま納入先ストッカに決定する(ステップS155)。続いて、親制御部62は、決定した納入先ストッカのストッカ番号と、納品庫対応テーブル66及び仮予約テーブル67に記憶済みのいずれの解錠コードとも異なる解錠コードと、ステップS100で入力した納入先決定要求に含まれる受取者ID,事業者ID及び納品IDと、を対応付けて仮予約テーブル67に記憶する(ステップS160)。なお、この処理は、納入先納品庫を決定しない点、及び仮予約テーブル67に記憶する点以外は、ステップS140の処理と同様である。また、親制御部62は、ストッカ番号と、納入先決定要求に含まれる納品IDと、を対応付けて事業者Bの事業者PC12bに送信し(ステップS165)、ステップS160で記憶した解錠コードを表す二次元コードを含む解錠コード通知を、今回記憶した受取者IDのメールアドレスに送信して(ステップS170)、ステップS100以降の処理を実行する。なお、解錠コード通知には、決定した納入先ストッカの情報などが含まれていてもよい。
このように、納入先決定処理ルーチンでは、親制御部62は、納入先決定要求に関する事業者がいずれの事業者であるかによって、異なる処理を行う。具体的には、納入先決定要求を事業者Aから受信した場合には、親制御部62は、納入先ストッカを決定するだけでなく納入先納品庫も決定して、決定した情報を納品庫対応テーブル66に記憶する。一方、納入先決定要求を事業者Bから受信した場合には、親制御部62は、納入先ストッカを決定するが納入先納品庫は決定せずに、決定した情報を仮予約テーブル67に記憶する。なお、納入先決定要求を事業者Bから受信した場合には、親制御部62は納入先納品庫を決定せず、空き納品庫も調べないため、空き納品庫がないストッカ40であっても納入先ストッカに決定可能である。また、仮予約テーブル67には、ステップS160で記憶する互いに対応付けられた1組のデータ(1回の納入先決定要求に伴い記憶されるデータ)を、納入先ストッカが有する納品庫45の数以上に記憶しておくことが許容される。
一方、事業者Aの商店10aの店員は、事業者PC12aに記憶された発注情報やストッカシステム1から送信された納入先ストッカのストッカ番号などに基づいて、物品17の手配や配達者19に対する物品17の配送指示などを行う。なお、物品17には、上述した納品IDを表すバーコード18が付される。配達者19は、物品17を納入先ストッカ40に配送し、納品庫45に納入する。また、事業者Bの配達者19は、差出人から配送の対象となる物品17を受け取り、上述したを表すバーコード18を付す。そして、配達者19は、事業者PC12bに記憶された配送情報やストッカシステム1から送信された納入先ストッカのストッカ番号などに基づいて、物品17を納入先ストッカに配送し、納品庫45に納入する。事業者A,Bの配達者19が納品庫45への物品17の納入を行う際、納入先ストッカを管理する子装置70は、配達者19の操作に基づいて納入先納品庫の解錠などを行う納入時処理を行う。図5は、子装置70の子制御部82により実行される納入時処理ルーチンの一例を表すフローチャートである。このルーチンは、記憶部83に記憶されており、例えばこれから物品17の納入を行う旨を表示操作部54を介して操作者(通常は配達者19)から入力すると、実行される。
このルーチンを開始すると、子制御部82は、まず、事業者ID入力画面を表示操作部54に表示する(ステップS200)。ここで、配達者19は、自分が正規配達者であることを証明するために、自身の事業所の事業所IDを表す二次元コードが付された配達者カードを持参しているものとした。この配達者カードを読取機55にかざすよう促す画面を表示操作部54に表示する。続いて、子制御部82は、読取機55を介して事業者IDを入力するまで待ち(ステップS205)、入力された事業者IDに基づいて配達者19がいずれの事業者に関連するかを特定する(ステップS210)。子制御部82は、入力された事業者IDが予め記憶部83に記憶された複数の事業者(ここでは事業者A,B)のいずれかの事業者IDと一致するか否かによって、これらの判定を行う。
ステップS210で配達者19が事業者Aに関連すると判定した場合には、子制御部82は、読取機56を介してバーコード18のコード情報を入力するまで待ち(ステップS220)、入力されたコード情報に含まれる納品IDを取得する。
続いて、子制御部82は、取得した納品IDに対応する納品庫番号を納品庫対応テーブル66を用いて調べ、その納品庫番号で特定される納品庫45(すなわち納入先納品庫)を解錠する(ステップS230)。
その後、子制御部82は、物品センサ48及び開閉センサ49の検出状況に基づいて、解錠した納品庫45への物品17の納入完了を検出するまで待つ(ステップS235)。例えば、子制御部82は、物品センサ48が納品庫45内の物品ありを検出し且つ開閉センサ49が納品庫45の扉46の閉扉を検出したときに、納入完了と判定する。納入完了を検出すると、子制御部82は、納品庫45を施錠して(ステップS240)、本ルーチンを終了する。なお、物品センサ48が納品庫45内の物品ありを検出すると、記憶部83に記憶された物品有無テーブル88における物品の有無が変更され、親装置61の物品有無テーブル68にも変更が反映される。
一方、ステップS210で配達者19が事業者Bに関連すると判定した場合には、子制御部82は、読取機56を介してバーコード18のコード情報を入力するまで待ち(ステップS250)、入力されたコード情報に含まれる納品IDを取得する。
続いて、子制御部82は、ステップS115B~S130Bの処理を行って、納入先ストッカが備える複数の納品庫45の中から物品17の納入先となる納入先納品庫を決定する。ステップS115B~S130Bの処理は、図4のステップS115~S130と同様に行われる。すなわち、子制御部82は、事業者Bに予め割り当てられた優先納品庫の中に空き納品庫があるか否かを、納品庫対応テーブル86及び物品有無テーブル88に基づいて調べる(ステップS115B)。優先納品庫のうち1以上が空き納品庫であった場合には、子制御部82は、その空き納品庫のいずれかを納入先納品庫に決定する(ステップS120B)。一方、事業者Bの優先納品庫がいずれも空き納品庫ではなかった場合には、子制御部82は、フリー納品庫の中に空き納品庫があるか否かを調べ(ステップS125B)、フリー納品庫のうち1以上が空き納品庫であった場合には、その空き納品庫のいずれかを納入先納品庫に決定する(ステップS130B)。なお、ステップS125Bでフリー納品庫の中にも空き納品庫がなかった場合には、物品17の納入ができない旨のエラー表示を表示操作部54に表示して(ステップS260)、本ルーチンを終了する。この場合は、配達者19は物品17を事業所10bに持ち帰るなどして、改めて配送を行う。なお、配達者19は、事業者PC12bを用いて事業所10bから各納品庫45の空き状況を予め確認した上で物品17を納入先ストッカまで配送してもよい。こうすれば、物品17の納入ができず持ち帰らなければならないという事態を生じにくくできる。
このように、事業者Aが配送する物品17については納入先ストッカを決定する際に納入先納品庫も決定される(納品庫決定方式Aと称する)のに対し、事業者Bが配送する物品17の納入先納品庫は、配達者19が物品17を納入先ストッカまで配送したときに初めて決定される(納品庫決定方式Bと称する)。納品庫決定方式Bでは、配達者19が物品17を納品庫45に納入しようとするタイミングで空き納品庫が存在すれば、その空き納品庫を納入先納品庫に決定して納入を行うことができ、納品庫45の利用効率を高めることができる。一方、納品庫決定方式Aでは、納入先ストッカを決定する際に納入先納品庫も決定しておくため、配達者19が納入しようとするタイミングで空き納品庫が不足して納入ができないという事態を回避できる。事業者Aが配送する物品17には食品が含まれることから、事業者Aは納品庫決定方式Aを採用している。一方、事業者Bが配送する物品17は主に書類であり配達者19が持ち帰って再度配送しても問題が生じにくいことから、納品庫45の利用効率向上を優先して納品庫決定方式Bを採用している。
ステップS120B又はS130Bで納入先納品庫を決定すると、子制御部82は、納品庫対応テーブル86及び仮予約テーブル87を更新する(ステップS265)。具体的には、子制御部82は、ステップS250で取得した納品IDに対応する情報(受取り者ID,事業者ID,解錠コード)を仮予約テーブル87の中から読み出し、それらの情報に納入先納品庫の納品庫番号を対応付けて納品庫対応テーブル86に記憶する。また、仮予約テーブル87からはそれらの情報を削除する。親装置61の納品庫対応テーブル66及び仮予約テーブル67にも、これらの更新が反映される。
続いて、子制御部82は、決定した納入先納品庫を解錠する(ステップS270)。
その後、子制御部82は、解錠した納品庫45への物品17の納入完了を検出するまで待ち(ステップS275)、納入完了を検出すると、納品庫45を施錠して(ステップS280)、本ルーチンを終了する。なお、物品センサ48が納品庫45内の物品ありを検出すると、記憶部83に記憶された物品有無テーブル88における物品の有無が変更され、親装置61の物品有無テーブル68にも変更が反映される。
なお、親制御部62は、物品有無テーブル68のいずれかの納品庫番号に対応する物品有無が物品なしから物品ありに変更になったことを検出すると、納品庫対応テーブル66でその納品庫45に対応する受取者IDのメールアドレスに、納入完了メールを送信する。
納入完了メールを携帯端末21で受信した受取者20は、納入先ストッカに向かい、納品庫45に納入された物品17を受け取る。このとき、納入先ストッカを管理する子装置70は、受取者20の操作に基づいて納入先納品庫の解錠などを行う受取時処理を行う。図6は、子装置70の子制御部82により実行される受取時処理ルーチンの一例を表すフローチャートである。このルーチンは、記憶部83に記憶されており、例えばこれから物品17の受取を行う旨を表示操作部54を介して操作者(通常は受取者20)から入力すると、実行される。
このルーチンを開始すると、子制御部82は、まず、受取者20に解錠コードの入力を促す図示しない解錠コード入力画面を表示操作部54に表示する(ステップS300)。受取者20は、上述した解錠コード通知に含まれる解錠コード(ここでは二次元コード)を例えば携帯端末21の表示画面に表示させて、読取機55に読み取らせる。子制御部82は、解錠コードを読取機55を介して入力するまで待ち(ステップS310)、納品庫対応テーブル66において解錠コードに対応付けられた納品庫番号で特定される納品庫45(すなわち納入先納品庫)を解錠する(ステップS320)。続いて、子制御部82は、物品センサ48及び開閉センサ49の検出状況に基づいて、解錠した納品庫45において物品17の受取完了を検出するまで待つ(ステップS330)。例えば、子制御部82は、物品センサ48が納品庫45内の物品なしを検出し且つ開閉センサ49が納品庫45の扉46の閉扉を検出したときに、受取完了と判定する。受取完了を検出すると、子制御部82は、受取完了した納品庫45を施錠し(ステップS340)、納品庫対応テーブル86を更新して(ステップS350)、本ルーチンを終了する。具体的には、子制御部82は、受取完了した納品庫45に関する情報(解錠コード等との対応付け)を納品庫対応テーブル86から削除する。この更新は、親装置61の納品庫対応テーブル66にも反映される。
ここで、本実施形態の構成要素と本発明の構成要素との対応関係を明らかにする。本実施形態のステップS100,S110,及びS155を行う親制御部62が本発明の納入先ストッカ決定部に相当する。また、優先納品庫テーブル69を記憶する記憶部63及び優先納品庫テーブル89を記憶する記憶部83が優先納品庫情報記憶部に相当し、図4のステップS115~S130を行う親制御部62及び図5のステップS115B~S130Bを行う子制御部82が納入先納品庫決定部に相当する。
以上詳述した本実施形態のストッカシステム1では、ストッカ管理装置60は、各々が複数の納品庫45を備えた複数のストッカ40を管理する。また、親制御部62は、互いに異なる事業者が有する複数の納品関連システム5(ここでは納品関連システム5a,5b)の各々から物品17の納入先決定要求を入力可能である。そして、親制御部62は、入力した納入先決定要求に基づいて複数のストッカ40のうちいずれかのストッカを納入先ストッカに決定する。このように、ストッカ管理装置60(特に親装置61)は、互いに異なる事業者が有する複数の納品関連システム5の各々と接続されて、複数の事業者と複数のストッカ40との間の情報のやり取りの仲介を行う。したがって、複数のストッカ40を利用する事業者が複数存在する場合に、各事業者からの物品17の納入先ストッカを適切に決定できる。
また、親装置61は、事業者IDと、事業者が優先的に使用可能な納品庫45(優先納品庫)を特定可能な納品庫番号と、を対応付けた優先納品庫テーブル69を記憶する記憶部63を備えている。さらに、親制御部62は、納入先ストッカが備える複数の納品庫45の中から物品17の納入先納品庫を決定するにあたり、優先納品庫テーブル69の中に、その物品17に関連する事業者の事業者IDに対応付けられた納品庫番号が含まれる場合には、その納品庫番号で特定される納品庫45を優先的に納入先納品庫に決定する。そのため、複数のストッカ40を利用する事業者が複数存在する場合に、各事業者からの物品17の納入先ストッカだけでなく納入先納品庫についても適切に決定できる。しかも、優先納品庫テーブル69を用いることにより、優先的に使用可能な納品庫45を事業者に割り当てておくことができるから、割り当てられた事業者については納入先に決定可能な空き納品庫が全くないという状態を生じにくくできる。子装置70についても同様である。
さらに、親制御部62は、納入先ストッカのうち物品17の納入先納品庫を決定するにあたり、優先納品庫テーブル69の中でその物品17に関連する事業者の事業者IDに対応付けられた納品庫番号で特定される納品庫45のいずれもが、納入先に決定可能な空き納品庫でない場合には、優先納品庫テーブル69に基づいて、納入先ストッカの納品庫45のうちいずれの事業者情報とも対応付けられていない空き納品庫(フリー納品庫の中の空き納品庫)のうちいずれかの納品庫45を納入先納品庫に決定する。そのため、例えば優先的に使用可能に割り当てられた納品庫45以外への物品17の納入を許可しない場合と比べて、納入先に決定可能な空き納品庫が全くないという状態をより生じにくくできる。子制御部82についても同様である。
なお、本発明は上述した実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。
上述した実施形態では、優先納品庫テーブル69では、事業者A,Bのいずれについても、優先納品庫テーブル69,89において予め優先納品庫が割り当てられていたが、これに限られない。例えば、事業者Bが、優先納品庫を1つも割り当てられていなくてもよい。この場合、子制御部82は、図5のステップS115Bで事業者Bの優先納品庫がそもそも存在しないため否定判定をして、ステップS125Bでフリー納品庫の中の空き納品庫があれば、ステップS130Bでその空き納品庫のいずれかを納入先納品庫に決定する。すなわち、子制御部82は、優先納品庫テーブル89の中に事業者Bの事業者IDに対応付けられた納品庫番号が含まれない場合には、優先納品庫テーブル89に基づいて納入先ストッカの納品庫45のうちいずれの事業者ID情報とも対応付けられていない空き納品庫のうちいずれかの納品庫45を優先的に納入先納品庫に決定する。こうすれば、優先納品庫が割り当てられていない事業者が、他の事業者の優先納品庫を使用してしまうことを抑制できる。
上述した実施形態では、納入先納品庫のうち、事業者に割り当てられた優先納品庫及びフリー納品庫のいずれについても空き納品庫がない場合(ステップS125,S125Bで否定判定)には、親制御部62及び子制御部82は納入先納品庫を決定しないものとした。すなわち、親制御部62及び子制御部82は、他の事業者に割り当てられた優先納品庫については、納入先納品庫には決定しないものとした。ただし、これに限らず、事業者に割り当てられた優先納品庫及びフリー納品庫のいずれについても空き納品庫がない場合には、他の事業者に割り当てられた優先納品庫の中に空き納品庫があるか否かを調べて、空き納品庫がある場合にはその中のいずれかを納入先納品庫に決定してもよい。
上述した実施形態では、親制御部62及び子制御部82は、事業者に割り当てられた優先納品庫の中に空き納品庫がない場合には、フリー納品庫に空き納品庫があればその中のいずれかを納入先納品庫に決定したが、これに限られない。例えば、親制御部62及び子制御部82は、事業者に割り当てられた優先納品庫の中に空き納品庫がない場合には、納入先納品庫を決定しなくてもよい。こうすれば、フリー納品庫をなるべく空けておくことができ、例えば優先納品庫が1つも割り当てられていない他の事業者がフリー納品庫を使用しやすくなる。
上述した実施形態では、記憶部63,83には優先納品庫テーブル69,89が記憶されていたが、記憶されていなくてもよい。すなわち、いずれの事業者についても優先納品庫が割り当てられておらず、ストッカ40が備える複数の納品庫45の全てがフリー納品庫であってもよい。
上述した実施形態では、事業者A,Bが異なる納品庫決定方式A,Bを採用していたが、特にこれに限られない。また、納品庫決定方式Bにおいて、物品17の納入後に受取者20が受け取らずに所定期間(例えば3日など)が経過すると、子制御部82は配達者19に物品17を回収させてもよい。例えば、子制御部82は、納品庫対応テーブル86において物品17が納入された日時も対応付けて記憶しておき、その日時から所定期間が過ぎたか否かに応じて、回収すべき物品17が納入された納品庫45を特定しても良い。この場合、子制御部82は、図5のステップS210で事業者を特定した後に、その事業者に対応付けられており且つ回収すべき物品17が納入された納品庫45がある場合には、その納品庫45を解錠して配達者19に回収を促してもよい。
上述した実施形態では、納入先納品庫が決定されてから物品17が受け取られるまでの間は納品庫対応テーブル66,86に情報が記憶され、その間は納入先納品庫は空き納品庫ではないと判定されるが、これに限られない。例えば、納品庫対応テーブル66,86に、納入先納品庫の使用期間に関する情報も対応付けておいてもよい。この場合、親制御部62及び子制御部82は、納品庫対応テーブル86に納品庫番号が対応付けられている納品庫45であっても、対応する使用期間以外は空き納品庫であるとみなしてもよい。こうすれば、使用期間も考慮して、適切に納入先納品庫を決定することができる。
上述した実施形態において、複数のストッカ40のうち1以上が他のストッカ40と異なる所有者に所有されていてもよい。また、物品17に関連する事業者がストッカ40を所有していてもよい。例えば、事業者Aが第1ストッカ41を所有し、事業者Bが第2ストッカ42を所有していてもよい。このような場合、例えば、記憶部63が、複数のストッカ40のいずれかを特定可能なストッカ情報(例えばストッカ番号)とそのストッカ情報で特定されるストッカ40の所有者とを対応づけたストッカ所有者情報を記憶していてもよい。そして、親制御部62は、納入先決定要求に基づいて納入先ストッカを決定するにあたり、ストッカ所有者情報に基づいて、複数のストッカ40のうち、納入先決定要求に含まれる事業者IDで特定される事業者が所有するストッカ40を優先的に納入先ストッカに決定してもよい。なお、親制御部62は、納入先決定要求に基づいて特定される事業者が所有するストッカ40のいずれにも空き納品庫がない場合に、他の事業者が所有するストッカ40のいずれかを納入先ストッカに決定してもよい。また、親制御部62は、ストッカ40の使用履歴に基づく情報を事業者にフィードバックしてもよい。例えば、子制御部82は、ストッカ40の使用履歴に基づいて、新たなストッカ40の増設を推奨する旨を事業者の納品関連システム5に送信してもよい。より具体的には、例えば、納入先決定要求に基づいて特定される事業者が所有するストッカ40のいずれにも空き納品庫がなく他の事業者が所有するストッカ40のいずれかを納入先ストッカに決定した場合、その回数をカウントしておき、回数が所定の閾値を超えた場合に事業者の納品関連システム5にストッカ40の増設を推奨する旨を出力してもよい。
上述した実施形態では、複数のストッカ40及び子装置70はいずれも同様の装置としたが、これに限られない。例えば、第1ストッカ41及び第1子装置71と第2ストッカ42及び第2子装置72とで、製造者や仕様などが異なっていてもよい。このような場合、例えば子装置70の仕様によっては納品関連システム5と直接情報のやり取りができない場合がある。このような場合でも、親装置61が納品関連システム5とストッカ40及び子装置70との間の情報のやり取りの仲介を行うことで、他とは仕様の異なる子装置70を備えたストッカ40であっても納入先ストッカに決定可能になるなど、納入先ストッカを適切に決定しやすくなる。
上述した実施形態では、図4のルーチンは親制御部62が実行し、図5,6のルーチンは子制御部82が実行したが、ストッカ管理装置60が全体としてこれらのルーチンを行うことができればよい。例えば子装置70と親装置61とで図4~6のいずれかのルーチンを分担して実行したり、親制御部62が図5,6のルーチンを実行したりしてもよい。
上述した実施形態では、ストッカ管理装置60は親装置61と複数の子装置70とを備えていたが、これに限られない。例えば、複数の子装置70を備えず親装置61がロック機構47,物品センサ48,開閉センサ49,表示操作部54,読取機55,56などと情報のやり取りを行ってもよい。あるいは、親装置61を備えず複数の子装置70がそれぞれ独立したストッカ管理装置60として構成されていてもよい。また、子装置70はストッカ40のうち納品庫45と同様の箱状の1室内に配置されていたが、これに限られない。例えば、ストッカ40とは別の場所に対応する子装置70が配置されていてもよい。1つの子装置70が複数のストッカ40を管理してもよい。