(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-12
(45)【発行日】2024-01-22
(54)【発明の名称】プログラム、情報処理装置及び制御方法
(51)【国際特許分類】
H04M 1/72412 20210101AFI20240115BHJP
【FI】
H04M1/72412
(21)【出願番号】P 2022082315
(22)【出願日】2022-05-19
(62)【分割の表示】P 2017099016の分割
【原出願日】2017-05-18
【審査請求日】2022-06-17
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100090273
【氏名又は名称】國分 孝悦
(72)【発明者】
【氏名】徳元 宏和
【審査官】大橋 達也
(56)【参考文献】
【文献】特開2017-016309(JP,A)
【文献】特開2016-170702(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04M 1/00-11/00
H04W 4/00-99/00
H04N 1/00
G06F 3/12
(57)【特許請求の範囲】
【請求項1】
外部装置が送信するパケットを受信する情報処理装置のコンピュータに制御方法を実行させるプログラムであって、
前記制御方法は、
前記情報処理装置が前記外部装置から第一の距離で受信したパケットの第一電波強度を取得する第一取得工程と、
前記情報処理装置が前記外部装置から第二の距離で受信したパケットの第二電波強度を取得する第二取得工程と、
前記第一電波強度と前記第二電波強度とに基づいて、距離と電波強度との関係式
である一次式を導出する導出工程と、
前記
一次式に基づいて、所定の近接条件を満たすかを判定するために用いる閾値を異ならせる制御工程と、
前記一次式の傾きが所定の閾値以上である場合、第1の基準距離と前記一次式に基づき得られた第1データと、前記情報処理装置が外部デバイスから新たに受信したパケットを搬送する電波の受信強度とに基づき前記所定の近接条件を満たすかどうかを判定する一方、前記一次式の傾きが所定の閾値未満である場合、前記第1の基準距離と比較して距離が短い第2の基準距離と前記一次式に基づき得られた第2データと、前記情報処理装置が外部デバイスから新たに受信したパケットを搬送する電波の受信強度とに基づき前記所定の近接条件を満たすかどうかを判定する判定工程と、
を有することを特徴とするプログラム。
【請求項2】
前記情報処理装置が受信するパケットは、Bluetooth Low Energy規格に基づくパケットであることを特徴とする請求項
1に記載のプログラム。
【請求項3】
前記閾値は電波強度であることを特徴とする請求項1
または2に記載のプログラム。
【請求項4】
前記閾値はRSSI値であることを特徴とする請求項1乃至
3のいずれか1項に記載のプログラム。
【請求項5】
前記制御方法は前記所定の近接条件を満たすと判定すると前記外部装置にログインするためのログイン要求を送信する送信工程をさらに有することを特徴とする請求項1乃至
4のいずれか1項に記載のプログラム。
【請求項6】
前記制御方法は前記外部装置から前記第一の距離に前記情報処理装置を近づけることをユーザに促す第一の画面と、前記外部装置から前記第二の距離に前記情報処理装置を近づけることをユーザに促す第二の画面とを表示する表示工程を更に有することを特徴とする請求項1乃至
5のいずれか1項に記載のプログラム。
【請求項7】
前記外部装置はプリンタであることを特徴とする請求項1乃至
6のいずれか1項に記載のプログラム。
【請求項8】
前記プログラムは、前記外部装置に対して印刷機能又はスキャン機能の実行を指示するアプリケーションであることを特徴とする請求項1乃至
7のいずれか1項に記載のプログラム。
【請求項9】
外部装置が送信するパケットを受信する情報処理装置であって、
前記情報処理装置が前記外部装置から第一の距離で受信したパケットの第一電波強度を取得する第一取得手段と、
前記情報処理装置が前記外部装置から第二の距離で受信したパケットの第二電波強度を取得する第二取得手段と、
前記第一電波強度と前記第二電波強度とに基づいて、距離と電波強度との関係式
である一次式を導出する導出手段と、
前記
一次式に基づいて、所定の近接条件を満たすかを判定するために用いる閾値を異ならせる制御手段と、
前記一次式の傾きが所定の閾値以上である場合、第1の基準距離と前記一次式に基づき得られた第1データと、前記情報処理装置が外部デバイスから新たに受信したパケットを搬送する電波の受信強度とに基づき前記所定の近接条件を満たすかどうかを判定する一方、前記一次式の傾きが所定の閾値未満である場合、前記第1の基準距離と比較して距離が短い第2の基準距離と前記一次式に基づき得られた第2データと、前記情報処理装置が外部デバイスから新たに受信したパケットを搬送する電波の受信強度とに基づき前記所定の近接条件を満たすかどうかを判定する判定手段と、
を有することを特徴とする情報処理装置。
【請求項10】
外部装置が送信するパケットを受信する情報処理装置が実行する制御方法であって、
前記制御方法は、
前記情報処理装置が前記外部装置から第一の距離で受信したパケットの第一電波強度を取得する第一取得工程と、
前記情報処理装置が前記外部装置から第二の距離で受信したパケットの第二電波強度を取得する第二取得工程と、
前記第一電波強度と前記第二電波強度とに基づいて、距離と電波強度との関係式
である一次式を導出する導出工程と、
前記
一次式に基づいて、所定の近接条件を満たすかを判定するために用いる閾値を異ならせる制御工程と、
前記一次式の傾きが所定の閾値以上である場合、第1の基準距離と前記一次式に基づき得られた第1データと、前記情報処理装置が外部デバイスから新たに受信したパケットを搬送する電波の受信強度とに基づき前記所定の近接条件を満たすかどうかを判定する一方、前記一次式の傾きが所定の閾値未満である場合、前記第1の基準距離と比較して距離が短い第2の基準距離と前記一次式に基づき得られた第2データと、前記情報処理装置が外部デバイスから新たに受信したパケットを搬送する電波の受信強度とに基づき前記所定の近接条件を満たすかどうかを判定する判定工程と、
を有することを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム、情報処理装置及び制御方法に関する。
【背景技術】
【0002】
近年、複合機やプリンタ等の情報処理装置において無線LANやBluetooth LowEnergy(BLE)等、無線機能を備えるものが増えている。
ユーザは携帯端末を用い情報処理装置との間で無線通信を行い、通信情報に含まれる情報を基に携帯端末と情報処理装置とのペアリングを行った後、ログインや印刷といった各種処理を行う。
また、無線通信における電波強度は一般的に距離の二乗に反比例して減衰する性質を持っているため、携帯端末が受信する電波強度から携帯端末と情報処理装置との距離を推定することができる。セキュリティの観点から、携帯端末が受信する情報処理装置の電波強度に応じて近接判定を行い、近接と判定された結果に応じて、情報処理装置の処理を実行可能と制御する技術が存在する。このような技術では、例えば、携帯端末から情報処理装置に特定のユーザでログインする処理や、携帯端末から画像形成装置に情報を流し込む等の処理は、近接判定をした後に実行している。
携帯端末にて、情報処理装置との距離を近接にあるかどうかを判定する先行技術として、例えば、特許文献1がある。特許文献1では、無線通信可能な情報処理装置との近接を正確に判定するため、情報処理装置と一定の距離をおいた状態で近接判定に用いる閾値を生成・保持し、この閾値を利用して近接判定する方式が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
上述した技術により、携帯端末と情報処理装置とが一定の距離内にあることを近接判定することができる。
しかし、電波強度の距離による減衰率は、計測環境によって大きく異なるため、事前に電波を計測した距離と異なる距離で正確に近接判定することは、難しいという課題がある。
【課題を解決するための手段】
【0005】
本発明は、外部装置が送信するパケットを受信する情報処理装置のコンピュータに制御方法を実行させるプログラムであって、前記制御方法は、前記情報処理装置が前記外部装置から第一の距離で受信したパケットの第一電波強度を取得する第一取得工程と、前記情報処理装置が前記外部装置から第二の距離で受信したパケットの第二電波強度を取得する第二取得工程と、前記第一電波強度と前記第二電波強度とに基づいて、距離と電波強度との関係式である一次式を導出する導出工程と、前記一次式に基づいて、所定の近接条件を満たすかを判定するために用いる閾値を異ならせる制御工程と、前記一次式の傾きが所定の閾値以上である場合、第1の基準距離と前記一次式に基づき得られた第1データと、前記情報処理装置が外部デバイスから新たに受信したパケットを搬送する電波の受信強度とに基づき前記所定の近接条件を満たすかどうかを判定する一方、前記一次式の傾きが所定の閾値未満である場合、前記第1の基準距離と比較して距離が短い第2の基準距離と前記一次式に基づき得られた第2データと、前記情報処理装置が外部デバイスから新たに受信したパケットを搬送する電波の受信強度とに基づき前記所定の近接条件を満たすかどうかを判定する判定工程と、を有することを特徴とするプログラムである。
【発明の効果】
【0006】
本発明によれば、より正確に近接判定することができる。
【図面の簡単な説明】
【0007】
【
図1】通信システムのシステム構成の概略を示す図である。
【
図2】通信システムに含まれる装置のハードウェア構成等の一例を示す図である。
【
図3】通信システムに含まれる装置のソフトウェア構成等の一例を示す図である。
【
図4】携帯端末のログイン機能に係る画面を示す図である。
【
図5】携帯端末の感度調整機能の画面を示す図である。
【
図6】感度調整を行う情報処理の一例を示すフローチャートである。
【
図8】TouchLikeの閾値算出の一例を示す図である。
【
図9】ログインを行う情報処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0008】
以下、本発明の実施形態について図面に基づいて説明する。
【0009】
<実施形態1>
(システム構成)
図1は、通信システムのシステム構成の概略を示す図である。本実施形態における環境には、1台以上のMFPと複数の携帯端末とが存在する。本実施形態の通信システムは、例えば、一人一台携帯端末を所持し、普段から持ち歩くようなオフィス環境で実装されることを想定している。MFPはオフィス環境に備え付けて設置される。
図1のMFP(Multi Function Peripheral)101と携帯端末102、携帯端末103とは通信システムを構成する装置の一例である。携帯端末102と携帯端末103とはそれぞれ別のユーザによって所有される。MFP101は、ネットワークLAN(Local Area Network)104に接続されており、LAN104に接続された他の端末と相互に通信を行うことができる。同様に、携帯端末102や、携帯端末103は、無線ルータ105を介してLAN104に接続可能で、LAN104に接続された他の端末と相互に通信を行うことができる。また、MFP101や携帯端末102や、携帯端末103はBluetooth(登録商標)通信機能を備えており、Bluetoothの電波の届く範囲において、相互に接続して通信を行うことができる。
図1の通信システムの例では、MFPが1台しか示されていないが、複数のMFPが通信システムに含まれていてもよい。同様に、
図1の通信システムの例では、携帯端末が2台しか示されていないが、2台以上の携帯端末が含まれていてもよい。携帯端末102は、例えば、スマートフォンやタブレットPC等、ユーザが持ち運ぶことができるハンドヘルドコンピュータである。MFPは、情報処理装置の一例である。なお、本実施形態の携帯端末や画像形成装置は、これに限定されるものではない。例えば、携帯端末はスマートウォッチ等に代表されるウェアラブル端末等であってもよい。また、例えば情報処理装置は、携帯端末とBluetooth等の無線通信により通信を行うことができるデバイスであればよい。例えば、PC、カメラ、プロジェクタ、ヘッドフォン、冷蔵庫、テレビ、音声アシスタント端末等のデバイスであってもよい。また、2つの携帯端末間で近接判定を行う場合に適用することもできる。このように、本実施形態は、Bluetoth等の無線通信によりデバイス間の近接判定を行う場合に適用することができる。
【0010】
(ハードウェア構成)
図2は、通信システムに含まれる装置のハードウェア構成の一例を示す図である。
MFP101のハードウェア構成として、CPU(Central Processing Unit)201は、MFP101全体の動作を制御する。CPU201は、ROM(Read Only Memory)202に記憶された制御プログラムを読み出して読取制御や送信制御等の各種制御を行う。RAM(Random Access Memory)203は、CPU201が各種プログラムを実行するためのワークエリア等として使用する揮発性のメモリである。HDD(Hard Disk Drive)204は、画像データや各種プログラムを記憶する。操作部205は、ユーザの指で操作可能なタッチパネルとして動作するディスプレイを備える。プリンタ206は、内部バスを介して転送された画像データを用紙に印刷する。スキャナ207は、原稿上の画像を読み取って画像データを生成する。ICカードリーダ208は、ユーザ認証に使用するICカードの読み取りを行う。BluetoothI/F209は、Bluetooth規格で無線通信を行うインタフェースであり、BluetoothI/Fを持つ他の機器と相互に通信を行う。本実施形態では携帯端末とMFPとがBluetooth規格により相互に通信を行う。ネットワークI/F210は、ネットワークに接続するためのNIC(Network Interface Card)である。201~210のハードウェアは、内部バスによって接続され相互にデータ交換を行うことができる。CPU201がROM202又はHDD204に記憶されたプログラムに基づき処理を実行することによって後述する
図3(a)のMFP101のソフトウェア構成等が実現される。
【0011】
続いて、携帯端末102のハードウェア構成について説明する。CPU211は、携帯端末全体の動作を制御する。RAM212は、CPU211が各種プログラムを実行するためのワークエリア等として使用する揮発性のメモリである。フラッシュメモリ213は、各種プログラムやデータを記憶する不揮発性のメモリである。操作部214は、ユーザの指で操作可能なタッチパネルとして動作するディスプレイを備える。BluetoothI/F215は、Bluetoothで通信するためのインタフェースであり、Bluetoothインタフェースを持つ他の機器と相互に通信を行う。本実施形態では携帯端末は、MFPとBluetoothにより相互に通信を行う。無線ネットワークI/F216は、無線ルータ105と接続してネットワーク通信可能な無線対応のNICである。スピーカー217は、音の電子信号を音に変換する装置である。マイク218は、音を検知して電子信号に変換する。カメラ219は、静止画や動画を撮影し、電子データに変換する。GPS220は、Global Positioning Systemの受信機である。
本実施形態の携帯端末102では、CPU211がフラッシュメモリ213に記憶されたプログラムを、メモリ(RAM212)を用いて処理することによって、後述する
図3(b)の携帯端末102のソフトウェア構成等が実現される。同様に、CPU211がフラッシュメモリ213に記憶されたプログラムを、メモリ(RAM212)を用いて処理することによって、後述する
図6、
図9に示すフローチャートの処理が実現されるものとする。
【0012】
(ソフトウェア構成)
図3は、通信システムに含まれる装置のソフトウェア構成等の一例を示す図である。
図3(a)は、MFP101のソフトウェア構成及びソフトウェアが管理するデータ領域の一例を示す図である。ドキュメント304、プリントジョブ305、カウンタ306、ユーザアカウント313は、ソフトウェアがRAM203やHDD204に記録して管理するデータのデータ領域を示す。OS(Operating System)301は、オペレーティングシステムである。OS301は、各種ハードウェアを制御するためのデバイスドライバ群を備えており、OS上で動作するアプリケーションに対してハードウェアを利用するためのAPIを提供する。例えば、Bluetooth制御部302は、BluetoothI/F209を制御するためのデバイスドライバである。ネットワーク制御部303は、ネットワークI/F210を制御するためのデバイスドライバである。その他に
図3(a)に示していないが、プリンタ206を制御するプリンタモジュール、スキャナ207を制御するスキャナモジュールもOS301内に存在する。また、OS301は、ドキュメント304、プリントジョブ305、カウンタ306のデータを読み書きするためのAPIをアプリケーションに提供する。
【0013】
コピー308、プリント309、送信310は、OS301上で動作するアプリケーションであり、操作部205に各種機能を提供するためのユーザインタフェースを表示する。例えば、コピー308は、OS301を介して、スキャナ207とプリンタ206とを制御して、コピーを実行する。プリント309は、ドキュメント304に格納されたドキュメントデータやプリントジョブ305に留め置かれたプリントジョブをプリントするための機能を提供する。コピーやプリントの出力は、OS301のAPIを介して実行され、OS301が印刷枚数をカウンタ306に記録する。送信310は、スキャナ207から取得したドキュメントデータを外部に送信する機能を提供する。メニュー307は、操作部205からアプリケーション(例えば、コピー、プリント、送信)を選択するためのメニューを表示させるモジュールである。リモートUI311は、携帯端末のウェブブラウザからHTTPプロトコルでMFP101にアクセスされた場合にHTMLで記述されたユーザインタフェースを提供するモジュールである。リモートUI311は、MFPの設定を管理するユーザインタフェースや、ドキュメント304に格納されたドキュメントデータをプリントするためのユーザインタフェースを提供する。ログインサービス312は、MFP利用時のためのログイン機能を提供するモジュールである。ユーザアカウント313は、各ユーザのアカウントIDやパスワードを管理・保存するデータベースであり、RAM203やHDD204に記録される。ログインサービス312は、ユーザアカウント313を利用して、MFP101に対するログインサービスを外部に提供する。
ログインサービス312は、MFP101の操作部205を介して入力されたユーザ情報(ユーザID及びパスワード)に基づいてユーザのログインを許可するか否かを決定する。このようなMFP101では、ユーザのログインが許可されるとMFP101が備えるコピーやスキャン等の各機能が利用できる画面を表示し、操作部205を介して各機能を利用できる状態となる。一方、ユーザのログインが許可されない場合、又はユーザがログインしていない場合は、各機能の利用が制限された状態となる。ユーザがログインしていない場合、MFP101は、操作部205にログインを受け付けるためのログイン画面を表示するものとする。また、ログインサービス312は、外部装置からMFP101にログインするためのログインサービスも提供する。
【0014】
図3(b)は、携帯端末102のソフトウェア構成及びソフトウェアが管理するデータ領域の一例を示す図である。認証情報319は、ソフトウェアがフラッシュメモリ213に記録して管理するデータのデータ領域を示す。OS314は、携帯端末102の全体の動作を制御するオペレーティングシステムである。OS314は、各種ハードウェアを制御するためのデバイスドライバ群を備えており、OS314上で動作するアプリケーションに対して各種ハードウェアを利用するためのAPIを提供する。デバイスドライバ群として本実施形態ではBluetooth制御部316、無線ネットワーク制御部317が存在する。Bluetooth制御部316は、BluetoothI/F215を制御するためのデバイスドライバである。無線ネットワーク制御部317は、無線ネットワークI/F216を制御するためのデバイスドライバである。携帯端末102には種々のアプリケーションをインストールして、OS314上で稼働させることが可能である。本実施形態では予めアプリケーション318がインストールされているものとする。アプリケーション318は、以下のような認証機能を備える。
【0015】
・ログイン要求の際に使用する、ユーザ認証情報(ユーザ名・パスワード)を予め設定する。
本機能は、画面表示部322にて画面が用意され、ユーザはこの画面に即してユーザ認証情報を入力する。入力されたユーザ認証情報はフラッシュメモリ213にある認証情報319に保存される。
・MFP101へログインするために携帯端末102を近づけることを促す画面を表示する。
画面表示中には、Bluetooth制御部316は、Bluetoothの電波受信時に電波強度を測定する。アプリケーション318の近接判定部323は、携帯端末102がMFP101と近接しているかどうかを判定する。
・近接している場合は、MFP101と通信して、ログイン要求を行う。
認証制御部321にて、ログイン要求の送信を制御する。無線ネットワーク制御部317は、MFP101と無線通信しログイン要求を送信する。例えば、ログイン要求は、MFP101との間で確立したBluetooth LowEnergy(BLE)のGATT(Generic Attributes)通信によりMFP101に送信される。ログイン要求には、フラッシュメモリ213にある認証情報319(ユーザ名及びパスワード)が含まれる。
【0016】
ログイン要求を受信したMFP101は、携帯端末102からのログイン要求に従って、ユーザのログインを許可するか否かを判断する。ログインサービス312は、受信したログイン要求に含まれるユーザの認証情報がユーザアカウント313に含まれるかどうかを判定し、含まれる場合はログインを許可する。
ログインを許可する場合、MFP101は、認証したユーザの権限に従って、MFP101が備えるコピーやスキャン等の各機能が利用できる画面を操作部205に表示し、操作部205を介して各機能を利用できる状態に遷移する。したがって、ユーザは、携帯端末102をMFP101に近づけるだけで、MFP101の操作部205を介してMFP101が備える各操作を利用できる状態に遷移させることができる。以下、MFP101にユーザをログインさせ、操作部205を介してMFP101が備える各機能を利用できる状態に遷移させることを複合機パネルログインと呼ぶ。
【0017】
(ログイン機能の画面)
図4は、携帯端末102のログイン機能に係る画面を示す図である。本実施形態の携帯端末102にインストールされているアプリケーション318は、アプリケーション起動直後に
図4(a)に示すトップメニュー画面400を携帯端末102の操作部214に表示する。
アプリケーション318は、トップメニュー画面400における領域401にアプリケーション318が選択しているMFP101を表示する。
トップメニュー画面400における複合機パネルログインボタン402はMFP101へログインする機能を提供するためのボタンである。複合機パネルログインボタン402が選択されると、アプリケーション318は、操作部214に
図4(b)に示す複合機パネルログイン画面(ログイン画面410)を表示する。
トップメニュー画面におけるプリンタ登録機能ボタン403は新規にプリンタを登録する機能を提供するためのボタンである。プリンタ登録機能ボタン403が選択されると、アプリケーション318は、操作部214に
図4(c)に示すプリンタ選択画面420を表示する。
図4(b)は、複合機パネルログイン機能を表示するログイン画面410である。本画面に遷移した時点で、アプリケーション318は、Bluetooth制御部316からBluetooth通信によってMFP101から受信したBluetoothの電波強度とアドバタイジングパケットの情報とを取得する。受信したBluetoothの電波強度はRSSI(Recieved Signal Strength Indication)で表記され、単位はdbmである。
アドバタイジングパケットは以下のようなデータがある。
・RSSI値
受信したBluetooth電波の電波強度を示し、単位はdbmで表示する。例えば、-40dbmである。
・Local Name
デバイスの名称等。例えば、MFP CXXXである。
・Manufacturer Specific Data
企業の識別子及び任意のデータが格納される。
・Service UUIDs
デバイスの機能を表すUUIDである。
【0018】
アプリケーション318は、受信したBluetooth電波のアドバタイジングパケットの情報に含まれるデバイスの名称及び企業の識別子により、アプリケーション318が通信制御をサポートしているMFPかどうかを判定する。
サポートしているMFPである場合は、アプリケーション318は、受信したBluetooth電波に含まれるアドバタイジングパケットの情報を基に電波強度を示すインジケータ及びプリンタ情報として情報411を表示する。
ユーザは、
図4(b)の画面の指示に従って、ログインしたいプリンタ(例えば、MFP101)に携帯端末102を近づける。
アプリケーション318は、
図4(b)の画面表示中は一定の間隔にてBluetooth制御部316から受信したBluetoothの電波強度を取得し、近接条件を満たすか否かを判定する。近接条件を満たした場合、アプリケーション318は、近接条件を満たしたMFPに対して、BLE通信を確立し、ログイン要求を送信する。また、一定時間以上、近接条件を満たさない場合は、アプリケーション318は、操作部214の画面を
図4(d)の画面に遷移させる。
また、アプリケーション318は、感度調整ボタン412がユーザによって選択されると、操作部214の画面を後述する
図5(a)に示す近接感度調整画面500に遷移させる。
【0019】
図4(c)は、プリンタ選択画面420であり、現在選択されているMFP101と登録済みのLBP123とが表示されている。ユーザは選択画面を介して
図4(a)のドキュメント印刷機能や、スキャン機能を実行する場合に、連携先となるMFPを選択することができる。連携先として選択されたMFPは、
図4(a)の領域401に表示される。また、ユーザは、プリンタ選択画面420を介して、新たに連携先として登録するプリンタを検索することができる。プリンタ選択画面420では、プリンタ検索機能として、4つの方法を例示している。
一つ目は自動検索(Wi-Fi(登録商標))である。自動検索(Wi-Fi)ボタン421の選択によって、アプリケーション318は、無線ネットワーク制御部317に対してブロードキャストの実行を依頼し、検出されたプリンタを操作部214に表示する。
二つ目は手動検索(Wi-Fi)である。手動検索(Wi-Fi)ボタン422の選択によって、アプリケーション318は、無線ネットワーク制御部317に対してユーザが入力したIPアドレスのプリンタが存在するかどうかを検出する。アプリケーション318は、検出されたプリンタを操作部214に表示する。
三つ目はQRコード(登録商標)である。QRコードボタン423の選択によって、アプリケーション318は、無線ネットワーク制御部317に対してQRコードにて入力したIPアドレスのプリンタが存在するかどうかを検出する。アプリケーション318は、検出されたプリンタを操作部214に表示する。
四つ目は近くのプリンタである。近くのプリンタボタン424の選択によって、アプリケーション318は、Bluetooth等の近接無線通信により、MFP101の周囲にプリンタが存在するかを検出する。近くのプリンタボタンが選択されると、アプリケーション318は、Bluetooth制御部316に対してBluetooth通信電波を受信する。
【0020】
図4(d)は、Bluetooth通信によって近くのプリンタを検索している画面である。アプリケーション318は、Bluetooth制御部316から電波受信を待機している状態で検索結果画面430を表示する。ユーザは、
図4(d)に表示されているMFPを示す情報(例えば、MFP101や、MFP DEF)を選択することにより、連携先のMFPを新規に登録することができる。また、ユーザが、感度調整ボタン431を選択すると、アプリケーション318は、操作部214の画面を近接感度調整画面500に遷移させる。アプリケーション318は、近接判定に用いる閾値の導出に使用する測定値を、感度調整機能によって取得し、取得した測定値に基づいて近接判定に関する閾値を調整する。
【0021】
(感度調整画面)
図5は、携帯端末102の感度調整機能の画面を示す図である。本実施形態の携帯端末102にインストールされているアプリケーション318は、感度調整機能を有する。感度調整ボタン412又は431が選択された場合、アプリケーション318は、
図5に示す近接感度調整画面500を携帯端末102の操作部214に表示する。
近接感度調整画面500には、現在選択されているプリンタであるMFP101示す情報と、携帯端末をMFP101へおよそ30cm/12インチ離した状態で次へボタン502を選択(又はタップ)することをユーザに促す情報と、が含まれる。ユーザが次へボタン502を選択したタイミングで、アプリケーション318は、以下の処理を行う。即ちアプリケーション318は、Bluetooth制御部316から受信したBluetoothの電波強度を取得し、その値を、MFP101から30cm程度の距離における電波強度の測定値としてフラッシュメモリ213へ保存する。なお、ここでの測定値は、MFP101から30cm程度の距離での近接判定に用いる閾値として使用されてもよい。MFP101から30cm程度の距離を以下、IMMIDIATEという。次へボタン502が選択されると、アプリケーション318は、操作部214の画面をタッチ感度調整画面510に遷移させる。
タッチ感度調整画面510には、現在選択されているプリンタであるMFP101を示す情報と、携帯端末をMFP101へ接触した状態でOKボタン512を選択(又はタップ)することをユーザに促す情報と、が含まれる。ユーザがOKボタン512を選択したタイミングで、アプリケーション318は、以下の処理を行う。即ちアプリケーション318は、Bluetooth制御部316から受信したBluetoothの電波強度を取得し、その値を、MFP101から0cmの距離における電波強度の測定値してフラッシュメモリ213へ保存する。MFP101から0cmの距離を以下、TouchLikeという。
【0022】
(携帯端末:感度調整画面から感度調整を行う情報処理を示すフローチャート)
図6は、携帯端末102が、MFP101から発信されるBluetooth電波を受信し、携帯端末102にて感度調整を行う情報処理の一例を示すフローチャートである。
アプリケーション318は、ユーザによって携帯端末102から感度調整ボタン412又は431が選択されると、本フローチャートの処理を開始する。感度調整ボタン412は、複合機パネルログインのログイン画面410から選択可能である。また、感度調整ボタン431は、近くのプリンタ探索機能の検索結果画面430から選択可能である。
S800にて、アプリケーション318は、近接感度調整画面500を操作部214に表示する。S800の処理は、MFPとの距離が第1の距離における無線通信に関する電波強度を取得するための第1の画面を操作部に表示させる第1の表示の処理の一例である。
S801にて、アプリケーション318は、ユーザが携帯端末102と感度調整の対象となるMFP(例えば、MFP101)とを30cm程度離した状態で、次へボタン502を選択するよう促すメッセージ501を表示する。以降、説明のため、感度調整の対象となるMFPがMFP101の場合を例に説明する。
S802にて、アプリケーション318は、ユーザが次へボタン502を選択したか否かを判定する。アプリケーション318は、ユーザが次へボタン502を選択したと判定すると(S802においてYES)、S803に進み、ユーザが次へボタン502を選択していないと判定すると(S802においてNO)、S801に戻る。
S803にて、アプリケーション318は、Bluetooth制御部302と協働して連携先となるMFP101から送信されたBluetoothのアドバタイジングパケットの電波強度を取得する。なお、ここでは、次へボタン502が選択された後に受信した複数のアドバタイジングパケット(例えば、30回分)の電波強度を取得し、中央値や平均値により電波強度を導出することもできる。例えば、CPU211は、複数のアドバタイジングパケットの受信強度を格納した配列をソートし、当該配列の中央部分(例えば、下1割と上1割を除いた部分)をサンプルとして抽出する。CPU211は、抽出されたサンプルの平均値を閾値とすることで、周辺の無線環境等に起因する外乱の影響を避けることができる。
S804にて、アプリケーション318は、取得した電波強度を距離30cm相当であるIMMIDIATEにおける電波強度の測定値として、不揮発のフラッシュメモリ213に保存する。
図7(a)は、各距離の電波強度の測定値及び推定値を示す図である。S804にて保存する閾値は、距離30cm相当での測定値であり、RSSI測定値601、及びRSSI閾値611の値である。アプリケーション318は、例えば、MFP101の値として-24dbm、MFP110の値として-51dbmをRSSI測定値601、及びRSSI閾値611に保存する。
【0023】
S805にて、アプリケーション318は、感度調整の対象となるMFP101が、TouchLikeの判定をトリガーとして実行する連携機能を有しているかどうかを判定する。TouchLike判定でMFPと携帯端末が連携して提供する機能としては、例えば前述のパネルログイン機能等が該当する。また、MFPと携帯端末とが近接したことをトリガーとして印刷を行わせるタッチプリント機能等やMFPと携帯端末とが近接したことをトリガーとして原稿を読み取って外部や携帯端末に送信するタッチスキャン機能等が該当する。MFP101が有する能力は、事前に行われた連携先のMFPの登録処理にて取得されているものとする。
アプリケーション318は、感度調整の対象となるMFP101がTouchLike判定による提供機能を有していると判定した場合(S805においてYES)、S806へ進む。一方、アプリケーション318は、TouchLike判定による提供機能を有していないと判定した場合(S805においてNO)、
図6のフローチャートの処理を終了する。S805の処理により、TouchLike判定をトリガーとする機能を有さない装置に対する感度調整の場合は、ユーザに、S806以降の処理に伴う操作を行わせることなく感度調整を終了することができる。
S806にて、アプリケーション318は、操作部214の画面をタッチ感度調整画面510に遷移させる。そして、アプリケーション318は、タッチ感度調整画面510にユーザが携帯端末102とMFP101とを接触させた(0cm程度離した)状態で、OKボタン512を選択するよう促すメッセージ511を表示する。S806の処理は、S806の処理は、MFPとの距離が第2の距離における無線通信に関する電波強度を取得するための第2の画面を操作部に表示させる第1の表示の処理の一例である。
S807にて、アプリケーション318は、ユーザが、OKボタン512を選択したか否かを判定する。アプリケーション318は、ユーザが、OKボタン512を選択したと判定すると(S807においてYES)、S808に進み、OKボタン512を選択していないと判定すると(S8076においてNO)、S806に戻る。
S808にて、アプリケーション318は、Bluetooth制御部302からBluetooth I/FにてBluetooth電波強度を取得する。
S809にて、アプリケーション318は、取得した電波強度を距離0cm相当の計測値として、不揮発のフラッシュメモリ213に保存する。
S809にて保存する測定値は、距離0cm相当での測定値であり、
図7(a)のRSSI測定値602の値である。なお、S8804の処理と同様に、複数のアドバタイジングパケットからサンプルを抽出し、当該サンプルの平均値を保存するようにすることもできる。アプリケーション318は、例えば、MFP101の値として-18dbm、MFP110の値として-12dbmを保存する。
【0024】
S810にて、アプリケーション318は、0cmの距離における電波強度と30cmの距離における電波強度との2点を結び、直線の傾きと切片とを算出する。
図8は、0cmと30cmとの計測によるTouchLikeの閾値算出を示す図である。無線通信における電波強度は一般的に距離の二乗に反比例して減衰する性質を持つため、横軸を距離の二乗でプロットし(単位はm)、縦軸を電波強度(単位はdbm)としている。0cmの計測結果である四角印と、30cmの計測結果である丸印と、を結ぶことによって、直線701、直線702のように、アプリケーション318は、MFPごとに傾きと切片とを算出することができる。
S811にて、アプリケーション318は、算出した直線の傾きが、所定の閾値以上かどうかを判定する。アプリケーション318は、算出した直線の傾きが所定の閾値以上と判定した場合(S811においてYES)、S812へ進み、所定の閾値未満の場合(S811においてNO)、S813へ進む。所定の閾値は、例えば、アプリケーション318の内部に固定の値として保持されている。例えば、所定の閾値の傾きは1である。例えば、
図8の例では、アプリケーション318は、MFP101の直線701の傾きは所定の閾値未満と判定し、MFP110の直線702の傾きは所定の閾値以上と判定する。
【0025】
S812にて、アプリケーション318は、算出した直線から、距離が10cmにおける電波強度がいくつになるかを算出する。例として、MFP110の直線702は所定の閾値以上の傾きのため、TouchLikeの許容値として、アプリケーション318は、距離を10cm程度まではTouchLike判定とみなすよう10cmでの電波強度として三角印の値である-35dbmを算出する。傾きが所定の閾値より大きい場合は、距離による電波強度のばらつきも大きいため、ある程度許容範囲を大きくとらないと正確な近接判定が難しくなるためである。これによって、ユーザは携帯端末102をMFP110に近づけると、電波強度の受信が多少ばらついていたとしても、TouchLike判定の精度が向上し、ログインできなくなるケースを減らすことができる。例えば、アプリケーション318は、算出した-35dbmを不揮発のフラッシュメモリ213に保存されている
図7のMFP110のRSSI推定値604に保存する。
S813にて、アプリケーション318は、算出した直線から、距離が5cmにおける電波強度がいくつになるかを算出する。例として、MFP101の直線701は所定の閾値未満の傾きのため、TouchLikeの許容値として、アプリケーション318は、距離を5cm程度まではTouchLike判定とみなすよう5cmでの電波強度として三角印の値である-21dbmを算出する。傾きが所定の閾値より小さい場合は、距離による電波強度のばらつきが小さいため、10cmを許容範囲とするとそれ以上離れた距離でもログインできる可能性が、傾きの高い場合に比べて、高くなる。離れた状態でのログインはセキュリティ上リスクがあるためそれを抑制するため許容値となる距離を小さくしている。例えば、アプリケーション318は、算出した-21dbmを不揮発のフラッシュメモリ213に保存されている
図7のMFP101のRSSI推定値603に保存する。
S814にて、アプリケーション318は、算出した電波強度をTouchLikeの判定に使用する閾値として、不揮発のフラッシュメモリ213に保存する。従っては、アプリケーション318は、傾きが所定の閾値より小さいMFP101は距離5cm相当の条件で算出した算出値(例えば、-21dbm)がTouchlike判定用の閾値として記憶する。その一方、傾きが所定の閾値より大きいMFP110の場合、アプリケーション318は、距離10cm相当の条件で算出した算出値(例えば、-35dbm)がTouchlike判定用の閾値として記憶する。S812、S813、S814の処理は、MFPとの距離が異なる位置において取得された無線通信に関する電波強度に基づいて近接判定の閾値を決定する処理の一例である。
なお、S811乃至S813の処理では、Touchlikeの判定用の閾値を算出するための条件(パラメータ)を異ならせることで、Touchlikeの判定用の閾値を異ならせる場合を例示したがこれに限定されるものではない。例えば、傾きによらず、5±Δx[cm]の条件(例えば、Δxは2cm)と、算出した一次式とに基づいて、Touchlike判定と見なす電波強度の範囲を算出するようにしてもよい。
【0026】
(携帯端末:ログイン画面からMFPにログインを行う情報処理を示すフローチャート)
図9は、携帯端末102が、MFP101に近づいてログインを行う情報処理の一例を示すフローチャートである。
S900にて、アプリケーション318は、ログイン画面410を操作部214に表示する。
S901にて、アプリケーション318は、Bluetooth制御部302からBluetooth電波強度を取得する。アプリケーション318は、ログイン画面410を操作部214に表示している間は、一定の間隔にて定期的にBluetooth制御部316から受信したBluetoothの電波強度を取得する。そして、アプリケーション318は、複数回取得した電波強度の平均値をとって、受信したBluetoothの電波強度とする。S901の処理は、MFPとの無線通信に関する電波強度を取得する処理の一例である。
S902にて、アプリケーション318は、フラッシュメモリ213内の閾値テーブル610から、ログイン判定機能に用いるTouchLike閾値を読み取り、これを判定閾値とする。ここで、アプリケーション318は、提供する機能ごとに
図7(b)に示すようなテーブルを保持し、閾値を保持しているものとする。即ち、アプリケーション318は、提供する機能ごとに、異なる距離で取得された電波強度に基づいて近接判定の閾値を決定し、保持する。提供する機能によって、TouchLikeやIMMIDIATE、NEARといった判定する距離も変わり、アプリケーション318は、機能に応じた閾値をフラッシュメモリ213内のテーブルから選択することができる。つまり、アプリケーション318は、提供する機能に応じて、保持されている閾値を取得し、判定閾値とする。
S903にて、アプリケーション318は、読み込んだ判定閾値と取得した電波強度とを比較する。
【0027】
S904にて、アプリケーション318は、判定閾値と受信した電波強度とを比較した結果、電波強度が判定閾値より大きいか否かを判定する。アプリケーション318は、電波強度が判定閾値より大きいと判定した場合(S904においてYES)、S906に進み、電波強度が判定閾値以下の場合(S904においてNO)、S905に進む。S904の処理は、近接判定の閾値を用いて携帯端末とMFPとが近接しているか判定を行う処理の一例である。
S905にて、アプリケーション318は、近接判定条件を満たさない状態が一定時間経過したかどうかを判定する。一定時間の値はフラッシュメモリ213内に保持されているものとする。アプリケーション318は、近接判定条件を満たさない状態を一定時間経過したと判定した場合(S905においてYES)、S907に進む。また、アプリケーション318は、近接判定条件を満たさない状態を一定時間経過していないと判定した場合(S905においてNO)、S901に進み、再度、電波を受信する。
S906にて、アプリケーション318は、近接判定条件を満たしたため、認証情報319にあるログイン情報を、無線ネットワーク制御部317を経由して、MFP101に送信する。
S908にて、アプリケーション318は、ログイン情報を送信した結果として、認証が成功したかどうかの情報をMFP101から受信する。アプリケーション318は、MFP101から受信した情報に基づき、認証に成功したか否かを判定する。アプリケーション318は、認証に成功したと判定した場合(S908においてYES)、S909に進み、認証に失敗したと判定した場合(S908においてNO)、S910に進む。
S909にて、アプリケーション318は、MFP101へのログインが成功したことを受け、ログイン成功画面を画面表示部に表示する。
S910にて、アプリケーション318は、MFP101へのログインが失敗したことを受け、ログイン失敗画面を操作部214に表示する。
一方、S907にて、アプリケーション318は、近接エラー画面を操作部214に表示する。
S911にて、アプリケーション318は、感度調整を行える画面へ遷移できる感度調整ボタン412を操作部214の近接エラー画面等に表示する。感度調整ボタン412をユーザが選択した場合は、アプリケーション318は、
図6のフローチャートの処理へ移動して、
図9に示すフローチャートの処理を終了する。
【0028】
以上、本実施形態により、感度調整を2つの距離で実施することで未調整の距離に対する近接判定に関しても、近接判定の精度を向上することができる。
また、傾きが所定の閾値以上か否かによって、許容する距離誤差を切り替えることで、ユーザにとってより距離精度の高いログイン機能を提供することができる。
傾きが大きい、つまり、電波強度の距離による減衰率が高いときは近接判定で許容する距離誤差を傾きが小さい場合より大きく設定することで電波強度のばらつきによりログインできないケースを減らすことができる。
一方、傾きが小さい、つまり、電波強度の距離による減衰率が低いときは近接判定で許容する距離誤差を傾きが大きい場合より小さく設定することで、セキュリティ上のリスクを抑制したタッチライクな操作感を実現できる。
【0029】
<変形例>
本実施形態では、未測定の距離における閾値を算出するために、1次式に基づき算出を行う場合を例示したがこれに限定されるものではない。アプリケーション318は、測定結果に基づいてN次の多項式近似を行い、未測定の距離における閾値の算出を行うこともできる。また、デバイス間の近接の判定を、推定した距離に基づいて行うようにしてもよい。例えば、アドバタイジングパケットに含まれる送信信号強度(Tx)と、受信信号強度の比からデバイス間の距離を推定し、距離に基づく近接度合の判定を行うようにしてもよい。この場合、近接判定の閾値としては、
図7(b)で説明した信号強度に代えて距離が記憶されるものとする。また、例えば、Wi-Fi Aware(登録商標)等、他の方式で通信端末とログイン対象の外部装置の近接具合を判定するようにすることもできる。この場合、近接判定の閾値としては、デバイス間の無線通信のRTT(Round Trip Time)等に基づく閾値が記憶される。
また、本実施形態では、
図7の610に示すように、判定の閾値として、受信強度を記憶する場合を例示しているが、これに限定されるものではない。例えば、基準となる電波強度に対する差分値(オフセット)等の形式で閾値を記憶することもできる。
【0030】
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0031】
以上、本発明の実施形態の一例について詳述したが、本発明は係る特定の実施形態に限定されるものではない。
例えば、携帯端末102のハードウェア構成は、一例であって、CPUの替わりにGPU(Graphics Processing Unit)が用いられてもよい。また、携帯端末102のハードウェア構成としてCPUやRAM、フラッシュメモリ等は1つに限られず、複数のCPUが複数のRAM、フラッシュメモリ等を用いながらプログラムを実行し、上述したフローチャートを実現するようにしてもよい。
【符号の説明】
【0032】
101 MFP
102 携帯端末