制御データ発生装置
【課題】自動操作と手動操作が可能な操作子において、自動位置決め完了時の実位置と目標位置との誤差を、その後の手動操作に際して実効的に解消し、違和感のない制御データを発生する。
【解決手段】通常は所定のスケール特性に従う制御データを位置データに応じて発生する。操作子が目標位置Ptに自動位置決めされた直後の手動操作において変更スケール特性を適用する。変更スケール特性においては、位置決め完了時における実位置Prに対応して前記所定のスケール特性上の目標位置Ptに対応する制御データDtが出力されるように起点を設定し、該起点の位置から少なくとも目標位置に達するまでの区間を含む第1の変更区間を設定し、位置検出器12で検出された位置データに対応して発生される制御データが、起点に対応する制御データDtから該第1の変更区間の終点の位置に対応する前記所定のスケール特性上の制御データまで漸次変化するようにする。
【解決手段】通常は所定のスケール特性に従う制御データを位置データに応じて発生する。操作子が目標位置Ptに自動位置決めされた直後の手動操作において変更スケール特性を適用する。変更スケール特性においては、位置決め完了時における実位置Prに対応して前記所定のスケール特性上の目標位置Ptに対応する制御データDtが出力されるように起点を設定し、該起点の位置から少なくとも目標位置に達するまでの区間を含む第1の変更区間を設定し、位置検出器12で検出された位置データに対応して発生される制御データが、起点に対応する制御データDtから該第1の変更区間の終点の位置に対応する前記所定のスケール特性上の制御データまで漸次変化するようにする。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、オーディオミキサ装置あるいはその他の制御機器において用いられる手動及び自動操作の双方が可能な操作子の操作位置を検出して該操作位置に対応した制御データを発生する制御データ発生装置に関し、特に、自動操作がなされた際に生じた位置決め誤差を、その直後になされる手動操作に際して、実効的に解消することで、違和感のない制御データ発生を行うことができるようにした制御データ発生装置に関する。
【背景技術】
【0002】
オーディオミキサ装置においては、ミキシングしようとするオーディオ信号あるいは出力しようとするオーディオ信号のレベルや周波数特性などを調整・設定するために、操作者によって手動操作されるフェーダ(スライド型操作子)が設けられている。このフェーダには、電動フェーダとして構成され、手動及び自動操作の双方が可能なタイプのものがある(例えば特許文献1及び2)。
【特許文献1】特許第2684808号
【特許文献2】特開2004−178395号公報
【0003】
上記特許文献2においては、各フェーダに取り付けた位置センサの位置対出力特性に各センサ間でバラツキがあること(センサ個体誤差)、及びフェーダ構造体に対する位置センサの取り付け誤差(各フェーダ間でのバラツキ)があること等に鑑み、これらの誤差又はバラツキを解消・吸収すべく、フェーダの指標位置(操作位置)と該フェーダに取り付けた位置センサの位置検出データとの対応付けを標準化するために、各フェーダ毎に前記位置検出データのキャリブレーションを行うようにしたことが示されている。これによって、どのフェーダでも、同じ指標位置に対する位置検出データとして、同じ値の位置検出データが発生されるように標準化することができる。
【0004】
また、上記特許文献2においては、フェーダを所望の目標位置に自動的に位置決めする場合、該目標位置に対応する指標位置に対応して位置センサから得られる実際の位置検出データと目標位置として与えられるデータとの間には、上記センサ個体誤差あるいは取り付け誤差(バラツキ)等に起因する誤差が生じることに鑑み、これを解消するために、目標位置データがそれに対応する指標位置に対応する実際の位置検出データの値を指示するように、目標位置データの変換を行うようにしたことが示されている。このように変換された目標位置データにフェーダを位置決めすることで、上記センサ個体誤差あるいは取り付け誤差を補償したフェーダ自動位置決めが行える。
【0005】
ところで、一般に、モータ駆動に応じてフェーダを自動的に位置決めするための自動位置決め機構が持つ固有の位置決め精度と、位置センサが持つ固有の位置検出精度には違いがあり、特に最近では、位置センサとしてエンコーダを用いることにより位置検出精度が精密になってきているので、自動位置決め機構が持つ位置決め精度はそれよりも粗いものとなっている。このように、自動位置決め機構が持つ位置決め精度よりも位置センサの位置検出精度が精密である場合は、次のような問題が生じる。すなわち、自動位置決め機構がその位置決め精度の範囲内で目標位置にフェーダを正確に位置決めしたとしても、位置センサの持つ位置検出精度のレベルでは目標位置から幾分ずれた位置に位置決めされているものとして位置検出されることが起こる。そのような場合、自動位置決めされた直後のフェーダを手動で操作した際に、その手動操作に応じて位置センサから出力されるフェーダ操作位置検出データの初期値として、本来の初期値であるはずの目標位置から幾分ずれた値が出力されてしまうことになり、好ましくない。例えば、−10dBの目標位置に対して自動位置決め機構が0.02dBの誤差で−9.98dBの位置に位置決めしたとすると、位置センサはそのような誤差を含む位置を正確に検出し、−9.98dBの位置検出データを出力する、という場合がある。このような場合、操作者がフェーダを自動位置決めされた目標位置の−10dBから−11dBの方に動かそうとすると、実際のフェーダ出力値は、−9.98dBから始まって−10dBを通り、−11dBの方に変化することになる。すなわち、手動操作の初期値は目標位置である−10dBであるはずなのに、実際のフェーダ出力値はそれとは異なる−9.98dBから始まってしまうことになり、そのような位置検出データに基づいてオーディオ信号のレベル調整等の所定の制御を行った場合、幾分誤った制御がなされてしまうことになり、好ましくない。例えば、操作者に対して違和感を与えることになる。
【0006】
上述の従来技術においては、このような自動位置決め機構の持つ固有の位置決め精度に起因する誤差の問題を根本的には解決することができない。そのため、そのような不都合が生じないようにするには、自動位置決め機構が持つ位置決め精度よりも位置センサの位置検出精度が粗くなるように設定するしかなかった。しかし、そうすると、せっかく高分解能の位置センサを備えたにもかかわらず、操作子の操作位置検出を粗い分解能でしか行うことができないことになり、資源の有効活用ができないという問題が生じる。
【発明の開示】
【発明が解決しようとする課題】
【0007】
本発明は上述の点に鑑みてなされたもので、自動操作がなされた際に生じた位置決め誤差を、その直後になされる手動操作に際して、実効的に解消することで、違和感のない制御データ発生を行うことができるようにし、もって高分解能の位置センサを有効に活用しうるようにした制御データ発生装置を提供しようとするものである。
【課題を解決するための手段】
【0008】
本発明に係る制御データ発生装置は、所定移動範囲にわたって操作可能な操作子と、前記所定移動範囲における前記操作子の現操作位置に応じた位置データを出力する位置検出手段と、前記位置検出手段で検出した位置データを所定のスケール特性で制御データに変換する変換手段と、指令された目標位置に前記操作子を位置決めする自動位置決め手段であって、この自動位置決め手段による位置決め精度は前記位置検出手段による位置検出精度よりも粗く、そのため、前記位置検出手段による位置検出精度に対して所定の誤差範囲内で前記目標位置への位置決めが行われる前記自動位置決め手段と、前記自動位置決め手段による位置決め完了時において変更スケール特性を適用するスケール変更制御手段であって、該変更スケール特性においては、前記位置決め完了時において前記位置検出手段から出力される位置データに対応して前記所定のスケール特性上の前記目標位置に対応する制御データが出力されるように起点を設定すると共に、前記起点の位置から少なくとも前記目標位置に達するまでの区間を含む第1の変更区間を設定し、前記位置検出手段から出力される位置データに対応する前記制御データが、前記起点に対応する制御データから該第1の変更区間の終点の位置に対応する前記所定のスケール特性上の制御データまで第1の変更スケールに従って漸次変化するように変更し、前記操作子の位置が前記第1の変更区間の終点に達したならば前記変更スケール特性の適用を解除する前記スケール変更制御手段とを備える。
【0009】
本発明においては、前記自動位置決め手段による位置決め完了時において変更スケール特性を適用するスケール変更制御手段が設けられており、このスケール変更手段において適用される変更スケール特性は、上記のような特性からなっている。従って、自動位置決め手段による位置決め結果が位置検出手段の位置検出精度からみると誤差を含んでいたとしても、スケール変更手段によって適用される変更スケール特性により、前記位置決め完了時において前記位置検出手段から出力される位置データに対応して前記所定のスケール特性上の前記目標位置に対応する制御データが出力されるように起点が設定されるので、位置決め完了時において位置検出手段から出力される位置データに対応する制御データが所定のスケール特性上の目標位置に対応する制御データになるように変更されることになり、見掛け上誤差が無いように処理される。従って、自動位置決めの後に、前記操作子の手動操作が行われたとき、その手動操作に応じて位置検出手段から出力される位置データに対応する制御データの初期値は、本来の初期値である目標位置に対応する値に必ず合致されることとなり、違和感を起こさせない、不都合のない制御データの発生を行うことができる。更に、前記変更スケール特性においては、前記起点の位置から少なくとも前記目標位置に達するまでの区間を含む第1の変更区間が設定され、前記位置検出手段から出力される位置データに対応する前記制御データが、前記起点に対応する制御データから該第1の変更区間の終点の位置に対応する前記所定のスケール特性上の制御データまで第1の変更スケールに従って漸次変化するように変更するようにしているので、第1の変更区間の終点が目標位置若しくは目標位置を越えた位置に設定されることとなり、目標位置からずれた位置に停止していた操作子が目標位置の方に動かされるとき、起点で目標位置に対応する値を持つ制御データの値が一時的にでも逆行する(例えば値が増加するように操作したつもりが一時的に減少するように変化する)ことがなく、違和感のない制御データの生成を行うことができる。また、変更スケール特性から所定のスケール特性への滑らかな移行が実現される。また、自動位置決め手段による位置決め精度が位置検出手段による位置検出精度よりも粗かったとしても、問題のない制御データ生成を行うことができるので、高分解能の位置検出手段を有効活用できるようになる。
【0010】
一実施例によると、前記スケール変更制御手段は、更に、前記起点の位置から前記第1の変更区間とは反対側に第2の変更区間を設定し、前記位置検出手段から出力される位置データに対応する前記制御データが、前記起点に対応する制御データから該第2の変更区間の終点の位置に対応する前記所定のスケール特性上の制御データまで第2の変更スケールに従って漸次変化するように変更し、前記操作子の位置が前記第2の変更区間の終点に達したならば前記変更スケール特性の適用を解除するものである。これにより、自動位置決めの後に、目標位置からずれた位置に停止していた操作子が目標位置とは逆の方に動かされるときも、変更スケール特性から所定のスケール特性への滑らかな移行が実現される。なお、この場合は、操作子が目標位置とは逆の方に動かされるため、起点で目標位置に対応する値を持つ制御データの値が逆行することがないので、該第2の変更区間を設定しなかったとしても逆行の問題は生じない。しかし、変更スケール特性から所定のスケール特性への滑らかな移行を実現するためには、第2の変更区間を実質的に設定することは有効である。
【発明を実施するための最良の形態】
【0011】
以下、添付図面を参照して本発明の一実施例を詳細に説明する。
図1は、本発明に係る制御データ発生装置の一実施例である電動フェーダ10のブロック構成を示す。電動フェーダ10は、所定の直線的移動範囲にわたって操作可能なスライド式つまみ(すなわち操作子)11を有しており、該つまみ11は手動操作及び自動操作のいずれも可能な構成である。位置検出器(位置検出手段)12は、該所定の直線的移動範囲におけるつまみ(操作子)11の現操作位置を検出し、検出した現操作位置に応じた位置データをデジタル値で出力する。位置検出器12としては、公知のどのようなタイプの位置検出器を使用してもよい。例えば、可変抵抗器とアナログ/デジタル変換器の組み合わせからなるもの、磁気式リニアエンコーダ、光学式リニアエンコーダ、リニアレゾルバ、などを適宜用いてよい。駆動機構13は、つまみ11を自動的に動かすための電動モータと、該モータの駆動力をつまみ11に直線運動として伝達する機構とを含んでいる。なお、モータは回転モータ又はリニアモータのどちらでもよい。モータ制御部14は、指令された目標位置につまみ11を自動的に動かす(位置決めする)ために、駆動機構13のモータを制御するものであり、通常知られているように、位置検出器12の出力する位置データをフィードバック情報として入力し、つまみ11を目標位置に位置決めするようにフィードバック制御(若しくはサーボ制御)する。駆動機構13とモータ制御部14とで、目標位置につまみ(操作子)11を位置決めする自動位置決め手段を構成している。
【0012】
本実施例における仕様にあっては、駆動機構13による位置決め精度は位置検出器12の位置検出精度よりも粗く、そのため、位置検出器12による位置検出精度に対して所定の誤差範囲内で目標位置への位置決めが行われる。例えば、位置検出器12による位置検出精度(検出分解能)が0.1mmであるのに対して、駆動機構13による位置決め精度は±0.5mmである。その場合、位置検出器12による位置検出精度に対する目標位置への位置決め精度の誤差範囲は、±5ポイントである(1ポイントは、位置検出器12の位置検出の最小単位を示す)。
【0013】
変換部(変換手段)15は、位置検出器12で検出した位置データを所定のスケール特性で制御データに変換する。この所定のスケール特性とは、本発明に係る制御データ発生装置(電動フェーダ10)の用途に応じた任意のスケール特性であってよい。例えば、検出した位置データをリニア特性で変換することで、つまみ11の操作位置に対してリニアな特性の制御データを発生するようにしてもよい。あるいは、検出した位置データを対数特性で変換することで、つまみ11の操作位置に対して対数特性の制御データ(デシベルデータ)を発生するようにしてもよい。
【0014】
スケール変更制御部(スケール変更制御手段)16は、駆動機構13によるつまみ11の自動位置決め完了時において駆動機構13から「位置決め完了」信号が与えられると所定の変更スケール特性を適用し、変換部15から発生する制御データの値を該変更スケール特性に従って変更するよう制御する。スケール変更制御部16によって実現する変更スケール特性の基本コンセプトについて、図2に示す実例と、図3に示すフロー図に基づき、説明する。図3は、スケール変更制御部16が実行する制御の基本概念を示すフロー図であり、スケール変更制御部16の機能はこのようなコンピュータプログラムによって実現することができるし、これと同等の機能を実現するように設計された専用の制御回路によっても実現できる。
【0015】
図2は、変換部15における所定のスケール特性の一例を示すと共に、変更スケール特性の一例を示すもので、位置検出器12の出力する位置データを横軸にとり、この位置データに対応して変換部15から発生される制御データをたて軸にとっている。最も単純な例として、変換部15における所定のスケール特性は、破線で示すようなリニア特性である例を示している。図において、Ptは目標位置データに対応する位置であり、Prはこの目標位置に対応してつまみ11が実際に位置決めされた位置(停止位置)を示し、PtとPrとの間に−ε又は+εの誤差がある例を示している。なお、図2(A)が−εの誤差がある例、図2(B)が+εの誤差がある例である。変更スケール特性は、起点の両側に設定された第1の変更区間と第2の変更区間とを含み、起点では、前記所定のスケール特性上の目標位置Ptに対応する制御データDtを位置データPrに対応して出力するように設定される。なお、目標位置Ptを含む区間を「第1の変更区間」と言い、その反対側の区間を「第2の変更区間」と言う。
【0016】
図3に示すスケール変更制御は、電動フェーダ10が目標位置に自動的に位置決めされるモードとなったときスタートする。目標位置データPtを取得し(ステップS1)、目標位置への位置決めが完了したかどうかをチェックし(ステップS2)、完了したならば、位置決め完了時において位置検出器12から出力される位置データPrを取得する(ステップS3)。
【0017】
ステップS4では、取得したPtとPrから起点及び第1の変更区間を設定する。起点は、位置決め完了時において位置検出器12から出力される位置データPrの位置であり、換言すれば、位置決め完了後に最初につまみ11が動かされたときの動き始めの位置である。上述のように、起点として、この位置データPrに対応して変換部15から前記所定のスケール特性上の目標位置Ptに対応する制御データDtが出力されるように設定する。これにより、実際の位置Prが目標位置Ptから多少ずれていても、目標位置Ptに対応する制御データを、つまみ11の動き初めのデータとして、発生させることができる。
【0018】
第1の変更区間は、前記起点の位置(Pr)から少なくとも前記目標位置(Pt)に達するまでの区間を含むように設定する。図2(A)の例では、起点から見て、目標位置Ptよりも遠い位置に第1の変更区間の終点1Eが設定されている。例えば、起点から終点1Eまでの距離は、駆動機構13における最大位置決め誤差(例えば前述の位置決め精度±0.5mm)に相当する値に固定的に定めてもよい。あるいは、目標位置に対する位置決め制御の都度、PtとPrを知得できるので、その都度、PrとPtの関係を考慮して可変的に起点から終点1Eまでの距離を設定するようにすることも可能である。
【0019】
この第1の変更区間においては、位置検出器12から出力される位置データに対応して変換部15から出力される制御データが、前記起点に対応する制御データ(Dt)から該第1の変更区間の終点1Eの位置に対応する前記所定のスケール特性上の制御データ(D1e)まで漸次変化するように、第1の変更スケールが決定(算出)され、該第1の変更スケールに従って変換を行うよう変換部15に対して指示する(ステップS6)。例えば、図2(A)において、起点から第1の変更区間の終点1Eまで延びた一点鎖線が第1の変更スケールの特性を示している。勿論、第1の変更スケールの特性は図示のような直線状の特性に限らず、滑らかな変化を実現するものであれば、どのような特性であってもよい。このように、第1の変更スケールを設定することで、第1の変更区間の終点1Eが目標位置Ptを越えた位置に設定されることとなり、目標位置からずれた位置Prに停止していたつまみ11が目標位置Ptの方に動かされるとき、起点で目標位置に対応する値Dtを持つ制御データの値が一時的にでも逆行する(例えば値が増加するように操作したつもりが一時的に減少するように変化する)ことがなく、違和感のない制御データの生成を行うことができる。また、変更スケール特性から所定のスケール特性への滑らかな移行が実現される。
【0020】
なお、起点で目標位置に対応する値Dtを持つ制御データの値が一時的にでも逆行しないようにするという目的は、第1の変更区間の終点を図2(A)の1E’のように、目標位置Ptの位置に設定することでも達成できる。ただし、この場合は、第1の変更スケールの特性は、実線で示すように、目標位置に対応する値Dtを維持するフラットなものとなる。
【0021】
ステップS5では、上記のように設定された起点と前記第1の変更区間(目標位置Ptを含む区間)とに基づき、起点を挟んで該第1の変更区間とは反対側に第2の変更区間を設定する。起点の位置(Pr)から見て目標位置(Pt)が存在する側とは反対側の適宜の位置を第2の変更区間の位置を終点2Eとして設定し、起点から終点2Eまでが第2の変更区間となる。なお、つまみ11が起点から第2の変更区間の方に動かされるときは、起点で目標位置に対応する値を持つ制御データの値が逆行する(例えば値が減少するように操作したつもりが一時的に増加するように変化する)ことが起こらないので、該第2の変更区間の終点の位置は適宜に定めてもさしつかえない。例えば、起点と同じ位置2E’を終点として設定することも可能である。そのように第2の変更区間の終点を設定した場合は、実質的に第2の変更区間が存在しないことと等価である。すなわち、その場合は、つまみ11を起点から第2の変更区間の方に動かしたとき、すぐに、所定のスケール特性に切り替わることとなる。しかし、変更スケール特性から所定のスケール特性へと滑らかに制御データの特性を変化させるということを考慮すると、第2の変更区間の長さは、第1の変更区間と同様にある程度の長さがあるのがよい。例えば、第2の変更区間においても、起点から終点2Eまでの距離を、駆動機構13における最大位置決め誤差(例えば前述の位置決め精度±0.5mm)に相当する値に固定的に定めてもよい。
【0022】
この第2の変更区間においても、位置検出器12から出力される位置データに対応して変換部15から出力される制御データが、前記起点に対応する制御データ(Dt)から該第2の変更区間の終点2Eの位置に対応する前記所定のスケール特性上の制御データ(D2e)まで漸次変化するように、第2の変更スケールが決定(算出)され、該第2の変更スケールに従って変換を行うよう変換部15に対して指示する(ステップS6)。例えば、図2(A)において、起点から第2の変更区間の終点2Eまで延びた一点鎖線が第2の変更スケールの特性を示している。勿論、第2の変更スケールの特性は図示のような直線状の特性に限らず、滑らかな変化を実現するものであれば、どのような特性であってもよい。このように、第2の変更スケールを設定することで、変更スケール特性から所定のスケール特性への滑らかな移行が実現される。なお、第2の変更区間の終点を図2(A)の2E’のように、起点と同じ位置に設定した場合は、第2の変更スケールの特性は、実線で示すように垂直になり、前述のように実質的に存在しないのと等価となる。
【0023】
なお、図2(B)に示すように目標位置Ptに対して位置決めされた実際の位置Prが+εの誤差を持つ場合も、図2(A)に関連して述べた上記説明をそのまま適用することができる。
【0024】
図3において、ステップS7では、位置検出器12から与えられる位置データを監視しており、つまみ(操作子)11の現在位置が第1又は第2の変更区間から外れたならば、変更スケール特性の適用を解除するよう、変換部15に対して指示する。これ以後は、変更スケール制御部16による変更スケール制御を終了し、変換部15では所定のスケール特性に従う制御データの生成を行う。
【0025】
このようにして、電動フェーダ10の自動操作及び手動操作に応じて、所定のスケール特性及び変更スケール特性に従って生成された制御データは、この電動フェーダ10の使用目的に応じて、適宜に利用される。
【0026】
次に、図4以降の図を参照して、上記電動フェーダ10をオーディオ信号用あるいはビデオ信号用のデジタルミキサ装置において装備した実施例について説明する。
【0027】
図4は、図1〜図3で述べたような原理的構成からなる電動フェーダ10を複数備えたデジタルミキサ装置の電気・電子的構成例を示す概略ブロック図である。このデジタルミキサ装置は、複数の上記電動フェーダ10でなる電動フェーダ部100と、中央処理装置(CPU)101、フラッシュメモリ102、RAM(ランダム・アクセス・メモリ)103、表示器104、その他の操作子部105、波形入出力インターフェース(I/O)106、デジタル信号処理装置(DSP)107、その他の入出力インターフェース(I/O)108、およびシステムバス109を備える。
【0028】
CPU101は、このミキサ装置全体の動作を制御する処理装置である。フラッシュメモリ102は、CPU101が実行する各種のプログラムやCPU101が使用する各種のデータなどを格納した不揮発性メモリである。RAM103は、CPU101が実行するプログラムのロード領域やワーク領域に使用する揮発性メモリである。表示器104は、このミキサ装置のコンソールパネル面に設けられた各種の情報を表示するためのディスプレイである。その他の操作子部105は、コンソールパネル面上に設けられたユーザが操作するための各種の操作子(スイッチや各種の調整用操作子等)からなっている。波形入出力インターフェース106は、マイクロホンやスピーカなどの外部機器との間で波形信号(オーディオ信号及び/又はビデオ信号)を授受するためのインターフェースである。例えば、この波形入出力インターフェース106を介して入力した波形信号(オーディオ信号又はビデオ信号)を、このミキサ装置でミキシング処理し、ミキシングした出力信号をこの波形入出力インターフェース106から外部のスピーカ等に出力する。DSP107は、CPU101の指示に基づいて各種のマイクロプログラムを実行することにより、波形入出力インターフェース106経由で入力した波形信号のミキシング処理、効果付与処理、および音量レベル制御処理などを行う。その他の入出力インターフェース108は、その他の機器を接続するためのインタフェースである。
【0029】
電動フェーダ部100における各電動フェーダ10は、ミキサ装置のコンソールパネル面上の所定の各箇所に設けられており、その仕様・目的に応じた各種パラメータの値を設定するためのものである。すなわち、電動フェーダ10から発生される制御データとして、その仕様・目的に応じた種類のパラメータの値がつまみ11の操作位置に対応して発生されるように、前記変換部15における前記所定のスケール特性が設定される。なお、図4の実施例においては、例えば、各電動フェーダ10の変換部15及びスケール変更制御部16の部分の機能がCPU101におけるコンピュータプログラムの処理によって実現される。そして、位置検出器12と駆動機構13が各電動フェーダ10毎に個別に装備される。モータ制御部14の部分は、各電動フェーダ10毎に個別に装備してもよいし、あるいは共通のモータ制御回路ハードウェアを複数の電動フェーダ10で共用するようにしてもよい。
【0030】
図5は、CPU101により実行されるメインルーチンの一例を示すフロー図であり、本発明に関連する部分のみを示している。電源ONによってプログラムがスタートし、所定の装置初期化処理を行う(S11)。この初期化処理においては、「スケール変更制御」の動作フラグを「FALSE」(0)に、目標位置レジスタを「NULL」(0)に、検出位置レジスタを「NULL」(0)に、それぞれ初期設定する。「スケール変更制御」の動作フラグとは、前記スケール変更制御部16の制御により前記変更スケール特性を適用するモードとするか否かを示すフラグである。初期状態では、「FALSE」であり、変更スケール特性を適用しないことを示す。目標位置レジスタは、電動フェーダ10を自動操作するときの目標位置(図2におけるPtに相当)を設定するデータを記憶するものである。検出位置レジスタは、電動フェーダ10の自動位置決めが完了したときに目標位置に対応して実際に停止した位置(図2における停止位置Prに相当)を示すデータを記憶するものである。これらの動作フラグ及びレジスタは、各電動フェーダ10毎に設けられている。
【0031】
ステップS12では、リコール指示イベントがあったかどうかを判定する。リコール指示イベントとは、ミキサのシーンリコール機能として知られる、所望のシーンを呼び出すためのシーンリコールスイッチ(これはその他の操作子部105に含まれる)のオン操作イベントである。シーンリコール機能とは、複数の電動フェーダ10、スイッチ、その他操作子の所望の設定/調整状態を示す各種パラメータ値を1シーンのデータとして、フラッシュメモリ102等の読み書き可能な不揮発性メモリに、複数シーン分記憶しておき、そのうちいずれか1シーンをユーザの選択に応じて読み出し、読み出した各パラメータ値を対応する電動フェーダ10、スイッチ、その他操作子に設定する機能である。リコール指示イベントがあった場合は、リコールイベント処理(S13)のサブルーチンを実行する。このリコールイベント処理(S13)の一例は図6に示されている。
【0032】
ステップS14では、いずれかの電動フェーダ10のマニュアル操作イベントがあったかどうかを判定する。いずれかの電動フェーダ10が手動操作されたときは、操作イベント処理(S15)のサブルーチンを実行する。この操作イベント処理(S15)の一例は図7に示されている。詳しくは、ステップS14で判定するマニュアル操作イベントとは、電動フェーダ10の位置検出器12から出力される位置データの変化イベントである。例えば、前述のように位置検出器12の位置検出精度が0.1mmであるとすると、電動フェーダ10のつまみ11が0.1mm動く毎に、マニュアル操作イベントが発生し、操作イベント処理(S15)が実行される。
【0033】
ステップS16では、シャットダウンイベント(電源OFF指示)があったかどうかを判定する。シャットダウンイベントが発生していなければ、その他の処理(S17)を実行する。その他の処理(S17)としては、シーンメモリ指示等に従いコンソールパネルで設定した各種パラメータのセットをシーンデータとして保存(ストア)する処理や、表示器104の表示状態の更新処理、DSP107の制御等がある。シャットダウンイベント(電源OFF指示)があった場合は、ステップS18で所定の終了処理を行う。終了処理としては、出力信号の出力レベルを絞ったりする等、電源をOFFにする前に行っておくべき各種処理を行う。その後、プログラムを終了し、電源をOFFする。
【0034】
ここで、この実施例における所定のスケール特性の具体例を図8に示す。横軸が位置検出器12が出力する位置データを示し、たて軸が該位置データに対応して変換部15から発生される制御データを示す。この具体例では、所定のスケール特性として、位置検出器12が出力する位置データを、実位置にリニアに対応する値を持つ制御データに変換する例を示している。すなわち、この場合、制御データの値は、電動フェーダ10の操作位置にリニアに対応しており、実質的に位置情報と等価である。ただし、位置検出器12が出力する位置データは、そのセンサの位置検出精度によって所定の分解能に限定されるが、変換部15で出力する制御データ(位置情報)は、変換テーブル又は変換関数等の構成に応じて、センサ位置検出精度よりも細かな分解能のデータとして生成され得る。これによって、スケール変更特性において細かなデータ変換が可能である。
【0035】
図8の例では、電動フェーダ10のつまみ11の位置に応じて、位置検出器12は0.1mmの分解能でデジタルの位置データを出力するものとしている。つまり、位置検出器12はつまみ11の0.1mm毎の変化に応じて1ポイントづつ増加するデジタルの位置データを出力する。図では、便宜上、横軸は20ポイントまでしか示されていないが、設計上適宜に定められるつまみ11の最大移動範囲に応じたポイント数からなる位置データが位置検出器12から出力される。そして、変換部15では、例えば、フェーダ10においてつまみ11が最下端にあるときの位置を0mm(基準位置=最小値)とし、つまみ11が最上端にあるときの位置をNmm(最大値)として、0.0mm(最小値)からN mm (最大値)までの位置情報をフェーダ位置検出情報(制御データ)として出力する。図では、便宜上、たて軸は2mmまでしか示されていないが、設計上適宜に定められるつまみ11の最大移動範囲に応じたNmm(最大値)までのフェーダ位置検出情報(制御データ)が変換部15から出力される。なお、変換部15が出力するフェーダ位置検出情報(制御データ)の値は、上記のような小数点第1位の.0mm単位(つまり、100μm単位)に限らず、小数点第2位の.00mm単位(つまり、10μm単位)あるいは小数点第3位の.000mm単位(つまり、1μm単位)など、設計上適宜に定めてよい。例えば、少なくともスケール変更特性においては細かな分解能でデータ変換を行うとよい。
【0036】
次に、図6に従ってリコールイベント処理(S13)の一例を説明する。
リコール指示があると、メモリからリコールすべきシーンの各パラメータ値(シーンデータ)を読み出し、これに基づき各電動フェーダ10の目標位置(Pt)を設定する(S21)。この場合、メモリに記憶されているシーンデータとして、位置検出器12が出力する位置データと同じスケールの目標位置データそのものを記憶している場合は、読み出したシーンデータに含まれる各電動フェーダ10のパラメータ値(つまり目標位置データ)そのものを目標位置データとして設定する。他方、メモリに記憶されているシーンデータとして、変換部15で所定のスケール特性に従って発生した制御データを記憶している場合は、読み出したシーンデータに含まれる各電動フェーダ10のパラメータ値(つまり制御データ)を、当該電動フェーダ10に対応する当該所定のスケール特性に従って位置データに逆変換したものを目標位置データとして設定する。設定された目標位置データは、前記目標位置レジスタに記憶される。なお、このステップS21は、図3のステップS1に対応している。
【0037】
ステップS22では、「スケール変更制御」の動作フラグを「TRUE」(1)にセットする。そして、各電動フェーダ10の目標位置を示すデータを対応するモータ制御部14にそれぞれ与え、それぞれのつまみ11を自動的に該目標位置まで移動させるよう、位置決め制御を行うべきことを指示する(S23)。この指示に応じて、モータ制御部14では、前述のとおり、指令された目標位置までつまみ11を自動的に動かし、位置決めが完了したら、位置決め完了信号をCPU101に返す。ステップS24では、位置決め完了信号を受けるまで待機する。位置決め完了すると、ステップS25で、そのとき位置検出器12から出力されている位置データ(実位置)を取得し、これを検出位置レジスタにストアする。この検出位置レジスタにストアされる実位置データは、目標位置(Pt)に対して実際に停止された位置(図2のPrに相当)を示しており、前述のように、−εまた+εの誤差を含み得る。一例として、−εまた+εの最大誤差範囲は、±0.5mm(位置検出器12が出力する位置データの単位で±5ポイント)であるとする。なお、ステップS24は図3のステップS2に対応し、ステップS25は図3のステップS3に対応している。
【0038】
ステップS26では、図3のステップS4〜S5と同様に、目標位置レジスタにストアしている目標位置(Pt)と検出位置レジスタにストアしている検出位置(実際の停止位置Pr)に基づき、起点及び第1及び第2の変更区間を設定する。起点及び第1及び第2の変更区間の設定の仕方は、図2を参照して説明したのと同様であってよいが、ここで、より一層具体的な例につき図9を参照して説明する。
【0039】
図9は、図8に示す所定のスケール特性に対する変更スケール特性の一例を示す図である。図9の例において、第1及び第2の変更区間の起点は、前述と同様に、目標位置Ptに対応するフェーダ位置検出情報(制御データ)が検出位置(実際の停止位置Pr)に対応して出力されるように設定する。図9の例において、第1の変更区間の終点1Eは、目標位置Ptを基準にして、所定の距離+Dの位置に設定する。ここで、Dは、位置決め誤差(−εまた+ε)の最大範囲E(例えば位置データの単位で5ポイント)に対して、D>Eであるように定める。あるいは、D=Eであってもよいが、変更スケール特性から所定のスケール特性に滑らかに移行させるには、D>Eが好ましい。また、第2の変更区間の終点2Eは、目標位置Ptを基準にして、所定の距離−Dの位置に設定する。すなわち、
1E:Pt+D
2E:Pt−D
である。これにより、目標位置Ptが必ず変更スケール特性の適用区間に含まれることになり、前述したような逆行が起こらず、また、第1及び第2の変更区間の長さを適切に確保することで、変更スケール特性から所定のスケール特性への移行を滑らかに行うことができる。
【0040】
ステップS27では、図3のステップS6と同様に、第1及び第2の変更区間に対応する第1及び第2の変更スケールを線形関数で設定し、設定した第1及び第2の変更スケールに従って位置データをフェーダ位置検出情報(制御データ)に変換するよう、変換部15に対して指示する。なお、この実施例の場合、変換部15の機能は図7の操作イベント処理(S15)によって実現される。例えば、下記式により、第1の変更区間に対応する第1の変更スケールの傾きA1と、第2の変更区間に対応する第2の変更スケールの傾きA2とが算出される。
A1=A×D/(1E−Pr)
A2=A×D/(Pr−2E)
ここで、Aは所定のスケール特性の関数F(x)の傾きである。
【0041】
位置検出器12から出力される位置データをxで示し、初期値をBで示すと、線形関数からなる所定のスケール特性の関数F(x)は、
F(x)=Ax+B
と表わせる。
第1の変更区間に対応する第1の変更スケールを示す関数G1は、
G1(x)=A1x+(A−A1)1E+B
と表わせる。ただし、位置データxは第1の変更区間の範囲内の値。
第2の変更区間に対応する第2の変更スケールを示す関数G2は、
G2(x)=A2x+(A−A2)2E+B
と表わせる。ただし、位置データxは第2の変更区間の範囲内の値。
【0042】
図9の例の場合、D=6、B=0とし、
F(x)=(1/10)x+0
A1=(1/10)×6/(16−8)=3/40
A2=(1/10)×6/(8−4)=3/20
G1(x)=3/40x+(2/5)
G2(x)=3/20x−(1/5)
と表わせる。
【0043】
なお、図6のステップS24〜S27の処理は、各フェーダ10毎にそれぞれ実行される。
【0044】
次に、図7に従って操作イベント処理(S15)の一例を説明する。
まず、シーンリコールの後、初めて当該電動フェーダ10が手動操作された場合について説明する。その場合、当該電動フェーダ10に関する「スケール変更制御」の動作フラグは「TRUE」であり(図6のS22)、変更スケール特性が適用されるモードであることを示している。ステップS31で、位置検出器12から出力される現在の位置データ(実位置x)を取得する。ステップS32で動作フラグを判定し、この場合は「TRUE」であるから、ステップS33に行く。ステップS33では、取得した実位置xが第1又は第2の変更区間の範囲外であるかを判定する。第1又は第2の変更区間の範囲内であれば、ステップS34に行き、第1又は第2の変更スケールを示す関数G1又はG2に従ってフェーダ位置検出情報(制御データ)を発生する。すなわち、実位置xが第1の変更区間内にあれば、該第1の変更区間に対応する第1の変更スケールを示す関数G1(x)に従ってフェーダ位置検出情報(制御データ)を発生し、実位置xが第2の変更区間内にあれば、該第2の変更区間に対応する第2の変更スケールを示す関数G2(x)に従ってフェーダ位置検出情報(制御データ)を発生する。以後、電動フェーダ10の操作イベントが発生する毎に、ステップS31,S32,S33,S34のルートの処理が行われ、第1又は第2の変更スケールを示す関数G1(x)又はG2(x)に従ってフェーダ位置検出情報(制御データ)を発生する。
【0045】
やがて、電動フェーダ10の操作位置が第1又は第2の変更区間の範囲外に出ると、ステップS33はYESと判定し、ステップS35で動作フラグを「FALSE」にリセットする。こうして、変更スケール特性を適用するモードを解除する。次のステップS36では、所定のスケール特性を示す通常の関数F(x)に従って実位置xに応じたフェーダ位置検出情報(制御データ)を発生する。以後は、ステップS32で、動作フラグは「FALSE」と判定され、図7の処理は、S31,S32,S36のルートを通る。従って、以後は、電動フェーダ10の操作イベントが発生する毎に、所定のスケール特性を示す通常の関数F(x)に従って実位置xに応じたフェーダ位置検出情報(制御データ)を発生する。
【0046】
図9を例にして具体的に説明すると、目標位置Ptとして10ポイント(1mm)の位置が指定され、自動位置決めの結果、フェーダ10のつまみ11は、実際には8ポイント(0.8mm)の位置Prで停止している。目標位置からのずれは2ポイント(0.2mm)であり、所定の最大誤差±E=±0.5mm(±5ポイント)の範囲内である。その後、フェーダ10が増加方向に手動で動かされたとすると、第1の変更区間に対応する第1の変更スケールを示す関数G1(x)が適用され、起点における実位置xは位置Pr(8ポイント)であるが、それに対応するフェーダ位置検出情報(制御データ)として、所定のスケール特性上の目標位置Pt(10ポイント)に対応する1.0mmを示すフェーダ位置検出情報(制御データ)が発生される。以後、第1の変更区間においては、実位置xの8〜16ポイントの変化に対して、第1の変更スケールを示す関数G1(x)に従って、1.0mm〜1.6mmのフェーダ位置検出情報(制御データ)が発生される。そして、終点1E=16ポイントを過ぎて、第1の変更区間の外に出ると、所定のスケール特性を示す関数F(x)に従ってフェーダ位置検出情報(制御データ)が発生されるようになる。なお、この場合、1.00mm〜1.60mmあるいは1.000mm〜1.600mmのように、小数点の有効桁を増すことで細かな分解能でフェーダ位置検出情報(制御データ)を発生するようにすれば、図示のような滑らかな変化を得ることができる。一方、1.0mm〜1.6mmのように、有効桁が小数点第1位であると、必ずしも図示のような滑らかな変化とはならず、幾分階段状となるが、それでも差し支えない。
【0047】
一方、起点(Pr)からフェーダ10が減少方向に手動で動かされたとすると、第2の変更区間に対応する第2の変更スケールを示す関数G2(x)が適用され、実位置xの8〜4ポイントの変化に対して、第2の変更スケールを示す関数G2(x)に従って、1.0mm〜0.4mmのフェーダ位置検出情報(制御データ)が発生される。そして、終点2E=4ポイントを過ぎて、第2の変更区間の外に出ると、所定のスケール特性を示す関数F(x)に従ってフェーダ位置検出情報(制御データ)が発生されるようになる。
【0048】
勿論、一旦、第1又は第2の変更区間の外に出ると、変更スケール特性の適用が解除されるので、以後は、第1又は第2の変更区間であった区間内に操作位置が戻されたとしても、所定のスケール特性を示す関数F(x)に従ってフェーダ位置検出情報(制御データ)が発生される。
【0049】
図10は、図8に示す所定のスケール特性に対する変更スケール特性の別の例を示す図である。図10の例は、第1及び第2の変更区間の終点1E,2Eの定め方が図9の例とは相違している。図10の例において、第1の変更区間の終点1Eは、目標位置に対する実際の停止位置Prを基準にして所定の距離+Dの位置に設定し、また、第2の変更区間の終点2Eは、目標位置に対する実際の停止位置Prを基準にして所定の距離−Dの位置に設定する。ここで、Dは、位置決め誤差(−εまた+ε)の最大範囲E(例えば位置データの単位で5ポイント)に対して、D=Eであるように定めている。D>Eであってもよく、変更スケール特性から所定のスケール特性に滑らかに移行させるには、むしろD>Eの方が好ましい。D=Eの場合は、位置決め誤差(−εまた+ε)が最大値Eのとき、第1又は第2の変更区間の一方の変更スケールの傾きがフラットになるが、D>Eの場合はそれを避けることができる。
【0050】
ところで、フェーダ10の所定移動範囲の両端部においては、それぞれの端部の近傍に起点が位置する場合、前記第1及び第2の変更区間の一方(端部寄りの変更区間)の終点1E又は2Eを適切に設定することができず、該一方の変更区間に関しては適切な変更スケールの設定ができなくなる。このような端部問題を解決するためには、次のような2種の対策が考えられる。
【0051】
一つの対策としては、図11に示すように、変換部15において設定する前記所定のスケール特性において、フェーダ10の最大移動範囲の両端部の所定範囲Dにおける位置データ(横軸)の変化に対して制御データ(たて軸)の最小値及び最大値を維持するマージン領域M1,M2をそれぞれ設定することである。この場合、フェーダ10はマージン領域M1,M2に入って動かすことができるが、有効な制御データを得ることができる有効操作範囲は、マージン領域M1,M2の内側である。このマージン領域M1,M2の所定範囲(幅)Dは、少なくとも位置決め誤差(−εまた+ε)の最大範囲Eに等しくする(D=E)。つまり、目標位置(Pt)が最小値又は最大値のとき、最大の位置決め誤差(マージン領域M1側では−ε、マージン領域M2側では+ε)で位置決めされた停止位置(Pr)がマージン領域M1,M2に含まれるようにする。
【0052】
そして、スケール変更制御部16では、前記第1の変更区間の前記起点が前記マージン領域M1,M2に入る場合は、前記第1の変更区間についてのみ前記第1の変更スケールに従う前記制御データの発生を行うようにする。このようにすれば、起点(Pr)がマージン領域M1,M2に入る場合、目標位置(Pt)とは反対側の第2の変更区間に対応する所定のスケール特性は全てマージン領域M1,M2に入ることとなり、一定の最小値又は最大値を維持すればよい(若しくは有効なデータを発生する必要がない)こととなる。従って、その終点2Eを適切に設定することができなかったとしても、適切な変更スケールの設定が行える(一定の最小値又は最大値を維持すればよいため)、若しくは、その部分では有効なデータを発生する必要がないものとなる。
【0053】
別の対策としては、図12に示すように、フェーダ10の移動範囲の両端部(図12では一端部ESの側のみ拡大して示している)において、該各端部(ES)を越える仮想的な位置検出領域をそれぞれ設定し、該各端部(ES)における前記第2の変更区間を前記仮想的な位置検出領域にわたって設定するようにする。仮想的な位置検出領域とは、フェーダ10の移動範囲外であるため、その領域に対応する位置データ(x)は実際には発生されないが、位置データ(x)が発生されると仮定して所定のスケール特性に従うフェーダ位置検出情報(制御データ)を仮想的に生成できるようにした領域である。この仮想的な位置検出領域を設定することにより、第2の変換区間の終点2Eが設定できるようになり、第2の変換スケールを示す関数G2(x)を設定・演算することができる。
【0054】
なお、図8に示すように変換部15における所定のスケール特性がリニア関数である場合において、最終的な制御データ(パラメータ)として、フェーダ10の移動量に対してデシベル特性等の非リニアな関数特性を示すデータ(パラメータ)を得たいならば、変換部15から出力されるフェーダ位置検出情報(制御データ)を所望の非リニアな変換特性の変換手段で更に変換するようにすればよい。勿論、それに限らず、変換部15における所定のスケール特性そのものを、所望の非リニアな変換特性としてもよく、その場合は、変換部15から発生されるフェーダ位置検出情報(制御データ)が直接的にデシベル(減衰量)データ等の所定のスケール特性のデータで表現される。
【0055】
本発明を適用しうる操作子は、上記実施例のようなフェーダ(スライド式又はリニア式に移動する操作子)に限らず、回転式の操作子あるいはその他の形式の操作子であってもよく、要は手動操作と自動操作のどちらもが可能なように構成されたものであればよい。
【0056】
位置検出器12から出力される位置データの分解能とこれに応じて変換部15から出力されるフェーダ位置検出情報(制御データ)の値との対応関係は、上記のように所定のスケール特性がリニア特性又は非リニア特性のどちらであるにせよ、連続的に対応付けられるようになっていてもよいし、あるいは、不連続的またステップ状に対応付けられるようになっていてもよい。
【0057】
本発明に係る制御データ発生装置(電動フェーダ10)は、上記のようなミキサ装置に限らず、電子楽器、アミューズメント機器、電子玩具、その他の各種制御機器などにおいても適用することができる。
【図面の簡単な説明】
【0058】
【図1】本発明に係る制御データ発生装置の一実施例である電動フェーダの構成を示すブロック図。
【図2】図1の変換部における所定のスケール特性の一例を示すと共に、変更スケール特性の一例を示すグラフ。
【図3】図1のスケール変更制御部が実行する制御の基本概念を示すフロー図。
【図4】図1に示す電動フェーダを複数備えたデジタルミキサ装置の構成例を示す概略ブロック図。
【図5】図4のCPUにより実行されるメインルーチンの一例を示すフロー図。
【図6】図5におけるリコールイベント処理の一例を示すフロー図。
【図7】図5における操作イベント処理の一例を示すフロー図。
【図8】所定のスケール特性の具体例を示すグラフ。
【図9】図8に示す所定のスケール特性に対する変更スケール特性の一例を示すグラフ。
【図10】図8に示す所定のスケール特性に対する変更スケール特性の別の例を示すグラフ。
【図11】所定のスケール特性において、フェーダの最大移動範囲の両端部の所定範囲においてマージン領域をそれぞれ設定する例を示すグラフ。
【図12】フェーダの移動範囲の両端部において、該各端部を越える仮想的な位置検出領域をそれぞれ設定する例を示すグラフ。
【符号の説明】
【0059】
10 電動フェーダ
11 スライド式つまみ(操作子)
12 位置検出器
13 駆動機
14 モータ制御部
15 変換部
16 スケール変更制御部
100 電動フェーダ部
101 CPU
【技術分野】
【0001】
この発明は、オーディオミキサ装置あるいはその他の制御機器において用いられる手動及び自動操作の双方が可能な操作子の操作位置を検出して該操作位置に対応した制御データを発生する制御データ発生装置に関し、特に、自動操作がなされた際に生じた位置決め誤差を、その直後になされる手動操作に際して、実効的に解消することで、違和感のない制御データ発生を行うことができるようにした制御データ発生装置に関する。
【背景技術】
【0002】
オーディオミキサ装置においては、ミキシングしようとするオーディオ信号あるいは出力しようとするオーディオ信号のレベルや周波数特性などを調整・設定するために、操作者によって手動操作されるフェーダ(スライド型操作子)が設けられている。このフェーダには、電動フェーダとして構成され、手動及び自動操作の双方が可能なタイプのものがある(例えば特許文献1及び2)。
【特許文献1】特許第2684808号
【特許文献2】特開2004−178395号公報
【0003】
上記特許文献2においては、各フェーダに取り付けた位置センサの位置対出力特性に各センサ間でバラツキがあること(センサ個体誤差)、及びフェーダ構造体に対する位置センサの取り付け誤差(各フェーダ間でのバラツキ)があること等に鑑み、これらの誤差又はバラツキを解消・吸収すべく、フェーダの指標位置(操作位置)と該フェーダに取り付けた位置センサの位置検出データとの対応付けを標準化するために、各フェーダ毎に前記位置検出データのキャリブレーションを行うようにしたことが示されている。これによって、どのフェーダでも、同じ指標位置に対する位置検出データとして、同じ値の位置検出データが発生されるように標準化することができる。
【0004】
また、上記特許文献2においては、フェーダを所望の目標位置に自動的に位置決めする場合、該目標位置に対応する指標位置に対応して位置センサから得られる実際の位置検出データと目標位置として与えられるデータとの間には、上記センサ個体誤差あるいは取り付け誤差(バラツキ)等に起因する誤差が生じることに鑑み、これを解消するために、目標位置データがそれに対応する指標位置に対応する実際の位置検出データの値を指示するように、目標位置データの変換を行うようにしたことが示されている。このように変換された目標位置データにフェーダを位置決めすることで、上記センサ個体誤差あるいは取り付け誤差を補償したフェーダ自動位置決めが行える。
【0005】
ところで、一般に、モータ駆動に応じてフェーダを自動的に位置決めするための自動位置決め機構が持つ固有の位置決め精度と、位置センサが持つ固有の位置検出精度には違いがあり、特に最近では、位置センサとしてエンコーダを用いることにより位置検出精度が精密になってきているので、自動位置決め機構が持つ位置決め精度はそれよりも粗いものとなっている。このように、自動位置決め機構が持つ位置決め精度よりも位置センサの位置検出精度が精密である場合は、次のような問題が生じる。すなわち、自動位置決め機構がその位置決め精度の範囲内で目標位置にフェーダを正確に位置決めしたとしても、位置センサの持つ位置検出精度のレベルでは目標位置から幾分ずれた位置に位置決めされているものとして位置検出されることが起こる。そのような場合、自動位置決めされた直後のフェーダを手動で操作した際に、その手動操作に応じて位置センサから出力されるフェーダ操作位置検出データの初期値として、本来の初期値であるはずの目標位置から幾分ずれた値が出力されてしまうことになり、好ましくない。例えば、−10dBの目標位置に対して自動位置決め機構が0.02dBの誤差で−9.98dBの位置に位置決めしたとすると、位置センサはそのような誤差を含む位置を正確に検出し、−9.98dBの位置検出データを出力する、という場合がある。このような場合、操作者がフェーダを自動位置決めされた目標位置の−10dBから−11dBの方に動かそうとすると、実際のフェーダ出力値は、−9.98dBから始まって−10dBを通り、−11dBの方に変化することになる。すなわち、手動操作の初期値は目標位置である−10dBであるはずなのに、実際のフェーダ出力値はそれとは異なる−9.98dBから始まってしまうことになり、そのような位置検出データに基づいてオーディオ信号のレベル調整等の所定の制御を行った場合、幾分誤った制御がなされてしまうことになり、好ましくない。例えば、操作者に対して違和感を与えることになる。
【0006】
上述の従来技術においては、このような自動位置決め機構の持つ固有の位置決め精度に起因する誤差の問題を根本的には解決することができない。そのため、そのような不都合が生じないようにするには、自動位置決め機構が持つ位置決め精度よりも位置センサの位置検出精度が粗くなるように設定するしかなかった。しかし、そうすると、せっかく高分解能の位置センサを備えたにもかかわらず、操作子の操作位置検出を粗い分解能でしか行うことができないことになり、資源の有効活用ができないという問題が生じる。
【発明の開示】
【発明が解決しようとする課題】
【0007】
本発明は上述の点に鑑みてなされたもので、自動操作がなされた際に生じた位置決め誤差を、その直後になされる手動操作に際して、実効的に解消することで、違和感のない制御データ発生を行うことができるようにし、もって高分解能の位置センサを有効に活用しうるようにした制御データ発生装置を提供しようとするものである。
【課題を解決するための手段】
【0008】
本発明に係る制御データ発生装置は、所定移動範囲にわたって操作可能な操作子と、前記所定移動範囲における前記操作子の現操作位置に応じた位置データを出力する位置検出手段と、前記位置検出手段で検出した位置データを所定のスケール特性で制御データに変換する変換手段と、指令された目標位置に前記操作子を位置決めする自動位置決め手段であって、この自動位置決め手段による位置決め精度は前記位置検出手段による位置検出精度よりも粗く、そのため、前記位置検出手段による位置検出精度に対して所定の誤差範囲内で前記目標位置への位置決めが行われる前記自動位置決め手段と、前記自動位置決め手段による位置決め完了時において変更スケール特性を適用するスケール変更制御手段であって、該変更スケール特性においては、前記位置決め完了時において前記位置検出手段から出力される位置データに対応して前記所定のスケール特性上の前記目標位置に対応する制御データが出力されるように起点を設定すると共に、前記起点の位置から少なくとも前記目標位置に達するまでの区間を含む第1の変更区間を設定し、前記位置検出手段から出力される位置データに対応する前記制御データが、前記起点に対応する制御データから該第1の変更区間の終点の位置に対応する前記所定のスケール特性上の制御データまで第1の変更スケールに従って漸次変化するように変更し、前記操作子の位置が前記第1の変更区間の終点に達したならば前記変更スケール特性の適用を解除する前記スケール変更制御手段とを備える。
【0009】
本発明においては、前記自動位置決め手段による位置決め完了時において変更スケール特性を適用するスケール変更制御手段が設けられており、このスケール変更手段において適用される変更スケール特性は、上記のような特性からなっている。従って、自動位置決め手段による位置決め結果が位置検出手段の位置検出精度からみると誤差を含んでいたとしても、スケール変更手段によって適用される変更スケール特性により、前記位置決め完了時において前記位置検出手段から出力される位置データに対応して前記所定のスケール特性上の前記目標位置に対応する制御データが出力されるように起点が設定されるので、位置決め完了時において位置検出手段から出力される位置データに対応する制御データが所定のスケール特性上の目標位置に対応する制御データになるように変更されることになり、見掛け上誤差が無いように処理される。従って、自動位置決めの後に、前記操作子の手動操作が行われたとき、その手動操作に応じて位置検出手段から出力される位置データに対応する制御データの初期値は、本来の初期値である目標位置に対応する値に必ず合致されることとなり、違和感を起こさせない、不都合のない制御データの発生を行うことができる。更に、前記変更スケール特性においては、前記起点の位置から少なくとも前記目標位置に達するまでの区間を含む第1の変更区間が設定され、前記位置検出手段から出力される位置データに対応する前記制御データが、前記起点に対応する制御データから該第1の変更区間の終点の位置に対応する前記所定のスケール特性上の制御データまで第1の変更スケールに従って漸次変化するように変更するようにしているので、第1の変更区間の終点が目標位置若しくは目標位置を越えた位置に設定されることとなり、目標位置からずれた位置に停止していた操作子が目標位置の方に動かされるとき、起点で目標位置に対応する値を持つ制御データの値が一時的にでも逆行する(例えば値が増加するように操作したつもりが一時的に減少するように変化する)ことがなく、違和感のない制御データの生成を行うことができる。また、変更スケール特性から所定のスケール特性への滑らかな移行が実現される。また、自動位置決め手段による位置決め精度が位置検出手段による位置検出精度よりも粗かったとしても、問題のない制御データ生成を行うことができるので、高分解能の位置検出手段を有効活用できるようになる。
【0010】
一実施例によると、前記スケール変更制御手段は、更に、前記起点の位置から前記第1の変更区間とは反対側に第2の変更区間を設定し、前記位置検出手段から出力される位置データに対応する前記制御データが、前記起点に対応する制御データから該第2の変更区間の終点の位置に対応する前記所定のスケール特性上の制御データまで第2の変更スケールに従って漸次変化するように変更し、前記操作子の位置が前記第2の変更区間の終点に達したならば前記変更スケール特性の適用を解除するものである。これにより、自動位置決めの後に、目標位置からずれた位置に停止していた操作子が目標位置とは逆の方に動かされるときも、変更スケール特性から所定のスケール特性への滑らかな移行が実現される。なお、この場合は、操作子が目標位置とは逆の方に動かされるため、起点で目標位置に対応する値を持つ制御データの値が逆行することがないので、該第2の変更区間を設定しなかったとしても逆行の問題は生じない。しかし、変更スケール特性から所定のスケール特性への滑らかな移行を実現するためには、第2の変更区間を実質的に設定することは有効である。
【発明を実施するための最良の形態】
【0011】
以下、添付図面を参照して本発明の一実施例を詳細に説明する。
図1は、本発明に係る制御データ発生装置の一実施例である電動フェーダ10のブロック構成を示す。電動フェーダ10は、所定の直線的移動範囲にわたって操作可能なスライド式つまみ(すなわち操作子)11を有しており、該つまみ11は手動操作及び自動操作のいずれも可能な構成である。位置検出器(位置検出手段)12は、該所定の直線的移動範囲におけるつまみ(操作子)11の現操作位置を検出し、検出した現操作位置に応じた位置データをデジタル値で出力する。位置検出器12としては、公知のどのようなタイプの位置検出器を使用してもよい。例えば、可変抵抗器とアナログ/デジタル変換器の組み合わせからなるもの、磁気式リニアエンコーダ、光学式リニアエンコーダ、リニアレゾルバ、などを適宜用いてよい。駆動機構13は、つまみ11を自動的に動かすための電動モータと、該モータの駆動力をつまみ11に直線運動として伝達する機構とを含んでいる。なお、モータは回転モータ又はリニアモータのどちらでもよい。モータ制御部14は、指令された目標位置につまみ11を自動的に動かす(位置決めする)ために、駆動機構13のモータを制御するものであり、通常知られているように、位置検出器12の出力する位置データをフィードバック情報として入力し、つまみ11を目標位置に位置決めするようにフィードバック制御(若しくはサーボ制御)する。駆動機構13とモータ制御部14とで、目標位置につまみ(操作子)11を位置決めする自動位置決め手段を構成している。
【0012】
本実施例における仕様にあっては、駆動機構13による位置決め精度は位置検出器12の位置検出精度よりも粗く、そのため、位置検出器12による位置検出精度に対して所定の誤差範囲内で目標位置への位置決めが行われる。例えば、位置検出器12による位置検出精度(検出分解能)が0.1mmであるのに対して、駆動機構13による位置決め精度は±0.5mmである。その場合、位置検出器12による位置検出精度に対する目標位置への位置決め精度の誤差範囲は、±5ポイントである(1ポイントは、位置検出器12の位置検出の最小単位を示す)。
【0013】
変換部(変換手段)15は、位置検出器12で検出した位置データを所定のスケール特性で制御データに変換する。この所定のスケール特性とは、本発明に係る制御データ発生装置(電動フェーダ10)の用途に応じた任意のスケール特性であってよい。例えば、検出した位置データをリニア特性で変換することで、つまみ11の操作位置に対してリニアな特性の制御データを発生するようにしてもよい。あるいは、検出した位置データを対数特性で変換することで、つまみ11の操作位置に対して対数特性の制御データ(デシベルデータ)を発生するようにしてもよい。
【0014】
スケール変更制御部(スケール変更制御手段)16は、駆動機構13によるつまみ11の自動位置決め完了時において駆動機構13から「位置決め完了」信号が与えられると所定の変更スケール特性を適用し、変換部15から発生する制御データの値を該変更スケール特性に従って変更するよう制御する。スケール変更制御部16によって実現する変更スケール特性の基本コンセプトについて、図2に示す実例と、図3に示すフロー図に基づき、説明する。図3は、スケール変更制御部16が実行する制御の基本概念を示すフロー図であり、スケール変更制御部16の機能はこのようなコンピュータプログラムによって実現することができるし、これと同等の機能を実現するように設計された専用の制御回路によっても実現できる。
【0015】
図2は、変換部15における所定のスケール特性の一例を示すと共に、変更スケール特性の一例を示すもので、位置検出器12の出力する位置データを横軸にとり、この位置データに対応して変換部15から発生される制御データをたて軸にとっている。最も単純な例として、変換部15における所定のスケール特性は、破線で示すようなリニア特性である例を示している。図において、Ptは目標位置データに対応する位置であり、Prはこの目標位置に対応してつまみ11が実際に位置決めされた位置(停止位置)を示し、PtとPrとの間に−ε又は+εの誤差がある例を示している。なお、図2(A)が−εの誤差がある例、図2(B)が+εの誤差がある例である。変更スケール特性は、起点の両側に設定された第1の変更区間と第2の変更区間とを含み、起点では、前記所定のスケール特性上の目標位置Ptに対応する制御データDtを位置データPrに対応して出力するように設定される。なお、目標位置Ptを含む区間を「第1の変更区間」と言い、その反対側の区間を「第2の変更区間」と言う。
【0016】
図3に示すスケール変更制御は、電動フェーダ10が目標位置に自動的に位置決めされるモードとなったときスタートする。目標位置データPtを取得し(ステップS1)、目標位置への位置決めが完了したかどうかをチェックし(ステップS2)、完了したならば、位置決め完了時において位置検出器12から出力される位置データPrを取得する(ステップS3)。
【0017】
ステップS4では、取得したPtとPrから起点及び第1の変更区間を設定する。起点は、位置決め完了時において位置検出器12から出力される位置データPrの位置であり、換言すれば、位置決め完了後に最初につまみ11が動かされたときの動き始めの位置である。上述のように、起点として、この位置データPrに対応して変換部15から前記所定のスケール特性上の目標位置Ptに対応する制御データDtが出力されるように設定する。これにより、実際の位置Prが目標位置Ptから多少ずれていても、目標位置Ptに対応する制御データを、つまみ11の動き初めのデータとして、発生させることができる。
【0018】
第1の変更区間は、前記起点の位置(Pr)から少なくとも前記目標位置(Pt)に達するまでの区間を含むように設定する。図2(A)の例では、起点から見て、目標位置Ptよりも遠い位置に第1の変更区間の終点1Eが設定されている。例えば、起点から終点1Eまでの距離は、駆動機構13における最大位置決め誤差(例えば前述の位置決め精度±0.5mm)に相当する値に固定的に定めてもよい。あるいは、目標位置に対する位置決め制御の都度、PtとPrを知得できるので、その都度、PrとPtの関係を考慮して可変的に起点から終点1Eまでの距離を設定するようにすることも可能である。
【0019】
この第1の変更区間においては、位置検出器12から出力される位置データに対応して変換部15から出力される制御データが、前記起点に対応する制御データ(Dt)から該第1の変更区間の終点1Eの位置に対応する前記所定のスケール特性上の制御データ(D1e)まで漸次変化するように、第1の変更スケールが決定(算出)され、該第1の変更スケールに従って変換を行うよう変換部15に対して指示する(ステップS6)。例えば、図2(A)において、起点から第1の変更区間の終点1Eまで延びた一点鎖線が第1の変更スケールの特性を示している。勿論、第1の変更スケールの特性は図示のような直線状の特性に限らず、滑らかな変化を実現するものであれば、どのような特性であってもよい。このように、第1の変更スケールを設定することで、第1の変更区間の終点1Eが目標位置Ptを越えた位置に設定されることとなり、目標位置からずれた位置Prに停止していたつまみ11が目標位置Ptの方に動かされるとき、起点で目標位置に対応する値Dtを持つ制御データの値が一時的にでも逆行する(例えば値が増加するように操作したつもりが一時的に減少するように変化する)ことがなく、違和感のない制御データの生成を行うことができる。また、変更スケール特性から所定のスケール特性への滑らかな移行が実現される。
【0020】
なお、起点で目標位置に対応する値Dtを持つ制御データの値が一時的にでも逆行しないようにするという目的は、第1の変更区間の終点を図2(A)の1E’のように、目標位置Ptの位置に設定することでも達成できる。ただし、この場合は、第1の変更スケールの特性は、実線で示すように、目標位置に対応する値Dtを維持するフラットなものとなる。
【0021】
ステップS5では、上記のように設定された起点と前記第1の変更区間(目標位置Ptを含む区間)とに基づき、起点を挟んで該第1の変更区間とは反対側に第2の変更区間を設定する。起点の位置(Pr)から見て目標位置(Pt)が存在する側とは反対側の適宜の位置を第2の変更区間の位置を終点2Eとして設定し、起点から終点2Eまでが第2の変更区間となる。なお、つまみ11が起点から第2の変更区間の方に動かされるときは、起点で目標位置に対応する値を持つ制御データの値が逆行する(例えば値が減少するように操作したつもりが一時的に増加するように変化する)ことが起こらないので、該第2の変更区間の終点の位置は適宜に定めてもさしつかえない。例えば、起点と同じ位置2E’を終点として設定することも可能である。そのように第2の変更区間の終点を設定した場合は、実質的に第2の変更区間が存在しないことと等価である。すなわち、その場合は、つまみ11を起点から第2の変更区間の方に動かしたとき、すぐに、所定のスケール特性に切り替わることとなる。しかし、変更スケール特性から所定のスケール特性へと滑らかに制御データの特性を変化させるということを考慮すると、第2の変更区間の長さは、第1の変更区間と同様にある程度の長さがあるのがよい。例えば、第2の変更区間においても、起点から終点2Eまでの距離を、駆動機構13における最大位置決め誤差(例えば前述の位置決め精度±0.5mm)に相当する値に固定的に定めてもよい。
【0022】
この第2の変更区間においても、位置検出器12から出力される位置データに対応して変換部15から出力される制御データが、前記起点に対応する制御データ(Dt)から該第2の変更区間の終点2Eの位置に対応する前記所定のスケール特性上の制御データ(D2e)まで漸次変化するように、第2の変更スケールが決定(算出)され、該第2の変更スケールに従って変換を行うよう変換部15に対して指示する(ステップS6)。例えば、図2(A)において、起点から第2の変更区間の終点2Eまで延びた一点鎖線が第2の変更スケールの特性を示している。勿論、第2の変更スケールの特性は図示のような直線状の特性に限らず、滑らかな変化を実現するものであれば、どのような特性であってもよい。このように、第2の変更スケールを設定することで、変更スケール特性から所定のスケール特性への滑らかな移行が実現される。なお、第2の変更区間の終点を図2(A)の2E’のように、起点と同じ位置に設定した場合は、第2の変更スケールの特性は、実線で示すように垂直になり、前述のように実質的に存在しないのと等価となる。
【0023】
なお、図2(B)に示すように目標位置Ptに対して位置決めされた実際の位置Prが+εの誤差を持つ場合も、図2(A)に関連して述べた上記説明をそのまま適用することができる。
【0024】
図3において、ステップS7では、位置検出器12から与えられる位置データを監視しており、つまみ(操作子)11の現在位置が第1又は第2の変更区間から外れたならば、変更スケール特性の適用を解除するよう、変換部15に対して指示する。これ以後は、変更スケール制御部16による変更スケール制御を終了し、変換部15では所定のスケール特性に従う制御データの生成を行う。
【0025】
このようにして、電動フェーダ10の自動操作及び手動操作に応じて、所定のスケール特性及び変更スケール特性に従って生成された制御データは、この電動フェーダ10の使用目的に応じて、適宜に利用される。
【0026】
次に、図4以降の図を参照して、上記電動フェーダ10をオーディオ信号用あるいはビデオ信号用のデジタルミキサ装置において装備した実施例について説明する。
【0027】
図4は、図1〜図3で述べたような原理的構成からなる電動フェーダ10を複数備えたデジタルミキサ装置の電気・電子的構成例を示す概略ブロック図である。このデジタルミキサ装置は、複数の上記電動フェーダ10でなる電動フェーダ部100と、中央処理装置(CPU)101、フラッシュメモリ102、RAM(ランダム・アクセス・メモリ)103、表示器104、その他の操作子部105、波形入出力インターフェース(I/O)106、デジタル信号処理装置(DSP)107、その他の入出力インターフェース(I/O)108、およびシステムバス109を備える。
【0028】
CPU101は、このミキサ装置全体の動作を制御する処理装置である。フラッシュメモリ102は、CPU101が実行する各種のプログラムやCPU101が使用する各種のデータなどを格納した不揮発性メモリである。RAM103は、CPU101が実行するプログラムのロード領域やワーク領域に使用する揮発性メモリである。表示器104は、このミキサ装置のコンソールパネル面に設けられた各種の情報を表示するためのディスプレイである。その他の操作子部105は、コンソールパネル面上に設けられたユーザが操作するための各種の操作子(スイッチや各種の調整用操作子等)からなっている。波形入出力インターフェース106は、マイクロホンやスピーカなどの外部機器との間で波形信号(オーディオ信号及び/又はビデオ信号)を授受するためのインターフェースである。例えば、この波形入出力インターフェース106を介して入力した波形信号(オーディオ信号又はビデオ信号)を、このミキサ装置でミキシング処理し、ミキシングした出力信号をこの波形入出力インターフェース106から外部のスピーカ等に出力する。DSP107は、CPU101の指示に基づいて各種のマイクロプログラムを実行することにより、波形入出力インターフェース106経由で入力した波形信号のミキシング処理、効果付与処理、および音量レベル制御処理などを行う。その他の入出力インターフェース108は、その他の機器を接続するためのインタフェースである。
【0029】
電動フェーダ部100における各電動フェーダ10は、ミキサ装置のコンソールパネル面上の所定の各箇所に設けられており、その仕様・目的に応じた各種パラメータの値を設定するためのものである。すなわち、電動フェーダ10から発生される制御データとして、その仕様・目的に応じた種類のパラメータの値がつまみ11の操作位置に対応して発生されるように、前記変換部15における前記所定のスケール特性が設定される。なお、図4の実施例においては、例えば、各電動フェーダ10の変換部15及びスケール変更制御部16の部分の機能がCPU101におけるコンピュータプログラムの処理によって実現される。そして、位置検出器12と駆動機構13が各電動フェーダ10毎に個別に装備される。モータ制御部14の部分は、各電動フェーダ10毎に個別に装備してもよいし、あるいは共通のモータ制御回路ハードウェアを複数の電動フェーダ10で共用するようにしてもよい。
【0030】
図5は、CPU101により実行されるメインルーチンの一例を示すフロー図であり、本発明に関連する部分のみを示している。電源ONによってプログラムがスタートし、所定の装置初期化処理を行う(S11)。この初期化処理においては、「スケール変更制御」の動作フラグを「FALSE」(0)に、目標位置レジスタを「NULL」(0)に、検出位置レジスタを「NULL」(0)に、それぞれ初期設定する。「スケール変更制御」の動作フラグとは、前記スケール変更制御部16の制御により前記変更スケール特性を適用するモードとするか否かを示すフラグである。初期状態では、「FALSE」であり、変更スケール特性を適用しないことを示す。目標位置レジスタは、電動フェーダ10を自動操作するときの目標位置(図2におけるPtに相当)を設定するデータを記憶するものである。検出位置レジスタは、電動フェーダ10の自動位置決めが完了したときに目標位置に対応して実際に停止した位置(図2における停止位置Prに相当)を示すデータを記憶するものである。これらの動作フラグ及びレジスタは、各電動フェーダ10毎に設けられている。
【0031】
ステップS12では、リコール指示イベントがあったかどうかを判定する。リコール指示イベントとは、ミキサのシーンリコール機能として知られる、所望のシーンを呼び出すためのシーンリコールスイッチ(これはその他の操作子部105に含まれる)のオン操作イベントである。シーンリコール機能とは、複数の電動フェーダ10、スイッチ、その他操作子の所望の設定/調整状態を示す各種パラメータ値を1シーンのデータとして、フラッシュメモリ102等の読み書き可能な不揮発性メモリに、複数シーン分記憶しておき、そのうちいずれか1シーンをユーザの選択に応じて読み出し、読み出した各パラメータ値を対応する電動フェーダ10、スイッチ、その他操作子に設定する機能である。リコール指示イベントがあった場合は、リコールイベント処理(S13)のサブルーチンを実行する。このリコールイベント処理(S13)の一例は図6に示されている。
【0032】
ステップS14では、いずれかの電動フェーダ10のマニュアル操作イベントがあったかどうかを判定する。いずれかの電動フェーダ10が手動操作されたときは、操作イベント処理(S15)のサブルーチンを実行する。この操作イベント処理(S15)の一例は図7に示されている。詳しくは、ステップS14で判定するマニュアル操作イベントとは、電動フェーダ10の位置検出器12から出力される位置データの変化イベントである。例えば、前述のように位置検出器12の位置検出精度が0.1mmであるとすると、電動フェーダ10のつまみ11が0.1mm動く毎に、マニュアル操作イベントが発生し、操作イベント処理(S15)が実行される。
【0033】
ステップS16では、シャットダウンイベント(電源OFF指示)があったかどうかを判定する。シャットダウンイベントが発生していなければ、その他の処理(S17)を実行する。その他の処理(S17)としては、シーンメモリ指示等に従いコンソールパネルで設定した各種パラメータのセットをシーンデータとして保存(ストア)する処理や、表示器104の表示状態の更新処理、DSP107の制御等がある。シャットダウンイベント(電源OFF指示)があった場合は、ステップS18で所定の終了処理を行う。終了処理としては、出力信号の出力レベルを絞ったりする等、電源をOFFにする前に行っておくべき各種処理を行う。その後、プログラムを終了し、電源をOFFする。
【0034】
ここで、この実施例における所定のスケール特性の具体例を図8に示す。横軸が位置検出器12が出力する位置データを示し、たて軸が該位置データに対応して変換部15から発生される制御データを示す。この具体例では、所定のスケール特性として、位置検出器12が出力する位置データを、実位置にリニアに対応する値を持つ制御データに変換する例を示している。すなわち、この場合、制御データの値は、電動フェーダ10の操作位置にリニアに対応しており、実質的に位置情報と等価である。ただし、位置検出器12が出力する位置データは、そのセンサの位置検出精度によって所定の分解能に限定されるが、変換部15で出力する制御データ(位置情報)は、変換テーブル又は変換関数等の構成に応じて、センサ位置検出精度よりも細かな分解能のデータとして生成され得る。これによって、スケール変更特性において細かなデータ変換が可能である。
【0035】
図8の例では、電動フェーダ10のつまみ11の位置に応じて、位置検出器12は0.1mmの分解能でデジタルの位置データを出力するものとしている。つまり、位置検出器12はつまみ11の0.1mm毎の変化に応じて1ポイントづつ増加するデジタルの位置データを出力する。図では、便宜上、横軸は20ポイントまでしか示されていないが、設計上適宜に定められるつまみ11の最大移動範囲に応じたポイント数からなる位置データが位置検出器12から出力される。そして、変換部15では、例えば、フェーダ10においてつまみ11が最下端にあるときの位置を0mm(基準位置=最小値)とし、つまみ11が最上端にあるときの位置をNmm(最大値)として、0.0mm(最小値)からN mm (最大値)までの位置情報をフェーダ位置検出情報(制御データ)として出力する。図では、便宜上、たて軸は2mmまでしか示されていないが、設計上適宜に定められるつまみ11の最大移動範囲に応じたNmm(最大値)までのフェーダ位置検出情報(制御データ)が変換部15から出力される。なお、変換部15が出力するフェーダ位置検出情報(制御データ)の値は、上記のような小数点第1位の.0mm単位(つまり、100μm単位)に限らず、小数点第2位の.00mm単位(つまり、10μm単位)あるいは小数点第3位の.000mm単位(つまり、1μm単位)など、設計上適宜に定めてよい。例えば、少なくともスケール変更特性においては細かな分解能でデータ変換を行うとよい。
【0036】
次に、図6に従ってリコールイベント処理(S13)の一例を説明する。
リコール指示があると、メモリからリコールすべきシーンの各パラメータ値(シーンデータ)を読み出し、これに基づき各電動フェーダ10の目標位置(Pt)を設定する(S21)。この場合、メモリに記憶されているシーンデータとして、位置検出器12が出力する位置データと同じスケールの目標位置データそのものを記憶している場合は、読み出したシーンデータに含まれる各電動フェーダ10のパラメータ値(つまり目標位置データ)そのものを目標位置データとして設定する。他方、メモリに記憶されているシーンデータとして、変換部15で所定のスケール特性に従って発生した制御データを記憶している場合は、読み出したシーンデータに含まれる各電動フェーダ10のパラメータ値(つまり制御データ)を、当該電動フェーダ10に対応する当該所定のスケール特性に従って位置データに逆変換したものを目標位置データとして設定する。設定された目標位置データは、前記目標位置レジスタに記憶される。なお、このステップS21は、図3のステップS1に対応している。
【0037】
ステップS22では、「スケール変更制御」の動作フラグを「TRUE」(1)にセットする。そして、各電動フェーダ10の目標位置を示すデータを対応するモータ制御部14にそれぞれ与え、それぞれのつまみ11を自動的に該目標位置まで移動させるよう、位置決め制御を行うべきことを指示する(S23)。この指示に応じて、モータ制御部14では、前述のとおり、指令された目標位置までつまみ11を自動的に動かし、位置決めが完了したら、位置決め完了信号をCPU101に返す。ステップS24では、位置決め完了信号を受けるまで待機する。位置決め完了すると、ステップS25で、そのとき位置検出器12から出力されている位置データ(実位置)を取得し、これを検出位置レジスタにストアする。この検出位置レジスタにストアされる実位置データは、目標位置(Pt)に対して実際に停止された位置(図2のPrに相当)を示しており、前述のように、−εまた+εの誤差を含み得る。一例として、−εまた+εの最大誤差範囲は、±0.5mm(位置検出器12が出力する位置データの単位で±5ポイント)であるとする。なお、ステップS24は図3のステップS2に対応し、ステップS25は図3のステップS3に対応している。
【0038】
ステップS26では、図3のステップS4〜S5と同様に、目標位置レジスタにストアしている目標位置(Pt)と検出位置レジスタにストアしている検出位置(実際の停止位置Pr)に基づき、起点及び第1及び第2の変更区間を設定する。起点及び第1及び第2の変更区間の設定の仕方は、図2を参照して説明したのと同様であってよいが、ここで、より一層具体的な例につき図9を参照して説明する。
【0039】
図9は、図8に示す所定のスケール特性に対する変更スケール特性の一例を示す図である。図9の例において、第1及び第2の変更区間の起点は、前述と同様に、目標位置Ptに対応するフェーダ位置検出情報(制御データ)が検出位置(実際の停止位置Pr)に対応して出力されるように設定する。図9の例において、第1の変更区間の終点1Eは、目標位置Ptを基準にして、所定の距離+Dの位置に設定する。ここで、Dは、位置決め誤差(−εまた+ε)の最大範囲E(例えば位置データの単位で5ポイント)に対して、D>Eであるように定める。あるいは、D=Eであってもよいが、変更スケール特性から所定のスケール特性に滑らかに移行させるには、D>Eが好ましい。また、第2の変更区間の終点2Eは、目標位置Ptを基準にして、所定の距離−Dの位置に設定する。すなわち、
1E:Pt+D
2E:Pt−D
である。これにより、目標位置Ptが必ず変更スケール特性の適用区間に含まれることになり、前述したような逆行が起こらず、また、第1及び第2の変更区間の長さを適切に確保することで、変更スケール特性から所定のスケール特性への移行を滑らかに行うことができる。
【0040】
ステップS27では、図3のステップS6と同様に、第1及び第2の変更区間に対応する第1及び第2の変更スケールを線形関数で設定し、設定した第1及び第2の変更スケールに従って位置データをフェーダ位置検出情報(制御データ)に変換するよう、変換部15に対して指示する。なお、この実施例の場合、変換部15の機能は図7の操作イベント処理(S15)によって実現される。例えば、下記式により、第1の変更区間に対応する第1の変更スケールの傾きA1と、第2の変更区間に対応する第2の変更スケールの傾きA2とが算出される。
A1=A×D/(1E−Pr)
A2=A×D/(Pr−2E)
ここで、Aは所定のスケール特性の関数F(x)の傾きである。
【0041】
位置検出器12から出力される位置データをxで示し、初期値をBで示すと、線形関数からなる所定のスケール特性の関数F(x)は、
F(x)=Ax+B
と表わせる。
第1の変更区間に対応する第1の変更スケールを示す関数G1は、
G1(x)=A1x+(A−A1)1E+B
と表わせる。ただし、位置データxは第1の変更区間の範囲内の値。
第2の変更区間に対応する第2の変更スケールを示す関数G2は、
G2(x)=A2x+(A−A2)2E+B
と表わせる。ただし、位置データxは第2の変更区間の範囲内の値。
【0042】
図9の例の場合、D=6、B=0とし、
F(x)=(1/10)x+0
A1=(1/10)×6/(16−8)=3/40
A2=(1/10)×6/(8−4)=3/20
G1(x)=3/40x+(2/5)
G2(x)=3/20x−(1/5)
と表わせる。
【0043】
なお、図6のステップS24〜S27の処理は、各フェーダ10毎にそれぞれ実行される。
【0044】
次に、図7に従って操作イベント処理(S15)の一例を説明する。
まず、シーンリコールの後、初めて当該電動フェーダ10が手動操作された場合について説明する。その場合、当該電動フェーダ10に関する「スケール変更制御」の動作フラグは「TRUE」であり(図6のS22)、変更スケール特性が適用されるモードであることを示している。ステップS31で、位置検出器12から出力される現在の位置データ(実位置x)を取得する。ステップS32で動作フラグを判定し、この場合は「TRUE」であるから、ステップS33に行く。ステップS33では、取得した実位置xが第1又は第2の変更区間の範囲外であるかを判定する。第1又は第2の変更区間の範囲内であれば、ステップS34に行き、第1又は第2の変更スケールを示す関数G1又はG2に従ってフェーダ位置検出情報(制御データ)を発生する。すなわち、実位置xが第1の変更区間内にあれば、該第1の変更区間に対応する第1の変更スケールを示す関数G1(x)に従ってフェーダ位置検出情報(制御データ)を発生し、実位置xが第2の変更区間内にあれば、該第2の変更区間に対応する第2の変更スケールを示す関数G2(x)に従ってフェーダ位置検出情報(制御データ)を発生する。以後、電動フェーダ10の操作イベントが発生する毎に、ステップS31,S32,S33,S34のルートの処理が行われ、第1又は第2の変更スケールを示す関数G1(x)又はG2(x)に従ってフェーダ位置検出情報(制御データ)を発生する。
【0045】
やがて、電動フェーダ10の操作位置が第1又は第2の変更区間の範囲外に出ると、ステップS33はYESと判定し、ステップS35で動作フラグを「FALSE」にリセットする。こうして、変更スケール特性を適用するモードを解除する。次のステップS36では、所定のスケール特性を示す通常の関数F(x)に従って実位置xに応じたフェーダ位置検出情報(制御データ)を発生する。以後は、ステップS32で、動作フラグは「FALSE」と判定され、図7の処理は、S31,S32,S36のルートを通る。従って、以後は、電動フェーダ10の操作イベントが発生する毎に、所定のスケール特性を示す通常の関数F(x)に従って実位置xに応じたフェーダ位置検出情報(制御データ)を発生する。
【0046】
図9を例にして具体的に説明すると、目標位置Ptとして10ポイント(1mm)の位置が指定され、自動位置決めの結果、フェーダ10のつまみ11は、実際には8ポイント(0.8mm)の位置Prで停止している。目標位置からのずれは2ポイント(0.2mm)であり、所定の最大誤差±E=±0.5mm(±5ポイント)の範囲内である。その後、フェーダ10が増加方向に手動で動かされたとすると、第1の変更区間に対応する第1の変更スケールを示す関数G1(x)が適用され、起点における実位置xは位置Pr(8ポイント)であるが、それに対応するフェーダ位置検出情報(制御データ)として、所定のスケール特性上の目標位置Pt(10ポイント)に対応する1.0mmを示すフェーダ位置検出情報(制御データ)が発生される。以後、第1の変更区間においては、実位置xの8〜16ポイントの変化に対して、第1の変更スケールを示す関数G1(x)に従って、1.0mm〜1.6mmのフェーダ位置検出情報(制御データ)が発生される。そして、終点1E=16ポイントを過ぎて、第1の変更区間の外に出ると、所定のスケール特性を示す関数F(x)に従ってフェーダ位置検出情報(制御データ)が発生されるようになる。なお、この場合、1.00mm〜1.60mmあるいは1.000mm〜1.600mmのように、小数点の有効桁を増すことで細かな分解能でフェーダ位置検出情報(制御データ)を発生するようにすれば、図示のような滑らかな変化を得ることができる。一方、1.0mm〜1.6mmのように、有効桁が小数点第1位であると、必ずしも図示のような滑らかな変化とはならず、幾分階段状となるが、それでも差し支えない。
【0047】
一方、起点(Pr)からフェーダ10が減少方向に手動で動かされたとすると、第2の変更区間に対応する第2の変更スケールを示す関数G2(x)が適用され、実位置xの8〜4ポイントの変化に対して、第2の変更スケールを示す関数G2(x)に従って、1.0mm〜0.4mmのフェーダ位置検出情報(制御データ)が発生される。そして、終点2E=4ポイントを過ぎて、第2の変更区間の外に出ると、所定のスケール特性を示す関数F(x)に従ってフェーダ位置検出情報(制御データ)が発生されるようになる。
【0048】
勿論、一旦、第1又は第2の変更区間の外に出ると、変更スケール特性の適用が解除されるので、以後は、第1又は第2の変更区間であった区間内に操作位置が戻されたとしても、所定のスケール特性を示す関数F(x)に従ってフェーダ位置検出情報(制御データ)が発生される。
【0049】
図10は、図8に示す所定のスケール特性に対する変更スケール特性の別の例を示す図である。図10の例は、第1及び第2の変更区間の終点1E,2Eの定め方が図9の例とは相違している。図10の例において、第1の変更区間の終点1Eは、目標位置に対する実際の停止位置Prを基準にして所定の距離+Dの位置に設定し、また、第2の変更区間の終点2Eは、目標位置に対する実際の停止位置Prを基準にして所定の距離−Dの位置に設定する。ここで、Dは、位置決め誤差(−εまた+ε)の最大範囲E(例えば位置データの単位で5ポイント)に対して、D=Eであるように定めている。D>Eであってもよく、変更スケール特性から所定のスケール特性に滑らかに移行させるには、むしろD>Eの方が好ましい。D=Eの場合は、位置決め誤差(−εまた+ε)が最大値Eのとき、第1又は第2の変更区間の一方の変更スケールの傾きがフラットになるが、D>Eの場合はそれを避けることができる。
【0050】
ところで、フェーダ10の所定移動範囲の両端部においては、それぞれの端部の近傍に起点が位置する場合、前記第1及び第2の変更区間の一方(端部寄りの変更区間)の終点1E又は2Eを適切に設定することができず、該一方の変更区間に関しては適切な変更スケールの設定ができなくなる。このような端部問題を解決するためには、次のような2種の対策が考えられる。
【0051】
一つの対策としては、図11に示すように、変換部15において設定する前記所定のスケール特性において、フェーダ10の最大移動範囲の両端部の所定範囲Dにおける位置データ(横軸)の変化に対して制御データ(たて軸)の最小値及び最大値を維持するマージン領域M1,M2をそれぞれ設定することである。この場合、フェーダ10はマージン領域M1,M2に入って動かすことができるが、有効な制御データを得ることができる有効操作範囲は、マージン領域M1,M2の内側である。このマージン領域M1,M2の所定範囲(幅)Dは、少なくとも位置決め誤差(−εまた+ε)の最大範囲Eに等しくする(D=E)。つまり、目標位置(Pt)が最小値又は最大値のとき、最大の位置決め誤差(マージン領域M1側では−ε、マージン領域M2側では+ε)で位置決めされた停止位置(Pr)がマージン領域M1,M2に含まれるようにする。
【0052】
そして、スケール変更制御部16では、前記第1の変更区間の前記起点が前記マージン領域M1,M2に入る場合は、前記第1の変更区間についてのみ前記第1の変更スケールに従う前記制御データの発生を行うようにする。このようにすれば、起点(Pr)がマージン領域M1,M2に入る場合、目標位置(Pt)とは反対側の第2の変更区間に対応する所定のスケール特性は全てマージン領域M1,M2に入ることとなり、一定の最小値又は最大値を維持すればよい(若しくは有効なデータを発生する必要がない)こととなる。従って、その終点2Eを適切に設定することができなかったとしても、適切な変更スケールの設定が行える(一定の最小値又は最大値を維持すればよいため)、若しくは、その部分では有効なデータを発生する必要がないものとなる。
【0053】
別の対策としては、図12に示すように、フェーダ10の移動範囲の両端部(図12では一端部ESの側のみ拡大して示している)において、該各端部(ES)を越える仮想的な位置検出領域をそれぞれ設定し、該各端部(ES)における前記第2の変更区間を前記仮想的な位置検出領域にわたって設定するようにする。仮想的な位置検出領域とは、フェーダ10の移動範囲外であるため、その領域に対応する位置データ(x)は実際には発生されないが、位置データ(x)が発生されると仮定して所定のスケール特性に従うフェーダ位置検出情報(制御データ)を仮想的に生成できるようにした領域である。この仮想的な位置検出領域を設定することにより、第2の変換区間の終点2Eが設定できるようになり、第2の変換スケールを示す関数G2(x)を設定・演算することができる。
【0054】
なお、図8に示すように変換部15における所定のスケール特性がリニア関数である場合において、最終的な制御データ(パラメータ)として、フェーダ10の移動量に対してデシベル特性等の非リニアな関数特性を示すデータ(パラメータ)を得たいならば、変換部15から出力されるフェーダ位置検出情報(制御データ)を所望の非リニアな変換特性の変換手段で更に変換するようにすればよい。勿論、それに限らず、変換部15における所定のスケール特性そのものを、所望の非リニアな変換特性としてもよく、その場合は、変換部15から発生されるフェーダ位置検出情報(制御データ)が直接的にデシベル(減衰量)データ等の所定のスケール特性のデータで表現される。
【0055】
本発明を適用しうる操作子は、上記実施例のようなフェーダ(スライド式又はリニア式に移動する操作子)に限らず、回転式の操作子あるいはその他の形式の操作子であってもよく、要は手動操作と自動操作のどちらもが可能なように構成されたものであればよい。
【0056】
位置検出器12から出力される位置データの分解能とこれに応じて変換部15から出力されるフェーダ位置検出情報(制御データ)の値との対応関係は、上記のように所定のスケール特性がリニア特性又は非リニア特性のどちらであるにせよ、連続的に対応付けられるようになっていてもよいし、あるいは、不連続的またステップ状に対応付けられるようになっていてもよい。
【0057】
本発明に係る制御データ発生装置(電動フェーダ10)は、上記のようなミキサ装置に限らず、電子楽器、アミューズメント機器、電子玩具、その他の各種制御機器などにおいても適用することができる。
【図面の簡単な説明】
【0058】
【図1】本発明に係る制御データ発生装置の一実施例である電動フェーダの構成を示すブロック図。
【図2】図1の変換部における所定のスケール特性の一例を示すと共に、変更スケール特性の一例を示すグラフ。
【図3】図1のスケール変更制御部が実行する制御の基本概念を示すフロー図。
【図4】図1に示す電動フェーダを複数備えたデジタルミキサ装置の構成例を示す概略ブロック図。
【図5】図4のCPUにより実行されるメインルーチンの一例を示すフロー図。
【図6】図5におけるリコールイベント処理の一例を示すフロー図。
【図7】図5における操作イベント処理の一例を示すフロー図。
【図8】所定のスケール特性の具体例を示すグラフ。
【図9】図8に示す所定のスケール特性に対する変更スケール特性の一例を示すグラフ。
【図10】図8に示す所定のスケール特性に対する変更スケール特性の別の例を示すグラフ。
【図11】所定のスケール特性において、フェーダの最大移動範囲の両端部の所定範囲においてマージン領域をそれぞれ設定する例を示すグラフ。
【図12】フェーダの移動範囲の両端部において、該各端部を越える仮想的な位置検出領域をそれぞれ設定する例を示すグラフ。
【符号の説明】
【0059】
10 電動フェーダ
11 スライド式つまみ(操作子)
12 位置検出器
13 駆動機
14 モータ制御部
15 変換部
16 スケール変更制御部
100 電動フェーダ部
101 CPU
【特許請求の範囲】
【請求項1】
所定移動範囲にわたって操作可能な操作子と、
前記所定移動範囲における前記操作子の現操作位置に応じた位置データを出力する位置検出手段と、
前記位置検出手段で検出した位置データを所定のスケール特性で制御データに変換する変換手段と、
指令された目標位置に前記操作子を位置決めする自動位置決め手段であって、この自動位置決め手段による位置決め精度は前記位置検出手段による位置検出精度よりも粗く、そのため、前記位置検出手段による位置検出精度に対して所定の誤差範囲内で前記目標位置への位置決めが行われる前記自動位置決め手段と、
前記自動位置決め手段による位置決め完了時において変更スケール特性を適用するスケール変更制御手段であって、
該変更スケール特性においては、前記位置決め完了時において前記位置検出手段から出力される位置データに対応して前記所定のスケール特性上の前記目標位置に対応する制御データが出力されるように起点を設定すると共に、前記起点の位置から少なくとも前記目標位置に達するまでの区間を含む第1の変更区間を設定し、前記位置検出手段から出力される位置データに対応する前記制御データが、前記起点に対応する制御データから該第1の変更区間の終点の位置に対応する前記所定のスケール特性上の制御データまで第1の変更スケールに従って漸次変化するように変更し、
前記操作子の位置が前記第1の変更区間の終点に達したならば前記変更スケール特性の適用を解除する前記スケール変更制御手段と
備える制御データ発生装置。
【請求項2】
前記スケール変更制御手段は、更に、前記起点の位置から前記第1の変更区間とは反対側に第2の変更区間を設定し、前記位置検出手段から出力される位置データに対応する前記制御データが、前記起点に対応する制御データから該第2の変更区間の終点の位置に対応する前記所定のスケール特性上の制御データまで第2の変更スケールに従って漸次変化するように変更し、前記操作子の位置が前記第2の変更区間の終点に達したならば前記変更スケール特性の適用を解除するものである請求項1に記載の制御データ発生装置。
【請求項3】
前記第1及び第2の変更区間は、前記誤差範囲に対応して設定されることを特徴とする請求項1又は2に記載の制御データ発生装置。
【請求項4】
前記変換手段は、前記所定のスケール特性において、前記所定移動範囲の両端部の所定範囲の位置データの変化に対して制御データの最小値又は最大値を維持するマージン領域を設定し、
前記第1の変更区間の前記起点が前記マージン領域に入る場合は、前記第1の変更区間についてのみ前記第1の変更スケールに従う前記制御データの発生を行うようにしたことを特徴とする請求項1乃至3のいずれかに記載の制御データ発生装置。
【請求項5】
前記スケール変更制御手段は、前記所定移動範囲の両端部において各端部を越える仮想的な位置検出領域をそれぞれ設定し、前記所定移動範囲の両端部における前記第2の変更区間を前記仮想的な位置検出領域にわたって設定することを特徴とする請求項1乃至3のいずれかに記載の制御データ発生装置。
【請求項6】
所定移動範囲にわたって操作可能な操作子と、前記所定移動範囲における前記操作子の現操作位置に応じた位置データを出力する位置検出手段と、指令された目標位置に前記操作子を位置決めする自動位置決め手段であって、この自動位置決め手段による位置決め精度は前記位置検出手段による位置検出精度よりも粗く、そのため、前記位置検出手段による位置検出精度に対して所定の誤差範囲内で前記目標位置への位置決めが行われる前記自動位置決め手段とを備えた操作子装置において、制御データを発生するためのプログラムであって、コンピュータに、
前記位置検出手段で検出した位置データを所定のスケール特性で制御データに変換する第1手順と、
前記自動位置決め手段による位置決め完了時において変更スケール特性を適用する第2手順であって、
該変更スケール特性においては、前記位置決め完了時において前記位置検出手段から出力される位置データに対応して前記所定のスケール特性上の前記目標位置に対応する制御データが出力されるように起点を設定すると共に、前記起点の位置から少なくとも前記目標位置に達するまでの区間を含む第1の変更区間を設定し、前記位置検出手段から出力される位置データに対応する前記制御データが、前記起点に対応する制御データから該第1の変更区間の終点の位置に対応する前記所定のスケール特性上の制御データまで第1の変更スケールに従って漸次変化するように変更し、
前記操作子の位置が前記第1の変更区間の終点に達したならば前記変更スケール特性の適用を解除する前記第2手順と
実行させるためのプログラム。
【請求項7】
前記第2手順では、前記コンピュータに、更に、前記起点の位置から前記第1の変更区間とは反対側に第2の変更区間を設定し、前記位置検出手段から出力される位置データに対応する前記制御データが、前記起点に対応する制御データから該第2の変更区間の終点の位置に対応する前記所定のスケール特性上の制御データまで第2の変更スケールに従って漸次変化するように変更し、前記操作子の位置が前記第2の変更区間の終点に達したならば前記変更スケール特性の適用を解除する手順を実行させるようにした請求項6に記載のプログラム。
【請求項1】
所定移動範囲にわたって操作可能な操作子と、
前記所定移動範囲における前記操作子の現操作位置に応じた位置データを出力する位置検出手段と、
前記位置検出手段で検出した位置データを所定のスケール特性で制御データに変換する変換手段と、
指令された目標位置に前記操作子を位置決めする自動位置決め手段であって、この自動位置決め手段による位置決め精度は前記位置検出手段による位置検出精度よりも粗く、そのため、前記位置検出手段による位置検出精度に対して所定の誤差範囲内で前記目標位置への位置決めが行われる前記自動位置決め手段と、
前記自動位置決め手段による位置決め完了時において変更スケール特性を適用するスケール変更制御手段であって、
該変更スケール特性においては、前記位置決め完了時において前記位置検出手段から出力される位置データに対応して前記所定のスケール特性上の前記目標位置に対応する制御データが出力されるように起点を設定すると共に、前記起点の位置から少なくとも前記目標位置に達するまでの区間を含む第1の変更区間を設定し、前記位置検出手段から出力される位置データに対応する前記制御データが、前記起点に対応する制御データから該第1の変更区間の終点の位置に対応する前記所定のスケール特性上の制御データまで第1の変更スケールに従って漸次変化するように変更し、
前記操作子の位置が前記第1の変更区間の終点に達したならば前記変更スケール特性の適用を解除する前記スケール変更制御手段と
備える制御データ発生装置。
【請求項2】
前記スケール変更制御手段は、更に、前記起点の位置から前記第1の変更区間とは反対側に第2の変更区間を設定し、前記位置検出手段から出力される位置データに対応する前記制御データが、前記起点に対応する制御データから該第2の変更区間の終点の位置に対応する前記所定のスケール特性上の制御データまで第2の変更スケールに従って漸次変化するように変更し、前記操作子の位置が前記第2の変更区間の終点に達したならば前記変更スケール特性の適用を解除するものである請求項1に記載の制御データ発生装置。
【請求項3】
前記第1及び第2の変更区間は、前記誤差範囲に対応して設定されることを特徴とする請求項1又は2に記載の制御データ発生装置。
【請求項4】
前記変換手段は、前記所定のスケール特性において、前記所定移動範囲の両端部の所定範囲の位置データの変化に対して制御データの最小値又は最大値を維持するマージン領域を設定し、
前記第1の変更区間の前記起点が前記マージン領域に入る場合は、前記第1の変更区間についてのみ前記第1の変更スケールに従う前記制御データの発生を行うようにしたことを特徴とする請求項1乃至3のいずれかに記載の制御データ発生装置。
【請求項5】
前記スケール変更制御手段は、前記所定移動範囲の両端部において各端部を越える仮想的な位置検出領域をそれぞれ設定し、前記所定移動範囲の両端部における前記第2の変更区間を前記仮想的な位置検出領域にわたって設定することを特徴とする請求項1乃至3のいずれかに記載の制御データ発生装置。
【請求項6】
所定移動範囲にわたって操作可能な操作子と、前記所定移動範囲における前記操作子の現操作位置に応じた位置データを出力する位置検出手段と、指令された目標位置に前記操作子を位置決めする自動位置決め手段であって、この自動位置決め手段による位置決め精度は前記位置検出手段による位置検出精度よりも粗く、そのため、前記位置検出手段による位置検出精度に対して所定の誤差範囲内で前記目標位置への位置決めが行われる前記自動位置決め手段とを備えた操作子装置において、制御データを発生するためのプログラムであって、コンピュータに、
前記位置検出手段で検出した位置データを所定のスケール特性で制御データに変換する第1手順と、
前記自動位置決め手段による位置決め完了時において変更スケール特性を適用する第2手順であって、
該変更スケール特性においては、前記位置決め完了時において前記位置検出手段から出力される位置データに対応して前記所定のスケール特性上の前記目標位置に対応する制御データが出力されるように起点を設定すると共に、前記起点の位置から少なくとも前記目標位置に達するまでの区間を含む第1の変更区間を設定し、前記位置検出手段から出力される位置データに対応する前記制御データが、前記起点に対応する制御データから該第1の変更区間の終点の位置に対応する前記所定のスケール特性上の制御データまで第1の変更スケールに従って漸次変化するように変更し、
前記操作子の位置が前記第1の変更区間の終点に達したならば前記変更スケール特性の適用を解除する前記第2手順と
実行させるためのプログラム。
【請求項7】
前記第2手順では、前記コンピュータに、更に、前記起点の位置から前記第1の変更区間とは反対側に第2の変更区間を設定し、前記位置検出手段から出力される位置データに対応する前記制御データが、前記起点に対応する制御データから該第2の変更区間の終点の位置に対応する前記所定のスケール特性上の制御データまで第2の変更スケールに従って漸次変化するように変更し、前記操作子の位置が前記第2の変更区間の終点に達したならば前記変更スケール特性の適用を解除する手順を実行させるようにした請求項6に記載のプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2010−39820(P2010−39820A)
【公開日】平成22年2月18日(2010.2.18)
【国際特許分類】
【出願番号】特願2008−202922(P2008−202922)
【出願日】平成20年8月6日(2008.8.6)
【出願人】(000004075)ヤマハ株式会社 (5,930)
【Fターム(参考)】
【公開日】平成22年2月18日(2010.2.18)
【国際特許分類】
【出願日】平成20年8月6日(2008.8.6)
【出願人】(000004075)ヤマハ株式会社 (5,930)
【Fターム(参考)】
[ Back to top ]