次に、本発明の実施形態について、図面を用いて説明する。図1は、本発明の一実施形態であるストッカシステム1の構成の概略説明図である。図2は、親装置61の記憶部63に記憶された管理情報65の説明図である。図3は、第1子装置71の記憶部83に記憶された管理情報85の説明図である。ストッカシステム1は、供給者側システム5と、受取者20の携帯端末21と、複数のストッカ40と、親装置61及び複数の子装置70を備えたストッカ管理装置60と、を備えている。供給者側システム5の店舗PC12,携帯端末21,親装置61,及び複数の子装置70は、インターネットなどのネットワーク2に接続されている。
供給者側システム5は、受取者20に商品17を販売するシステムであり、例えばスーパーなどの商店10と、商店10に配置され供給者側システム5を管理するコンピュータである店舗PC12と、商店10によって運営されるネットスーパーのウェブサイト15と、を備えている。ウェブサイト15は、ネットワーク2を介して例えば店舗PC12や携帯端末21からアクセス可能になっている。
携帯端末21は、商品17の発注及び受け取りを行う受取者20が所持する機器であり、例えばスマートフォンなどの携帯可能なコンピュータとして構成されている。携帯端末21は、端末制御部22と、記憶部23と、通信部24と、表示操作部25と、を備えている。端末制御部22は、CPU及びRAMなどにより構成され装置全体の制御を司る。記憶部23は、各種アプリケーションプログラムや各種データを記憶している。通信部24は、無線により図示しない基地局などの送受信設備を介してネットワーク2に接続されて、他の機器と双方向の通信を行う。表示操作部25は、タッチパネル及び操作ボタンなどを備えており、受取者20への各種情報の表示や受取者20からの各種操作の入力を行う。
複数のストッカ40は、供給者側システム5から配送される商品17の受取者20への受け渡しに用いられるものである。本実施形態では、ストッカシステム1は3台のストッカ40(第1〜第3ストッカ41〜43)を備えている。複数のストッカ40の各々は、施錠可能な複数(本実施形態では30個)の納品庫45と、表示操作部54と、読取機55,56と、追加用バーコード58と、を備えている。納品庫45の各々は、商品17等の物品を収容可能な内部空間を有しており、前面の扉46と、扉46の施錠及び解錠を行うロック機構47と、納品庫45内の物品の有無を検出する物品センサ48と、扉46の開閉を検出する開閉センサ49と、を備えている。表示操作部54は、ストッカ40の前面に配置されたタッチパネルなどを備えており、商品17の配達者19及び受取者20への各種情報の表示や、配達者19及び受取者20からの各種操作の入力を行う。読取機55は、受取者20が納品庫45の解錠に用いるQRコード(登録商標)を読み取るQRコードリーダであり、ストッカ40の前面の表示操作部54付近に配置されている。読取機56は、商店10から配送される商品17に付されたバーコード18を読み取る手持ち式のバーコードリーダである。追加用バーコード58は、商品17の納品時に納品庫45が不足した場合に配達者19が納品庫45の追加を指示する際に用いるものである。ストッカ40は、多数の受取者20が利用可能であり、オフィス、コンビニエンスストア、工場、駅、学校、マンションなど様々な場所に配置することができる。
ストッカ管理装置60は、複数のストッカ40を管理する装置であり、親装置61と、複数の子装置70と、を備えたシステムとして構成されている。親装置61は、複数の子装置70に対するサーバーとして構成されており、親制御部62と、記憶部63と、通信部64と、を備えている。親制御部62は、CPU,ROM及びRAMなどにより構成され装置全体の制御を司る。記憶部63は、処理プログラムなどの各種アプリケーションプログラムやストッカ40の管理情報65などの各種データを記憶している。通信部64は、ネットワーク2に接続されて、他の機器と双方向の通信を行う。
図2に示すように、記憶部63に記憶された管理情報65は、納品庫対応テーブル67と、物品有無テーブル68と、を含んでいる。納品庫対応テーブル67は、会員IDと、伝票IDと、複数のストッカ40と、納品庫番号と、解錠コードと、を対応付けたテーブルである。会員IDは、予め供給者側システム5から発行され受取者20を識別可能な情報である。伝票IDは、供給者側システム5に対する商品17の発注を識別可能な情報である。納品庫番号は、ストッカ40の中のいずれの納品庫45かを特定可能な情報である。本実施形態では、各ストッカ40はそれぞれ30個の納品庫45を備えており、30個の納品庫45にはストッカ40の正面視で左上から右下に向かって1番〜30番の納品庫番号が設定されているものとした。解錠コードは、商品17の受取時に納品庫45を解錠するための情報(受取時解錠コード)である。物品有無テーブル68は、複数のストッカ40と、納品庫番号(1番〜30番)と、納品庫45内の物品の有無を表す物品有無と、を対応付けたテーブルである。なお、納品庫45内の物品有無は、物品センサ48による物品の有無の検出に基づく情報であり、親装置61が子装置70から取得した情報である。また、図示は省略するが、管理情報65には、複数の受取者20の会員IDと、複数の受取者20のメールアドレスとを対応付けた会員情報テーブルも含まれている。
複数の子装置70は、親装置61に対するクライアントとして構成されている。本実施形態では、ストッカ管理装置60は3台の子装置70(第1〜第3子装置71〜73)を備えている。第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が読み取ったQRコードやバーコード18の情報を入力したりする。また、第1子装置71は、第1ストッカ41のロック機構47に制御信号を出力して納品庫45の施錠及び解錠を制御したり、第1ストッカ41の物品センサ48及び開閉センサ49からの検出信号を入力して納品庫45内の物品の有無や扉46の開閉を検出したりする。第2子装置72,第3子装置73は、それぞれ第2ストッカ42,第3ストッカ43を管理する装置であり、第1子装置71と同様に第2ストッカ42,第3ストッカ43のうち納品庫45と同様の箱状の1室内に配置されている。図示は省略するが、第2子装置72及び第3子装置73は、第1子装置71と同様に子制御部82と、管理情報85などを記憶する記憶部83と、通信部84と、を備えている。
第1子装置71の記憶部83に記憶された管理情報85は、自身が管理する第1ストッカ41以外のストッカ40の情報を含まない点以外は親装置61の納品庫対応テーブル67及び物品有無テーブル68と同様のテーブルを含んでいる。具体的には、図3に示すように、管理情報85は、第1ストッカ41の納品庫45を特定可能な納品庫番号と会員IDと伝票IDと解錠コードとを対応付けた納品庫対応テーブル87と、第1ストッカ41の納品庫45の各々について納品庫番号と納品庫45内の物品有無とを対応付けた物品有無テーブル88と、を含んでいる。第2子装置72,第3子装置73の記憶部83に記憶された管理情報85も、同様に自身が管理する第2ストッカ42,第3ストッカ43に関する納品庫対応テーブル87及び物品有無テーブル88を含んでいる。なお、親装置61は、管理情報65の納品庫対応テーブル67の情報に変更が生じると、対応するストッカ40を管理する子装置70に変更後の情報を送信する。同様に、子装置70は、管理情報85の納品庫対応テーブル87及び物品有無テーブル88の情報に変更が生じると、親装置61に変更後の情報を送信する。そのため、親装置61の管理情報65と複数の子装置70の管理情報85とは、情報の同期が取られている。例えば、図2の納品庫対応テーブル67に含まれる第1ストッカ41に関するデータ67a〜67dと図3のデータ87a〜87dとはそれぞれ同期が取られた情報であり、対応するデータ間で会員ID,伝票ID,納品庫番号,解錠コードは同じになっている。
続いて、こうして構成されたストッカシステム1の動作について説明する。まず、受取者20は、携帯端末21を操作してウェブサイト15にアクセスし、希望する商品17,自身の会員ID,受け取りを希望するストッカ40などを入力して、商品17の発注を行う。発注が行われると、店舗PC12は入力された情報を取得し、発注を管理する伝票IDを付してこれらの発注情報を管理する。また、店舗PC12は、発注情報のうち会員ID,伝票ID及び受取希望のストッカ40の情報を含む納品庫決定要求を親装置61に送信する。親装置61は、店舗PC12の納品庫決定要求に基づいて、商品17の配送先の納品庫45の割り当て(使用する納品庫45の決定)を行う発注時処理を行う。図4は、親装置61の親制御部62により実行される発注時処理ルーチンの一例を表すフローチャートである。このルーチンは、記憶部63に記憶されており、親装置61の電源がONされると開始される。
このルーチンを開始すると、親制御部62は、まず、店舗PC12から上述した納品庫決定要求を受信(入力)するまで待つ(ステップS100)。納品庫決定要求を受信すると、親制御部62は、受信した納品庫決定要求に含まれる受取希望のストッカ40について空き納品庫45すなわち使用予定のない納品庫45の有無を判定する(ステップS110)。親制御部62は、受取希望のストッカ40が備える複数の納品庫45のうち、納品庫対応テーブル67に納品庫番号が記憶されていない納品庫45があるか否かによって、空き納品庫45の有無を判定する。空き納品庫45がないとき、すなわち受取希望のストッカ40が備える複数の納品庫45のいずれの納品庫番号も納品庫対応テーブル67に記憶されているときには、親制御部62は、店舗PC12にその旨を報知する情報を送信して(ステップS120)、ステップS100以降の処理を実行する。なお、店舗PC12は、受取希望のストッカ40の中に空き納品庫45がない旨の情報を親装置61から受信すると、例えば受取者20の携帯端末21にその旨の情報を送信する。受取者20は、発注のキャンセルや受取希望のストッカ40の変更を行う。受取希望のストッカ40が変更された場合は、店舗PC12は変更後の受取希望のストッカ40の情報を含む納品庫決定要求を親装置61に送信する。
ステップS110で空き納品庫45があるときには、親制御部62は、ステップS100で受信した納品庫決定要求に含まれる受取希望のストッカ40を配送先のストッカ40に決定する(ステップS130)。続いて、親制御部62は、受信した納品庫決定要求が記憶部63に記憶された納品庫対応テーブル67の中のいずれかの納品庫番号に関連するか否かを判定する(ステップS140)。本実施形態では、親制御部62は、納品庫決定要求に含まれる会員IDが、納品庫対応テーブル67の中の配送先のストッカ40のいずれかの納品庫番号に対応する会員IDと同じである場合に、納品庫決定要求がその納品庫番号に関連すると判定する。例えば、配送先のストッカ40が第1ストッカ41であり、図2に示す納品庫対応テーブル67のうち第1ストッカ41に関するデータがデータ67aだけである場合を考える。この場合に、例えばデータ66bを含む納品庫決定要求を受信したとすると、納品庫対応テーブル67の第1ストッカ41に関するデータには会員ID“BBBB”と同じ会員IDが存在しない。そのため、親制御部62は受信した納品庫決定要求が納品庫対応テーブル67のいずれの納品庫番号にも関連しないと判定する。一方、データ66cを含む納品庫決定要求を受信したとすると、受信した納品庫決定要求に含まれる会員ID“AAAA”は、納品庫対応テーブル67のデータ67aの納品庫番号“16”に対応する会員IDと同じである。そのため、親制御部62は、納品庫決定要求が納品庫番号“16”に関連すると判定する。なお、既に納品庫対応テーブル67に記憶済みの会員IDと同じ会員IDを含む納品庫決定要求が店舗PC12から送信されるのは、例えば受取者20が商品17を発注した後に別の商品17を追加で発注した場合である。
ステップS140で納品庫決定要求が納品庫対応テーブル67のいずれの納品庫番号にも関連しないときには、親制御部62は、空き納品庫45のうちいずれかの納品庫を配送先の納品庫45に決定する納品庫決定処理を行う(ステップS150)。この納品庫決定処理では、親制御部62は、配送先のストッカ40の空き納品庫のうち、納品庫対応テーブル67に記憶済みの納品庫番号で特定される納品庫45の左右に隣接しない納品庫を、優先的に配送先の納品庫45に決定する。すなわち、親制御部62は、納品庫対応テーブル67に記憶済みの納品庫45の各々について、納品庫45の左右に隣接する空き納品庫ができるだけ空きのまま残るように、配送先の納品庫45を決定する。そして、親制御部62は、決定した納品庫45の納品庫番号と、納品庫対応テーブル67の中の配送先のストッカ40のいずれの解錠コードとも異なる解錠コードと、納品庫決定要求に含まれる会員ID,伝票ID,及び受取希望のストッカ40(配送先のストッカ40)と、を対応付けて納品庫対応テーブル67に記憶する(ステップS160)。例えば、納品庫対応テーブル67のうち第1ストッカ41に関するデータがデータ67aだけである状態でデータ66bを含む納品庫決定要求を受信した場合、親制御部62は、ステップS150では関連する納品庫番号“16”の左右に隣接しない納品庫番号“18”を決定する。そして、親制御部62は、ステップS160で、納品庫番号“18”と、納品庫対応テーブル67に記憶済みのいずれの解錠コードとも異なる解錠コード“YYYY”と、データ66bと、を対応付けたデータ67bを納品庫対応テーブル67に記憶する。そして、親制御部62は、ステップS160で記憶した解錠コードを表すQRコードを含む解錠コード通知を、今回記憶した納品庫45に対応する会員IDのメールアドレスに送信して(ステップS170)、ステップS100以降の処理を実行する。これにより、例えば解錠コード通知を受信した携帯端末21の記憶部23に、解錠コードを表すQRコードが記憶される。なお、解錠コード通知には、決定した配送先のストッカ40や配送先の納品庫45の情報が含まれていてもよい。
一方、ステップS140で納品庫決定要求が納品庫対応テーブル67の中のいずれかの納品庫番号に関連するときには、親制御部62は、納品庫決定処理を行う(ステップS180)。ステップS150とは異なり、ステップS180の納品庫決定処理では、親制御部62は、配送先のストッカ40の空き納品庫45のうち、納品庫決定要求に関連する納品庫番号で特定される納品庫45に近い位置の納品庫45を、優先的に決定する。例えば、関連する納品庫45の左右に隣接する納品庫45のいずれかが空き納品庫45であれば、その中から納品庫45を決定する。なお、親制御部62は、関連する納品庫45の左右に隣接する空き納品庫45を最優先に決定し、左右に隣接する空き納品庫45がなければ空き納品庫45の上下に隣接する納品庫45を次に優先して決定し、上下左右に隣接する空き納品庫45がなければ上下左右以外でなるべく関連する納品庫45に近い空き納品庫45を決定してもよい。そして、親制御部62は、決定した納品庫45の納品庫番号と、納品庫決定要求に関連する納品庫45と同じ解錠コードと、納品庫決定要求に含まれる会員ID,伝票ID,及び受取希望のストッカ40(配送先のストッカ40)と、を対応付けて納品庫対応テーブル67に記憶して(ステップS190)、ステップS100以降の処理を実行する。例えば、納品庫対応テーブル67のうち第1ストッカ41に関するデータがデータ67a,67bだけである状態でデータ66cを含む納品庫決定要求を受信した場合、親制御部62は、ステップS180では関連する納品庫番号“16”に隣接する納品庫番号“17”を決定する。そして、親制御部62は、ステップS190で納品庫番号“17”と、データ67aの納品庫番号“16”に対応する解錠コードと同じ解錠コード“XXXX”と、データ66cと、を対応付けたデータ67cを納品庫対応テーブル67に記憶する。なお、親制御部62は、関連する納品庫番号を記憶した時にステップS170で解錠コード通知を送信済みであるため、ステップS190のあとに解錠コード通知を受取者20に送信する必要はない。ただし、親制御部62は、解錠コード通知を送信してもよいし、決定した配送先のストッカ40や配送先の納品庫45の情報を受取者20に送信してもよい。
一方、商店10の店員は、店舗PC12に記憶された発注情報に基づいて、商品17の手配や配達者19に対する商品17の配送指示などを行う。なお、商品17には、伝票IDを表すバーコード18が付される。配達者19は、商品17を配送指示されたストッカ40に配送し、納品庫45に納品する。このとき、配送先のストッカ40を管理する子装置70は、配達者19の操作に基づいて商品17の配送先の納品庫45の解錠などを行う納品時解錠制御処理を行う。図5は、子装置70の子制御部82により実行される納品時解錠制御ルーチンの一例を表すフローチャートである。このルーチンは、記憶部83に記憶されており、子装置70の電源がONされると開始される。
このルーチンを開始すると、子制御部82は、まず、商品17に付されたバーコード18を読取機56を介して入力したか否かを判定する(ステップS200)。配達者19の操作によりバーコード18を入力すると、子制御部82は、バーコード18が表す伝票IDに対応する納品庫45を解錠する(ステップS210)。すなわち、子制御部82は、ステップS200ので読取機56が読み取ったバーコード18の伝票IDを納品時解錠要求として入力し、納品時解錠要求に対応する納品庫45を解錠する。具体的には、子制御部82は、納品庫対応テーブル87の中に入力された伝票IDに対応する納品庫番号が存在するか否かを判定し、存在する場合にロック機構47を制御してその納品庫番号で特定される納品庫45を解錠する。なお、子制御部82は、入力された伝票IDに対応する納品庫番号が複数存在する場合には、対応する複数の納品庫45を解錠する。続いて、子制御部82は、物品センサ48及び開閉センサ49の検出状況に基づいて、解錠した納品庫45への商品17の納品完了を検出するまで待つ(ステップS220)。本実施形態では、子制御部82は、物品センサ48が納品庫45内の物品ありを検出し且つ開閉センサ49が納品庫45の扉46の閉扉を検出したときに、納品完了と判定する。納品完了を検出すると、子制御部82は、納品完了した納品庫45を施錠する(ステップS230)。
ステップS200でバーコード18を入力しなかったとき又はステップS230のあと、子制御部82は、追加用バーコード58を読取機56を介して入力したか否かを判定する(ステップS240)。ここで、配達者19は、ステップS210で解錠された納品庫45に商品17が入りきらなかった場合に、読取機56に追加用バーコード58を読み取らせることで、新たな納品庫45の割り当てを指示する。子制御部82は、この追加用バーコード58の読取操作を、納品庫決定要求として入力する。
追加用バーコード58すなわち納品庫決定要求を入力すると、子制御部82は、直前のステップS200で入力した伝票IDに対応する納品庫45を特定する(ステップS250)。続いて、子制御部82は、納品庫対応テーブル87に納品庫番号が記憶されていない空き納品庫45の中から、特定した納品庫45に近い納品庫45を優先的に決定する納品庫決定処理を行う(ステップS260)。そして、子制御部82は、決定した納品庫45の納品庫番号と、ステップS250で特定した納品庫45と同じ解錠コードと、特定した納品庫45と同じ会員ID,伝票IDと、を対応付けて納品庫対応テーブル87に記憶する(ステップS270)。すなわち、このステップS250〜S270では、子制御部82は、ステップS240で入力した納品庫決定要求を、納品庫対応テーブル87の中で最後に入力された伝票ID(納品時解錠要求)で特定される納品庫番号に関連する要求とみなして、図4のステップS180,S190と同様の処理を行う。例えば、第1子装置71の記憶部83に記憶された納品庫対応テーブル87が図3のデータ87a〜87cだけである状態で、第1子装置71の子制御部82が伝票ID“cccc”を表すバーコード18をステップS200で入力し、その後にステップS240で追加用バーコード58を入力した場合を考える。この場合、子制御部82は、ステップS250で伝票ID“cccc”に対応する納品庫番号“18”の納品庫45を特定し、ステップS260でこの納品庫45に隣接する納品庫番号“19”を決定する。そして、親制御部62は、ステップS270で、納品庫番号“19”と、データ87bの納品庫番号“18”に対応する解錠コードと同じ解錠コード“YYYY”,同じ会員ID“BBBB”,同じ伝票ID“cccc”と、を対応付けたデータ87dを納品庫対応テーブル87に記憶する。
ステップS270のあと、子制御部82は、ステップS270で決定した納品庫45を解錠し(ステップS280)、ステップS220以降の処理を実行する。これにより、配達者19は、追加で解錠された納品庫45に残りの商品17を納品することができる。
一方、ステップS240で追加用バーコード58すなわち納品庫決定要求を入力しなかったときには、子制御部82は、ステップS200以降の処理を実行する。これにより、配達者19は、バーコード18を読み取らせた商品17の納品が完了し別のバーコード18が付された商品17がさらに存在する場合に、再度バーコード18の読取操作を行って、解錠された納品庫45に商品17を納品することができる。
なお、子制御部82がこの納品時解錠制御ルーチンを実行することで、例えば追加用バーコード58が入力されて納品庫対応テーブル87に納品庫番号と解錠コードの対応関係が追加されたり、納品庫45内に商品17が納品されて記憶部83に記憶された物品有無テーブル88の物品の有無が変更されたりする。上述したように親装置61の管理情報65と複数の子装置70の管理情報85とは情報の同期が取られているため、納品時に例えば第1子装置71の記憶部83で図3のデータ87dが追加された場合、親装置61の記憶部63の納品庫対応テーブル67にもデータ67dが追加される。また、親制御部62は、物品有無テーブル68のいずれかの納品庫番号に対応する物品有無が物品なしから物品ありに変更になったことを検出すると、納品庫対応テーブル67でその納品庫45に対応する会員IDのメールアドレスに、納品完了メールを送信する。
納品完了メールを携帯端末21で受信した受取者20は、配送先のストッカ40に向かい、納品庫45から納品された商品17を受け取る。このとき、配送先のストッカ40を管理する子装置70は、受取者20の操作に基づいて商品17が納品された納品庫45の解錠などを行う受取時解錠制御処理を行う。図6は、子装置70の子制御部82により実行される受取時解錠制御ルーチンの一例を表すフローチャートである。このルーチンは、記憶部83に記憶されており、子装置70の電源がONされると開始される。
このルーチンを開始すると、子制御部82は、まず、QRコードを読取機55を介して入力するまで待つ(ステップS300)。ここで、受取者20は、上述した解錠コード通知に含まれるQRコードを例えば表示操作部25の表示画面に表示させて、読取機55に読み取らせる。子制御部82は、このQRコードを読取機55を介して入力する。QRコードを入力すると、子制御部82は、QRコードが表す解錠コードに対応する納品庫45を解錠する(ステップS310)。具体的には、子制御部82は、納品庫対応テーブル87の中に入力された解錠コードに対応する納品庫番号が存在するか否かを判定し、存在する場合にロック機構47を制御してその納品庫番号で特定される納品庫45を解錠する。なお、子制御部82は、入力された解錠コードに対応する納品庫番号が複数存在する場合には、対応する複数の納品庫45を解錠する。続いて、子制御部82は、物品センサ48及び開閉センサ49の検出状況に基づいて、解錠した納品庫45のいずれかで商品17の受取完了を検出するまで待つ(ステップS320)。本実施形態では、子制御部82は、物品センサ48が納品庫45内の物品なしを検出し且つ開閉センサ49が納品庫45の扉46の閉扉を検出したときに、受取完了と判定する。受取完了を検出すると、子制御部82は、受取完了した納品庫45を施錠し(ステップS330)、納品庫対応テーブル87を更新する(ステップS340)。具体的には、子制御部82は、受取完了した納品庫45に関する情報(解錠コード等との対応付け)を納品庫対応テーブル87から削除する。この更新は、親装置61の納品庫対応テーブル67にも反映される。
続いて、子制御部82は、受取未完了の納品庫45が存在するか否かを判定する(ステップS350)。本実施形態では、子制御部82は、ステップS310で解錠した納品庫45のうち、物品センサ48が納品庫45内の物品ありを検出しているか又は開閉センサ49が納品庫45の扉46の開扉を検出していない納品庫45が存在するときに、受取未完了の納品庫45が存在すると判定する。例えば、ステップS310で複数の納品庫45を解錠し、そのうちの1つだけがステップS320で受取完了と判定された場合に、子制御部82は受取未完了の納品庫45が存在すると判定することになる。受取未完了の納品庫45が存在するときには、子制御部82は、他の納品庫45(受取未完了の納品庫45)の存在を受取者20に報知して(ステップS360)、ステップS320以降の処理を実行する。本実施形態では、ストッカ40が備える図示しないスピーカーから警告音を出力することで受取者20に他の納品庫45の存在を報知するものとした。なお、受取者20に他の納品庫45の存在を報知できればよく、例えば音声(メッセージ)を再生したり、表示操作部25に情報を表示したり、携帯端末21に情報を送信して表示操作部25に表示させたりすることで報知してもよい。
一方、ステップS350で受取未完了の納品庫45が存在しないとき、すなわちステップS310で解錠した全ての納品庫45について商品17の受け取りや施錠が完了したときには、子制御部82は、ステップS300以降の処理を行う。
ここで、本実施形態の構成要素と本発明の構成要素との対応関係を明らかにする。本実施形態の納品庫番号が本発明の納品庫情報に相当し、納品庫対応テーブル67,87が納品庫対応情報に相当し、記憶部63,83が納品庫対応情報記憶手段に相当し、親制御部62及び子制御部82が納品庫決定手段に相当し、子制御部82が解錠制御手段に相当する。また、物品センサ48及び開閉センサ49が検出手段に相当する。
以上詳述した本実施形態のストッカシステム1では、ストッカ40のいずれかの納品庫45を特定可能な納品庫番号と、納品庫45の解錠に用いる解錠コードと、を対応付けた納品庫対応テーブル67,87を記憶部63,83が記憶している。そして、店舗PC12から納品庫決定要求を入力し且つ入力した納品庫決定要求が記憶された納品庫対応テーブル67の中のいずれかの納品庫番号に関連する場合、すなわち記憶済みの納品庫番号に関連した追加の納品庫45の決定要求がなされた場合には、親制御部62は以下の処理を行う。まず、親制御部62は、納品庫対応テーブル67の中に納品庫番号が存在しない空き納品庫45のうちいずれかの納品庫45を決定する納品庫決定処理を行う。次に、決定した納品庫45の納品庫番号と納品庫決定要求に関連する納品庫番号に対応する解錠コードとを対応付けて記憶部63に記憶する。すなわち、記憶済みの納品庫番号に関連した追加の納品庫45の決定要求を入力すると、関連する納品庫番号に対応する解錠コードと同じ解錠コードを、新たに決定した納品庫45の納品庫番号と対応付けて納品庫対応テーブル67に含めて記憶する。子制御部82も、記憶済みの納品庫番号に関連した追加の納品庫45の決定要求が読取機56を介してなされた場合には、親制御部62と同様に納品庫決定処理や解錠コード及び納品庫番号等の納品庫対応テーブル87への記憶を行う。そして、解錠コードを入力すると、子制御部82は、記憶部83に記憶された納品庫対応テーブル87の中に入力した解錠コードに対応する1以上の納品庫番号が存在するか否かを判定し、存在する場合にその1以上の納品庫番号で特定される納品庫45を解錠させる。そのため、例えば受取者20による追加の発注によって後から追加された納品庫45がある場合に、受取者20は追加された納品庫45も含めた複数の納品庫45を同じ解錠コードで解錠することができる。また、配達者19による商品17の納品時に納品庫45が不足して追加された納品庫45がある場合も、同様に受取者20は追加された納品庫45も含めた複数の納品庫45を同じ解錠コードで解錠することができる。したがって、追加の納品庫45が必要になった場合の受取者20の利便性が向上する。
また、納品庫対応テーブル67,87に含まれる解錠コードは納品庫45からの物品の受取時に用いる受取時解錠コードであり、子制御部82は、記憶された納品庫対応テーブル87の中のいずれかの納品庫番号を特定可能な伝票ID(納品時解錠要求)を入力すると、記憶された納品庫対応テーブル87の中に入力した納品時解錠要求に対応する1以上の納品庫番号が存在するか否かを判定し、存在する場合に1以上の納品庫番号で特定される納品庫45を解錠させる。そして、子制御部82は、納品時解錠要求を入力してから別の前記納品時解錠要求を入力する前に追加用バーコード58(納品庫決定要求)を入力すると、入力した納品庫決定要求を納品庫対応テーブル87の中で最後に入力された納品時解錠要求で特定される納品庫番号に関連する要求とみなして、納品庫決定処理を行い、決定した納品庫45の納品庫番号と納品庫決定要求に関連する納品庫番号に対応する受取時解錠コードとを対応付けて記憶部83に記憶する。そのため、納品庫45への商品17の納品時に追加の納品庫45が必要になった場合でも、受取者20は追加された納品庫45も含めた複数の納品庫45を同じQRコード(受取時解錠コード)で解錠することができる。したがって、追加の納品庫45が必要になった場合の受取者20の利便性が向上する。また、子制御部82は、入力した追加用バーコード58(納品庫決定要求)を、最後に入力された納品時解錠要求で特定される納品庫番号に関連する要求とみなしている。そのため、本実施形態のように追加用バーコード58(納品庫決定要求)自体が記憶済みの納品庫番号との関連を特定できる情報を含まない場合でも、記憶済みの納品庫番号と同じ受取時解錠コードを適切に追加の納品庫45に対応付けることができ、配達者19による納品庫決定要求の入力の手間を軽減できる。したがって、追加の納品庫45が必要になった場合の配達者19の利便性が向上する。
さらに、親制御部62,子制御部82は、納品庫決定要求を入力し且つ入力した納品庫決定要求が記憶された納品庫対応テーブル67,87の中のいずれかの納品庫番号に関連する場合には、納品庫決定処理において、空き納品庫45のうち納品庫決定要求に関連する納品庫番号で特定される納品庫45に近い位置の納品庫45を優先的に決定する。こうすれば、記憶済みの納品庫番号で特定される納品庫45と、それに関連した追加の納品庫45とが近い位置になりやすい。そのため、商品17の納入又は受取をしやすくなり、追加の納品庫45が必要になった場合の配達者19,受取者20の利便性が向上する。
さらにまた、親制御部62は、納品庫決定要求を入力し且つ入力した納品庫決定要求が記憶された納品庫対応テーブル67の中のいずれの納品庫番号にも関連しない場合には、納品庫対応テーブル67の中に含まれる納品庫番号で特定される1以上の納品庫45の各々について、納品庫45に隣接する空き納品庫45が少なくとも1つ存在するよう、隣接する空き納品庫45を除く納品庫45を優先的に決定するように納品庫決定処理を行う。そして、親制御部62は、決定した納品庫45の納品庫番号と納品庫対応テーブル67の中のいずれの解錠コードとも異なる解錠コードとを対応付けて記憶部63に記憶する。そのため、記憶済みの納品庫番号に関連しない納品庫決定要求がなされた場合には、記憶済みの納品庫番号で特定される納品庫45の各々について、納品庫45に隣接する空き納品庫45が少なくとも1つはできるだけ空きのまま残るように納品庫決定処理が行われる。そのため、記憶済みの納品庫番号で特定される納品庫45と、それに関連した追加の納品庫45とが隣接した位置になりやすい。したがって、上述した商品17の納入又は受取をしやすくなる効果が高まり、追加の納品庫45が必要になった場合の配達者19,受取者20の利便性が向上する。
そしてまた、ストッカ40は、複数の納品庫45の各々の扉46の開閉と物品の有無とを検出する開閉センサ49,物品センサ48を備えている。そして、子制御部82は、記憶された納品庫対応テーブル87の中に入力した解錠コードに対応する納品庫番号が複数存在する場合に、複数の納品庫番号に対応する納品庫45を解錠し、開閉センサ49,物品センサ48の検出状況に基づいて解錠した納品庫45のいずれかについての受取者20の受取完了を検出すると、他の納品庫45の存在を受取者20に報知する。そのため、受取完了が検出された納品庫45以外の納品庫45に関する物品の受取忘れを防止できる。
なお、本発明は上述した実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。
例えば、上述した実施形態では、親制御部62は、図4のステップS140において、納品庫決定要求に含まれる会員IDが、納品庫対応テーブル67の中の配送先のストッカ40のいずれかの納品庫番号に対応する会員IDと同じである場合に、納品庫決定要求がその納品庫番号に関連すると判定したが、これに限られない。例えば、納品庫対応テーブル67が、納品庫番号と、解錠コードを含む1種類以上の情報と、を対応付けた情報であり、納品庫対応テーブル67に含まれるいずれかの納品庫番号を含むか又は納品庫対応テーブル67の中で納品庫番号に対応する情報を含む納品庫決定要求を入力した場合には、親制御部62は納品庫決定要求がその記憶済みの納品庫番号に関連すると判定してもよい。例えば、受取者20が商品17を発注した後に別の商品17を追加で発注すると、店舗PC12が先の発注と追加の発注とに同じ伝票IDを付す場合は、親制御部62は、納品庫決定要求に含まれる伝票IDが納品庫対応テーブル67の中の配送先のストッカ40のいずれかの納品庫番号に対応する伝票IDと同じであるときに、納品庫決定要求がその納品庫番号に関連すると判定してもよい。また、親装置61から店舗PC12に決定した納品庫番号と解錠コードとの少なくともいずれかを送信しておく場合は、納品庫決定要求に含まれる納品庫番号又は解錠コードが納品庫対応テーブル67の納品庫番号又は解錠コードと同じであるときに、納品庫決定要求がその納品庫番号に関連すると判定してもよい。
また、親制御部62は、図4のステップS140において、納品庫決定要求に含まれる会員IDが、納品庫対応テーブル67の配送先のストッカ40以外のストッカ40のいずれかの納品庫番号に対応する会員IDと同じである場合に、納品庫決定要求がその納品庫番号に関連すると判定してもよい。すなわち、異なるストッカ40間でも、同じ会員IDが対応する納品庫番号には、同じ解錠コードを付してもよい。
また、図4のステップS140において、納品庫決定要求に含まれる会員IDが、納品庫対応テーブル67の中の配送先のストッカ40のいずれかの納品庫番号に対応する会員IDと同じである場合でも、納品庫決定要求がその納品庫番号に関連すると判定しない場合があってもよい。例えば、受取者20の発注日時を納品庫対応テーブル67に記憶しておくようにし、受取者20が商品17を発注した日時と別の商品17を追加で発注した日時とを比較して、両者の日付が異なっていたり、両者が所定の閾値時刻の前後に発注されていたりする場合には、納品庫決定要求がその納品庫番号に関連しないと判定してもよい。所定の閾値時刻は、例えば複数の商品17を同じ配達者19がまとめて配送するための発注の締切時刻としてもよい。
上述した実施形態では、子制御部82は、追加用バーコード58の読取操作を、納品庫決定要求として入力したが、これに限らずどのような方法で入力してもよい。例えば、表示操作部54に表示された追加用ボタンを配達者19が押下したときに、この操作を子制御部82が納品庫決定要求として入力してもよい。また、子制御部82は、入力した納品庫決定要求を納品庫対応テーブル87の中で最後に入力された納品時解錠要求で特定される納品庫番号に関連する要求とみなしたが、これに限られない。例えば、配達者19は、図5のステップS210で解錠された納品庫45に商品17が入りきらなかった場合に、読取機56にその入りきらない商品17のバーコード18を読み取らせてもよい。すなわち、子制御部82は、伝票ID(納品時解錠要求)を入力してから別の伝票IDを入力する前に、入力した伝票IDと同じ伝票IDを再度入力すると、その入力操作を納品庫決定要求として入力してもよい。そして、子制御部82は、再度入力した伝票ID(=納品庫決定要求の前に最後に入力した伝票ID)に基づいて関連する納品庫番号を特定して、ステップS260以降の処理を行ってもよい。こうしても、配達者19による納品庫決定要求の入力の手間を軽減できる。あるいは、配達者19が表示操作部54を操作して、納品庫45が不足している商品17の伝票IDや会員IDを含む納品庫決定要求を入力してもよい。こうしても、子制御部82が記憶済みの納品庫45と同じ解錠コードを追加の納品庫45に対応付けることはできるため、追加の納品庫45が必要になった場合の受取者20の利便性が向上する効果は得られる。
上述した実施形態では、親制御部62は、図4のステップS150において、空き納品庫45のうち、記憶済みの納品庫番号で特定される納品庫45の左右に隣接しない納品庫45を、優先的に配送先の納品庫45に決定したが、これに限られない。記憶済みの納品庫番号で特定される納品庫45の各々について、納品庫45に隣接する空き納品庫45が少なくとも1つはできるだけ空きのまま残るように納品庫決定処理を行えばよい。例えば、親制御部62は、納品庫45の上下に隣接する納品庫45を除く納品庫45を優先的に決定するように納品庫決定処理を行ってもよい。親制御部62は、納品庫45の上下左右に隣接する納品庫45を除く納品庫45を優先的に決定するように納品庫決定処理を行ってもよい。また、親制御部62は、ステップS150を複数回行う際に、左上から順番に1つおきに納品庫45を決定したり、上下に1段おきに納品庫45を決定したりしてもよい。あるいは、記憶済みの納品庫45との位置関係について特に考慮せず、例えばランダムに納品庫45を決定したり、左上から順番に納品庫45を決定したりしてもよい。
上述した実施形態では、図4のステップS180において、空き納品庫45のうち納品庫決定要求に関連する納品庫番号で特定される納品庫45の左右に隣接する納品庫45を最優先に決定したが、関連する納品庫45に近い位置の納品庫45を優先的に決定すれば、他の優先順位で納品庫45を決定してもよい。例えば、親制御部62は、関連する納品庫45の上下に隣接する空き納品庫45を最優先に決定し、左右に隣接する空き納品庫45を次に優先して決定してもよい。また、親制御部62は、関連する納品庫45に近い位置の納品庫45を優先的に決定しなくてもよい。例えば、ストッカ40が備える複数の納品庫45の一部を予め追加用として定めておき、ステップS180では親制御部62はこの追加用の納品庫45の中から優先的に納品庫45を決定してもよい。あるいは、親制御部62は、例えばランダムに納品庫45を決定したりしてもよい。
上述した実施形態では、受取者20は受け取りを希望するストッカ40を指定して商品17の発注を行うが、これに加えて受け取りを希望する納品庫45を指定してもよい。例えば、自身の身長に応じて受け取りを希望する納品庫45の位置(高さ)の範囲を指定してもよい。この場合、親制御部62は、図4のS150,S180において、指定された受取希望の納品庫45の中から上述した優先順位を考慮しつつ納品庫45を決定してもよい。
上述した実施形態では、子制御部82は、図5のステップS220において、物品センサ48が納品庫45内の物品ありを検出し且つ開閉センサ49が納品庫45の扉46の閉扉を検出したときに、納品完了と判定したが、これに限られない。例えば、物品センサ48が納品庫45内の物品ありを検出したときに納品完了と判定してもよいし、開閉センサ49が納品庫45の扉46の閉扉(一度開扉した後の閉扉)を検出したときに納品完了と判定してもよい。同様に、子制御部82は、図6のステップS320において、物品センサ48が納品庫45内の物品なしを検出したときに受取完了と判定してもよいし、開閉センサ49が納品庫45の扉46の閉扉(一度開扉した後の閉扉)を検出したときに受取完了と判定してもよい。また、配達者19や受取者20が表示操作部54を介して作業完了を入力するものとし、親制御部62はこの入力に基づいて作業完了を検出してもよい。
上述した実施形態では、子制御部82は、図6のステップS310において、解錠コードに対応する納品庫45が複数ある場合にはいずれも解錠したが、これに限らず複数の納品庫45のうち少なくとも1つを解錠すればよい。例えば、納品庫45を1つ解錠し、受取完了を検出すると次の納品庫45を解錠するようにしてもよい。また、子制御部82は、複数の納品庫45のうち最初に解錠した納品庫45以外の納品庫45の解錠を、ステップS360の報知の前後や報知中などどのようなタイミングで行ってもよい。図5のステップS210においても同様に、親制御部62は入力した伝票IDに対応する複数の納品庫45がある場合に、複数の納品庫45を同時に解錠しなくてもよい。
上述した実施形態では、子制御部82は、QRコードを読取機56が読み取ることで解錠コードを入力したが、これに限らずどのような方法で解錠コードを入力してもよい。例えばQRコードに代えて他の二次元コードや一次元コード(例えばバーコード)などを用いてもよいし、子制御部82が受取者20による表示操作部54の操作を介して解錠コードを入力してもよいし、携帯端末21が子装置70に解錠コードを送信してもよい。
上述した実施形態では、子制御部82は、図6のステップS350で受取未完了の納品庫45が存在する場合にステップS360で他の納品庫45の存在を報知したが、これに限られない。例えば、解錠した納品庫45について所定時間が経過しても受取完了を検出しない場合に、その納品庫45の存在を報知してもよい。また、図6のステップS350,S360を省略して、子制御部82が他の納品庫45の報知を行わないようにしてもよい。
上述した実施形態では、図4のステップS170で親制御部62が解錠コードを受取者20に送信したが、他のタイミングで解錠コードを受取者20に通知してもよい。例えば、図5のステップS220で納品完了が検出されたときに、受取者20に解錠コードを報知してもよい。また、ステップS250〜S270の処理を行って商品17を受け取るべき納品庫45の数が増加した場合に、親制御部62がその旨を受取者20に報知(例えば携帯端末21へのメールの送信)してもよい。
上述した実施形態では、親装置61の管理情報65と複数の子装置70の管理情報85とは、情報の同期が取られていたが、これに限られない。例えば、子装置70は納品庫対応テーブル87を記憶せず、必要に応じて子制御部82が親装置61にアクセスして納品庫対応テーブル67を参照してもよい。ただし、例えば親装置61と子装置70との間の通信が一時的に不可能になった場合でも図5,6のルーチンを実行できるため、親装置61と子装置70とで情報の同期を取ることが好ましい。なお、上述した実施形態では、親制御部62と子制御部82との間で、情報に変更が生じる度に相手に変更後の情報を送信したが、例えば変更後の情報を定期的に送信して同期を取ってもよい。
上述した実施形態では、図5のステップS200において、バーコード18の伝票IDを納品時解錠要求として入力したが、これに限らず他の情報の入力を納品時解錠要求として用いてもよい。また、入力操作もバーコード18の読取に限られない。また、上述した実施形態では、解錠コードは受取時解錠コードとしたが、これに限られない。解錠コードは、受取時解錠コードと納品時解錠コードとの少なくともいずれかとしてもよい。例えば、親制御部62が、上述した実施形態の解錠コード(受取時解錠コード)と同様に図4のステップS160,S190で納品時解錠コードを決定し、図5のステップS200で納品時解錠コードを入力して、ステップS210で対応する納品庫45を解錠してもよい。こうすれば、受取者20による追加の発注によって後から追加された納品庫45がある場合に、配達者19は追加された納品庫45も含めた複数の納品庫45を同じ納品時解錠コードで解錠することができる。なお、この場合、親制御部62は、例えば店舗PC12を介して配達者19に予め納品時解錠コードを通知したり、配達者19の所持する携帯端末に予め納品時解錠コードを送信したりすればよい。また、この場合において、上述した実施形態における図6のステップS350,S360と同様の処理を、子制御部82が図5のステップS230の後に行ってもよい。すなわち、子制御部82は、記憶された納品庫対応テーブル87の中に入力した納品時解錠コードに対応する納品庫番号が複数存在する場合に、複数の納品庫番号のうち少なくとも1つに対応する納品庫45を解錠し、物品センサ48,開閉センサ49の検出状況に基づいて解錠した納品庫45のいずれかについての配達者19の納品完了を検出すると、他の納品庫45の存在を配達者19に報知してもよい。こうすれば、納品完了が検出された納品庫45以外の納品庫45に関する商品17の納入忘れを防止できる。
上述した実施形態では、図5のステップS220で納品完了を検出した後に、ステップS240で追加用バーコード58を入力したか否かを判定したが、これに限られない。例えば、子制御部82は、納品完了前に追加用バーコード58を入力した場合にも、ステップS250以降の処理を行ってもよい。
上述した実施形態の発注時処理ルーチンおよび納品時解錠制御ルーチンにおける納品庫決定処理(ステップS150、ステップS180、ステップS260)において、親制御部62,子制御部82は、受取者20の属性情報を参照して納品庫45を決定してもよい。この場合、記憶部63,83に記憶された管理情報65,85には、受取者20と、受取者20の属性情報と、納品庫45と、を対応付けた属性対応情報が含まれていてもよい。図7は、管理情報65に含まれる会員属性テーブル90,属性対応納品庫テーブル91の一例を示す説明図である。会員属性テーブル90とは、複数の受取者20の会員IDと、複数の受取者20の属性情報とを対応付けたテーブルである。受取者20の属性情報とは、例えば、受取者20の年齢に関する情報である。図7の会員属性テーブル90では、受取者20の属性情報として、受取者20の年齢が特定の閾値以上である場合には「1」、特定の閾値に至らない場合には「2」を、会員IDと対応づけて記憶している。この例では、受取者20の属性情報は、高齢の受取者20を識別可能な情報である。属性対応納品庫テーブル91は、複数のストッカ40と、納品庫番号(1番〜30番)と、その納品庫番号を優先して割り当てるべき属性情報とを対応付けたテーブルである。図7の例では、第1ストッカ41の複数の納品庫45のうち、高齢者にとって納品された商品17を取り出しやすい位置(例えば中段など、適切な高さ)に位置する15番〜17番の納品庫45に対して、属性情報「1」(すなわち高齢者)が設定されている。一方、他の納品庫45(1番〜14番、18番〜30番)には、属性情報が設定されていない。このような属性対応情報(会員属性テーブル90,属性対応納品庫テーブル91)を用いた納品庫決定処理について説明する。例えばステップS150の納品庫決定処理において、親制御部62は、納品庫決定要求に含まれる会員IDの属性情報を、会員属性テーブル90を参照して導出する。導出した属性情報が「1」であった場合、親制御部62は、配送先のストッカ40の空き納品庫のうち、納品庫対応テーブル67に記憶済みの納品庫番号で特定される納品庫45の左右に隣接せず、且つ、属性対応納品庫テーブル91にて属性情報「1」の設定された納品庫45を、優先的に配送先の納品庫45に決定する。ステップS180およびステップS260の納品庫決定処理においても同様に、導出した属性情報に対応する納品庫45を優先的に配送先の納品庫45に決定する処理が行われる。なお、ステップS260では、子制御部82は、直前に入力した伝票IDに対応する会員IDを納品庫対応テーブル87に基づいて特定し、特定した会員IDに対応する属性情報を会員属性テーブル90を参照して導出すればよい。このように、ストッカ管理装置60は、属性情報を導出可能な情報(会員ID,伝票ID等)を入力し、入力した情報に基づいて属性情報を導出し、前記納品庫決定処理において空き納品庫のうち前記導出した属性情報に対応する納品庫45を優先的に決定してもよい。こうすれば、属性情報に基づいて受取者20に対してより適切な納品庫45を優先的に割り当てることができるため、受取者20の利便性が向上する。なお、図7の例では、属性情報「2」の受取者20、すなわち高齢でない受取者20に優先して割り当てるべき納品庫番号は、本例では設定されていないが、設定されてもよい。属性情報は、3段階以上に分かれていてもよい。受取者20の属性情報は、年齢に関する属性情報に限らずどのような情報としてもよい。例えば、受取者20の性別、身長に関する情報であってもよい。受取者20の属性情報として、年齢、性別、身長、その他の要素のいくつかを複数組み合わせた情報を用いてもよい。また、ストッカ管理装置60が入力する「属性情報を導出可能な情報」は、属性情報を導出(取得)できればどのような情報でもよい。例えば、図7の例であればストッカ管理装置60は受取者20の年齢を入力してもよいし、属性情報自体(「1」又は「2」)を入力してもよい。これらの場合、属性対応情報としては属性対応納品庫テーブル91があればよい。
上述した実施形態では特に説明しなかったが、納品庫解錠のためにステップS200で入力された伝票ID(バーコード18)は、その納品庫45の納品が完了されて納品庫45が施錠されてしまえば、配達者19がその納品庫45を再び解錠するために用いることはできないようにしてもよい。すなわち、子制御部82が、納品完了と判定し、ロック機構47を制御してステップS230で納品庫45を施錠した後に、配達者19が、その納品庫45を解錠するのに入力された同じ伝票IDに対応するバーコード18を入力したとしても、子制御部82は、入力された伝票IDに対応する納品庫番号が、すでに納品完了された納品庫45であれば、その納品庫45を解錠しないようにしてもよい。こうすれば、納品完了後に受取者20以外の者が納品庫45を解錠することを防止でき、セキュリティの高いストッカ40を実現することができる。なお、全ての商品17を納品庫45に納品していない状態で配達者19が誤って納品庫45の扉46を閉めてしまったような場合でも、配達者19は読取機56に追加用バーコード58を読み取らせて追加の納品庫45に残りの商品17を納品すればよい。なお、子制御部82は、複数の納品庫45の各々についての納品完了されたか否かの判定をどのように行ってもよい。例えば、各納品庫45について納品完了したか否かの情報を記憶部83に記憶しておいてもよいし、物品センサ48による物品の有無の検出(物品有無テーブル88)に基づいて物品有りの納品庫45については納品完了したと判定してもよい。
上述した実施形態では、子制御部82は、ステップS320で受取完了(納品庫45内の物品なし且つ扉46が閉扉)を検出したときにステップS330で納品庫45を施錠するが、物品センサ48が納品庫45内の物品ありを検出し且つ開閉センサ49が扉46の閉扉を検出したときにも、子制御部82は納品庫45を施錠してもよい。この場合、子制御部82は、受取完了(納品庫45内の物品なし且つ扉46が閉扉)を検出するまではステップS340の処理(受取完了した納品庫45に関する情報の削除)を行わなくてもよい。例えば、受取者20がQRコード(受取時解錠コード)を入力して、納品庫45を解錠した後、納品庫45から商品17を取り出す前に、意図せず納品庫45の扉46が閉じること、または意図的に受取者20が扉46を閉じることがある。このような場合に、開閉センサ49が納品庫45の閉扉を検出すると、子制御部82は、ロック機構47を制御して、納品庫45を施錠してもよい。この場合、受取者20が、納品庫45の扉46を再び開けるため、QRコードを入力すると、子制御部82は、受取者20が1度目にその納品庫45を解錠しようとしたときと同様に、入力されたQRコードに対応する納品庫番号が納品庫対応テーブル87の中に存在するか否かを判定し、存在すれば、ロック機構47を制御して、その納品庫番号で特定される納品庫45を解錠すればよい。こうすれば、納品庫45からの商品17の受取が完了するまで何度も解錠、施錠ができるので、受取者20にとって使い勝手のよいストッカ40を実現することができる。なお、上述した実施形態で説明したように、受取者20が納品庫45から商品17を取り出した後に納品庫45の扉が閉じられると、子制御部は、物品センサ48および開閉センサ49の検出に基づいて受取完了と判定して受取完了した納品庫45を施錠し、ステップS340で受取完了した納品庫45に関する情報を納品庫対応テーブル87から削除する。そのため、受取者20が、受取完了した納品庫45を解錠するのに入力されたQRコードを再び入力したとしても、入力されたQRコードに対応する納品庫番号は、納品庫対応テーブル87の中に存在しないため、子制御部82は、受取完了した納品庫45を解錠しない。したがって、セキュリティの高いストッカ40を実現することができる。なお、子制御部82は、複数の納品庫45の各々についての受取完了されたか否かの判定をどのように行ってもよい。例えば、子制御部82は、上述したように受取完了した納品庫45に関する情報を納品庫対応テーブル87から削除しておき、入力されたQRコードに対応する納品庫番号の有無で受取完了か否かの判定を行ってもよい。あるいは、子制御部82は、各納品庫45について受取完了したか否かの情報を記憶部83に記憶しておいてもよい。また、子制御部82は、物品センサ48による物品の有無の検出(物品有無テーブル88)に基づく物品なしの納品庫45については、入力したQRコードに対応する納品庫45が存在しても解錠しないものとしてもよい。こうすれば、子制御部82は、受取完了した納品庫45を受取時解錠コードで解錠することがなく、さらに、納品前の納品庫45を受取時解錠コードで解錠することもない。
上述した実施形態では、図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を管理してもよい。
上述した実施形態では、受取者20が納品庫45を使用して受け取る物品は、受取者20が発注した商品17としたが、これに限られない。例えば、他の発注者が発注した商品を受取者20が納品庫45で受け取ってもよい。あるいは、他の依頼者が配送を依頼した商品以外の配送物を受取者20が納品庫45で受け取ってもよい。
上述した実施形態では、店舗PC12,携帯端末21,親装置61,子装置70はネットワーク2を介して情報の送受信を行うが、これに限られない。例えば、親装置61と子装置70との間はネットワーク2とは別の専用回線で情報の送受信を行ってもよい。