以下、本発明の実施形態について、図面を参照しながら詳しく説明する。以下に説明される実施形態は、本発明のいくつかの例を示すものであって、本発明の内容を限定するものではない。また、各実施形態で説明される構成及び動作の全てが本発明の構成及び動作として必須であるとは限らない。
本実施形態では、商品を購入するユーザが自動販売機を操作する際にユーザと対向する方向を「前方」と称し、前方とは反対方向を「後方」と称する。また、本実施形態では、自動販売機の高さ方向を「上方」と称し、上方と反対方向を「下方」と称する。
[実施形態1:自動販売機の構成]
図1は、本発明の実施形態1に係る自動販売機1の全体構成を模式的に示す図である。図1(a)は、実施形態1に係る自動販売機1の外観構成を模式的に示す図であって、筐体2に設けられた扉3が閉じた状態を示す図である。図1(b)は、実施形態1に係る自動販売機1の内部構成を模式的に示す図であって、扉3が開いた状態を示す図である。なお、図1(b)では、後述する仕切板21の図示が省略されている。
自動販売機1は、様々な種類の商品を販売可能な自動販売機である。具体的には、自動販売機1は、ゲーム及び音楽等のコンテンツが記憶された媒体、雑貨、玩具、書籍並びに食品等の、種々の物品をパッケージに梱包して構成された商品を、ユーザに無人で販売する自動販売機である。特に、自動販売機1は、上述の物品又はそのパッケージのサイズに応じた、様々なサイズの商品を販売可能な自動販売機である。
自動販売機1の筐体2の前面には、図1(a)に示されるように、扉3が設けられている。自動販売機1では、扉3が開かれることによって、自動販売機1への商品の補充作業及び商品代金の回収作業等が行われる。
扉3の前面には、図1(a)に示されるように、商品の画像、名称、種類、価格、商品説明等の商品情報を表示すると共に、ユーザが商品を選択する操作を受け付けるタッチスクリーンで構成された表示部11が設けられる。更に、扉3の前面には、ユーザが商品代金を支払う際に用いられる硬貨、紙幣及び電子マネーをそれぞれ受け付けるコインメック、ビルバリ及び電子マネーリーダライタを含んだ支払部12が設けられる。更に、扉3の前面には、ユーザが購入した商品を取り出すための商品取出口13が設けられる。
自動販売機1の内部には、図1(b)に示されるように、商品の種類ごとに分かれて商品を収納し、自動販売機1の幅方向及び上下方向に沿って並ぶように配置された複数のコラム20が設けられる。更に、自動販売機1の内部には、扉3と複数のコラム20との間に配置され、自動販売機1の幅方向及び上下方向に沿って移動可能に構成されて、複数のコラム20から搬出された商品を商品取出口13に搬送するエレベータ40が設けられる。
図2は、実施形態1に係る複数のコラム20の一部を拡大して示す図である。図2(a)は、実施形態1に係る複数のコラムの20の間に配置される仕切板21が取り外された状態を示す図である。図2(b)は、実施形態1に係る複数のコラムの20の間に配置される仕切板21が取り付けられた状態を示す図である。
複数のコラム20は、図2(a)及び図2(b)に示されるように、それぞれが互い略同一の構造に形成され、それぞれの幅方向及び長手方向が自動販売機1の幅方向及び前後方向にそれぞれ沿うように配置される。複数のコラム20は、それぞれの長手方向に沿ってそれぞれ商品を収納する。複数のコラム20のそれぞれでは、収納された商品が後方から前方に向って搬送され、コラム20の外に搬出される。複数のコラム20のそれぞれは、収納される商品をコラム20に搬入するための搬入部と、収納された商品をコラム20の外に搬出するための搬出部とが、同一に構成される。本実施形態では、この搬出部と搬入部とをまとめて、「搬入出部22」とも称する。搬入出部22は、後述のベルトコンベア23の前方の端部に位置する。
複数のコラム20のそれぞれの幅方向のサイズは、自動販売機1で販売される複数種類の商品のうち、幅方向のサイズが最小の商品のサイズに応じて予め定められる。複数のコラム20のそれぞれの上下方向のサイズは、自動販売機1で販売される複数種類の商品のうち、上下方向のサイズが最大の商品のサイズに応じて予め定められる。複数のコラム20のそれぞれの前後方向のサイズは、自動販売機1で販売される複数種類の商品のうち、前後方向のサイズが最大の商品のサイズ、及び、商品の収納数の上限値等に応じて定められる。
複数のコラム20は、商品の種類に応じて複数のコラム20のそれぞれの間を仕切るための仕切板21が配置可能に構成される。仕切板21は、複数のコラム20のそれぞれに収納された商品の搬送をガイドすることができる。仕切板21は、複数のコラム20に対して着脱自在に設けられる。仕切板21は、自動販売機1を管理するオペレータによって手動で着脱されてよい。
一のコラム20に収納される商品の幅方向のサイズが、一のコラム20の幅方向のサイズよりも大きい場合、一のコラム20に隣り合う他のコラム20と一のコラム20との間にある仕切板21は、取り外される。それにより、複数のコラム20は、一のコラム20に収納される商品の幅方向のサイズが、一のコラム20の幅方向のサイズよりも大きい場合であっても、一のコラム20と他のコラム20とに跨って当該商品を収納することができる。一のコラム20と他のコラム20とに跨って当該商品を収納する場合には、一のコラム20を構成するベルトコンベア23と、他のコラム20を構成するベルトコンベア23とは、同期して動作するように制御される。
図2(a)及び図2(b)には、複数のコラム20の一例として、4つのコラム20a〜20dが示されている。図2(a)及び図2(b)には、コラム20a〜20dに対して、商品サイズの異なる商品A及び商品Bが次のように収納された例が示されている。商品Aは、幅方向のサイズが200mm、上下方向のサイズが200mm、及び、前後方向のサイズが200mmである。商品Bは、幅方向のサイズが100mm、上下方向のサイズが100mm、及び、前後方向のサイズが100mmである。
図2(a)及び図2(b)の例では、コラム20a〜20dのそれぞれの幅方向のサイズは、幅方向のサイズが最小の商品Bのサイズに応じて予め定められる。コラム20a〜20dのそれぞれの上下方向のサイズは、上下方向のサイズが最大の商品Aのサイズに応じて予め定められる。
商品Aは、その幅方向のサイズがコラム20a〜20dのそれぞれの幅方向のサイズより大きいため、隣り合うコラム20aとコラム20bとに跨って収納される。そして、コラム20aを構成するベルトコンベア23とコラム20bを構成するベルトコンベア23とは、同期して動作するように制御される。
商品Bは、その幅方向のサイズがコラム20a〜20dのそれぞれの幅方向のサイズより大きくないため、コラム20c又はコラム20dに単体で収納される。そして、コラム20cを構成するベルトコンベア23と、コラム20dを構成するベルトコンベア23とは、独立して動作するように制御される。
複数のコラム20は、商品A及び商品B以外にも、様々なサイズの商品を収納することができる。例えば、複数のコラム20は、幅方向のサイズが200mm、上下方向のサイズが50mm、及び、前後方向のサイズが200mmである商品を収納することができる。この商品は、隣り合う2つのコラム20に跨って収納される。そして、この2つのコラム20を構成する隣り合う2つのベルトコンベア23は、同期して動作するように制御される。更に、複数のコラム20は、幅方向のサイズが400mm、上下方向のサイズが200mm、及び、前後方向のサイズが200mmである商品を収納することができる。この商品は、隣り合う4つのコラム20に跨って収納される。そして、この4つのコラム20を構成する隣り合う4つのベルトコンベア23は、同期して動作するように制御される。
図3は、実施形態1に係るコラム20を構成するベルトコンベア23を示す図である。図3(a)は、実施形態1に係るベルトコンベア23の構成を示す図である。図3(b)は、図3(a)とは異なる方向からベルトコンベア23を視た図である。なお、図3(b)では、後述するフレーム24の一部の図示が省略されている。
複数のコラム20のそれぞれの一部は、ベルトコンベア23によって構成される。具体的には、複数のコラム20のそれぞれにおいて商品が載置される部分は、ベルトコンベア23によって構成される。ベルトコンベア23は、自動販売機1の前後方向、すなわち、コラム20の長手方向に沿って延びるように形成される。ベルトコンベア23は、コラム20に収納された商品をコラム20の長手方向に沿って搬送する。
ベルトコンベア23は、図3(a)及び図3(b)に示されるように、ベルトコンベア23の骨格を形成するフレーム24と、フレーム24の両端部において回転自在に設けられてベルト26が掛け渡される回転軸25とを備える。更に、ベルトコンベア23は、フレーム24に沿うように配置され、回転軸25が回転することによって前後方向に移動し、載置された商品を搬送するベルト26を備える。更に、ベルトコンベア23は、回転軸25を回転させる動力の動力源であるモータ27と、モータ27の動力を回転軸25に伝達する動力伝達部28とを備える。更に、ベルトコンベア23は、ベルト26に連動して移動し、ベルト26に載置された商品を前方に押すプッシャ29と、プッシャ29の下部からフレーム24の側面部に向かって下方に突出するように設けられたセンサドグ30とを備える。
また、ベルトコンベア23には、複数のセンサ50が設けられる。複数のセンサ50は、モータ27に設けられ、モータ27の回転変位量を検知するロータリエンコーダ51を含む。ロータリエンコーダ51は、モータ27の回転軸に設けられたスリットを通過及び遮蔽される光のパルス数と、1パルス当たりのモータの回転変位量とに基づいて、モータ27の回転変位量を検知することができる。ロータリエンコーダ51は、モータ27の回転変位量を検知することによって、モータ27と連動して回転し、ベルト26を移動させ回転軸25の回転変位量を検知することができる。
更に、複数のセンサ50は、フレーム24の後方の側面部に設けられ、ベルト26が基準位置P1に位置するか否かを検知する基準位置検知センサ52を含む。ベルト26の位置は、ベルト26と連動して移動するプッシャ29の位置によって定義されてよい。ベルト26の移動量Dは、ベルト26と連動して移動するプッシャ29の移動量によって定義されてよい。基準位置P1は、ベルト26と連動して後方に移動するプッシャ29の移動限界位置である。言い換えると、基準位置P1は、プッシャ29を最も後方まで移動させた場合のプッシャ29の位置である。基準位置検知センサ52は、互いに間隔をあけて対向する発光部及び受光部を有する透過型のフォトセンサによって構成される。基準位置検知センサ52は、プッシャ29に設けられたセンサドグ30が、発光部と受光部との間に位置するか否かを検知することによって、ベルト26が基準位置P1に位置するか否かを検知することができる。
更に、複数のセンサ50は、フレーム24の前方の側面部に設けられて、ベルト26がエンド位置P3に位置するか否かを検知するエンド位置検知センサ53を含む。エンド位置P3は、ベルト26と連動して前方に移動するプッシャ29の移動限界位置である。言い換えると、エンド位置P3は、プッシャ29を最も前方まで移動させた場合のプッシャ29の位置である。エンド位置検知センサ53は、互いに間隔をあけて対向する発光部及び受光部を有する透過型のフォトセンサによって構成される。エンド位置検知センサ53は、プッシャ29に設けられたセンサドグ30が、発光部と受光部との間に位置するか否かを検知することによって、ベルト26がエンド位置P3に位置するか否かを検知することができる。
更に、複数のセンサ50は、フレーム24の搬入出部22の近傍に設けられて、搬入出部22に商品が位置するか否かを検知する商品検知センサ54を含む。商品検知センサ54は、それぞれが上方に向けて配置された発光部及び受光部を有する反射型のフォトセンサによって構成される。商品検知センサ54は、発光部の発光面及び受光部の受光面が、搬入出部22に位置する商品によって覆われるように配置される。商品検知センサ54は、発光部から発せられた光が、搬入出部22に位置する商品によって反射されて受光部に受光されたか否かを検知することによって、搬入出部22に商品が位置するか否かを検知することができる。
更に、複数のセンサ50は、仕切板21の有無を検知する仕切板検知センサ55を含む。仕切板検知センサ55は、複数のコラム20のそれぞれの間に設けられる。仕切板検知センサ55は、複数のコラム20のそれぞれの間に配置される仕切板21と、1対1の対応関係で関連付けられている。仕切板検知センサ55は、隣り合う2つのベルトコンベア23のうちの少なくとも1つのベルトコンベア23のフレーム24の側面部に設けられてよい。
仕切板検知センサ55は、それぞれがフレーム24の外側の側方に向けて配置された発光部及び受光部を有する反射型のフォトセンサによって構成される。仕切板21が有る場合、仕切板検知センサ55は、発光部の発光面及び受光部の受光面が、仕切板21によって覆われるように配置される。仕切板検知センサ55は、発光部から発せられた光が、仕切板21によって反射されて受光部に受光されたか否かを検知することによって、仕切板21の有無を検知することができる。
図4は、実施形態1に係る自動販売機1の機能的構成を示すブロック図である。
制御部70は、プロセッサ及び記憶装置を含み、自動販売機1の動作を制御する制御ユニットである。制御部70は、図4に示されるように、自動販売機1の構成要素の動作を統括的に制御する主制御部71と、ベルトコンベア23及びエレベータ40の動作とを制御する搬送制御部72とを含む。
制御部70には、ロータリエンコーダ51、基準位置検知センサ52、エンド位置検知センサ53及び商品検知センサ54を含む複数のセンサ50が接続され、これらの複数のセンサ50の検知結果が制御部70に通知される。また、制御部70には、ベルトコンベア23のモータ27及びエレベータ40が接続され、複数のセンサ50の検知結果に基づいて、ベルトコンベア23のモータ27及びエレベータ40の動作を制御する。
特に、制御部70は、複数のセンサ50の検知結果に基づいて、ベルトコンベア23におけるベルト26の移動量Dを取得する。そして、制御部70は、取得されたベルト26の移動量Dに基づいて、複数のコラム20のそれぞれに収納された商品の数を算出することができる。それにより、制御部70は、自動販売機1における商品の在庫状況を管理することができる。
自動販売機1における商品の在庫状況は、自動販売機1での商品の販売等によって複数のコラム20から商品が搬出されたり、自動販売機1への商品の補充作業等によって複数のコラム20に対して商品が搬入されたりすることによって変化する。本実施形態では、自動販売機1の在庫管理に関する処理であって、複数のコラム20から商品が搬出される際に行われる処理を、「商品搬出処理」とも称する。本実施形態では、自動販売機1の在庫管理に関する処理であって、複数のコラム20に対して商品が搬入される際に行われる処理を、「商品搬入処理」とも称する。本実施形態では、自動販売機1の在庫管理に関する処理であって、自動販売機1における商品の在庫を確認する処理を、「在庫確認処理」とも称する。なお、在庫確認処理の詳細については、図6〜図8を用いて後述する。商品搬出処理の詳細については、図9及び図10を用いて後述する。商品搬入処理の詳細については、図11及び図12を用いて後述する。
また、制御部70には、自動販売機1の外部にある外部装置Eとの間で通信を行う通信部60が接続される。外部装置Eは、自動販売機1を管理する管理サーバ、又は、自動販売機1のオペレータが所持する携帯端末である。通信部60は、外部装置Eから送信された、複数のコラム20に収納される商品の商品情報を受信し、制御部70へ通知する。外部装置Eから送信される商品情報には、商品の画像、名称、種類、価格、商品説明等の情報の他、複数のコラム20に対する商品のレイアウトを特定可能な付帯情報が付帯されている。付帯情報は、商品情報のメタデータであってよい。
制御部70は、付帯情報から複数のコラム20に対する商品のレイアウトを特定する。そして、制御部70は、特定されたレイアウトに応じて商品が複数のコラム20に収納され、ベルトコンベア23にて搬送可能となるよう、特定されたレイアウトと複数のコラム20との関連付けを行う。本実施形態では、複数のコラム20に対する商品のレイアウトを設定する処理を、「レイアウト設定処理」とも称する。レイアウト設定処理の詳細については、図5を用いて後述する。
複数のコラム20に対する商品のレイアウトは、自動販売機1を管理する管理サーバによって予め決定される。この場合、付帯情報は、複数のコラム20とこれらに収納される商品との対応関係を示すレイアウト情報を含む。制御部70は、管理サーバから送信された商品情報及び付帯情報を通信部60で受信することで、レイアウト情報を取得することができる。
なお、複数のコラム20に対する商品のレイアウトは、自動販売機1を管理するオペレータによって決定されてもよい。オペレータは、管理サーバから送信された商品情報及び付帯情報を、携帯端末にて受信し、表示させる。そして、オペレータは、付帯情報に含まれるレイアウト情報及び商品情報に基づいて、複数のコラム20とこれらに収納される商品との対応関係を決定してレイアウト情報を更新し、自動販売機1に送信する。制御部70は、管理サーバから送信された商品情報及び付帯情報を、オペレータの携帯端末を介して通信部60で受信することで、レイアウト情報を取得することができる。
[実施形態1:自動販売機の在庫管理に関する処理]
図5は、実施形態1に係るレイアウト設定処理の流れを示すフローチャートである。
ステップ501において、制御部70は、外部装置Eから送信されて通信部60にて受信された商品情報を取得し、取得された商品情報に付帯する付帯情報を抽出する。
ステップ502において、制御部70は、付帯情報に基づいて、複数のコラム20に対する商品のレイアウトを特定する。具体的には、制御部70は、付帯情報に含まれるレイアウト情報を参照し、複数のコラム20に対する商品のレイアウトを特定する。
ステップ503において、制御部70は、複数のコラム20に含まれる一のコラム20と、これに隣り合う他のコラム20との間に設けられた仕切板検知センサ55の検知結果を取得する。
ステップ504において、制御部70は、取得された仕切板検知センサ55の検知結果に基づいて、一のコラム20と他のコラム20との間に仕切板21が有るか否かを判断する。制御部70は、一のコラム20と他のコラム20との間に仕切板21が有れば、ステップ506へ移行する。一方、制御部70は、一のコラム20と他のコラム20との間に仕切板21が無ければ、ステップ505へ移行する。
ステップ505において、制御部70は、一のコラム20と他のコラム20とは、これらに跨って商品を収納可能な第1コラム群に属すると判断する。上述のように、一のコラム20に収納される商品の幅方向のサイズが、一のコラム20の幅方向のサイズよりも大きい場合、当該商品は一のコラム20と他のコラム20とに跨って収納される。そのため、一のコラム20と他のコラム20とは、これらの間に仕切板21が無い状態である必要がある。よって、制御部70は、一のコラム20と他のコラム20との間に仕切板21が無い場合、一のコラム20と他のコラム20とは、これらに跨って商品を収納可能な第1コラム群に属すると判断する。
また、この場合、一のコラム20を構成するベルトコンベア23と、他のコラム20を構成するベルトコンベア23とは、同期して動作するように設定される必要がある。これらのベルトコンベア23が同期して動作しないと、一のコラム20と他のコラム20とに跨って収納された商品が適切に搬送されず、自動販売機1の誤動作を招く可能性があるからである。制御部70は、一のコラム20と他のコラム20との間に仕切板21が無い場合、一のコラム20を構成するベルトコンベア23と、他のコラム20を構成するベルトコンベア23とは、同期して動作させる第1コンベア群に属すると判断する。
ステップ506において、制御部70は、一のコラム20と他のコラム20とは、これらに跨って商品を収納可能でない第2コラム群に属すると判断する。すなわち、制御部70は、一のコラム20と他のコラム20との間に仕切板21が有る場合、一のコラム20と他のコラム20とは、これらに跨って商品を収納可能でない第2コラム群に属すると判断する。また、制御部70は、一のコラム20と他のコラム20との間に仕切板21が有る場合、一のコラム20を構成するベルトコンベア23と、他のコラム20を構成するベルトコンベア23とは、同期して動作させない第2コンベア群に属すると判断する。
ステップ507において、制御部70は、自動販売機1に含まれる全てのコラム20の間において仕切板21の有無を確認したか否かを判断する。制御部70は、全てのコラム20の間において仕切板21の有無を確認していない場合、ステップ503へ移行する。一方、制御部70は、全てのコラム20の間において仕切板21の有無を確認した場合、ステップ508へ移行する。
ステップ508において、制御部70は、複数のコラム20における第1コラム群の位置と第2コラム群の位置とを特定する。
ステップ509において、制御部70は、特定された第1コラム群の位置と第2コラム群の位置とに基づいて、付帯情報にて特定されたレイアウトに応じて商品が収納可能か否かを判断する。制御部70は、付帯情報にて特定されたレイアウトに応じて商品が収納可能でなければ、ステップ512へ移行する。一方、制御部70は、付帯情報にて特定されたレイアウトに応じて商品が収納可能であれば、ステップ510へ移行する。
ステップ510において、制御部70は、付帯情報にて特定されたレイアウトに応じて収納される商品が適切に搬送可能となるよう、複数のベルトコンベア23のそれぞれに動作設定値を設定する。例えば、制御部70は、第1コンベア群に属するベルトコンベア23には、隣り合うベルトコンベア23が同期して動作するように動作設定値を設定する。第1コンベア群が複数存在する場合、制御部70は、1つの第1コンベア群に属するベルトコンベア23が同期して動作するように動作設定値を設定し、全ての第1コンベア群に属するベルトコンベア23が同期して動作させるわけではない。また、制御部70は、第2コンベア群に属するベルトコンベア23には、それぞれが独立して動作するように動作設定値を設定する。
ステップ511において、制御部70は、複数のベルトコンベア23のそれぞれに対する動作設定値の設定内容を示す設定情報を、通信部60から外部装置Eに送信する。その後、制御部70は、本処理を終了する。
ステップ512において、制御部70は、仕切板21の配置を変更するよう報知する。具体的には、制御部70は、仕切板21の配置を変更することが必要である旨を、筐体2の内側に配置された表示部11とは異なる他の表示部に表示したり、通信部60からオペレータの携帯端末に送信したりすることによって報知する。また、制御部70は、仕切板21の配置を変更することが必要である旨を、管理サーバに送信してよい。その後、制御部70は、本処理を終了する。
図6は、実施形態1に係る在庫確認処理の流れを示すフローチャートである。図7は、実施形態1に係るベルトコンベア23のコンベア有効長Lを説明するための図を示す。図8は、実施形態1に係る在庫確認処理を説明するための図を示す。図8(a)は、実施形態1に係る在庫確認処理が行われる前のベルトコンベア23の様子を示す。図8(b)は、実施形態1に係る在庫確認処理においてベルト26を基準位置P1に移動させた後のベルトコンベア23の様子を示す。図8(c)は、実施形態1に係る在庫確認処理において最前の商品が搬入出部22に位置するようベルト26を移動させた後のベルトコンベア23の様子を示す。なお、図8(a)〜図8(c)では、仕切板21の図示が省略されている。
在庫確認処理が行われる前、ベルトコンベア23のベルト26は、図8(a)に示されるように、コラム20に収納された商品のうち最も前方にある商品が搬入出部22に位置するような状態にあることが望ましい。詳細には、ベルト26は、コラム20に収納された商品のうち最も前方にある商品の最前部が商品検知センサ54の位置P2に位置するような状態にあることが望ましい。搬入出部22に位置する商品は、その後の販売等によってコラム20から搬出される商品であり、コラム20からの搬出をスタンバイしている商品である。
本実施形態では、コラム20に収納された商品のうち最も前方にある商品が搬入出部22に位置する場合におけるベルト26の位置を、「スタンバイ位置Ps」とも称する。スタンバイ位置Psは、コラム20に収納された商品の前後方向のサイズと、コラム20に収納された商品の数とによって、前後方向に変動する。ベルト26がスタンバイ位置Psに位置することが望ましいことは、在庫確認処理が行われる前に限らず、商品搬出処理が行われる前、及び、商品搬入処理が行われる前も同様である。本実施形態では、在庫確認処理、商品搬出処理又は商品搬入処理等が行われる前のベルト26のスタンバイ位置Psを、「スタンバイ位置Ps1」とも称する。本実施形態では、在庫確認処理、商品搬出処理又は商品搬入処理等が行われた後のベルト26のスタンバイ位置Psを、「スタンバイ位置Ps2」とも称する。
ステップ601において、制御部70は、一のコラム20を構成するベルトコンベア23のコンベア有効長Lと、一のコラム20に収納される商品の商品サイズとを特定する。コンベア有効長Lとは、図7に示されるように、ベルト26が基準位置P1に位置する場合における、プッシャ29の前面29aと商品検知センサ54との距離である。特定される商品サイズは、商品の前後方向のサイズである。
ステップ602において、制御部70は、ベルト26が基準位置P1に向けて移動するようモータ27を駆動させる。すなわち、制御部70は、ベルト26が後方に移動するようモータ27を駆動させる。
ステップ603において、制御部70は、基準位置検知センサ52がプッシャ29のセンサドグ30を検知したか否かを判断する。制御部70は、基準位置検知センサ52がセンサドグ30を検知していない場合、ステップ602へ移行する。一方、制御部70は、基準位置検知センサ52がセンサドグ30を検知した場合、ステップ604へ移行する。
ステップ604において、制御部70は、ベルト26の移動が停止するようモータ27の駆動を停止する。すなわち、制御部70は、図8(b)に示されるようにベルト26が基準位置P1に位置すると、ベルト26の移動を停止する。
ステップ605において、制御部70は、ベルト26が搬入出部22に向けて移動するようモータ27を駆動させる。すなわち、制御部70は、ベルト26が前方に移動するようモータ27を駆動させる。
ステップ606において、制御部70は、ロータリエンコーダ51にて検知されたモータ27の回転変位量を取得する。
ステップ607において、制御部70は、商品検知センサ54の検知結果が第1検知結果を示すか否かを判断する。第1検知結果とは、搬入出部22に商品が位置することを示す、商品検知センサ54の検知結果である。第2検知結果とは、搬入出部22に商品が位置しないことを示す、商品検知センサ54の検知結果である。
ステップ607において商品検知センサ54の検知結果が第1検知結果を示す場合は、コラム20に収納された最前の商品が搬入出部22に位置するまで移動し、ベルト26がスタンバイ位置Ps2まで移動した場合を示す。この場合、制御部70は、ベルト26の移動を停止させるために、ステップ608へ移行する。一方、ステップ607において商品検知センサ54の検知結果が第1検知結果を示さない場合は、コラム20に商品が収納されていない場合、又は、コラム20に商品が収納されているがベルト26がスタンバイ位置Ps2より後方に位置する場合を示す。制御部70は、何れの場合かを判断するために、ステップ611へ移行する。
ステップ608において、制御部70は、ベルト26の移動が停止するようモータ27の駆動を停止する。すなわち、制御部70は、図8(c)に示されるようにベルト26がスタンバイ位置Ps2に位置すると、ベルト26の移動を停止する。なお、在庫確認処理においては、スタンバイ位置Ps2は、在庫確認処理が行われる前のスタンバイ位置Ps1と略一致する。
ステップ609において、制御部70は、モータ27の回転変位量に基づいてベルト26の移動量Dを取得する。ベルト26の移動量Dは、回転軸25の回転変位量と相関関係があり、回転軸25の回転変位量は、モータ27の回転変位量と相関関係がある。これらの相関関係は、制御部70によって予め把握されている。制御部70は、ロータリエンコーダ51にて検知されたモータ27の回転変位量と、これらの相関関係と用いて、ベルト26の移動量Dを取得することができる。
例えば、回転軸25の回転変位量が、モータ27の回転変位量と1対1の対応関係にあり、回転軸25の単位回転変位量当たりのベルト26の移動量が把握されているとする。この場合、制御部70は、回転軸25の単位回転変位量当たりのベルト26の移動量と、ロータリエンコーダ51にて検知されたモータ27の回転変位量とを乗算することによって、ベルト26の移動量Dを取得することができる。ステップ609において取得されたベルト26の移動量Dは、ベルト26がスタンバイ位置Ps2と基準位置P1との間を移動した際に取得されるベルト26の移動量Dである。
ステップ610において、制御部70は、ステップ609にて取得されたベルト26の移動量Dと、ステップ601にて特定されたコンベア有効長Lと、ステップ601にて特定された商品サイズとから、コラム20に収納された商品の数である商品収納数を算出する。その後、制御部70は、ステップ614へ移行する。
制御部70は、次の式(1)を用いて、コラム20の商品収納数を算出することができる。
商品収納数={(コンベア有効長L)−(ベルトの移動量D)}/(商品の前後方向のサイズ)・・・・式(1)
ステップ611において、制御部70は、エンド位置検知センサ53がプッシャ29のセンサドグ30を検知したか否かを判断する。ステップ611においてエンド位置検知センサ53がセンサドグ30を検知していない場合は、コラム20に商品が収納されているが、ベルト26がスタンバイ位置Ps2より後方に位置する場合を示す。この場合、制御部70は、ベルト26をスタンバイ位置Ps2まで移動させるために、ステップ605へ移行する。一方、ステップ611においてエンド位置検知センサ53がセンサドグ30を検知した場合は、コラム20に商品が収納されていない場合を示す。この場合、制御部70は、ベルト26の移動を停止させるために、ステップ612へ移行する。
ステップ612において、制御部70は、ベルト26の移動が停止するようモータ27の駆動を停止する。すなわち、制御部70は、ベルト26がエンド位置P3に位置すると、ベルト26の移動を停止する。
ステップ613において、制御部70は、コラム20の商品収納数がゼロであると判断する。その後、制御部70は、ステップ614へ移行する。
ステップ614において、制御部70は、自動販売機1に含まれる全てのコラム20について商品収納数を算出したか否かを判断する。制御部70は、全てのコラム20について商品収納数を算出していない場合、ステップ601へ移行する。一方、制御部70は、全てのコラム20について商品収納数を算出した場合、ステップ615へ移行する。
ステップ615において、制御部70は、複数のコラム20のそれぞれの商品収納数を集計する。
ステップ616において、制御部70は、複数のコラム20と、これらに収納される商品と、これらの商品収納数との対応関係を示す自動販売機1の在庫情報を更新する。そして、制御部70は、更新された在庫情報を通信部60から外部装置Eに送信する。その後、制御部70は、本処理を終了する。
図9は、実施形態1に係る商品搬出処理の流れを示すフローチャートである。図10は、実施形態1に係る商品搬出処理を説明するための図を示す。図10(a)は、実施形態1に係る商品搬出処理において商品搬出処理が行われる前のベルトコンベア23の様子を示す。図10(b)は、実施形態1に係る商品搬出処理において最前の商品を搬出した後のベルトコンベア23の様子を示す。図10(c)は、実施形態1に係る商品搬出処理において後続商品を後退させた後のベルトコンベア23の様子を示す。
ステップ901において、制御部70は、商品の販売等によってコラム20の外に搬出される商品が収納されたコラム20のベルトコンベア23と、搬出される商品の前後方向の商品サイズとを特定する。商品の販売等によってコラム20の外に商品が搬出される場合、表示部11及び支払部12等から制御部70に対して、搬出される商品が収納されたコラム20が通知される。制御部70は、この通知に基づいて、搬出される商品が収納されたコラム20のベルトコンベア23と、搬出される商品の前後方向の商品サイズとを特定する。
ステップ902において、制御部70は、商品検知センサ54の検知結果が第1検知結果を示すか否かを判断する。すなわち、制御部70は、ベルト26がスタンバイ位置Ps1に位置するか否かを判断する。上述のように、商品搬出処理が行われる前、ベルトコンベア23は、図10(a)に示されるようにベルト26がスタンバイ位置Ps1に位置するよう、制御部70によって予め制御されている。しかしながら、自動販売機1に不測の事態が発生し、ベルト26がスタンバイ位置Ps1に位置しない可能性もある。そこで、制御部70は、ベルト26がスタンバイ位置Ps1に位置するか否かを判断する。制御部70は、商品検知センサ54の検知結果が第1検知結果を示さない場合、ステップ915へ移動する。一方、制御部70は、商品検知センサ54の検知結果が第1検知結果を示す場合、ステップ903へ移行する。
ステップ903において、制御部70は、ベルト26の基本目標移動量Dt1と追加目標移動量Dt2とを特定する。ベルト26の基本目標移動量Dt1とは、搬出される最前の商品が搬入出部22を通過し終わるために必要なベルト26の移動量である。詳細には、基本目標移動量Dt1は、図10(b)に示されるように、搬出される最前の商品の最前部が商品検知センサ54の位置P2に位置するような状態から、当該商品の最後部が商品検知センサ54の位置P2を通過した状態となるまでに必要なベルト26の移動量である。基本目標移動量Dt1は、1個の商品の前後方向のサイズに相当する。
ベルト26の追加目標移動量Dt2とは、エレベータ40への商品の引き渡しに必要なベルト26の移動量である。言い換えると、追加目標移動量Dt2は、搬出される最前の商品をプッシャ29でエレベータ40へ押し込むために必要なベルト26の移動量である。詳細には、追加目標移動量Dt2は、図10(b)に示されるように、搬出される最前の商品の最後部が商品検知センサ54の位置P2を通過した状態から、当該商品がエレベータ40に適切に載せられた状態となるまでに必要なベルト26の移動量である。追加目標移動量Dt2は、商品及びエレベータ40の前後方向のサイズ、並びに、エレベータ40と搬入出部22との距離に基づいて、予め定められている。
ステップ904において、制御部70は、ベルト26の基本目標移動量Dt1と追加目標移動量Dt2とから、ベルト26の目標移動量Dtを取得する。具体的には、制御部70は、ベルト26の基本目標移動量Dt1と追加目標移動量Dt2とを加算することによって、ベルト26の目標移動量Dtを取得する。
ステップ905において、制御部70は、ベルト26が搬入出部22に向けて移動するようモータ27を駆動させる。
ステップ906において、制御部70は、ロータリエンコーダ51にて検知されたモータ27の回転変位量を取得する。
ステップ907において、制御部70は、モータ27の回転変位量に基づいてベルト26の移動量Dを取得する。
ステップ908において、制御部70は、ベルト26が目標移動量Dtだけ移動したか否かを判断する。具体的には、制御部70は、ステップ907にて取得されたベルト26の移動量Dが、ステップ904にて取得されたベルト26の目標移動量Dtに到達したか否かを判断する。制御部70は、ベルト26が目標移動量Dtだけ移動していない場合、ステップ905へ移行する。一方、制御部70は、ベルト26が目標移動量Dtだけ移動した場合、ステップ909へ移行する。
ステップ909において、制御部70は、ベルト26の移動が停止するようモータ27の駆動を停止する。すなわち、制御部70は、図10(b)に示されるようにベルト26が目標移動量Dtだけ移動すると、ベルト26の移動を停止する。搬出される最前の商品は、搬入出部22からコラム20の外へ搬出され、エレベータ40へ引き渡される。
ステップ910において、制御部70は、ベルト26が基準位置P1に向けて移動するようモータ27を駆動させる。すなわち、制御部70は、搬出される最前の商品が搬入出部22に向けて搬送される方向とは逆方向にベルト26を移動させて、後続商品を後退させる。
ステップ911において、制御部70は、商品検知センサ54の検知結果が第1検知結果から第2検知結果に切り替わったか否かを判断する。ステップ909にてベルト26が目標移動量Dtだけ移動した状態では、搬出される最前の商品に後続する後続商品は、ステップ903にて特定されたベルト26の追加目標移動量Dt2の分だけ、搬入出部22から前方にはみ出した状態となる。そこで、制御部70は、後続商品が搬入出部22から前方にはみ出した状態が是正されるよう、後続商品を後退させる。具体的には、制御部70は、後続商品の最前部を商品検知センサ54の位置P2まで後退させる。
ステップ911において商品検知センサ54の検知結果が第1検知結果から第2検知結果に切り替わっていない場合は、後続商品の最前部が商品検知センサ54の位置P2まで後退していない場合を示す。この場合、制御部70は、後続商品の最前部が商品検知センサ54の位置P2まで後退させるために、ステップ910へ移行する。一方、ステップ911において商品検知センサ54の検知結果が第1検知結果から第2検知結果に切り替わった場合は、後続商品の最前部が商品検知センサ54の位置P2まで後退した場合を示す。この場合、制御部70は、ベルト26の移動を停止させるために、ステップ912へ移行する。
ステップ912において、制御部70は、ベルト26の移動が停止するようモータ27の駆動を停止する。すなわち、制御部70は、図10(c)に示されるように、後続商品の最前部が商品検知センサ54の位置P2まで後退すると、ベルト26の移動を停止する。これにより、後続商品は搬入出部22から前方にはみ出した状態が是正されて搬入出部22に適切に位置し、ベルト26はスタンバイ位置Ps2に位置し得る。
ステップ913において、制御部70は、商品が搬出される前のコラム20の商品収納数から、搬出された商品の数である1を減算して、コラム20の商品収納数を更新する。
ステップ914において、制御部70は、自動販売機1の在庫情報を更新する。そして、制御部70は、更新された在庫情報を通信部60から外部装置Eに送信する。その後、制御部70は、本処理を終了する。
ステップ915において、制御部70は、ベルト26が搬入出部22に向けて移動するようモータ27を駆動させる。ステップ902において商品検知センサ54の検知結果が第1検知結果を示さない場合は、コラム20に商品が収納されているか否かが不明である場合である。制御部70は、コラム20に商品が収納されているか否かを判断するために、ステップ915のようにベルト26を前方へ移動させる。
ステップ916において、制御部70は、商品検知センサ54の検知結果が第1検知結果を示すか否かを判断する。ステップ916において商品検知センサ54の検知結果が第1検知結果を示す場合は、コラム20に商品が収納されており、搬出される最前の商品が搬入出部22へ位置するまで移動し、ベルト26がスタンバイ位置Ps1まで移動した場合を示す。この場合、制御部70は、ベルト26の移動を停止させるために、ステップ917へ移行する。一方、ステップ916において商品検知センサ54の検知結果が第1検知結果を示さない場合は、コラム20に商品が収納されていない場合、又は、コラム20に商品が収納されているがベルト26がスタンバイ位置Ps1より後方に位置する場合を示す。この場合、制御部70は、何れの場合かを判断するために、ステップ918へ移行する。
ステップ917において、制御部70は、ベルト26の移動が停止するようモータ27の駆動を停止する。すなわち、制御部70は、ベルト26がスタンバイ位置Ps1に位置すると、ベルト26の移動を停止する。
ステップ918において、制御部70は、エンド位置検知センサ53がプッシャ29のセンサドグ30を検知したか否かを判断する。ステップ918においてエンド位置検知センサ53がセンサドグ30を検知していない場合は、コラム20に商品が収納されているが、ベルト26がスタンバイ位置Ps1より後方に位置する場合を示す。この場合、制御部70は、ベルト26をスタンバイ位置Ps1まで移動させるために、ステップ915へ移行する。一方、ステップ918においてエンド位置検知センサ53がセンサドグ30を検知した場合は、コラム20に商品が収納されていない場合を示す。この場合、制御部70は、ベルト26の移動を停止させるために、ステップ919へ移行する。
ステップ919において、制御部70は、ベルト26の移動が停止するようモータ27の駆動を停止する。すなわち、制御部70は、ベルト26がエンド位置P3に位置すると、ベルト26の移動を停止する。
ステップ920において、制御部70は、コラム20の商品収納数がゼロであると判断する。
ステップ921において、制御部70は、商品の搬出が不可である旨を報知する。具体的には、制御部70は、商品の搬出が不可である旨を、筐体2の内側に配置された表示部11とは異なる他の表示部に表示したり、通信部60からオペレータの携帯端末に送信したりすることによって報知する。また、制御部70は、商品の搬出が不可である旨を、管理サーバに送信する。その後、制御部70は、在庫情報を更新するために、ステップ914へ移行する。
図11は、実施形態1に係る商品搬入処理の流れを示すフローチャートである。図12は、実施形態1に係る商品搬入処理を説明するための図を示す。図12(a)は、実施形態1に係る商品搬入処理においてベルト26を基準位置P1へ移動させた後のベルトコンベア23の様子を示す。図12(b)は、実施形態1に係る商品搬入処理において商品を1個搬入した後のベルトコンベア23の様子を示す。図12(c)は、実施形態1に係る商品搬入処理において最前の商品が搬入出部22に位置するようベルト26を移動させた後のベルトコンベア23の様子を示す。
ステップ1101において、制御部70は、商品の補充等によって商品が搬入されるコラム20のベルトコンベア23と、このベルトコンベア23のコンベア有効長Lと、搬入される商品の前後方向の商品サイズとを特定する。商品の補充等によってコラム20に商品が搬入される場合、外部装置Eから通信部60に対して、商品が搬入されるコラム20が通知される。制御部70は、この通知に基づいて、商品が搬入されるコラム20のベルトコンベア23と、搬入される商品の前後方向の商品サイズとを特定する。
ステップ1102において、制御部70は、ベルト26が基準位置P1に向けて移動するようモータ27を駆動させる。
ステップ1103において、制御部70は、基準位置検知センサ52がプッシャ29のセンサドグ30を検知したか否かを判断する。制御部70は、基準位置検知センサ52がセンサドグ30を検知していない場合、ステップ1102へ移行する。一方、制御部70は、基準位置検知センサ52がセンサドグ30を検知した場合、ステップ1104へ移行する。
ステップ1104において、制御部70は、ベルト26の移動が停止するようモータ27の駆動を停止する。すなわち、制御部70は、図12(a)に示されるようにベルト26が基準位置P1に位置すると、ベルト26の移動を停止する。これにより、商品を搬入可能なスペースSが、ベルトコンベア23の前側、すなわち、ベルトコンベア23の搬入出部22に近い側に確保され得る。
ステップ1105において、制御部70は、商品の搬入が開始可能である旨を報知する。具体的には、制御部70は、商品の搬入が開始可能である旨を、筐体2の内側に配置された表示部11とは異なる他の表示部に表示したり、通信部60からオペレータの携帯端末に送信したりすることによって報知する。また、制御部70は、商品の搬入が開始可能である旨を、管理サーバに送信してよい。商品の搬入は、オペレータが商品を手動でスペースSに載置することによって行われてよい。
ステップ1106において、制御部70は、商品の搬入が終了したか否かを判断する。オペレータは、商品の搬入が終了すると、商品の搬入が終了した旨を、携帯端末から通信部60へ送信してもよい。或いは、オペレータは、商品の搬入が終了した旨を、携帯端末から管理サーバへ送信し、管理サーバが通信部60へ送信してもよい。制御部70は、商品の搬入が終了した旨の通知に基づいて、商品の搬入が終了したか否かを判断してよい。また、制御部70は、タイマーの計時に基づいて、商品の搬入が終了したか否かを判断してもよい。具体的には、制御部70は、タイマーが所定時間の経過を計時するまでは商品の搬入が終了していないと判断し、タイマーが所定時間の経過を計時すると商品の搬入が終了したと判断してもよい。制御部70は、商品の搬入が終了するまで待機する。一方、制御部70は、図12(b)に示されるように商品の搬入が終了した場合、ステップ1107へ移行する。
ステップ1107において、制御部70は、ベルト26が搬入出部22に向けて移動するようモータ27を駆動させる。
ステップ1108において、制御部70は、ロータリエンコーダ51にて検知されたモータ27の回転変位量を取得する。
ステップ1109において、制御部70は、商品検知センサ54の検知結果が第1検知結果を示すか否かを判断する。ステップ1109において商品検知センサ54の検知結果が第1検知結果を示す場合は、搬入された最前の商品が搬入出部22に位置するまで移動し、ベルト26がスタンバイ位置Ps2まで移動した場合を示す。この場合、制御部70は、ベルト26の移動を停止させるために、ステップ1110へ移行する。一方、ステップ1109において商品検知センサ54の検知結果が第1検知結果を示さない場合は、コラム20に商品が収納されていない場合、又は、コラム20に商品が収納されているがベルト26がスタンバイ位置Ps2より後方に位置する場合を示す。制御部70は、何れの場合かを判断するために、ステップ1114へ移行する。
ステップ1110において、制御部70は、ベルト26の移動が停止するようモータ27の駆動を停止する。すなわち、制御部70は、図12(c)に示されるようにベルト26がスタンバイ位置Ps2に位置すると、ベルト26の移動を停止する。
ステップ1111において、制御部70は、モータ27の回転変位量に基づいてベルト26の移動量Dを取得する。
ステップ1112において、制御部70は、ステップ1111にて取得されたベルト26の移動量Dと、ステップ1101にて特定されたコンベア有効長Lと、ステップ1101にて特定された商品サイズとから、商品収納数を算出する。制御部70は、上述の式(1)を用いて、コラム20の商品収納数を算出することができる。その後、制御部70は、ステップ1113へ移行する。
ステップ1113において、制御部70は、自動販売機1の在庫情報を更新する。そして、制御部70は、更新された在庫情報を通信部60から外部装置Eに送信する。その後、制御部70は、本処理を終了する。
ステップ1114において、制御部70は、エンド位置検知センサ53がプッシャ29のセンサドグ30を検知したか否かを判断する。ステップ1114においてエンド位置検知センサ53がセンサドグ30を検知していない場合は、コラム20に商品が収納されているが、ベルト26がスタンバイ位置Ps2より後方に位置する場合を示す。この場合、制御部70は、ベルト26をスタンバイ位置Ps2まで移動させるために、ステップ1107へ移行する。一方、ステップ1114においてエンド位置検知センサ53がセンサドグ30を検知した場合は、コラム20に商品が収納されていない場合を示す。この場合、制御部70は、ベルト26の移動を停止させるために、ステップ1115へ移行する。
ステップ1115において、制御部70は、ベルト26の移動が停止するようモータ27の駆動を停止する。すなわち、制御部70は、ベルト26がエンド位置P3に位置すると、ベルト26の移動を停止する。
ステップ1116において、制御部70は、コラム20の商品収納数がゼロであると判断する。その後、制御部70は、在庫情報を更新するために、ステップ1113へ移行する。
[実施形態1:作用効果]
以上のように、実施形態1に係る自動販売機1は、商品を収納するコラム20の一部をベルトコンベア23で構成する。そして、ベルトコンベア23の動作を制御する制御部70は、商品が搬送される際に移動するベルト26の移動量に基づいて、コラム20に収納された商品の数を算出する。このため、自動販売機1は、複雑な構成でなくとも、様々な商品サイズの商品を収納して販売することができ、且つ、実際に収納された商品の数を計測することができる。よって、実施形態1に係る自動販売機1は、商品レイアウトの自由度が高く、商品の在庫数を正確に計測可能な自動販売機を簡易な構成で実現することができる。
特に、実施形態1に係るベルトコンベア23には、ベルト26を移動させるモータ27の回転変位量を検知するロータリエンコーダ51が設けられる。そして、実施形態1に係る制御部70は、ロータリエンコーダ51の検知結果に基づいて、ベルト26の移動量を取得することによって、コラム20に収納された商品の数を算出する。このため、自動販売機1は、簡易な構成によってベルト26の移動量を取得することができ、コラム20に収納された商品の数を算出することができる。よって、実施形態1に係る自動販売機1は、商品レイアウトの自由度が高く、商品の在庫数を正確に計測可能な自動販売機を、より簡易な構成で実現することができる。
更に、実施形態1に係るベルトコンベア23には、ベルト26が基準位置に位置するか否かを検知する基準位置検知センサ52が設けられる。そして、実施形態1に係る制御部70は、基準位置検知センサ52の検知結果に基づいてベルト26を基準位置まで移動させる。そして、制御部70は、ロータリエンコーダ51の検知結果に基づいて基準位置からのベルト26の移動量を取得することによって、コラム20に収納された商品の数を算出する。このため、自動販売機1は、従前のベルト26の位置に関わらず、ベルト26の移動量を正確に取得することができ、コラム20に収納された商品の数を正確に算出することができる。よって、実施形態1に係る自動販売機1は、商品レイアウトの自由度が高く、簡易な構成の自動販売機1であっても、商品の在庫数をより正確に計測する事ができる。
更に、実施形態1に係るベルトコンベア23には、その搬入出部22に対して、搬入出部22に商品が位置するか否かを検知する商品検知センサ54が設けられる。そして、実施形態1に係る制御部70は、商品が商品検知センサ54にて検知される際のベルト26の位置と基準位置との間において移動するベルト26の移動量を取得することによって、コラム20に収納された商品の数を算出する。このため、自動販売機1は、商品の搬入又は搬出があっても、ベルト26の移動量を正確に取得することができ、コラム20に収納された商品の数を正確に算出することができる。よって、実施形態1に係る自動販売機1は、商品レイアウトの自由度が高く、簡易な構成の自動販売機1であっても、商品の在庫数をより正確に計測する事ができる。
更に、実施形態1に係る商品検知センサ54は、商品が搬入出部22に位置することを示す第1検知結果と、商品が搬入出部22に位置しないことを示す第2検知結果とを制御部70に通知する。そして、制御部70は、商品の搬出後、商品検知センサ54の検知結果が第1検知結果から第2検知結果に切り替わるまで、ベルト26を逆方向に移動させ、搬出された商品に後続する後続商品を後退させる。このため、自動販売機1は、商品の搬出があっても、ベルト26の移動量を正確に取得することができると共に、後続商品をスムーズに搬出させることができる。よって、実施形態1に係る自動販売機1は、商品レイアウトの自由度が高く、簡易な構成の自動販売機1であっても、商品の在庫数をより正確に計測する事ができる。
また、実施形態1に係る自動販売機1は、商品の種類ごとに分かれて商品を収納する複数のコラム20のそれぞれの間において着脱自在に配置された仕切板21と、外部装置Eから送信された商品情報を受信する通信部60を備える。そして、制御部70は、仕切板21の有無と、商品情報に付帯された付帯情報とに基づいて、複数のコラム20のそれぞれの一部を構成する複数のベルトコンベア23の動作を制御する。このため、自動販売機1は、複雑な構成でなくとも、様々な商品サイズの商品を収納して販売することができる。しかも、制御部70は、商品が搬送される際に移動するベルト26の移動量に基づいて、コラム20に収納された商品の数を算出することができるため、複数のコラム20のそれぞれにおいて実際に収納された商品の数を計測することができる。よって、実施形態1に係る自動販売機1は、商品レイアウトの自由度が高く、商品の在庫数を正確に計測可能な自動販売機を簡易な構成で実現することができる。
特に、実施形態1に係る複数のコラム20には、仕切板21の有無を検知する仕切板検知センサ55が設けられる。そして、制御部70は、仕切板検知センサ55の検知結果に基づいて、付帯情報にて特定されたレイアウトに応じて商品が収納可能か否かを判断する。具体的には、制御部70は、複数のコラム20に含まれる一のコラム20とこれに隣り合う他のコラム20との間に設けられた仕切板検知センサ55の検知結果に基づいて、一のコラム20と他のコラム20とに跨って商品を収納可能であるか否かを判断する。そして、制御部70は、この判断結果に基づいて、付帯情報にて特定されたレイアウトに応じて商品が収納可能か否かを判断する。このため、自動販売機1は、簡易な構成によって、様々な商品サイズの商品を自由なレイアウトで統一的に取り扱うことができる。よって、実施形態1に係る自動販売機1は、商品の在庫数を正確に計測可能な自動販売機を、より簡易な構成で実現可能であると共に、商品レイアウトの自由度をより高めることができる。
更に、実施形態1に係る制御部70は、付帯情報にて特定されたレイアウトに応じて商品が収納可能であれば、収納される商品が搬送可能となるよう、複数のコンベアの動作を制御する。一方、制御部70は、付帯情報にて特定されたレイアウトに応じて商品が収納可能でなければ、仕切板21の配置を変更するよう報知する。このため、自動販売機1は、自動販売機1の外部で決定されたレイアウトと、現在の自動販売機1によって実現可能なレイアウトとが異なる場合であっても、仕切板21の配置を変更するだけで、外部で決定されたレイアウトに応じて商品を収納することができる。それにより、自動販売機1は、簡易な構成であっても、様々な商品サイズの商品を自由なレイアウトで統一的に取り扱うことができる。よって、実施形態1に係る自動販売機1は、商品の在庫数を正確に計測可能な自動販売機を、より簡易な構成で実現可能であると共に、商品レイアウトの自由度をより高めることができる。
更に、実施形態1に係る複数のコラム20は、一のコラム20に収納される商品の幅方向のサイズが一のコラム20の幅方向のサイズより大きい場合、一のコラム20とこれに隣り合う他のコラム20とに跨って商品を収納する。そして、制御部70は、一のコラム20を構成するベルトコンベア23と他のコラム20を構成するベルトコンベア23とを同期して動作させて、当該商品を搬送させる。このため、自動販売機1は、商品の幅方向のサイズがコラム20より大きい大型の商品を販売する場合であっても、商品の幅方向のサイズがコラム20より大きくない小型の商品を販売する場合と同様に、商品を確実に搬送して販売することができる。よって、実施形態1に係る自動販売機1は、商品の在庫数を正確に計測可能な自動販売機を簡易な構成でより確実に実現可能であると共に、商品レイアウトの自由度をより高めることができる。
[実施形態2]
実施形態2に係る自動販売機1について説明する。実施形態2に係る自動販売機1の説明において、実施形態1に係る自動販売機1と同様の構成及び動作に係る説明については、重複する説明となるため省略する。
上述のように、実施形態1に係る商品搬入処理では、商品を搬入可能なスペースSをベルトコンベア23の搬入出部22に近い側に確保するために、商品の搬入前にベルト26を基準位置P1に向けて一旦移動させていた。
これに対し、実施形態2に係るベルトコンベア23では、オペレータが手動でプッシャ29を後方に押すと、プッシャ29に連動してベルト26が基準位置P1に向けて移動するように構成されてよい。そして、実施形態2に係る商品搬入処理では、商品の搬入前にベルト26を基準位置P1に向けて一旦移動させず、次のようにして商品の搬入が行われてよい。すなわち、実施形態2に係る商品搬入処理では、オペレータが、搬入される商品をコラム20に押し込み、押し込まれた商品によりコラム20に収納された商品及びプッシャ29を後方へ移動させることによって、商品の搬入が行われてよい。
図13は、実施形態2に係る商品搬入処理の流れを示すフローチャートである。
ステップ1301において、制御部70は、図11のステップ1101と同様に、商品が搬入されるコラム20のベルトコンベア23と、搬入される商品の前後方向の商品サイズとを特定する。
ステップ1302において、制御部70は、図9のステップ902と同様に、商品検知センサ54の検知結果が第1検知結果を示すか否かを判断する。制御部70は、商品検知センサ54の検知結果が第1検知結果を示さない場合、ステップ1315へ移行する。一方、制御部70は、商品検知センサ54の検知結果が第1検知結果を示す場合、ステップ1303へ移行する。
ステップ1303において、制御部70は、図11のステップ1105と同様に、商品の搬入が開始可能である旨を報知する。商品の搬入は、オペレータが、搬入される商品をコラム20に押し込み、押し込まれた商品によりコラム20に収納された商品及びプッシャ29を後方へ移動させることによって行われる。これにより、ベルト26は、商品が搬入される毎に基準位置P1へ向けて逐次移動し得る。
ステップ1304において、制御部70は、ロータリエンコーダ51にて検知されたモータ27の回転変位量を取得し、第1回転変位量を更新する。第1回転変位量は、商品の搬入に伴ってベルト26が基準位置P1へ向けて移動する際のモータ27の回転変位量である。1つの商品が搬入される度に1つの商品の前後方向のサイズだけベルト26が移動する場合には、第1回転変位量は、商品が搬入される毎に、1つの商品の前後方向のサイズに対応する値ずつ増加し、積算され得る。一方、商品の搬入の際にオペレータがプッシャ29を押し過ぎる等によって、1つの商品が搬入される際に1つの商品の前後方向のサイズより長くベルト26が移動した場合には、第1回転変位量は、1つの商品の前後方向のサイズより長い距離に対応する値で増加し、積算され得る。
ステップ1305において、制御部70は、図11のステップ1106と同様に、商品の搬入が終了したか否かを判断する。制御部70は、商品の搬入が終了していない場合、ステップ1304へ移行する。一方、制御部70は、商品の搬入が終了した場合、ステップ1306へ移行する。
ステップ1306において、制御部70は、図11のステップ1107と同様に、ベルト26が搬入出部22に向けて移動するようモータ27を駆動させる。
ステップ1307において、制御部70は、ロータリエンコーダ51にて検知されたモータ27の回転変位量を取得し、第2回転変位量を更新する。第2回転変位量は、商品の搬入後にベルト26が搬入出部22へ向けて移動する際のモータ27の回転変位量である。1つの商品が搬入される度に1つの商品の前後方向のサイズだけベルト26が移動する場合には、第2回転変位量は、略ゼロであり得る。一方、商品の搬入の際にオペレータがプッシャ29を押し過ぎる等によって、1つの商品が搬入される度に1つの商品の前後方向のサイズより長くベルト26が移動した場合には、第2回転変位量は、ゼロより大きい値となり得る。
ステップ1308において、制御部70は、図11のステップ1109と同様に、商品検知センサ54の検知結果が第1検知結果を示すか否かを判断する。制御部70は、商品検知センサ54の検知結果が第1検知結果を示さない場合、ステップ1306へ移行する。一方、制御部70は、商品検知センサ54の検知結果が第1検知結果を示す場合、ステップ1309へ移行する。
ステップ1309において、制御部70は、図11のステップ1110と同様に、制御部70は、ベルト26の移動が停止するようモータ27の駆動を停止する。
ステップ1310において、制御部70は、第1回転変位量と第2回転変位量との差分を算出する。この差分は、商品の搬入に伴って回転するモータ27の正味の回転変位量を示す。
ステップ1311において、制御部70は、算出された差分に基づいてベルト26の移動量Dを取得する。算出された差分が示すモータ27の正味の回転変位量は、商品の搬入に伴って移動するベルト26の正味の移動量に対応する。制御部70は、算出された差分と、上述の相関関係とを用いて、ベルト26の移動量Dを取得することができる。
ステップ1312において、制御部70は、ステップ1311にて取得されたベルト26の移動量Dと、ステップ1301にて特定された商品の前後方向のサイズとから、コラム20に搬入された商品の数である商品搬入数を算出する。具体的には、制御部70は、ベルト26の移動量Dを、商品の前後方向のサイズで除算することによって、商品搬入数を算出する。
ステップ1313において、制御部70は、商品が搬入される前のコラム20の商品収納数に、商品搬入数を加算して、コラム20の商品収納数を更新する。
ステップ1314において、制御部70は、図11のステップ1113と同様に、自動販売機1の在庫情報を更新して外部装置Eに送信する。その後、制御部70は、本処理を終了する。
ステップ1315において、制御部70は、図9のステップ915と同様に、ベルト26が搬入出部22に向けて移動するようモータ27を駆動させる。
ステップ1316において、制御部70は、図9のステップ916と同様に、商品検知センサ54の検知結果が第1検知結果を示すか否かを判断する。制御部70は、商品検知センサ54の検知結果が第1検知結果を示す場合、ステップ1317へ移行する。一方、制御部70は、商品検知センサ54の検知結果が第1検知結果を示さない場合、ステップ1318へ移行する。
ステップ1317において、制御部70は、図9のステップ917と同様に、ベルト26の移動が停止するようモータ27の駆動を停止し、ステップ1303へ移行する。
ステップ1318において、制御部70は、図9のステップ918と同様に、エンド位置検知センサ53がプッシャ29のセンサドグ30を検知したか否かを判断する。制御部70は、エンド位置検知センサ53がプッシャ29のセンサドグ30を検知していない場合、ステップ1315へ移行する。一方、制御部70は、エンド位置検知センサ53がプッシャ29のセンサドグ30を検知した場合、ステップ1319へ移行する。
ステップ1319において、制御部70は、図9のステップ919と同様に、ベルト26の移動が停止するようモータ27の駆動を停止する。すなわち、制御部70は、ベルト26がエンド位置P3に位置すると、ベルト26の移動を停止する。
ステップ1320において、制御部70は、図9のステップ920と同様に、コラム20の商品収納数がゼロであると判断する。
ステップ1321において、制御部70は、商品検知センサ54の位置P2とエンド位置P3との距離に対応するモータの回転変位量を、第1回転変位量から減算するよう設定し、ステップ1303へ移行する。
ステップ1304において第1回転変位量を更新するモータ27の回転変位量は、ステップ1302の判断を経た後に検知される回転変位量であり、商品が搬入される前のベルト26の位置がスタンバイ位置Ps1であることを前提として検知される量である。このことは、コラム20の商品収納数がゼロの場合に、ステップ1304において第1回転変位量を更新するモータ27の回転変位量が、ベルト26の位置が商品検知センサ54の位置P2にあることを前提として検知される量であることに相当する。一方、ステップ1319において、ベルト26は、エンド位置P3で停止されており、商品検知センサ54の位置P2とエンド位置P3との距離の分だけ、ベルト26が前方にはみ出した状態で停止される。そこで、制御部70は、ベルト26が前方にはみ出した分が是正されるよう、商品検知センサ54の位置P2とエンド位置P3との距離に対応するモータ27の回転変位量を、第1回転変位量から減算するよう設定する。これにより、制御部70は、コラム20の商品収納数がゼロであっても、第1回転変位量を正確に把握することができる。
なお、制御部70は、ステップ1321において、商品検知センサ54の位置P2とエンド位置P3との距離に対応するモータの回転変位量を、第1回転変位量から減算するよう設定する代わりに、次のような処理を行ってもよい。すなわち、制御部70は、ステップ1321において、商品検知センサ54の位置P2とエンド位置P3との距離だけ、ベルト26を後方に移動させ、プッシャ29を後退させてもよい。
このように、実施形態2に係る自動販売機1では、オペレータが搬入される商品をコラム20に押し込むことによって商品が搬入されても、ベルト26の移動量を正確に取得することができ、コラム20に収納された商品の数を正確に計測する事ができる。よって、実施形態2に係る自動販売機1は、商品レイアウトの自由度が高く、簡易な構成の自動販売機1であっても、商品の在庫数をより正確に計測することができる。
[その他]
上述の実施形態において、自動販売機1は、扉3の前面に表示部11が設けられ、ユーザが扉3を介して自動販売機1の内部を視認できない構成となっていた。しかしながら、自動販売機1は、ユーザが扉3を介して自動販売機1の内部を視認可能なシースルー型の自動販売機であってもよい。
上述の実施形態において、自動販売機1は、特許請求の範囲に記載された「自動販売機」の一例に該当する。コラム20は、特許請求の範囲に記載された「コラム」の一例に該当する。ベルトコンベア23は、特許請求の範囲に記載された「ベルトコンベア」の一例に該当する。仕切板21は、特許請求の範囲に記載された「仕切板」の一例に該当する。外部装置Eは、特許請求の範囲に記載された「外部装置」の一例に該当する。通信部60は、特許請求の範囲に記載された「通信部」の一例に該当する。制御部70は、特許請求の範囲に記載された「制御部」の一例に該当する。仕切板検知センサ55は、特許請求の範囲に記載された「仕切板検知センサ」の一例に該当する。ベルト26は、特許請求の範囲に記載された「ベルト」の一例に該当する。
上述の実施形態は、変形例を含めて各実施形態同士で互いの技術を適用し得ることは、当業者には明らかであろう。
上述の説明は、制限ではなく単なる例示を意図している。従って、特許請求の範囲を逸脱することなく本発明の実施形態に変更を加えることができることは、当業者には明らかであろう。
本明細書及び特許請求の範囲で使用される用語は、限定的でない用語として解釈されるべきである。例えば、「含む」という用語は、「含むものとして記載されたものに限定されない」と解釈されるべきである。「備える」という用語は、「備えるものとして記載されたものに限定されない」と解釈されるべきである。「有する」という用語は、「有するものとして記載されたものに限定されない」と解釈されるべきである。