(57)【要約】【課題】動的に生成される表示画面に対して適正な触感制御を行う。【解決手段】アプリケーション部２１の、フォースパターン算出部２１４は、データ処理部２１１が生成する表示画面を規定する画面定義データ２１２を解析し、表示画面中のボタンや空白といった表示要素の配置と、オブジェクト属性テーブルに登録された表示要素種別毎のフォースパターンの対応に基づいて、当該表示画面上への入力に対してユーザに与えるフォースのパターンを決定し、フォースパターンテーブル２３４に格納する。コマンダドライバ２３は、ファースパターンテーブルに従って、ハプティックコマンダ１からの入力に対応するフォースを求め、求めたフォースをユーザに与えるよう、ハプティックコマンダ１を制御する。【選択図】図１
2004318460.tif 000002
【特許請求の範囲】
【請求項１】
表示装置と、ユーザに対して与える触感を可変な入力装置と、前記表示装置と前記入力装置とを介してユーザとの間の入出力を行うグラフィカルユーザインタフェースを提供する処理装置とを備えたデータ処理装置であって、
前記処理装置は、
前記表示装置に出力する表示画面を生成する表示画面生成手段と、
前記表示画面生成手段が生成した表示画面の前記表示装置への出力開始時に、当該表示画面を構成する各表示画面構成要素の当該表示画面内の配置に従って、入力と当該入力に対してユーザに与える触感との関係を算定し、触感制御パターンとして設定する触感制御パターン設定手段と、
前記触感制御パターン設定手段が設定した触感制御パターンに従って、前記入力装置がユーザに対して与える触感を、前記入力装置からの入力に応じて制御する触感制御手段とを有することを特徴とするデータ処理装置。
【請求項２】
請求項１記載のデータ処理装置であって、
前記触感制御パターン設定手段は、前記表示画面生成手段が生成した表示画面の前記表示装置への出力開始時に、当該表示画面を構成する各表示画面構成要素の当該表示画面内の配置に従って、各表示画面構成要素の種別に対して予め定めておいた、入力と触感との関係を示す触感パターンを連結し、前記触感制御パターンとして設定することを特徴とするデータ処理装置。
【請求項３】
請求項２記載のデータ処理装置であって、
前記表示画面構成要素は、少なくとも、ユーザ操作を受け付けるための操作受付用表示オブジェクトまたは前記操作受付用表示オブジェクトの組み合わせと、前記表示画面中の前記操作受付用表示オブジェクトの不在部分であるところの操作受付用表示オブジェクト間空白とを含むことを特徴とするデータ処理装置。
【請求項４】
請求項２記載のデータ処理装置であって、
前記入力装置は、ユーザが回転操作可能な操作部と、操作部の回転角度を検出する回転検出手段と、前記操作部に回転方向の力を加えるアクチュエータとを備え、
前記触感制御パターン設定手段は、前記操作部の回転角度と前記操作部に加える力との関係のパターンとして、前記触感制御パターンを設定し
前記触感制御手段は、前記触感制御パターンに従って、前記回転検出手段が検出した回転角度に応じた力を前記操作部に加えるよう前記アクチュエータを制御することを特徴とするデータ処理装置。
【請求項５】
請求項２記載のデータ処理装置であって、
前記触感制御パターン設定手段は、前記表示画面を構成する各表示画面構成要素について、当該表示画面構成要素の種別に対して予め定めておいた触感パターンが、当該表示画面構成要素の表示範囲内の位置を示すものとみなす前記入力装置からの入力に対してユーザに与える触感パターンとなるように、各触感パターンを連結し、前記触感制御パターンとして設定することを特徴とするデータ処理装置。
【請求項６】
請求項５記載のデータ処理装置であって、
前記入力装置は、前記表示画面上の座標を入力するポインティングデバイスであることを特徴とするデータ処理装置。
【請求項７】
表示装置と、ユーザに対して与える触感を可変な入力装置とを介してユーザとの間の入出力を行うグラフィカルユーザインタフェースを制御するユーザインタフェース制御方法であって、
前記表示装置に出力する表示画面を生成するステップと、
生成された表示画面の前記表示装置への出力開始時に、当該表示画面を構成する各表示画面構成要素の当該表示画面内の配置に従って、入力と当該入力に対してユーザに与える触感との関係を算定し、触感制御パターンとして設定するステップと、
設定した触感制御パターンに従って、前記入力装置がユーザに対して与える触感を、前記入力装置からの入力に応じて制御するステップとを有することを特徴とするユーザインタフェース制御方法。
【請求項８】
請求項７記載のユーザインタフェース制御方法であって、
前記触感制御パターンは、生成された表示画面の前記表示装置への出力開始時に、当該表示画面を構成する各表示画面構成要素の当該表示画面内の配置に従って、各表示画面構成要素の種別に対して予め定めておいた、入力と触感との関係を示す触感パターンを連結することにより算出することを特徴とするユーザインタフェース制御方法。
【請求項９】
請求項８記載のユーザインタフェース制御方法であって、
前記表示画面構成要素は、少なくとも、ユーザ操作を受け付けるための操作受付用表示オブジェクトまたは前記操作受付用表示オブジェクトの組み合わせと、前記表示画面中の前記操作受付用表示オブジェクトの不在部分であるところの操作受付用表示オブジェクト間空白とを含むことを特徴とするユーザインタフェース制御方法。
【請求項１０】
請求項８記載のユーザインタフェース制御方法であって、
前記入力装置は、ユーザが回転操作可能な操作部と、操作部の回転角度を検出する回転検出手段と、前記操作部に回転方向の力を加えるアクチュエータとを備えた入力装置であって、
前記触感制御パターンは、前記操作部の回転角度と前記アクチュエータによって前記操作部に加える力との関係のパターンであることを特徴とするユーザインタフェース制御方法。
【請求項１１】
請求項８記載のユーザインタフェース制御方法であって、
前記表示画面を構成する各表示画面構成要素について、当該表示画面構成要素の種別に対して予め定めておいた触感パターンが、当該表示画面構成要素の表示範囲内の位置を示すものとみなす前記入力装置からの入力に対してユーザに与える触感パターンとなるように、各触感パターンを連結し、前記触感制御パターンとして設定することを特徴とするユーザインタフェース制御方法。
【請求項１２】
表示装置と、ユーザに対して与える触感を可変な入力装置とを備えたコンピュータシステムによって読み込まれ実行されるコンピュータプログラムであって、
前記コンピュータシステムを、
前記表示装置に出力する表示画面を生成する表示画面生成手段と、
前記表示画面生成手段が生成した表示画面の前記表示装置への出力開始時に、当該表示画面を構成する各表示画面構成要素の当該表示画面内の配置に従って、入力と当該入力に対してユーザに与える触感との関係を算定し、触感制御パターンとして設定する触感制御パターン設定手段と、
前記触感制御パターン設定手段が設定した触感制御パターンに従って、前記入力装置がユーザに対して与える触感を、前記入力装置からの入力に応じて制御する触感制御手段として機能させることを特徴とするコンピュータプログラム。
【請求項１３】
請求項１２記載のコンピュータプログラムであって、
前記触感制御パターン設定手段は、前記表示画面生成手段が生成した表示画面の前記表示装置への出力開始時に、当該表示画面を構成する各表示画面構成要素の当該表示画面内の配置に従って、各表示画面構成要素の種別に対して予め定めておいた、入力と触感との関係を示す触感パターンを連結し、前記触感制御パターンとして設定することを特徴とするコンピュータプログラム。
【請求項１４】
請求項１３記載のコンピュータプログラムであって、
前記表示画面構成要素は、少なくとも、ユーザ操作を受け付けるための操作受付用表示オブジェクトまたは前記操作受付用表示オブジェクトの組み合わせと、前記表示画面中の前記操作受付用表示オブジェクトの不在部分であるところの操作受付用表示オブジェクト間空白とを含むことを特徴とするコンピュータプログラム。
【請求項１５】
請求項１３記載のコンピュータプログラムであって、
前記入力装置は、ユーザが回転操作可能な操作部と、操作部の回転角度を検出する回転検出手段と、前記操作部に回転方向の力を加えるアクチュエータとを備え、
前記触感制御パターン設定手段は、前記操作部の回転角度と前記操作部に加える力との関係のパターンとして、前記触感制御パターンを設定し
前記触感制御手段は、前記触感制御パターンに従って、前記回転検出手段が検出した回転角度に応じた力を前記操作部に加えるよう前記アクチュエータを制御することを特徴とするコンピュータプログラム。
【請求項１６】
請求項１３記載のコンピュータプログラムであって、
前記触感制御パターン設定手段は、前記表示画面を構成する各表示画面構成要素について、当該表示画面構成要素の種別に対して予め定めておいた触感パターンが、当該表示画面構成要素の表示範囲内の位置を示すものとみなす前記入力装置からの入力に対してユーザに与える触感パターンとなるように、各触感パターンを連結し、前記触感制御パターンとして設定することを特徴とするコンピュータプログラム。
【請求項１７】
請求項１６記載のコンピュータプログラムであって、
前記入力装置は、前記表示画面上の座標を入力するポインティングデバイスであることを特徴とするコンピュータプログラム。
【請求項１８】
表示装置と、ユーザに対して与える触感を可変な入力装置とを備えたコンピュータシステムによって読み込まれ実行されるコンピュータプログラムを記憶した記憶媒体であって、
前記コンピュータプログラムは、前記コンピュータシステムを、
前記表示装置に出力する表示画面を生成する表示画面生成手段と、
前記表示画面生成手段が生成した表示画面の前記表示装置への出力開始時に、当該表示画面を構成する各表示画面構成要素の当該表示画面内の配置に従って、入力と当該入力に対してユーザに与える触感との関係を算定し、触感制御パターンとして設定する触感制御パターン設定手段と、
前記触感制御パターン設定手段が設定した触感制御パターンに従って、前記入力装置がユーザに対して与える触感を、前記入力装置からの入力に応じて制御する触感制御手段として機能させることを特徴とする記憶媒体。
【請求項１９】
請求項１８記載の記憶媒体であって、
前記触感制御パターン設定手段は、前記表示画面生成手段が生成した表示画面の前記表示装置への出力開始時に、当該表示画面を構成する各表示画面構成要素の当該表示画面内の配置に従って、各表示画面構成要素の種別に対して予め定めておいた、入力と触感との関係を示す触感パターンを連結し、前記触感制御パターンとして設定することを特徴とする記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、触感をインタフェース要素として用いるユーザインタフェースの技術に関するものである。
【０００２】
【従来の技術】
触感をインタフェース要素として用いるユーザインタフェースの技術としては、トラックボールやマウスやジョイスティックなどのポインティングデバイスに、ユーザ操作に抗する力を発生する機構や、振動を発生する機構を備え、表示画面上に表示したメニューボタンなどの表示オブジェクトとポインティングデバイスによって操作されるカーソルの位置との関係を監視し、表示オブジェクトとカーソルの位置関係が所定の関係になったことが検出されたときに、ポインティングデバイスから所定の触感をユーザに伝える技術が知られている（たとえば、上記特開平１１？３０５９３８号公報、特開平８？９５６９３号公報、特開平１０？１９８５２１号公報）。
【０００３】
この出願の発明に関連する先行技術文献情報としては以下のものがある。
【０００４】
【特許文献１】
特開平１１？３０５９３８号公報
【０００５】
【特許文献２】
特開平０８？０９５６９３号公報
【０００６】
【特許文献３】
特開平１０？１９８５２１号公報
【０００７】
【発明が解決しようとする課題】
前記従来の触感をインタフェース要素として用いるユーザインタフェースの技術によれば、カーソルと表示オブジェクトの位置関係の判定の処理等に要する時間のためなどに、ユーザ操作とユーザに伝えられる触感の間に乗じるタイムラグのために。ユーザに不自然な触感を与えてしまうことがある。
【０００８】
一方、表示オブジェクトとカーソルとの関係に対して触感を定義するのではなく、予め表示画面の設計時に、ユーザに与える触感をポインティングデバイスからの入力（たとえば、入力座標など）に対して直接的に、表示画面上のメニューボタンなどのレイアウトに応じて定義しておくようにすれば、ユーザに与える触感をユーザ操作より直接定めることができるため、ユーザ操作とユーザに伝えられる触感との間の時間差を実質上無くし、ユーザに適正な触感を与えることができるようになる。
【０００９】
しかし、このように表示画面設計時にユーザに与える触感をポインティングデバイスの入力に対して直接的に定義する手法は、表示画面のレイアウトが固定的である場合にしか適用することができず、先行する処理の結果に応じて表示画面のレイアウトが変更する表示画面、たとえば、先行する検索処理の結果に応じて表示画面上に配置されるメニューボタンの数が変化するような表示画面に対しては適用することができない、
そこで、本発明は、任意の表示画面について、表示画面に対する入力装置のユーザ操作に対してユーザに与える触感を適正に制御することを課題とする。
【００１０】
【課題を解決するための手段】
前記課題達成のために、本発明は、表示装置と、ユーザに対して与える触感を制御可能な入力装置と、前記表示装置と前記入力装置とを介してユーザとの間の入出力を行うグラフィカルユーザインタフェースを提供する処理装置とを備えたデータ処理装置において、前記処理装置に、前記表示装置に出力する表示画面を生成する表示画面生成手段と、前記表示画面生成手段が生成した表示画面の前記表示装置への出力開始時に、当該表示画面を構成する各表示画面構成要素の当該表示画面内の配置に従って、入力と当該入力に対してユーザに与える触感との関係を算定し、触感制御パターンとして設定する触感制御パターン設定手段と、触感制御パターンとして設定する触感制御パターン設定手段と、前記触感制御パターン設定手段が設定した触感制御パターンに従って、前記入力装置がユーザに対して与える触感を、前記入力装置からの入力に応じて制御する触感制御手段とを備えたものである。
【００１１】
このようなデータ処理装置によれば、予めレイアウトが定まらない表示画面に対しても、当該表示画面の表示開始時に、表示画面を構成する各表示画面構成要素の当該表示画面内の配置に従って、入力と当該入力に対してユーザに与える触感との関係を算定することにより、ユーザに与える触感を、表示画面の表示内容と整合するように設定し、以降、当該設定に従って入力装置からの入力に応じてユーザに触感を与えることができる。したがって、任意の表示画面について、表示画面に対する入力装置のユーザ操作に対してユーザに与える触感を適正に制御することができるようになる。また、入力装置の入力値に対して直接触感パターンを設定するようにすることもでき、この場合には、ユーザ操作とユーザに伝えられる触感との間の時間差を実質上無くし、ユーザに適正な触感を与えることができるようになる。
ここで、このようなデータ処理装置における触感制御パターンの設定は、たとえば、前記表示画面生成手段が生成した表示画面の前記表示装置への出力開始時に、当該表示画面を構成する各表示画面構成要素の当該表示画面内の配置に従って、各表示画面構成要素の種別に対して予め定めておいた、入力と触感との関係を示す触感パターンを連結し、前記触感制御パターンとして設定することにより実現するようにしてもよい。
【００１２】
また、このようなデータ処理装置における触感制御パターンの設定は、より具体的には、たとえば、前記触感制御パターン設定手段において、前記表示画面に含まれる各表示画面構成要素について、当該表示画面構成要素の種別に対して予め定めておいた触感パターンが、当該表示画面構成要素の表示範囲内の位置を示すものとみなす前記入力装置からの入力に対してユーザに与える触感パターンとなるように、各触感パターンを連結し、前記触感制御パターンとして設定することにより行うようにしてもよい。
または、前記入力装置として、ユーザが回転操作可能な操作部と、操作部の回転角度を検出する回転検出手段と、前記操作部に回転方向の力を加えるアクチュエータとを備えた入力装置を用いる場合には、前記触感制御パターン設定手段において、前記操作部の回転角度と前記操作部に加える力との関係のパターンとして、前記触感制御パターンを設定し、前記触感制御手段において、前記触感制御パターンに従って、前記回転検出手段が検出した回転角度に応じた力を前記操作部に加えるよう前記アクチュエータを制御するようにしてもよい。
なお、前記表示画面構成要素には、たとえば、ユーザ操作を受け付けるための操作受付用表示オブジェクト又はの操作受付用表示オブジェクトの組み合わせや、前記表示画面中の前記操作受付用表示オブジェクトの不在部分であるところの操作受付用表示オブジェクト間空白などを設定することができる
【００１３】
【発明の実施の形態】
以下、本発明の実施形態について説明する。
図１に本実施形態に係るデータ処理システムの構成を示す。
図示するように、本データ処理システムは、ユーザに伝える触感を制御することのできる入力装置であるパプティックコマンダ１と、電子計算機などであるデータ処理装置２と、表示装置３とを有している。
ハプティックコマンダ１は、図２ａの外観図に示すように、水平方向の回転、前後左右とその間の８水平方向への移動又は傾け、垂直方向の押し下げ操作が可能なコマンダノブ１１を有する。また、ハプティックコマンダ１は、図１に示すように、コマンダノブ１１の水平方向の回転角を検出するロータリセンサ１２と、コマンダノブ１１の垂直方向への押し下げの有無を検出するプッシュセンサ１３と、コマンダノブ１１の８水平方向それぞれへの移動又は傾きの有無を検出する水平方向センサ１４と、コマンダノブ１１に水平回転方向へのトルクを与えるＤＣモータなどのアクチュエータ１５とを有している。
【００１４】
このようなハプティックコマンダ１は様々な構造により実現できるが、一例を挙げれば、図２ｂの模式構成図に示すように、コマンダノブシャフト１７を垂直方向に滑動可能に保持すると共にコマンダノブシャフト１７を自身と共に水平方向に回転させるロータ１８と、ロータ１８を水平方向に回転可能に保持する傾け可能な可傾部材１９と、ユーザから力を加えられていない状態において、可傾部材１９を正立位置に保ち、コマンダノブ１１を垂直方向に関して中立位置に保つ板バネ１６の群などの付勢機構と、可傾部材１９中に配置されロータリにプーリ１５ａを介してトルクを与えるアクチュエータ１５と、ロータリセンサ１２と、コマンダノブシャフト１７の下方への押し下げを検出するプッシュセンサ１３と、可傾部材１９の傾きを検出するように配置された水平方向センサ１４とより構成することができる。
【００１５】
図１に戻り、このようなハプティックコマンダ１の構成において、ロータリセンサ１２が検出した回転角は回転データとして、水平方向センサ１４が検出した移動または傾きの有無は水平方向データとして、プッシュセンサ１３が検出した垂直方向への押し下げの有無はプッシュデータとして、データ処理装置２に出力される。また、アクチュエータ１５は、データ処理装置２からの制御に従って、コマンダノブ１１にトルクを与える。
【００１６】
次に、データ処理装置２は、ＧＵＩ（グラフィックインタフェース）をユーザに提供し当該ＧＵＩにより受け付けたユーザ操作に応じてデータ処理を行うアプリケーション部２１と、表示装置３やハプティックコマンダ１とデータ処理装置２との間の入出力の処理などのＧＵＩ上の処理を行うＧＵＩ制御部２２と、ハプティックコマンダ１との間のデータ入出力処理とハプティックコマンダ１のアクチュエータ１５が発生するトルク制御の処理を行うコマンダドライバ２３とを有している。ここで、データ処理装置２は、オペレーティングシステム上でアプリケーションプロセスが稼働する装置として構成するようにしてよく、この場合には、アプリケーション部２１は、このようなアプリケーションプロセスの一つであってよく、ＧＵＩ制御部２２はオペレーティングシステムの機能の一部としてアプリケーション部２１に提供される機能であってよい。また、コマンダドライバ２３はオペレーティングシステムにデバイスドライバとして組み込まれるものであってよい。
【００１７】
さて、アプリケーション部２１は、データ処理を行い適宜、表示画面を定義する画面定義データ２１２を生成するデータ処理部２１１、表示画面の画像としての内容を表す描画情報２２３と表示画面上でユーザ操作を受け付けるオブジェクトであるボタンを定義するボタン情報２２４とを画面定義データ２１２に基づいて生成しＧＵＩ制御部２２に出力する画面出力処理部２１３、画面定義データ２１２と後に説明するオブジェクト属性デーブル２１５とに基づいてフォースパターンを算出するフォースパターン算出部２１４とを有する。
【００１８】
そして、ＧＵＩ制御部２２は、アプリケーション部２１から渡された描画情報２２３に従い表示画面を表示装置３に表示する表示制御部２２２と、アプリケーション部２１から渡されたボタン情報２２４と、コマンダドライバ２３を介して入力するハプティックコマンダ１からの入力情報を解析し、ボタンに対するユーザ操作の内容を示すメッセージをデータ処理部２１１に送る入力解析部２２１とを有する。
【００１９】
次に、コマンダドライバ２３は、ハプティックコマンダ１から入力する、回転データ、水平方向データ、プッシュデータを、ＧＵＩ制御部２２に中継する入力処理部２３１と、ハプティックコマンダ１から入力する回転データからコマンダノブ１１の回転方向と回転速度を算出する回転速度検出部２３２と、アプリケーション部２１から設定されたフォースパターンテーブル２３４に従ってアクチュエータ１５を制御し、コマンダノブ１１に与えるトルクの回転方向と強さを制御するフォース制御部２３３とを有する。
【００２０】
次に、図３ａに、アプリケーション部２１が設定するフォースパターンテーブル２３４の内容を示す。
図示するようにフォースパターンテーブル２３４は、コマンダノブ１１に与えるトルクであるフォースのパターンを、コマンダノブ１１の回転方向と回転角度の組毎に、回転角度の関数として定義するものである。ただし、フォースは直接数値として定義するようにしてもかまわない。
【００２１】
さて、フォース制御部２３３は、コマンダノブ１１の回転方向と回転速度から現在のコマンダノブ１１の回転方向と回転角度を算出し、算出した回転方向と回転角度に対してフォースパターンテーブル２３４で定義されているトルクを、アクチュエータ１５を制御してコマンダノブ１１に与える。但し、コマンダノブ１１の回転角度の基準（０度）は、フォースパターン算出部２１４からリセットを指示された時点におけるコマンダノブ１１の角度である。
【００２２】
次に、図３ｂに、アプリケーション部２１が設定するボタン情報２２４を示す。
ボタン情報２２４は、アプリケーション部２１が描画情報２２３として設定した表示画面に含めたボタンの情報であり、各ボタンのＩＤと、そのボタンの選択用に割り当てるコマンダノブ１１の回転角の範囲と、そのボタンに対して決定操作が成された場合に、データ処理部２１１に送るメッセージの値（図中ではＶａｌｕｅ）が記述されている。
【００２３】
そして、ＧＵＩ制御部２２の入力解析部２２１は、コマンダドライバ２３から受け取った回転データから求まる現在のコマンダノブ１１の回転角度が、ボタン情報２２４に定義された、いずれかのボタンに割り当てた角度範囲内に変化するとデータ処理部２１１に、そのボタンの選択状態への遷移を伝えるメッセージをそのボタンのＩＤと共に通知する。ただし、コマンダノブ１１の回転角度の基準（０度）は、画面出力処理部２１３からリセットを指示された時点におけるコマンダノブ１１の角度である。
【００２４】
また、ＧＵＩ制御部２２の入力解析部２２１は、いずれかのボタンが選択状態にあるときに、コマンダドライバ２３から受け取ったプッシュデータがプッシュスイッチのオンを示したならば、選択状態にあるボタンに対してボタン情報２２４に定義された値のメッセージをデータ処理部２１１に送る。
【００２５】
次に、アプリケーション部２１のデータ処理部２１１は、表示画面を適宜切替えながら、ユーザ操作を受付け、所定のデータ処理を行う。表示画面の切替は、画面定義データ２１２を生成し、フォースパターン算出部２１４と画面出力処理部２１３にリセットを指示することにより行う。また、ユーザ操作の受付は、ＧＵＩ制御部２２からのメッセージの受信によって行う。一方、フォースパターン算出部２１４は、リセットを指示されると、画面定義データ２１２とオブジェクト属性デーブル２１５に基づいて、新しいフォースパターンを算出し、フォースパターンテーブル２３４に格納されているフォースパターンの定義を新しいフォースパターンの定義に更新し、フォース制御部２３３にリセットを指示する。また、画面出力処理部２１３は、リセットが指示されると、画面定義データ２１２に基づいて、描画情報２２３を更新し、入力解析部２２１にリセットを指示する。
【００２６】
以下、フォースパターン算出部２１４が、以上のようにして算出するフォースパターンについて説明する。
ここで以下では、説明の明瞭化のために、アプリケーション部２１が用いる表示画面のレイアウトが、図４ａに示すように、表示画面上に設定した１から１６までの１６個のボタン配置領域のうちの、任意数の任意位置のボタン領域に、たとえば、図４ｃに示すように、ボタンを配置するものに統一されている場合を例にとり説明する。
【００２７】
この場合、各ボタン領域に、そのボタン領域に配置されたボタンを選択するためコマンダノブ１１の回転角の範囲を、たとえば、図４ｂに示すように予め定義する。すなわち、図示した例では、ａ／１６度毎の角度範囲を、順次、１から１６までのボタン配置領域に、ボタン領域の配置の時計廻り順に、循環的に、１番目のボタン領域の角度範囲の中心が０度となるように定義する。すなわち、ａの剰余が、３１ａ／３２からａ未満となるコマンダノブ１１の角度範囲と、０以上ａ／３２となるコマンダノブ１１の角度範囲は、１番目のボタン領域に配置されたボタンを選択するための角度範囲として定義する。そして、２から１６のボタン領域については、ａの剰余が、（？ａ／３２）＋｛（ｉ？１）ａ／１６｝から（？ａ／３２）＋（ｉａ／１６）となるコマンダノブ１１の角度範囲は、ｉ番目のボタン領域に配置されたボタンを選択するための角度範囲として定義する。
【００２８】
ここで、図５ａに、データ処理部２１１が生成する画面定義データ２１２の例を示す。
この例における、第１行目のｉｍａｇｅには表示画面に背景として表示する画像Ａと、画像Ａの表示画面上の配置領域ｘ，ｙ？ｘ，ｙが記述されている。また、残りの各行のｂｕｔｔｏｎには、表示画面に配置するボタンについての情報が記述されている。
【００２９】
すなわち、ｂｕｔｔｏｎの各行の、ｔｙｐｅはボタンの種類を示し、ｓｔｙｌｅはボタンの表示色などの表示スタイルを示し、ｌａｂｅｌはボタン中に表示するテキストを示し、ｖａｌｕｅはボタンに対して決定操作がされたときにＧＵＩ制御部２２がデータ出力部に送るメッセージの値（ボタン情報２２４にｖａｌｕｅとして登録する値）を、ｘ，ｙ？ｘ，ｙはボタンの表示画面上の配置領域を示している。ここで、本実施形態では、ボタンの種類として、ユーザの処理実行要求を受け付けるためのコマンドボタンと、ユーザの項目選択を受け付けるためのアイテムボタンとを用いるものとする。
【００３０】
次に、図５ｂに、オブジェクト属性デーブル２１５の例を示す。
図示するように、オブジェクト属性デーブル２１５には、ボタンや空白といった表示画面の表示要素に対するフォースパターンを予め定義するものであり、図示した例では、ボタンのタイプ毎に定義したフォースパターンと、空白に対して定義したフォースパターンがオブジェクト属性デーブル２１５に登録されている。
【００３１】
各フォースパターンにおいて。図中横軸が回転角度を表し、右方向が時計廻り方向である。また、図中縦軸がコマンダノブ１１に与えるトルクを表し正が時計廻りのトルクを、負が反時計廻りのトルクを表す。そして、ＭｉｎθとＭａｘθは、ボタンまたは空白に対応するコマンダノブ１１の角度範囲の時計廻りに計った下限点と上限点に、当該フォースパターン上で対応する点を表している。また、各フォースパターン中の実線のパターンは、コマンダノブ１１が時計廻りに回転操作されている場合に使用するフォースパターンを、波線のフォースパターンは、コマンダノブ１１が半時計廻りに回転操作されている場合に使用するフォースパターンを示している。
【００３２】
なお、図示したボタンに対して定義したフォースパターンによれば、ボタンに対応する角度範囲境界点からボタンに対応する角度範囲の中心角度までコマンダノブ１１を回転していくと、ユーザの操作に反対する力は漸減し、ボタン対応角度範囲の中心角度で０となる。そして、その後、さらに、ボタンに対応する角度範囲の中心角度からボタンに対応する角度範囲外にコマンダノブ１１を回転していくと、また、ユーザの操作に反対する力は、ボタン対応角度範囲の境界点まで漸増していく。すなわち、ユーザに対して、ユーザ操作をボタン中心角度に誘導するような触感を与える力が働く。そして、このような誘導する力が、コマンドボタンにおいて強く、アイテムボタンにおいて弱く作用するように定義されている。
【００３３】
また、図示したボタンに対して定義したフォースパターンによれば、空白に対応する角度範囲境界点から空白に対応する角度範囲の中心角度までコマンダノブ１１を回転していくと、ユーザの操作に反対する力は、徐々に増加し空白対応角度範囲の中心角度で最大となる。そして、その後、空白に対応する角度範囲の中心角度からボタンに対応する角度範囲外にコマンダノブ１１を回転していくと、ユーザの操作に反対する力は、徐々に弱まっていく。すなわち、ユーザに対して、空白を障害と触感させるような力が働く。
【００３４】
なお、いずれのフォースパターンも、同じ回転方向のユーザ操作に対して、境界点（Ｍｉｎθ、Ｍａｘθ）において加えるトルクが等しくなるように設定されている。
さて、フォースパターン算出部２１４は、このような画面定義データ２１２とオブジェクト属性デーブル２１５に従って、以下のように表示画面全体に対するフォースパターンを算出し、フォースパターンテーブル２３４に登録する。
すなわち、いま、画面定義データ２１２が、図４ｃに示すように、図４ａに示した１６個のボタン領域のうちの１０個のボタン領域にのみボタンを配置するものであり、ボタン領域１、２、１２、１３、１６にコマンドボタンを配置し、ボタン領域４、５、６、７、８にアイテムボタンを配置するものであるとする。
【００３５】
この場合、フォースパターン算出部２１４は、図４ｅに示すように、ボタンが配置されたボタン領域の各々に定義された角度範囲に対して、オブジェクト属性デーブル２１５で配置されたボタンのタイプに対して定義されたフォースパターンを、ＭｉｎθとＭａｘθがボタンに対応する角度範囲の時計廻りに計った下限点と上限点に一致するように角度方向のスケールを調整した上で定義する。また、ボタンが配置されなかったボタン領域の連続部分（空白部分）に対応する角度範囲に対しては、オブジェクト属性デーブル２１５で空白に対して定義されたフォースパターンを、ＭｉｎθとＭａｘθが空白部分に対応する角度範囲の時計廻りに計った下限点と上限点に一致するように角度方向のスケールを調整した上で定義する。
【００３６】
そして、フォースパターン算出部２１４は、このようにしてオブジェクト属性デーブル２１５に定義されたフォースパターンを角度範囲に対して定義した結果得られる図４ｆに示す関係を、コマンダノブ１１のトルクのコマンダノブ１１の回転角度に対する関数としてまとめ、これを算出したフォースパターンとしてフォースパターンテーブル２３４に格納する。なお、図４ｆ中の横軸において、θがコマンダノブ１１の時計方向に計った回転角度を、ｍｏｄ  ａ（θ）は、θのａの剰余を表している。また縦軸は、正が時計廻り方向のトルクを、負が半時計廻りのトルクを示している。そして、フォースパターン中の実線のパターンは、コマンダノブ１１が時計廻りに回転操作されている場合に使用するフォースパターンを、波線のフォースパターンは、コマンダノブ１１が半時計廻りに回転操作されている場合に使用するフォースパターンを示している。
【００３７】
なお、図５ｃに示した表示画面に対して、データ処理部２１１は、たとえば、次のようにその表示を制御する。
まず、図５ｃに示すようにボタン領域１のボタンを選択色とした表示画面を定義する画面定義データ２１２を生成し、フォースパターン算出部２１４と画面出力処理部２１３にリセットを指示する。そして、ユーザ操作に応じて、ＧＵＩ制御部２２からボタン領域１６に配置したボタンが選択状態に遷移したことを示すメッセージを受信したならば、ボタン領域１６のボタンを選択色とした表示画面を定義する画面定義データ２１２を生成し、画面出力処理部２１３にリセットを指示する。ここで、このときは、表示画面上のボタンレイアウトの変更はなく、ボタン表示色の変更のみであるので、フォースパターン算出部２１４に対してはリセットを指示する必要がない。そして、いずれかのボタンが選択状態にあるときに、ボタンの決定操作に応じてメッセージが通知されたならば、通知されたメッセージに従った処理を行い、必要に応じて、新しい表示画面を定義する画面定義データ２１２を生成し、フォースパターン算出部２１４と画面出力処理部２１３にリセットを指示する。
【００３８】
以上、本発明の実施形態について説明した。
ところで、以上では、オブジェクト属性デーブル２１５の内容を固定としたが、これは適宜データ処理部２１１が、使用する表示画面に応じて更新できるようにしても良い。また、図４ｂに示したボタン領域とコマンダノブ１１の関係も適宜、データ処理部２１１が、使用する表示画面に応じて変更できるようにして良い。
【００３９】
また、以上では、オブジェクト属性デーブル２１５において、表示要素に対してフォースパターンを定義したが、オブジェクト属性デーブル２１５では連続して配置される表示要素の組み合わせに対してフォースパターンを定義したり、表示要素や表示要素の組み合わせと対応する角度範囲の大きさとの関数として、フォースパターンを定義したりするようにしてもよい。
【００４０】
また、以上では、データ処理装置２をオペレーティングシステムを備えたシステムとして構成する場合には、表示画面に対するフォースパターン（フォースパターンテーブル２３４に格納するフォースパターン）の算出及び設定をアプリケーションプロセスが行うようにした態様について説明したが、このような表示画面に対するフォースパターンの算出や設定は、オペレーティングシステムを備えたシステムにおいてはオペレーティングシステムにおいて行うようにしてもよい。
【００４１】
また、以上ではアクチュエータ１５が発生するトルクによってユーザに与える触感を制御したが、本実施形態による、ユーザに対して触感を与えるパターンを表示画面上のボタンや空白といった表示要素の種別と配置に応じて算出し、入力装置のユーザ操作に対して定義する手法は、振動や摩擦力など他の力によってユーザに与える触感を制御する場合についても同様に適用可能である。
【００４２】
また、以上の実施形態では、入力装置が、回転操作によって表示画面上の空間的な操作として一軸方向（回転角度θの軸）の入力のみを受け付けるハプティックコマンダ１である場合を例にとり説明したが、本実施形態は、トラックボールやマウスやジョイスティックなどの表示画面上でＸＹの二軸方向の入力を受け付ける入力装置を用いる場合についても同様に適用することができる。すなわち、この場合には、オブジェクト属性デーブル２１５に図６に示すようなフォースパターンを定義しておき、オブジェクト属性デーブル２１５と画面定義データ２１２に基づき、図６に示したフォースパターンをボタンの表示領域や空白の表示領域に割り当てることにより、表示画面上の座標とユーザに与えるトルクの関係を求めフォースパターンテーブル２３４に格納し、ユーザが入力装置でポイントしている座標（たとえば、カーソルを表示し、ユーザ操作に応じてカーソルを移動する場合には、当該カーソルの座標）に応じたトルクを、フォースパターンテーブル２３４に基づき発生するようにすればよい。なお、図中ａはボタンに対するフォースパターンを、ｂは空白に対するフォースパターンを示している。ただし、図はトルクの絶対値を示しており、トルクの方向はユーザの回転操作方向と逆の回転方向となる。
【００４３】
このように、本実施形態によれば、予めレイアウトが定まらない表示画面に対しても、当該表示画面の表示開始時に、ユーザに与える触感を入力装置からの入力に対して、表示画面の表示内容と整合するように設定し、以降、当該設定に従って入力装置からの入力に応じてユーザに触感を与えることができる。したがって、任意の表示画面について、表示画面に対する入力装置のユーザ操作に対してユーザに与える触感を適正に制御することができるようになる
【００４４】
【発明の効果】
以上のように、本発明によれば、任意の表示画面について、表示画面に対する入力装置のユーザ操作に対してユーザに与える触感を適正に制御することができる。
【図面の簡単な説明】
【図１】本発明の実施形態に係るデータ処理システムの構成を示すブロック図である。
【図２】本発明の実施形態に係るパプティックコマンダの外観と模式的構造を示す図である。
【図３】本発明の実施形態に係るデータ処理システムにおいて用いるフォースパターンテーブルとボタン情報を示す図である。
【図４】本発明の実施形態に係る表示画面とフォースパターンの設定の例を示す図である。
【図５】本発明の実施形態に係るデータ処理システムにおいて用いる画面定義データとオブジェクト属性テーブルを示す図である。
【図６】本発明の実施形態に係る表示要素に設定するフォースパターンの他の例を示す図である。
【符号の説明】
１…パプティックコマンダ、２…データ処理装置、３…表示装置、１１…コマンダノブ、１２…ロータリセンサ、１３…プッシュセンサ、１４…水平方向センサ、１５…アクチュエータ、１５ａ…プーリ、１７…コマンダノブシャフト、１８…ロータ、１９…可傾部材、２１…アプリケーション部、２２…ＧＵＩ制御部、２３…コマンダドライバ、２１１…データ処理部、２１２…画面定義データ、２１３…画面出力処理部、２１４…フォースパターン算出部、２１５…オブジェクト属性デーブル、２２１…入力解析部、２２２…表示制御部、２２３…描画情報、２２４…ボタン情報、２３１…入力処理部、２３２…回転速度検出部、２３３…フォース制御部、２３４…フォースパターンテーブル。
【図１】
2004318460.tif 000003
【図２】
2004318460.tif 000004
【図３】
2004318460.tif 000005
【図４】
2004318460.tif 000006
【図５】
2004318460.tif 000007
【図６】
2004318460.tif 000008