(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024118452
(43)【公開日】2024-08-30
(54)【発明の名称】磁気センサを用いて製品カウント情報を決定するシステム及び方法
(51)【国際特許分類】
G06F 11/30 20060101AFI20240823BHJP
【FI】
G06F11/30 193
G06F11/30 140D
【審査請求】未請求
【請求項の数】22
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2024022543
(22)【出願日】2024-02-19
(31)【優先権主張番号】18/171,606
(32)【優先日】2023-02-20
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】520068870
【氏名又は名称】セブン-イレブン インコーポレイテッド
【氏名又は名称原語表記】7-Eleven, Inc.
【住所又は居所原語表記】3200 Hackberry Road, Irving TX 75063 US
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100229448
【弁理士】
【氏名又は名称】中槇 利明
(72)【発明者】
【氏名】マシュー オダニエル レドモンド
【テーマコード(参考)】
5B042
【Fターム(参考)】
5B042JJ08
5B042JJ10
5B042JJ16
5B042JJ17
5B042MA08
5B042MC17
5B042MC36
(57)【要約】 (修正有)
【課題】磁気センサを用いて製品カウント情報を決定するシステム及び方法を提供する。
【解決手段】システムにおいて、ラック(外観200a)は、複数のタバコパック202を格納する縦長のトラック122と、トラックに移動可能に取り付けられたシュー106と、シューに連結され、磁石126を保持する磁石キャリア124と、トラックに沿って配置された縦長の回路基板120と、を含む。回路基板は、トラックの長さに沿ってセンサ122のアレイを有し、センサの各対の間の間隔は、ラック内に格納されるパックの厚さに等しい。システムは、各センサに対する磁石の位置に応じて電圧値を生成し、生成された電圧値を格納するメモリと、センサによって生成される電圧値をモニタリングし、特定のセンサが最大電圧値を生成したことを検出し、特定のセンサに対応する特定のパック数に基づいて、ラック内に格納されるパック数を決定するプロセッサと、を含む。
【選択図】
図2A
【特許請求の範囲】
【請求項1】
ラック内のタバコパックをカウントするシステムであって:
前記ラックの前端と後端との間の前記ラックの長さに沿って複数のタバコパックを格納する縦長のラックと;
前記ラックの前記前端と前記後端との間で移動するように、前記ラックに移動可能に取り付けられたシューであって、前記タバコパックが前記シューの前端に隣り合って配置されており、前記ラックに各タバコパックが装填された状態で、前記シューは前記ラックの前記後端に向かって押し戻される、シューと;
前記シューに結合された磁石と;
前記ラックの前記長さに沿って配置された縦長の回路基板と;を備え、
前記回路基板は:
前記回路基板の長さに沿って配置されたセンサのアレイであって、前記ラック内に格納された任意の数のタバコパックについて、前記磁石が前記センサうちの1つの直接上方にあるように、前記センサの各対の間の間隔は前記タバコパックの厚さに対応し、前記センサの各々は、前記磁石が前記センサの直接上方にあるときに最大電圧値を生成し、各センサは、前記回路基板上の前記センサの位置に基づいて、前記ラック内に配置された特定のパック数に対応する、センサアレイと;
前記センサによって生成される電圧値を記憶するメモリと;
前記センサ及び前記メモリに結合されたプロセッサと、を備え、
前記プロセッサは:
前記センサアレイのうちのセンサの少なくとも1つのサブセットによって生成される電圧値をモニタリングし;
前記センサアレイのうちの特定のセンサが前記最大電圧値を生成したことを検出し;
前記最大電圧値を生成するように検出された前記特定のセンサに対応する前記特定のパック数に基づいて、前記ラック内に実際に格納されている前記タバコパックの数を決定する、ように構成されている、
システム。
【請求項2】
前記アレイからの各センサに対応する前記特定の番号は、前記磁石が前記センサの上方にあるときに、前記ラック内に格納されているパック数に等しく;
前記パック数を決定することは、前記特定のセンサに対応する前記特定の番号を、前記ラック内に格納されているタバコパックの数として割り当てることを含む、
請求項1記載のシステム。
【請求項3】
前記回路基板は、信号ピンのアレイをさらに含み、各センサは、前記信号ピンの1つに電気的に結合され、前記センサによって生成される電圧信号を前記信号ピンに出力し;
前記プロセッサは、前記信号ピンのそれぞれで受信される前記電圧信号をモニタリングすることによって、前記センサの前記サブセットによって生成される前記電圧値をモニタリングするように構成されている、
請求項2記載のシステム。
【請求項4】
前記回路基板はさらに、前記プロセッサに結合された通信インターフェースを備え;
前記プロセッサはさらに:
前記ラック内に実際に格納されているパックの数が閾値以下であることを決定し;
前記ラックの識別子及び前記ラックに実際に格納されている、決定されたパック数を含むアラートメッセージを生成し;
前記アラートメッセージを、前記通信インターフェースを用いてマスタコントローラに送信する、ように構成されている、
請求項1記載のシステム。
【請求項5】
前記シューに結合された機構であって、前記シューを前記ラックの前記前端に向かって駆動し、前記ラック内に格納されている最も前方のタバコパックを前記ラックの前記前端近傍の前方壁に対して押圧する機構、
をさらに備える請求項1記載のシステム。
【請求項6】
前記シューに結合された前記機構は、前記シューを前記ラックの前記前端に向かって駆動するコイルスプリングを備える、
請求項5記載のシステム。
【請求項7】
前記ラックを含む複数のラックであって、前記複数のラックはデイジーチェーンに接続されている、複数のラックと;
前記デイジーチェーンの最初のラックに接続されたマスタコントローラであって、前記デイジーチェーンの最後のラックは前記マスタコントローラに接続されており、リングトポロジを形成している、マスタコントローラと、を備え、
前記プロセッサはさらに:
前記ラック内に実際に格納されているパック数に対する要求を前記マスタコントローラから受信し、前記要求は前記ラックのネットワークアドレスを含み;
前記ラックの前記ネットワークアドレス及び前記ラック内に実際に格納されている、決定された前記パック数を含むカウントメッセージを生成し;
前記デイジーチェーン上の次のラックに前記カウントメッセージを送信する、ように構成されている、
請求項1記載のシステム。
【請求項8】
前記シューに取り付けられ、前記磁石を保持するように構成された磁石キャリアをさらに備える、
請求項1記載のシステム。
【請求項9】
前記磁石の長手軸が前記縦長の回路基板に垂直になるように前記磁石は前記磁石キャリア内に配置されており、
前記センサの各々は前記磁石が前記センサに最も近づいたときに前記最大電圧値を生成する、
請求項8記載のシステム。
【請求項10】
前記磁石キャリアは前記シューの後端に位置する、
請求項8記載のシステム。
【請求項11】
前記センサアレイ内の前記センサの各々はホール効果センサを含む、
請求項1記載のシステム。
【請求項12】
ラック内に格納されているタバコパックをカウントするための回路基板は:
前記回路基板の長さに沿って配置されたセンサのアレイであって、前記回路基板は、前記ラックの前端と後端との間の前記ラックの長さに沿って複数のタバコパックを格納する前記ラックの長さに沿って配置されており、前記ラックの前端と後端との間の前記ラックの長さに沿って磁石が移動し、前記ラック内に格納されている任意の数のタバコパックについて、前記磁石が前記センサうちの1つの直接上方にあるように、前記センサの各対の間の間隔は、前記ラック内の前記タバコパックの厚さに対応し、前記センサの各々は、前記磁石が前記センサの直接上方にあるときに最大電圧値を生成し、各センサは、前記回路基板上の前記センサの位置に基づいて、前記ラック内に配置されている特定のパック数に対応する、センサアレイと;
前記センサによって生成される電圧値を格納するメモリと;
前記センサ及び前記メモリに結合されたプロセッサと、を備え、
前記プロセッサは:
前記センサアレイのうちのセンサの少なくとも1つのサブセットによって生成される電圧値をモニタリングし;
前記センサアレイのうちの特定のセンサが前記最大電圧値を生成したことを検出し;
前記最大電圧値を生成するように検出された前記特定のセンサに対応する前記特定のパック数に基づいて、前記ラック内に実際に格納されている前記タバコパックの数を決定する、ように構成されている、
回路基板。
【請求項13】
前記アレイからの各センサに対応する前記特定の番号は、前記磁石が前記センサの上にあるときに、前記ラック内に格納されているパック数に等しく;
前記パック数を決定することは、前記特定のセンサに対応する前記特定の番号を、前記ラック内に格納されているタバコパックの数として割り当てることを含む、
請求項12記載の回路基板。
【請求項14】
前記回路基板は、信号ピンのアレイをさらに含み、各センサは、前記信号ピンの1つに電気的に結合され、前記センサによって生成される電圧信号を前記信号ピンに出力し;
前記プロセッサは、前記信号ピンのそれぞれで受信される前記電圧信号をモニタリングすることによって、前記センサの前記サブセットによって生成される前記電圧値をモニタリングする、ように構成されている、
請求項13記載の回路基板。
【請求項15】
前記回路基板は、前記プロセッサに結合された通信インターフェースをさらに備え、
前記プロセッサはさらに:
前記ラック内に実際に格納されているパックの数が閾値以下であることを決定し;
前記ラックの識別し及び前記ラック内に実際に格納されている、決定されたパック数を含むアラートメッセージを生成し;
前記アラートメッセージを、前記通信インターフェースを用いてマスタコントローラに送信する、ように構成されている、
請求項12記載の回路基板。
【請求項16】
前記センサアレイ内の前記センサの各々はホール効果センサを含む、
請求項12記載の回路基板。
【請求項17】
ラック内のタバコパックをカウントするシステムであって:
前記ラックの前端と後端との間の前記ラックの長さに沿って複数のタバコパックを格納する長手方向のラックと;
前記ラックの前記前端と前記後端との間で移動するように、前記ラックに移動可能に取り付けられたシューであって、前記タバコパックが前記シューの前端に隣り合って配置されており、前記ラックに装填されている各タバコパックによって、前記シューは前記ラックの前記後端に向かって押し戻される、シューと;
前記シューに結合された磁石と;
前記ラックの前記長さに沿って配置された縦長の回路基板と;を備え、
前記回路基板は、
前記回路基板の長さに沿って配置されたセンサのアレイであって、前記ラック内に格納されている任意の数のタバコパックに対して、前記磁石が前記センサうちの1つの直接上方にあるように、前記センサの各対の間の間隔が前記タバコパックの厚さに対応し、前記磁石がセンサの上方にある場合、前記センサの各々はゼロ電圧値又はゼロに近い電圧値を生成し、前記センサの両側にある隣接するセンサが最大絶対電圧値の半分又は前記最大絶対電圧値のほぼ半分を生成し、各センサは、前記回路基板上の前記センサの位置に基づいて、前記ラック内に配置されている特定のパック数に対応する、センサアレイと;
前記センサによって生成される電圧値を格納するメモリと;
前記センサ及び前記メモリに結合されたプロセッサと、を備え、
前記プロセッサは:
前記センサアレイのうちのセンサの少なくとも1つのサブセットによって生成される電圧値をモニタリングし;
第1センサが第1最大絶対電圧値を生成し、かつ第2センサが第2最大絶対電圧値を生成したことを検出し;
前記第1最大絶対電圧値及び前記第2最大絶対電圧値は、前記アレイ内の前記センサによって生成される電圧値のうちの2つの最大電圧値であり;
前記検出することに応答して、第1センサと第2センサとの間に配置されている第3センサの上方に磁石が位置することを決定し;
前記第1センサと前記第2センサとの間に配置された前記第3センサに対応する前記特定のパック数に基づいて、前記ラック内に実際に格納されている前記タバコパックの数を決定する、ように構成されている、
システム。
【請求項18】
前記シューに取り付けられ、前記磁石を保持するように構成された磁石キャリアをさらに備える、
請求項17記載のシステム。
【請求項19】
前記磁石の長手軸が前記縦長の回路基板に平行になるように前記磁石は前記磁石キャリア内に配置されており、
請求項18記載のシステム。
【請求項20】
前記アレイからの各センサに対応する前記特定の番号は、前記磁石が前記センサの上にあるときに、前記ラック内に格納されているパック数に等しく;
前記パック数を決定することは、前記特定のセンサに対応する前記特定の番号を、前記ラック内に格納されているタバコパックの数として割り当てることを含む、
請求項17記載のシステム。
【請求項21】
前記回路基板は、信号ピンのアレイをさらに含み、各センサは、前記信号ピンの1つに電気的に結合され、前記センサによって生成される電圧信号を前記信号ピンに出力し;
前記プロセッサは、前記信号ピンのそれぞれで受信される前記電圧信号をモニタリングすることによって、前記センサの前記サブセットによって生成される前記電圧値をモニタリングする、ように構成されている、
請求項20記載のシステム。
【請求項22】
前記回路基板はさらに、前記プロセッサに結合された通信インターフェースを備え;
前記プロセッサはさらに:
前記ラック内に実際に格納されているパックの数が閾値以下であることを決定し;
前記ラックの識別子及び前記ラックに実際に格納されている、決定されたパック数を含むアラートメッセージを生成し;
前記アラートメッセージを、前記通信インターフェースを用いてマスタコントローラに送信する、ように構成されている、
請求項17記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、概してデータ処理に関し、より具体的には、磁気センサを用いて製品カウント情報を決定するシステム及び方法に関する。
【背景技術】
【0002】
店舗棚上の在庫管理は、困難な作業である。店舗棚にどれだけの製品が残っているかに関する不正確なデータは、しばしば棚スペースの活用不足及び収益の損失につながる。現在の在庫追跡手順は、労働集約的で、時間がかかり、エラーが発生しやすい。店舗棚の製品の効率的かつ正確な追跡が必要である。
【発明の概要】
【0003】
現在、棚/ラック内に格納されているアイテム(例えば、タバコパック)の量/数をカウントする唯一の方法は、手作業でラックを検査し、ラックに格納されているアイテムの数をカウントすることである。例えば、タバコラックに格納されているタバコパックの数をカウントするためには、店員はラックを開けて、ラック内に格納されているパックの数を手作業で数える必要がある。典型的な店舗には、いくつかの棚にわたって配置された数百のこのようなラックを有する。したがって、いくつかのラック/棚にわたって格納されているアイテムを追跡することは、労働集約的で退屈なものとなる。さらに、店舗棚上の在庫を追跡するための現在の方法は、人的エラーを起こしやすい。さらに、製品の量の不正確及び/又はまれな検査及び記録は、棚空間の不十分な利用及び収益の損失につながることがあり、さらに、不正確な在庫追跡及び補充につながることがある。よって、従来の技術は、少なくとも部分的にはそれらが人間の操作に依存しているために、欠陥がある。
【0004】
本明細書に開示されたシステムによって実装されるシステム及び方法は、店舗棚上の在庫を効果的かつ効率的に管理するための技術を実装することによって、上述の技術的問題に対する技術的解決策を提供する。開示されたシステム及び方法は、いくつかの実際的な用途及び技術的利点を提供する。例えば、開示されるシステムは、ラックの長さに沿った磁石の位置を検出してラック内のアイテムカウントを決定するために磁気センサを使用するラック設計を使用することによって、店舗棚に配置されるラック内に格納されている製品についてのカウント情報を決定することの実用的な用途を提供する。例えば、本開示の実施形態は、ラック内に格納されたタバコ又は他の製品のパックをカウントするために使用されるインテリジェントラック設計を提供する。ラックは、各タバコパックがシューの前方でラックに装填された状態でシューがラックの後端に向かって押し戻されるように、ラックに移動可能に取り付けられたシューと、シューに結合された磁石と、ラックの長さに沿って配置された縦長の回路基板(a longitudinal circuit board)とを備える。回路基板は、ラックの長さに沿ったセンサのアレイを含み、各センサは、センサに対する磁石の位置に基づいて電圧値を生成する。一実施形態において、ラック内に格納される任意の数のタバコパックについて、磁石がセンサうちの1つの直接上方又は真上(directly above)にあるように、センサの各対の間の間隔は、ラック内に格納されたタバコパックの厚さに対応する。この場合、センサの各々は、磁石が前記センサの直接上方にあるときに最大電圧値を生成する。回路基板はプロセッサをさらに含み、プロセッサは、センサアレイのセンサのうちのうちの少なくとも1つのサブセットによって生成される電圧値をモニタリングし、センサアレイのうちの特定のセンサが最大電圧値を生成したことを検出し、最大電圧値を生成するように検出される特定のセンサに対応する特定のパック数に基づいて、ラック内に実際に格納されているタバコパックの数を決定する、ように構成されている。この実施形態は、ラックに格納されている標準サイズのタバコパック又は別の製品/アイテムをリアルタイムで正確にカウントするという技術的利点を提供する。これは、さもなければラック内に格納されるアイテムをカウントする人間と関係しする人的ミスを回避するのを助ける。さらに、ラック内に格納されているアイテムの製品カウント情報を迅速かつ正確に決定することによって、開示されたシステム及び方法は、棚在庫の効果的かつ正確なモニタリングを可能にし、必要なときに棚を即時に補充することを可能にし、それによって棚スペースの不十分な利用を回避することができる。
【0005】
開示されるシステム及び方法は、センサの電圧応答に基づいてセンサ対の間の距離を補間することによって、単一のラック設計を使用して、ラックに格納される非標準サイズのタバコパック又は他のアイテムをインテリジェントにカウントする追加の実用的応用を提供する。このラック設計では、磁石は、磁石の長手方向軸が縦長の又は長手方向の回路基板(the longitudinal circuit board)に平行になるように、シューとともに(in conjunction with)配置された縦長の磁石である。センサのうちの少なくとも1つのサブセットによって生成される電圧値をモニタリングすることに基づいて、プロセッサは、第1センサが第1最大絶対電圧値を生成し、かつ第2センサが第2最大絶対電圧値を生成したことを検出する。プロセッサは、ラックの前端からの第1センサの第1距離及びラックの前端からの第2センサの第2距離に少なくとも部分的に基づいて、ラックの長さに沿ったシュー/磁石の位置を決定し、シューの位置はラックの前端からのシューの距離を含む。プロセッサは、ラックの長さに沿ったシューの位置に基づいて、ラック内に格納されている特定の厚さのタバコパックの数を決定する。単一のラック設計を使用して、ラック内に格納できる異なる厚さのアイテムをカウントすることにより、開示されるシステム及び方法は、異なるサイズのアイテムのためのカスタマイズされたラック設計を設計及び製造することとさもなければ関連付けられるコストを節約する。
【0006】
開示されるシステム及び方法は、インテリジェントなラック設計に基づいてラックから取り出されたアイテムを検出し、相互作用デバイスで処理される取り出されたアイテムに関連するデータ相互作用をモニタリングする、マスタコントローラを使用して、店舗棚からの製品の窃盗を迅速かつ正確に検出する追加の実用的な用途を提供する。本開示の実施形態に従って記載されるように、マスタコントローラは、製品(他のアイテムのタバコの箱など)を格納するラックと、ラックに格納されたアイテムに関するデータ相互作用を処理するように構成された相互作用デバイスと、に通信可能に結合される。マスタコントローラは、第1数のアイテムがラックから取り出されたことを示す第1メッセージと、ラックに格納されるアイテムのタイプに関連付けられた汎用製品コード(UPC:universal product code)と、をラックから受信するように構成されたプロセッサを含む。プロセッサは、相互作用デバイスから受信される通信信号をモニタリングし、通信信号は、相互作用デバイスで行われるデータ相互作用を示す。相互作用デバイスから受信される通信信号をモニタリングすることに基づいて、プロセッサは、ラックから取り出された第1数のパックが、予め設定された時間内に相互作用デバイスによって1つ以上のデータの相互作用で処理されたかどうかを決定する。ラックから取り出された第1数のパックが、予め設定された時間内に相互作用デバイスによって1つ以上のデータの相互作用で処理されなかったと決定することに応答して、プロセッサは、ラックのラック番号、ラックから取り出されたアイテムの数、及びラックに格納されるアイテムのタイプに関連付けられたUPCを含むアラートメッセージ又は警告メッセージ(alert message)を送信する。さらに、アラートメッセージは、アイテムがラックから取り出されたときに相互作用デバイスを操作するユーザの識別(identity)を含むことができる。相互作用デバイスを操作するユーザの識別と共に、潜在的な窃盗を適時に検出して警告することは、窃盗に責任のある当事者を迅速に特定し、窃盗された製品を回収するのに役立つ。さらに、システムは、潜在的な窃盗者が製品を盗もうとするのを阻止することができ、これは目減りの低減(shrinkage reduction)にも役立つ。
【図面の簡単な説明】
【0007】
本開示をより完全に理解するために、添付の図面及び詳細な説明に関連して、以下の簡単な説明を参照する。ここで、同様の参照番号は同様の部分を表す。
【
図1】
図1は、本開示の特定の実施形態による、複数のタバコパックを格納する例示的なラックを示す図である。
【
図2A】
図2A及び
図2Bは、本開示の特定の実施形態による、複数のタバコパックを格納するラックの2つの異なる図を示す。
【
図2B】
図2A及び
図2Bは、本開示の特定の実施形態による、複数のタバコパックを格納するラックの2つの異なる図を示す。
【
図3】
図3は、本開示の特定の実施形態による、
図1に示す回路基板の概略図を示す図である。
【
図4】
図4は、本開示の特定の実施形態による、ラックに格納されるタバコパックの数を決定するための例示的な方法のフローチャートを示す図である。
【
図5】
図5は、本開示の特定の実施形態による、センサアレイに関する磁石の配置例を示す図である。
【
図6】
図6は、本開示の特定の実施形態による、
図5に示す各磁石に関する電圧応答のプロット例を示す図である。
【
図7】
図7は、本開示の特定の実施形態による、ラック内に格納された非標準サイズのタバコパックの数を決定するための例示的な方法のフローチャートを示す図である。
【
図8】
図8は、本開示の特定の実施形態による、ラック内に格納された標準サイズのタバコパックの数を決定するための例示的な方法のフローチャートを示す図である。
【
図9】
図9は、本開示の特定の実施形態による、タバコパックの盗難を検出するためのシステムを概略的に示す図である。
【
図10】
図10は、本開示の特定の実施形態による、ラックに格納されたタバコパックの窃盗を検出するための例示的な方法のフローチャートを示す図である。
【
図11】
図11は、本開示の特定の実施形態による、
図1に示す複数のラックを接続するための例示的なネットワークトポロジを示す図である。
【発明を実施するための形態】
【0008】
[システム概要]
図1は、本開示の特定の実施形態による、複数のタバコパックを格納する例示的なラック100を示す。
本開示は、タバコパックに関して詳細に説明されるが、ラック上に格納され得る他の製品にも適用される。
【0009】
図1に示すように、ラック100は、シュー106を有する縦長又は長手方向のトラック(a longitudinal track)112を含み、シュー106は、ラック100の前端102と後端104との間でトラック112上を前後に移動するように、縦長のトラック112に移動可能に取り付けられている。ラック100は、ラック100の前端102と後端104との間でラック100の長さに沿って(
図2A及び
図2Bに示すように)複数のタバコパック202を格納するように設計されている。
図2A及び
図2Bは、それぞれ、複数のタバコパック202を格納するラック100の2つの異なる外観200a及び200bを示す。
図2A及び
図2Bに示すように、タバコパック202は、各パック202がラック100に装填された状態で、シュー106がラック100の後端104に向かって押し戻されるように、シュー106の前端108(
図1に示すようなシューの前端108)に隣接して配置される。ラック100の前端102に向かってシュー106を駆動する機構(図示せず)がシュー106に結合されて、ラック100に格納される最も前方のパック202aをラック100の前端102付近のラック100の前壁114に押し付ける。いくつかの実施形態では、この機構は、シュー106をラック100の前端102に向かって駆動する、シュー106に結合されたコイルばねを含むことができる。
図1に示すように、ラック100にパック202が格納されていない場合、シュー106は、前壁114に隣接するラック100の最前端102に位置付けられる。
図2A及び
図2Bを参照すると、タバコパック202がラック100に装填されると、シュー106はラック100の長さに沿ってラック100の後端104に向かってトラック112上で押し戻される。
【0010】
典型的な店舗は、一般に、1つ以上の棚内で互いに隣り合って配置される複数のラック100を有し、ラック100の異なるサブセットが、異なるタイプのタバコパック202を格納することがある。
【0011】
本開示の実施形態は、ラック100内に格納されるタバコパック202をインテリジェントにカウントする(intelligently count)技術を論じる。
【0012】
図1に戻って参照すると、ラック100は、ラック100の長さに沿って配置される縦長の回路基板120をさらに含む。
図1に示すように、回路基板120は、回路基板120の長さに沿って配置されたセンサ122のアレイを含み、センサ122の各対間の間隔は、予め選択された間隔に対応する。一実施形態において、センサ122の各対間の間隔は、ラック100内に格納されるタバコパック202の厚さに等しい。例えば、殆どのタバコパック202の厚さは、23.5mmである。よって、センサ122の各対は、23.5mm離間することがある。
【0013】
図1に示すように、ラック100は、磁石キャリア124がシュー106の移動に沿ってラック100の長さに沿って前後に移動するように、シュー106の後端110に隣接して位置付けられるあるいは取り付けられる磁石キャリア124をさらに含み得る。磁石キャリア124は、回路基板120の上方の予め選択された距離で磁石126を保持するように設計される。磁石キャリア124は、いつでも、磁石126がセンサ122のうちの1つの真上(directly above)に位置付けられるように寸法決めされる。各センサ122は、センサ122によって検出されるように、磁石126と関連付けられる磁場の強度に対応する電圧信号を生成する。センサ122で検出される磁石126と関連付けられる磁場は、磁石がセンサ122に近づくかあるいは離れるにつれて変化する。よって、特定の実施形態において、センサ122によって生成される電圧信号は、センサ122に関する磁石126の位置に対応する。一例において、センサ122の各々は、ホール効果センサである。本開示の特定の実施形態は、ホール効果センサに関する本発明の態様を記載するが、当業者は、磁場の検出される強度に対応する電圧信号を生成することができる他のタイプのセンサが使用されてよいことを理解することができる。
【0014】
磁石126は、形状とサイズとの幾つかの組み合わせのうちの1つに対応してよい。一実施形態において、磁石126は、磁石の長手方向軸が回路基板120の長手方向軸に対して垂直であるように、磁石キャリア124とともに配置される円筒状の磁石である。この場合、センサ122は、磁石126がセンサ122の真上に位置付けられるか又はセンサ122の最も近く位置付けられるときに、最大電圧値を生成する。この場合には、磁石126がセンサ122の真上に位置付けられないときに、センサ122は、電圧信号を生成しないことがあり、あるいは最小電圧値を生成することがある。代替的な実施形態において、磁石126は、磁石126の長手方向軸が回路基板120に対して平行であるように、磁石キャリア124とともに配置される円筒状の磁石である。この場合、磁石126の中心がセンサ122の真上に位置決めされ、磁石126の磁極がセンサ122の両側に位置決めされると、センサ122は、電圧信号を生成しない(例えば、0ミリボルト(mv))。この場合、センサ122は、磁石126(例えば、磁石の中心)が(例えば、前端102又は後端104に向かって)ラック100上でセンサ122の一方の側に配置されると、正の電圧値を生成することができ、磁石126(例えば、磁石の中心)が(例えば、前端102又は後端104に向かって)ラック上のセンサ122の他方の側に配置されると、負の電圧値を生成することができる。さらに、センサ122は、磁石126がセンサ122から離れるように移動するにつれて、より大きな絶対値を生成することができる。
【0015】
上述したように、センサ122の各対間の間隔は、ラック100に格納されるタバコパック202の厚さに等しい。さらに、磁石キャリア124は、いつでも(例えば、ラック100に格納される任意の数のパック202について)、磁石126がセンサ122のうちの1つの真上に位置決めされるように設計される。例えば、磁石の長手方向軸が回路基板120に対して垂直になるように、磁石126が磁石キャリア124とともに配置される実施形態において、磁石キャリア124は、いつでも、磁石126がセンサ122のうちの1つの真上にあるように設計される。これは、任意の所与の時に、センサ122のうちの1つが最大電圧値を生成することを意味する。代替的な実施形態では、磁石126の長手方向軸が回路基板120に対して平行であるように、磁石126が磁石キャリア124とともに配置されるとき、磁石キャリア124は、いつでも(例えば、ラック100に格納される任意の数のパック202について)、磁石126の中心がセンサ122のうちの1つの真上に位置決めされるように設計される。これは、任意の所与の時に、センサの1つが「0」電圧値を生成するか、あるいは最小電圧値を生成することを意味する。
【0016】
代替的な実施形態では、磁石がシュー106の移動にともなってラック100の長さに沿って前後に移動するように、磁石126はシュー106に結合される(例えば、取り付けられる、あるいは内蔵される)。本開示の実施形態における議論は、磁石126が磁石キャリア124内に配置されるかあるいはシュー106に直接結合されるかにかかわらず当て嵌まることが留意されてよい。例えば、磁石126がシュー106に結合されるとき、磁石126は、いつでも、磁石126がセンサ122のうちの1つの真上に位置決めされるように、シュー106とともに配置されることができる。この実施形態では、磁石126が円筒状の磁石であるとき、磁石126は、磁石の長手方向軸が回路基板120の長手方向軸に対して垂直になるように、シュー106とともに配置されてよい。代替的な実施形態において、磁石126は、磁石126の長手方向軸が回路基板120に対して平行になるように、シュー106とともに配置されてよい。
【0017】
特定の実施形態において、各センサ122は、センサ122の平面が磁石126の磁極における磁場の方向に対して垂直になるように、回路基板120上で方向付けられる。例えば、各センサ122は、センサ122の平面が、磁束が流れる磁石126の平面と同一平面になるように、回路基板120上で方向付けられる。例えば、磁石126が円筒状の磁石であるとき、これは、各センサ122の平面が、磁束が流れる円筒状の磁石の両端の円形平面と同一平面にあることを意味する。
【0018】
一実施形態では、センサ122が複数の測定平面を有することがあり、平面の任意の1つは、磁石126によって生成される磁場を測定するために使用されることがある。
そのような場合、センサ122は、センサ126の測定平面のうちの1つが磁石126の磁極における磁場の方向に対して垂直になるように、磁石126に対して方向付けられ得る。
【0019】
代替的な実施形態において、センサ122は、例えば、ミリテスラ(mT)単位の、デジタル磁束密度を出力する。この場合、センサ122によって生成される磁束密度測定値は、センサ122によって検出されるような磁石126と関連付けられる磁場の強度に対応する。本開示は、電圧測定値を出力するセンサ122を使用する実施形態について論じるが、磁束密度測定値を出力するセンサ122が使用されるときには、実施形態のいずれかが当て嵌まることが留意されてよい。
【0020】
図3は、本開示の特定の実施形態による、
図1の回路基板120の概略
図300を示す。
図3に示すように、回路基板120は、(122a~122nとして示される)センサ122のアレイと、信号ピン302のアレイと、プロセッサ304と、メモリ306と、ネットワークインターフェース308とを含む。各センサ122は、信号ピン302のうちの1つに電気的に結合され、センサ122によって生成される(310a~310nとして示される)電圧信号310を信号ピン302に出力する。プロセッサ304は、信号ピン302のアレイ、メモリ306及びネットワークインターフェース308に通信的に結合される。特定の実施形態において、プロセッサ304は、少なくともセンサ122のサブセットによって生成される電圧信号310に対応する電圧値322に基づいて、ラック100に格納されるタバコパック202の数をインテリジェントにカウントする命令320を実行するように構成される。各センサ122には、回路基板120上のセンサ122の位置に対応する予め選択されたセンサ番号324が割り当てられる。例えば、各センサ122に割り当てられるセンサ番号324は、磁石126がセンサ122の真上にあるときに、ラック100内に格納されるパック202の数に等しい。例えば、ラックの前端102から最初のセンサである回路基板120上の第1センサ122aには、ラック内に格納される1つのタバコパック202を表す番号「1」が割り当てられる。ラック100の後端104に隣接する回路基板120上の最後のセンサ122nには、ラックに格納されるパック202の「n」個を表す番号「n」が割り当てられる。各信号ピン302には、信号ピン302に電気的に結合されるセンサ122と同じ番号が割り当てられる。
【0021】
メモリ306は、センサ122によって生成されかつ信号ピン302で受信される電圧信号に対応する電圧値322を記憶するように構成される。付加的にあるいは代替的に、メモリ306は、タバコパック202をカウントするための動作(operations)を含む本開示の実施形態に記載された動作を実装するためにプロセッサ304によって実行される命令320(例えば、ソフトウェアプログラム/コード)を記憶するように構成されてよい。
【0022】
プロセッサ304は、メモリ306に動作可能に結合された1つ以上のプロセッサを含む。プロセッサ304は、状態マシン、1つ以上の中央処理装置(CPU)チップ、論理ユニット、コア(例えばマルチコアプロセッサ)、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、又はデジタル信号プロセッサ(DSP)を含むが、これらに限定されない、任意の電子回路である。プロセッサ304は、プログラマブル論理デバイス、マイクロコントローラ、マイクロプロセッサ、又はこれらの任意の適切な組み合わせであってよい。プロセッサ904は、メモリ306に通信的に結合され、メモリ306と信号通信する。1つ以上のプロセッサ304は、データを処理するように構成され、ハードウェア又はソフトウェアで実装されてよい。例えば、プロセッサ304は、8ビット、16ビット、32ビット、64ビット、又は任意の他の適切なアーキテクチャであってよい。プロセッサ304は、算術演算及び論理演算を実行するための算術論理ユニットと、ALUにオペランドを供給し、ALU演算の結果を記憶する、プロセッサレジスタと、ALU、レジスタ及び他のコンポーネント(構成要素)の協調動作を指示することによってメモリから命令を取り出しかつ命令を実行する制御ユニットとを含んでよい。
【0023】
1つ以上のプロセッサ304は、様々な命令320を実装するように構成される。例えば、1つ以上のプロセッサ304は、命令320を実行して、本開示に記載される特定の動作を実装するように構成される。このようにして、プロセッサ304は、本明細書に開示された機能を実装するように設計された特殊目的コンピュータであることがある。1つ以上の実施形態において、プロセッサ304の機能は、論理ユニット、FPGA、ASIC、DSP、又は任意の他の適切なハードウェアを使用して実装される。プロセッサ304は、
図1~
図10を参照して説明されるように動作するように構成される。例えば、プロセッサ304は、
図4及び
図7にそれぞれ記載されるような方法400及び方法700の少なくとも一部を実行するように構成されてよい。
【0024】
メモリ306は、1つ以上のディスク、テープドライブ、又はソリッドステートドライブを含み、そのようなプログラムが実行のために選択されるときにプログラムを記憶し、プログラム実行中に読み出される命令及びデータを記憶するように、オーバーフローデータ記憶装置として使用されることがある。メモリ306は、揮発性又は不揮発性であってよく、読出し専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、三値コンテンツアドレス指定可能メモリ(TCAM)、ダイナミックランダムアクセスメモリ(DRAM)、及びスタティックランダムアクセスメモリ(SRAM)を含んでよい。
【0025】
メモリ306は、とりわけ、センサ122によって生成される電圧値322、センサ番号324、及び本明細書に記載する機能性を実装するための命令320を記憶するように動作可能である。以下にさらに詳細に説明するように、メモリ306は、ラック100の前端102からの各センサ(n)122の距離(dn)326、センサ122に対する磁石126の異なる位置についてセンサ122によって生成される電圧値に基づく各センサ122の電圧応答328、及び各センサ122の電圧応答328と関連付けられる応答曲線の勾配330をさらに記憶することがある。メモリ306に記憶される命令は、本明細書に開示される機能性を実装するために動作可能な命令、論理、ルール、又はコードの任意の適切なセットを含んでよい。
【0026】
ネットワークインターフェース308は、有線通信及び/又は無線通信を可能にするように構成される。ネットワークインターフェース308は、回路基板120と他のデバイス、システム、又はドメイン(例えば、マスタコントローラ、クラウドインフラストラクチャなど)との間でデータを通信するように構成される。例えば、ネットワークインターフェース308は、Wi-Fiインターフェース、LANインターフェース、WANインターフェース、モデム、スイッチ、又はルータを含んでよい。プロセッサ304は、ネットワークインターフェース308を使用してデータを送受信するように構成される。ネットワークインターフェース308は、当業者に理解されるように、任意の適切なタイプの通信プロトコルを使用するように構成されてよい。
【0027】
プロセッサ304は、信号ピン302で受信される電圧信号に対応する電圧値をモニタリングし、センサ122によって生成される電圧信号に対応する電圧値に基づいてラック100内に格納されるタバコパック202の数を決定する、ように構成される。
【0028】
[磁石126の長手方向軸が回路基板120に対して垂直であるときの標準サイズのタバコパック202のカウント]
上述のように、ラック100内に格納されるパック202の数に依存して、センサ122のうちの1つのみが最大電圧値を生成する。センサ122によって生成される最大電圧値は、磁石126がセンサ122の真上にあるときにセンサ122によって生成される電圧値又は電圧値の範囲に対応することがある。上述のように、センサ122の各対間の間隔は、ラック100内に格納されるタバコパック202の厚さに等しい。さらに、磁石キャリア124は、いつでも(例えば、ラック100内に格納される任意の数のパック202について)、磁石126がセンサ122のうちの1つの真上に位置決めされるように設計される。このセットアップは、いくつのタバコパック202がラック100内に格納されるかにかかわらず、磁石126をセンサ122のうちの1つの真上に位置決めさせ、それぞれのセンサ122に最大電圧値を生成させる。例えば、第1パック202がラック100に装填されると、磁石126は、第1センサ122aの真上に位置決めされて、センサ122aに最大電圧値を生成させる。ラック100に各追加のタバコパック202が装填されると、シュー106は、ラック100の後端104に向かって後方に移動して、パック202がラック202に完全に装填されるまで、磁石126を回路基板120上の次のセンサ122の真上の位置に移動させて、磁石126を、回路基板120上の、ラック100の後端104に隣接する最後のセンサ122nの真上に位置決めさせる。センサ122の各対間の間隔は、ラック内に格納されるパック202の厚さに等しいので、ラック内に格納されるパック202の数にかかわらず、センサ122のうちの1つの真上に磁石126を位置決めすることが可能である。一実施形態では、ラックが空であり、シューが前壁114に隣接して位置するときに、磁石126は、センサ122のいずれの上にも位置決めされず、これは、いずれのセンサも有効な電圧値を生成せず、ラックが空であることを示すことを意味する。
【0029】
図4は、本開示の特定の実施形態による、ラック100内に格納されるタバコパックの数を決定するための例示的な方法400のフローチャートである。方法400は、
図3に示されかつ上述されるように、プロセッサ304によって実行されてよい。
【0030】
動作402で、プロセッサ304は、回路基板120内のセンサ122の少なくとも1つのサブセット(at least a subset of the sensors 122)によって生成される電圧信号310に対応する電圧値322をモニタリングする。例えば、プロセッサ304は、センサ122に電気的に結合される信号ピン302で受信される電圧信号310をモニタリングし、かつ電圧測定デバイス(図示せず)を用いて電圧信号310に対応する電圧値322を測定することによって、センサ122のサブセットによって生成される電圧値322をモニタリングする。例えば、回路基板120は、信号ピン302で受信される電圧信号310を測定する電圧測定デバイス(例えば、電圧計)を含んでよい。
【0031】
センサ122のアレイ内のセンサ122のサブセットのみが、測定可能な電圧信号310を生成することがあることが留意され得る。例えば、磁石126が、磁石126によって生成される磁場の強度に依存して、特定のセンサ122の上に位置決めされるときに、特定のセンサ122及び特定のセンサ122の1つ以上の隣接するセンサ122は、測定可能な電圧信号310を生成することがある。磁場は、残りのセンサ122で低すぎるか、あるいは存在しないことがあり、その結果、残りのセンサ122は、測定可能な電圧信号310を生成しないことがある。
【0032】
動作404で、プロセッサ304は、最大電圧値がセンサ122のうちの1つから検出されるかどうかをチェックする。例えば、プロセッサ304は、いずれか1つの信号ピン302が最大電圧値を受信しているかどうかをチェックするために、信号ピン302をモニタリングしてよい。信号ピン302で最大電圧値を検出すると、方法400は、動作406に進む。
【0033】
動作406で、信号ピン302で受信される電圧信号310をモニタリングすることに基づいて、プロセッサ304は、特定のセンサ122が最大電圧値を生成したことを検出する。上述したように、センサ122は、磁石126がセンサ122の真上又は最も近くに位置するときに、最大電圧値を生成する。
【0034】
動作408で、プロセッサ304は、最大電圧値を生成するとして検出される特定のセンサ122に基づいて、ラック100内に実際に格納されたタバコパック202の数を決定する。上述のように、各センサ122には、回路基板120上のセンサ122の位置に基づいてラック100内に配置されるパック202の特定の番号(例えば、センサ番号324)が割り当てられ、各センサに対応する特定の番号(the particular number corresponding to each senso)は、磁石がセンサの上方又はセンサの最も近くにあるときに、ラック100内に格納されているパック数に等しい。さらに、各信号ピン302には、信号ピン302に電気的に結合されるセンサ122と同じ番号が割り当てられる。最大電圧値を有する電圧信号を受信した信号ピン302に基づいて、プロセッサ304は、最大電圧値を生成した特定のセンサ122に対応する特定の番号を決定する。プロセッサは、特定のセンサ122に対応する特定の番号を、ラック100内に実際に格納されているタバコパックの数として割り当てる。
【0035】
図4を参照して論じた方法は、センサ122の各対の間の間隔がラックに格納されるタバコパックの厚さに等しい限り、任意の厚さのタバコパック202をカウントするために使用され得ることが留意され得る。殆どの標準サイズのタバコパックの厚さは、23.5mmである。よって、一実施形態において、センサ122の各対間の間隔は、23.5mmに設定されてよく、これは、
図1、
図2A及び
図2Bに示すような装置が、標準サイズの殆どのパック202をカウントするために使用されることを可能にする。
【0036】
プロセッサ304は、(例えば、マスタコントローラから)コマンドを受信することに応答して、及び/又は特定のイベント(例えば、最大電圧値を生成するセンサの変化)を検出することに応答して、予めスケジュールされた時間に、定期的にパックをカウントするように構成されてよいことが留意され得る。
【0037】
[センサ122対の間に固定された間隔を有する非標準サイズのタバコパック202のカウント]
本開示の実施形態は、センサ122の電圧応答に基づいてセンサ122対の間の距離を補間することによって、任意の厚さのタバコパック202をインテリジェントにカウントするための技術を記載する。本開示において論じられる技術は、
図1、
図2A、
図2B及び
図3に示される単一の装置(ラック100)を使用して、任意の厚さのパック202をカウントすることを可能にする。ラックの単一の設計を使用してラック内に格納されることができる異なる厚さのアイテムをカウントすることによって、開示されるシステム及び方法は、さもなければ異なるサイズのパックのためのカスタマイズされたラック設計を実装することと関連付けられる処理リソース及びネットワーク帯域幅を節約する。
【0038】
例示及び議論を容易にするために、本開示の例示的な実施形態は、センサ122の各対の間の間隔が20mmであり、各センサの電圧応答範囲が-100mv~+100mvであると仮定して、パックカウントの決定を記載する。しかしながら、当業者は、他の応答範囲を有する他のセンサ間隔及びセンサが使用されてもよいことを理解することができる。例えば、センサの各対の間の間隔は、(たとえ非標準サイズのタバコパック202がラック100に格納されているとしても)タバコの標準的なパックの厚さである23.5mmであってよい。さらに、回路基板120上に配置されるセンサ122のアレイ内の1つ以上のセンサ122は、異なる電圧応答曲線及び異なる応答範囲を有することがあることが留意され得る。さらに、本開示の実施形態は、ラック100内に格納されるタバコパック202の数をカウントするための技術を記載するが、同じ技術がラック100内に格納されることができる他の商品をカウントするために使用されてよいことに留意され得る。
【0039】
ラック100に非標準の厚さのタバコパック202が装填されるとき、磁石126は、回路基板120の長さに沿う任意の位置をとることがある。これは、ラック100内に格納される特定の数のパック202について、磁石126が、センサ122のうちの1つの上方又はセンサ122対の間に位置決めされることがあることを意味する。以下にさらに詳細に説明するように、ラック10内に格納されるパック202のカウントを決定することの一部として、プロセッサ304は、1つ以上のセンサ122の電圧応答を使用して、連続するセンサ122対の間の磁石126の実際の位置を決定する。各センサ122の電圧応答は、センサ122に対する磁石126の異なる位置についてセンサ122によって生成される電圧値を表す。特定の実施形態において、磁石126は、磁石126の長手方向軸が回路基板120に対して平行になるように、磁石キャリア124とともに配置された円筒状の磁石として選択される。
【0040】
特定の実施形態において、各センサ122は、センサ122の平面が磁石126の磁極における磁界の方向に対して垂直になるように回路基板120上で方向付けられる。例えば、各センサ122は、センサ122の平面が、磁束が流れる磁石126の平面と同一平面にあるように、回路基板120上で方向付けられる。例えば、磁石126が円筒状の磁石であるとき、これは、各センサ122の平面が、磁束が流れる円筒状の磁石の両端にある円形平面と同一平面にあることを意味する。
【0041】
一実施形態において、センサ122が複数の測定平面を有することがあり、測定平面のいずれか1つが、磁石126によって生成される磁場を測定するために使用され得る。そのような場合、センサ122は、センサ126の測定平面のうちの1つが磁石126の磁極における磁場の方向に対して垂直になるように、磁石126に対して方向付けられ得る。
【0042】
代替的な実施形態では、センサ122が、例えば、ミリテスラ(mT)単位の、デジタル磁束密度を出力する。この場合、センサ122によって生成された磁束密度測定値は、センサ122によって検出される磁石126と関連付けられる磁界の強度に対応する。本開示は、電圧測定値を出力するセンサ122を使用する実施形態を論じるが、実施形態のいずれも、磁束密度測定値を出力するセンサ122が使用されるときに当て嵌まることが留意されてよい。例えば、ラック100に格納されるパック202のカウントを決定する一部として、プロセッサ304は、(例えば、電圧応答の代わりに)1つ以上のセンサ122の磁束密度応答を使用して、連続するセンサ122対の間の磁石126の実際の位置を決定し得る。この場合、全ての電圧測定値は、磁束密度測定値に置き換えられてよい。
【0043】
図5は、本開示の特定の実施形態による、センサ122のアレイに関する磁石126の例示的な構成500を示す。
【0044】
図5に示すように、磁石126は、細長い円筒状の磁石であり、磁石126の長手方向軸502は、回路基板120に対して平行である。例示的な構成500は、回路基板120上に配置された(S1、S2、S3、S4、S5として示される)をセンサ122含む。以下の説明では、センサを参照するために、参照番号「122」及び「S1~S5」が互換的に使用されることがあることが留意され得る。この構成では、センサ122は、磁石126の中心504がセンサ122の上方に位置決めされ、磁石126の磁極506及び508がセンサ122の両側に位置決めされるときに、電圧信号を生成しない(例えば、0ミリボルト(mv)値)。センサ122は、磁石126(例えば、磁石126の中心504)が回路基板120上のセンサ122の一方の側(例えば、回路基板120の長さに沿って左側又は右側)に位置決めされるときに正の電圧値を生成することがあり、磁石126(例えば、磁石の中心504)が回路基板120上のセンサ122の他方の側(例えば、回路基板120の長さに沿って左側又は右側)に位置決めされるときに負の電圧値を生成することがある。例えば、センサ122は、磁石126の中心504が回路基板120の長さに沿って磁石126の左側に位置決めされるときに正の電圧値を生成し、磁石126の中心504が回路基板120の長さに沿って磁石126の右側に位置決めされるときに負の電圧値を生成する。さらに、センサ122は、磁石126がセンサ122の両側でセンサ122から離れるにつれて、より大きな絶対電圧値を生成することがある。
【0045】
図6は、本開示の特定の実施形態による、
図5に示す各磁石に関する電圧応答の例示的なプロット600を示す。X軸は、ラックの前端102からの距離を含むラック100の長さに沿った磁石126の位置を示す。代替的な実施形態において、X軸上の距離は、回路基板120の前端から測定され得る。回路基板120の前端は、ラック100の前端102と一致する場合もあれば一致しない場合もあることが留意され得る。いずれにせよ、距離がラックの前端102から又は回路基板120の前端から測定されるときには、以下の方法が機能する。以下の議論は、距離がラック100の前端102から測定されると仮定する。
【0046】
図6に示すように、センサ122の各対は、20mmで離間し、ラックの前端102から、S1が30mm、S2が50mm、S3が70mm、S4が90mm、S5が110mmにある。Y軸は、磁石がラック100の前端102からラック100の後端104へ移動するにつれて、センサS1~S5の各々に関する(例えば、ミリボルト(mv)単位の)電圧応答を示す。
図6に示すように、各センサ122は、磁石126がセンサ122の上方に位置するときに0mvを生成し、磁石126がセンサ122の左側で特定の距離内に位置決めされるときに正の電圧値を生成し、磁石126がセンサ122の右側で特定の距離内に位置決めされるときに負の電圧値を生成する。例示的なプロット600から分かるように、磁石126が各センサ122の両側で特定の距離を越えて位置決めされるときに、センサ122は、磁石126と関連付けられる磁場を検出せず、よって、0mv電圧を生成する。例示的なプロット600に示されるように、各センサ122の電圧範囲は、-100mv~+100mvである。以下の議論は、磁石の長さが、センサの各対間の間隔と同じであると仮定し、この例では、20mmである。この場合、磁石126の中心が特定のセンサ122の上方に位置決めされるときに、隣接するセンサは、最大絶対電圧値の半分又はほぼ半分を生成する。例えば、磁石126の中心504がS2の上方に位置決めされるときに、S2は0mvを生成し、隣接するセンサS1及びS3はそれぞれ、-50mv(又はほぼ-50mv)及び+50mv(又はほぼ+50mv)を生成する。さらに、磁石126の中心が2つの連続するセンサ122の中間点に位置決めされるときに、2つのセンサは、最大絶対電圧値又はほぼ最大絶対電圧値を生成する。例えば、磁石126の中心504がS1とS2のほぼ中間に位置決めされると、S1及びS2は、それぞれ、-100mv(又はほぼ-100mv)及び+100mv(又はほぼ+100mv)を生成する。
【0047】
磁石126の他の長さが選択されてよいことに留意され得る。一実施形態では、センサ122の各対間の最大間隔は、磁石126の長さに等しい。
【0048】
ラック100内に格納されるパック202の数を決定するために、プロセッサ304は、先ず、ラックの前端102からの磁石の距離(d)を計算することによって、ラック100の長さに沿った磁石126の位置を決定するように構成されている。その後、プロセッサ304は、ラック100の前端からの磁石の決定された距離に基づいて、ラック内に格納されたパック202の数を計算する。
【0049】
メモリ306は、センサ122に対する磁石126の異なる位置についてセンサ122によって生成される電圧値322に基づいて各センサ122の電圧応答328を記憶することがある。例えば、メモリ306は、
図6に示すように、センサS1~S5の電圧応答328を記憶する。付加的に又は代替的に、メモリ306は、各センサ122の電圧応答328と関連付けられた応答曲線の勾配330を記憶することがある。例えば、メモリ306は、センサS1~S5と関連付けられた応答曲線のそれぞれの勾配330を記憶する。センサ122の応答曲線と関連付けられる勾配330は、磁石126の中心がセンサ122から離れるように移動する距離1mm毎に(for every mm of distance)センサによって記録された電圧変化の量を示す。例示的なプロット600から分かるように、各センサS1~S5の応答曲線と関連付けられる勾配は、線形である。センサ122と関連付けられる応答曲線のこの線形特性は、以下では、2つのセンサ122間の磁石の位置を決定するために使用される。さらに、メモリ306は、ラック100の前端からの各センサnの距離(dn)326を記憶してよい。例えば、メモリは、d1=30mm、d2=50mm、d3=70mm、d4=90mm、及びd5=110mmを記憶する。
【0050】
図7は、本開示の特定の実施形態による、ラック100内に格納された非標準サイズのタバコパックの数を決定するための例示的な方法700のフローチャートである。方法700は、
図3に図示されかつ上述されたように、プロセッサ304によって実行されてよい。
【0051】
動作702で、プロセッサ304は、センサ122のうちの少なくともサブセットによって生成される電圧信号310に対応する電圧値322をモニタリングする。例えば、プロセッサ304は、センサ122に電気的に結合された信号ピン302で受信された電圧信号310をモニタリングし、かつ電圧測定デバイス(図示せず)を用いて電圧信号310に対応する電圧値322を測定することによって、センサ122のサブセットによって生成される電圧値322をモニタリングする。例えば、回路基板120は、信号ピンで受信される電圧信号310を測定する電圧測定デバイス(例えば、電圧計)を含んでよい。
【0052】
センサ122のアレイ内のセンサ122のサブセットのみが、測定可能な電圧信号310を生成することがあることが留意され得る。例えば、磁石126が、磁石126によって生成される磁場の強度に依存して、特定のセンサ122の上に位置するときに、特定のセンサ122及び特定のセンサ122の1つ以上の隣接するセンサは、測定可能な電圧信号310を生成することがある。磁場は、残りのセンサ122では低すぎるかあるいは存在しないことがあり、その結果、残りのセンサ122は、測定可能な電圧信号310を生成しないことがある。
【0053】
動作704で、プロセッサ304は、第1センサ122が第1最大絶対電圧値を生成し、第2センサ122が第2最大絶対電圧値を生成したことを検出し、第1最大絶対電圧値及び第2最大絶対電圧値は、アレイ内のセンサ122によって生成された電圧値322の中からの2つの最大電圧値である。例えば、電圧値を生成するセンサ122のサブセットの中から、サブセットのうちの2つのセンサ122は、センサ122のサブセットによって生成された全ての電圧値のうちの最大の2つの電圧値を生成することがある。換言すれば、プロセッサ304は、センサ122のサブセットによって生成された電圧値から2つの最大電圧値を生成したことが検出された2つのセンサ122を選択するように構成される。
【0054】
動作706で、プロセッサ304は、第1センサ122及び第2センサ122が回路基板120上の連続するセンサ122であるかどうかをチェックする。プロセッサ304は、第1及び第2最大絶対電圧値を受信した信号ピン302に基づいて、この決定を行い得る。例えば、各信号ピン302は、ピン番号に対応し得る。上述のように、各信号ピン302は、単一のセンサ122に電気的に結合され、そのセンサ122によって生成された電圧信号を受信する。信号ピン302のピン番号は、信号ピン302に電気的に結合されたセンサ122の位置に対応し得る。例えば、信号ピン1は、センサS1に対応することがあり、信号ピン2は、センサS2に対応することがあり、信号ピンnは、センサSnに対応することがある。よって、プロセッサ304は、第1センサ122及び第2センサ122からそれぞれの電圧信号310を受信した信号ピン302のピン番号を検査することによって、回路基板120上の第1センサ及び第2センサ122の位置を決定し得る。第1センサ122及び第2センサ122に対応する2つの信号ピンのピン番号が連続するときに、プロセッサ304は、第1センサ122及び第2センサ122が回路基板120上に連続して配置されていると決定する。他方、第1センサ122及び第2センサ122に対応する2つの信号ピンのピン番号が連続しないときに、プロセッサ304は、第3センサ122が回路基板120上の第1センサ122及び第2センサ122の間に配置されていると決定する。本開示に記載されるラック100の設計に基づいて、2つの最大電圧値を生成する第1センサ122及び第2センサ122の配置に関しては、上述の2つの代替のみが可能であることが留意されてよい。換言すれば、第1センサ122及び第2センサ122は、回路基板120上に連続的に配置されるか、あるいは単一の第3センサ122が第1センサ122と第2センサ122との間に配置される。
【0055】
プロセッサ304が、第1センサ122及び第2センサ122が連続するセンサではないことと、第3センサ122が第1センサ122と第2センサ122との間に配置されていることを決定するときに、方法700は、動作708に進む。動作708で、プロセッサ304は、第1センサ122と第2センサ122との間に配置される第3センサ122の位置を決定する。上述のように、メモリ306は、ラック100の前端からの各センサ122の距離326を記憶する。プロセッサ304は、ラック100の前端からの第3センサ122の距離をメモリ306から取得することによって、第3センサ122の位置を決定してよい。例えば、
図5に戻って参照すると、第1センサがS2であり、第2センサS4である場合、S2とS4との間に配置される第3センサはS3である。プロセッサ304は、センサの前端からのセンサS3の距離326をメモリ306から取得する。例えば、
図3に示された例示的なプロット600に戻って参照すると、センサの前端からのS3の距離は70mmである。
【0056】
動作710で、プロセッサ304は、ラック100の前端からの第3センサ122の距離に少なくとも部分的に基づいて、ラック100の長さに沿ったシュー106の位置を決定する。上述のように、シュー106の位置は、ラック100の長さに沿った磁石126の位置に対応する。よって、プロセッサ304は、ラック100の長さに沿って磁石126の位置を決定する。ここでの仮定は、第1センサ122及び第2センサ122が最大の2つの電圧値を生成すると、その後、磁石126は、それらの間に配置される第3センサ122の上方に位置決めされるということである。上述のように、磁石126の中心が特定のセンサ122の上方に位置決めされるときに、隣接するセンサは、最大絶対電圧の半分(又はほぼ半分)を生成する。例えば、磁石126の中心504がS3の上方に位置決めされるときに、S3は、0mv(又はほぼ0mv)を生成し、隣接するセンサS2及びS4は、-50mv(又はほぼ-50mv)及び+50mv(又はほぼ+50mv)をそれぞれ生成する。よって、S2及びS4が50mv又はほぼ50mvの2つの最大絶対電圧値を生成するときには、磁石126の中心がS3の上方に位置決めされると仮定され得る。この場合、磁石126の位置は、S3の位置と同じである。よって、プロセッサ304は、ラック100の前端からの第3センサの距離326を、ラック100の前端からの磁石126の距離(dm)として決定する。例えば、プロセッサ304は、ラック100の前端からのセンサS3の距離(dS3=70mm)を、ラック100の前端102からの磁石の距離(dm)として決定する。
【0057】
一実施形態では、任意の確認ステップとして、プロセッサ304は、第3センサ122が0mv又はほぼ0mvの電圧値を生成することを検出してよい、それは磁石126の中心が第3センサ122の上方に位置決めされることの確認として機能する。
【0058】
プロセッサ304が、第1センサ122及び第2センサ122が連続するセンサであると動作706で決定すると、方法700は、動作712に進む。
【0059】
動作712で、第1センサ122及び第2センサ122が回路基板120上の連続するセンサであると決定することに応答して、プロセッサ304は、回路基板上の2つのセンサ122の位置、2つのセンサ122の電圧応答、及び2つのセンサによって生成される実際の電圧値322に基づいて、第1センサ122と第2センサ122との間の磁石126の位置を決定する。ここでの仮定は、2つの連続するセンサ122が2つの最大絶対電圧値を生成するときに、磁石126(例えば、磁石126の中心)が2つの連続するセンサ122の間に位置決めされるということである。例えば、連続的に位置決めされる第1センサ及び第2センサがそれぞれS2及びS3である場合、これは磁石126の中心がセンサS2及びS3の間に位置決めされていることを示す。
【0060】
磁石126(例えば、磁石126の中心)が第1センサ122と第2センサ122との間に位置決めされるとすれば、プロセッサ304は、以下の式(1)に基づいてラック100の前端102からの磁石126(例えば、磁石126の中心)の距離(dm)を決定し得る:
【数1】
ここで、dm=ラック100の前端102からの磁石の距離であり、dS1=ラック100の前端102からの第1センサ122の距離326であり、VS2=第1センサ122によって生成された実際の電圧値322であり、SlopeS1=第1センサ122の電圧応答328と関連付けられる応答曲線の勾配330であり、dS2=ラック100の前端102からの第2センサ122の距離326であり、VS2=第2センサ122によって生成された実際の電圧値322であり、SlopeS2=第2センサ122の電圧応答328と関連付けられる応答曲線の勾配330である。
【0061】
上述のように、メモリ306は、ラック100の前端からの各センサ122の距離326を記憶する。メモリ306は、各センサ122の電圧応答328と関連付けられる応答曲線の勾配330も記憶する。よって、上記の例において、プロセッサ304は、メモリからdS1、SlopeS1、dS2及びSlopeS2の値を取得して、ラック100の前端からの磁石126の距離(dm)を計算する。上述のように、磁石126の決定される位置は、ラック100の長さに沿ったシュー106の位置に対応する。
【0062】
図6に戻って参照すると、第1センサがS2でありかつ第2センサがS3であると仮定する、dmの例示的な計算において、dS1=50mm、SlopeS1=(-10)mv/mm、dS2=70mm、SlopeS2=(+10)mv/mm、VS1=-100mv、及びVS2=+100mvである場合、dmは、以下の式(a)に従って計算され得る:
【数2】
【0063】
よって、センサの前端からの磁石126の距離は、60mmである。
【0064】
動作714で、プロセッサ304は、ラック100の前端からの磁石126の距離(dm)(例えば、以前の動作712で決定されたdm)に少なくとも部分的に基づいて、ラック内に実際に格納されたタバコパック202の数を決定する。
【0065】
プロセッサ304は、以下の式(2)に基づいてラック内に実際に格納されたパック202の数(N)を決定し得る。
【数3】
ここで、dm=ラック100の前端102からの磁石126の距離であり、D=ラック100に装填されたパック202ごとに(for every pack 202)磁石126/シュー106が移動する距離である。
【0066】
特定の実施形態では、特定の厚さのパック202について、メモリ306は、ラック100に装填されたパック202ごとに磁石126が移動する距離(D)332を記憶する。D332の値は、異なる厚さのパック又は製品ごとに異なることに留意され得る。
【0067】
以前の段落からの例に続いて、dm=60mm及びD=20mmである場合、ラックに実際に格納されたパックの数(N)は、以下のように計算され得る:
N=(60)/20=3パック
【0068】
特定の実施形態において、D332の値は、較正ステップにおいて決定され得る。例えば、ラック100を較正するコマンドを受信することに応答して、プロセッサ304は、較正モードを開始し得る。プロセッサ304が較正モードにある間に、ユーザ(例えば、店員)は、特定の厚さの既知の数のパック202をラック100に装填してよい。特定の厚さの特定の数のパック202がラック100に装填される度に、プロセッサ304は、ラック100内に格納されている既知の数のパック202について、ラック100の前端102からの磁石126の距離(dm)を計算する。プロセッサ304は、ラック100内に装填されている少なくとも2つの異なる既知の数のパック202に関連付けられるdmの値に基づいて、ラック100内に装填される特定の厚さのパック202ごとに磁石126が移動する距離(D)332を決定することができる。
【0069】
例えば、第1ステップにおいて、プロセッサ304が較正モードにある間に、ユーザは、特定の厚さの1つのパック202をラック100に装填する。これに応答して、プロセッサは、dm=20mmを計算する。第2ステップにおいて、ユーザは、同じ特定の厚さの3つのパック202をラック100に装填する。これに応答して、プロセッサは、dm=60mmを計算する。プロセッサ304は、以下の式(3)に基づいて、ラック100内に装填される特定の厚さのパック202ごとに磁石126が移動する距離(D)332を決定することができる:
【数4】
ここで、C1=ラック100内に格納されたパック202の第1の既知の数であり、d1=ラック100内に格納されたパック202の第1の既知の数に対応するラック100の前端からの磁石126の距離であり、C2=ラック100内に格納されたパック202の第2の既知の数であり、ここで、C2>C1であり、d2=ラック100内に格納されたパック202の第2の既知の数に対応するラック100の前端からの磁石126の距離である。
【0070】
上記の例に続いて、プロセッサ304は、次のようにD332を以下のように計算し得る:
D=(60-40)/(3-1)=20mm/パック
【0071】
これは、ラック100に装填される特定のサイズのパック202ごとに、磁石126がラック100の長さに沿って20mm移動することを意味する。
【0072】
プロセッサ304が特定の厚さのパック202についてD332の値をひとたび決定すると、プロセッサ304は、較正モードから出て、ラック100に実際に記憶された同じ特定の厚さのパック202を計算する際の後続の使用のためにD332の決定された値をメモリ306に記憶する。D332の値は、異なる厚さを有するパック202について異なるので、上述の較正ステップは、較正されていない厚さのパック202をラック100内に格納する前に実行される必要がある場合があることが留意されてよい。
【0073】
本方法700は、タバコパック202の数をカウントすることに関して説明されるが、本方法700は、ラック100内に格納されることができる均一な厚さのあらゆる製品/アイテムをカウントするために使用されてよいことが留意されてよい。
【0074】
[磁石126の長手方向軸が回路基板120に対して平行であるときの標準サイズのタバコパック202のカウント]
図8は、本開示の特定の実施形態による、ラック100内に格納された標準サイズのタバコパックの数を決定するための例示的な方法800のフローチャートである。方法800は、
図3に図示されかつ上述されたように、プロセッサ304によって実行されてよい。
【0075】
動作802で、プロセッサ304は、センサ122の少なくとも1つのサブセットによって生成された電圧信号310に対応する電圧値322をモニタリングする。例えば、プロセッサ304は、センサ122に電気的に結合された信号ピン302で受信された電圧信号310をモニタリングすることによって、ならびに電圧測定デバイス(図示せず)を使用して電圧信号310に対応する電圧値322を測定することによって、センサ122のサブセットによって生成された電圧値322をモニタリングする。例えば、回路基板120は、信号ピン302で受信された電圧信号310を測定する電圧測定デバイス(例えば、電圧計)を含み得る。
【0076】
センサ122のアレイ内のセンサ122のサブセットのみが、測定可能な電圧信号310を生成することがあることが留意されてよい。例えば、磁石126が、磁石126によって生成される磁場の強度に依存して、特定のセンサ122の上に位置決めされるときに、特定のセンサ122及び特定のセンサ122の1つ以上の隣接するセンサは、測定可能な電圧信号310を生成し得る。磁場は、残りのセンサ122で低すぎるか、あるいは存在しないことがあり、その結果、残りのセンサ122は、測定可能な電圧信号310を生成しないことがある。
【0077】
動作804で、プロセッサ304は、2つの最大電圧値322が、センサ122のサブセットによって生成される電圧値322にわたって検出されるかどうかをチェックする。例えば、プロセッサ304は、信号ピン302のうちの2つで2つの最大電圧値322を受信することがある。プロセッサ304が、信号ピン302のうちの2つで2つの最大電圧値322を検出する場合、方法800は、動作806に進む。
【0078】
動作806で、プロセッサ304は、第1センサ122が第1最大絶対電圧値を生成し、第2センサ122が第2最大絶対電圧値を生成したことを検出し、第1最大絶対電圧値及び第2最大絶対電圧値は、アレイ内のセンサ122によって生成される電圧値322の中からの2つの最大電圧値である。例えば、電圧値を生成するセンサ122のサブセットの中から、サブセットの2つのセンサ122は、センサ122のサブセットによって生成される全ての電圧値322のうちの最大の2つの電圧値を生成し得る。換言すれば、プロセッサ304は、センサ122のサブセットによって生成された電圧値322の中からの2つの最大電圧値を生成したように検出される2つのセンサ122を選択するように構成される。
【0079】
上述のように、センサ122の各対間の間隔がラック100内に格納されたパック202の厚さに等しいときに、磁石キャリア124は、ラック100に格納された任意の数のパック202について、磁石126の中心がセンサ122のうちの1つの上方に位置決めされるように設計されてよい。同様に上述したように、磁石126の中心504が特定のセンサ122の上方に位置決めされるときに、隣接するセンサは、最大絶対電圧の半分(又はほぼ半分)を生成する。例えば、磁石126の中心504がセンサS3の上方に位置決めされるときに、センサS3は、0mv(又はほぼ0mv)を生成し、隣接するセンサS2及びS4は、-50mv(又はほぼ-50mv)及び+50mv(又はほぼ+50mv)をそれぞれ生成する。よって、S2及びS4が、50mv又はほぼ50mvの2つの最大絶対電圧値を生成するときに、磁石126の中心はS3の上方に位置決めされると仮定され得る。この場合、磁石126の位置は、S3の位置と同じである。
【0080】
よって、動作808で、第1センサ122が第1最大絶対電圧値を生成し、第2センサ122が第2最大絶対電圧値を生成したことを検出することに応答して、プロセッサ304は、磁石126(例えば、磁石126の中心)が第1センサ122と第2センサ122との間に配置される第3センサ122の上方に位置決めされる、と決定し、第1センサ122、第3センサ122及び第2センサ122は、回路基板120上の連続するセンサ122である。
【0081】
動作810で、プロセッサ304は、第1センサ122と第2センサ122との間に配置された第3センサ122に対応する特定のパック202の数に基づいて、ラック100内に実際に格納されているタバコパック202の数を決定する。上述のように、各信号ピン302は、ピン番号に対応し得る。さらに、各信号ピン302は、単一のセンサ122に電気的に結合され、そのセンサ122によって生成される電圧信号310を受信する。信号ピン302のピン番号が、信号ピン302に電気的に結合されるセンサ122の位置に対応し得る。例えば、信号ピン1はセンサS1に対応することがあり、信号ピン2はセンサS2に対応することがあり、信号ピンnはセンサSnに対応することがある。よって、プロセッサ304は、第1センサ122及び第2センサ122からそれぞれの電圧信号310を受信した信号ピン302のピン番号を検査することによって、回路基板120上の第1センサ122及び第2センサ122の位置を決定し得る。プロセッサ304は、第1センサ122及び第2センサ122のピン番号に基づいて、第3センサ122のピン番号を決定し得る。例えば、第1センサ122及び第2センサ122に対応する信号ピン302のピン番号がそれぞれ2及び4であるときに、プロセッサ304は、第3センサ122に対応する信号ピン302のピン番号を3として決定してよい。
【0082】
上述のように、各センサ122には、回路基板120上のセンサ122の位置に基づいてラック100内に配置されたパック202の特定の番号が割り当てられ、各センサ122に対応する特定の番号(例えば、センサ番号324)は、磁石126がセンサ122の上方にあるかあるいはセンサ122に最も近いときに、ラック100に格納されるパックの数に等しい。さらに、各信号ピン302には、信号ピン302に電気的に結合されたセンサ122と同じ番号が割り当てられる。よって、第3センサ122の信号ピン302のピン番号に基づいて、プロセッサ304は、第3センサ122に対応する特定の番号を決定する。プロセッサは、第3センサ122に対応する特定の番号を、ラック100に実際に格納されたパック202の数として割り当てる。例えば、第3センサ122のピン番号が3であるときに、プロセッサは、ラック100に実際に格納されたパック202の数を3として決定する。
【0083】
1つ以上の実施形態において、プロセッサ304は、ラック100内に格納されたパック202の数がパック202の予め設定された閾値数に等しいかあるいはそれを下回るときに、アラートメッセージを生成するように構成されてよい。例えば、プロセッサ304は、ラック100内に格納されたパック202の数が、ラック100に維持されるべきパック202の予め設定された閾値数と等しいかあるいはそれを下回るかを決定することに応答して、アラートメッセージを生成するように構成されてよい。アラートメッセージは、ラックの識別子及びラック内に実際に格納されているパック202の数を含み得る。プロセッサは、ネットワークインターフェース308を使用してアラートメッセージをマスタコントローラ又はクラウドインフラストラクチャに送信するように構成されてよい。例えば、在庫管理者又は店員は、アラートメッセージを見て、ラック100に再装填し得る。
【0084】
[店舗内の目減りの低減(Shrinkage reduction in stores)]
店舗棚からの商品の窃盗は、店舗に実質的な損失を与える重大な問題である。店舗棚から盗まれた商品の迅速かつ的確な検出は、窃盗者を捕まえて、盗まれた商品を回収することを助ける。タバコパックは、しばしば、タバコラック100へのアクセスを有する店員によって盗まれる。現在、タバコラックからのタバコパックの窃盗を迅速かつ正確に検出できる効果的な技術的解決策は存在しない。
【0085】
本開示の実施形態は、ラック100からのタバコパック202の窃盗をインテリジェントに検出するための技術を論じる。
【0086】
図9は、本開示の特定の実施形態による、タバコパックの窃盗を検出するためのシステム900の概略図を示す。
【0087】
図9に示すように、システム900は、ラック100と、相互作用デバイス920又は対話デバイス920(interaction device 920)と、ラック100及び相互作用デバイス920に通信的に結合されたマスタコントローラ902とを含む。マスタコントローラ902は、メモリ908と、ネットワークインターフェース906と、メモリ908及びネットワークインターフェース906に通信的に結合されたプロセッサ904とを含む。
【0088】
プロセッサ904は、メモリ908に動作可能に結合された1つ以上のプロセッサを含む。プロセッサ904は、状態マシン、1つ以上の中央処理装置(CPU)チップ、論理ユニット、コア(例えばマルチコアプロセッサ)、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、又はデジタル信号プロセッサ(DSP)を含むが、これらに限定されない、任意の電子回路構成である。プロセッサ904は、プログラマブル論理デバイス、マイクロコントローラ、マイクロプロセッサ、又はこれらの任意の適切な組み合わせであってよい。プロセッサ904は、メモリ908に通信的に結合され、メモリ908と信号通信する。1つ以上のプロセッサは、データを処理するように構成され、ハードウェア又はソフトウェアで実装されてよい。例えば、プロセッサ904は、8ビット、16ビット、32ビット、64ビット、又は任意の他の適切なアーキテクチャであってよい。プロセッサ904は、算術演算及び論理演算を実行するための算術論理ユニット(ALU)と、ALUにオペランドを供給しかつALU演算の結果を記憶するプロセッサレジスタと、ALU、レジスタ及び他のコンポーネントの協調動作を指示することによってメモリから命令を取り出しかつそれらを実行する制御ユニットとを含むことがある。
【0089】
1つ以上のプロセッサ904は、様々な命令910を実装するように構成される。例えば、1つ以上のプロセッサ904は、マスタコントローラ902を実装するために命令910を実行するように構成される。このようにして、プロセッサ904は、本明細書に開示される機能を実装するように設計された特殊目的コンピュータであってよい。1つ以上の実施形態において、マスタコントローラ902は、論理ユニット、FPGA、ASIC、DSP、又は任意の他の適切なハードウェアを使用して実装される。マスタコントローラ902は、
図9~
図10を参照して説明したように動作するように構成される。例えば、マスタコントローラ902は、
図10に記載されるような方法1000の少なくとも一部を実行するように構成されてよい。
【0090】
メモリ908は、1つ以上のディスク、テープドライブ、又はソリッドステートドライブを含み、そのようなプログラムが実行のために選択されるときにプログラムを記憶し、プログラム実行中に読み出される命令910及びデータを記憶するために、オーバーフローデータ記憶装置として使用されることがある。メモリ908は、揮発性又は不揮発性であってよく、読出し専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、三値コンテンツアドレス指定可能メモリ(TCAM)、ダイナミックランダムアクセスメモリ(DRAM)、及びスタティックランダムアクセスメモリ(SRAM)を含んでよい。
【0091】
メモリ908は、とりわけ、ラック100(例えば、回路基板120)から受信されるメッセージ912を含むメッセージ912、相互作用デバイス920から受信されるメッセージ912、及びマスタコントローラ902の機能性を実装するための命令910を格納するように動作可能である。メモリ908に記憶される命令910は、マスタコントローラ902を実行するように動作可能な命令、論理、ルール、又はコードの任意の適切なセットを含んでよい。
【0092】
ネットワークインターフェース906は、有線通信及び/又は無線通信を可能にするように構成される。ネットワークインターフェース906は、マスタコントローラ902と他のデバイス、システム、又はドメイン(例えば、ラック100の回路基板120、相互作用デバイス920など)との間でデータを通信するように構成される。例えば、ネットワークインターフェース906は、Wi-Fiインターフェース、LANインターフェース、WANインターフェース、モデム、スイッチ、又はルータを含むことがある。プロセッサ904は、ネットワークインターフェース906を使用してデータを送受信するように構成される。ネットワークインターフェース906は、当業者に理解されるように、任意の適切なタイプの通信プロトコルを使用するように構成されてよい。
【0093】
相互作用デバイス920は、
図9に示すようなマスタコントローラ902と同様に実装されてよいことが留意されてよい。例えば、相互作用デバイス920は、プロセッサと、プロセッサによって実行されるときにそれぞれの機能性を実装する命令を記憶するメモリとを含むことがある。
【0094】
相互作用デバイス920は、販売場所(POS:point-of-sale)デバイス/端末を含んでよい。本開示は、「相互作用デバイス920」及び「POSデバイス/端子920」という用語を互換的に使用することがある。POSデバイス920は、ユーザが、クレジットカード、デビットカード、スマートカード、現金自動預払機(ATM)カード及びその他のタッチレス決済方法のような、様々な決済手段を使用して支払を行うことを可能にするように、食料品店、ガソリンスタンド、ホーム改良店、衣料品店及びレストランを含むが、これらに限定されない、多数の事業体で使用されることがある。POSデバイス920は、クレジットカード又はATM/デビットカードの背面にある磁気ストライプに記憶されたアカウント情報をキャプチャするカードリーダ922を含むことがある。POSデバイス920は、英数字記号を持つ多数のボタンと「ENTER(入力)」、「CLEAR(消去)」及び「CANCEL(取消)」のような幾つかの追加ボタンとを有するキーパッド924を追加的に含んで、ユーザがATM/デビット又はクレジットカードと関連付けられるPIN、クレジットカードと関連付けられる郵便番号、及び/又は決済取引を完了するためにユーザによって入力される必要がある他の情報を入力することを可能にする。POSデバイス920は、ユーザと通信するための視覚的インターフェースを提供するディスプレイスクリーン926含んでもよい。決済取引を実行するために、POSデバイス920のユーザは、カードリーダ922を通じてカードをスライドさせる。取引の詳細は、その後、ディスプレイ926上でユーザに表示される。その後、ユーザは、キーパッド924を介して、セキュリティ検証コード又はPIN番号のような取引に関する追加的な情報を入力することができる。ユーザによって入力される情報は暗号化され、安全な通信チャネルを通じて銀行又は他の取引情報交換所(clearinghouse)に送信される。取引がひとたび承認されると、ユーザは、ディスプレイ926を介して通知される。
図9に示されるPOSデバイス920は例示的な目的のためのものにすぎず、当業者は任意のタイプのPOSデバイス/端末が本開示の実施形態において使用されてよいことが、留意されてよい。
【0095】
相互作用デバイス920は、1つ以上のタバコパック202に関連するデータ相互作用(data interactions involving one or more packs 202 of cigarettes)を処理するように構成される。1つ以上のタバコパック202に関連するデータ相互作用は、相互作用デバイス920による1つ以上のタバコパックの販売を処理することを含むことがある。
【0096】
図10は、本開示の特定の実施形態による、ラック100に格納されたタバコパックの窃盗を検出するための例示的な方法1000のフローチャートである。方法1000は、
図9に示され、上述されたように、マスタコントローラ902によって実行されてよい。
【0097】
動作1002で、マスタコントローラ902は、ラック100から第1通信信号930(戻って
図9を参照)を受信する。例えば、第1通信信号930は、ネットワークインターフェース308を使用してラック100と関連付けられる回路基板120のプロセッサ304によって送信され、ネットワークインターフェース906を使用してマスタコントローラ902によって受信される。第1通信信号930は、第1数のタバコパック202がラック100から取り出されたことを示す第1メッセージを含み、ラック100に格納されたタバコパック202のタイプと関連付けられる汎用製品コード(UPC)をさらに含む。
【0098】
UPC又はUPCコードは、店舗内のアイテムを追跡するために世界中で広く使用されているバーコードシンボルである。UPCは、一般に、各アイテムに一意に割り当てられる12桁で構成される。例えば、タバコパック202の各々の異なるタイプは、パック202上に一般的に印刷される異なるUPCと関連付けられる。よって、パック202と関連付けられるUPCは、パック202のタイプを一意に識別し、同じタイプの全てのパック202は、同じUPCと関連付けられる。
【0099】
特定の実施形態では、ラック100の回路基板120と関連付けられたプロセッサ304が、1つ以上のタバコパック202がラック100から取り出されたことを検出するときに、プロセッサ304は、ラック100から取り出されたパック202の数及びラック100から取り出されたパック202と関連付けられるUPCの表示を少なくとも含む第1メッセージを生成する。ラック100の回路基板120のメモリ306は、ラック100内に格納されるパック202と関連付けられるUPCを格納することがある。プロセッサ304は、メモリ306からパック202と関連付けられたUPCを取得し、UPCを第1メッセージに含めることがある。1つ以上の実施形態において、第1メッセージに含まれる、ラック100から取り出されたパック202の数の指標(indication)は、ラック100に実際に格納されたパック202の数を含む。例えば、プロセッサ304は、ラック100内に格納されたパック202の数をカウントし、カウントされたパック202の数とパック202と関連付けられたUPCとを含む第1メッセージを生成し、第1メッセージを含む第1通信信号930をマスタコントローラ902に送信するように構成される。プロセッサ304は、磁石126がラックの長さに沿って移動したことを検出することに応答して、ラック100内に格納されているパック202の数をカウントするように構成され得る。プロセッサ304は、センサ122によって生成された電圧値が変化したことを検出することに応答して、磁石126が移動したことを検出し得る。プロセッサ304は、プロセッサ304がラック100に格納されたパック202をカウントするたびに、第1メッセージを含む第1通信信号930をマスタコントローラ902に送信するように構成され得る。付加的に又は代替的に、プロセッサ304は、予め設定されたスケジュールに基づいて及び/又は予め設定されたトリガ(例えば、シュー106/磁石126の移動)に基づいて、周期的に、マスタコントローラ902からコマンドを受信することに応答して、第1通信信号930をマスタコントローラ902に送信してよい。マスタコントローラ902は、ラック100から受信されるパック202のカウントをメモリ908に記憶するように構成されてよい。ラック100から第1通信信号930を受信した後に、マスタコントローラ902は、第1メッセージからパック202の数を抽出し、受信したパック202の数をメモリ908に記憶されたパック202の以前の数と比較するように構成されてよい。比較に基づいて、最新の第1メッセージで受信されるパック202の数がメモリに記憶された以前のパック202の数より少ないと決定した後に、マスタコントローラ902は、少なくとも1つのパック202がラック100から取り出されたと決定する。さらに、最新のパック数を以前のパック数と比較することに基づいて、マスタコントローラ902は、ラック100から取り出されたパックの数を決定することがある。
【0100】
付加的な又は代替的な実施形態において、第1メッセージに含まれる、ラック100から取り出されたパック202の数の指標は、ラック100から取り出されたパック202の実際の数を含む。例えば、プロセッサ304は、ラック100に格納されたパック202の最新のカウントからラック100に格納されたパック202の最新のカウントを少なくともメモリ306に記憶するように構成されてよい。プロセッサ304がラック100内に格納されたパック202をカウントすると、プロセッサ304は、パックの新たなカウントをメモリ306に記憶されたパックの以前のカウントと比較する。新たなカウントが以前のカウントよりも小さいと決定した上で、プロセッサ304は、1つ以上のパックがラック100から取り出されたと決定し、新たなカウントと以前のカウントとの比較に基づいて取り出されたパックの数をさらに決定する。プロセッサ304は、第1通信信号930をマスタコントローラ902に送信するために第1メッセージ内のラック100から取り出されたパックの決定された数を含む。
【0101】
動作1004で、マスタコントローラ902は、相互作用デバイス920から受信される通信信号940(戻って
図9を参照)をモニタリングする。マスタコントローラ902は、ネットワークインターフェース906を使用して相互作用デバイス920から通信信号940を受信してよい。一実施形態において、マスタコントローラ902は、(例えば、ラック100から受信される第1通信信号930に基づいて)第1数のタバコパックの202がラック100から取り出されたと決定することに応答して、相互作用デバイス920から受信される通信信号940をモニタリングし始めてよい。相互作用デバイス902から受信される通信信号940は、相互作用デバイス920で実行されるデータ相互作用を示すことがある。例えば、製品に関連する(例えば、1つ以上のタバコパック202のような商品の販売に関連する)データ相互作用が相互作用デバイス920で実行されるときに、相互作用デバイス920は、通信信号940をマスタコントローラ902に送信するように構成されてよい。通信信号940は、相互作用デバイス920によって処理される1つ以上のデータ相互作用に関する情報を有するメッセージを含んでよい。例えば、メッセージは、1つ以上のタバコパック202に関連する相互作用デバイス920によって処理されるデータ相互作用に関する情報を含んでよい。1つ以上のタバコパック202に関連するデータ相互作用に関するこの情報は、データ相互作用の一部として含まれるパックの数と、データ相互作用に含まれる各パック202と関連付けられたUPCとを含んでよい。例えば、1つ以上のパック202に関連するデータ相互作用は、相互作用デバイス920によって処理される1つ以上のパックの販売に対応することがある。以下にさらに詳細に説明するように、相互作用デバイス920から受信される通信信号940をモニタリングすることに基づいて、マスタコントローラ902は、ラック100から取り出されたパック202に関連する1つ以上のデータ相互作用が相互作用デバイス920によって処理されたかどうかを決定してよい。一実施形態では、相互作用デバイス920は、タバコパック202に関連するデータ相互作用にのみ関する通信信号940をマスタコントローラ902に送信するように構成されてよい。
【0102】
動作1006で、相互作用デバイス920から受信される通信信号940に基づいて、マスタコントローラ902は、ラック100から取り出された第1数のタバコパック202に関連するデータ相互作用が相互作用デバイス920によって処理されたかどうかを、第1数のパック202がラック100から取り出された時からの予め設定された時間期間でチェックする。上述のように、相互作用デバイス920から受信される通信信号940は、相互作用デバイス920によって処理されるタバコパック202に関連するデータ相互作用に関する情報を有するメッセージを含んでよい。
この情報は、データ相互作用の一部として含まれるパックの数と、データ相互作用に含まれる各パック202と関連付けられるUPCとを含むことがある。相互作用デバイス920によって処理されるデータ対話に関する情報に基づいて、マスタコントローラ902は、ラック100から取り出されたパック202に関連する1つ以上のデータ相互作用が相互作用デバイス920によって処理されたかどうかを決定することがある。例えば、マスタコントローラ902は、データ相互作用に含まれる各パックと関連付けられるUPCを、ラック100から取り出された第1数のパックと関連付けられるUPCと比較することがある。データ相互作用に含まれるパックと関連付けられたUPCが、ラック100から取り出された第1数のパックと関連付けられたUPCと一致するときに、マスタコントローラ902は、ラック100から取り出されたパックに関連するデータ相互作用が相互作用デバイスによって完了したと決定する。マスタコントローラ902が、相互作用デバイス920で1つ以上のデータ相互作用に含まれる同数のパックを有するラック100から取り出された第1数のパックについてUPCマッチを確認することができるときに、マスタコントローラ902は、ラック100から取り出された第1数のパック202が相互作用デバイス920でデータ相互作用において処理されたと決定する。他方、通信信号940が相互作用デバイス920から受信されないときに、又は相互作用デバイス920によって処理された1つ以上のデータ相互作用に含まれるパックのUPCがラック100から取り出されたパックと関連付けられるUPCと一致しないときに、マスタコントローラ902は、ラック100から取り出された第1数のパック202が相互作用デバイス920でのデータ相互作用において処理されなかったと決定し、それは第1数のパック202の潜在的な窃盗を示す。
【0103】
マスタコントローラ902は、ラック100から取り出された第1数のパック202が、第1数のパック202がラック100から取り出された時からの予め設定された時間期間内に対話デバイス920でのデータ相互作用において処理されたかどうかを決定するように構成されてよい。一実施形態において、マスタコントローラ902は、第1数のパック202がラック100から取り出されたことを(第1通信信号930に基づいて)決定することに応答してタイマを開始し、タイマは、予め設定された時間期間の後に満了するように設定される。マスタコントローラ902が、タイマの満了前に、ラック100から取り出された第1数のパック202が相互作用デバイス920でのデータ相互作用において処理されたと判決定する場合、マスタコントローラ902は、第1数のパック202が予め設定された時間期間内に相互作用デバイス920によって処理されたと決定する。第2実施形態において、ラック100から第1通信信号930の一部として受信される第1メッセージは、第1数のパック202がラック100から取り出された時間を含むタイムスタンプを含んでよい。マスタコントローラ902が、ラック100から取り出された第1数のパック202が、タイムスタンプからの予め設定された時間期間内に相互作用デバイス920でのデータ相互作用において処理されたと決定する場合、マスタコントローラ902は、第1数のパック202が予め設定された時間期間内に相互作用デバイス920によって処理されたと決定する。第3の実施形態において、マスタコントローラ902は、第1通信信号930がラック100から受信された時間を記録するように構成されてよい。マスタコントローラ902が、ラック100から取り出された第1数のパック202が記録された時間からの予め設定された時間期間内に相互作用デバイス920でのデータ相互作用において処理されたと決定する場合、マスタコントローラ902は、第1数のパック202が予め設定された時間期間内に相互作用デバイス920によって処理されたと決定する。
【0104】
マスタコントローラ902が、ラック100から取り出された第1数のパック202が予め設定された時間期間内に相互作用デバイス920でのデータ相互作用において処理されたと(動作1006で)決定する場合、方法1000は、動作1010に進み、動作1010で、マスタコントローラ902は、ラック100から取り出された第1数のパック202が、相互作用デバイス920での1つ以上のデータ相互作用において処理されたことを記録する。
【0105】
マスタコントローラが、ラック100から取り出された第1数のパック202が予め設定された時間期間内に相互作用デバイス920でのデータ相互作用において処理されなかったと(例えば、動作1006で)決定すると、方法1000は、動作1008に進み、動作1008で、マスタコントローラ902は、アラートメッセージ又は警告メッセージを(例えば、店舗マネージャ又は資産保護チームのコンピューティングデバイスに)送信する。アラートメッセージは、ラック100から取り出されたタバコパック202が相互作用デバイス920によって処理されていないという指標、ラック100から取り出されたパック202の第1数、パック202と関連付けられたUPC、ラック100と関連付けられたラック番号、及びラック100からパック202が取り出された時間を含むタイムスタンプのうちの少なくとも1つを含んでよい。一実施形態において、ラック100から第1通信信号930の一部として受信される第1メッセージは、ラックと関連付けられたラック番号を含む。付加的に又は代替的に、アラートメッセージは、第1数のパック202がラック100から取り出された時に相互作用デバイス920を操作するユーザ(例えば、店員)の識別を含んでよい。一般に、相互作用デバイス920を操作するために、ユーザは、ユーザに一意のセキュリティ信任状を入力する必要がある。セキュリティ証明書は、通常、ユーザの識別(identity)と関連付けられる。相互作用デバイス920は、マスタコントローラ902に送信される通信信号940の一部として相互作用デバイス920を現在操作しているユーザの識別を送信してよい。相互作用デバイスを操作するユーザの識別とともに、潜在的な窃盗をタイムリーに検出及び警告することは、窃盗に責任を有する当事者を特定し、盗まれた製品を回復するのに役立つ。さらに、システムは、潜在的な窃盗者が製品を盗もうとするのを阻止することがあり、それもシュリンケージ低減(shrinkage reduction)を助ける。
【0106】
方法1000はタバコパック202に関して説明されるが、方法1000はラック100に格納されることができる均一な厚さの任意の製品/アイテムに関して使用される場合があることが留意されてよい。
【0107】
図11は、本開示の特定の実施形態による、
図1に示される複数のラックを接続するための例示的なネットワークトポロジ1100を示す。
【0108】
典型的な店舗は、1つ以上の棚に配置された複数のラック100を有する。ネットワークトポロジ1100(network topology)は、マスタコントローラ902と通信する複数のラック100の例示的なネットワーク構成である。
図11に示すように、ネットワークトポロジ1100は、(100a、100b、100c...100nとして示される)複数のラック100と、デイジーチェーンで接続されたマスタコントローラ902とを含む。各ラック100は、インバウンドコネクタ(例えば、回路基板120上の1つ以上の入力ピン)と、アウトバウンドコネクタ(例えば、回路基板120上の1つ以上の出力ピン)とを含む。インバウンドコネクタは、他のデバイス(例えば、他のラック100又はマスタコントローラ902)からデータを受信するために使用されることがあり、アウトバウンドコネクタは、他のデバイス(例えば、他のラック100又はマスタコントローラ902)へデータを送信するために使用されることがある。各ラック100は、それぞれのネットワークインターフェース308を使用してデータを送受信することがある。例えば、インバウンドコネクタで受信されるデータは、ネットワークインターフェース308にルーティングされることがある。さらに、ネットワークインターフェース308は、アウトバウンドコネクタを介してデータを送信することがある。
【0109】
図11に示すように、マスタコントローラ902は、第1ラック100aのインバウンドコネクタに接続される。その後、第1ラック100aは、そのアウトバウンドコネクタを通じて第2ラック100bのインバウンドコネクタに接続される。この接続シーケンスは、全てのラック100a~100nが接続されるまで繰り返され、最後のラック100nのアウトバウンドコネクタはマスタコントローラに戻って接続され、リングトポロジ(ring topology)を形成する。図示のように、デイジーチェーン内のデータは、マスタコントローラ902から第1ラック100aへ、1つのラックから次のラックへ直列に流れ、次に、デイジーチェーン内の最後のラック100nからマスタコントローラ902へ戻る。
【0110】
各ラック100は、それぞれのメモリ306にアドレスを記憶する。特定のラック100のアドレスは、マスタコントローラ902が特定のラック100にコマンドを発行し、特定のラック100から来るデータを解釈して関連付けるために使用するものである。アドレスは、単純なシーケンス番号であることがあり、最初は定義されない。システム始動時に(例えば、コールドスタート又はマスタコントローラ902のリセットで)、マスタコントローラ902は、「アドレス消去(Clear Address)」コマンドを第1ラック100aに渡して、ラック100aにそのアドレスを消去するように指示する。第1ラック100aは、そのアドレスを消去し、次いで、同じコマンドを第2ラック100bに送信/転送する。これは、最後のラック100nが「アドレス消去」コマンドをマスタコントローラ902に送り返すまで、デイジーチェーンの終わりまで続き、それは全てのラックがそれらのアドレスを消去したことをマスタコントローラ902に示す。
【0111】
全てのラック100の全てのアドレスを消去した後に、マスタコントローラ902は、ネットワーク内の全てのラック100へのアドレスの割り当てをもたらすシーケンスを開始する。これはマスタコントローラ902によって第1ラック100aに渡される0x0001(16進数)のアドレス値を有する「アドレス設定(Set Address)」コマンドで開始する。このコマンドを受信した後に、第1ラック100aは、そのアドレスを0x0001に設定し、その値を1だけインクリメントし、「アドレス設定」コマンド及び新しい値を第2ラック100bに渡す。第2ラック100bは、その独自のアドレスを設定し、値をインクリメントし、コマンドを第3ラック100cに渡す。これは、最後のラック100nがそのアドレスを設定し、値をインクリメントし、「アドレス設定」コマンドをマスタコントローラに戻すまで、チェーンを下り続ける。マスタコントローラ902がこのコマンド及びそれに戻されたアドレスを見ると、そこに取り付けられているラックの数のカウント(例えば、最後に受信されたアドレス値から1を引いた値)を有する。実際には、ラック100が追加されないか、取り出されないか、再設定されないか、あるいは故障を経験しない限り、ラック100は、リセット、パワーサイクルなどの間に、常に同じアドレスを有する。
【0112】
全てのラック100がアドレスをひとたび選択すると、マスタコントローラ902は、ラックに格納されたパック202の現在のカウントのために任意の1つのラックに命令することがある。例えば、マスタコントローラ902は、ラック100のアドレスと共に「現在カウントの取得(Get Current Count)」コマンドを送信してよい。コマンドは、コマンドに含まれる一致するアドレスを持つ標的ラックがコマンドを受信するまで、チェーンを下って渡される。標的ラックは、チェーン内の次のラックに「現在カウント(Current Count)」応答を送信し、応答は、標的ラックに格納されたパック202の最新のカウントと、標的ラックのアドレスとを含む。
応答は、チェーンを下行してマスタコントローラ902に渡され、マスタコントローラは、応答を、応答に含まれるアドレスから標的ラックから受信されたものとして解釈する。いくつかの実施形態では、上述のように、チェーン内のラック100は、要求されていない「変更されたカウント(Count Changed)」メッセージ(例えば、
図10の第1メッセージ)をマスタコントローラ902に送信することがある。上述のように、「変更されたカウント」メッセージは、ラックから取り出された1つ以上のパックが相互作用デバイス920によって処理されたかどうかを決定するために使用されることがある。
【0113】
いくつかの実施形態が本開示において提供されるが、開示されるシステム及び方法は、本開示の精神又は範囲から逸脱することなく、多くの他の特定の形態で具現される場合があることが理解されるべきである。本例は、限定的ではなく、例示的なものと考えられるべきであり、意図は、本明細書に与えられた詳細に限定されない。例えば、様々な要素又はコンポーネントは、別のシステムに組み合わされるかあるいは統合されてよく、あるいは、特定の構成は、省略されることがありあるいは実装されないことができる。
【0114】
さらに、様々な実施形態において個別又は別個として記載及び図示される技術、システム、サブシステム、及び方法は、本開示の範囲から逸脱することなく、他のシステム、モジュール、技術、又は方法と組み合わされてよく、あるいは統合されてよい。互いに結合されあるいは直接結合されあるいは通信するように図示されあるいは議論される他のアイテムは、電気的であれ、機械的であれ、あるいは別の方法であれ、幾つかのインターフェース、デバイス、又は中間コンポーネントを通じて間接的に結合されあるいは通信することがある。変更、置換、及び改変の他の例は、当業者によって確認可能であり、本明細書に開示された精神及び範囲から逸脱することなく行われることができる。
【0115】
特許庁及び本出願に関して発行された特許の読者が本明細書に添付されたクレームを解釈するのを助けるために、出願人は、「~のための手段」又は「~のためのステップ」という語が特定のクレームにおいて明示的に使用されていない限り、本明細書の出願日に存在する35U.S.C.§112(f)を援用することを意図していないことに留意する。
【外国語明細書】