(57)【要約】【課題】通信機能を持たない物に装置を向けた場合であっても、当該物に関係する情報を出力できるようにする。【解決手段】情報処理装置１は、加速度センサから出力されるデータから情報処理装置１の傾きを求め、地磁気センサから出力されるデータから情報処理装置１の向いている方位を求める。情報処理装置１は、時計２に向けられたときに実行するプログラムとして、自身で計時している時刻を読み上げるプログラムを選択し、選択したプログラムの名称を、時計２に向けられたときに求めた傾きと方位との組に対応付けて記憶する。情報処理装置１は、時計２に向けられた場合、時計２に向けられたときの傾きと方向との組に対応付けられているプログラムの名称を取得し、取得した名称で特定されるプログラムを実行する。【選択図】図５
2014002516.tif 000002
【特許請求の範囲】
【請求項１】
自装置の傾きを検知する傾き検知手段と、
自装置の向いている方位を検知する方位検知手段と、
自装置で実行されるプログラムを記憶する記憶手段と、
前記傾き検知手段で検知された傾きと前記方位検知手段で検知された方位を取得し、取得した傾きと方位の組と、ユーザの操作により選択されたプログラムを識別するプログラム識別情報とを対応付けて前記記憶手段に記憶させる記憶制御手段と、
前記傾き検知手段で検知された傾きと前記方位検知手段で検知された方位を取得し、取得した傾きと方位の組に対応する傾きと方位の組を前記記憶手段に記憶されている傾きと方位の組の中から特定し、特定した組に対応付けられているプログラム識別情報を特定する特定手段と、
前記記憶手段に記憶されているプログラムのうち、前記特定手段で特定されたプログラム識別情報で識別されるプログラムを実行する実行手段と、
前記実行手段で実行されたプログラムが処理する情報を自装置のユーザへ出力する出力手段と
を備える情報処理装置。
【請求項２】
前記特定手段で特定されるプログラム識別情報が複数の場合、特定した複数のプログラム識別情報で特定されるプログラムのいずれか一つを選択して実行すること
を特徴とする請求項１に記載の情報処理装置。
【請求項３】
コンピュータを、
当該コンピュータを備える装置の傾きを検知する傾き検知手段と、
当該コンピュータを備える装置の向いている方位を検知する方位検知手段と、
前記傾き検知手段で検知された傾きと前記方位検知手段で検知された方位を取得し、取得した傾きと方位の組と、ユーザの操作により選択されたプログラムを識別するプログラム識別情報とを対応付けて、当該コンピュータで実行されるプログラムを記憶した記憶手段に記憶させる記憶制御手段と、
前記傾き検知手段で検知された傾きと前記方位検知手段で検知された方位を取得し、取得した傾きと方位の組に対応する傾きと方位の組を前記記憶手段に記憶されている傾きと方位の組の中から特定し、特定した組に対応付けられているプログラム識別情報を特定する特定手段と、
前記記憶手段に記憶されているプログラムのうち、前記特定手段で特定されたプログラム識別情報で識別されるプログラムを実行する実行手段と、
前記実行手段で実行されたプログラムが処理する情報を当該コンピュータを備える装置のユーザへ出力する出力手段
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びプログラムに関する。
【背景技術】
【０００２】
特許文献１には、携帯端末を向けた方向にある装置を特定し、特定した装置のステータスを携帯端末で表示するシステムが開示されている。このシステムによれば、携帯端末を周囲に向けるだけで、向けた方向にある装置のステータスが表示されるため、携帯端末のユーザは、装置のステータスを容易に知ることができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−２９１６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１のシステムでは、携帯端末が向けられた方向にある装置を特定し、特定した装置のステータスを、装置からステータスを取得したサーバ装置、又は向けられた方向にある装置からネットワークを介して取得する。このため、ネットワークに接続可能な装置からは、ステータスを取得することができる。しかしながら、特許文献１のシステムでは、ネットワークに接続されていることが前提であるため、ネットワークに接続されていない物に携帯端末を向けた場合、向けられた物に関連する情報を得ることができない。
【０００５】
本発明は、上述した背景の下になされたものであり、通信機能を持たない物に装置を向けた場合であっても、当該物に関係する情報を出力できるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決するために本発明は、自装置の傾きを検知する傾き検知手段と、自装置の向いている方位を検知する方位検知手段と、自装置で実行されるプログラムを記憶する記憶手段と、前記傾き検知手段で検知された傾きと前記方位検知手段で検知された方位を取得し、取得した傾きと方位の組と、ユーザの操作により選択されたプログラムを識別するプログラム識別情報とを対応付けて前記記憶手段に記憶させる記憶制御手段と、前記傾き検知手段で検知された傾きと前記方位検知手段で検知された方位を取得し、取得した傾きと方位の組に対応する傾きと方位の組を前記記憶手段に記憶されている傾きと方位の組の中から特定し、特定した組に対応付けられているプログラム識別情報を特定する特定手段と、前記記憶手段に記憶されているプログラムのうち、前記特定手段で特定されたプログラム識別情報で識別されるプログラムを実行する実行手段と、前記実行手段で実行されたプログラムが処理する情報を自装置のユーザへ出力する出力手段とを備える情報処理装置を提供する。
【０００７】
本発明においては、前記特定手段で特定されるプログラム識別情報が複数の場合、特定した複数のプログラム識別情報で特定されるプログラムのいずれか一つを選択して実行する構成としてもよい。
【０００８】
また、本発明は、コンピュータを、当該コンピュータを備える装置の傾きを検知する傾き検知手段と、当該コンピュータを備える装置の向いている方位を検知する方位検知手段と、前記傾き検知手段で検知された傾きと前記方位検知手段で検知された方位を取得し、取得した傾きと方位の組と、ユーザの操作により選択されたプログラムを識別するプログラム識別情報とを対応付けて、当該コンピュータで実行されるプログラムを記憶した記憶手段に記憶させる記憶制御手段と、前記傾き検知手段で検知された傾きと前記方位検知手段で検知された方位を取得し、取得した傾きと方位の組に対応する傾きと方位の組を前記記憶手段に記憶されている傾きと方位の組の中から特定し、特定した組に対応付けられているプログラム識別情報を特定する特定手段と、前記記憶手段に記憶されているプログラムのうち、前記特定手段で特定されたプログラム識別情報で識別されるプログラムを実行する実行手段と、前記実行手段で実行されたプログラムが処理する情報を当該コンピュータを備える装置のユーザへ出力する出力手段として機能させるためのプログラムを提供する。
【発明の効果】
【０００９】
本発明によれば、通信機能を持たない物に装置を向けた場合であっても、当該物に関係する情報を出力することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の一実施形態に係る情報処理装置１のハードウェア構成を示した図。
【図２】テーブルＴＢ１の一例を示した図。
【図３】情報処理装置１に設定されたＸ軸、Ｙ軸及びＺ軸を示した図。
【図４】情報処理装置１において実現する機能の構成を示した機能ブロック図。
【図５】実施形態の動作を説明するための図。
【図６】制御部１０２が行う処理の流れを示したフローチャート。
【図７】本発明の一実施形態に係る情報処理装置１のハードウェア構成を示した図。
【図８】テーブルＴＢ２の一例を示した図。
【図９】第２実施形態において実現する機能の構成を示した機能ブロック図。
【図１０】第２実施形態の制御部１０２が行う処理の流れを示したフローチャート。
【発明を実施するための形態】
【００１１】
［第１実施形態］
（実施形態の構成）
図１は、本発明の一実施形態に係る情報処理装置１のハードウェア構成を示したブロック図である。本実施形態の情報処理装置１は、板状の筐体にタッチスクリーンやハードウェアのボタンなどを備えた所謂スマートフォンと呼ばれるコンピュータ装置である。図１に示したように、情報処理装置１の各部はバス１０１により接続されている。
【００１２】
通信部１０５は、無線通信を行う通信インターフェースの機能を備えている。情報処理装置１は、通信部１０５を制御して無線ＬＡＮ（Local Area Network）や移動体通信網に接続し、データ通信や音声通信を行う。
操作部１０４は、情報処理装置１を操作するための複数のハードウェアのボタンを備えている。また、操作部１０４は、画像を表示する表示手段の一例である表示部１０４２と、表示部１０４２の表面に設けられ、表示部１０４２が表示した画像を透過し、指が触れた位置を検出する位置検出部１０４１とが一体化したタッチスクリーン１０４Ａを備えている。なお、表示部１０４２としては、液晶ディスプレイ又は有機ＥＬ（Electro Luminescence）ディスプレイが用いられるが、これらに限定されるものではなく他のディスプレイであってもよい。また、位置検出部１０４１としては、触れている複数の指の位置を検出するもの（例えば静電容量方式のもの）が用いられる。
【００１３】
加速度センサ１０７は、３軸の加速度センサであり、直交するＸ軸、Ｙ軸及びＺ軸に対して働く重力加速度を測定する。加速度センサ１０７は、測定した重力加速度を表すデータを制御部１０２へ出力する。地磁気センサ１０８は、３軸の地磁気センサであり、直交するＸ軸、Ｙ軸及びＺ軸の方向に作用する磁気を測定する。地磁気センサ１０８は、測定した磁気を表すデータを制御部１０２へ出力する。
【００１４】
撮像部１０６は、レンズや固体撮像素子を備えており、レンズによって固体撮像素子に結像した像を表す画像を生成する。マイク／スピーカ部１０９は、マイクロフォンを有している。マイクロフォンは、音声通話の際のユーザの音声を取得する。また、マイク／スピーカ部１０９は、音声や楽音を表すオーディオ信号を音に変換するスピーカを有している。赤外線出力部１１０は、赤外線を出力するＬＥＤ（Light Emitting Diode）を備えており、家電機器を操作するための信号を当該ＬＥＤを用いて出力する。
【００１５】
記憶部１０３は、不揮発性メモリを備えている。記憶部１０３は、オペレーティングシステムを実現させるプログラムＯＳや、各種アプリケーションプログラムを記憶する。情報処理装置１にインストールされて記憶されたアプリケーションプログラムとしては、情報処理装置１が向けられた方向にある物を特定し、特定した物に対応付けられたアプリケーションプログラムを起動するプログラムＡＰ１、ユーザのスケジュールを記憶し、記憶したスケジュールを表示するプログラムＡＰ２、時刻を計時し、計時している時刻を読み上げるプログラムＡＰ３などがある。
【００１６】
また、記憶部１０３は、テーブルＴＢ１を記憶している。図２は、テーブルＴＢ１の構成の一例を示した図である。テーブルＴＢ１の「プログラム」の列には、プログラムＡＰ１により起動されるアプリケーションプログラムの名称が格納される。また、テーブルＴＢ１の「方位角」の列には、予め定められた方向（例えば、東）と情報処理装置１が向いている方向との間の角の角度が格納される。なお、本実施形態の情報処理装置１においては、方位角の表し方としては、右手系東基準を用いている。また、テーブルＴＢ１の「傾き」の列には、水平方向に対する情報処理装置１の傾きの角度が格納される。
なお、本実施形態の情報処理装置１においては、図３に示したように情報処理装置１においてＸ軸、Ｙ軸、Ｚ軸を設定しており、ユーザから見て矩形の表示領域が縦長になるようにし、表示領域の長手方向が画像の上下方向、短手方向が画像の左右方向となるモードを「portrait mode」とし、ユーザから見て矩形の表示領域が横長になるようにし、表示領域の短手方向が画像の上下方向、長手方向が画像の左右方向となるモードを「landscape mode」とする。そして、ユーザが情報処理装置１を「portrait mode」で使用している場合にはＸ軸回りの回転角度を「傾き」の角度とし、ユーザが情報処理装置１を「landscape mode」で使用している場合にはＹ軸回りの回転角度を「傾き」の角度としている。また、説明の便宜上、以下の説明においては、「portrait mode」での使用を想定し、情報処理装置１で画像が表示される側を正面とした場合、側面のうちＹ軸の負方向の側面を先端部と称する。
【００１７】
制御部１０２は、ＣＰＵ（Central Processing Unit）１０２Ａ、ＲＯＭ（Read Only Memory）１０２ＢおよびＲＡＭ（Random Access Memory）１０２Ｃ等を備えている。ＣＰＵ１０２Ａが、ＲＯＭ１０２Ｂに記憶されているＩＰＬ（Initial Program Loader）を実行すると、記憶部１０３に記憶されているプログラムＯＳが実行されてオペレーティングシステムが実現する。
【００１８】
また、制御部１０２においてオペレーティングシステムが実現すると、制御部１０２は、各種アプリケーションプログラムを実行することが可能となる。図４は、プログラムＡＰ１を実行することにより実現する機能ブロックを示した図である。
傾き検知部２０１は、加速度センサ１０７から出力されるデータを基にして、水平方向に対する傾きの角度、即ち、情報処理装置１の傾きの角度を検知する。方位検知部２０２は、地磁気センサ１０８から出力されるデータを基にして情報処理装置１の先端部が向いている方位を求める。
【００１９】
記憶制御部２０３は、検知した傾き及び方位の組と、アプリケーションプログラムの名称とを対応付けてテーブルＴＢ１に記憶させる。特定部２０４は、検知した傾き及び方位の組に対応する傾き及び方位の組をテーブルＴＢ１において特定し、特定した組に対応付けられているプログラムの名称を特定する。実行部２０５は、特定部で特定された名称で識別されるアプリケーションプログラムを記憶部１０３から読みだして実行する。出力部２０６は、実行部２０５で実行されたアプリケーションプログラムが処理する情報を、マイク／スピーカ部又は表示部１０４２に供給する。
【００２０】
（実施形態の動作）
次に本実施形態の動作例について説明する。なお、以下の説明においては、部屋内の所定の位置においてプログラムＡＰ１を使用する場合を例にして動作の説明を行う。
【００２１】
図５は、部屋Ｒ１内の所定の位置Ｐにユーザが位置したときにユーザから見える物を示した図である。図５に示したように、部屋Ｒ１においては、時計２とカレンダー３が壁に掛けられている。また、部屋Ｒ１においては、エアコン４が壁に配置され、テレビ５が床に置かれている。
プログラムＡＰ１が実行されている情報処理装置１において、ユーザが情報処理装置１の先端部を時計２の方向に向けると、先端部を時計２の方向に向けたときに情報処理装置１に作用する重力加速度が加速度センサ１０７で測定される。加速度センサ１０７は、測定した重力加速度を表すデータを出力し、制御部１０２は、加速度センサ１０７から出力されたデータを取得する。制御部１０２は、取得したデータからＸ軸、Ｙ軸、及びＺ軸の方向に作用する重力加速度を求め、情報処理装置１の傾きの角度を求める（図６：ステップＳＡ１）。
【００２２】
また、情報処理装置１においては、Ｘ軸、Ｙ軸及びＺ軸の方向に作用する磁気が地磁気センサ１０８で測定される。地磁気センサ１０８は、測定した磁気を表すデータを出力し、制御部１０２は、地磁気センサ１０８から出力されたデータを取得する。制御部１０２は、取得したデータからＸ軸、Ｙ軸及びＺ軸の方向に作用する磁気を求め、情報処理装置１の先端部が向いている方位角を求める（ステップＳＡ２）。
【００２３】
次に、ユーザが情報処理装置１を時計２に向けたまま、アプリケーションプログラムの登録を指示する操作を行うと（ステップＳＡ３でＹＥＳ）、制御部１０２は、インストールされて記憶部１０３に記憶されているアプリケーションプログラムの一覧が表示されるように表示部１０４２を制御する（ステップＳＡ４）。ユーザが、表示されたアプリケーションプログラムの中から一つを選択し（ステップＳＡ５でＹＥＳ）、選択したアプリケーションプログラムを登録する操作を行うと（ステップＳＡ６でＹＥＳ）、制御部１０２は、選択されたアプリケーションプログラムの名称と、先端部が時計２に向けられているときの情報処理装置１の傾き及び方位角とを対応付けてテーブルＴＢ１に格納する（ステップＳＡ７）。
【００２４】
例えば、ユーザがプログラムＡＰ３を選択し、プログラムＡＰ３を登録する操作を行うと、図２に示したように、プログラムＡＰ３の名称（clock）と、位置Ｐにおいて先端部を時計２に向けたときの情報処理装置１の傾き及び方位角とが対応付けられてテーブルＴＢ１の１行目に格納される。
【００２５】
また、ユーザが情報処理装置１の先端部をカレンダー３に向けたまま、アプリケーションプログラムの登録を指示する操作を行うと、インストールされて記憶部１０３に記憶されているアプリケーションプログラムの一覧が表示される。ここで、例えばユーザがプログラムＡＰ２を選択し、プログラムＡＰ２を登録する操作を行うと、図２に示したように、プログラムＡＰ２の名称（calendar）と、位置Ｐにおいて先端部をカレンダー３に向けたときの情報処理装置１の傾き及び方位角とが対応付けられてテーブルＴＢ１の２行目に格納される。
【００２６】
次に、情報処理装置１の方位角や傾きを替えてアプリケーションプログラムを起動するときの動作について説明する。
まず、ユーザは、プログラムＡＰ１が実行されている情報処理装置１を持って所定の位置Ｐに位置する。次に、ユーザが情報処理装置１の先端部を時計２の方向に向けると、このときに情報処理装置１に作用する重力加速度が加速度センサ１０７で測定される。加速度センサ１０７は、測定した重力加速度を表すデータを出力し、制御部１０２は、加速度センサ１０７から出力されたデータを取得する。制御部１０２は、取得したデータからＸ軸、Ｙ軸及びＺ軸の方向に作用する重力加速度を求め、情報処理装置１の傾きを求める（ステップＳＡ１）。
また、このときにＸ軸、Ｙ軸及びＺ軸の方向に作用する磁気が地磁気センサ１０８で測定される。地磁気センサ１０８は、測定した磁気を表すデータを出力し、制御部１０２は、地磁気センサ１０８から出力されたデータを取得する。制御部１０２は、取得したデータからＸ軸、Ｙ軸及びＺ軸の方向に作用する磁気を求め、情報処理装置１の方位角を求める（ステップＳＡ２）。
【００２７】
次に制御部１０２は、アプリケーションプログラムの登録を指示する操作が行われていない場合（ステップＳＡ３でＮＯ）、実行するアプリケーションプログラムを、求めた方位角と傾きに応じて特定する（ステップＳＡ８）。
具体的には、制御部１０２は、テーブルＴＢ１において、求めた傾きから予め定められた範囲内（例えば、求めた傾きの角度から±５度の範囲内）の角度が格納されている行を特定する。次に制御部１０２は、特定した行のうち、求めた方位角から予め定められた範囲内（例えば、求めた方位角から±５度の範囲内）の角度が格納されている行を特定する。次に、制御部１０２は、この特定した行に格納されているアプリケーションプログラムの名称を取得し、取得した名称で特定されるアプリケーションプログラムを実行する（ステップＳＡ９）。
【００２８】
例えば、情報処理装置１を時計２に向けた場合、求めた傾きから±５度の範囲内にテーブルＴＢ１に格納されているｂ度とｆ度が含まれる場合、１行目と３行目がテーブルＴＢ１において特定される。また、求めた方位角から±５度の範囲内にテーブルＴＢ１に格納されている方位角のａ度が含まれる場合、特定した２つの行のうち、１行目がテーブルＴＢ１において特定される。制御部１０２は、テーブルＴＢ１の１行目に格納されているアプリケーションプログラムの名称「clock」を取得し、この名称で特定されるアプリケーションプログラムであるプログラムＡＰ３を実行する。
【００２９】
プログラムＡＰ３は、時刻を読み上げるプログラムである。このため、制御部１０２がプログラムＡＰ３を実行すると、制御部１０２は、情報処理装置１の内部で計時している時刻を読み上げる音声を表すオーディオ信号を生成する。制御部１０２は、このオーディオ信号を、マイク／スピーカ部１０９へ供給する。マイク／スピーカ部１０９が、このオーディオ信号を取得すると、オーディオ信号がスピーカにより音に変換され、時刻を読み上げる音声が出力される。
【００３０】
つまり、ユーザが所定の位置Ｐにおいて情報処理装置１の先端部を時計２へ向けると、この時点での時刻が読み上げられるため、ユーザは、この時点での時刻を知ることができる。本実施形態によれば、ユーザの視力が悪く、時計の時刻がよく見えない場合であっても、情報処理装置１を時計２に向けるだけで時刻を容易に知ることができる。
【００３１】
また、ユーザが情報処理装置１の先端部をカレンダー３の方向に向けると、先端部を時計２に向けたときと同様に、制御部１０２は、情報処理装置１の傾きと方位角を求める。次に制御部１０２は、実行するアプリケーションプログラムを、求めた方位角と傾きに応じて特定する。この場合、制御部１０２は、アプリケーションプログラムの名称として「calendar」を取得し、この名称で特定されるアプリケーションプログラムであるプログラムＡＰ２を実行する。プログラムＡＰ２は、ユーザのスケジュールを表示するプログラムである。このため、プログラムＡＰ２を実行すると、制御部１０２は、記憶しているユーザのスケジュールを記憶部１０３から取得し、取得したスケジュールが表示されるように表示部１０４２を制御する。
【００３２】
つまり、ユーザが所定の位置Ｐにおいて情報処理装置１の先端部をカレンダー３の方へ向けると、ユーザのスケジュールが表示される。本実施形態によれば、情報処理装置１をカレンダー３に向けるだけでスケジュールを容易に知ることができる。
【００３３】
なお、上述した実施形態においては、アプリケーションプログラムとしては、プログラムＡＰ２やプログラムＡＰ３を例に説明したが、実行可能なアプリケーションプログラムは、これらのプログラムに限定されるものではない。
例えば、情報処理装置１に温度センサや湿度センサを設け、これらのセンサで測定した温度や湿度を表示するアプリケーションプログラムを記憶部１０３に記憶させるようにしてもよい。そして、所定の位置Ｐにおいて部屋内にある温度計や湿度計に情報処理装置１を向けたときの傾きや方位角を測定し、測定した傾き及び方位角と、温度や湿度を表示するアプリケーションプログラムの名称とを対応付けてテーブルＴＢ１に格納するようにしてもよい。この場合、情報処理装置１を部屋内にある温度計や湿度計に向けるだけで、容易に部屋内の温度や湿度を知ることができる。
【００３４】
また、記憶部１０３に記憶されているデジタル写真の表示や、デジタル写真の送信を行うアプリケーションプログラムを記憶部１０３に記憶させるようにしてもよい。そして、所定の位置Ｐにおいて部屋内にあるデジタルフォトフレームに情報処理装置１を向けたときの傾きや方位角を測定し、測定した傾き及び方位角と、デジタル写真の表示や送信を行うアプリケーションプログラムの名称とを対応付けてテーブルＴＢ１に格納するようにしてもよい。この場合、情報処理装置１を部屋内にあるデジタルフォトフレームに向けるだけで、記憶部１０３に記憶されたデジタル写真を表示することができる。
【００３５】
また、アプリケーションプログラムが実行された後、情報処理装置１で表示されているデジタル写真をデジタルフォトフレームへ送信する操作を行うと、赤外線又は電波を用いる所謂近距離無線通信により情報処理装置１とデジタルフォトフレームが通信を行い、デジタルフォトフレームで表示される写真を変更するようにしてもよい。
また、例えば、カレンダー３の方向へ情報処理装置１を向けた場合、プログラムＡＰ２が実行されるが、このプログラムＡＰ２は、情報処理装置１に記憶されているスケジュールだけでなく、インターネットに接続されている装置に記憶されているスケジュール（例えば、情報処理装置１とは異なる装置を用いて予め記憶させた、当該情報処理装置１のユーザのアカウントに同期されたスケジュール）や、ローカルエリアネットワークに接続されている記憶装置に記憶されているスケジュールを取得して表示するようにしてもよい。
なお、情報処理装置１の向きを変えることで起動されたアプリケーションプログラムが通信部１０５を介して送受信できるデータは、前述のような写真やスケジュールのデータに限定されるものではなく、種々のデータを送受信することができる。
【００３６】
［第２実施形態］
次に、本発明の第２実施形態について説明する。本実施形態に係る情報処理装置１は、ハードウェア構成については第１実施形態と同じである。本実施形態においては、記憶しているプログラムと、当該プログラムが実行する処理の流れが第１実施形態と異なる。このため、第一実施形態と同じ構成については、その説明を省略し、以下第一実施形態との相違点について説明する。
【００３７】
本実施形態においては、記憶部１０３は、図７に示したようにプログラムＡＰ１に替えてプログラムＡＰ４を記憶し、テーブルＴＢ１に替えてテーブルＴＢ２を記憶している。また、記憶部１０３は、赤外線リモコンによりコントロールされる家電機器の名称と、当該家電機器をコントロールするときに赤外線リモコンから出力されるコードの一覧とを対応付けたコードテーブルＣＴＢ記憶している。
【００３８】
図８は、テーブルＴＢ２の構成の一例を示した図である。テーブルＴＢ２においては、テーブルＴＢ１と同じく、「プログラム」、「方位角」、「傾き」などの列が設けられている。また、テーブルＴＢ２においては、「家電機器」の列が設けられている。この「家電機器」の列には、テレビやエアコンなど、情報処理装置１で操作する家電機器の名称が格納される。
【００３９】
プログラムＡＰ４は、プログラムＡＰ１の機能に加え、赤外線の信号を用いて他の装置をコントロールする機能を実現するプログラムである。
図９は、プログラムＡＰ４を実行することにより実現する機能ブロックを示した図である。特定部２０４は、第１実施形態の機能に加え、検知した傾き及び方位の組に対応する傾き及び方位の組をテーブルＴＢ２において特定し、特定した組に対応付けられている家電機器の名称を特定する。家電コントロール部２０７は、特定部２０４で特定された家電機器をコントロールするリモコンのコードを記憶部１０３から取得し、取得したコードを表す赤外線の信号が出力されるように赤外線出力部１１０を制御する。
【００４０】
（第２実施形態の動作）
次に本実施形態の動作例について図１０のフローチャートを用いて説明する。図１０は、本実施形態において制御部１０２が行う処理の流れを示したフローチャートである。図１０のステップＳＢ１〜ステップＳＢ７の処理は、第１実施形態のステップＳＡ１〜ステップＳＡ７の処理と同じであるため、その説明を省略する。なお、以下の説明においては、図５に示した部屋Ｒ１内の所定の位置ＰにおいてプログラムＡＰ４を使用する場合を例にして動作の説明を行う。
【００４１】
図５に示したように、部屋Ｒ１においては、エアコン４とテレビ５が配置されている。プログラムＡＰ４が実行されている情報処理装置１において、ユーザが情報処理装置１の先端部をエアコン４の方向に向けると、このときに情報処理装置１に作用する重力加速度が加速度センサ１０７で測定される。加速度センサ１０７は、測定した重力加速度を表すデータを出力し、制御部１０２は、加速度センサ１０７から出力されたデータを取得する。制御部１０２は、取得したデータからＸ軸、Ｙ軸、及びＺ軸の方向に作用する重力加速度を求め、情報処理装置１の傾きを求める（図９：ステップＳＢ１）。
【００４２】
また、このときにＸ軸、Ｙ軸及びＺ軸の方向に作用する磁気が地磁気センサ１０８で測定される。地磁気センサ１０８は、測定した磁気を表すデータを出力し、制御部１０２は、地磁気センサ１０８から出力されたデータを取得する。制御部１０２は、取得したデータからＸ軸、Ｙ軸及びＺ軸の方向に作用する磁気を求め、情報処理装置１の方位角を求める（ステップＳＢ２）。
【００４３】
次に、ユーザが情報処理装置１をエアコン４に向けたまま、家電機器の登録を指示する操作を行うと（ステップＳＢ８でＹＥＳ）、制御部１０２は、記憶部１０３に記憶されている家電機器の名称の一覧が表示されるように表示部１０４２を制御する（ステップＳＢ９）。ユーザが、表示された家電機器の名称の中から一つを選択し（ステップＳＢ１０でＹＥＳ）、選択した家電機器を登録する操作を行うと（ステップＳＢ１１でＹＥＳ）、制御部１０２は、選択された家電機器の名称と、求めた情報処理装置１の傾き及び方位角とを対応付けてテーブルＴＢ２に格納する（ステップＳＢ１２）。
例えば、一覧で表示されている家電機器の名称の中からエアコン４の名称を選択し、選択したエアコン４の名称を登録する操作を行うと、図８に示したように、エアコン４の名称の「ＡＩＲ−２００１」と、位置Ｐにおいて先端部をエアコン４に向けたときの情報処理装置１の傾き及び方位角とが対応付けられてテーブルＴＢ２の５行目に格納される。
【００４４】
また、ユーザが情報処理装置１をテレビ５に向けたまま、家電機器の登録を指示する操作を行うと、記憶部１０３に記憶されている家電機器の名称の一覧が表示される。ここで、一覧で表示されている家電機器の名称の中からテレビ５の名称を選択し、選択したテレビ５の名称を登録する操作を行うと、図８に示したように、テレビ５の名称の「３７−ＡＶ１」と、位置Ｐにおいて先端部をテレビ５に向けたときの情報処理装置１の傾き及び方位角とが対応付けられてテーブルＴＢ２の６行目に格納される。
【００４５】
次に、情報処理装置１の方位角や傾きを替えて家電機器を操作するときの動作について説明する。
まず、ユーザは、プログラムＡＰ４が実行されている情報処理装置１を持って所定の位置Ｐに位置する。次に、ユーザが情報処理装置１の先端部をエアコン４の方向に向けると、このときの情報処理装置１に作用する重力加速度が加速度センサ１０７で測定される。加速度センサ１０７は、測定した重力加速度を表すデータを出力し、制御部１０２は、加速度センサ１０７から出力されたデータを取得する。制御部１０２は、取得したデータからＸ軸、Ｙ軸及びＺ軸の方向に作用する重力加速度を求め、情報処理装置１の傾きを求める（ステップＳＢ１）。
また、このときにＸ軸、Ｙ軸及びＺ軸の方向に作用する磁気が地磁気センサ１０８で測定される。地磁気センサ１０８は、測定した磁気を表すデータを出力し、制御部１０２は、地磁気センサ１０８から出力されたデータを取得する。制御部１０２は、取得したデータからＸ軸、Ｙ軸及びＺ軸の方向に作用する磁気を求め、情報処理装置１の方位角を求める（ステップＳＢ２）。
【００４６】
次に制御部１０２は、アプリケーションプログラムの登録を指示する操作や家電機器の登録を指示する操作が行われていない場合（ステップＳＢ８でＮＯ）、実行するアプリケーションプログラム又はコントロールする家電機器を、求めた方位角と傾きに応じて特定する（ステップＳＢ１３）。
具体的には、制御部１０２は、テーブルＴＢ２において、求めた傾きから予め定められた範囲内（例えば、求めた傾きの角度から±５度の範囲内）の角度が格納されている行を特定する。次に制御部１０２は、特定した行のうち、求めた方位角から予め定められた範囲内（例えば、求めた方位角から±５度の範囲内）の角度が格納されている行を特定する。次に、制御部１０２は、この特定した行に格納されているアプリケーションプログラムの名称又は家電機器の名称を特定する。
【００４７】
制御部１０２は、テーブルＴＢ２から特定したものがアプリケーションプログラムの名称である場合（ステップＳＢ１４でＹＥＳ）、取得した名称のアプリケーションプログラムを実行する（ステップＳＢ１５）。このステップＳＢ１５の処理は、第１実施形態のステップＳＡ９の処理と同じである。
【００４８】
制御部１０２は、テーブルＴＢ２から特定したものが家電機器の名称である場合（ステップＳＢ１４でＮＯ）、特定した家電機器の名称に対応付けられて記憶部１０３に記憶されている、赤外線リモコンのコードを取得する（ステップＳＢ１６）。制御部１０２は、リモコンのコードを取得すると、特定した家電機器をコントロールするためのボタンが配置されたユーザインターフェースの画面が表示されるように表示部１０４２を制御する（ステップＳＢ１７）。
【００４９】
例えば、テレビ５をコントロールするためのリモコンのコードを取得した場合、テレビ５をコントロールするための電源ボタンや音量を変更するためのボタンが表示部１０４２に表示される。ここで、ユーザが音量を大きくするためのボタンの部分に触れると、制御部１０２は、テレビ５の音量を大きくするコードに基づいて赤外線出力部１１０を制御する。赤外線出力部１１０から音量を大きくするコードを表す赤外線の信号が出力され、情報処理装置１から出力された赤外線の信号をテレビ５が受信すると、テレビ５は音量を大きくする。
【００５０】
このように本実施形態によれば、ユーザが所定の位置Ｐにおいて情報処理装置１の先端部をテレビ５へ向けると、テレビ５のリモコン装置と同様に情報処理装置１でテレビ５をコントロールすることができる。
【００５１】
［変形例］
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限定されることなく、他の様々な形態で実施可能である。例えば、上述の実施形態を以下のように変形して本発明を実施してもよい。なお、上述した実施形態及び以下の変形例は、各々を組み合わせてもよい。
【００５２】
上述した実施形態においては、情報処理装置１は、スマートフォンとなっているが、情報処理装置１はスマートフォンに限定されるものではなく、携帯電話機やＰＤＡ（Personal Digital Assistant）やタブレット端末など、携帯できるコンピュータ装置であればよい。
【００５３】
上述した実施形態においては、情報処理装置１の傾きを加速度センサを用いて求めているが、加速度センサに替えてジャイロスコープを備えるようにし、ジャイロスコープにより情報処理装置１の傾きの角度を求めるようにしてもよい。
【００５４】
上述した第２実施形態においては、アプリケーションプログラムを実行する構成となっているが、家電機器をコントロールする機能を備え、アプリケーションプログラムを実行する機能を備えないようにしてもよい。
【００５５】
上述した第２実施形態においては、情報処理装置１が赤外線の信号を出力してエアコン４やテレビ５をコントロールするが、家電機器をコントロールする赤外線の信号は、情報処理装置１が出力しない構成であってもよい。例えば、赤外線出力部１１０を有し、情報処理装置１と無線通信が可能な中継装置を部屋Ｒ１に配置するようにしてもよい。そして、赤外線リモコンのコードを情報処理装置１から中継装置へ送信する。中継装置は、赤外線リモコンのコードを受信し、受信したコードを表す赤外線の信号が出力されるように赤外線出力部１１０を制御する。この構成によれば、情報処理装置１が赤外線出力部１１０を備えない構成であっても家電機器をコントロールすることができる。
【００５６】
上述した実施形態においては、ユーザが所定の位置Ｐに位置した場合の傾きや方位角を記憶部１０３に記憶している。この構成においては、位置Ｐ以外の場所にユーザが位置する場合、位置Ｐ以外の位置から時計２やカレンダー３などへ情報処理装置１を向けたときの傾きや方位角は、位置Ｐにおいて時計２やカレンダー３へ情報処理装置１を向けたときの傾きや方位角とは異なる。そこで、位置Ｐ以外の位置にユーザがいる場合であっても、時計２やカレンダー３の方向へ情報処理装置１が向けられているか否かを特定できるようにしてもよい。
【００５７】
例えば、特開２０１１−６１２４７号公報においては、ある位置においてリモコンをテレビに向けたときの方向と傾きとを記憶し、ユーザの位置が移動した場合には、記憶した方向と傾きとを更新するリモコンが記載されている。この技術によれば、ユーザが移動した場合、移動後の位置からのテレビの方向と傾きとが記憶され、移動後であってもリモコンを向けた機器をコントロールすることができる。特開２０１１−６１２４７号公報に記載された技術を本実施形態に適用すれば、ユーザが位置Ｐから移動しても、時計２に対応付けられたアプリケーションプログラムやカレンダー３に対応付けられたアプリケーションプログラムを実行することができる。また、特開２０１１−６１２４７号公報に記載された技術を本実施形態に適用すれば、ユーザが位置Ｐから移動しても、エアコン４やテレビ５をコントロールすることができる。
【００５８】
上述した実施形態においては、加速度センサや地磁気センサを用いて情報処理装置１の傾きや方位角を特定しているが、傾きや方位角を特定する方法は、上記実施形態の方法に限定されるものではない。
例えば、部屋Ｒ１の３次元モデルを予め作成しておき、時計２、カレンダー３、エアコン４、テレビ５などの位置を３次元モデルにおいて特定しておく。そして、撮像部１０６で部屋Ｒ１内を撮影し、撮影した画像からＳＩＦＴ（Scale Invariant Feature Transform）法やＳＵＲＦ（Speeded Up Robust Features）法などを用いて特徴点を抽出し、撮影された画像と３次元モデルとのマッチングを行う。３次元モデルとのマッチングを行うことにより、部屋Ｒ１内における情報処理装置１の位置、床からの高さ、向いている方向などを特定でき、部屋Ｒ１内のどの物に情報処理装置１が向けられているかを特定し、アプリケーションプログラムを実行したり、家電機器をコントロールすることができる。
【００５９】
また、カメラで得られた画像から方向を特定する技術としては、３次元モデルを使用せずに方向を特定する技術がある。例えば、特開２０１２−２９１６４号公報には、端末が備える撮像部で撮像した画像を解析して画像中の装置の位置を特定し、特定した装置の位置から端末の方向を特定することが記載されている。特開２０１２−２９１６４号公報に記載されている技術を適用して情報処理装置１の向いている方向を特定するようにしてもよい。
【００６０】
上述した実施形態においては、情報処理装置１が特定した方位角や傾きから所定の範囲内に複数の物が位置する場合がある。この場合、情報処理装置１は、実行するアプリケーションプログラムの選択をさせる画面を表示し、実行するアプリケーションプログラムをユーザに選択させるようにしてもよい。なお、実行するアプリケーションプログラムの選択をさせる画面を表示せず、特定した方位角及び傾きで特定される複数のアプリケーションプログラムを実行するようにしてもよい。
【００６１】
上述した実施形態の機能を実現するプログラムは、磁気記録媒体（磁気テープ、磁気ディスク（ＨＤＤ（Hard Disk Drive）、ＦＤ（Flexible Disk）））など、光記録媒体（光ディスクなど）、光磁気記録媒体、半導体メモリなどのコンピュータ読取り可能な記録媒体に記憶した状態で提供し、情報処理装置１にインストールしてもよい。また、通信回線を介して情報処理装置１にダウンロードしてインストールしてもよい。
【符号の説明】
【００６２】
１…情報処理装置、１０１…バス、１０２…制御部、１０２Ａ…ＣＰＵ、１０２Ｂ…ＲＯＭ、１０２Ｃ…ＲＡＭ、１０３…記憶部、１０４…操作部、１０５…通信部、１０６…撮像部、１０７…加速度センサ、１０８…地磁気センサ、１０９…マイク／スピーカ部、１１０…赤外線出力部、２０１…傾き検知部、２０２…方位検知部、２０３…記憶制御部、２０４…特定部、２０５…実行部、２０６…出力部、１０４１…位置検出部、１０４２…表示部
【図１】
2014002516.tif 000003
【図２】
2014002516.tif 000004
【図３】
2014002516.tif 000005
【図４】
2014002516.tif 000006
【図５】
2014002516.tif 000007
【図６】
2014002516.tif 000008
【図７】
2014002516.tif 000009
【図８】
2014002516.tif 000010
【図９】
2014002516.tif 000011
【図１０】
2014002516.tif 000012