(57)【要約】【課題】  パラメータの値が境界値に対して特別な関係になる時に、ユーザに触感的フィードバックを与えるようにする。【解決手段】  時点ｔ５においては、操作前のパラメータ値ＰＶ４は下限値ＬＶとなっており、時点ｔ５で取り込まれた操作量は負とされる。すなわち、パラメータの値を下限値ＬＶより下に出そうとする方向であることから、操作子のノブに所定の時間Ｔの振動Ｓ１が付与される。これにより、ユーザは、下限値ＬＶに達しており、その操作方向では、それ以上パラメータ値が変化しないことを知覚するようになる。【選択図】  図５
2014215851.tif 000002
【特許請求の範囲】
【請求項１】
ユーザによる操作子の操作に応じて、所定の変化範囲を有するパラメータの値を変更するパラメータ変更手段と、
前記操作が前記パラメータの値を前記変化範囲外に出そうとする操作である時に、前記操作子を介してユーザに触感的フィードバックを与えるフィードバック手段と、
を備えることを特徴とするパラメータ設定装置。
【請求項２】
前記パラメータ変更手段は、前記パラメータの値を前記変化範囲外に出そうとする操作が行われた時に、前記パラメータの値が前記変化範囲内に留まるよう前記パラメータの値を制限する処理を行い、
前記フィードバック手段は、前記パラメータ変更手段において前記制限する処理が行われた時に、ユーザに前記触感的フィードバックを与えること、
を特徴とする請求項１に記載のパラメータ設定装置。
【請求項３】
前記フィードバック手段は、前記パラメータの値が前記変化範囲の境界値にあり、かつ、前記パラメータの値を前記変化範囲外に出そうとする方向の操作が行われた時に、ユーザに前記触感的フィードバックを与えること、
を特徴とする請求項１または２に記載のパラメータ設定装置。
【請求項４】
前記操作子は、特定の１自由度における操作範囲に限界のない、エンドレス操作子であることを特徴とする請求項１ないし３のいずれかに記載のパラメータ設定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、パラメータ値を境界値を超えて変化範囲外へ出そうとするユーザ操作が行われた時に、ユーザに触感的フィードバックを与えるパラメータ設定装置に関する。
【背景技術】
【０００２】
パラメータを設定する操作子として、従来からロータリーエンコーダを用いた回転操作子が知られている。このような回転操作子を操作する時は、表示部の画面に表示されたパラメータ値の変化を見ながら、ユーザが回転操作子のノブを回転させることにより、所定のパラメータ値になるよう設定している。
また、従来、ロータリーエンコーダの回転軸にアクチュエータを取り付けて、所定の回転状態に応じて回転軸に外力を付与し、回転操作子のノブを操作するユーザに所要の操作感触とされるクリック感を感得させることが知られている（特許文献１参照）。
さらに、操作子の一種であるマウスの本体に振動発生部または変形部、さらには発熱冷却部を設けて電子計算機側からの信号によりマウスを持つ手指に振動、変形または温熱の感触を与えるようにすることにより、表示装置の画面を注視しなくともマウスカーソルのおよその位置を感じ取ることができるようにして、使用者の特に目に掛かる負担を軽減することも知られている（特許文献２参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−２９９１４号公報
【特許文献２】特許第３２８０６６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ユーザが回転操作子のノブを操作して行うパラメータの設定は、パラメータの変化範囲内において行われ、パラメータの上限値や下限値が変化範囲の境界値になる。この場合、ロータリーエンコーダを用いた回転操作子はエンドレス操作子とされ、何回転でも回せることからパラメータの値が変化範囲を外れて設定される場合があり、変化範囲を外れる時に、ユーザによるノブの操作を妨げる力をノブに加えることが考えられる。しかしながら、ノブの操作を妨げる構造は複雑なメカニカル構造となり、妨げる力をノブに与えるためには大きな電力が必要になるという問題点があった。
また、ユーザが操作子のノブを操作した際にパラメータの値が変化範囲を超えた時には、操作子のノブに振動を付与してユーザに変化範囲を超えたことを感知させるものがある。しかしながら、この手法ではパラメータ値が変化範囲を超えた時には、パラメータ値が変化範囲内に戻るまで、ノブを逆方向に操作する必要があるという問題点があった。
【０００５】
そこで、本発明は、パラメータ値を境界値を超えて変化範囲外へ出そうとするユーザ操作が行われた時に、ユーザに触感的フィードバックを与えるようにしたパラメータ設定装置を提供することを目的としている。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明は、ユーザによる操作子の操作に応じて、所定の変化範囲を有するパラメータの値を変更するパラメータ変更手段と、ユーザによる操作がパラメータの値を前記変化範囲外に出そうとする操作である時に、前記操作子を介してユーザに触感的フィードバックを与えるフィードバック手段とを備えることを最も主要な特徴としている。
【発明の効果】
【０００７】
本発明では、ユーザによる操作が、所定の変化範囲を有するパラメータの値を当該パラメータの変化範囲外に出そうとする操作である時に、触感的フィードバックが、ユーザに与えられるようになる。これにより、ユーザは、パラメータ値を境界値を超えて変化範囲外へ出そうとする操作を行ったことを感得することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施例のパラメータ設定装置を備えるオーディオ装置の構成、操作子の構成の一例を示すブロック図である。
【図２】本発明にかかるパラメータ設定装置における回転操作子の構成を示す正面図および側面図である。
【図３】本発明にかかるパラメータ設定装置における画面上のパラメータ表示の例を示す図である。
【図４】本発明にかかるパラメータ設定装置のパラメータ変更処理の概要を示すフローチャート、ノブの操作があったときに実行される「ノブの操作ありイベント処理」のフローチャートである。
【図５】本発明にかかるパラメータ設定装置におけるユーザ操作に応じたパラメータ値の変化、および、振動の発生タイミングを示す図である。
【図６】本発明にかかるパラメータ設定装置における操作子の操作量がパラメータ値に与える関数のグラフを示す図である。
【図７】本発明にかかるパラメータ設定装置におけるユーザ操作に応じたパラメータ値の変化、および、振動の発生タイミングの他の例を示す図である。
【発明を実施するための形態】
【０００９】
本発明の実施例のパラメータ設定装置を備えるオーディオ装置の構成を示すブロック図を図１（ａ）に、操作子１３の構成の一例を示すブロック図を図１（ｂ）に示す。
図１（ａ）に示すオーディオ装置１は、オーディオ装置１の全体の動作を制御すると共に、信号処理部１６のパラメータを設定する操作子１３の操作に応じたパラメータ変更処理や操作子操作ありイベント処理を実行するＣＰＵ（Central Processing Unit）１０と、ＣＰＵ１０が実行する動作ソフトウェアが格納されている書き換え可能な不揮発性のフラッシュメモリ１１と、ＣＰＵ１０のワークエリアや各種データ等が記憶されるＲＡＭ（Random Access Memory）１２を備えている。ＲＡＭ１２のメモリ空間内には、オーディオ装置１の現在の動作を制御する各種パラメータを記憶するカレントメモリの領域が用意される。なお、フラッシュメモリ１１に動作ソフトウェアを格納することにより、フラッシュメモリ１１内の動作ソフトウェアを書き換えることで、動作ソフトウェアをバージョンアップすることができる。また、操作子１３は、複数の操作子であって、回転操作子やスライダー等のパラメータ値を設定操作するノブを備える操作子、表示器１４に表示されるカーソルを移動するマウス、ホイール、タッチパネル、トラックボール等とされる。表示器１４は、パラメータを設定する設定画面や、調整時に変化していくパラメータ値を表示する画面が表示される液晶表示装置等からなるディスプレイである。
【００１０】
オーディオ装置１には、波形入力部１５から音信号が入力され、入力された音信号は信号処理部１６に入力される。信号処理部１６はＤＳＰ（Digital Signal Processor）を用いて構成されており、カレントメモリに記憶された各種信号処理パラメータに基づいて、ＣＰＵ１０の制御の基で音信号の周波数特性、振幅特性等の制御や、定位、遅延時間の調整、残響等の音響効果の付与などの音響信号処理を行っている。信号処理部１６で音響信号処理が行われた音信号は、波形出力部１７に出力され、音信号がスピーカやヘッドフォンに供給されたり、レコーダなどに供給される。各部はＣＰＵバスライン１８に接続されている。
【００１１】
操作子１３に含まれる操作子の一例として、ロータリーエンコーダ２０ａおよびノブを備える回転操作子２０が図１（ｂ）に示されている。回転操作子２０には、ユーザによるノブの回転操作に応じて２相パルスを発生するロータリーエンコーダ２０ａ、および、その２相パルスに基づいてその回転操作量を検出する検出部２０ｃが内蔵されると共に、ノブに振動を与えるバイブレータ２０ｂが設けられている。ここで、パラメータ値を調整しようとして、回転操作子２０のノブをユーザが回転操作すると、ロータリーエンコーダ２０ａの回転方向および回転量からなる操作量が検出部２０ｃで検出される。ＣＰＵ１０は、所定時間ごとに検出部２０ｃで検出した操作量を取り込んでおり、今回取り込んだ操作量に基づいて操作の有無を判断する。その判断基準としては、例えば、今回取り込んだ操作量がゼロの場合は「ユーザ操作なし」と判断し、ゼロでない場合は「ユーザ操作あり」と判断すればよい。或いは、今回取り込んだ操作量が所定の閾値未満のとき「ユーザ操作なし」と判断し、該閾値以上のとき「ユーザ操作あり」と判断するようにしてもよい。或いは、直近に取り込んだ複数回分の操作量に基づいて、操作の有無や今回の操作量を決定するようにしてもよい。閾値を用いたり、複数回分の操作量を考慮することで、ノイズ等による誤検出を防止できる。ここで、「ユーザ操作あり」と判断した場合は、ＣＰＵ１０は後述する「ノブの操作ありイベント処理」を実行する。この「ノブの操作ありイベント処理」により、ユーザによる操作がパラメータの値を当該パラメータの変化範囲外に出そうとする操作である時は、バイブレータ２０ｂを所定の時間だけ駆動する制御信号がＣＰＵ１０から回転操作子２０に送出される。これにより、駆動されたバイブレータ２０ｂの振動は一時的に回転操作子２０のノブを把持しているユーザに与えられる。すなわち、ノブの振動による触感的フィードバックが、所定の時間だけユーザに与えられるようになり、ユーザは、パラメータ値を境界値を超えて変化範囲外へ出そうとする操作を行ったことを感得することができる。なお、ノブに振動が与えられる「所定の時間」とは、ノブを操作しているユーザが、ノブが振動していることを十分感知できる短い時間とされる。
【００１２】
回転操作子２０の構成を図２（ａ）（ｂ）に示す。図２（ａ）は回転操作子２０の構成を示す正面図であり、図２（ｂ）は回転操作子２０の構成を示す側面図である。
これらの図に示すように、回転操作子２０は、円柱状のロータリーエンコーダ２０ａと、ロータリーエンコーダ２０ａの背面に設けられたバイブレータ２０ｂと、ロータリーエンコーダ２０ａの前面のほぼ中央から突出している径の細い回転軸２０ｄと、回転軸２０ｄに装着されるノブ２１とから構成されている。ノブ２１の下部には円板状の鍔部２１ａが形成されており、鍔部２１ａから上部に向かって径が次第に小さくなるテーパ状の把持部２１ｂが形成されている。把持部２１ｂの周面には、滑り止め用の縦溝が複数形成されている。回転操作子２０は、オーディオ装置１の図示しないパネルの内側に収納されるようパネルの裏面にロータリーエンコーダ２０ａの前面が当接されて取り付けられる。パネルのおもて面からは、回転軸２０ｄが突出しており、この回転軸２０ｄにノブ２１が装着されている。
【００１３】
ユーザがノブ２１の把持部２１ｂを把持して回転操作子２０のノブ２１を回転操作すると、所定角度回転する毎に位相が異なるＡ相，Ｂ相のパルスが発生され、このパルス数の計数値が回転量となり、回転軸２０ｄの回転方向に応じてＡ相がＢ相より進むあるいは遅れる。そして、回転量と回転方向からなる操作量が検出部２０ｃから出力され、この操作量に応じてパラメータの値が設定されるようになる。また、バイブレータ２０ｂが駆動されると、バイブレータ２０ｂの振動がロータリーエンコーダ２０ａおよび回転軸２０ｄを介してノブ２１に伝えられるようになる。なお、回転操作子２０はエンドレス操作子とされてノブ２１を何回転でも回すことができ、右方向に回した場合は正の値となってパラメータ値を増加させることができ、左方向に回した場合は負の値となってパラメータ値を減少させることができる。また、図２（ｂ）においてはバイブレータ２０ｂがロータリーエンコーダ２０ａの背面に設けられているが、バイブレータ２０ｂをロータリーエンコーダ２０ａの横に並べて配置したり、ノブ２１内にバイブレータ２０ｂを配置してもよい。
【００１４】
図２に示すような回転操作子２０等の操作子１３でパラメータ値を設定する際には、表示器１４に現在のパラメータ値が画像や数値で表示される。この表示器１４に表示される画面上のパラメータ表示の例を図３（ａ）〜（ｅ）に示す。
図３（ａ）に示す表示画像では、表示器１４に表示されたノブ３１によりパラメータ値が表示される。ノブ３１は図２（ａ）に示すノブ２１と同様の構成とされているが、目盛りを指し示す指示片３１ｃを備えている。ノブ３１の下の画像はパネルとされて、このパネルに円形のノブ３１を取り囲むように目盛り３２が記されており、ノブ３１の指示片３１ｃが指す目盛り３２の位置がパラメータ値となる。本図はパラメータがパン、ＬＲバランス、ピッチシフト、各種オフセット等の場合の例であり、目盛り３２のほぼ中央位置（基準位置）に塗りつぶした逆三角形で示される特定値マーク３２ａが記されている。例えば、図１（ｂ）に示す回転操作子２０のノブが回転操作されると、回転操作に応じてノブ３１が右回転あるいは左回転した画像に表示変更され、指示片３１ｃで示されるパラメータ値が回転操作子２０のノブの回転操作に応じて推移していく様子が、表示器１４に表示されるようになる。
【００１５】
図３（ｂ）に示す表示画像は、パラメータがオーディオ信号のレベルを調整するレベルパラメータの場合の例であり、特定値マーク３２ｂの位置がさらに右方向に約９０°回転された位置（ゼロデシベル位置）とされていることを除いて、図３（ａ）に示す例と同様とされているので、説明は省略するが、ノブ３５の指示線３５ａが指す目盛り３６の位置がパラメータ値となる。
図３（ｃ）に示す表示画像では、表示器１４に表示された直線上を上下にスライドするノブ３５によりレベルパラメータの値が表示される。ノブ３５には目盛りを指し示す横線とされた指示線３５ａが設けられている。ノブ３５の下の画像はパネルとされて、このパネルに、ノブ３５のスライド方向に沿ってデシベルスケールの目盛り３６が記されており、ノブ３５の指示線３５ａが指す目盛り３６の位置がパラメータ値となる。図１（ｂ）に示す回転操作子２０のノブを回転操作すると、回転操作に応じてノブ３５が上方向あるいは下方向にスライドした画像に表示変更され、指示線３５ａで示されるパラメータ値が回転操作子２０のノブの回転操作に応じて推移していく様子が、表示器１４に表示されるようになる。なお、目盛り３６に図３（ａ）（ｂ）に示すような特定値マークを記すようにしてもよい。
【００１６】
図３（ｄ）に示す表示画像では、表示器１４に表示された表示窓に数値とされたパラメータ値が表示される。図３（ｄ）に示す例では、３つの表示窓４０ａ，４０ｂ，４０ｃが表示されており、例えば、表示窓４０ａには、レベルパラメータの値が「−１８ｄＢ」として表示され、表示窓４０ｂには、オーディオ信号の遅延時間を制御するディレイパラメータの値が「１５０ｍｓ」として表示され、表示窓４０ｃには、フィルタや発振器等の周波数パラメータの値が「８３０Ｈｚ」として表示されている。図１（ｂ）に示す回転操作子２０のノブを回転操作すると、この回転操作子２０に割り当てられたパラメータの値がその操作量に応じて増減される。
図３（ｅ）に示す例では、複数の特定値マーク３２ｃ１，３２ｃ２，３２ｃ３，３２ｃ４，３２ｃ５が目盛りに替えてノブ３１の周囲に記されていることを除いて、図３（ａ）に示す例と同様とされているので、その説明は省略するが、ノブ３５の指示線３５ａが指す位置がパラメータ値となる。
【００１７】
次に、オーディオ装置１において本発明のパラメータ設定装置にかかる処理として実行されるパラメータ変更処理の概要を示すフローチャートを図４（ａ）に示す。これは、ユーザが順に特定の操作を行った場合の、１の回転操作子２０に着目した、「処理の概要」である。
まず、ユーザによる、複数のパラメータ設定画面のうちの１の選択操作に応じて、表示器１４には、選択されたパラメータ設定画面であって、１ないし複数のパラメータの値を表示する画面が表示される（ステップＳ１０）。そして、１の回転操作子２０には、表示されている１ないし複数のパラメータの内の１つが割り当てられる（ステップＳ１１）。また、この割り当てられたパラメータを特定するパラメータＩＤが、カレントメモリに静的変数pidとして記録される。そして、回転操作子２０のノブ２１が操作されると、その操作量に応じて、カレントメモリ中の回転操作子２０に割り当てられたパラメータの値が変更される（ステップＳ１３）。この場合、表示器１４における各パラメータの表示態様は、図３（ａ）〜（ｅ）のうちの、表示する各パラメータに応じたパラメータ表示とされる。
【００１８】
上記したステップＳ１２では、ＣＰＵ１０は、複数の操作子１３のそれぞれの操作量を、所定時間毎に取り込んでおり、ユーザによる当該操作子１３の操作があったか否かを、その操作量から判断している。そして、操作子１３の操作があるとＣＰＵ１０で判断された場合、ＣＰＵ１０は、その操作された操作子１３に対する、「操作子操作ありイベント処理」を実行する。図４（ｂ）に示す「ノブの操作ありイベント処理」は、この処理の一例であり、回転操作子２０のノブ２１が操作された時に実行される。
次に、図５のグラフを参照しながら、その「ノブの操作ありイベント処理」を以下に説明する。図５のグラフは、ユーザが回転操作子２０のノブ２１を操作した際の回転操作子２０に割り当てられたパラメータの値の変化、および、回転操作子２０のバイブレータ２０ｂの振動の発生タイミングを示す図である。この図において、ＬＶはパラメータの変化範囲の下限の境界値（下限値）である。また、図５のグラフで図示される丸印は、ＣＰＵ１０によるパラメータ値の設定タイミングと値とを示しており、また、破線では、仮にパラメータ値の設定が所定時間毎の離散的な処理ではなく連続した処理として行われた場合に、設定されるパラメータ値の変化を示している。
【００１９】
図１（ｂ）に示す検出部２０ｃで検出された操作量はＣＰＵ１０が周期的に取り込んでおり、回転操作子２０のノブ２１が回転されると、ＣＰＵ１０は、取り込んだ操作量に基づいて、回転操作子２０のノブ２１の操作があったと判断し、「ノブの操作ありイベント処理」を開始する。「ノブの操作ありイベント処理」が開始されると、ＣＰＵ１０は、ユーザによるノブ２１の回転操作量を取り込み、その操作量を一時変数Ｘに代入する（ステップＳ２０）。この操作量Ｘは、ノブ２１を右方向に回すと正の値、左方向に回すと負の値となる。次いで、静的変数pidに基づいて、カレントメモリから、回転操作子２０に割り当てられたパラメータの値ＰＶ(pid)が読み出され、ノブ２１の操作前のパラメータ値として、一時変数ＰＶｏに代入される（ステップＳ２１）。そして、パラメータ値ＰＶｏと、関数ｆ(PVo,X)の値の和がステップＳ２２にて演算されて、その値によってカレントメモリのパラメータ値ＰＶ(pid)が更新される。パラメータは一般的に上限および／または下限を有しており、パラメータは上限値や下限値とされる境界値ＬＶまでが変化範囲となる。しかし、回転操作子２０は何回転でも回転操作できるエンドレス操作子とされていることから、操作量Ｘの大きさおよび操作方向によっては操作後のパラメータ値が境界値ＬＶを超えて変化範囲外となってしまう恐れがある。関数ｆ(PVo,X)は、基本的には所定の変化カーブに従って、操作量Ｘと正の相関関係にある関数であるが、操作後のパラメータ値が変化範囲外にならないように、操作前のパラメータ値ＰＶｏ（過去の値）に応じて、その変化カーブのうちの一部（操作量Ｘの一部範囲に対応）が調整（トリミング）される（図６）。このトリミングの処理は、ステップＳ２２で、過去のパラメータ値ＰＶｏに応じてリアルタイムに行うようにしてもよいし、複数の各ＰＶｏ値でトリミングされた複数の関数を用意しておき、ステップＳ２２では、その時点の過去のパラメータ値ＰＶｏに対応する１つの関数を選択して使用するようにしてもよい。トリミング後の関数ｆ(PVo,X)の値は、操作量Ｘで参照される変化カーブの値をそのまま過去のパラメータ値ＰＶｏに加算しても境界値ＬＶを超える恐れがないトリミング不要の範囲においては、その変化カーブの値のままとされ、過去のパラメータ値ＰＶｏに加算すると境界値ＬＶを超える恐れのあるトリミング要の範囲については、境界値ＬＶと過去のパラメータ値ＰＶｏとの差分に応じて絶対値が小さくなるようトリミングされた値とされており、結果として、操作後のパラメータ値ＰＶ(pid)は、変化範囲外にならないようになる。
【００２０】
図５を参照してステップＳ２０ないしステップＳ２２の処理を説明すると、各時点ｔ１〜ｔ７においては、ステップＳ２０で、それぞれ負の値である操作量Ｘ１〜Ｘ７（ノブ２１の左回し操作）が検出部２０ｃから取り込まれて操作量Ｘとされ、ステップＳ２１で、各１つ前の時点のパラメータ値であるＰＶ０〜ＰＶ６（時点ｔ１の１つ前の時点のパラメータ値をＰＶ０とする）がＰＶｏとされ、ステップＳ２２で、ＰＶｏとＸとに応じた関数ｆ(PVo,X)の値とＰＶｏとが加算されることにより、各時点のＰＶ(pid)の値ＰＶ１〜ＰＶ７が算出される。
時点ｔ１〜ｔ３においては、負の操作量Ｘ１〜Ｘ３により参照される関数ｆ(PVo,X)の値はトリミング不要の範囲にあり、各操作後のパラメータ値ＰＶ１〜ＰＶ３は各操作前のパラメータ値ＰＶ０〜ＰＶ２より小さい値になる。なお、操作量Ｘ２，Ｘ３により参照される関数ｆ(PVo,X)の値がｆ2，ｆ3として図示されている。また、時点ｔ４においては、負の操作量Ｘ４により参照される関数ｆ(PVo,X)はトリミング要の範囲に入っており、調整（トリミング）された関数値が使用されるが、過去のパラメータ値ＰＶｏが境界値ＬＶには達していないので、その値はゼロにはならず、操作後のパラメータ値ＰＶ４は操作前のパラメータ値ＰＶ３より小さくなる。なお、操作量Ｘ４により参照される関数ｆ(PVo,X)の値がｆ4として図示されている。そして、この時点ｔ４で、パラメータ値ＰＶ(pid)は、下限値ＬＶに達する。
【００２１】
時点ｔ５〜ｔ７においては、それぞれ、過去の値ＰＶｏが下限値ＬＶであるため、関数ｆ(PVo,X)は、負の操作量Ｘ５〜Ｘ７で参照される範囲の全域がゼロに調整（トリミング）されている。そのため、負の各操作量Ｘ５〜Ｘ７で参照した関数ｆ(PVo,X)の値はゼロとなり、操作後の各パラメータ値ＰＶ５〜ＰＶ７は下限値ＬＶに留まり、変化範囲外にはならないようになる。
【００２２】
ステップＳ２２の処理が終了するとステップＳ２３において、ステップＳ２２で算出された操作後のパラメータ値ＰＶ(pid)に応じて、表示器１４の対応するパラメータ表示がその値に更新される。さらに、信号処理部１６において操作後のパラメータ値ＰＶ(pid)による信号処理制御が行われる。次いで、ステップＳ２４にて操作後のパラメータ値ＰＶ(pid)と操作前のパラメータ値ＰＶｏとが共に境界値ＬＶに等しいか否かが判定される。ここで、判定結果が肯定的である場合はステップＳ２５に分岐し、判定結果が否定的である場合はそのまま処理を終了する。ステップＳ２５では、バイブレータ２０ｂを所定の時間だけ駆動する制御信号がＣＰＵ１０から回転操作子２０に与えられて、ノブ２１に所定の時間だけ振動が付与されて、ノブ２１を操作しているユーザに触感的フィードバックが付与される。
【００２３】
図５を参照してステップＳ２４およびステップＳ２５の処理を説明すると、各時点ｔ１〜ｔ３においては、操作前のパラメータ値ＰＶ０〜ＰＶ２と操作後のパラメータ値ＰＶ１〜ＰＶ３のいずれも下限値ＬＶに等しくない。また、時点ｔ４においては操作後のパラメータ値ＰＶ４は下限値ＬＶに等しいものの、操作前のパラメータ値ＰＶ３は下限値ＬＶに等しくない。従って、時点ｔ１〜ｔ４においてはステップＳ２４にて「ＮＯ」と判定されて「ノブの操作ありイベント処理」は終了する。また、各時点ｔ５〜ｔ７においては操作前のパラメータ値ＰＶ４〜ＰＶ６が下限値ＬＶに等しいと共に、操作後のパラメータ値ＰＶ５〜ＰＶ７も下限値ＬＶに等しい。従って、時点ｔ５〜ｔ７の各時点においてステップＳ２４では「ＹＥＳ」と判定され、ステップＳ２５の処理が行われる。ステップＳ２５では、図示するように時点ｔ５〜ｔ７の各時点において、ＣＰＵ１０が、バイブレータ２０ｂを所定の時間Ｔだけ駆動する制御信号を回転操作子２０に対して送出し、ノブ２１に所定の時間Ｔの振動Ｓ１，Ｓ２，Ｓ３が付与される。なお、所定の時間Ｔは、ノブ２１を操作しているユーザが、ノブ２１が振動していることを十分感知できる短い時間とされ、例えば数十ミリ秒ないし数百ミリ秒とされる。これにより、操作前のパラメータ値と操作後のパラメータ値とが下限値ＬＶに等しい時点、すなわち、操作前のパラメータ値が下限値ＬＶとなっており、かつ、取り込まれた操作量Ｘの操作方向がパラメータを下限値ＬＶを超えて外に出そうとする方向とされている場合は、ノブ２１に所定の時間Ｔの触感的フィードバックが与えられ、ノブ２１を操作しているユーザは、パラメータ値が下限にあり、これ以上変化しないことを知覚することができる。なお、従来技術では、パラメータを下げる方向の操作をしているとき、画面でパラメータ値を確認していなければ、ユーザは下限に達したことに気付かず、下向きの操作を続けることになる。
【００２４】
なお、本発明にかかるパラメータ設定装置は、「パラメータ値を境界値を超えて変化範囲外へ出そうとするユーザ操作が行われた時、ユーザに対して触感的フィードバックを与える」ことを目的とするものである。上述したステップＳ２４では、そのユーザ操作を、「ユーザ操作時の操作前パラメータ値と操作後パラメータ値が共に境界値ＬＶに等しい」という判定で検出しているが、これは一例に過ぎず、判定条件には以下に示すような様々なバリエーションがある。
判定条件の変形例１では、ステップＳ２４において、「操作量Ｘが、変化カーブのトリミングが必要な範囲を参照しているか否か」を判定し、判定が肯定的であればノブ２１に振動を付与し、判定が否定的であれば処理を終了する。なお、トリミングが必要な範囲とされても、変化カーブで更新されるパラメータ値が実際には変化範囲外に出ない場合もあるが、ここでは、「トリミングが必要とされている以上、パラメータ値を変化範囲外に出そうというユーザ意図あり」と見做している。また、ノブ２１への振動は、図５の時点ｔ５〜ｔ７だけでなく、時点ｔ４においても付与されることになる。
判定条件の変形例２では、ステップＳ２４において、「過去のパラメータ値ＰＶｏが境界値ＬＶにあり、かつ、操作量の符号が変化範囲の外側向きか否か」を判定し、判定が肯定的であればノブ２１に振動を付与し、判定が否定的であれば処理を終了する。
判定条件の変形例３では、ステップＳ２４において、「仮に、トリミング無しの変化カーブをそのまま仮の関数ｆ’(PVo, X)として使用し、仮の関数ｆ’(PVo, X)の値とＰＶｏとを加算して、仮のパラメータ値ＰＶ’(pid)を算出した場合に、算出された仮のパラメータ値ＰＶ’(pid)がパラメータの変化範囲外となるか否か」を判定し、判定が肯定的であればノブ２１に振動を付与し、判定が否定的であれば処理を終了する。なお、実際のパラメータ値ＰＶ(pid)については、図４（ｂ）の説明で上げた例と同じく、必要に応じてトリミングされた関数ｆ(PVo, X)を使用して算出される。
【００２５】
次に、関数ｆ(PVo,X)における、変化カーブの調整（トリミング）の例を、図６（ａ）（ｂ）（ｃ）を参照して説明する。各グラフの横軸は操作量Ｘ、縦軸は変化カーブあるいは関数ｆ(PVo,X)の値であり、変化カーブは実線で、関数ｆ(PVo,X)は破線で示されている。
図６（ａ）の例では、実線で示すように、操作量Ｘに対して変化カーブの値は比例しており、その比例係数は定数とされている。操作前のパラメータ値ＰＶｏ（過去の値）が、上限値と下限値の何れの境界値ＬＶからも離れていた場合には、関数ｆ(PVo,X)の値は、操作量Ｘの全域で、この変化カーブの値と同じになる。一方、破線は、過去のパラメータ値ＰＶｏが下限値ＬＶに近い特定値であった場合であり、ここでは、変化カーブが差分「ＬＶ−ＰＶｏ」を下回る範囲でその値「ＬＶ−ＰＶｏ」を保つことにより、関数値ｆ(PVo,X)が差分「ＬＶ−ＰＶｏ」を下回ってしまわないようトリミングしている。すなわち、関数ｆ(PVo,X)の値は、操作量Ｘが特定値Ｘａ以上の範囲では変化カーブと同じ値となり、特定値Ｘａ以下の範囲では、トリミングされた値「ＬＶ−ＰＶｏ」となる。
【００２６】
図６（ｂ）は、図６（ａ）と同じ変化カーブに対して、異なるトリミングを行った例である。図６（ａ）の関数ｆ(PVo,X)では、操作量Ｘを徐々に下げていった場合に、限界となる特定値Ｘａで、傾きがゼロの完全なトリミングを開始するが、図６（ｂ）の関数ｆ(PVo,X)では、その特定値Ｘａより少し前の特定値Ｘｂから、徐々に傾きを減らしつつマイルドにトリミングし、所定値Ｘｃで、傾きがゼロの完全なトリミングに移行する。この場合、トリミングは、特定値Ｘｂ以下の範囲で行われていることになる。
図６（ｃ）は、図６（ａ）と同様のトリミングを、異なる変化カーブに対して行った例である。単純な比例でないこのような変化カーブは、操作量Ｘにより参照される関数テーブルや、２次以上の関数で実現することができる。一般に、パラメータ調整装置では、微調と大きな数値変化とを両立させるため、このような変化カーブが利用されることが多い。ここでは、操作量を徐々に下げていった場合に、特定値Ｘｄにおいて変化カーブの値が差分「ＬＶ−ＰＶｏ」を下回るので、操作量Ｘが特定値Ｘｄ以下の範囲でその値「ＬＶ−ＰＶｏ」を保持するようにトリミングされている。
【００２７】
図７のグラフは、ユーザが回転操作子２０のノブ２１を操作した際の、ＣＰＵ１０によるパラメータの値の設定タイミングと値とを示しており、図５のグラフと同様の表記とされている。各時点ｔ１１〜ｔ１３においてはノブ２１の左回し操作に応じて、ｔ１４〜ｔ１７においてはノブ２１の右回し操作に応じて、それぞれ、前記した「ノブの操作ありイベント処理」が実行される。
各時点ｔ１１〜ｔ１３においては、ステップＳ２０で、それぞれ負の値である操作量Ｘ１１〜Ｘ１３が検出部２０ｃから取り込まれて操作量Ｘとされ、ステップＳ２１で、各１つ前の時点のパラメータ値であるＰＶ１０〜ＰＶ１２（時点ｔ１１の１つ前の時点のパラメータ値をＰＶ１０とする）がＰＶｏとされ、ステップＳ２２で、ＰＶｏとＸとに応じた関数ｆ(PVo,X)の値とＰＶｏとが加算されることにより、各時点のＰＶ(pid)の値ＰＶ１１〜ＰＶ１３が算出される。各時点でのＰＶｏは下限値ＬＶと等しく、かつ、操作量Ｘは下限値ＬＶを超えて下げようとする方向であるから、操作量Ｘで参照される関数ｆ(PVo,X)の値はゼロにトリミングされ、操作後のパラメータ値ＰＶ１１〜ＰＶ１３は下限値ＬＶに等しくなる。これにより、ステップＳ２４では「ＹＥＳ」と判定されてステップＳ２５に分岐して、ＣＰＵ１０は制御信号を回転操作子２０に送出し、ノブ２１に所定の時間Ｔの振動Ｓ１１〜Ｓ１３が各時点ｔ１１〜ｔ１３において付与される。
【００２８】
このように、操作前のパラメータ値が下限値ＬＶとなっており、かつ、取り込まれた操作量Ｘが負（パラメータを下限値ＬＶを超えて外に出そうとする方向）とされている場合は、操作後のパラメータ値は変化せず下限値ＬＶとなり、かつ、ノブ２１に所定の時間Ｔの触感的フィードバックが与えられ、ノブ２１を操作しているユーザは、パラメータ値が下限にあり、これ以上下げる方向（ノブ２１の左回し）に操作してもパラメータ値は変化しないことを知覚することができる。これにより、ユーザは、パラメータ値を境界値を超えて変化範囲外へ出そうとする操作を行ったことも感得することができる。
【００２９】
その後、時点ｔ１３から時点ｔ１４まではユーザはノブ２１を操作を一時的に休止し、時点ｔ１４において、上げる方向（ノブ２１の右回し）の操作を開始する。各時点ｔ１４〜ｔ１７においては、それぞれ正の値である操作量Ｘ１４〜Ｘ１７が検出部２０ｃから取り込まれて操作量Ｘとされ、ステップＳ２１で、各１つ前の時点のパラメータ値であるＰＶ１３〜ＰＶ１６がＰＶｏとされ、ステップＳ２２で、ＰＶｏとＸとに応じた関数ｆ(PVo,X)の値とＰＶｏとが加算されることにより、各時点のＰＶ(pid)の値ＰＶ１４〜ＰＶ１７が算出される。操作量Ｘが正の範囲において、関数ｆ(PVo,X)はトリミングされておらず、各時点ｔ１４〜ｔ１７において、パラメータ値ＰＶ(pid)は大きくなる。なお、操作量Ｘ１４〜Ｘ１７により参照される関数ｆ(PVo,X)の値がｆ14〜ｆ17として図示されている。ステップＳ２４では「ＮＯ」と判定されて、ステップＳ２５の処理がスキップされ、ノブ２１に振動が与えられることはない。
【００３０】
図５および図７に示す例では、境界値ＬＶが下限値の場合とされていたが、境界値ＬＶが上限値の場合も同様に処理される。すなわち、境界値ＬＶが上限値の場合は、ステップＳ２４では操作前のパラメータ値ＰＶｏが上限値ＬＶで、かつ、操作量Ｘが正のとき「ＹＥＳ」と判定される。これにより、ステップＳ２５に分岐してノブ２１に所定の時間Ｔの触感的フィードバックが与えられ、ノブ２１を操作しているユーザは、パラメータ値が上限にあり、これ以上、上げる方向（ノブ２１の右回し）の操作をしてもパラメータ値は変化しないことを知覚することができる。
また、図５および図７に示す複数の振動において、各振動の所定の時間Ｔは、例えば数十ミリ秒ないし数百ミリ秒とされるが、前後の振動の時間が一部重なり、連続的な振動となるようにしてもよい。なお、振動同士が重なっても、バイブレータ２０ｂの振幅が加算されて大きくなることはない。
【００３１】
以上説明したように、本発明の実施例のパラメータ設定装置を備えるオーディオ装置１は、ユーザによる操作子の操作に応じて、所定の範囲を有するパラメータの値を変更するパラメータ変更手段と、前記操作が前記パラメータの値を前記変化範囲外に出そうとする操作である時に、前記操作子を介してユーザに触感的フィードバックを与えるフィードバック手段とを備えており、本発明のパラメータ設定装置は、「パラメータ変更手段」が上記実施例におけるノブ２１、ロータリーエンコーダ２０ａ、検出部２０ｃ、ＣＰＵ１０、フラッシュメモリ１１、ＲＡＭ１２が協働することにより実現され、「フィードバック手段」が上記実施例におけるＣＰＵ１０、フラッシュメモリ１１、ＲＡＭ１２、バイブレータ２０ｂ、ノブ２１が協働することにより実現されている。
【産業上の利用可能性】
【００３２】
以上説明した本発明にかかるパラメータ装置は、操作子と関連するハードウェアおよびソフトウェアが協働することにより実現するものとしたが、ソフトウェアにより実現した処理の一部またはすべてをＬＳＩ（Large Scale Integration）やロジック回路等に置き換えてもよい。
以上の説明においては、操作子としてロータリーエンコーダを用いて説明したが、これ以外の様々な操作子であってよい。例えば、エンドレス操作子であれば、１自由度についてユーザ操作に限界が無いので、パラメータ値の限界を超えて操作でき、本発明にかかるパラメータ設定装置が有用に適用される。エンドレス操作子の例としては、円形のタッチパッド、ＰＣ用のマウス、ベルトを用いたエンドレスフェーダなどがある。また、リボンコントローラやタッチパネル等のタッチ系の操作子で、ユーザ操作の絶対位置ではなく、時間的な位置の変化量に基づいてパラメータを変化させている場合は、実質的にユーザ操作に限界がなくなるので、同様に本発明にかかるパラメータ設定装置を適用できる。
本発明にかかるパラメータ設定装置は、オーディオ装置に適用されていたが、本発明にかかるパラメータ設定装置は、操作子でパラメータ値を設定する、様々な用途の電子機器および電気機器に適用可能である。例えば、パーソナルコンピュータ、タブレット端末、携帯電話等に適用しても良い。あるいは、本発明にかかるパラメータ設定装置を単独の装置やソフトウェアとしてもよい。
また、操作子で設定するパラメータは、オーディオ信号制御用のパラメータに限ることはなく、映像制御、文書処理、通信制御、モータ制御、照明制御等の、様々な用途のパラメータとすることができる。
【符号の説明】
【００３３】
１  オーディオ装置、１０  ＣＰＵ、１１  フラッシュメモリ、１２  ＲＡＭ、１３  操作子、１４  表示器、１５  波形入力部、１６  信号処理部、１７  波形出力部、１８  ＣＰＵバスライン、２０  回転操作子、２０ａ  ロータリーエンコーダ、２０ｂ  バイブレータ、２０ｃ  検出部、２０ｄ  回転軸、２１  ノブ、２１ａ  鍔部、２１ｂ  把持部、３１  ノブ、３１ｃ  指示片、３２  目盛り、３２ａ  特定値マーク、３２ｂ  特定値マーク、３２ｃ  特定値マーク、３５  ノブ、３５ａ  指示線、３６  目盛り、４０ａ  表示窓、４０ｂ  表示窓、４０ｃ  表示窓
【図１】
2014215851.tif 000003
【図２】
2014215851.tif 000004
【図３】
2014215851.tif 000005
【図４】
2014215851.tif 000006
【図５】
2014215851.tif 000007
【図６】
2014215851.tif 000008
【図７】
2014215851.tif 000009