(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023179088
(43)【公開日】2023-12-19
(54)【発明の名称】プログラム、情報端末、システム
(51)【国際特許分類】
G07G 1/00 20060101AFI20231212BHJP
G07G 1/12 20060101ALI20231212BHJP
【FI】
G07G1/00 311D
G07G1/12 301Z
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022092150
(22)【出願日】2022-06-07
(71)【出願人】
【識別番号】000145068
【氏名又は名称】株式会社寺岡精工
(74)【代理人】
【識別番号】100149548
【弁理士】
【氏名又は名称】松沼 泰史
(74)【代理人】
【識別番号】100145481
【弁理士】
【氏名又は名称】平野 昌邦
(72)【発明者】
【氏名】黒崎 直人
【テーマコード(参考)】
3E142
【Fターム(参考)】
3E142AA01
3E142BA01
3E142CA17
3E142CA20
3E142DA08
3E142EA04
3E142GA17
3E142GA22
3E142GA41
3E142JA01
(57)【要約】
【課題】携帯端末を用いた商品の登録を好適に実施する。
【解決手段】購入する商品の登録に用いる情報端末としてコンピュータを機能させるプログラムであって、前記コンピュータを、画像を取得する画像取得手段、前記画像取得手段で取得した画像内の商品識別情報に基づいて商品を登録する登録手段、自情報端末の振動を検出する振動検出手段、自情報端末の操作者に商品の購入に関する情報を出力可能な出力手段として機能させ、前記出力手段は、前記振動検出手段で所定の振動が検出され、かつ、当該振動の検出前に前記登録手段で商品が登録されていなかった場合、商品の購入に関する情報を出力する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
購入する商品の登録に用いる情報端末としてコンピュータを機能させるプログラムであって、
前記コンピュータを、
画像を取得する画像取得手段、
前記画像取得手段で取得した画像内の商品識別情報に基づいて商品を登録する登録手段、
自情報端末の振動を検出する振動検出手段、
自情報端末の操作者に商品の購入に関する情報を出力可能な出力手段
として機能させ、
前記出力手段は、
前記振動検出手段で所定の振動が検出され、かつ、当該振動の検出前に前記登録手段で商品が登録されていなかった場合、商品の購入に関する情報を出力する
ことを特徴とするプログラム。
【請求項2】
前記出力手段は、
前記振動検出手段で検出した振動に応じて出力内容を異ならせる
ことを特徴とする請求項1に記載のプログラム。
【請求項3】
前記コンピュータを、
前記画像取得手段で取得した画像から自情報端末の操作者の振舞いを認識する振舞認識手段
として更に機能させ、
前記出力手段は、
前記振舞認識手段で認識した振舞が所定の振舞である場合、商品の購入に関する情報を出力する
ことを特徴とする請求項1又は請求項2に記載のプログラム。
【請求項4】
前記出力手段は、
商品の購入に関する情報として、商品の購入に際し店員の介在が必要である旨の情報、又は、商品の購入の要否を確認する情報を出力する
ことを特徴とする請求項1に記載のプログラム。
【請求項5】
前記コンピュータを、
前記振動検出手段で検出した振動に基づいて、商品の購入に際し店員の介在が必要であるか否かを判定する店員介在要否判定手段
として更に機能させる
ことを特徴とする請求項1に記載のプログラム。
【請求項6】
購入する商品の登録に用いる情報端末としてコンピュータを機能させるプログラムであって、
前記コンピュータを、
画像を取得する画像取得手段、
前記画像取得手段で取得した画像内の商品識別情報に基づいて商品を登録する登録手段、
自情報端末以外から振動を取得する振動取得手段、
自情報端末の操作者に商品の購入に関する情報を出力可能な出力手段
として機能させ、
前記出力手段は、
前記振動取得手段で所定の振動が取得され、かつ、当該振動の取得前に前記登録手段で商品が登録されていなかった場合、商品の購入に関する情報を出力する
ことを特徴とするプログラム。
【請求項7】
購入する商品の登録に用いる情報端末であって、
画像を取得する画像取得手段と、
前記画像取得手段で取得した画像内の商品識別情報に基づいて商品を登録する登録手段と、
自情報端末の振動を検出する振動検出手段と、
操作者に商品の購入に関する情報を出力可能な出力手段と
を備え、
前記出力手段は、
前記振動検出手段で所定値以上の振動が検出され、かつ、当該振動の検出前に前記登録手段で商品が登録されていなかった場合、商品の購入に関する情報を出力する
ことを特徴とする情報端末。
【請求項8】
購入する商品の登録に用いる情報端末を含むシステムであって、
画像を取得する画像取得手段、
前記画像取得手段で取得した画像内の商品識別情報に基づいて商品を登録する登録手段、
自情報端末の振動を検出する振動検出手段、
自情報端末の操作者に商品の購入に関する情報を出力可能な出力手段
を備え、
前記出力手段は、
前記振動検出手段で所定の振動が検出され、かつ、当該振動の検出前に前記登録手段で商品が登録されていなかった場合、商品の購入に関する情報を出力する
ことを特徴とするシステム。
【請求項9】
自情報端末の姿勢を検出する姿勢検出手段と、
前記姿勢検出手段で検出した姿勢に応じて前記登録手段での商品の登録を制限する制限手段と
を更に備えることを特徴とする請求項8に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム、情報端末、システムに関する。
【背景技術】
【0002】
携帯端末を用いて顧客自ら商品を登録するシステムが知られている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上述のようなシステムには、例えば悪意のある顧客や不慣れな顧客への対策において改善の余地がある。
【0005】
本発明は、このような事情に鑑みてなされたもので、携帯端末を用いた商品の登録を好適に実施する技術を提供することを目的とする。
【課題を解決するための手段】
【0006】
上述した課題を解決するための一態様であるプログラムは、購入する商品の登録に用いる情報端末としてコンピュータを機能させるプログラムであって、前記コンピュータを、画像を取得する画像取得手段、前記画像取得手段で取得した画像内の商品識別情報に基づいて商品を登録する登録手段、自情報端末の振動を検出する振動検出手段、自情報端末の操作者に商品の購入に関する情報を出力可能な出力手段として機能させ、前記出力手段は、前記振動検出手段で所定の振動が検出され、かつ、当該振動の検出前に前記登録手段で商品が登録されていなかった場合、商品の購入に関する情報を出力することを特徴とするプログラムである。
【図面の簡単な説明】
【0007】
【
図1】販売システムを説明するためのネットワークの概念図である。
【
図2】携帯端末を取り付け可能なカートについて説明する説明図である。
【
図3】携帯端末、クラウドサーバ、精算装置の動作の概要を説明するシーケンス図である。
【
図6】携帯端末の動作の一例を説明するフローチャートである。
【
図7】携帯端末の動作の一例を説明するフローチャートである。
【
図8】携帯端末の動作の一例を説明するフローチャートである。
【
図9】携帯端末の動作の他の例を説明するフローチャートである。
【
図10】携帯端末の動作の他の例を説明するフローチャートである。
【
図11】携帯端末の動作の他の例を説明するフローチャートである。
【発明を実施するための形態】
【0008】
(第1実施形態)
図1は、第1実施形態(第2実施形態も同様)の販売システム1を説明するためのネットワークの概念図である。
図1に示す販売システム1は、本部サーバ10、クラウドサーバ20、ストアコントローラ30、取引状況管理装置40(例えば、パーソナルコンピュータ等)、精算装置50、携帯端末60を含む。
【0009】
販売システム1は、種々の業態(スーパーマーケット、コンビニエンスストア、ドラッグストア、ホームセンタ、家電量販店等)に導入可能である。
図1において、破線Tは、店舗内(商品陳列エリア、会計エリア、バックヤード等)を示している。
図1に示すように、ストアコントローラ30、取引状況管理装置40、精算装置50は、店舗内に設置される。これらは、LAN19(有線でも無線でもよい)を介して通信可能に接続される。店舗内には、携帯端末60が存在する。携帯端末60は、基本的には、カート(ショッピングカート)70に取り付けられた状態(セットされた状態)で使用される。本部サーバ10及びクラウドサーバ20は、店舗外(例えば、本社やデータセンタ等)に設置される。店舗内に設置されている装置(ストアコントローラ30、取引状況管理装置40、精算装置50)と店舗外に設置されている装置(本部サーバ10、クラウドサーバ20)とは、通信(直接的に通信、又は、ストアコントローラ30を介して通信)可能である。
【0010】
なお、
図1において、各装置(端末)の台数は例示である。例えば、
図1において、精算装置50の右側に「…」を図示したが、店舗内に設置される精算装置50の数は1台以上であればよい。また例えば、
図1において、2台の携帯端末60を図示したが、店舗内において使用される携帯端末60の数は客の数に応じて変化する。また、店舗内には、他の装置を設置してもよい。例えば、店舗内には、店員の操作に基づいて商品を登録し、顧客の操作に基づいて精算するセミセルフの装置群(登録装置、精算装置)や、顧客の操作に基づいて商品を登録し、顧客の操作に基づいて精算するフルセルフの装置(登録精算装置)を設置してもよい。
【0011】
(携帯端末60)
携帯端末60は、顧客によって使用される。具体的には、携帯端末60は、店舗内において顧客自身が商品を登録する際に使用される。携帯端末60は、例えば、スマートフォンであるが、タブレット端末であってもよい。携帯端末60は、顧客の所有物であってもよいし、店側が貸与するものであってもよい。
【0012】
図示は省略するが、携帯端末60は、例えば、CPU、記憶部、表示部、操作部、音声出力部(スピーカ)、音声入力部(マイク)、撮像部(カメラ)及び通信部のほか、当該携帯端末60(筐体)の振動(変位、速度、又は、加速度)を検出する振動検出部を備える。振動検出部は、当該携帯端末60(自携帯端末60)の振動を検出可能なセンサ(デバイス)であればよく、例えば、加速度センサ、ジャイロセンサである。振動検出部は、振動を検出した場合、検出結果をCPUに出力する。例えば、振動検出部は、検出結果として、検出した振動の大きさをCPUに出力する。なお、振動の大きさを振動値(又は振動量と称する場合がある。振動検出部によって検出される振動の大きさ(振動値)は、変位、速度、加速度のいずれの大きさであってもよい。なお、振動検出部は、カート70(後述)への商品の投入によって生じる振動のほか、例えばカート70の移動(走行)等による振動も検出する。携帯端末60は、更に、発光部(ライト)を備えてもよい。
【0013】
CPUは、中央演算処理装置であって、記憶部に記憶されているプログラムを読み出して実行することにより、携帯端末60全体を制御する。記憶部は、種々の情報(例えば、CPUが参照又は生成等する情報、外部から取得した情報等)を記憶する。記憶部は、1以上の種々の記憶部材(例えば、メモリやストレージとなるもの。例えば、RAM、ROM、ハードディスク、SSD(Solid State Drive)等)の総称である。表示部は、例えば、液晶ディスプレイであって、種々の情報(画像情報を含む)を表示する。表示部は、表示画面への操作を受付可能なタッチパネルとして構成される。操作部は、操作者(顧客)の操作を受け付ける。操作部は、1以上の種々の操作部材(筐体に設けられた種々の操作子(ハードボタン)の総称である。なお、表示部はタッチパネルとして構成されため、操作部の一部として捉えてもよい。音声出力部は、音声を出力する。音声入力部は、音声を入力する。撮像部は、撮像画像(静止画像、動画像)を取得する。通信部は、種々の情報を送受信する。通信部は、1以上の種々の通信部材(例えば、5G等の携帯無線通信、無線LAN、近距離無線通信、非接触通信等の通信部材)の総称である。
【0014】
携帯端末60は、撮像部によって取得した撮像画像から種々のコード(例えば、JANコード等のバーコード)を読み取るコード認識機能(スキャナ機能)を備える。携帯端末60による登録は、当該コード認識機能によって実現される。また、携帯端末60は、振動検出部による振動の検出と処理の状況(状態)等とに応じた制御を実行する。つまり、携帯端末60は、振動を検出したときの状況に応じた制御や、ある状況において振動を検出したか否かに応じた制御を実行する。詳細は後述する。
【0015】
図2は、携帯端末60を取り付け可能なカート70について説明する説明図である。カート70は、
図2に示すように、買物籠80(非図示)を載置可能な買物籠載置部71、携帯端末60を取り付け可能なホルダ部72を有する。携帯端末60は、基本的にはカート70に取り付けられた状態で使用されると説明したが、具体的にはホルダ部72に取り付けられた状態で使用される。
【0016】
図2に示した例では、買物籠載置部71には買物籠80が載置されておらず、ホルダ部72には携帯端末60が取り付けられていないが、来店した顧客は、準備として、買物籠載置部71に買物籠80を載置し、ホルダ部72に携帯端末60を取り付ける。また、カート70には、精算時において店員による確認が必要となる商品(顧客による持ち帰り又は店舗への返却について保留された保留商品)を一時的に保管するための専用バッグ90が取り付けられている。
【0017】
携帯端末60は、ホルダ部72に取り付けられているときは、撮像部によってホルダ部72の位置から買物籠80を見下ろした方向の撮像画像(スルー画像(ライブビュー))を取得する。顧客は、商品の陳列エリア(陳列棚)にて所望の商品(購入する商品)を見つけた場合、該商品を手に取って該商品に付されたバーコードがスキャナ機能によって読み取られるようにホルダ部72の下方(ホルダ部72と買物籠80との間の空間)に移動させる。
【0018】
(スキャン動作)
商品に付されたバーコードがスキャナ機能によって読み取られるように、該商品をホルダ部72の下方に持っていく動作を商品スキャン動作(又は単にスキャン動作)と称する。なお、
図4(B)は、スキャン動作が行われている場面を示している。携帯端末60は、スキャン動作によって商品コード(商品識別情報)を取得する。
【0019】
携帯端末60は、商品スキャン動作を認識してもよい。つまり、携帯端末60は、商品スキャン動作が行われているか否か(即ち、スキャン動作の有無)を判断してもよい。例えば、携帯端末60は、画像認識技術(例えば、パターン認識技術等)による画像認識機能によって、撮像画像内に、商品、手、バーコードらしきものを認識したか否かに基づいて、スキャン動作の有無を判断してもよい。
【0020】
(精算装置50)
精算装置50は、顧客によって使用される。具体的には、精算装置50は、携帯端末60によって登録された商品を顧客の操作に基づいて精算する。つまり、販売システム1は、携帯端末60を使用して顧客自ら商品を登録し、精算装置50を使用して顧客自ら精算するといった態様のサービスを提供する。
【0021】
図示は省略するが、精算装置50は、CPU、記憶部、表示部、スキャナ部、カード決済部(非現金決済部)、釣銭機(現金決済部)、印刷部、音声出力部、撮像部、通信部及びサインポールを備える。なお、精算装置50は、1以上の種々の操作部材からなるキー操作部や、人の存在を検出(検知、認識)するセンサ(人感センサ等)等を更に備えてもよい。
【0022】
CPUは、中央演算処理装置であって、記憶部に記憶されているプログラムを読み出して実行することにより、精算装置50全体を制御する。記憶部は、種々の情報を記憶する。記憶部は、1以上の種々の記憶部材の総称である。表示部は、例えば、液晶ディスプレイであって、種々の情報を表示する。表示部は、表示画面への操作を受付可能なタッチパネルとして構成される。スキャナ部は、種々のコード(例えば、精算用コード(後述)、商品コード、品券類やポイントカードや店員の名札等に付された店員コード)をスキャンし、夫々のコードを読み取る。
【0023】
カード決済部は、種々のカード(クレジットカード、交通系カード等のプリペイドカード、デビット支払時におけるキャッシュカード、ポイント支払時におけるポイントカード等)による決済機構である。釣銭機は、現金による決済機構である。印刷部は、種々の媒体(レシート等)を印刷、発行する。音声出力部は、音声(例えば、確認音、警告音、音声ガイダンス等)を出力する。撮像部(カメラ)は、撮像画像(静止画像、動画像)を取得する。通信部は、1以上の種々の通信部材の総称である。サインポールは、先端部分に発光部を有し、発光部の発光態様によって、種々の情報(店員呼出、動作状況等)を報知する。
【0024】
(本部サーバ10)
本部サーバ10は、販売システム1全体を管理するサーバである。本部サーバ10は、例えば、種々の情報(例えば、商品マスタファイル(商品マスタ)等)や、種々の実績情報(例えば、売上実績情報、商品販売実績情報等)を記憶する。また、本部サーバ10は、例えば、クラウドサーバ20やストアコントローラ30に種々の情報(例えば、商品マスタ等)を供給する。商品マスタは、商品コードに対応付けて商品名や価格等を記憶するファイルである。図示は省略するが、本部サーバ10は、少なくとも、CPU、記憶部及び通信部を備える。本部サーバ10は、複数台のサーバから構成されてもよい。
【0025】
(クラウドサーバ20)
クラウドサーバ20は、主に携帯端末60による商品の登録をサポートするサーバである。クラウドサーバ20は、種々の情報(例えば、商品マスタ、取引情報(カート情報)等)を記憶する。また、クラウドサーバ20は、例えば、携帯端末60や精算装置50に種々の情報(例えば、画面情報等)を供給する。図示は省略するが、クラウドサーバ20は、少なくとも、CPU、記憶部及び通信部を備える。クラウドサーバ20は、複数台のサーバから構成されてもよい。
【0026】
(ストアコントローラ30)
ストアコントローラ30は、主に店舗内に設置されている装置(取引状況管理装置40、精算装置50)と店舗外に設置されている装置(本部サーバ10、クラウドサーバ20)との間における情報の通信を担当するサーバである。図示は省略するが、ストアコントローラ30は、少なくとも、CPU、記憶部及び通信部を備える。
【0027】
(取引状況管理装置40)
取引状況管理装置40は、店舗内に設置されている装置(ストアコントローラ30、精算装置50)を管理(処理状況、動作状況等を監視、制御等)する装置(例えば、パーソナルコンピュータ)である。図示は省略するが、取引状況管理装置40は、少なくとも、CPU、記憶部、表示部(タッチパネルとして構成してもよい)、操作部(キーボード、マウス等)、通信部を備える。取引状況管理装置40は、印刷装置(非図示)と通信可能であり、種々の情報を印刷装置から出力してもよい。
【0028】
また、取引状況管理装置40は、店舗内に設置されている装置の管理に加え、本部サーバ10等にアクセスし、本部サーバ10等に記憶されている商品マスタをメンテナンス(商品の設定等)してもよいし、クラウドサーバ20にアクセスし、クラウドサーバ20に記憶されている取引情報等を表示又は修正してもよい。
【0029】
(携帯端末60、クラウドサーバ20、精算装置50の動作の概要)
図3は、携帯端末60、クラウドサーバ20、精算装置50の動作の概要を説明するシーケンス図である。
図3のシーケンス図は、携帯端末60が、初期登録画面(1品目の商品の登録前の登録画面。
図4(A)の登録画面)を表示してから、精算装置50が商品一覧画面(非図示)を表示する迄の、各装置(携帯端末60、クラウドサーバ20、精算装置50)の動作を示している。なお、
図3のシーケンス図は、主に各装置の連携を説明するものであるため、
図3のシーケンス図では、上述した携帯端末60による振動に係る制御に係る部分の説明を省略している。
【0030】
なお、携帯端末60は、例えば、顧客の操作に基づいてサービス開始画面(メニュー画面。非図示)を表示し、サービス開始画面における買物開始指示ボタンの操作に基づいて初期登録画面を表示するものとする。また、初期登録画面を表示する際に(買物開始指示ボタンの操作に基づいて)、当該携帯端末60による取引(又は当該取引の取引識別情報)を識別する取引識別情報をクラウドサーバ20から取得(受信)しているものとする。
【0031】
ステップS1:携帯端末60は、顧客のスキャン動作によって商品コードを取得する。
ステップS2:携帯端末60は、当該取引の取引識別情報とステップS1にて取得した商品コードとをクラウドサーバ20に送信する。
【0032】
ステップS3:クラウドサーバ20は、取引識別情報と商品コードとを携帯端末60から受信する。
ステップS4:クラウドサーバ20は、当該取引(ステップSで受信した取引識別情報に対応する取引)の取引情報を当該商品コードに基づいて更新する。つまり、クラウドサーバ20は、ステップS3で受信した商品コードに対応する商品名や価格を商品マスタから取得(抽出)し、当該取引の取引情報に記憶する。
ステップS5:クラウドサーバ20は、更新後の取引情報を携帯端末60に送信する。例えば、クラウドサーバ20は、更新後の取引情報の内容を反映した登録画面(例えば、
図4(C)の登録画面)を生成し、該登録画面の画面情報を携帯端末60に送信する。
【0033】
ステップS6:携帯端末60は、画面情報(取引情報)をクラウドサーバ20から受信する。
ステップS7:携帯端末60は、ステップS6で受信した画面情報に基づいて登録画面を表示する。具体的には、1品目の商品の場合には、携帯端末60は、初期登録画面に代えて当該1品目の商品を反映した登録画面を表示し、2品目以降の商品の場合には、携帯端末60は、当該2品目以降の商品を反映した登録画面を表示する。
【0034】
ステップS7の後には、顧客のスキャン動作によって商品コードを取得する場合(ステップS1に戻る場合)と、顧客の会計指示ボタンBT630(
図4(C)参照)の操作によって精算用コードを生成、表示する場合(ステップS8に進む場合)とがある。つまり、ステップS1~S7は、商品コードを取得する毎、繰り返し実行される。
【0035】
ステップS8:携帯端末60は、顧客の会計指示ボタンBT630の操作によって精算用コードを生成し、表示する。精算用コードとは、精算用情報をコード化(例えば2次元コード化)したものである。精算用情報とは、当該取引の取引情報をクラウドサーバ20から取得するために必要な情報(例えば、当該取引を識別する取引識別情報)である。
【0036】
顧客は、携帯端末60に表示されている精算用コードを精算装置50に読み取らせる。 なお、精算装置50は、待機状態において、精算用コードの読取(読取動作)を案内する案内画面を表示しているものとする。
【0037】
ステップS9:精算装置50は、顧客の読取動作に基づいて、携帯端末60に表示されている精算用コードを読み取る。つまり、精算装置50は、当該取引を識別する取引識別情報を取得する。
ステップS10:精算装置50は、当該取引の取引情報をクラウドサーバ20に要求する。例えば、精算装置50は、当該取引を識別する取引識別情報を含む要求情報(取引情報取得要求情報)をクラウドサーバ20に送信する。
【0038】
ステップS11:クラウドサーバ20は、要求(取引情報取得要求情報)を受信する。
ステップS12:クラウドサーバ20は、当該取引(ステップS11で受信した取引情報取得要求情報に含まれる取引識別情報に対応する取引)の取引情報を精算装置50に送信する。例えば、クラウドサーバ20は、当該取引の取引情報の内容を反映した商品一覧面(非図示)を生成し、該商品一覧画面の画面情報を精算装置50に送信する。
【0039】
ステップS13:精算装置50は、携帯端末60は、画面情報(取引情報)をクラウドサーバ20から受信する。
ステップS14:精算装置50は、ステップS13で受信した画面情報に基づいて商品一覧画面を表示する。
【0040】
(携帯端末60の表示例)
図4及び
図5は、携帯端末60の表示例である。携帯端末60は、既にカート70(ホルダ部72)に取り付けられているものとする。なお、ホルダ部72の位置から買物籠80を見下ろした方向の撮像画像には、スキャン動作が行われていないときには買物籠80や既に買物籠80に投入された商品等が撮像され、スキャン動作が行われているときには当該スキャン動作の対象商品と当該対象商品の後方に買物籠80や既に買物籠80に投入された商品等が撮像されるが、
図4及び
図5では、簡略化のため、スキャン動作の対象商品以外のもの(買物籠80や既に買物籠80に投入された商品等)については、図示を省略している。
【0041】
図4(A)は、スキャン動作が行われていない状態の登録画面(初期登録画面)である。なお、携帯端末60は、例えば、顧客の操作に基づいてサービス開始画面(メニュー画面。非図示)を表示し、サービス開始画面における買物開始指示ボタンの操作に基づいて登録画面(初期登録画面)を表示する。
【0042】
図4(A)の登録画面(
図4(B)や
図4(C)の登録画面も同様)には、撮像画像表示領域HR610や登録情報表示領域HR620が設けられている。撮像画像表示領域HR610は、主に撮像画像を表示する領域である。登録情報表示領域HR620は、主に商品の登録情報を表示する領域である。
【0043】
図4(B)は、
図4(A)の場面に続く場面である。具体的には、
図4(B)は、顧客が商品(食パン)のスキャン動作を行っている場面である。
【0044】
図4(C)は、
図4(B)の場面に続く場面である。具体的には、
図4(C)は、
図4(B)に示したスキャン動作によって商品(食パン)が登録された場面である。つまり、スキャン動作によって商品コードを取得した携帯端末60は、商品コード等をクラウドサーバ20に送信し(
図3のステップS2)、
図4(C)に示したような登録画面を表示する(
図3のステップS6)。
【0045】
携帯端末60は、商品(1品目の商品)の登録後には、
図4(C)に示すように、会計指示操作を受け付ける会計指示ボタンBT630(本例では「お会計へ進む」と表示したボタン)を操作可能に表示する。顧客は、精算(会計)に進む場合(つまり、商品の登録を終える場合)、会計指示ボタンBT630を操作する。
【0046】
図5(A)は、
図4(A)の場面又は
図4(B)に続く他の場面である。携帯端末60は、
図4(B)に示したようなスキャン動作が行われていない状態、又は、
図4(B)に示したようなスキャン動作が行われたものの商品が登録されていない状態において、振動検出部によって第1閾値よりも大きい第2閾値以上の振動を検出した場合、
図5(A)に示したように、登録画面(
図4(A))の前面に小画面SG10を表示する。
【0047】
(第1閾値、第2閾値、確度)
第1閾値及び第2閾値について説明する。第1閾値及び第2閾値は、夫々、携帯端末60(振動検出部)によって検出される振動の大きさ(振動値)と比較される値である。携帯端末60は、第1閾値及び第2閾値を用いて、商品がカート70(買物籠80)に投入された可能性(商品投入可能性)を判断(判定)する。具体的には、携帯端末60は、第1閾値及び第2閾値を用いて、商品投入可能性を3段階(商品投入無、商品投入有(低確度)、商品投入有(高確度))に判断する。「商品投入無」は、商品投入無と判断した判断結果である。「商品投入有(低確度)」は、商品投入有と判断した判断結果であって該判断結果(商品投入有との判断)の確度が比較的低いと判断した判断結果である。「商品投入有(高確度)」は、商品投入有と判断した判断結果であって該判断結果(商品投入有との判断)の確度が比較的高いと判断した判断結果である。
【0048】
携帯端末60は、検出した振動値が第1閾値未満であれば、商品投入無と判断する。携帯端末60は、検出した振動値が第1閾値以上第2閾値未満であれば、商品投入有(低確度)と判断する。携帯端末60は、検出した振動値が第2閾値以上であれば、商品投入有(高確度)と判断する。つまり、第1閾値は商品投入の有無を判断する閾値であり、第2閾値は商品投入有と判断した際の当該判断自体の確度を判断する閾値である。
【0049】
なお、第1閾値(第2閾値も同様)は、例えば、実験によって決定されたものであってもよい。例えば、実際に商品をカート70(買物籠80)に投入した際に振動検出部によって検出される振動値(商品投入時の振動値)と、カート70を移動等させた際に振動検出部によって検出される振動値(商品非投入時の振動値)と、を夫々多数収集し、商品投入時の振動値の分布や商品非投入時の振動値の分布に基づいて、第1閾値や第2閾値を決定してもよい。
【0050】
一例として、商品投入時の振動値の分布及び商品非投入時の振動値の分布によれば、ある振動値(振動値A)未満の振動は、商品をカート70に投入した際の振動である可能性が相当低く、カート70を移動等させた際の振動である可能性が相当高い場合、当該振動値Aを第1閾値としてもよい。また、商品投入時の振動値の分布及び商品非投入時の振動値の分布によれば、ある振動値(振動値B)以上の振動は、商品をカート70に投入した際の振動である可能性が相当高く、カート70を移動等させた際の振動である可能性が相当低い場合、当該振動値Bを第2閾値としてもよい。
【0051】
図5(A)に戻る。小画面SG10には、専用バッグ90に商品を入れるべき旨を案内するメッセージMS11と、専用バッグ90に商品を入れるべき旨を案内する画像GA12と、商品の登録ができなかった旨を報知するメッセージMS13と、精算機(精算装置50)で店員が対応する旨を報知するメッセージMS14とが表示されている。また、小画面SG10には、OKボタンBT15が操作可能に表示されている。
【0052】
顧客は、専用バッグ90に商品を入れ、OKボタンBT15を操作する(OKボタンBT15を操作した後に専用バッグ90に商品を入れてもよい)。小画面SG10は、OKボタンBT15の操作によって消去される(
図4(A)のような表示となる)。
【0053】
図5(B)は、
図4(A)の場面又は
図4(B)に続く他の場面である。携帯端末60は、
図4(B)に示したようなスキャン動作が行われていない状態、又は、
図4(B)に示したようなスキャン動作が行われたものの商品が登録されていない状態において、振動検出部によって第1閾値以上であって第2閾値未満の振動を検出した場合、
図5(B)に示したように、登録画面(
図4(A))の前面に小画面SG20を表示する。
【0054】
小画面SG20には、確認である旨を報知するメッセージMS21と、商品の登録ができなかった旨を報知するメッセージMS23と、商品を登録するか否かを確認するメッセージMS24とが表示されている。また、小画面SG20には、商品を登録しない旨の登録しないボタンBT25と、商品を登録する旨の登録するボタンBT26とが操作可能に表示されている。
【0055】
顧客は、商品を登録しない場合には登録しないボタンBT25を操作し、商品を登録する場合には登録するボタンBT26を操作する。小画面SG20は、登録しないボタンBT25又は登録するボタンBT26の操作によって消去される(
図4(A)のような表示となる)。
【0056】
図5(C)は、
図4(C)の場面に続く場面である。携帯端末60は、
図4(C)に示したような商品の登録が行われた後の状態において、振動検出部によって第1閾値以上の振動を検出しなかった場合、登録画面(
図4(C))の前面に小画面SG30を表示する。
【0057】
小画面SG30には、確認である旨を報知するメッセージMS31と、商品を投入したか否かを確認するメッセージMS32とが表示されている。また、小画面SG30には、OKボタンBT35が操作可能に表示されている。
【0058】
顧客は、商品の投入を確認(投入していない場合には投入し)、OKボタンBT35を操作する(OKボタンBT35を操作した後に商品の投入を確認してもよい)。小画面SG30は、OKボタンBT35の操作によって消去される(
図4(C)のような表示となる)。
【0059】
(携帯端末60の実施例(実施例1))
携帯端末60は、例えば、下記の機能a~機能eのうちの少なくとも1つの機能を有し、少なくとも1つの機能を実現するように動作する。なお、詳細は、
図6~
図8のフローチャートを用いて説明する。
【0060】
(機能a)携帯端末60は、商品の登録がないのに(つまり商品コードの取得なしに)カート70への商品の投入があったと判断し(第1閾値以上の振動を検出し)、かつ、当該判断の確度が比較的高い場合(該振動が第2閾値以上であった場合)、エラー音(強い調子の音)を出力し、商品の専用バッグ90への投入の指示し、精算装置50で店員が対応する旨を報知する(
図8のステップ450、ステップ460)。例えば、携帯端末60は、エラー音を出力するとともに、
図5(A)の小画面SG10を表示する。
(機能b)携帯端末60は、商品の登録がないのにカート70への商品の投入があったと判断したものの(第1閾値以上の振動を検出したものの)、当該判断の確度が比較的低い場合(該振動が第2閾値未満であった場合)、通知音(柔らかい調子の音)を出力し、商品を登録するか否かを確認する(
図8のステップ470、ステップ480)。例えば、携帯端末60は、通知音を出力するとともに、
図5(B)の小画面SG20を表示する。
(機能c)携帯端末60は、登録した商品についてカート70への投入があったと判断したものの(第1閾値以上の振動を検出したものの)、当該判断の確度が比較的低い場合(該振動が第2閾値未満であった場合)、商品を投入した旨を確認する(
図7(A)のステップ420)。例えば、携帯端末60は、
図5(C)の小画面SG30を表示する。
(機能d)携帯端末60は、登録した商品についてカート70への投入がなかったと判断した場合(第1閾値以上の振動を検出しなかった場合)、商品を投入した旨を確認する(
図7(B)のステップ520)。例えば、携帯端末60は、
図5(C)の小画面SG30を表示する。
(機能e)携帯端末60は、ある商品の商品コードを取得した際に、当該商品よりも前に登録した商品についてカート70への投入がなかったと判断した場合(第1閾値以上の振動を検出しなかった場合)、商品を投入した旨を確認する(
図6(B)のステップ220)。例えば、携帯端末60は、
図5(C)の小画面SG30を表示する。
【0061】
図6~
図8は、携帯端末60の動作の一例を説明するフローチャートである。
図6(A)のフローチャートは、サービス開始画面における買物開始指示ボタンの操作に基づいて開始する。
図6(B)、
図7(A)、
図7(B)のフローチャートは、夫々、
図6(A)のフローチャートから遷移する。
図8のフローチャートは、
図7(A)のフローチャートから遷移する。なお、
図6~
図8のフローチャート(
図9~
図11のフローチャートも同様)は、
図3のシーケンス図のステップS1、ステップS2、ステップS8に関連する(主にステップS1に関連する)。
【0062】
(フラグ、タイマの説明)
はじめに、
図6~
図8のフローチャート(
図9~
図11のフローチャートも同様)において登場する「商品コード直前取得有無フラグ(以下「商品コード取得フラグ」と略称する)」、「商品コード取得フラグクリアタイマ」、「店員要確認フラグ」について説明する。
商品コード取得フラグ:直前の所定時間(例えば10秒間)内に商品コードを取得しているか否かを示したフラグである。商品コード取得フラグがセットされている場合(例えば値「1」の場合)、直前の所定時間内に商品コードを取得している旨を示し、商品コード取得フラグがセットされていない場合(例えば値「0」の場合)、直前の所定時間内に商品コ―ドを取得していない旨を示す。商品コード取得フラグは、商品コードを取得したことに基づいてセットされる。
商品コード取得フラグクリアタイマ:商品コード取得フラグをクリア(例えば値を「1」から「0」に変更)するタイミングを管理するタイマである。具体的には、商品コード取得フラグクリアタイマは、上記所定時間(例えば10秒間)をカウントダウン(又はカウントアップ)するタイマである。商品コード取得フラグクリアタイマは、商品コードを取得したことに基づいてセットされる。
店員要確認フラグ:精算装置50の処理において店員の対応が必要であるか否かを示したフラグである。店員要確認フラグがセットされている場合、店員の対応が必要である旨を示し、店員要確認フラグがクリアされている場合、店員の対応が必要でない旨を示す。店員要確認フラグは、直前の所定時間内に商品コードを取得していない状態(つまり商品の登録がない状態)において、商品投入可能性が比較的高いと判断したことに基づいてセットされる。
【0063】
(
図6(A)のフローチャート)
図6(A)のフローチャートの開始時において、商品コード取得フラグ、店員要確認フラグ、商品コード取得フラグクリアタイマは、初期化(クリア)される。
【0064】
ステップS200:携帯端末60は、商品コードを取得したか否かを判断する。商品コードを取得した場合(ステップS200:YES)、
図6(B)のステップS201に進む。商品コードを取得していない場合(ステップS200:NO)、ステップS400に進む。
ステップS400:携帯端末60は、第1閾値以上の振動を検出したか否かを判断する。つまり、携帯端末60は、第1閾値以上の大きさの振動があったか否かを判断する。第1閾値以上の振動を検出した場合(ステップS400:YES)、
図7(A)のステップS401に進む。第1閾値以上の振動を検出していない場合(ステップS400:NO)、ステップS502に進む。
【0065】
ステップS502:携帯端末60は、直前の所定時間内に商品コードを取得している状態(商品コード取得後状態)であるか否かを判断する。具体的には、携帯端末60は、商品コード取得フラグがセットされている場合には商品コード取得後状態であると判断し、商品コード取得フラグがセットされていない場合には商品コード取得後状態でないと判断する。
図6(B)のステップS201、
図7(A)のステップS401においても同様である。商品コード取得後状態である場合(ステップS502:YES)、ステップS503に進む。商品コード取得後状態でない場合(ステップS502:NO)、ステップS600に進む。なお、商品コード取得後状態は、商品の投入が予定されている状態(商品投入待ち状態)でもある。
【0066】
ステップS503:携帯端末60は、商品コード取得後状態(商品投入待ち状態)の終了タイミングであるか否かを判断する。具体的には、携帯端末60は、商品コード取得フラグクリアタイマがタイムアウトした場合には商品コード取得後状態の終了タイミングであると判断し、商品コード取得フラグクリアタイマがタイムアウトしていない場合には商品コード取得後状態の終了タイミングでないと判断する。終了タイミングである場合(ステップS503:YES)、
図7(B)のステップS509に進む。終了タイミングでない場合(ステップS503:NO)、ステップS600に進む。
【0067】
ステップS600:携帯端末60は、会計指示ボタンBT630の操作があったか否かを判断する。会計指示ボタンBT630の操作があった場合(ステップS600:YES)、ステップS700に進む。会計指示ボタンBT630の操作がなかった場合(ステップS600:NO)、ステップS200に戻る。
ステップS700:携帯端末60は、精算用コードを生成、表示する。そして、本フローチャートは終了する。なお、顧客は、携帯端末60に表示されている精算用コードを精算装置50に読み取らせる。
【0068】
(
図6(B)のフローチャート)
ステップS201:携帯端末60は、商品コード取得後状態(商品投入待ち状態)であるか否かを判断する。商品コード取得後状態である場合(ステップS201:YES)、ステップS208に進む。商品コード取得後状態でない場合(ステップS201:NO)、ステップS235に進む。
ステップS208:携帯端末60は、商品コード取得フラグクリアタイマをクリアする(カウントを止める)。続いてステップS209に進む。
ステップS209:携帯端末60は、商品コード取得フラグをクリアする。続いてステップS220に進む。
ステップS220:携帯端末60は、商品を投入した旨を顧客に確認する。例えば、携帯端末60は、
図5(C)の小画面SG30を表示する。
図7(A)のステップS420や
図7(B)のステップS520についても同様である。続いてステップS221に進む。
ステップS221:携帯端末60は、確認の操作があったか否かを判断する。例えば、携帯端末60は、
図5(C)の小画面SG30のOKボタンBT35の操作があったか否かを判断する。
図7(A)のステップS421や
図7(B)のステップS521についても同様である。確認の操作があった場合(ステップS221:YES)、ステップS225に進む。確認の操作がなかった場合(ステップS221:NO)、ステップS221に戻る。
【0069】
ステップS235:携帯端末60は、
図6(A)のステップS200にて取得した商品コード等をクラウドサーバ20に送信する。続いてステップS238に進む。
ステップS238:携帯端末60は、商品コード取得フラグをセットする。続いてステップS239に進む。
ステップS239:携帯端末60は、商品コード取得フラグクリアタイマをセットする。続いて
図6(A)のステップS200に戻る。
【0070】
(
図7(A)のフローチャート)
ステップS401:携帯端末60は、商品コード取得後状態(商品投入待ち状態)であるか否かを判断する。商品コード取得後状態である場合(ステップS401:YES)、ステップS408に進む。商品コード取得後状態でない場合(ステップS401:NO)、
図8のステップS440に進む。
ステップS408:携帯端末60は、商品コード取得フラグクリアタイマをクリアする。続いてステップS409に進む。
ステップS409:携帯端末60は、商品コード取得フラグをクリアする。続いてステップS410に進む。
【0071】
ステップS410:携帯端末60は、第2閾値以上の振動を検出したか否かを判断する。つまり、
図6(A)のステップS400において第1閾値以上の大きさの振動を検出したが、当該振動の大きさが第2閾値以上であるか否かを判断する。第2閾値以上の振動を検出した場合(ステップS410:YES)、
図6(A)のステップS200に戻る。第2閾値以上の振動を検出していない場合(ステップS410:NO)、ステップS420に進む。
ステップS420:携帯端末60は、商品を投入した旨を顧客に確認する。続いてステップS421に進む。
ステップS421:携帯端末60は、確認の操作があったか否かを判断する。確認の操作がなかった場合(ステップS421:NO)、ステップS421に戻る。
【0072】
(
図7(B)のフローチャート)
ステップS509:携帯端末60は、商品コード取得フラグをクリアする。続いてステップS520に進む。
ステップS520:携帯端末60は、商品を投入した旨を顧客に確認する。続いてステップS451に進む。
ステップS521:携帯端末60は、確認の操作があったか否かを判断する。確認の操作があった場合(ステップS521:YES)、
図6(A)のステップS200に戻る。確認の操作がなかった場合(ステップS521:NO)、ステップS521に戻る。
【0073】
(
図8のフローチャート)
ステップS440:携帯端末60は、第2閾値以上の振動を検出したか否かを判断する。つまり、
図6(A)のステップS400において第1閾値以上の大きさの振動を検出したが、当該振動の大きさが第2閾値以上であるか否かを判断する。第2閾値以上の振動を検出した場合(ステップS440:YES)、ステップS450に進む。第2閾値以上の振動を検出していない場合(ステップS440:NO)、ステップS470に進む。
【0074】
ステップS450:携帯端末60は、エラー音(警告音)を出力(例えば、1秒間出力)する。エラー音は、ステップS470にて出力する通知音よりも強い調子の音(例えば、「ビブッ」と形容されるような音)である。続いてステップS460に進む。
【0075】
ステップS460:携帯端末60は、顧客に商品の専用バッグ90への投入の指示し、精算装置50で店員が対応する旨を報知する。例えば、携帯端末60は、
図5(A)の小画面SG10を表示する。続いてステップS461に進む。
ステップS461:携帯端末60は、確認の操作があったか否かを判断する。例えば、携帯端末60は、
図5(A)の小画面SG10のOKボタンBT15の操作があったか否かを判断する。確認の操作があった場合(ステップS461:YES)、ステップS469に進む。確認の操作がなかった場合(ステップS461:NO)、ステップS461に戻る。
【0076】
ステップS469:携帯端末60は、店員要確認フラグをセットする。なお、既に、店員要確認フラグがセットされている場合には、ステップS469の処理は省略してもよい。続いて
図6(A)のステップS200に戻る。
【0077】
ステップS470:携帯端末60は、通知音(確認音)を出力(例えば、1秒間出力)する。通知音は、ステップS450にて出力するエラー音よりも柔らかい調子の音(例えば、「ポロローン」で形容されるような音)である。続いてステップS480に進む。
【0078】
ステップS480:携帯端末60は、商品を登録するか否かを顧客に確認する。例えば、携帯端末60は、
図5(B)の小画面SG20を表示する。続いてステップS481に進む。
ステップS481:携帯端末60は、登録しない旨の操作があったか否かを判断する。例えば、携帯端末60は、
図5(B)の小画面SG20の登録しないボタンBT25の操作があったか否かを判断する。登録しない旨の操作があった場合(ステップS481:YES)、
図6(A)のステップS200に戻る。登録しない旨の操作がなかった場合(ステップS481:NO)、ステップS482に進む。
【0079】
ステップS482:携帯端末60は、登録する旨の操作があったか否かを判断する。例えば、携帯端末60は、
図5(B)の小画面SG20の登録するボタンBT26の操作があったか否かを判断する。登録する旨の操作があった場合(ステップS482:YES)、ステップS483に進む。登録する旨の操作がなかった場合(ステップS482:NO)、ステップS481に戻る。
【0080】
ステップS483:携帯端末60は、商品コードを取得したか否かを判断する。商品コードを取得した場合(ステップS483:YES)、ステップS485に進む。商品コードを取得していない場合(ステップS483:NO)、ステップS483に戻る。
ステップS285:携帯端末60は、ステップS483にて取得した商品コード等をクラウドサーバ20に送信する。続いて
図6(A)のステップS200に戻る。
【0081】
(携帯端末60の他の実施例(実施例2))
実施例1に示した動作(機能)は、スキャン動作の有無に応じてその後の動作を変化させるものではなかったが、実施例2では、スキャン動作の有無に応じてその後の動作を変化させる。具体的には、携帯端末60は、実施例1の機能aに代えて実施例2の機能a’を実現するように動作し、実施例1の機能bに代えて実施例2の機能b’を実現するように動作する。なお、詳細は、
図9~
図11のフローチャートを用いて説明する。
【0082】
(機能a’)携帯端末60は、スキャン動作のみで実際には商品の登録がないのにカート70への商品の投入があったと判断し(
図11のステップS402(NO))、かつ、当該判断の確度が比較的高い場合、エラー音を出力し、商品の専用バッグ90への投入の指示し、精算装置50で店員が対応する旨を報知する(
図8のステップ450、ステップ460)。
【0083】
つまり、実施例1では、商品が登録されていない状態で第2閾値以上の振動を検出すれば、
図4(B)に示したようなスキャン動作が行われていたか否かに関わらず、例えば、
図5(A)に示したような小画面SG10を表示するが、実施例2では、商品が登録されていない状態で第2閾値以上の振動を検出してもスキャン動作が行われていなければ小画面SG10を表示しない(スキャン動作が行われていれば小画面SG10を表示する)。
【0084】
(機能b’)携帯端末60は、スキャン動作のみで実際には商品の登録がないのにカート70への商品の投入があったと判断したものの(
図11のステップS402(NO))、当該判断の確度が比較的低い場合、通知音を出力し、商品を登録するか否かを確認する(
図8のステップ470、ステップ480)。
【0085】
つまり、実施例1では、商品が登録されていない状態で第1閾値以上第2閾値未満の振動を検出すれば、スキャン動作が行われていたか否かに関わらず、例えば、
図5(B)に示したような小画面SG20を表示するが、実施例2では、商品が登録されていない状態で第1閾値以上第2閾値未満の振動を検出してもスキャン動作が行われていなければ小画面SG20を表示しない(スキャン動作が行われていれば小画面SG20を表示する)。
【0086】
図9~
図11は、携帯端末60の動作の他の例を説明するフローチャートである。
図9(A)のフローチャートは、サービス開始画面における買物開始指示ボタンの操作に基づいて開始する。
図9(B)、
図10(A)、
図10(B)、
図11のフローチャートは、夫々、
図9(A)のフローチャートから遷移する。
【0087】
(フラグ、タイマの説明)
はじめに、
図9~
図11のフローチャートにおいて登場する「スキャン動作直前有無フラグ(以下「スキャン動作フラグ」と略称する)」、「スキャン動作フラグクリアタイマ」について説明する。
スキャン動作フラグ:直前の所定時間(例えば10秒間)内にスキャン動作が行われているか否かを示したフラグである。スキャン動作フラグがセットされている場合(例えば値「1」の場合)、直前の所定時間内にスキャン動作が行われている旨を示し、スキャン動作フラグがセットされていない場合(例えば値「0」の場合)、直前の所定時間内にスキャン動作が行われていない旨を示す。スキャン動作フラグは、スキャン動作を検出したことに基づいてセットされる。
スキャン動作フラグクリアタイマ:スキャン動作フラグをクリア(例えば値を「1」から「0」に変更)するタイミングを管理するタイマである。具体的には、スキャン動作クリアタイマは、上記所定時間(例えば10秒間)をカウントダウン(又はカウントアップ)するタイマである。スキャン動作クリアタイマは、スキャン動作を検出したことに基づいてセットされる。
【0088】
(
図9(A)のフローチャート)
図9(A)のフローチャートの開始時において、各フラグ(商品コード取得フラグ、店員要確認フラグ、スキャン動作フラグ)、各タイマ(商品コード取得フラグクリアタイマ、スキャン動作フラグクリアタイマ)は、初期化される。
【0089】
図9(A)のフローチャートは、
図6(A)のフローチャートに対し、ステップS100、ステップS302及びステップS303が追加されている。なお、
図9(A)のフローチャートでは、ステップS600以降(ステップS600、ステップS700)の図示を省略している。
図9(A)のフローチャートのステップS200、ステップS400、ステップS502、ステップS503、ステップS600(図示省略)及びステップS700(図示省略)は、
図6(A)のフローチャートと同様であるため、説明の一部又は全部を省略する。
【0090】
ステップS100:携帯端末60は、スキャン動作があったか否かを判断する。スキャン動作があった場合(ステップS100:YES)、
図9(B)のステップS106に進む。スキャン動作がなかった場合(ステップS100:NO)、ステップS200に進む。
【0091】
ステップS200:携帯端末60は、商品コードを取得したか否かを判断し、商品コードを取得した場合(ステップS200:YES)、
図10(A)のステップS201の処理を実行し、商品コードを取得していない場合(ステップS200:NO)、ステップS302の処理を実行する。
【0092】
ステップS302:携帯端末60は、直前の所定時間内にスキャン動作が行われている状態(スキャン動作後状態)であるか否かを判断する。具体的には、携帯端末60は、スキャン動作フラグがセットされている場合にはスキャン動作後状態であると判断し、スキャン動作フラグがセットされていない場合にはスキャン動作後状態でないと判断する。
図11のステップS402においても同様である。スキャン動作後状態である場合(ステップS302:YES)、ステップS303に進む。スキャン動作後状態でない場合(ステップS302:NO)、ステップS400に進む。
【0093】
ステップS303:携帯端末60は、スキャン動作後状態の終了タイミングであるか否かを判断する。具体的には、携帯端末60は、スキャン動作フラグクリアタイマがタイムアウトした場合にはスキャン動作後状態の終了タイミングであると判断し、スキャン動作フラグクリアタイマがタイムアウトしていない場合にはスキャン動作後状態の終了タイミングでないと判断する。終了タイミングである場合(ステップS303:YES)、
図10(B)のステップS306に進む。終了タイミングでない場合(ステップS303:NO)、ステップS400に進む。
【0094】
ステップS400:携帯端末60は、第1閾値以上の振動を検出したか否かを判断し、第1閾値以上の振動を検出した場合(ステップS400:YES)、
図11のステップS401の処理を実行し、第1閾値以上の振動を検出していない場合(ステップS400:NO)、ステップS502の処理を実行する。
【0095】
ステップS502:携帯端末60は、直前の所定時間内に商品コードを取得している状態(商品コード取得後状態)であるか否かを判断し、商品コード取得後状態である場合(ステップS502:YES)、ステップS503の処理を実行し、商品コード取得後状態でない場合(ステップS502:NO)、ステップS600の処理を実行する。
ステップS503:携帯端末60は、商品コード取得後状態(商品投入待ち状態)の終了タイミングであるか否かを判断し、終了タイミングである場合(ステップS503:YES)、
図7(B)のステップS509の処理を実行し、終了タイミングでない場合(ステップS503:NO)、ステップS600の処理を実行する。また、上述したように、
図9(A)のフローチャートではステップS600以降の図示は省略したが、
図6(A)のフローチャートのステップS600以降と同様である。
【0096】
(
図9(B)のフローチャート)
ステップS106:携帯端末60はスキャン動作フラグをセットする。続いてステップS107に進む。
ステップS107:携帯端末60は、スキャン動作フラグクリアタイマをセットする。続いて
図9(A)のステップS100に戻る。
【0097】
(
図10(A)のフローチャート)
図10(A)のフローチャートは、
図6(B)のフローチャートに対し、ステップS236及びステップS236が追加されている。なお、
図10(A)のフローチャートでは、
図6(B)のフローチャートの破線枠P内のステップ(ステップS201~ステップS221)の内容を纏めて「P」と省略している。
図10(A)のフローチャートのステップS201~ステップS221(「P」と省略)、ステップS235、ステップS238及びステップS239は、
図6(B)のフローチャートと同様であるため、説明の一部又は全部を省略する。
【0098】
ステップS235:携帯端末60は、
図9(A)のステップS200にて取得した商品コード等をクラウドサーバ20に送信する。続いてステップS236に進む。
ステップS236:携帯端末60は、スキャン動作フラグクリアタイマをクリアする。続いてステップS237に進む。
ステップS237:携帯端末60は、スキャン動作フラグをクリアする。続いてステップS238に進む。
【0099】
携帯端末60は、商品コード取得フラグをセットし(ステップS238)、商品コード取得フラグクリアタイマをセットし(ステップS239)、
図9(A)のステップS100に戻る。
【0100】
(
図10(B)のフローチャート)
ステップS306:携帯端末60はスキャン動作フラグをクリアする。続いて
図9(A)のステップS100に戻る。
【0101】
(
図11のフローチャート)
図11のフローチャートは、
図7(A)のフローチャートに対し、ステップS402、ステップS436及びステップS437が追加されている。なお、
図11のフローチャートでは、
図7(A)のフローチャートのステップS408以降(ステップS408~ステップS410、ステップS420、ステップS421)の図示を省略している。
図11のフローチャートのステップS401、ステップS408以降(図示省略)は、
図7(A)のフローチャートと同様であるため、説明の一部又は全部を省略する。
【0102】
ステップS401:携帯端末60は、商品コード取得後状態(商品投入待ち状態)であるか否かを判断し、商品コード取得後状態である場合(ステップS401:YES)、ステップS408以降の処理を実行し、商品コード取得後状態でない場合(ステップS401:NO)、ステップS402の処理を実行する。
【0103】
ステップS402:携帯端末60は、スキャン動作後状態であるか否かを判断する。スキャン動作後状態である場合(ステップS402:YES)、ステップS436に進む。スキャン動作後状態でない場合(ステップS402:NO)、
図9(A)のステップS100に戻る。
【0104】
ステップS436:携帯端末60は、スキャン動作フラグクリアタイマをクリアする。続いてステップS437に進む。
ステップS437:携帯端末60は、スキャン動作フラグをクリアする。続いて、
図8のステップS440に進む。つまり、
図11のステップS437に続く処理は、
図7(A)のステップS401(NO)の場合に続く処理と同様である。
【0105】
以上、第1実施形態について説明したが、第1実施形態によれば、携帯端末60を用いた商品の登録を好適に実施することができる。例えば、実施例1の携帯端末60は、商品が登録されていない状態において、振動検出部によって検出された振動(CPUが取得した振動値)が、第1閾値以上第2閾値未満であれば未登録の商品投入(いわゆるカゴ抜け)が生じたと判断(低確度)し、第2閾値以上であればカゴ抜けが生じたと判断(高確度)する(機能a及び機能b)。実施例1の携帯端末60によれば、未登録の商品がカート70(買物籠80)に投入されたと判断した場合に、当該判断の確度に応じて適切な対応を採ることができる。また、実施例2の携帯端末60は、スキャン動作後であることを条件に、商品が登録されていない状態において、振動検出部によって検出された振動(CPUが取得した振動値)が、第1閾値以上第2閾値未満であれば未登録の商品投入(カゴ抜け)が生じたと判断(低確度)し、第2閾値以上であればカゴ抜けが生じたと判断(高確度)する(機能a’及び機能b’)。実施例2の携帯端末60によれば、カート70の走行やカート70への人や物の衝突等による振動の影響を無視しつつ、スキャン動作を行うことで商品の登録を偽装するといった悪意のある顧客にも有効に対処することができる。また、実施例1の携帯端末60(実施例2の携帯端末60も同様)によれば、登録した商品のカート70への投入のし忘れを防止することができる(機能c~機能e)。
【0106】
以下、第1実施形態に関する他の構成について説明する。なお、以下に説明する第1実施形態に関する他の構成のうち、第2実施形態(携帯端末60がカート側振動検出部(後述)から振動値を取得等する場合)の他の構成としても適用可能なものは、第2実施形態に適用してもよい。
【0107】
なお、実施例1、実施例2に共通するが、携帯端末60は、
図6(B)のステップS220において、登録した商品を投入した旨を顧客に確認すると説明したが、登録した商品を投入したか登録した商品を投入せずに棚に戻したかを確認してもよい。例えば、携帯端末60は、ステップS220において、
図5(C)の小画面SG30に代えて、投入した旨のボタンと投入せずに棚に戻した旨のボタンとを操作可能に表示した小画面SG40(非図示)を表示してもよい。
図7(A)のステップS420や
図7(B)のステップS520においても同様である。
【0108】
携帯端末60は、小画面SG40(非図示)において棚に戻した旨のボタンが操作された場合、精算機(精算装置50)で店員が対応する旨を報知してもよいし、更に、登録したが棚に戻した商品を専用バッグ90に入れる旨を報知してもよい。例えば、携帯端末60は、小画面SG40(非図示)において棚に戻した旨のボタンが操作された場合には、
図5(A)の小画面SG10を表示してもよい。
【0109】
また、実施例1、実施例2に共通するが、携帯端末60は、
図8のステップS481において、登録しない旨の操作があった場合(例えば、
図5(B)の小画面SG20の登録しないボタンBT25の操作があった場合)、店員要確認フラグをセットし、実施例1の場合には
図6(A)のステップS200に戻ってもよい(実施例2の場合には
図9(A)のステップS100に戻ってもよい)。
【0110】
また、実施例1、実施例2に共通するが、携帯端末60は、
図8のステップS483において、所定時間内に商品コードを取得しなかった場合には、再度、商品を登録するか否かを確認してもよい(ステップS480に戻ってもよい)。携帯端末60は、所定時間内に商品コードを取得しなかった場合には、再度、商品を登録するか否かを確認することに代えて又は加えて、店員要確認フラグをセットしてもよい。
【0111】
また、実施例1、実施例2に共通するが、携帯端末60は、会計指示ボタンBT630の操作があった場合(ステップS600:YES)、
図6(B)の破線枠P内のステップ(ステップS201~ステップS221)を実行し、その後、精算用コードを生成、表示してもよい(ステップS700)。
【0112】
つまり、携帯端末60は、上述した機能(機能a、機能b、機能a’、機能b’、機能c、機能d、機能e)に代えて又は加えて、下記機能fを実現するように動作してもよい。
【0113】
(機能f)携帯端末60は、会計指示ボタンBT630の操作があった際に、当該商品よりも前に登録した商品についてカート70への投入がなかったと判断した場合(第1閾値以上の振動を検出しなかった場合)、商品を投入した旨を確認する。
【0114】
また、実施例1、実施例2に共通するが、上記フローチャート(
図6~
図11のフローチャート)では、夫々のフラグに対応する夫々のタイマを生成(起動)し、夫々のフラグを制御(クリア)する例を説明したが、タイマを生成せずにログなどとして記録する時刻からの経過時間に基づいて、夫々のフラグを制御してもよい。つまり、タイムスタンプによってフラグを制御してもよい。一例として、携帯端末60は、
図6(B)のステップS238において商品コード取得フラグをセットし、続くステップS239において商品コード取得フラグを制御するタイマとして商品コード取得フラグクリアタイマをセットし、例えば、
図6(A)のステップS503にて商品コード取得フラグクリアタイマの値を参照して終了タイミングを判断しているが、ステップS239において商品コード取得フラグクリアタイマをセットせずに(つまりステップS239の処理を行わずに)、
図6(A)のステップS503では商品コード取得フラグのセット時刻(ステップS238の処理時刻)又は商品コード等の送信時刻(ステップS235の処理時刻)からの経過時間を参照して終了タイミングを判断してもよい。
【0115】
また、上記フローチャートでは、夫々のフラグの値(セットされているか否か)に基づいて制御を異ならせる例を説明したが、タイマの状態(つまりカウント中であるか否か)に基づいて制御を異ならせてもよい。一例として、携帯端末60は、
図6(B)のステップS238において商品コード取得フラグをセットし、続くステップS239において商品コード取得フラグを制御するタイマとして商品コード取得フラグクリアタイマをセットし、例えば、
図6(A)のステップS502にて商品コード取得フラグの値を参照して商品コード取得後状態であるか否かを判断しているが、ステップS238において商品コード取得フラグをセットせずに(つまりステップS238の処理を行わずに)、
図6(A)のステップS502では商品コード取得フラグクリアタイマが動作中(カウント中)であるか否かで商品コード取得後状態であるか否かを判断してもよい。
【0116】
また、フラグやタイマの一方又は両方に代えて又は加えて、ステータス(動作状況情報)を用いて(変化、参照等して)、動作を制御してもよい。変化するステータスは、例えば、スキャン動作前(無)状態、スキャン動作後(有)状態、商品コード取得後状態(商品投入待ち状態)などである。
【0117】
また、実施例1、実施例2に共通するが、携帯端末60は、カゴ抜けが生じたと判断(高確度)した場合(
図8のステップS440)、確認の操作の後に(ステップS461(YES))、店員用確認フラグをセットしているが(ステップS469)、カゴ抜けが生じたと判断(高確度)した場合には、無条件に(例えば、エラー音を出力する前に)、店員用確認フラグをセットしてもよい。
【0118】
また、実施例1、実施例2に共通するが、携帯端末60は、カゴ抜けが生じたと判断(高確度)した場合、店員用確認フラグをセットしているが(
図8のステップS469)、店員用確認フラグのセットに代えて又は加えて、カゴ抜けが生じたと判断(高確度)した旨の情報を取引識別情報とともに他の装置(例えば、クラウドサーバ20、取引状況管理装置40)に送信してもよい。
【0119】
取引状況管理装置40は、取引におけるカゴ抜け発生の情報(カゴ抜けが生じたと判断されているか否かの情報)を表示(カゴ抜けが生じたと判断(高確度)した旨の情報をクラウドサーバ20に送信し、取引状況管理装置40に送信しない態様の場合にはクラウドサーバ20にアクセスして表示)してもよい。なお、携帯端末60は、カゴ抜けが生じたと判断(高確度)した場合、カゴ抜けが生じたと判断(高確度)した旨の情報等を店員の携帯端末に送信してもよい。
【0120】
各取引における携帯端末60の判断結果をカウントしてもよい。例えば、各取引において、カゴ抜けが生じたと判断(低確度)した低確度回数(
図8のステップS440(NO)と判断した回数)、又は、カゴ抜けが生じたと判断(高確度)した高確度回数(
図8のステップS440(YES)と判断した回数)の一方又は両方をカウントしてもよい。
【0121】
低確度回数や高確度回数のカウントは携帯端末60が行ってもよいし、携帯端末60以外の装置(例えば、クラウドサーバ20、取引状況管理装置40)が行ってもよい。つまり、携帯端末60は、各取引において、カゴ抜けが生じたと判断(低確度)した場合、自身で低確度回数をカウントアップしてもよいし、カゴ抜けが生じたと判断(低確度)した旨の情報を取引識別情報とともにクラウドサーバ20に送信し、クラウドサーバ20側で低確度回数をカウントアップしてもよいし、カゴ抜けが生じたと判断(低確度)した旨の情報を取引識別情報とともに取引状況管理装置40に送信し、取引状況管理装置40側で低確度回数をカウントアップしてもよい。カゴ抜けが生じたと判断(高確度)した場合についても同様である。
【0122】
なお、携帯端末60が低確度回数や高確度回数をカウントアップする態様において、携帯端末60は、低確度回数又は高確度回数をカウントアップしたときは、取引識別情報とともにカウントアップ後の回数(又は、カウントアップした回数の別(つまり、低確度回数と高確度回数のどちらをカウントアップしたか)を示した情報)を取引識別情報とともにクラウドサーバ20や取引状況管理装置40に送信してもよい。携帯端末60は、低確度回数又は高確度回数をカウントアップしたときに代えて又は加えて、取引情報を要求する際に(
図3のステップS10)、取引識別情報とともに最終的な回数をクラウドサーバ20や取引状況管理装置40に送信してもよい。なお、携帯端末60は、低確度回数や高確度回数を取引識別情報とともに店員の携帯端末に送信してもよい。
【0123】
また、携帯端末60から受信したカゴ抜けが生じたと判断した旨の情報(低確度/高確度)に基づいてクラウドサーバ20(取引状況管理装置40も同様)が低確度回数や高確度回数をカウントアップする態様において、クラウドサーバ20(取引状況管理装置40も同様)は、低確度回数又は高確度回数をカウントアップしたときは、カウントアップ後の回数(又は、カウントアップした回数の別を示した情報)を当該携帯端末60に送信してもよい。
【0124】
取引状況管理装置40は、各取引におけるカゴ抜け発生の情報(低確度回数、高確度回数)を表示(低確度回数や高確度回数をクラウドサーバ20がカウントアップし、取引状況管理装置40がカウントアップしない態様の場合にはクラウドサーバ20にアクセスして表示)してもよい。
【0125】
また、精算装置50において、例えば、高確度回数が0回であっても、低確度回数が所定回数以上である場合には、店員が介在するようにしてもよい。この場合、精算装置50は、「店員によるランダムにチェックが行われます」や「誤操作カウントが〇回以上となったため店員が確認させていただきます」等のメッセージを表示してもよい。
【0126】
なお、携帯端末60は、振動検出部によって検出される振動(振動値)の閾値との比較結果(振動比較結果)に代えて又は加えて、撮像部によって取得(撮像)される画像の比較結果(画像比較結果)に基づいて、カゴ抜け判断の確度を判断してもよい。例えば、携帯端末60は、振動前の画像である前画像(例えば、第1閾値以上の振動が検出される前に撮像された画像)と振動後の画像である後画像(第1閾値以上の振動が検出された後に撮像された画像)とを比較した画像比較結果に基づいて、カゴ抜け判断の確度を判断してもよい。また、携帯端末60は、振動比較結果に代えて又は加えて、画像比較結果に基づいて、カゴ抜けの発生を判断してもよい。つまり、携帯端末60は、振動比較結果、画像比較結果のうちの少なくとも一方に基づいてカゴ抜けの発生を判断し、振動比較結果、画像比較結果のうちの少なくとも一方に基づいてカゴ抜け判断の確度を判断してもよい(組み合わせは3×3の9通りである)。
【0127】
一例として、画像比較結果に基づいてカゴ抜けの発生を判断し、画像比較結果に基づいてカゴ抜け判断の確度を判断する構成の場合、携帯端末60は、商品が登録されていない状態において、注目する2つの画像(前画像、後画像)の差異度(例えば、前画像全体の特徴量と後画像全体の特徴量の差を示した値を算出する。上記差異度は、前画像に存在しないオブジェクトが後画像にも存在していない場合よりも、前画像に存在しないオブジェクトが後画像には存在している場合の方が大きな値となる。従って、携帯端末60は、商品が登録されていない状態において、算出した差異度が第1閾値以上第2閾値未満であればカゴ抜けが生じたと判断(低確度)し、算出した差異度が第2閾値場以上である場合にはカゴ抜けが生じたと判断(高確度)してもよい。
【0128】
携帯端末60は、上述したように、ホルダ部72に取り付けらけた状態で使用されるが、振動検出部によってホルダ部72に取り付けられているか否かを判断してもよい。例えば、携帯端末60は、所定の時間、姿勢に変化がない場合(つまり加速度等を検出しない場合)、ホルダ部72に取り付けられていると判断してもよい。なお、カート70は、ホルダ部72に取り付けた携帯端末60を充電する充電機能を備えてもよい。この場合、携帯端末60は、該充電機能による充電がなされている場合(例えば、充電中であると認識している場合、又は充電機能に係るカート70側のコネクタ(端子又はケーブル)との接続を認識している場合)には、ホルダ部72に取り付けられていると判断してもよい。また、カート70は、ホルダ部72に携帯端末60が取り付けられているか否かを認識可能なセンサと通信部とを備え、カート70は、ホルダ部72に取り付けられている携帯端末60に対し、ホルダ部72に取り付けられている旨の情報を送信(所定の時間間隔で送信)してもよい。この場合、携帯端末60は、所定時間に亘って、上記情報を受信していない場合、ホルダ部72に取り付けられていないと判断してもよい。
【0129】
携帯端末60は、ホルダ部72に取り付けられているときにはカゴ抜けが生じたか否かを判断するカゴ抜け判断機能を有効とし、ホルダ部72に取り付けられていないときにはカゴ抜け判断機能を無効としてもよい。つまり、携帯端末60は、ホルダ部72から取り外された場合にはカゴ抜け判断機能を有効から無効に切り替え、ホルダ部72に再度取り付けられた場合にはカゴ抜け判断機能を無効から有効に切り替えてもよい。携帯端末60が顧客の所有物ではなくカート70の一部として構成されるものである場合には、カゴ抜け判断機能の有効/無効を切り替える機能はなくてもよい(つまりカゴ抜け判断機能は常に有効であってもよい)。
【0130】
また、携帯端末60がホルダ部72に取り付けられているか否かに応じて、携帯端末60による商品の登録を制限してもよい。例えば、携帯端末60がホルダ部72に取り付けられている場合には商品の登録を許可し、携帯端末60がホルダ部72に取り付けられていない場合には商品の登録を禁止してもよい。禁止の方法は、例えば、撮像部での撮像を禁止する方法であってもよいし、商品コードの取得(
図3のステップS1)を禁止する方法であってもよいし、クラウドサーバ20への商品コード等の送信(
図3のステップS2)を禁止する方法であってもよいし、クラウドサーバ20における取引情報の更新(
図1のステップS4)を禁止する方法であってもよい。
【0131】
また、携帯端末60がホルダ部72に取り付けられていない場合には、商品の種類に応じて携帯端末60による登録を制限してもよい。具体的には、携帯端末60がホルダ部72に取り付けられている状態では登録が不可能な商品又は登録が困難な特定商品(大きな商品、陳列棚の値札のバーコードを読み取る商品等)については、携帯端末60がホルダ部72に取り付けられている場合であっても登録を許可し、特定商品以外の商品(つまりホルダ部72に取り付けられている状態でも登録が容易な商品)について、ホルダ部72に取り付けられていない場合には登録を禁止してもよい。特定商品であるか否かは、例えば、商品マスタに予め設定しておいてもよい。
【0132】
(第2実施形態)
第1実施形態では携帯端末60が振動を検出したが、第2実施形態ではカート70が振動を検出する。カート70は、少なくとも、振動検出部及び通信部を備える。なお、説明の便宜上、携帯端末60が備える振動検出部を端末側振動検出部と称し、カート70が備える振動検出部をカート側振動検出部と称する場合がある。カート70が備える振動検出部(カート側振動検出部)は、当該カート70(自カート70)の振動や、当該カート70に載置された買物籠80の振動を検出する、例えば、加速度センサ、ジャイロセンサである。
【0133】
カート70は、カート側振動検出部によって検出した振動値(振動検出結果)を通信部によって携帯端末60に出力する。カート70の通信部と携帯端末60の通信部との間の通信は、例えば、デバイスコントローラとUSB等の有線接続による通信であってもよいし、ブルートゥース(登録商標)等の無線接続による通信であってもよい。
【0134】
携帯端末60は、カート70から振動値を取得した場合、取得した振動値に基づいて、第1実施形態の場合と同様、カゴ抜けの発生を判断し、カゴ抜け判断の確度を判断する。カート70から取得した振動値と比較する閾値(第1閾値や第2閾値)は、実際に商品をカート70(買物籠80)に投入した際にカート側振動検出部によって検出される振動値(商品投入時の振動値)と、カート70を移動等させた際にカート側振動検出部によって検出される振動値(商品非投入時の振動値)と、を夫々多数収集し、商品投入時の振動値や商品非投入時の振動値の分布に基づいて、決定してもよい。
【0135】
(他のセンサによる振動の検出)
カート側振動検出部は、例えば、加速度センサ、ジャイロセンサであると説明したが、カート側振動検出部は、当該カート70の振動や当該カート70に載置された買物籠80の振動を検出可能なセンサであればよく、重量(例えば、買物籠80内の商品の重量)を検出可能なセンサ(例えば、ロードセル)であってもよいし、圧力(例えば、当該カート70や買物籠80に上方から掛かる圧力)を検出するセンサであってもよいし、音圧(例えば、当該カート70や買物籠80の周辺の音圧)を検出するセンサであってもよい。つまり、カート側振動検出部は、端末側振動検出部と同様、加速度センサやジャイロセンサであってもよいが、商品を投入した場合やカート70が移動した場合の振動は、重量の変化や、圧力の変化や、音圧の変化としても検出可能であるため、カート側振動検出部は、重量を検出可能なセンサや圧力を検出するセンサや音圧を検出するセンサであってもよい。換言すれば、カート70は、振動を検出するセンサ(カート側振動検出部)として、重量検出部や圧力検出部や音圧検出部を備えてもよい。
【0136】
重量の変化から把握する振動値を用いて、カゴ抜けの発生を判断し、カゴ抜け判断の確度を判断する閾値の数は、2以上であってもよい。つまり、重量の変化から把握する振動値と比較する閾値は、カゴ抜け発生の判断と、該判断の確度の判断とが可能な数であればよく、2以上であってもよい。つまり、重量の変化から把握する振動値と比較する閾値は、例えば、実際に商品をカート70(買物籠80)に投入した際に検出される重量の変化(商品投入時の重量変化)と、カート70を移動等させた際に検出される重量の変化と(商品非投入時の重量変化)と、を夫々多数収集し、商品投入時の重量変化や商品非投入時の重量変化のパターンに基づいて、決定してもよい。圧力の変化から把握する振動値と比較する閾値や、音圧の変化から把握する振動値と比較する閾値についても同様である。
【0137】
(振動以外による判断)
なお、カート70は、振動に代えて又は加えて、重量(例えば、買物籠80内の商品の重量)を検出(計量)し、重量値(重量検出結果)を携帯端末60に出力してもよい。また、カート70は、振動や重量に代えて又は加えて、圧力(例えば、当該カート70や買物籠80に上方から掛かる圧力)を検出し、圧力値(圧力検出結果)を携帯端末60に出力してもよい。また、カート70は、振動動や重量や圧力に代えて又は加えて、音圧(例えば、当該カート70や買物籠80の周辺の音圧)を検出し、音圧値(音圧検出結果)を携帯端末60に出力してもよい。つまり、カート70は、振動を検出するセンサ(カート側振動検出部)として、重量検出部や圧力検出部や音圧検出部を備えてもよいが、重量(例えば、買物籠80内の商品の重量)を検出(計量)するものとして重量検出部を備え、圧力(例えば、当該カート70や買物籠80に上方から掛かる圧力)を検出するものとして圧力検出部を備え、音圧(例えば、当該カート70や買物籠80の周辺の音圧)を検出するものとして音圧検出部を備えてもよい。
【0138】
携帯端末60は、カート70から取得した種々の情報に基づいて、カゴ抜けの発生を判断し、カゴ抜け判断の確度を判断してもよい。つまり、携帯端末60は、カート70から取得する、振動値(振動検出結果)、重量値(重量検出結果)、圧力値(圧力検出結果)、音圧値(音圧検出結果)のうちの少なくとも1つと、夫々の閾値(第1閾値、第2閾値)と、に基づいて、商品投入の有無を判断しかつ該判断の確度を判断してもよい。
【0139】
カート70から取得した重量値と比較する閾値(第1閾値や第2閾値)については、例えば、増加分の重量が商品投入によるものではないと判断可能な重量(具体的には、最軽量の商品の重量よりも小さい重量)を第1閾値とし、増加分の重量が商品投入によるものであると判断可能な重量(つまり、誤差によって増加したとは考えられないような重量)を第2閾値としてもよい。
【0140】
カート70から取得した圧力値と比較する閾値(第1閾値や第2閾値)は、実際に商品をカート70(買物籠80)に投入した際にカート70が備える圧力検出部によって検出される圧力値(商品投入時の圧力値)と、カート70を移動等させた際にカート70が備える圧力検出部によって検出される圧力値(商品非投入時の圧力値)と、を夫々多数収集し、商品投入時の圧力値や商品非投入時の圧力値の分布に基づいて、決定してもよい。カート70から取得した音圧力値と比較する閾値についても同様である。
【0141】
なお、携帯端末60に代えて、カート70が、カゴ抜けの発生を判断し、カゴ抜け判断の確度を判断してもよい。例えば、カート70は、CPUや記憶部を備え、自身が検出した検出結果(振動検出結果、重量検出結果、圧力検出結果、音圧検出結果のうちの少なくとも1つ)と、記憶部に記憶した検出結果毎の閾値(第1閾値、第2閾値)とに基づいて、カゴ抜けの発生を判断し、カゴ抜け判断の確度を判断してもよい。カート70は、判断結果を携帯端末60に送信する。
【0142】
なお、カート70が振動検出部(カート側振動検出部)を備えると説明したが、振動検出部を備える振動検出器をカート70に取り付けてもよい。また、買物籠80が振動検出部を備えてもよいし、買物籠80に振動検出器を取り付けてもよい。重量検出部、圧力検出部、音圧検出部についても同様である。
【0143】
なお、カート70側には2以上の振動検出部(カート側振動検出部)を設けてもよい(カート70側の2以上の箇所に振動検出部を設けてもよい)。重量検出部、圧力検出部、音圧検出部についても同様である。
【0144】
以上、第2実施形態について説明したが、第2実施形態によれば、第1実施形態と同様、携帯端末を用いた商品の登録を好適に実施することができる。また、複数種類のセンシング情報(振動、重量、圧力、音圧)を用いたり、複数箇所でセンシングしたりすることにより、判断の精度が向上する。
【0145】
以上、各実施形態について説明したが、各実施形態によれば、携帯端末を用いた商品の登録を好適に実施することができる。
【0146】
(変形例等)
以上、各実施形態について説明したが、機器の構成、データの構成、処理の流れ、表示及び出力の態様などは、例えば下記(1)~(8)に示すように、適宜変更が可能である。また、下記(1)~(8)は、夫々適宜組み合わされてよい。
【0147】
(1)第1実施形態では、携帯端末60が備える端末側振動検出部等の検出結果(振動等)に基づいて商品投入の有無を判断しかつ該判断の確度を判断する例を説明し、第2実施形態ではカート側振動検出部等の検出結果(振動等)に基づいて商品投入の有無を判断しかつ該判断の確度を判断する例を説明したが、第1実施形態と第2実施形態を組み合わせてもよい。つまり、携帯端末60は、携帯端末60自身の端末側振動検出部が検出した振動、携帯端末60自身の撮像部によって取得した撮像画像、カート側振動検出部から取得した振動、重量検出部から取得した重量、圧力検出部から取得した圧力、音圧検出部から取得した音圧のうちの少なくとも1つに基づいて、商品投入の有無を判断しかつ該判断の確度を判断してもよい。カート70に情報を集めて(携帯端末60からカート70に検出結果を送信し)、カート70が判断してもよい。
【0148】
なお、カート70側のカート側振動検出部等の検出結果は利用せずに携帯端末60の振動検出部等の検出結果を利用して判断する態様において、携帯端末60からカート70に検出結果を送信し、携帯端末60に代えてカート70が、商品投入の有無を判断しかつ該判断の確度を判断してもよい。下記(2)以降において携帯端末60の動作として説明する内容についても同様である。
【0149】
(2)第1実施形態(第2実施形態も同様)では、振動(振動検出結果)に係る閾値が2つ(第1閾値、第2閾値)である例を説明したが、3以上であってもよい。つまり、第1実施形態(第2実施形態も同様)では、振動が、第1閾値未満であれば商品投入無と判断し、第1閾値以上第2閾値未満であれば商品投入有(低確度)と判断し、第2閾値以上であれば商品投入有(高確度)と判断し、商品投入有(低確度)と判断した場合と、商品投入有(高確度)と判断した場合とで異なる情報を出力する例を説明したが、より細かく分類するように判断し、夫々に応じた情報を出力してもよい。画像(画像比較結果)に係る閾値についても同様である。また、第2実施形態における、重量(重量検出結果)に係る閾値、圧力(圧力検出結果)に係るに係る閾値、音圧検出結果に係る閾値についても同様である。
【0150】
(3)第1実施形態(第2実施形態も同様)において、移動中のカート70(買物籠80)への商品の投入を考慮してもよい。振動中のカート70への商品投入による振動は、静止中のカート70への商品投入による振動よりも大きいと考えられるため、移動中のカート70への商品の投入を考慮する場合であっても、移動中のカート70への商品の投入を考慮しない場合と同様、振動が、第1閾値未満であれば商品投入無と判断し、第1閾値以上第2閾値未満であれば商品投入有(低確度)と判断し、第2閾値以上であれば商品投入有(高確度)と判断してもよい。
【0151】
あるいは、静止中のカート70に実際に商品を投入した際に振動検出部によって検出される振動(静止中商品投入時の振動値)と、移動中のカート70に実際に商品を投入した際に振動検出部によって検出される振動(移動中商品投入時の振動値)と、単にカート70を移動させた際に振動検出部によって検出される振動(移動中商品非投入時の振動値)と、を夫々多数収集し、夫々の振動(静止中商品投入時の振動値、移動中商品投入時の振動値、移動中商品非投入時の振動値)の分布に基づいて2以上の閾値を決定しておき、振動検出部によって検出される振動と当該2以上の閾値とを比較することによって、商品投入無、商品投入有(低確度)、商品投入有(高確度)を判断してもよい。
【0152】
端末側振動検出部(又はカート側振動検出部)とは異なる部材(例えば、携帯端末60やカート70の備えるGPS等の位置センサ、カート70が備える車輪等の動きを検出するセンサ、音圧検出部、画像認識機能(撮像画像の背景部分の変化の認識等))によってカート70が静止しているか移動しているかを検出してもよい。上記異なる部材によってカート70が移動していると判断した場合には、振動検出部によって検出される振動(移動中のカート70における振動値)とカート動時用の閾値(カート移動時用の第1閾値、カート移動時用の第2閾値)とを比較することによって、商品投入無、商品投入有(低確度)、商品投入有(高確度)を判断してもよい。なお、カート移動時用の閾値は、移動中の夫々の振動(移動中商品投入時、移動中商品非投入時の振動値)の分布に基づいて決定してもよい。
【0153】
(4)第1実施形態(第2実施形態も同様)において、カート70(買物籠80)内の商品の荷崩れ(移動)を考慮してもよい。例えば、カート70内に存在する商品が所定数(例えば、5品)以上である場合には荷崩れが生じ易いと仮定(設定)し、振動検出部によって検出された振動と、振動検出前の時点において既にカート70に投入されている商品数(又は既に登録した商品数)と、閾値とに基づいて、商品投入無、商品投入有(低確度)、商品投入有(高確度)を判断してもよい。一例として、振動検出部によって検出された振動が第2閾値以上であって当該振動検出前の時点において既にカート70に投入されている商品数(又は既に登録した商品数)が所定数未満である場合には商品投入有(高確度)と判断し、振動検出部によって検出された振動が第2閾値以上であっても当該振動検出前の時点において既にカート70に投入されている商品数(又は既に登録した商品数)が所定数以上である場合には商品投入有(低確度)と判断してもよい。なお、既にカート70に投入された商品数(又は既に登録した商品数)に代えて又は加えて、既にカート70に投入されている商品(又は既に登録した商品)の総重量や、既にカート70に投入されている商品(又は既に登録した商品)のサイズや形状も考慮し、荷崩れが生じ易いか否かを設定してもよい。つまり、振動検出部によって検出された振動と、振動検出時における状況(商品数、総重量、商品のサイズや形状のうちの1つ以上)とに基づいて、商品投入無、商品投入有(低確度)、商品投入有(高確度)を判断してもよい。なお、画像に基づいて荷崩れが生じたか否かを判断してもよい。例えば、振動前の画像に存在しないオブジェクトが振動後の画像には存在している場合や、振動前の画像の所定領域(周縁部)において新たなオブジェクトを認識した場合(撮像領域内への商品や手の進入を認識した場合)には、荷崩れが生じていないと判断してもよい。
【0154】
(5)第1実施形態(第2実施形態も同様)では、あるセンシング情報(例えば、1つの振動検出部から取得する振動等)について1つ値(一瞬の値)に基づいて商品投入有無等を判断する例を説明したが、複数の値(例えば、経時的な値の変化のパターン、複数の値から得られる特徴量)に基づいて商品投入有無等を判断してもよい。
【0155】
一例として、振動の場合について説明する。判断用として、実際に商品をカート70(買物籠80)に投入した際に端末側振動検出部(又はカート側振動検出部)から連続して得られる振動の変化パターン(商品投入時の振動変化パターン)を多数収集し、商品投入時の振動変化パターンの特徴量を算出しておく。判断の場面では、携帯端末60は、端末側振動検出部(又はカート側振動検出部)から連続して得られる振動の変化パターンの特徴量を算出し、算出した特徴量と、商品投入時の振動変化パターンの特徴量とを比較し、両者の類似度(一致度)が、第1閾値未満であれば商品投入無と判断し、第1閾値以上第2閾値未満であれば商品投入有(低確度)と判断し、第2閾値以上であれば商品投入有(高確度)と判断してもよい。あるいは、判断用として、カート70を移動等させた際に端末側振動検出部(又はカート側振動検出部)から連続して得られる振動の変化パターン(商品非投入時の振動変化パターン)を多数収集し、商品非投入時の振動変化パターンの特徴量を算出しておく。判断の場面では、携帯端末60は、端末側振動検出部(又はカート側振動検出部)から連続して得られる振動の変化パターンの特徴量を算出し、算出した特徴量と、商品非投入時の振動変化パターンの特徴量とを比較し、両者の差異度が、第1閾値未満であれば商品投入無と判断し、第1閾値以上第2閾値未満であれば商品投入有(低確度)と判断し、第2閾値以上であれば商品投入有(高確度)と判断してもよい。携帯端末60は、商品投入時の振動変化パターンの特徴量と、商品非投入時の振動変化パターンの特徴量の両方を用いて、商品投入無、商品投入有(低確度)、商品投入有(高確度)を判断してもよい。
【0156】
(6)上記(5)にも関連するが、機械学習によって生成された学習済モデルを用いて商品投入有無等を判断してもよい。商品投入有無等の判断用の学習済モデル(以下、学習済モデル1000と称する)は、例えば、ニューラルネットワークを用いて表されるモデルであってもよい。具体的には、学習済モデル1000は、センシング情報等(振動値、重量値、音圧値、位置、車輪等の動き、撮像画像等のうちの1つ以上)に基づく夫々の特徴量(振動値に係る特徴量、…、撮像画像等のうちの1つ以上)を入力した場合に、商品が投入された確率(尤度)と、商品が投入されていない確率(尤度)と、を出力するものであってもよい。
【0157】
学習済モデル1000は、学習モデル生成装置(例えば、パーソナルコンピュータ)によって生成される。学習モデル生成装置は、例えば、カート70に商品を投入していない多数の夫々の場面におけるセンシング情報等に基づく夫々の特徴量(投入無特徴量)と、該夫々の場面では商品を投入していない旨を示した教師データ(つまり投入無特徴量に対応する教師データ)と、カート70に商品を投入した多数の夫々の場面におけるセンシング情報等に基づく夫々の特徴量(投入有特徴量)と、該夫々の場面では商品を投入した旨を示した教師データ(つまり投入有特徴量に対応する教師データ)とに基づいて生成されたモデルである。
【0158】
携帯端末60は、センシング情報等から特徴量を算出する。携帯端末60は、算出した特徴量を学習済モデル1000の入力層に入力し、出力層から出力値(商品が投入された確率、商品が投入されていない確率)を得る。携帯端末60は、例えば、出力層から得られた商品が投入された確率が、所定の第1確率(例えば、10%)未満であれば商品投入無と判断し、所定の第1確率以上であって所定の第2確率(例えば、50%)未満であれば商品投入有(低確度)と判断し、所定の第2確率であれば商品投入有(高確度)と判断してもよい。
【0159】
(7)上記(6)にも関連するが、機械学習によって生成された学習済モデルを用いてスキャン動作の有無を判断してもよい。スキャン動作の有無の判断用の学習済モデル(以下、学習済モデル1100と称する)は、例えば、ニューラルネットワークを用いて表されるモデルであってもよい。具体的には、学習済モデル1100は、撮像画像に基づく特徴量を入力した場合に、スキャン動作が行われた確率(尤度)と、スキャン動作が行われていない確率(尤度)と、を出力するものであってもよい。
【0160】
学習済モデル1100は、学習モデル生成装置によって生成される。学習モデル生成装置は、例えば、スキャン動作が行われていない多数の夫々の場面における撮像画像に基づく夫々の特徴量(スキャン動作無特徴量)と、該夫々の場面ではスキャン動作が行われていない旨を示した教師データ(つまりスキャン動作無特徴量に対応する教師データ)と、スキャン動作が行われた多数の夫々の場面における撮像画像に基づく夫々の特徴量(スキャン動作有特徴量)と、該夫々の場面ではスキャン動作が行われた旨を示した教師データ(つまりスキャン動作有特徴量に対応する教師データ)とに基づいて生成されたモデルである。学習モデル生成装置によって生成された学習済モデル1100は、携帯端末60が参照可能な場所に記憶しておく。
【0161】
携帯端末60は、撮像画像から特徴量を算出する。携帯端末60は、算出した特徴量を学習済モデル1100の入力層に入力し、出力層から出力値(スキャン動作が行われた確率、スキャン動作が行われていない確率)を得る。携帯端末60は、例えば、出力層から得られたスキャン動作が行われた確率が、所定の確率(例えば、50%)未満であればスキャン動作が行われていないと判断し、所定の確率以上であればスキャン動作が行われていると判断する。
【0162】
(8)各装置(携帯端末60、精算装置50、カート70等)における各機能(入出力、記憶、処理(判断含む))の一部又は全部は、当該機能の実行主体として説明した装置とは異なる他の装置において実現してもよい。例えば、各装置は、入出力のインターフェース等に特化したいわゆるシンクライアントとして機能してもよい。一例として、各装置の動作を制御するためのプログラムをクラウドサーバ(クラウドサーバ20と同一であってもよいし他のクラウドサーバであってもよい)が実行し、各装置はブラウジング機能によって画面を表示等してもよい。具体例として、クラウドサーバ20が、携帯端末60から判断に必要な情報を取得し(受信)し、商品投入無、商品投入有(低確度)、商品投入有(高確度)を判断してもよい。
【0163】
<実施形態の総括>
[技術分野]
本発明は、プログラム、情報端末、システムに関する。
[背景技術]
携帯端末を用いて顧客自ら商品を登録するシステムが知られている(例えば、特許文献1参照)。
[先行技術文献]
[特許文献]
[特許文献1]特開2018-147252号公報
[発明の概要]
[発明が解決しようとする課題]
しかしながら、上述のようなシステムには、例えば悪意のある顧客や不慣れな顧客への対策において改善の余地がある。本発明は、このような事情に鑑みてなされたもので、携帯端末を用いた商品の登録を好適に実施する技術を提供することを目的とする。
[課題を解決するための手段]
【0164】
(1)上述した課題を解決するための一態様は、購入する商品の登録に用いる情報端末(例えば、携帯端末60)としてコンピュータを機能させるプログラムであって、前記コンピュータを、画像を取得する画像取得手段、前記画像取得手段で取得した画像内の商品識別情報に基づいて商品を登録する登録手段、自情報端末の振動を検出する振動検出手段(例えば、端末側振動検出部)、自情報端末の操作者に商品の購入に関する情報を出力可能な出力手段(例えば、表示部、音声出力部、通信部)として機能させ、前記出力手段は、前記振動検出手段で所定の振動が検出され、かつ、当該振動の検出前に前記登録手段で商品が登録されていなかった場合(例えば、
図7のステップS401がNOの場合)、商品の購入に関する情報(例えば、ステップS450、ステップS460、ステップS470、ステップS480を参照)を出力することを特徴とするプログラムである。
(1)のプログラムによれば、携帯端末を用いた商品の登録を好適に実施することができる。例えば、カゴ抜けが発生した虞がある場合に、必要な情報を操作者等に報知することができる。
【0165】
(2)前記出力手段は、前記振動検出手段で検出した振動に応じて出力内容を異ならせる(例えば、
図7のステップS440、ステップS450、ステップS470、ステップS480を参照)ことを特徴とする(1)に記載のプログラム。
(2)のプログラムによれば、携帯端末を用いた商品の登録を好適に実施することができる。例えば、カゴ抜けが発生の可能性(確度)に応じた好適な情報を操作者に報知することができる。例えば、
図8に示したように、カゴ抜けが発生の可能性が比較的高い場合には操作者にカゴ抜けへの対応を求める情報を報知し(ステップS460)、カゴ抜けが発生の可能性が比較的低い場合には操作者に単に確認をも求める情報を報知するため(ステップS480)、カゴ抜けへの対策を維持しつつ(緩めることなく)、いたずらに操作者に不快な思いをさせないようにすることができる。また、カゴ抜けに対する店員の対応の頻度も効果的に削減することもできる。
【0166】
(3)前記コンピュータを、前記画像取得手段で取得した画像から自情報端末の操作者の振舞いを認識する振舞認識手段(例えば、画像認識機能)として更に機能させ、前記出力手段は、前記振舞認識手段で認識した振舞が所定の振舞(例えば、スキャン動作)である場合(例えば、
図11のステップS402を参照)、商品の購入に関する情報を出力することを特徴とする(1)又は(2)に記載のプログラムである。
(3)のプログラムによれば、携帯端末を用いた商品の登録を好適に実施することができる。例えば、カート70の走行やカート70への人や物の衝突等による振動の影響を無視しつつ、スキャン動作を行うことで商品の登録を偽装するといった悪意のある顧客に有効に対処することができる。
【0167】
(4)前記出力手段は、商品の購入に関する情報として、商品の購入に際し店員の介在が必要である旨の情報(例えば、
図5(A)の小画面SG10)、又は、商品の購入の要否を確認する情報(例えば、
図5(B)の小画面SG20)を出力することを特徴とする(1)~(3)のいずれかに記載のプログラムである。
(4)のプログラムによれば、携帯端末を用いた商品の登録を好適に実施することができる。場面(状況)に応じた情報を出力することができる。
【0168】
(5)前記コンピュータを、前記振動検出手段で検出した振動に基づいて、商品の購入に際し店員の介在が必要であるか否かを判定する店員介在要否判定手段(例えば、
図8のステップS440、ステップS460、ステップS469を参照)として更に機能させることを特徴とする(1)~(4)のいずれかに記載のプログラム。
(5)のプログラムによれば、携帯端末を用いた商品の登録を好適に実施することができる。例えば、カゴ抜けに対する店員の対応の頻度も効果的に削減することもできる。
【0169】
(6)上述した課題を解決するための一態様は、購入する商品の登録に用いる情報端末(例えば、携帯端末60)としてコンピュータを機能させるプログラムであって、前記コンピュータを、画像を取得する画像取得手段、前記画像取得手段で取得した画像内の商品識別情報に基づいて商品を登録する登録手段、自情報端末以外から振動を取得する振動取得手段(例えば、カート側振動検出部から振動値を取得する通信部)、自情報端末の操作者に商品の購入に関する情報を出力可能な出力手段(例えば、表示部、音声出力部、通信部)として機能させ、前記出力手段は、前記振動取得手段で所定の振動が取得され、かつ、当該振動の取得前に前記登録手段で商品が登録されていなかった場合(例えば、
図7のステップS401がNOの場合)、商品の購入に関する情報(例えば、ステップS450、ステップS460、ステップS470、ステップS480を参照)を出力することを特徴とするプログラムである。
(6)のプログラムによれば、(1)のプログラムと同様の効果を得ることができる。
【0170】
(7)上述した課題を解決するための一態様は、購入する商品の登録に用いる情報端末(例えば、携帯端末60)であって、画像を取得する画像取得手段と、前記画像取得手段で取得した画像内の商品識別情報に基づいて商品を登録する登録手段と、自情報端末の振動を検出する振動検出手段と、操作者に商品の購入に関する情報を出力可能な出力手段(例えば、表示部、音声出力部、通信部)とを備え、前記出力手段は、前記振動検出手段で所定値以上の振動が検出され、かつ、当該振動の検出前に前記登録手段で商品が登録されていなかった場合(例えば、
図7のステップS401がNOの場合)、商品の購入に関する情報(例えば、ステップS450、ステップS460、ステップS470、ステップS480を参照)、商品の購入に関する情報を出力することを特徴とする情報端末である。
(7)の情報端末によれば、(1)のプログラムと同様の効果を得ることができる。
【0171】
(8)上述した課題を解決するための一態様は、購入する商品の登録に用いる情報端末(例えば、携帯端末60)を含むシステムであって、画像を取得する画像取得手段、前記画像取得手段で取得した画像内の商品識別情報に基づいて商品を登録する登録手段、自情報端末の振動を検出する振動検出手段、自情報端末の操作者に商品の購入に関する情報を出力可能な出力手段(例えば、表示部、音声出力部、通信部)を備え、前記出力手段は、前記振動検出手段で所定の振動が検出され、かつ、当該振動の検出前に前記登録手段で商品が登録されていなかった場合(例えば、
図7のステップS401がNOの場合)、商品の購入に関する情報(例えば、ステップS450、ステップS460、ステップS470、ステップS480を参照)を出力することを特徴とするシステムである。
(8)のシステムによれば、(1)のプログラムと同様の効果を得ることができる。
【0172】
(9)自情報端末の姿勢を検出する姿勢検出手段(例えば、携帯端末60の振動検出部、カート70側のコネクタ、センサ)と、前記姿勢検出手段で検出した姿勢に応じて前記登録手段での商品の登録を制限する制限手段(例えば、撮像部での撮像を禁止する手段、商品コードの取得を禁止する手段、商品コード等の送信を禁止する手段、取引情報の更新を禁止する手段)とを更に備えることを特徴とする(8)に記載のシステム
(9)のシステムによれば、例えば、携帯端末60が振動を検出する態様の場合において、確実に、カゴ抜けが発生した虞がある場合に必要な情報を操作者に報知することができる。
【0173】
なお、以上に説明した各装置(本部サーバ10、ストアコントローラ30、取引状況管理装置40、精算装置50、携帯端末60、カート70等)の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより上記各装置の処理を行ってもよい。ここで、「記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行する」とは、コンピュータシステムにプログラムをインストールすることを含む。ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、インターネットやWAN、LAN、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。このように、プログラムを記憶した記録媒体は、CD-ROM等の非一過性の記録媒体であってもよい。また、記録媒体には、当該プログラムを配信するために配信サーバからアクセス可能な内部または外部に設けられた記録媒体も含まれる。配信サーバの記録媒体に記憶されるプログラムのコードは、端末装置で実行可能な形式のプログラムのコードと異なるものでもよい。すなわち、配信サーバからダウンロードされて端末装置で実行可能な形でインストールができるものであれば、配信サーバで記憶される形式は問わない。なお、プログラムを複数に分割し、それぞれ異なるタイミングでダウンロードした後に端末装置で合体される構成や、分割されたプログラムのそれぞれを配信する配信サーバが異なっていてもよい。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
【符号の説明】
【0174】
1…販売システム 10…本部サーバ 20…クラウドサーバ 30…ストアコントローラ 40…取引状況管理装置 50…精算装置 60…携帯端末 70…ショッピングカート 90…専用バッグ