(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024137245
(43)【公開日】2024-10-07
(54)【発明の名称】センサシステム、センサモジュールの駆動方法、及びプログラム
(51)【国際特許分類】
G06F 3/041 20060101AFI20240927BHJP
【FI】
G06F3/041 580
G06F3/041 520
G06F3/041 595
【審査請求】未請求
【請求項の数】16
【出願形態】OL
(21)【出願番号】P 2023048690
(22)【出願日】2023-03-24
(71)【出願人】
【識別番号】502356528
【氏名又は名称】株式会社ジャパンディスプレイ
(74)【代理人】
【識別番号】110000408
【氏名又は名称】弁理士法人高橋・林アンドパートナーズ
(72)【発明者】
【氏名】中西 貴之
(72)【発明者】
【氏名】柿木 雄飛
(72)【発明者】
【氏名】羽根木 規
(57)【要約】
【課題】非接触型センサモジュールのためのシステムを提供する。
【解決手段】センサシステムは、表示モジュール上に配置される非接触式センサモジュールと、前記センサモジュールを駆動するプロセッサと、を有する。前記プロセッサは、前記センサモジュールによって検出された検出対象物の過去の座標及び現在の座標に基づいて、前記現在の座標における前記検出対象物の移動方向を示す移動情報を算出し、前記検出対象物が前記センサモジュールに接近し、前記センサモジュールから前記検出対象物までの距離が入力操作判定距離に達した場合に、前記移動情報に基づいて前記現在の座標を補正する。
【選択図】
図8
【特許請求の範囲】
【請求項1】
表示モジュール上に配置される非接触式センサモジュールと、
前記センサモジュールを駆動するプロセッサと、を有し、
前記プロセッサは、
前記センサモジュールによって検出された検出対象物の過去の座標及び現在の座標に基づいて、前記現在の座標における前記検出対象物の移動方向を示す移動情報を算出し、
前記検出対象物が前記センサモジュールに接近し、前記センサモジュールから前記検出対象物までの距離が補正開始距離に達した場合に、前記移動情報に基づいて前記現在の座標における補正量を算出するセンサシステム。
【請求項2】
前記移動情報は、前記センサモジュールの主面に垂直な垂直方向に対する角度を示す角度情報を含む、請求項1に記載のセンサシステム。
【請求項3】
前記プロセッサは、過去のm点(mは2以上の自然数)の座標に基づいて前記移動情報を算出する、請求項2に記載のセンサシステム。
【請求項4】
前記プロセッサは、前記検出対象物が第1点において前記補正開始距離に達した場合に、前記第1点の座標及び前記角度情報に基づいて、前記現在の座標における補正量を算出する、請求項3に記載のセンサシステム。
【請求項5】
前記プロセッサは、
前記第1点の座標から前記センサモジュールに向かう仮想線であって、前記垂直方向に対して前記角度情報に含まれる角度をなす仮想線を算出し、
前記仮想線上の点であって、前記第1点と前記主面との間において前記センサモジュールからの距離が前記補正開始距離より小さい入力操作判定距離である第2点、及び前記第2点と前記主面との間において前記センサモジュールからの距離が前記入力操作判定距離より小さいターゲット距離である第3点に基づいて前記現在の座標における補正量を算出する、請求項4に記載のセンサシステム。
【請求項6】
前記プロセッサは、前記センサモジュールから前記検出対象物までの距離が前記補正開始距離から前記入力操作判定距離まで変化する間、前記現在の座標の補正量を徐々に増加する、請求項1に記載のセンサシステム。
【請求項7】
前記プロセッサは、
前記センサモジュールから前記検出対象物までの距離が前記補正開始距離から前記入力操作判定距離まで変化する間、前記現在の座標の補正量を徐々に増加し、
前記センサモジュールから前記検出対象物までの距離が前記入力操作判定距離に達した場合に、前記第2点及び前記第3点に基づいて前記現在の座標における補正量を算出する、請求項5に記載のセンサシステム。
【請求項8】
前記プロセッサは、前記センサモジュールから前記検出対象物までの距離が前記入力操作判定距離より小さくなるにしたがって、前記現在の座標の補正量を徐々に小さくする、請求項7に記載のセンサシステム。
【請求項9】
前記プロセッサは、
前記センサモジュールから前記検出対象物までの距離が前記入力操作判定距離より小さくなるにしたがって、前記現在の座標の補正量を徐々に小さくし、
続いて、前記検出対象物が前記センサモジュールから離れる方向に移動するにしたがって、前記現在の座標の補正量を徐々に小さくする、請求項8に記載のセンサシステム。
【請求項10】
前記プロセッサは、前記検出対象物が前記センサモジュールから離れる方向に移動して前記センサモジュールから前記検出対象物までの距離が前記入力操作判定距離と前記補正開始距離との間の補正終了距離に達した場合に前記現在の座標の補正量がゼロになるように制御する、請求項9に記載のセンサシステム。
【請求項11】
前記プロセッサは、
前記検出対象物が前記センサモジュールに接近し、前記センサモジュールから前記検出対象物までの距離が前記補正開始距離より大きい角度判定開始距離に達した点を基点として設定し、
前記検出対象物の動きに応じて、前記検出対象物の座標を更新し、
前記基点の位置が、更新後の前記検出対象物の座標を基準として、所定の条件の範囲外である場合、前記基点を前記更新後の前記検出対象物の座標に基づいて移動する、請求項1に記載のセンサシステム。
【請求項12】
前記プロセッサは、
前記検出対象物が前記センサモジュールに接近し、前記センサモジュールから前記検出対象物までの距離が角度判定開始距離に達した点を基点として設定し、
前記検出対象物の動きに応じて、前記検出対象物の座標を更新し、
前記基点の位置が、前記基点を基準とする前記センサモジュールの主面への垂線に対して、更新後の前記検出対象物の座標を基準として、所定の角度の範囲外である場合、前記基点を前記更新後の前記検出対象物の座標に基づいて移動する、請求項1に記載のセンサシステム。
【請求項13】
前記プロセッサは、前記基点の位置が、前記垂線に対して、更新後の前記検出対象物の座標を基準として、所定の角度の範囲外である場合、前記基点を前記更新後の前記検出対象物の座標を基準として所定の角度かつ前記センサモジュールからの距離が前記角度判定開始距離である位置に移動する、請求項12に記載のセンサシステム。
【請求項14】
前記プロセッサは、算出された前記補正量に応じて、前記表示モジュール上にカーソルを表示する、請求項1乃至10のいずれか一に記載のセンサシステム。
【請求項15】
表示モジュール上に配置される非接触式センサモジュールの駆動方法であって、
前記センサモジュールによって検出された検出対象物の過去の座標及び現在の座標に基づいて、前記現在の座標における前記検出対象物の移動方向を示す移動情報を算出し、
前記検出対象物が前記センサモジュールに接近し、前記センサモジュールから前記検出対象物までの距離が補正開始距離に達した場合に、前記移動情報に基づいて前記現在の座標における補正量を算出する、方法。
【請求項16】
表示モジュール上に配置される非接触式センサモジュールのプロセッサによって実行させるプログラムであって、
前記センサモジュールによって検出された検出対象物の過去の座標及び現在の座標に基づいて、前記現在の座標における前記検出対象物の移動方向を示す移動情報を算出し、
前記検出対象物が前記センサモジュールに接近し、前記センサモジュールから前記検出対象物までの距離が補正開始距離に達した場合に、前記移動情報に基づいて前記現在の座標における補正量を算出する、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態の一つは、センサシステムに関する。例えば、本発明の実施形態の一つは、非接触式センサモジュールが搭載された表示装置を備えるセンサシステム、及び当該センサシステムにおけるセンサモジュールの駆動方法に関する。
【背景技術】
【0002】
情報端末に情報を入力するためのインターフェースの一つとして、タッチセンサが広く用いられている。現在主流のタッチセンサは、人の指や掌、あるいはタッチペンなどの入力用治具(以下、これらを「検出対象物」とも記す。)がタッチセンサに直接接触した位置を特定する(特許文献1から3参照。)。これに対し、近年、タッチセンサに検出対象物を接触させず、タッチセンサの近傍に検出対象物を位置させるだけで情報入力が可能な非接触式センサ(ホバーセンサ)が開発されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】米国特許出願公開第2014/0049486号明細書
【特許文献2】米国特許出願公開第2013/0342498号明細書
【特許文献3】米国特許出願公開第2014/0049508号明細書
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明の実施形態の一つは、新規センサシステムとその駆動方法を提供することを課題の一つとする。あるいは、本発明の実施形態の一つは、表示装置を備える新規センサシステム、及び当該センサシステムにおけるセンサモジュールの新規駆動方法を提供することを課題の一つとする。あるいは、本発明の実施形態の一つは、人間工学的観点から操作性に優れたセンサモジュールが搭載された表示装置を備えるセンサシステム、及び当該センサシステムにおけるセンサモジュールの駆動方法を提供することを課題の一つとする。あるいは、本発明の実施形態の一つは、上記駆動方法を実現するためのプログラムを提供することを課題の一つとする。
【課題を解決するための手段】
【0005】
本発明の一実施形態に係るセンサシステムは、表示モジュール上に配置される非接触式センサモジュールと、前記センサモジュールを駆動するプロセッサと、を有する。前記プロセッサは、前記センサモジュールによって検出された検出対象物の過去の座標及び現在の座標に基づいて、前記現在の座標における前記検出対象物の移動方向を示す移動情報を算出し、前記検出対象物が前記センサモジュールに接近し、前記センサモジュールから前記検出対象物までの距離が補正開始距離に達した場合に、前記移動情報に基づいて前記現在の座標における補正量を算出する。
【0006】
本発明の一実施形態に係る、表示モジュール上に配置される非接触式センサモジュールの駆動方法は、前記センサモジュールによって検出された検出対象物の過去の座標及び現在の座標に基づいて、前記現在の座標における前記検出対象物の移動方向を示す移動情報を算出し、前記検出対象物が前記センサモジュールに接近し、前記センサモジュールから前記検出対象物までの距離が補正開始距離に達した場合に、前記移動情報に基づいて前記現在の座標における補正量を算出する。
【0007】
本発明の一実施形態に係る、表示モジュール上に配置される非接触式センサモジュールのプロセッサによって実行させるプログラムは、前記センサモジュールによって検出された検出対象物の過去の座標及び現在の座標に基づいて、前記現在の座標における前記検出対象物の移動方向を示す移動情報を算出し、前記検出対象物が前記センサモジュールに接近し、前記センサモジュールから前記検出対象物までの距離が補正開始距離に達した場合に、前記移動情報に基づいて前記現在の座標における補正量を算出する。
【図面の簡単な説明】
【0008】
【
図1】本発明の一実施形態に係るセンサシステムに含まれる表示装置の模式的展開斜視図。
【
図2】本発明の一実施形態に係るセンサシステムに含まれる表示装置のセンサモジュールの模式的上面図。
【
図3】本発明の一実施形態に係るセンサシステムのブロック図。
【
図4】検出対象物を従来の非接触式センサモジュール付き表示装置に近づけた場合の模式図。
【
図5】検出対象物を従来の非接触式センサモジュール付き表示装置に近づけた場合の模式図。
【
図6】検出対象物を従来の非接触式センサモジュール付き表示装置に近づけた場合の模式図。
【
図7】本発明の実施形態に係るセンサシステムの補正方法を説明する模式図。
【
図8】本発明の実施形態に係るセンサシステムの補正方法を説明する模式図。
【
図9】本発明の実施形態に係るセンサシステムの動作を説明する模式図。
【
図10】本発明の一実施形態に係るセンサシステムの動作を説明するフローチャート。
【
図11】本発明の一実施形態に係るセンサシステムの角度計算を説明するフローチャート。
【
図12】本発明の一実施形態に係るセンサシステムの動作を説明する模式図。
【
図13】本発明の一実施形態に係るセンサシステムの動作を説明するフローチャート。
【
図14】本発明の実施形態に係るセンサシステムの動作を説明する模式図。
【
図15】本発明の実施形態に係るセンサシステムの動作を説明する模式図。
【
図16】本発明の実施形態に係るセンサシステムの動作を説明する模式図。
【
図17】本発明の実施形態に係るセンサシステムの動作を説明する模式図。
【
図18】本発明の一実施形態に係るセンサシステムの動作を説明するフローチャート。
【
図19】本発明の一実施形態に係るセンサシステムの動作を説明する模式図。
【発明を実施するための形態】
【0009】
以下に、本発明の各実施形態について、図面を参照しつつ説明する。以下の開示はあくまで一例にすぎない。当業者が、発明の主旨を保ちつつ、実施形態の構成を適宜変更することによって容易に想到し得る構成は、当然に本発明の範囲に含有される。図面は説明をより明確にするため、実際の態様に比べ、各部の幅、厚さ、形状等について模式的に表される場合がある。しかし、図示された形状はあくまで一例であって、本発明の解釈を限定するものではない。本明細書と各図において、既出の図に関して前述したものと同様の要素には、同一の符号を付して、詳細な説明を適宜省略することがある。
【0010】
本発明の各実施の形態において、表示モジュール110からセンサモジュール200に向かう方向を上又は上方という。逆に、センサモジュール200から表示モジュール110に向かう方向を下又は下方という。このように、説明の便宜上、上方又は下方という語句を用いて説明するが、例えば、表示モジュール110とセンサモジュール200との上下関係が図示と逆になるように配置されてもよい。以下の説明で、例えば表示モジュール110上のセンサモジュール200という表現は、上記のように表示モジュール110とセンサモジュール200との上下関係を説明しているに過ぎず、表示モジュール110とセンサモジュール200との間に他の部材が配置されていてもよい。上方又は下方は、複数の層が積層された構造における積層順を意味するものであり、トランジスタの上方の画素電極と表現する場合、平面視において、トランジスタと画素電極とが重ならない位置関係であってもよい。一方、トランジスタの鉛直上方の画素電極と表現する場合は、平面視において、トランジスタと画素電極とが重なる位置関係を意味する。
【0011】
本明細書において、「膜」という用語と、「層」という用語とは、場合により、互いに入れ替えることができる。
【0012】
「表示装置」とは、電気光学層を用いて映像を表示する構造体を指す。例えば、表示装置という用語は、電気光学層を含む表示パネルを指す場合もあり、又は表示セルに対して他の光学部材(例えば、偏光部材、バックライト、タッチパネル等)を装着した構造体を指す場合もある。「電気光学層」には、技術的な矛盾が生じない限り、液晶層、エレクトロルミネセンス(EL)層、エレクトロクロミック(EC)層、電気泳動層が含まれ得る。したがって、後述する実施形態について、表示装置として、液晶層を含む液晶表示装置、及び有機EL層を含む有機EL表示装置を例示して説明するが、本実施形態における構造は、上述した他の電気光学層を含む表示装置へ適用することができる。
【0013】
本明細書において「αはA、B又はCを含む」、「αはA、B及びCのいずれかを含む」、「αはA、B及びCからなる群から選択される一つを含む」、といった表現は、特に明示が無い限り、αがA~Cの複数の組み合わせを含む場合を排除しない。さらに、これらの表現は、αが他の要素を含む場合も排除しない。
【0014】
なお、以下の各実施形態は、技術的な矛盾を生じない限り、互いに組み合わせることができる。
【0015】
[1.第1実施形態]
図1~
図12を参照して、本発明の実施形態の一つであるセンサシステム、センサシステムを駆動するための方法、及びこの方法を実現するためのプログラムについて説明する。
【0016】
[1-1.センサシステム]
本発明の実施形態の一つに係るセンサシステムを
図1及び
図2に示す。センサシステムは、センサモジュール200及びプロセッサ220を含む。当該センサシステムにおいて、センサモジュール200は表示装置100に組み込まれていてもよい。この場合、センサシステムは表示装置100及びプロセッサ220を含む。センサシステムは、さらにプロセッサ220及び表示装置100に接続されるコンピューティングデバイス300を含んでもよい。
【0017】
[1-2.表示装置]
表示装置100の模式的展開斜視図を
図1に示す。表示装置100は、表示モジュール110及びセンサモジュール200を含む。センサモジュール200は、表示モジュール110上に配置される。表示モジュール110及びセンサモジュール200は、
図1では示されない接着層によって互いに固定されてもよい。
【0018】
[1-3.表示モジュール]
表示モジュール110は、表示モジュール110に接続されるコンピューティングデバイス300の命令に従って映像を表示する機能を有するデバイスである。表示モジュール110は、アレイ基板112、アレイ基板112上に形成される複数の画素116、及び複数の画素116を覆う対向基板114を基本的な構成として備える。図示しないが、アレイ基板112上には、画素116を制御するための駆動回路が設けられる。複数の画素116を囲む領域は表示領域120と呼ばれる。各画素116は表示素子を備えており、色情報を提供する最小単位として機能する。
【0019】
表示素子としては、液晶素子をはじめ、無機電界発光素子(LED)や有機電界発光素子(OLED)に例示される電界発光素子などを用いることができる。液晶素子を用いる場合には、表示モジュール110には、図示しない光源(バックライト)がさらに設けられる。各画素116は、フレキシブル印刷回路(FPC)基板などの第1のコネクタ118を介してコンピューティングデバイス300から供給される電源と映像信号に従って動作し、映像信号に基づく階調で特定の色の光を提供する。画素116の動作を映像信号に基づいて制御することで、表示領域120上に映像を表示することができる。複数の画素116は、映像がセンサモジュール200を介して視認できるように配置される。
【0020】
表示モジュール110の大きさに制約はなく、例えば12.1インチ(31cm)サイズと呼ばれる携帯通信端末などに利用される大きさでもよく、コンピュータに接続されるモニタやテレビ、サイネージなどに好適な大きさ(例えば、14.1インチ(36cm)サイズから32インチ(81cm)サイズ)でもよく、さらに大きなサイズであってもよい。より具体的には、車載表示装置のほか、金銭登録器(レジ)や現金自動預払機に組み込まれる表示装置に適合するサイズを採用してもよい。
【0021】
[1-4.センサモジュール]
センサモジュール200は、表示モジュール110からの光を透過させるとともに、表示装置100に情報を入力するためのインターフェースとして機能するデバイスである。センサモジュール200は非接触式センサモジュール(ホバーセンサ)であり、指や掌、タッチペンなどの検出対象物がセンサモジュール200に直接接触したときのみならず、検出対象物がセンサモジュール200に接することなく近づいた際にも検出対象物を検出し、センサモジュール200上における検出対象物の位置(以下、単に入力位置とも記す。)を特定する機能を備える。センサモジュール200が検出対象物を検出する距離は適宜設定することができ、例えばセンサモジュール200の最外表面から5mm以内、20mm以内、50mm以内、又は100mm以内の範囲に設定することができる。なお、後述するように、センサシステムでは、センサモジュール200が検出対象物による入力の有無を判定するための閾値距離が設定される。
【0022】
図1や
図2に示すように、センサモジュール200は、センサ基板202と、センサ基板202に対向するカバー基板204とを備えるセンサパネル201と、センサパネルに接続されるコネクタ部207とを備える。センサパネル201は、表示モジュール110の表示領域120上に配置されている。換言すると、センサパネル201は、表示に画面上に配置されている。センサ基板202及びカバー基板204は、いずれも絶縁性の基板であり、表示モジュール110によって表示される映像を視認させるため、可視光を透過する材料で構成される。このため、センサ基板202及びカバー基板204は、ガラス及び石英などの無機材料、又は、ポリイミド、ポリアミド、及びポリカーボネートなどの高分子材料などで構成される。センサ基板202及び/又はカバー基板204は、任意に変形できる程度の可撓性を備えてもよく、あるいは塑性変形しない程度の低い可撓性を有してもよい。
【0023】
センサ基板202とカバー基板204との間には、複数のセンサ電極206が設けられる。複数のセンサ電極206は、複数の行及び列を有するマトリクス状に配置される。複数のセンサ電極206が配置される領域はセンサ領域214と呼ばれ、センサ領域214が表示領域120と重なるようにセンサ電極206が配置される。センサ電極206の数(すなわち、行及び列の数)や大きさ(面積)は、表示装置100の大きさ、センサモジュール200に要求される検出精度などに応じて適宜設定すればよい。行及び列の数は、例えばそれぞれ5以上10以下、5以上15以下でもよい。
図1から理解されるように、各センサ電極206は、画素116よりも大きな面積を有しており、複数の画素116と重なるように設けられる。
【0024】
センサ電極206は、例えばインジウム-スズ混合酸化物(ITO)及びインジウム-亜鉛混合酸化物(IZO)などの透光性酸化物を含む。あるいは、センサ電極206は、チタン、モリブデン、タングステン、アルミニウム、及び銅などの金属(0価の金属)、又はこれらの金属の一つ又は複数を含む合金を含んでもよい。この場合には、透光性を確保するため、複数の開口を有するメッシュ状にセンサ電極206を形成すればよい。
【0025】
各センサ電極206からは、センサ電極206と電気的に接続されるセンサ配線(図示しない)がセンサ基板202の一辺まで延伸し、端部において端子212を形成する(
図2)。端子212にはフレキシブル印刷回路(FPC)基板などの第2のコネクタ210が電気的に接続される(
図1、
図2)。
【0026】
センサモジュール200のセンサ基板202と表示モジュール110の対向基板114との間には、表示モジュール110からの電気的な影響を遮蔽するためのノイズシールド層216が設けられる(
図1参照)。ノイズシールド層216は、ITO及びIZOなどの透光性酸化物、あるいは金属を含む。後者の場合には、可視光の透過を許容するよう、複数の開口を有するメッシュ状の金属膜をノイズシールド層216として用いればよい。ノイズシールド層216は、複数のセンサ電極206と重なるように設けられる。ノイズシールド層216には、FPC基板などの第3のコネクタ208が電気的に接続され、センサ電極206に印加される電位と同相のパルス状又はサイン波形の交流電圧が印加される。このため、ノイズシールド層216はセンサ電極206と常時等電位となる。
【0027】
[1-5.コンピューティングデバイス]
コンピューティングデバイス300は、計算機能を有する電子デバイスであり、例えばデスクトップ型コンピュータやノート型パーソナルコンピュータを始め、タブレットやスマートフォンなどの携帯通信端末である。あるいは、コンピューティングデバイス300は、表示装置100が搭載される各種装置に組み込まれる情報処理装置(例えばマイクロコンピュータ)でもよい。
図3のブロック図に示すように、コンピューティングデバイス300は、コンピューティングデバイス300の動作を制御する制御部302、記憶部304、制御部302によって制御される通信部306、音声出力部308、及び電源310などを含む。
【0028】
制御部302は、中央演算ユニット(CPU)などの処理装置を備え、記憶部304に格納される基本アプリケーションプログラム、及び各種駆動方法を実現するためのプログラムを動作させ、各種処理を実行する。記憶部304は、揮発性の主記憶装置及び不揮発性の補助記憶装置によって構成される。主記憶装置は、ランダムアクセスメモリ(RAM)やダイナミックランダムアクセスメモリ(DRAM)などである。補助記憶装置は、リードオンリーメモリ(ROM)、フラッシュメモリ、ハードディスクドライブなどである。上記基本アプリケーションプログラムやプログラムは記憶部304を構成する補助記憶装置に記憶される。
【0029】
通信部306は、ネットワークを介して図示しない外部電子機器との通信を行う機能を有する。音声出力部308は種々の音を発生する機能を有するスピーカーである。電源310はリチウムイオンバッテリなどの二次電池であり、外部電源から電力の供給を受けて蓄電し、外部電源が利用できないときには電源を制御部302、表示装置100などに供給する。
【0030】
コンピューティングデバイス300に対する入力は、センサモジュール200を用いて行うことができる。したがって、センサモジュール200、及びセンサモジュール200を含む表示装置100は、コンピューティングデバイス300の入出力部として機能する。センサモジュール200を用いる入力については後述する。また、図示しないが、コンピューティングデバイス300に対する入力装置として、コンピューティングデバイス300は、キーボード、操作ボタン、及びマウスなどをさらに備えてもよい。
【0031】
コンピューティングデバイス300は、第1のコネクタ118を介して表示モジュール110に接続されるとともに、第2のコネクタ210を介してセンサモジュール200に接続される。第1のコネクタ118上には画素116に供給する信号を生成する駆動回路122が設けられる。コンピューティングデバイス300にインストールされるアプリケーションの命令に従って制御部302が動作し、映像信号が駆動回路122に供給される。駆動回路122は、この映像信号に基づいて各画素116に供給する信号を生成し、画素116を制御する。これにより、アプリケーションに従って表示領域120上に映像が表示される。なお、駆動回路122を第1のコネクタ118上に設けず、アレイ基板112の上に形成してもよい。
【0032】
[1-6.プロセッサ]
第2のコネクタ210には駆動回路として機能するプロセッサ220を設けることができる。プロセッサ220は、シリコン半導体基板上に形成される集積回路によって形成することができる。プロセッサ220は、センサモジュール200を非接触方式で駆動する。プロセッサ220は、表示装置100及びコンピューティングデバイス300に電気的に接続される。例えば、プロセッサ220は、電源回路230、検出器240、演算素子250、及びインターフェース260などを含む(
図2、
図3参照)。なお、プロセッサ220を第2のコネクタ210上に設けず、センサ基板202上に設けてもよい。
【0033】
電源回路230は、図示しない外部電源からコンピューティングデバイス300を介して供給される電源をパルス状の交流電圧(交流矩形波)に変換し、この交流電圧を端子212とセンサ配線を介して各センサ電極206に供給する。
【0034】
検出器240はアナログフロントエンド(AFE:Analog Front End)とも呼ばれ、信号検出部242とアナログ/デジタル変換部(A/D変換部)244を含む。信号検出部242によってセンサ電極206の容量の変化が電位変動として検出され、A/D変換部244によってこの電位変動がデジタル化されて検出信号に変換される。
【0035】
演算素子250は、信号処理部252、座標演算部254、判定部256、及び記憶部258などを含む。信号処理部252は、A/D変換部244から入力された検出信号に対して各種処理を行う。検出信号に対する処理としては公知の処理が挙げられ、ノイズ低減処理、ベースライン補正、及び線形変換処理などが例示される。信号処理部252で処理された検出信号は、座標演算部254によって処理され、センサ領域214上における検出対象物の位置とともに、センサモジュール200から検出対象物までの距離が計算される。すなわち、センサモジュール200に対する検出対象物の三次元座標が計算される。センサモジュール200上の二次元座標は、検出対象物が近接する複数のセンサ電極206の電位変動を示す指標であるセンサ値の分布を利用して決定される。一方、第3の次元の座標であるセンサモジュール200から検出対象物までの距離は、センサ値の強度によって決定される。算出された三次元座標は、インターフェース260を介してコンピューティングデバイス300に入力される。これにより、検出対象物の三次元座標をコンピューティングデバイス300において把握することができる。
【0036】
インターフェース260はコンピューティングデバイス300との接続に用いられ、ユニバーサル・シリアル・バス(USB)やシリアル・ペリフェラル・インタフェース(SPI)などの規格に基づいて構成される。記憶部258は、揮発性又は不揮発性メモリ素子を含むデバイスであり、コンピューティングデバイス300によって設定された、センサモジュール200から検出対象物までの閾値距離、特定の点からの検出対象物の閾値距離、特定の点における検出対象物の閾値静止時間が格納される。これらの情報は、インターフェース260を介し、コンピューティングデバイス300の記憶部304から提供される。
【0037】
判定部256は、センサモジュール200に接触又は近接する検出対象物の三次元座標における各種閾値距離、及びセンサモジュール200から検出対象物までの距離を比較する。さらに、判定部256は、センサモジュール200から検出対象物までの距離が閾値距離以下であると判定する場合には、検出対象物がセンサモジュール200に接触していなくても、検出対象物による入力操作(例えば、「タップ操作」又は「タッチ操作」。)が行われたと判断する。逆に、判定部256は、センサモジュール200から検出対象物までの距離が閾値距離を超えていると判定する場合には、入力操作が行われていないと判断する。判定部256による判断結果は、インターフェース260を介してコンピューティングデバイス300の制御部302に送信される。制御部302は、この判断結果に基づき、プログラムの命令に従って入力操作に対応する映像の映像信号を表示モジュール110に提供する。
【0038】
上述したセンサシステムでは、プロセッサ220は第2のコネクタ210又はセンサ基板202上に設けられる。ただし、プロセッサ220の全体又は一部をコンピューティングデバイス300に配置してもよい。あるいは、プロセッサ220の機能の全て又は一部をコンピューティングデバイス300で実現してもよい。例えば、検出器240及び/又は演算素子250をコンピューティングデバイス300に搭載してもよい。あるいは、検出器240及び/又は演算素子250の機能の全て又は一部をコンピューティングデバイス300で実現してもよい。
【0039】
[1-7.従来のセンサシステムにおける問題点]
従来のセンサシステムにおける問題点について説明する。
【0040】
ユーザが指などの検出対象物を従来の非接触式センサモジュール付き表示装置に近づけた場合の模式図を
図4~
図6に示す。
図4~
図6において、表示モジュール110上には複数の画素116によって表示されたターゲット表示131、132、133が示されている。当該ターゲット表示は、x軸に沿って並んでいる。当該ターゲット表示は、例えばテンキーである。表示モジュール110に対向する位置にセンサモジュール200が設けられている。表示モジュール110とセンサモジュール200との間の部材は省略されている。
【0041】
センサモジュール200の上方(z軸の正方向)に表示された点線は、センサモジュール200(又はセンサパネル201)からの距離が入力判定距離TSである位置を示している。入力判定距離TSは、プロセッサ220が検出対象物によって入力操作が行われたことを検出するタイミングにおけるセンサモジュール200と検出対象物との距離である。つまり、センサモジュール200と検出対象物との距離が入力判定距離TSを超える場合、プロセッサ220は入力操作を検出しない。一方、当該距離が入力判定距離TS以下である場合、プロセッサ220は入力操作を検出する。これらの図面において、実線の矢印は検出対象物の軌跡を示す。以下の説明において、検出対象物がセンサモジュール200に接近し、センサモジュール200と検出対象物との距離が入力判定距離TSに達することを「検出対象物が入力判定距離TSに達する」という場合がある。
【0042】
図4では、ユーザは、ターゲット表示132に対する入力操作を行うため、点P12を狙って検出対象物を移動させる。
図4に示すように、検出対象物が軌道に沿ってセンサモジュール200(ターゲット表示132)に接近し、検出対象物が入力判定距離TSに達すると、プロセッサ220は、入力判定距離TSにおける検出対象物の位置(点P11)を、入力操作が検出された位置と判定する。
【0043】
一方、検出対象物は、入力判定距離TSに達した後もセンサモジュール200へ接近し、ユーザが狙った入力位置(点P12)まで移動する。つまり、ユーザが認識する入力位置(点P12)とプロセッサ220が検出した入力操作の位置(点P11)との間にずれが生じる。点P11と点P12とを二次元座標(xy座標)に投影した場合の両者間の距離が、ユーザが狙った入力位置とプロセッサ220が検出した入力操作の位置とのずれである。検出対象物がターゲット表示132に接近する場合、かつ検出対象物がセンサモジュール200の主面に対して垂直に近い角度でセンサモジュール200に接近する場合、ユーザが狙った入力位置と検出された入力操作の位置とのずれは小さいため、入力操作の誤認は起きにくい。したがって、プロセッサ220は、ユーザの狙いと同様にターゲット表示132に対する入力操作を検出する。
【0044】
一方、
図5では、ユーザは、ターゲット表示132に対する入力操作を行う際に、
図4に比べてセンサモジュール200の主面に対して水平に近い角度で検出対象物をセンサモジュール200に移動させる。その結果、
図5に示すように、入力判定距離TSにおける検出対象物の位置(点P21)とユーザが狙った入力位置(点P22)とのずれは、
図4の点P11と点P12とのずれに比べて大きい。したがって、ユーザの狙いがターゲット表示132であるにも拘わらず、プロセッサ220は、ターゲット表示132の隣のターゲット表示131に対する入力操作を検出してしまう。
【0045】
図5のように、センサモジュール200の主面に対して水平に近い角度で検出対象物をセンサモジュール200に移動させる場合、入力操作の誤認が起きやすい。
【0046】
また、
図6では、ユーザが意図する入力操作の位置と、実際にユーザによって操作された検出対象物の位置とがずれている場合が例示されている。例えば、ユーザが、センサモジュール200の主面に対して斜め方向から検出対象物を近づける場合、ユーザの操作感覚に起因して、検出対象物の位置とユーザが意図する入力操作の位置とが異なる場合がある。
図6において、点線はユーザが意図する入力操作の仮想軌跡であり、実線は検出対象物の軌跡(実軌跡)である。仮想軌跡は、ユーザがイメージする検出対象物の軌跡である。
【0047】
図6に示すように、仮想軌跡が入力判定距離TSにおける点P31を経由して点P32に達しているのに対して、実軌跡は入力判定距離TSにおける点P33を経由して点P34に達している。つまり、ユーザが、検出対象物が点P32に移動したと認識している場合であっても、実際には検出対象物は点P33を経由して点P34に移動する。この場合、プロセッサ220は、点P33の位置で入力操作を検出する。したがって、ユーザがターゲット表示132に対して入力操作を行ったと認識しているにも拘わらず、プロセッサ220は、ターゲット表示131に対して入力操作が行われたと判定する。このように、ユーザの操作感覚に起因して入力操作の誤認が生じる場合がある。
【0048】
[1-8.センサシステムの座標補正方法]
本実施形態にかかるセンサシステムは、検出対象物の座標を検出し、検出された座標をカーソル又はポインタ等によって表示することで、ユーザに対して検出位置を認識させる。当該センサシステムは、プロセッサ220を用いて検出された検出対象物の座標を補正し、補正された座標にカーソルを表示装置100に表示する。本実施形態では、プロセッサ220は、
図7に示す方法で検出対象物の移動情報を算出し、当該移動情報を用いて
図8に示す方法でずれ量を計算し、当該ずれ量に基づいて検出対象物の座標を補正し、補正された座標にカーソル等を表示する。
【0049】
図7は、本発明の実施形態に係るセンサシステムの補正方法を説明する模式図である。本実施形態では、x軸方向に並んだターゲット表示及びx軸方向に検出対象物が移動する構成を例示するが、y軸方向においても以下と同様の処理が行われる。
【0050】
図4~
図6と同様に、
図7には、センサモジュール200の上方に入力判定距離TSが点線で表示されており、入力判定距離TSの上方に補正開始距離SS及び角度判定開始距離ASが点線で表示されている。角度判定開始距離ASは、プロセッサ220が現在の座標における検出対象物の移動方向の算出を開始する距離を示す。補正開始距離SSは、プロセッサ220が検出対象物の座標の補正を開始するか否かを判定し始める距離を示す。
【0051】
検出対象物が角度判定開始距離ASよりもセンサモジュール200に接近した後に、プロセッサ220は、検出対象物の座標に基づいて当該検出対象物の移動方向を示す移動情報及び当該移動情報に基づくずれ量の算出を開始する。検出対象物が補正開始距離SSよりもセンサモジュール200に接近すると、プロセッサ220は、当該ずれ量に基づく補正を開始する。
図7において、「黒丸(●)」及び「白丸(○)」は、検出対象物がセンサモジュール200によって検出された座標を示す。これらの座標は、センサモジュール200によって検出される。
【0052】
図7に示すように、検出対象物が角度判定開始距離ASに達した場合、プロセッサ220は、検出対象物が検出された座標に基づいて、検出対象物の移動方向を示す移動情報の算出を開始する。検出対象物の座標の検出は所定の期間(例えば、1フレーム)ごとに行われ、検出が行われるたびに、現在の検出対象物の座標が更新され、過去の検出対象物の座標は記憶部258に格納される。記憶部258として、例えばリングバッファが用いられ、最新の座標データ及び当該最新の座標データをからm-1個前までの過去の座標データがリングバッファに格納される(mは2以上の自然数)。例えば、検出対象物の検出が1フレーム毎に行われる場合、リングバッファにはmフレーム分の座標データが格納される。当該リングバッファにおいては、最新の座標データが格納されるたびに最も古い座標データは消去される。
【0053】
検出対象物が角度判定開始距離ASからセンサモジュール200に接近し、センサモジュール200から検出対象物までの距離が補正開始距離SS(点P40;第1点)に達した場合に、プロセッサ220は、検出対象物の座標における上記移動情報に基づいて検出対象物の現在の座標(以下、「検出位置」という場合がある)の補正量を算出し、補正を開始する。具体的には、
図7に示すように、プロセッサ220は、リングバッファに格納されたm点の座標データに基づいて、点P41に至った検出対象物の移動情報を算出する。
図7の例では、mが4である。移動情報の算出に用いられる座標は「白丸(○)」で示されており、それ以外の座標(白丸(○)で表示された座標データより前に保持されていた座標データ)は「黒丸(●)」で示されている。なお、
図7の右上に示す丸点線で囲まれた領域は、
図7の左下の図面の一部の拡大図である。例えば、上記の移動情報は、過去のm点の座標に対する近似線に基づいて算出される。具体的には、当該近似線の傾きが移動情報に相当する。
図7に示す例では、移動情報(傾き)は、センサモジュール200の主面に垂直な方向に対する近似線の角度θに係る角度情報である。
【0054】
移動情報の算出方法は上記の方法に限定されない。詳細は後述するが、例えば、直近のm点の座標を前半と後半の2区分に分割し、前半の区分に含まれる座標の平均値と、後半の区分に含まれる座標の平均値とを計算し、これらの平均値に基づいて上記の移動情報(傾き)を算出してもよい。また、リングバッファに格納されている複数の座標データのうちのいくつかの座標データのみを用いて移動情報を算出してもよい。この場合、例えば最新の座標データ及び最も古い座標データのみを用いて移動情報を算出してもよい。また、本実施形態では、移動情報としてセンサモジュール200(センサパネル201)の法線に対する検出対象物の進入角度θを最新の座標データ群に基づいて算出する構成を例示するが、この構成に限定されない。例えば、移動情報として、角度θ及び速度(又は加速度)を含むベクトルを算出してもよい。
【0055】
図8は、本発明の実施形態に係るセンサシステムの補正方法を説明する模式図である。
図8を用いて、
図7で算出された移動情報を用いてずれ量を算出する方法について説明する。前述のように、ユーザが、センサモジュール200の主面に対して斜め方向から検出対象物を近づける場合、ユーザが意図する入力位置と、センサモジュール200が検出する入力操作の位置との間に差が生じる。この差がずれ量である。
【0056】
図8には、入力判定距離TSの上方(z軸の正方向)に補正開始距離SS及び角度判定開始距離ASが点線で示されており、入力判定距離TSの下方(z軸の負方向)にターゲット距離ZSが点線で示されている。ターゲット距離ZSは、検出対象物を操作するユーザが意図する入力操作を想定した位置を示す。
【0057】
図8では、検出対象物の座標における補正量を計算するための基準となる「ずれ量α」を計算する方法について説明する。
図8において、点P41(第2点)は、点P40(第1点)から検出対象物の移動方向(センサモジュール200の法線に対して角度θの方向)に向かって延びる仮想線(点P40からターゲット表示132に延びる点線)が入力判定距離TSに達した点である。点P42(第3点)は、当該仮想線がターゲット距離ZSに達した点である。当該仮想線は、点P40における検出対象物の座標及び移動情報に基づいて算出される。本実施形態の場合、移動情報として角度θを用いて仮想線が算出される。点P43は、点P42の鉛直上方の点であり、センサモジュール200からの距離が入力判定距離TSである点である。
【0058】
図8において、「PA_xy」は、点P41のxy座標である。「PB_xy」は、点P42のxy座標である。ずれ量αは、点P41と点P43との間の距離である。換言すると、ずれ量αは、xy座標における点P41と点P42との距離である。
図8において、センサモジュール200の表面から補正開始距離SSまでの距離が「S」と表示され、当該表面から入力判定距離TSまでの距離が「T」と表示され、当該表面からターゲット距離ZSまでの距離が「Z」と表示される。
【0059】
上記の場合、P40を基準として、「PA_xy」、「PB_xy」、及びαは以下の式で表される。
PA_xy=(S-T)×tanθ
PB_xy=(S-Z)×tanθ
α=PB_xy-PA_xy
なお、ずれ量αは以下の式でもあらわされる。
α=(T-Z)×tanθ
【0060】
プロセッサ220は、検出対象物が角度判定開始距離ASに続いて補正開始距離SSに達すると(点P40)、検出対象物の移動方向及び座標に基づいたずれ量αの算出を開始する。具体的には、プロセッサ220は、点P40における座標及び検出対象物の移動方向に基づいて仮想線を算出し、当該仮想線に基づいて計算された「PA_xy」及び「PB_xy」を用いてずれ量αを計算する。ずれ量αの計算は、検出対象物が角度判定開始距離ASに達した後、各フレームについて行われる。プロセッサ220は、このずれ量αに基づいて、検出対象物の座標における補正量を計算し、計算された補正量に基づいて補正された座標にカーソル等を表示する。
【0061】
上記の構成を換言すると、プロセッサ220は、検出対象物の座標及び上記角度情報に基づいて、検出対象物の検出座標を補正し、補正された座標にカーソル等を表示する。詳細には、まず、プロセッサ220は、z軸に対して上記角度情報に含まれる角度をなし、検出対象物の現座標からセンサモジュール200に向かう仮想線を算出する。そして、プロセッサ220は、当該仮想線上の点であって、当該座標とセンサモジュール200の主面との間において、センサモジュール200からの距離がターゲット距離ZSである点P42に基づいて検出位置を補正する。
【0062】
ターゲット距離ZSは、センサモジュール200の主面と入力判定距離TSとの間の任意の距離を意味する。例えば、ターゲット距離ZSは、入力判定距離TSの30%以上70%以下のいずれかの距離、40%以上60%以下のいずれかの距離、約50%の距離である。
【0063】
図4~
図6に示すように、ユーザは、実際には入力判定距離TSを視認できないので、確実に入力操作を行うべく検出対象物を入力判定距離TSよりもセンサモジュール200に近接させることが考えられる。このため、検出対象物の進入角度によっては意図しない入力操作が検知されてしまう虞があるが、プロセッサ220が検出対象物による入力操作が行われた位置を上記のように補正することで、ユーザが入力操作を行ったと認識する位置と、入力操作が行われたことをプロセッサ220が判定する位置とのずれを小さくすることができる。
【0064】
[1-9.センサシステムの動作(接近時)]
図9は、本発明の実施形態に係るセンサシステムの動作を説明する模式図である。
図9を用いて、検出対象物の実際の動きに対して、
図8に示すずれ量αに基づいて補正された座標にカーソルを表示する例について説明する。
【0065】
図9では、
図8と同様に、角度判定開始距離AS、補正開始距離SS、入力判定距離TS、及びターゲット距離ZSが示されている。
図9のうち、実線の矢印は検出対象物の実際の動きを示し、太い矢印(内部が白で描かれた矢印)は補正後の検出対象物の軌跡(補正後軌跡)を示し、実線の矢印と太い矢印との間において水平に延びる点線の矢印はセンサモジュール200の主面を基準とした各高さ位置における補正量を示す。
図9における点P52~P55は、それぞれ、
図8における点P40~P43に対応する。
【0066】
図9に示すように、検出対象物がセンサモジュール200に接近し、センサモジュール200と検出対象物との距離が角度判定開始距離ASに達した場合(点P51)に、プロセッサ220は、現在の座標における検出対象物の移動方向及びずれ量αの算出を開始する。その後、検出対象物がセンサモジュール200にさらに接近し、当該距離が補正開始距離SSに達すると(点P52)、プロセッサ220は、当該ずれ量αに基づいて検出対象物に対する検出位置の補正を開始する。
【0067】
上記のように検出位置の補正が開始されると、プロセッサ220は、補正後の座標に基づいてカーソルを表示する。プロセッサ220は、検出対象物が入力判定距離TSに達したときに座標の補正量がずれ量αに一致するように、各高さ位置における補正量を決定する。つまり、センサモジュール200と検出対象物との距離が入力判定距離TSに達したときに、点P53の座標からセンサモジュール200に向かう仮想線上の点P54に基づいて、検出位置を補正し、点P55の座標にカーソルを表示する。
【0068】
点P54は、点P53とセンサモジュール200の主面との間において、センサモジュール200からの距離がターゲット距離ZSである点である。つまり、点P54は、ユーザが検出対象物を用いて入力をしようとする位置である。したがって、実際の検出対象物が点P53に位置する場合に、ユーザが入力を意図する補正後の座標(点P55)にカーソルが表示されるように、検出位置の補正を行う。上面視において、点P54の位置は点P55の位置と同じである。つまり、xy座標における点P54の座標は点P55の座標と同じである。
【0069】
上記の補正方法を詳細に説明すると、プロセッサ220は、点P52から検出位置の補正を開始し、検出対象物がセンサモジュール200に接近するにしたがって、その検出位置の補正量を徐々に増加する。
【0070】
あるフレームにおけるセンサモジュール200から検出対象物までの距離をXとすると、点P52から点P53までの間における補正量は以下のように表現することができる。
補正量=α×(X-T)/(S-T)
【0071】
図9の例では、検出対象物が点P52から点P53まで直線的に移動しているため、補正後軌跡は点P52から点P55に向かう直線的な形状である。ただし、例えば、検出対象物が点P52から点P55まで曲線的に移動する場合、当該補正後軌跡は、点P52から点P55に向かう、検出対象物の動きに応じた曲線的な形状であってもよい。
【0072】
プロセッサ220が上記のように補正をした結果、検出対象物が入力判定距離TSに達したときに、プロセッサ220は、点P55の位置にカーソルを表示する。
【0073】
検出対象物が点P53の位置から仮想線に沿ってセンサモジュール200にさらに接近すると、プロセッサ220は、センサモジュール200と検出対象物との距離が入力判定距離TSより小さくなる(検出対象物がターゲット距離ZSに近づく)にしたがって、検出位置の補正量を徐々に小さくする。換言すると、当該補正量は、入力判定距離TSで最大値をとり、検出対象物が入力判定距離TSから下方に移動するにしたがって当該補正量は小さくなる。仮想線がターゲット表示132に達する点を点P56とすると、補正後軌跡が点P55から点P56に向かうように検出位置の補正量が調整される。
【0074】
あるフレームにおけるセンサモジュール200から検出対象物までの距離をXとすると、点P53から点P54までの間における補正量は以下のように表現することができる。
補正量=α×(X-D)/(T-D)
【0075】
図9の例では、検出対象物が点P53から点P56に向かって直線的に移動しているため、補正後軌跡は点P55から点P56に向かう直線的な形状である。ただし、例えば、検出対象物が点P53から点P56に向かって曲線的に移動する場合、当該補正後軌跡は、点P55から点P56に向かう、検出対象物の動きに応じた曲線的な形状であってもよい。
【0076】
プロセッサ220が上記のように補正をした結果、検出対象物が点P53から点P54に向かって移動してターゲット距離ZSに達したときに、プロセッサ220は、点P55と点P56との間の点P57の位置にカーソルを表示する。
【0077】
上記のように検出対象物の検出位置を補正することで、ユーザが、センサモジュール200の主面に対して斜め方向から検出対象物を近づけた場合であっても、ユーザの意図を反映した表示をすることができる。特に、センサモジュール200と検出対象物との距離に応じて補正量を調整することで、ユーザに対して違和感のないタッチセンサシステムを提供することができる。
【0078】
上記のように検出対象物の検出位置を補正することで、ユーザに対して、より違和感のないタッチセンサシステムを提供することができる。
【0079】
[1-10.センサシステムの動作フローチャート]
図10は、本発明の一実施形態に係るセンサシステムの動作を説明するフローチャートである。
図10に示す各動作は主にプロセッサ220によって実行される。各フレームについて、
図10に示す一連のフローが行われる。
【0080】
センサシステムの動作が開始すると、まず、センサモジュール200は検出対象物の位置を検出する。プロセッサ220は、その検出位置に基づいて角度計算の要否判定を行う(S1001;AS以下?)。具体的には、ステップS1001において、センサモジュール200から検出対象物までの距離が角度判定開始距離AS以下である場合(S1001の「Yes」)、プロセッサ220は、検出対象物の移動方向を示す移動情報を算出する。具体的には、
図7に示すように、プロセッサ220は、z軸に対する検出対象物の移動方向の角度θを算出する(S1002;θ計算)。一方、ステップS1001において、センサモジュール200から検出対象物までの距離が角度判定開始距離ASを超える場合(S1001の「No」)、プロセッサ220は、現在の検出対象物の座標を出力し(S1061;座標出力)、
図10のフローを終了する。
【0081】
ステップS1002でプロセッサ220が角度θを算出した後、プロセッサ220は、検出対象物の検出位置に基づいて補正開始判定を行う(S1003;SS以下?)。具体的には、ステップS1003において、センサモジュール200から検出対象物までの距離が補正開始距離SS以下である場合(S1003の「Yes」)、プロセッサ220は、
図8に示す方法でずれ量αの計算を行う(S1004;ずれ量α計算)。一方、ステップS1003において、当該距離が補正開始距離SSを超える場合(S1003の「No」)、プロセッサ220は、現在の検出対象物の座標を出力し(S1061)、
図10のフローを終了する。
【0082】
ステップS1004でずれ量αが計算されると、プロセッサ220は、入力操作があったことを示すTapフラグの有無判定を行う(S1005;Tapフラグなし?)。本実施形態において、検出対象物が既に入力判定距離TSに達している場合(既に入力操作が行われた場合)、Tapフラグが立っている。したがって、Tapフラグが無い(Tapフラグが立っていない)場合(S1005の「Yes」)、プロセッサ220は、当該検出対象物についてまだ入力操作が行われていないと判定する。一方、Tapフラグが有りの場合(S1005の「No」)、プロセッサ220は、当該検出対象物について既に入力操作が行われたと判定し、補正量の算出を行う(S1041;補正量(漸減)計算)。ステップS1041における補正量の算出の詳細は後述する。
【0083】
ステップS1005でTapフラグが無いと判定されると、プロセッサ220は、検出対象物の検出位置に基づいてタップ判定を行う(S1006;TS到達?)。具体的には、S1006においてセンサモジュール200から検出対象物までの距離が入力判定距離TS以下である場合(S1006の「Yes」)、プロセッサ220は、入力操作が行われたと判定した座標におけるずれ量αを記憶部258に記録する(S1007;Tap判定高さでのずれ量αを記録)。一方、当該距離が入力判定距離TSを超える場合(S1006の「No」)、プロセッサ220は、当該検出対象物についてまだ入力操作が行われていないと判定し、補正量の算出を行う(S1021;補正量(漸増)計算)。
【0084】
ステップS1007でずれ量αが記録されると、プロセッサ220は、Tapフラグを立て(S1008;Tapフラグ立つ)、ずれ量αに基づいて座標補正を行い(S1009;座標補正)、補正後の座標及び入力操作があったことを示す情報を出力し(S1010;補正座標・Tap有出力)、
図10のフローを終了する。
【0085】
ステップS1003で、検出対象物の検出位置の補正が開始されていると判定された場合であっても、ステップS1005又はS1006において、現在のステータスが入力操作の検出前と判定されるか入力操作の検出後と判定されるかによって補正量の調整方法が異なる。具体的には、
図9に示すように、入力操作の検出前(点P52~点P53)は、検出対象物がセンサモジュール200に接近することに伴い、ステップS1021においてプロセッサ220は補正量を徐々に増加(漸増)する。一方、入力操作の検出後(点P53~点P54)は、検出対象物がセンサモジュール200に接近することに伴い、ステップS1041においてプロセッサ220は補正量を徐々に小さくする(漸減)。
【0086】
ステップ1021で補正量(漸増)の計算が行われると、プロセッサ220は、計算された補正量に基づいて座標補正を行い(S1022;座標補正)、補正後の座標を示す情報を出力し(S1023;補正座標出力)、
図10のフローを終了する。
【0087】
ステップ1041で補正量(漸減)の計算が行われると、プロセッサ220は、計算された補正量に基づいて座標補正を行い(S1042;座標補正)、補正後の座標を示す情報を出力し(S1043;補正座標出力)、
図10のフローを終了する。ステップS1041の計算を行う場合、プロセッサ220は、記憶部258に記録されたずれ量αを用いて補正量を計算する。
【0088】
図9において、検出対象物が、点P51からセンサモジュール200に接近し、点P52に達してから点P53に達するまでの間、プロセッサ220は、ステップS1021~S1023の処理を行う。検出対象物が点P53に達した場合、プロセッサ220は、ステップS1007~S1010の処理を行う。検出対象物が点P53に達した後、プロセッサ220は、ステップS1041~S1043の処理を行う。
【0089】
[1-11.角度計算]
図11は、本発明の一実施形態に係るセンサシステムの角度計算を説明するフローチャートである。
図11に示す角度計算は、本実施形態における移動情報算出の一例であり、
図10のS1001で、センサモジュール200から検出対象物までの距離が角度判定開始距離AS以下である場合(S1001の「Yes」)に、ステップS1002におけるθ計算で行われる計算である。当該角度θの計算はプロセッサ220によって行われる。
図11では、n番目のフレームに対して行われる角度計算の一例を示す。
【0090】
図11に示すように、まず、プロセッサ220は、(n-4)番目からn番目のフレームに対する座標(n-4)~座標nのx座標及びy座標の平均値(x,y)を計算する(S1101)。続いて、プロセッサ220は、(n-9)番目から(n-5)番目のフレームに対する座標(n-9)~座標(n-5)のx座標及びy座標の平均値(x’,y’)を計算する(S1102)。例えば、座標(n-4)~座標nのx座標及びy座標は第1バッファに格納され、座標(n-9)~座標(n-5)のx座標及びy座標は第2バッファに格納される。第1バッファ及び第2バッファに格納される座標データは、フレーム毎に更新される。そして、プロセッサ220は、平均値(x,y)及び平均値(x’,y’)に基づいて角度θを計算する(S1103)。
【0091】
図11では、座標(n-4)~座標nの5フレームの平均値と、座標(n-9)番目~座標(n-5)の5フレームの平均値と、に基づいて角度計算が行われる構成を例示したが、この構成に限定されない。各々のバッファで平均値を計算するフレーム数は4以下であってもよく6以上であってもよい。ステップS1101において平均値を算出するために用いられる座標のフレーム数とステップS1102において平均値を算出するために用いられる座標のフレーム数とが異なっていてもよい。又は、(n-9)番目からn番目のフレームの10個の座標データに対する近似線に基づいて角度計算が行われてもよい。
【0092】
[1-12.センサシステムの動作(離隔時)]
図12は、本発明の実施形態に係るセンサシステムの動作を説明する模式図である。
図12を用いて、検出対象物が入力判定距離TSよりセンサモジュール200に接近した後に上方(z軸の正方向)に移動する場合において、
図8に示すずれ量αに基づいて補正された座標にカーソルを表示する例について説明する。
【0093】
図12では、
図9と同様に、角度判定開始距離AS、補正開始距離SS、入力判定距離TS、及びターゲット距離ZSが示されており、これらに加えて補正終了距離ESが点線で示されている。補正終了距離ESは、入力判定距離TSと補正開始距離SSとの間に設けられている。
図9と同様に、実線の矢印は検出対象物の実際の動きを示し、太い矢印(内部が白で描かれた矢印)は補正後軌跡を示し、実線の矢印と太い矢印との間において水平に延びる点線の矢印はセンサモジュール200の主面を基準とした各高さ位置における補正量を示す。
図12における点P61~P67は、それぞれ、
図9における点P51~P57に対応する。以下の説明において、
図9と同様の構成については、説明を省略する。
【0094】
図12に示すように、ユーザは、センサモジュール200から検出対象物までの距離が入力判定距離TS以下である位置まで検出対象物をセンサモジュール200に接近させる。この時、プロセッサ220は、上記補正を加味して当該検出対象物によりターゲット表示132への入力がなされたと判断し、インターフェース260を通じて当該判断結果をコンピューティングデバイス300に出力する。コンピューティングデバイス300の制御部302は、当該判断結果をうけて所定の映像信号を表示モジュール110に送信し、これによって表示モジュール110の画面の表示が変化する。当該変化は、例えばターゲット表示132の色が変わる等が挙げられる。これにより、ユーザは、入力を確認し、その後、検出対象物をセンサモジュール200から離間させる。より具体的には、ユーザは、入力判定距離TSとターゲット距離ZSとの間で、検出対象物を上方に移動させる。
図12に示すように、検出対象物が点P61から点P68まで移動する間は、
図9と同様に検出位置の補正及びカーソル表示が行われる。検出対象物が点P68を最下点として上方に移動すると、補正後軌跡も点P69を最下点として上方に移動する。検出対象物が点P68から上方に移動し、センサモジュール200から遠ざかるにしたがって、その検出位置の補正量は徐々に小さくなる。
【0095】
センサモジュール200の表面から補正終了距離ESまでの距離を「ES」とし、あるフレームにおけるセンサモジュール200から検出対象物までの距離をXとすると、点P68から点P70までの間における補正量は以下のように表現することができる。
補正量=α×(X-ES)/(T-ES)
【0096】
上記の構成を換言すると、プロセッサ220は、センサモジュール200から検出対象物までの距離が入力判定距離TSより小さくなるにしたがって、その検出位置の補正量を徐々に小さくし、続いて、検出対象物がセンサモジュール200から離れる方向(z軸の正方向)に移動するにしたがって、検出位置の補正量を徐々に小さくする。
【0097】
検出対象物が点P68から上方に移動し、補正終了距離ESに近づくほど、検出位置の補正量は小さくなる。検出対象物が補正終了距離ESに達したとき(点P70)の当該補正量がゼロになるように上記補正が行われる。つまり、プロセッサ220は、センサモジュール200から検出対象物までの距離が入力判定距離TSと補正開始距離SSとの間の補正終了距離ESに達した場合に検出位置の補正量がゼロになるように制御する。
【0098】
[1-13.センサシステムの動作フローチャート]
図13は、本発明の一実施形態に係るセンサシステムの動作を説明するフローチャートである。
図13に示す各動作は主にプロセッサ220によって実行される。各フレームについて、
図13に示す一連のフローが行われる。
図13に示すフローチャートは、
図10に示すフローチャートと類似している。以下の説明において、
図10のフローチャートと同じステップの説明を省略し、当該フローチャートと相違するステップについて説明する。
【0099】
図13のステップS1301~S1310、S1321~S1323、S1341~S1343、及びS1361は、それぞれ
図10のステップS1001~S1010、S1021~S1023、S1041~S1043、及びS1061と同じステップである。一方で、
図13は、ステップS1381~S1384を有する点において、
図10と相違する。
【0100】
図13のフローチャートでは、ステップS1305においてTapフラグが有りの場合(S1305の「No」)、プロセッサ220は、検出対象物の移動情報について、ベクトル反転の有無を判定する(S1381;ベクトル反転有?)。具体的には、プロセッサ220は、当該移動情報に基づいて、検出対象物がセンサモジュール200に接近しているのか、センサモジュール200から離隔しているのかを判定する。
【0101】
ステップS1381で、プロセッサ220は、検出対象物がセンサモジュール200に接近していると判定すると(S1381の「No」)、補正量(漸減)の算出を行う(S1341;補正量(漸減)計算)。一方、ステップS1305で、プロセッサ220は、検出対象物がセンサモジュール200から離隔していると判定すると(S1381の「Yes」)、検出対象物の検出位置が補正終了距離ESに達しているか否かを判定する(S1382;ES以下?)。
【0102】
ステップS1382においてセンサモジュール200から検出対象物までの距離が補正終了距離ES以下である場合(S1382の「Yes」)、プロセッサ220は、S1381においてベクトルが反転した(検出対象物がセンサモジュール200に接近する動きから離隔する動きに転じた)時のずれ量αをずれ量βとして記録する(S1383;反転時ずれ量αをずれ量βとして記録)。プロセッサ220は、ずれ量βを記憶部258に記録する。ずれ量βは、検出対象物が点P68を最下点として上方に移動した場合において、点P68と点P69との間の距離である。換言すると、ずれ量βは、xy座標における点P68と点P69との距離である。ステップS1383に続いて、ステップS1341で補正量(漸減)の計算が行われる。ステップS1341の計算を行う場合、プロセッサ220は、記憶部258に記録されたずれ量βを用いて補正量を計算する。
【0103】
一方、ステップS1382においてセンサモジュール200から検出対象物までの距離が補正終了距離ESより大きい場合(S1382の「No」)、プロセッサ220は、Tapフラグをクリアし(S1384;Tapフラグクリア)、現在の検出対象物の座標を出力し(S1361)、
図13のフローを終了する。なお、Tapフラグをクリアするとは、Tapフラグを降ろすことを意味する。つまり、Tapフラグをクリアした後は、ステップS1305でTapフラグが無いと判定される。
【0104】
以上のように、本実施形態によると、上記のような新規センサシステムとその駆動方法を提供することができる。特に、非接触式センサモジュールを用いたセンサシステムにおけるセンサモジュールの新規駆動方法を提供することができる。その結果、ユーザがセンサモジュール200の主面に対して斜め方向から検出対象物を近づけた場合であっても、ユーザの意図を反映した入力操作を検出することができる。
【0105】
[1-14.プログラム]
本発明の実施形態に係るプログラムは、上述したセンサシステムにおける表示装置100の駆動方法を実現するためのプログラムであり、コンピューティングデバイス300の制御部302に対し、上記一連の操作を実行させるように構成される。プログラムは、ユーザによる入力をアシストするための映像、すなわち、入力領域を含む映像や入力領域への操作に対応する映像の映像信号を表示モジュール110に提供することを制御部302に実行させるように構成される。また、プログラムは、プロセッサ220が検出対象物の座標及び各種距離(AS、SS、TS、ZS、ES)に基づいて入力操作を検出及び補正量の算出を行うことを制御部302に実行させるように構成される。プログラムはさらに、検出対象物の二次元座標又は三次元座標をプロセッサ220から取得することを制御部302に実行させるように構成される。
【0106】
プログラムは、コンピューティングデバイス300が読み取ることができる媒体に格納された状態で配布されてもよく、あるいは、インターネットなどのネットワークから通信部306を介してダウンロード可能な状態で配布されてもよい。したがって、当該プログラムが記憶された記録媒体も本発明の実施形態に含まれる。
【0107】
[2.第2実施形態]
図14~
図18を参照して、本発明の実施形態の一つであるセンサシステム、センサシステムを駆動するための方法、及びこの方法を実現するためのプログラムについて説明する。
【0108】
[2-1.センサシステムの動作]
上述した構成を備えるセンサシステムにおける表示装置100の動作を説明する。本実施形態では、検出対象物が入力判定距離TS付近で急激に変化した場合であっても、ユーザに違和感を与えない位置検出方法について説明する。
【0109】
図14及び
図15は、本発明の実施形態に係るセンサシステムの動作を説明する模式図である。ユーザが、ターゲット表示132に対する入力操作を行うために検出対象物を移動させ、検出対象物が入力判定距離TSに達する直前に検出対象物の位置が適切ではないと感じ、検出対象物の位置を調整する場合がある。
図14は、検出対象物が入力判定距離TSに達する直前に、ターゲット表示132を選択しようしているユーザが、このままでは検出対象物がターゲット表示131を選択してしまう可能性があると感じ、検出対象物のx軸の正方向の動きを加速させた場合を示す。一方、
図15は、検出対象物が入力判定距離TSに達する直前に、ターゲット表示132を選択しようしているユーザが、検出対象物がターゲット表示133を選択してしまう可能性があると感じ、検出対象物のx軸の正方向の動きを負方向に引き戻した場合を示す。
【0110】
図14の場合、検出対象物が入力判定距離TSに達する直前にx軸の正方向に大きく動いた結果、第1実施形態に示す方法で補正量を計算すると、検出位置をターゲット表示133の位置に補正してしまう場合がある。
図15の場合、検出対象物が入力判定距離TSの達する直前にx軸の負方向に動いた結果、第1実施形態に示す方法で補正量を計算すると、検出位置をターゲット表示131の位置に補正してしまう場合がある。このように、検出対象物の動きが入力判定距離TS付近で急に変化すると、プロセッサ220は、ユーザの意図が反映されない入力操作を検出してしまう場合がある。
【0111】
図16及び
図17を用いて、上記のような現象を抑制するための実施形態について説明する。
図16及び
図17は、本発明の実施形態に係るセンサシステムの動作を説明する模式図である。
図16は、
図14のケースに対応する図である。
図17は、
図15のケースに対応する図である。これらの図面には、角度判定開始距離AS、補正開始距離SS、及び入力判定距離TSが示されている。さらに、これらの図面には、角度判定開始距離ASの位置に基点BPが示されている。当該基点BPは
図9における点P51に対応するもので、上記検出対象物の動きや補正の基準となる点である。
図16や
図17にて説明される実施形態においては、当該基点を検出対象物の動きに合わせて移動させることで、ユーザの意図に沿わない入力操作が抑制される。
【0112】
基点BPは、現在の検出対象物の座標と所定の位置関係にある点である。基点BPは、上記のように、検出対象物の動きが入力判定距離TS付近で急に変化した場合に、誤った位置補正を抑制するために用いられる。あるフレームから次のフレームに移行した場合に、現在の検出対象物の座標を基準として所定の条件の範囲内に基点BPが位置する場合、基点BPの位置は変化しない。一方、基点BPが当該所定の条件の範囲外に位置する場合、基点BPの位置が調整される。本実施形態では、現在の検出対象物の座標を基準としてz軸に対して45°の範囲内に基点BPが位置するか否かによって基点BPの位置を調整する必要性が判断される。ただし、z軸に対する角度は45°に限定されず、用途及び目的に応じて適宜角度を設定することができる。
【0113】
さらに、現在の検出対象物の移動情報(例えば、角度θ)が所定の条件に含まれる場合、プロセッサ220は、当該移動情報を用いずに補正量を算出する。上記の基点BPは、当該所定の条件に含まれるか否かを判定するために用いられてもよく、補正量を算出するために用いられてもよい。
【0114】
上記の基点BPの設定及び調整はプロセッサ220によって制御される。プロセッサ220は、検出対象物がセンサモジュール200に接近し、センサモジュール200から検出対象物までの距離が角度判定開始距離ASに達した点を基点BPとして設定する。さらに、プロセッサ220は、検出対象物の動きに応じて検出対象物が検出された座標を更新し、更新後の検出対象物の座標を基準として、基点BPの位置が所定の範囲外である場合、基点BPを更新後の検出対象物の座標に基づいて移動する。より具体的には、プロセッサ220は、基点BPの位置が、更新後の検出対象物の座標を基準としてz軸に対して45°の範囲外である場合、当該検出対象物の座標を基準としてz軸に対して45°かつセンサモジュール200からの距離が角度判定開始距離ASである位置に基点BPを移動する。
【0115】
図16を用いて具体的に説明する。
図16には、5フレーム分の検出対象物の座標(点P71~P75)が示されている。第1フレームの検出対象物の座標(点P71)は角度判定開始距離ASに達している。この場合、プロセッサ220は、点P71を基点BPとして設定する。第2フレームの検出対象物の座標(点P72)は、補正開始距離SSに達している。この場合、検出対象物の座標は点P71から点P72に更新される。このとき、点P72と点P71とを結ぶ線分とz軸とのなす角θ1は、45°以下である。つまり、基点BPの位置は、z軸に対して点P72を基準として45°の範囲内なので、基点BPの位置は動かない。
【0116】
第3フレーム及び第4フレームの検出対象物の座標は点P73及び点P74である。このとき、点P73と点P71とを結ぶ線分及び点P74と点P71とを結ぶ線分とz軸とのなす角θ2及びθ3は、いずれも45°以下である。つまり、基点BPの位置は、z軸に対して点P73及び点P74を基準として45°の範囲内なので、基点BPの位置は動かない。
【0117】
第5フレームの検出対象物の座標(点P75)は入力判定距離TSに達している。このとき、点P75と点P71とを結ぶ線分とz軸とのなす角θ4は、45°以上である。つまり、基点BPの位置は、z軸に対して点P75を基準として45°の範囲外なので、基点BPの位置は点P76に移動する。
【0118】
上記のような場合、第1実施形態に示す方法で補正量を計算すると、点P75における検出対象物の進行方向に基づく角度θ5に基づいて補正量が計算されるため、プロセッサ220は、ユーザの意図が反映されない入力操作を検出してしまう場合がある。したがって、このような場合は、角度θ5の代わりに、現在の基点BP(点P76)と点P75とを結ぶ線分とz軸とのなす角(45°)に基づいて補正量が計算される。当該なす角は角度θ5に比べて小さいため、補正量がx軸の正方向に過剰に大きくなってしまうことを抑制することができる。
【0119】
本実施形態では、基点BPの位置を調整するか否かを判定する基準の角度を45°とする構成を例示したが、この角度に限定されず、基準となる角度は適宜調整することができる。
【0120】
図17を用いて他の例について具体的に説明する。
図17には、5フレーム分の検出対象物の座標(点P81~P85)が示されている。第1フレームの検出対象物の座標(点P81)は角度判定開始距離ASに達している。この場合、プロセッサ220は、点P81を基点BPとして設定する。第2フレームの検出対象物の座標(点P82)は、補正開始距離SSに達している。この場合、検出対象物の座標は点P81から点P82に更新される。このとき、点P82と点P81とを結ぶ線分とz軸とのなす角ψ1は、45°以下である。つまり、基点BPの位置は、z軸に対して点P82を基準として45°の範囲内なので、基点BPの位置は動かない。
【0121】
第3フレームの検出対象物の座標は点P83である。このとき、点P83と点P81とを結ぶ線分とz軸とのなす角ψ2は45°以下である。つまり、基点BPの位置は、z軸に対して点P83を基準として45°の範囲内なので、基点BPの位置は動かない。
【0122】
第4フレームの検出対象物の座標は点P84である。このとき、点P84と点P81とを結ぶ線分とz軸とのなす角ψ3は45°以上である。つまり、基点BPの位置は、z軸に対して点P84を基準として45°の範囲外なので、基点BPの位置は点P86に移動する。
【0123】
第5フレームの検出対象物の座標(点P85)は入力判定距離TSに達している。このとき、点P85と基点BP(点P86)とを結ぶ線分とz軸とのなす角ψ4は、45°以下である。つまり、基点BPの位置は、z軸に対して点P85を基準として45°の範囲内なので、基点BPの位置は動かない。
【0124】
上記のような場合、第1実施形態に示す方法で補正量を計算すると、点P85における検出対象物の進行方向に基づく角度ψ5に基づいて補正量が計算されるため、プロセッサ220は、ユーザの意図が反映されない入力操作を検出してしまう場合がある。
図17に示すように、x軸において、基点BPから点P85に向かう方向(x軸の正方向)が点P85における検出対象物の進行方向(x軸の負方向)と逆である場合、角度ψ5の代わりに、角度0°を用いて補正量が計算される。この場合、補正量がゼロであるため、点P85で示す検出対象物の座標そのものが検出位置となる。換言すると、基点BPを基準としてx軸の正方向において検出対象物が入力判定距離TSに達した場合、検出対象物がx軸の負方向に移動するときの補正量はゼロである。
【0125】
本実施形態では、上記の条件を満たす場合にプロセッサ220が補正量をゼロにする構成(角度0°を用いて補正量を計算する構成)を例示したが、この構成に限定されない。例えば、上記の条件を満たす場合、プロセッサ220は第1実施形態の方法で計算される補正量よりも小さくなるように補正量を計算してもよい。具体的には、
図17の点P85において、プロセッサ220は、角度ψ5よりも小さな角度を用いて補正量を計算してもよい。つまり、第1実施形態の方法で計算した補正量がx軸の負方向に「10」である場合、第2実施形態の計算方法は、補正量が同方向に「1~9」になるように計算してもよい。
【0126】
[2-2.センサシステムの動作フローチャート]
図18は、本発明の一実施形態に係るセンサシステムの動作を説明するフローチャートである。
図18に示す各動作は主にプロセッサ220によって実行される。各フレームについて、
図18に示す一連のフローが行われる。
図18に示すフローチャートでは、基点BPの位置を調整するか否かを判定する基準の角度が45°である構成を例示するが、上記の通り、当該角度は45°に限定されない。
【0127】
本実施形態におけるフローチャートは、
図10のフローチャートの一部である。具体的には、
図18のステップS1801は、
図10のステップS1001に続くステップであり、
図18のステップS1808~S1811に続いて
図10のステップS1005が行われる。
図18のステップS1802及びS1803は、
図10のステップS1002及びS1003と同じである。
【0128】
図18に示すように、
図10のステップS1001において、センサモジュール200から検出対象物までの距離が角度判定開始距離AS以下である場合、基点BPが記録される(S1801;基点記録)。ステップS1801に続いて、ステップS1002及びS1003と同様に角度θの算出(S1802;θ計算)及び補正開始判定(S1803;SS以下?)が行われる。
【0129】
ステップS1803において、センサモジュール200から検出対象物までの距離が補正開始距離SS以下である場合(S1803の「Yes」)、プロセッサ220は、基点BPと検出対象物の現在の座標とを結ぶ直線のz軸に対する角度ψを記録する(S1804;基点~現在位置を結ぶ直線の角度ψを記録)。
【0130】
ステップS1804において角度ψが記録された後に、プロセッサ220は、角度ψが45°より大きいか否かの判定を行う(S1805;ψ>45°?)。ステップS1805において、角度ψが45°以下である場合(S1805の「No」)、プロセッサ220は、角度θと角度ψとの平面成分が同じ方向か否かの判定を行う(S1806;θとψの平面成分が同じ方向?)。一方、ステップS1805において、角度ψが45°より大きい場合(S1805の「Yes」)、プロセッサ220は、基点BPを移動する。なお、プロセッサ220が基点BPを移動する場合、移動後の角度ψ’が45°以下になるようにプロセッサ220は基点BPを移動する(S1811;基点を移動(移動後のψ’≦45°))。
【0131】
ステップS1806において、z軸に対して角度θを形成するベクトルのx軸方向の成分の向きとz軸に対して角度ψを形成するベクトルのx軸方向の成分の向きとが同じ方向である場合(S1806の「Yes」)、プロセッサ220は、角度θと角度ψの大小関係の比較を行う(S1807;θ≦ψ?)。一方、ステップS1806において、上記2つのx軸方向の成分の向きが逆方向である場合(S1806の「No」)、プロセッサ220は、角度0°に基づいてずれ量αを計算する(S1810;角度0°を採用してずれ量αを計算)。なお、本実施形態においては上記2つのベクトルのx軸方向の成分の向きのみを比較したが、y軸方向の成分の向きを加味して比較してもよい。
【0132】
ステップS1807において、角度θが角度ψ以下である場合(S1807の「Yes」)、プロセッサ220は、角度θに基づいてずれ量αを計算する(S1808;θを採用してずれ量αを計算)。一方、ステップS1807において、角度θが角度ψより大きい場合(S1807の「No」)、プロセッサ220は、角度ψに基づいてずれ量αを計算する(S1809;ψを採用してずれ量αを計算)。
【0133】
上記のように、ステップS1805~S1807の判定によって、プロセッサ220は、ステップS1808~S1811のいずれかの方法でずれ量αを計算し、次のステップ(S1005)の処理を行う。ステップS1005以降の処理は
図10に示す通りに行われる。
【0134】
以上のように、本実施形態によると、第1実施形態と同様の効果を得ることができ、さらに、ユーザが操作する検出対象物が振動する(震えた)場合、又はユーザが入力判定距離TS付近において検出対象物を急に動かした場合であっても、検出位置の補正量を制御することで、ユーザが意図しない入力操作を検出することを抑制することができる。
【0135】
[3.第3実施形態]
図19を参照して、本発明の実施形態の一つであるセンサシステム、センサシステムを駆動するための方法、及びこの方法を実現するためのプログラムについて説明する。
【0136】
[3-1.センサシステムの動作]
図19は、本発明の一実施形態に係るセンサシステムの動作を説明する模式図である。
図19は
図9と類似しているが、
図9では、点P52から点P55に向かって、補正量が徐々に増加する構成を例示したが、
図19では、センサモジュール200から検出対象物までの距離がターゲット距離ZSに達するまでは補正は行われず、当該距離がターゲット距離ZSに達した時点で補正が行われる。
図19の点P91、P93~P97は、それぞれ
図9の点P51、P53~P57に対応する。
【0137】
図19に示すように、検出対象物がセンサモジュール200に接近し、センサモジュール200と検出対象物との距離が角度判定開始距離ASに達した場合(点P91)に、プロセッサ220は、現在の座標における検出対象物の移動方向及びずれ量αの算出を開始する。その後、検出対象物がセンサモジュール200にさらに接近し、当該距離がターゲット距離ZSに達すると(点P93)、プロセッサ220は、検出対象物に対する検出位置の補正を実行する。その後の補正方法は、
図9と同様なので、説明を省略する。
【0138】
図19では特に図示していないが、本実施形態においてカーソル表示を行ってもよい。その場合、カーソル表示は、検出対象物が点P91から点P93の直前までを移動する間は検出対象物と同様に点P91から点P93の直前までを移動し、検出対象物が点P91に達した時点で点P95に移動してもよい。その後、カーソル表示は、点P95から点P97に向かって移動してもよい。
【0139】
各実施形態を基にして、当業者が適宜構成要素の追加、削除、もしくは設計変更を行ったもの、又は工程の追加、省略、もしくは条件変更を行ったものも、本発明の要旨を備えている限り、本発明の範囲に含まれる。
【0140】
上述した各実施形態の態様によりもたらされる作用効果とは異なる他の作用効果であっても、本明細書の記載から明らかなもの、又は当業者において容易に予測し得るものについては、当然に本発明によりもたらされるものと解される。
【符号の説明】
【0141】
100:表示装置、 110:表示モジュール、 112:アレイ基板、 114:対向基板、 116:画素、 118:第1のコネクタ、 120:表示領域、 122:駆動回路、 131~133:ターゲット表示、 200:センサモジュール、 202:センサ基板、 204:カバー基板、 206:センサ電極、 208:第3のコネクタ、 210:第2のコネクタ、 212:端子、 214:センサ領域、 216:ノイズシールド層、 220:プロセッサ、 230:電源回路、 240:検出器、 242:信号検出部、 244:アナログ/デジタル変換部(A/D変換部)、 250:演算素子、 252:信号処理部、 254:座標演算部、 256:判定部、 258:記憶部、 260:インターフェース、 300:コンピューティングデバイス、 302:制御部、 304:記憶部、 306:通信部、 308:音声出力部、 310:電源、 401、402:バッファ、 403、404:平均値、 405:角度計算、 TS:入力判定距離、 AS:角度判定開始距離、 SS:補正開始距離、 ZS:ターゲット距離、 ES:補正終了距離