光走査装置、および共振周波数設定方法
【課題】走査ミラーの共振周波数を短時間で容易に計測して駆動周波数を設定することができる光走査装置、および共振周波数設定方法を提供する。
【解決手段】ヘッドマウントディスプレイは、起動時点において設定された起動用共振周波数を駆動周波数として、垂直走査駆動部による垂直走査ミラーの揺動動作を起動する(S2)。次いで、垂直走査ミラーの駆動周波数を線形領域へ向けて一方向に順次変化させていく(S3)。垂直走査ミラーの振れ角が増加から減少へ変化すると(S5:YES)、駆動周波数の増減方向を切り替える(S11)。ヘッドマウントディスプレイは、垂直走査ミラーの振れ角が最大となる駆動周波数を、垂直走査ミラーの共振周波数として計測する(S13:YES、S21)。計測した共振周波数を、その後の垂直走査ミラーの駆動周波数に設定する(S22)。
【解決手段】ヘッドマウントディスプレイは、起動時点において設定された起動用共振周波数を駆動周波数として、垂直走査駆動部による垂直走査ミラーの揺動動作を起動する(S2)。次いで、垂直走査ミラーの駆動周波数を線形領域へ向けて一方向に順次変化させていく(S3)。垂直走査ミラーの振れ角が増加から減少へ変化すると(S5:YES)、駆動周波数の増減方向を切り替える(S11)。ヘッドマウントディスプレイは、垂直走査ミラーの振れ角が最大となる駆動周波数を、垂直走査ミラーの共振周波数として計測する(S13:YES、S21)。計測した共振周波数を、その後の垂直走査ミラーの駆動周波数に設定する(S22)。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、走査ミラーの共振周波数を計測し、計測した共振周波数に応じて走査ミラーを駆動する光走査装置、および共振周波数設定方法に関する。
【背景技術】
【0002】
従来、走査ミラーを駆動(揺動)させてレーザ光を走査することで、被走査面に画像を形成する光走査装置が知られている。走査ミラーを安定して効率よく共振揺動させるためには、走査ミラーを駆動させるための駆動信号の周波数(以下、「駆動周波数」という。)を、走査ミラーの共振周波数に応じて設定することが必要である。例えば、特許文献1が開示している光走査装置は、駆動周波数と振幅とを共振周波数に応じて設定することで、省エネルギー化を図っている。
【0003】
同一の走査ミラーを用いる場合であっても、走査ミラーの共振周波数は、温度等の使用環境に伴って変動する。従って、走査ミラーを駆動させる場合、その時点における走査ミラーの共振周波数を計測し、計測した共振周波数に応じて駆動信号を制御することが望ましい。
【0004】
従来の共振周波数の計測方法について説明する。まず、走査ミラーの駆動周波数と振れ角との間の特性について述べる。駆動周波数を変化させながら走査ミラーを駆動すると、跳躍現象および履歴現象(ヒステリシス)が生じる。跳躍現象とは、駆動周波数を変化させた場合に、走査ミラーの振れ角が急激に増減する現象である。履歴現象とは、駆動周波数を徐々に上昇させる場合と徐々に下降させる場合とで、跳躍現象が生じる周波数(以下、「跳躍周波数」という。)に差が生じる現象である。
【0005】
走査ミラーが所謂メタルMEMS(詳細は後述する)である場合を例示する。走査ミラーがメタルMEMSであれば、駆動周波数を徐々に下降させる場合の跳躍周波数Aは、駆動周波数を徐々に上昇させる場合の跳躍周波数Bよりも低い。共振周波数は、駆動周波数を徐々に下降させながら振れ角を計測し、振れ角が最大となる駆動周波数を検出することで計測される。共振周波数は、駆動周波数を徐々に下降させる場合の跳躍周波数Aと、駆動周波数を徐々に上昇させる場合の跳躍周波数Bとの間の非線形領域内に存在する。従って、跳躍周波数Bから駆動周波数を徐々に下げながら計測を行えばよい。しかし、前述したように、共振周波数は温度等の使用環境に伴って変動する。よって、従来の光走査装置は、まず跳躍周波数Bを計測する。次いで、使用環境の変化による共振周波数の変動を考慮し、計測した跳躍周波数Bよりも高い周波数を、起動時の駆動周波数に設定する。起動時の駆動周波数から徐々に駆動周波数を下降させて、振れ角が最大となる駆動周波数を共振周波数として計測する。また、所謂シリコンMEMS(詳細は後述する)等を用いる場合でも、周波数の大小関係がメタルMEMSの場合と逆になる以外は、上記の特性に変わりはない。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2005−208460号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
従来の方法では、使用環境の変化や耐久性劣化による共振周波数の変動を考慮して、前記起動時の駆動周波数をかなり高めに設定する必要があるため、広い範囲で共振周波数を探索しなければならなかった。そのために、共振周波数の計測を開始する前に、跳躍周波数Bをあらかじめ計測しておかなければならなかった。従って、共振周波数を計測して駆動周波数を設定するために、多くの処理量および長い処理時間を要するという問題点があった。
【0008】
本発明は、走査ミラーの共振周波数を短時間で容易に計測して駆動周波数を設定することができる光走査装置、および共振周波数設定方法を提供することを目的とする。
【課題を解決するための手段】
【0009】
本発明の第一の態様に係る光走査装置は、揺動軸回りに揺動することでレーザ光を走査する走査ミラーと、前記走査ミラーを揺動させる駆動手段と、前記駆動手段に駆動信号を供給して前記駆動手段を制御する駆動制御手段と、前記走査ミラーの振れ角を検出する検出手段とを備え、前記走査ミラーの駆動周波数を変化させた場合に、振れ角が線形的に変化する駆動周波数の領域である線形領域と、前記走査ミラーの共振周波数を含み、且つ振れ角が非線形的に変化する駆動周波数の領域である非線形領域とが現れる光走査装置であって、前記駆動制御手段は、起動時点において予め設定された起動用共振周波数を起動時の駆動周波数として前記駆動手段を起動し、前記走査ミラーの揺動を開始させる起動手段と、前記起動手段によって前記駆動手段が起動された場合に、前記走査ミラーの駆動周波数を前記起動用周波数から前記線形領域に向けて一方向に順次変化させる第一周波数変化手段と、前記第一周波数変化手段が駆動周波数を順次変化させている場合に、前記検出手段によって検出された振れ角が増加から減少へ変化することを契機として、前記第一周波数変化手段によって変化していた方向とは逆の方向に駆動周波数を順次変化させる第二周波数変化手段と、前記第二周波数変化手段が駆動周波数を順次変化させている場合に、前記検出手段によって検出された振れ角が最大となる駆動周波数を前記走査ミラーの共振周波数として計測し、その後の駆動周波数とする共振周波数設定手段とを備えている。
【0010】
第一の態様に係る光走査装置は、予め設定された起動用共振周波数を起動時の駆動周波数として、走査ミラーの駆動手段を起動する。次いで、走査ミラーの駆動周波数を線形領域に向けて一方向に順次変化させていき、振れ角の増減の変曲点に達したら、変化させていた方向と逆の方向に駆動周波数を順次変化させていく。その後、光走査装置は、駆動周波数を変化させている間に振れ角が最大となる駆動周波数を、走査ミラーの共振周波数として計測し、計測した共振周波数を駆動周波数とする。従って、光走査装置は、使用環境の変化による共振周波数の変動を考慮して広い範囲で共振周波数を探索する必要はない。さらに、光走査装置は、跳躍現象が生じる周波数をあらかじめ計測しておく必要がない。よって、光走査装置は、走査ミラーの共振周波数を短時間で容易に計測し、計測した共振周波数をその後の駆動周波数とすることができる。
【0011】
前記光走査装置は、前記走査ミラーを支持する捻れ梁部と、前記捻れ梁部を支持する基板とをさらに備えてもよい。前記駆動手段は、前記基板に設けられ、電圧の印加によって振動することで前記基板に板波を誘起して前記ミラー部を揺動させる振動体であってもよい。この場合、前記第一周波数変化手段は駆動周波数を順次増加させ、前記第二周波数変化手段は駆動周波数を順次減少させるのが望ましい。上記の条件では、駆動周波数を徐々に下降させる場合の跳躍周波数Aは、駆動周波数を徐々に上昇させる場合の跳躍周波数Bよりも低くなる。共振周波数は、駆動周波数を徐々に下降させた場合における跳躍周波数Aと跳躍周波数Bの間に存在する。従って、光走査装置は、駆動周波数を増加させた後に減少させることによって、走査ミラーの特性に応じた適切な方法で共振周波数を計測することができる。
【0012】
前記駆動制御手段は、前記走査ミラーの温度を取得する温度取得手段と、前記走査ミラーの温度に応じた共振周波数の変化量を示すパラメータと、前記温度取得手段によって取得された前記走査ミラーの温度と、前記計測手段によって前回計測された共振周波数とを用いて、前記起動用共振周波数を算出して設定する算出手段とをさらに備えてもよい。前記起動手段は、前記算出手段によって設定された前記起動用共振周波数で前記駆動手段を起動してもよい。この場合、光走査装置は、温度変化および経時変化の影響を受けて共振周波数が変化した場合でも、最適な駆動周波数から計測処理を開始することができる。共振周波数の計測に失敗する可能性も低い。
【0013】
前記第二周波数変化手段は、駆動周波数を変化させることで増加する前記走査ミラーの振れ角の増加割合が小さい程、駆動周波数の1回の変化量を小さくしてもよい。共振周波数の近傍の非線形領域内では、駆動周波数が共振周波数に近くなる程、走査ミラーの振れ角の増加割合は小さくなる。従って、光走査装置は、振れ角の増加割合が小さい程、駆動周波数の1回の変化量を小さくすることで、共振周波数をより正確に計測し、最適な駆動周波数を設定することができる。
【0014】
前記第一周波数変化手段は、周波数を変化させることで増加する前記走査ミラーの振れ角の増加割合が大きい程、駆動周波数の1回の変化量を小さくしてもよい。第一周波数変化手段によって周波数を変化させながら、走査ミラーの振れ角が増加から減少へ変化することを検出する場合、増加から減少への変化が生じる前に跳躍現象が生じる。従って、駆動周波数を変化させる毎に振れ角の増加割合は大きくなる。よって、第一周波数変化手段は、振れ角の増加割合が大きい程、駆動周波数の1回の変化量を小さくすることで、振れ角の増加から減少への変化を正確に把握することができる。
【0015】
前記駆動制御手段は、前記共振周波数設定手段によって共振周波数が駆動周波数に設定された場合に、前記駆動信号の振幅を制御して前記走査ミラーの振れ角を所定条件に応じて調整する振幅調整手段をさらに備えてもよい。光走査装置は、走査ミラーの共振周波数に応じて最適な駆動周波数で走査ミラーを駆動しつつ、走査ミラーの振れ角を調整することができる。従って、光走査装置は、共振周波数に応じて的確に走査ミラーを駆動することができる。
【0016】
本発明の第二の態様に係る共振周波数設定方法は、揺動軸回りに揺動することでレーザ光を走査する走査ミラーと、前記走査ミラーを揺動させる駆動手段と、前記駆動手段に駆動信号を供給して前記駆動手段を制御する駆動制御手段と、前記走査ミラーの振れ角を検出する検出手段とを備え、前記走査ミラーの駆動周波数を変化させた場合に、振れ角が線形的に変化する駆動周波数の領域である線形領域と、前記走査ミラーの共振周波数を含み、且つ振れ角が非線形的に変化する駆動周波数の領域である非線形領域とが現れる光走査装置の前記駆動制御手段によって実行される共振周波数設定方法であって、起動時点において予め設定された起動用共振周波数を起動時の駆動周波数として前記駆動手段を起動し、前記走査ミラーの揺動を開始させる起動ステップと、前記起動ステップにおいて前記駆動手段が起動された場合に、前記走査ミラーの駆動周波数を前記起動用周波数から前記線形領域に向けて順次変化させる第一周波数変化ステップと、前記第一周波数変化ステップにおいて駆動周波数が順次変化している場合に、前記検出手段によって検出された振れ角が増加から減少へ変化することを契機として、前記第一周波数変化ステップにおいて変化していた方向とは逆の方向に駆動周波数を順次変化させる第二周波数変化ステップと、前記第二周波数変化ステップにおいて駆動周波数が順次変化している場合に、前記検出手段によって検出された振れ角が最大となる駆動周波数を前記走査ミラーの共振周波数として計測し、その後の駆動周波数とする共振周波数設定ステップとを備えている。
【0017】
第二の態様に係る共振周波数設定方法によると、光走査装置は、予め設定された起動用共振周波数を起動時の駆動周波数として、走査ミラーの駆動手段を起動する。次いで、走査ミラーの駆動周波数を線形領域に向けて一方向に順次変化させていき、振れ角の増減の変曲点に達したら、変化させていた方向と逆の方向に駆動周波数を順次変化させていく。その後、光走査装置は、駆動周波数を変化させている間に振れ角が最大となる駆動周波数を、走査ミラーの共振周波数として計測し、計測した共振周波数を駆動周波数とする。従って、光走査装置は、使用環境の変化による共振周波数の変動を考慮して広い範囲で共振周波数を探索する必要はない。さらに、光走査装置は、跳躍現象が生じる周波数をあらかじめ計測しておく必要がない。よって、光走査装置は、走査ミラーの共振周波数を短時間で容易に計測し、計測した共振周波数をその後の駆動周波数とすることができる。
【図面の簡単な説明】
【0018】
【図1】ヘッドマウントディスプレイ1の外観構成を示す図である。
【図2】ヘッドマウントディスプレイ1の電気的構成を示すブロック図である。
【図3】表示部10が画像光5を射出する過程を説明する説明図である。
【図4】垂直走査系20の斜視図である。
【図5】垂直走査ミラー21にメタルMEMSを用いた場合の駆動周波数と振れ角との関係を示すグラフである。
【図6】CPU111が実行する駆動処理のフローチャートである。
【図7】駆動処理中に実行される開始周波数算出処理のフローチャートである。
【図8】フラッシュメモリ54に記憶される変化量パラメータテーブルの説明図である。
【図9】フラッシュメモリ54に記憶される前回停止直前データの説明図である。
【図10】駆動周波数の上昇量および下降量と振れ角の増加量との関係を示す説明図である。
【図11】ROM112に記憶されている上昇量決定テーブルの説明図である。
【図12】ROM112に記憶されている下降量決定テーブルの説明図である。
【図13】駆動処理中に実行される駆動中処理のフローチャートである。
【発明を実施するための形態】
【0019】
以下、本発明の一実施の形態について、図面を参照して説明する。参照する図面は、本発明が採用し得る技術的特徴を説明するために用いられるものである。図面に記載されている装置の構成、各種処理のフローチャート等は、それのみに限定する趣旨ではなく、単なる説明例である。
【0020】
以下では、光走査装置の1つであるヘッドマウントディスプレイ1を例に挙げて説明を行う。ヘッドマウントディスプレイ1は、画像信号に応じて変調されたレーザ光を走査させて、画像光として射出し、ユーザの少なくとも一方の眼の網膜に画像を直接投影する網膜走査型ディスプレイである。しかし、本発明が適用できるのはヘッドマウントディスプレイ1に限られない。画像を表示するためのレーザ光を走査する光走査装置であれば、本発明は適用できる。例えば、走査したレーザ光を、投影対象となるスクリーン上に射出して投影するスクリーン走査型の画像表示装置にも、本発明は適用できる。
【0021】
図1を参照して、ヘッドマウントディスプレイ1の概略構成について説明する。ヘッドマウントディスプレイ1は、射出装置2と、接眼部3と、頭部装着部4とを少なくとも備える。射出装置2は、画像信号に応じて画像光5(図3参照)を接眼部3へ射出する。射出装置2に対する接眼部3の位置は固定されている。接眼部3は、ハーフミラー38(図3参照)を備えている。接眼部3は、ハーフミラー38によって、外界からの外光6を透過し、且つ、射出装置2から射出された画像光5をユーザの眼に向かって反射させる。つまり、接眼部3は、ユーザの側方から入射した画像光5と、外界から入射した外光6とを、共にユーザの眼に入射させる。その結果、ユーザは、実際の視界に加えて、射出装置2から射出された画像光に基づく画像を視認することができる。
【0022】
図2を参照して、ヘッドマウントディスプレイ1の電気的構成について説明する。ヘッドマウントディスプレイ1は、表示部10、入力部40、通信部43、制御部50、ビデオRAM53、フラッシュメモリ54、および電源部55を備える。
【0023】
表示部10は、ユーザに画像を視認させる部位である。表示部10は、駆動信号コントローラ11、レーザ群13、およびレーザドライバ群12を備える。駆動信号コントローラ11は、CPU111、ROM112、およびRAM113を備える。駆動信号コントローラ11では、ROM112に格納されたプログラムがCPU111によって読み出されることで、表示部10を駆動するための各種処理が行われる。具体的には、駆動信号コントローラ11は、制御部50から画像信号を入力し、入力した信号に応じて、レーザドライバ群12に駆動信号(輝度信号)を出力する。さらに、駆動信号コントローラ11は、後述する垂直走査ミラー21および水平走査ミラー26を揺動させるための条件(例えば、垂直走査ミラー21の駆動周波数および振れ角)を決定し、垂直走査駆動部23および水平走査駆動部28に駆動信号を出力する(詳細は後述する)。レーザ群13は、青色出力レーザ(Bレーザ)131、緑色出力レーザ(Gレーザ)132、および赤色出力レーザ(Rレーザ)133を含む。レーザ群13は、青色、緑色、および赤色のレーザ光を出力する。レーザドライバ群12は、駆動信号コントローラ11から受信した駆動信号に応じてレーザ群13を制御し、レーザ群13にレーザ光を出力させる。つまり、制御部50がヘッドマウントディスプレイ1の全体制御を司り、駆動信号コントローラ11は、制御部50から入力する画像信号に応じて画像表示の処理を制御する。
【0024】
表示部10は、垂直走査ミラー21、垂直走査駆動部23、水平走査ミラー26、および水平走査駆動部28を備える。垂直走査ミラー21は、揺動軸周りに揺動することで、レーザ群13から出力されたレーザ光を垂直方向(本実施の形態の主走査方向)に走査する。垂直走査駆動部23は、駆動信号コントローラ11から受信した駆動信号に応じて、垂直走査ミラー21を高速で共振揺動させる。水平走査ミラー26は、垂直走査ミラー21によって垂直方向に二次元走査されたレーザ光を、さらに水平方向(本実施の形態の副走査方向)に走査する。水平走査駆動部28は、駆動信号コントローラ11から受信した駆動信号に応じて、水平走査ミラー26を低速揺動させる。
【0025】
表示部10は、BD(ビームディテクト)センサ31、およびBD信号検出回路32を備える。BDセンサ31は、垂直走査ミラー21によって反射されたレーザ光(主走査方向に走査されたレーザ光)を検出する。つまり、BDセンサ31は、レーザ光の主走査方向における基準位置(基準タイミング)を検出するために設けられている。BD信号検出回路32は、レーザ光が所定の位置に到達したことがBDセンサ31によって検出された場合に、BD信号を駆動信号コントローラ11に出力する。駆動信号コントローラ11は、BD信号の入力結果に基づいて、垂直走査ミラー21の走査角の最大値である振れ角を検出する。さらに、駆動信号コントローラ11は、BD信号の入力結果に基づいて、レーザ群13からレーザ光を出力するタイミングを決定する。
【0026】
表示部10は、温度センサ33を備える。温度センサ33は、垂直走査ミラー21の周囲の温度を検出し、検出した温度を駆動信号コントローラ11に出力する。駆動信号コントローラ11は、垂直走査ミラー21の起動時の駆動周波数である起動用共振周波数を、温度センサ33から入力した温度に基づいて決定する。
【0027】
入力部40は、ユーザからの各種操作指示の入力を受け付ける部位である。入力部40は、操作ボタン群41および入力制御回路42を備える。入力制御回路42は、操作ボタン群41のボタンが操作されたことを検出する。入力制御回路42は、制御部50と電気的に接続されており、ボタン操作に関する情報を制御部50に出力する。
【0028】
通信部43は、画像情報等の送受信を行う部位である。通信部43は、通信モジュール44および通信制御回路45を備える。通信モジュール44は、外部機器との間の無線通信または有線通信によって、画像情報等の送受信を行う。通信制御回路45は、通信モジュール44の動作を制御する。通信制御回路45は、制御部50と電気的に接続されており、制御部50に画像情報を取得させる。
【0029】
制御部50は、ヘッドマウントディスプレイ1の全体の制御を司る。制御部50は、図示しないCPU、ROM、およびRAMを備える。制御部50では、ROMに格納されたプログラムがCPUによって読み出されることで、ヘッドマウントディスプレイ1の動作を制御するための各種処理が行われる。ビデオRAM53には、画像情報に含まれるイメージデータが展開される。フラッシュメモリ54は、ヘッドマウントディスプレイ1で使用される機能の各種設定値等を記憶する。
【0030】
電源部55は、電池56および充電制御回路57を備える。電池56は、ヘッドマウントディスプレイ1を駆動させるための電源となる充電式の電池である。充電制御回路57は、電池56からヘッドマウントディスプレイ1への電力供給の制御、および充電用アダプタ(図示せず)から電池56への充電の制御を行う。
【0031】
図3を参照して、表示部10が画像光5を射出する過程の概要について説明する。表示部10は、光源ユニット部18、コリメート光学系19、垂直走査系20、第一リレー光学系24、水平走査系25、および第二リレー光学系29を備える。
【0032】
光源ユニット部18は、駆動信号コントローラ11、レーザドライバ群12、レーザ群13、コリメート光学系14、ダイクロイックミラー群15、結合光学系16、およびBD信号検出回路32を備える。駆動信号コントローラ11は、例えば、制御部50によってビデオRAM53に展開されたイメージデータの画像信号を、表示すべき画像を構成する画素毎に読み出して、駆動信号である輝度信号35を生成すると共に、垂直駆動信号36、および水平駆動信号37を生成する。駆動信号コントローラ11は、生成した輝度信号35(B輝度信号351、G輝度信号352、およびR輝度信号353)をレーザドライバ群12(Bレーザドライバ121、Gレーザドライバ122、およびRレーザドライバ123)に出力する。さらに、垂直駆動信号36を垂直走査駆動部23に出力し、水平駆動信号37を水平走査駆動部28に出力する。ただし、駆動信号コントローラ11は、BD信号検出回路32からBD信号が入力されたタイミング(レーザ光が所定の位置に到達したタイミング)に基づいて、前記垂直駆動信号36および水平駆動信号37を制御すると共に、輝度信号35をレーザドライバ群12に出力するタイミングを決めている。
【0033】
レーザドライバ群12は、入力された輝度信号35に基づいて、強度変調されたレーザ光をレーザ群13に出力させる。レーザ群13が出力したレーザ光は、コリメート光学系14に入射する。コリメート光学系14の3つのコリメートレンズ141〜143は、レーザ群13が出力した3色(青色、緑色、赤色)のレーザ光のそれぞれを平行光にコリメートする。コリメート光学系14によってコリメートされたレーザ光は、ダイクロイックミラー群15に入射する。ダイクロイックミラー群15の3つのダイクロイックミラー151〜153は、コリメートされた3色のレーザ光を1つのレーザ光になるように合波する。合波されたレーザ光は、結合光学系16によって光ファイバ17に導かれる。
【0034】
光ファイバ17を伝達したレーザ光は、コリメート光学系19によって平行光にコリメートされて、垂直走査系20に入射する。本実施の形態の垂直走査系20は、表示すべき画像の1走査線ごとに、レーザ光を垂直方向(主走査方向)に走査する。垂直走査系20は、水平走査系25よりも高速に(すなわち、高周波数で)レーザ光を走査するように設計されている。垂直走査系20に入射したレーザ光は、垂直走査ミラー21の偏向面22に照射される。垂直走査駆動部23は、駆動信号コントローラ11から入力された垂直駆動信号36に従って、垂直走査ミラー21を共振揺動させる。その結果、偏向面22に照射されたレーザ光は、垂直方向に高速で走査される。前述したように、BDセンサ31は、垂直走査ミラー21によって垂直走査されたレーザ光を検出することで、レーザ光の主走査方向における基準位置(基準タイミング)を検出する。
【0035】
垂直走査されたレーザ光は、第一リレー光学系24を介して水平走査系25に入射する。本実施の形態の水平走査系25は、表示すべき画像の1フレーム毎に、レーザ光を最初の走査線から最後の走査線に向かう水平方向(副走査方向)に走査する。水平走査系25に入射したレーザ光は、水平走査ミラー26の偏向面27に照射される。水平走査駆動部28は、駆動信号コントローラ11から入力された水平駆動信号37に従って、水平走査ミラー26を揺動させる。その結果、偏向面27に照射されたレーザ光は、水平方向に走査される。
【0036】
垂直走査系20および水平走査系25によって二次元走査されたレーザ光のうち、画像を表示させるためのレーザ光である画像光5は、第二リレー光学系29を介してハーフミラー38に射出される。画像光5は、ハーフミラー38によって全反射されてユーザの瞳孔39に導かれる。その結果、ビデオRAM53(図2参照)に展開されたイメージデータに基づく画像が、ユーザの網膜上に形成される。ユーザは、二次元走査されて網膜上に投影されたレーザ光による画像を視認することができる。
【0037】
以上説明したように、ヘッドマウントディスプレイ1は、垂直走査ミラー21を高速で共振揺動させ、且つ水平走査ミラー26を垂直走査ミラー21よりも低速で揺動させることで、レーザ光を二次元走査させる。垂直走査ミラー21を効率よく共振揺動させるためには、垂直走査ミラー21を駆動させるための駆動周波数を、垂直走査ミラー21の共振周波数に近い値に設定する必要がある。垂直走査ミラー21を共振周波数に近い駆動周波数で駆動させて共振状態とすることで、駆動エネルギーが垂直走査ミラー21に対してロスなく出入りする。ここで、垂直走査ミラー21の共振周波数は、垂直走査ミラー21の温度、経時変化等の影響で変動する。従って、ヘッドマウントディスプレイ1は、その時点における垂直走査ミラー21の共振周波数を計測し、計測した共振周波数を駆動周波数に設定することが望ましい。
【0038】
図4を参照して、本実施の形態に係る垂直走査系20の種類について説明する。本実施の形態の垂直走査ミラー21は、所謂メタルMEMSである(例えば、特開2006−293116号公報参照)。図4に示すように、垂直走査系20は、基板63、垂直走査ミラー21、捻れ梁部64、および垂直走査駆動部23を備える。基板63は矩形板状であり、基板63の一端は支持部61に固定されている。本実施の形態では、基板63の材質としてSUSを用いることで、基板63を安価に製造している。しかし、インバー、コバール等の他の材質を用いてもよい。垂直走査ミラー21および捻れ梁部64は、基板63に中抜きを行うことで、基板63に一体形成されている。垂直走査ミラー21は、図4の左右方向に延びる揺動軸を中心として揺動する。2つの捻れ梁部64は、垂直走査ミラー21から左右に延び、基板63と垂直走査ミラー21とを接続する。
【0039】
垂直走査駆動部23は、基板63のうち、捻れ梁部64と垂直走査ミラー21と基板63とで形成される空間に対し垂直走査ミラー21と対峙する側の板面に配置されている。本実施の形態の垂直走査駆動部23は、電圧の印加によって振動する圧電膜である。しかし、圧電膜の代わりに、磁界の印加によって振動する磁歪体、永久磁石等を垂直走査駆動部23として用いてもよい。つまり、電圧または磁界が印加されることで振動する振動体であれば、垂直走査駆動部23として用いることができる。垂直走査駆動部23は、電圧または磁界の印加によって振動することで、基板63に板波を誘起する。基板63に板波が誘起されると、捻れ梁部64および垂直走査ミラー21は捻れ振動を起こし、レーザ光を走査する。
【0040】
図5を参照して、本実施の形態の垂直走査ミラー21における駆動周波数と振れ角との間の特性について説明する。駆動周波数を変化させながら垂直走査ミラー21を駆動すると、跳躍現象および履歴現象が生じる。跳躍現象とは、駆動周波数を変化させた場合に、垂直走査ミラー21の振れ角が急激に増減する現象である。履歴現象とは、駆動周波数を徐々に上昇させる場合と徐々に下降させる場合とで、跳躍現象が生じる周波数である跳躍周波数に差が生じる現象である。図5のグラフにおいて、黒色の線は、駆動周波数を徐々に下降させた場合(ダウンスイープ時)の垂直走査ミラー21の駆動周波数と振れ角との関係を示す。白色の線は、駆動周波数を徐々に上昇させた場合(アップスイープ時)の垂直走査ミラー21の駆動周波数と振れ角との関係を示す。
【0041】
図5に示すように、メタルMEMSである垂直走査ミラー21を用いた場合、ダウンスイープ時には、駆動周波数がA(跳躍周波数A)に達した際に、振れ角は急激に減少する。一方で、アップスイープ時には、駆動周波数がB(跳躍周波数B)に達した際に、振れ角は急激に増加する。このように、ダウンスイープ時の跳躍周波数Aは、アップスイープ時の跳躍周波数Bよりも低くなる。跳躍周波数Aと跳躍周波数Bの間の領域では、振れ角の増減の割合は一定ではなく、振れ角は非線形に変化する。従って、跳躍周波数Aと跳躍周波数Bの間の領域を非線形領域と呼ぶ。一方、駆動周波数が跳躍周波数Bよりも大きい領域では、振れ角の増減の割合は略一定となり、振れ角はほぼ線形に変化する。従って、駆動周波数が跳躍周波数Bよりも大きい領域を、線形領域と呼ぶ。
【0042】
メタルMEMSである垂直走査ミラー21を用いた場合、共振周波数は、駆動周波数を徐々に下降させながら振れ角を計測し、振れ角が最大となる駆動周波数を検出することで計測される。共振周波数は、ダウンスイープ時の跳躍周波数Aと、アップスイープ時の跳躍周波数Bとの間の非線形領域内に存在する。従って、跳躍周波数Bからダウンスイープすることで共振周波数を計測すればよい。しかし、前述したように、共振周波数は、温度、経時変化等の影響で変動する。共振周波数を計測する従来の手法では、まず跳躍周波数Bが計測される。次いで、使用環境の変化等による共振周波数の変動が考慮されて、跳躍周波数Bよりも高い周波数が、起動時の駆動周波数(計測開始周波数)に設定される。計測開始周波数から徐々に駆動周波数が下げられることで、振れ角が最大となる駆動周波数が共振周波数として計測される。従って、従来の手法では、跳躍周波数Bを計測する処理の負荷がかかり、且つ、共振周波数の変動を考慮して幅広い駆動周波数の範囲を探索する必要があった。本実施の形態のヘッドマウントディスプレイ1は、駆動時に跳躍周波数Bを計測することなく、且つ短時間で共振周波数を計測し、最適な駆動周波数を設定することができる。上記の処理の詳細について、以下説明する。
【0043】
図6から図13を参照して、駆動信号コントローラ11のCPU111が実行する駆動処理について説明する。以下では、レーザ群13等の複数のデバイスの駆動を制御するためにCPU111が実行する処理のうち、垂直走査ミラー21の駆動を制御する処理について説明する。駆動信号コントローラ11のCPU111は、画像の表示を開始させる指示を制御部50から入力すると、ROM112に記憶されているプログラムに従って、図5に示す駆動処理を開始する。
【0044】
図6に示すように、駆動処理が開始されると、垂直走査ミラー21の揺動を開始させるための処理(S1,S2)が行われる。まず、開始周波数算出処理が行われる(S1)。開始周波数算出処理では、垂直走査ミラー21の固有の共振周波数が、起動用共振周波数(計測開始周波数)として算出される。
【0045】
図7を参照して、開始周波数算出処理について説明する。開始周波数算出処理が開始されると、フラッシュメモリ54に記憶されている変化量パラメータが読み込まれる(S31)。変化量パラメータとは、走査ミラーの温度に応じた共振周波数の変化量を示すパラメータである。図8に示すように、フラッシュメモリ54には、変化量パラメータテーブルが記憶されている。変化量パラメータテーブルでは、温度センサ33によって検出された垂直走査ミラー21の温度と、この温度が検出された時点の垂直走査ミラー21の共振周波数とが対応付けられて、複数記憶されている。変化量パラメータテーブル内のパラメータを用いることで、垂直走査ミラー21の温度変化に対する共振周波数の変化割合を算出することができる。変化量パラメータテーブルの各値を記憶する処理については、図13を参照して後述する。
【0046】
次いで、フラッシュメモリ54に記憶されている前回停止直前データが読み込まれる(S32)。図9に示すように、前回停止直前データとは、垂直走査ミラー21の共振揺動が前回停止された直前の、垂直走査ミラー21の温度(停止直前温度T)および共振周波数(停止直前共振周波数F)のデータである。つまり、垂直走査ミラー21の駆動中に前回計測された温度および共振周波数が、前回停止直前データとして記憶されている。次いで、その時点で温度センサ33によって計測されている垂直走査ミラー21の現在温度Eが取得される(S33)。
【0047】
CPU111は、S31〜S33で取得した値から計測開始周波数を算出する(S34)。まず、変化量パラメータテーブル内のパラメータから、温度変化に対する共振周波数の変化割合Zが算出される。変化割合Zは、変化量パラメータテーブルにおいて前回の停止直前温度T(図8参照)の値に対応付けられている共振周波数の値から、垂直走査ミラー21の現在温度Eの値に対応付けられている共振周波数の値を引き、この値を(T−E)で割ることで算出される。次いで、以下の(式1)によって計測開始周波数が算出される。
計測開始周波数=停止直前共振周波数F+(停止直前温度T−現在温度E)×変化割合Z・・・(式1)
【0048】
つまり、CPU111は、過去に計測された垂直走査ミラー21の温度と共振周波数とを用いて、温度変化に対する共振周波数の変化割合Zを算出する。その結果、垂直走査ミラー21の共振周波数が経時変化等の影響を受けて変化した場合でも、経時変化等の影響を含めた適切な変化割合Zを算出することができる。CPU111は、算出した変化割合Zと、前回の共振揺動停止時の値(停止直前温度Tおよび停止直前共振周波数F)と、現在温度Eとを用いることで、温度変化および経時変化等の影響を考慮した適切な計測開始周波数を算出することができる。処理は駆動処理(図6参照)へ戻る。
【0049】
図6の説明に戻る。CPU111は、算出した計測開始周波数を起動時の駆動周波数に設定し、垂直走査ミラー21を起動する(S2)。算出した計測開始周波数は、垂直走査ミラー21の固有の共振周波数である。次いで、共振周波数の計測を行う(S3〜S21)。まず、非線形領域より上側(周波数の高い側)に現れる跳躍周波数Bよりも大きい線形領域に向けて、垂直走査ミラー21の駆動周波数をX上昇させる(S3)。上昇量Xの値は、起動直後であればあらかじめ定められた所定の値が用いられ、その後は後述するS7の処理で決定される。
【0050】
CPU111は、垂直走査ミラー21の走査角の最大値である振れ角を検出する(S4)。振れ角を検出する手法には、複数のフォトダイオードを走査方向に並べて配置することで検出する手法、垂直走査ミラー21を駆動する部材の変位を圧電素子等で検出する手法、BD信号の入力結果に基づいて検出する手法等、種々の手法があるが、いずれの手法を用いてもよい。前述したように、本実施の形態のヘッドマウントディスプレイ1は、BD信号を利用して振れ角を検出する。BD信号を利用して振れ角を検出する手法は公知である(例えば、特開2006−101306号参照)。BD信号は、レーザ光の主走査方向における位置が所定の位置に達した場合に出力される。垂直走査ミラー21は共振揺動しているため、CPU111は、レーザ光の位置が原点位置から所定の位置まで達するまでの時間を算出することで、垂直走査ミラー21の振れ角を検出することができる。
【0051】
CPU111は、振れ角が増加から減少に変化する点である変曲点Cを検出したか否かを判断する(S5)。メタルMEMSである垂直走査ミラー21を用いた場合、図10に示すように、垂直走査ミラー21の固有の共振周波数(起動用共振周波数)から駆動周波数を順次上昇させると、跳躍現象が生じた後に、振れ角は増加から減少に転じる。CPU111は、振れ角の増減の変化を検出することで、変曲点Cを検出することができる。
【0052】
変曲点Cが検出されなければ(S5:NO)、振れ角の増加割合が算出される(S6)。S6で算出される振れ角の増加割合は、駆動周波数の単位上昇量に対する振れ角の増加量である。振れ角の増加割合は、直前のS3の処理で駆動周波数を上昇させた結果増加した振れ角の増加量を、S3における駆動周波数の上昇量Xで割ることで算出される。
【0053】
図10に示すように、垂直走査ミラー21の固有の共振周波数から駆動周波数を順次上昇させると、変曲点Cの直前で跳躍現象が起こり、振れ角は急激に増加する。従って、図10に示すように、駆動周波数が変曲点Cの周波数に近づく程、振れ角の増加割合P1,P2,P3は徐々に増加する。つまり、振れ角の増加割合が大きい程、変曲点Cの周波数が近いことになる。よって、変曲点Cを正確に検出するためには、振れ角の増加割合が大きい程、駆動周波数の変化量である上昇量Xを小さくする必要がある。また、駆動周波数を変曲点Cの周波数に早急に効率よく近づけるためには、振れ角の増加割合が小さい程、駆動周波数の上昇量Xを大きくする必要がある。
【0054】
CPU111は、ROM112に記憶されている上昇量決定テーブル(図11参照)を参照することで、振れ角の増加割合に応じた駆動周波数の上昇量Xを決定する(S7)。図11に示すように、上昇量決定テーブルでは、振れ角の増加割合が大きくなる程、駆動周波数の上昇量Xが小さくなるように、振れ角の増加割合と上昇量Xとが対応付けられている。従って、CPU111は、上昇量決定テーブルを参照することで、効率よく正確に変曲点Cを検出するための上昇量Xを、容易に決定することができる。CPU111は、上昇量Xを決定すると、決定した上昇量Xだけ駆動周波数を再び上昇させて(S3)、変曲点Cを検出したか否かの判断を繰り返す(S4,S5)。
【0055】
CPU111は、変曲点Cを検出すると(S5:YES)、垂直走査ミラー21の駆動周波数をY下降させる(S11)。つまり、駆動周波数を変化させる方向を、上昇から下降に切り替える。下降量Yの値は、駆動周波数を上昇から下降に切り替えた直後であれば、あらかじめ定められた所定の値が用いられる。その後は、後述するS15の処理で下降量Yの値が決定される。CPU111は、駆動周波数を下降させた状態で、垂直走査ミラー21の振れ角を検出する(S12)。次いで、CPU111は、振れ角が最大となる駆動周波数を検出したか否かを判断する(S13)。図10に示すように、駆動周波数を変曲点Cの周波数から順次下降させると、跳躍現象が生じる前に、振れ角は増加から減少に転じる。増加から減少に転じる時点の振れ角が、最大の振れ角となる。CPU111は、振れ角の増減の変化を検出することで、振れ角が最大となる駆動周波数を検出することができる。振れ角が最大となる駆動周波数は、垂直走査ミラー21の共振周波数である。
【0056】
振れ角が最大となる駆動周波数が検出されなければ(S13:NO)、振れ角の増加割合が算出される(S14)。S14で算出される振れ角の増加割合は、駆動周波数の単位下降量に対する振れ角の増加量である。S14では、直前のS11で駆動周波数を下降させた結果増加した振れ角の増加量を、S11における駆動周波数の下降量Yで割ることで、増加割合が算出される。
【0057】
図10に示すように、変曲点Cの周波数から駆動周波数を順次下降させると、振れ角が最大となる直前の非線形領域内では、振れ角の増加割合Q1,Q2,Q3は徐々に減少する。つまり、振れ角の増加割合が小さい程、振れ角が最大となる駆動周波数(共振周波数)が近いことになる。よって、振れ角が最大となる駆動周波数を正確に検出するためには、振れ角の増加割合が小さい程、駆動周波数の下降量Yを小さくする必要がある。また、振れ角の増加割合が大きい程、駆動周波数の下降量Yを大きくすることで、振れ角が最大となる駆動周波数を効率よく早急に検出することができる。
【0058】
CPU111は、ROM112に記憶されている下降量決定テーブル(図12参照)を参照することで、振れ角の増加割合に応じた駆動周波数の下降量Yを決定する(S15)。図11に示すように、下降量決定テーブルでは、振れ角の増加割合が小さくなる程、駆動周波数の下降量Yが小さくなるように、振れ角の増加割合と下降量Yとが対応付けられている。従って、CPU111は、下降量決定テーブルを参照することで、振れ角が最大となる駆動周波数を効率よく正確に検出するための下降量Yを、容易に決定することができる。CPU111は、下降量Yを決定すると、決定した下降量Yだけ駆動周波数を再び下降させて(S11)、振れ角が最大となる駆動周波数の検出を繰り返す(S12,S13)。
【0059】
振れ角が最大となる駆動周波数が検出されると(S13:YES)、CPU111は、検出した駆動周波数を共振周波数として計測する(S21)。計測した共振周波数を、駆動中の垂直走査ミラー21の駆動周波数に設定する(S22)。次いで、CPU111は、垂直駆動信号36の振幅を制御し、垂直走査ミラー21の振れ角を調整する(S23)。具体的には、CPU111は、振れ角が所定値よりも小さければ、垂直駆動信号36の振幅を増加させて振れ角を増加させる。振れ角が所定値よりも大きい場合には、垂直駆動信号36の振幅を減少させて振れ角を減少させる。その後、駆動中処理が行われて(S24)、駆動処理は終了する。
【0060】
図13を参照して、駆動中処理について説明する。駆動中処理では、追従処理が開始される(S41)。追従処理とは、共振周波数の変化に応じて駆動周波数および駆動振幅を制御し、駆動周波数を共振周波数に追従させつつ、振れ角を最適値に調整する処理である。追従処理は、駆動が終了するまで継続して実行される。追従処理では、CPU111は、垂直走査ミラー21の共振揺動動作の位相の変化を監視することで、共振周波数および振れ角の変化を検出する。CPU111は、変化した共振周波数に駆動周波数を追従させると共に、駆動振幅を制御して振れ角を調整する。
【0061】
次いで、一定時間が経過したか否かが判断される(S42)。S42で判断される一定時間は、変化量パラメータテーブルを一定周期で更新するために計測されている。一定時間が経過していなければ(S42:NO)、ユーザによる駆動停止指示が入力部40(図2参照)に入力されたか否かが判断される(S43)。停止指示が入力されていなければ(S43:NO)、S42およびS43の判断が繰り返される。
【0062】
一定時間が経過すると(S42:YES)、追従処理において検出されている現在の共振周波数と、温度センサ33によって検出されている現在の温度とが取得される(S45)。取得された共振周波数と温度とが対応付けられて、フラッシュメモリ54の変化量パラメータテーブル(図8参照)に記憶され、変化量パラメータテーブルが更新される(S46)。CPU111は、変化量パラメータテーブルに記憶させてから所定時間経過したデータを削除する。従って、変化量パラメータテーブル内のパラメータは、経時変化等の影響も含む適切なパラメータとなる。処理はS42の判断へ戻る。
【0063】
ユーザによる駆動停止指示が入力されると(S43:YES)、S45の処理と同様に、追従処理において検出されている現在の共振周波数と、温度センサ33によって検出されている現在の温度とが取得される(S48)。取得された共振周波数および温度が、前回停止直前データ(図9参照)としてフラッシュメモリ54に記憶される。垂直走査ミラー21の駆動が停止されて、処理は図6に示す駆動処理へ戻り、駆動処理は終了する。
【0064】
以上説明したように、本実施の形態のヘッドマウントディスプレイ1は、垂直走査ミラー21の固有の共振周波数を起動時の駆動周波数として、垂直走査駆動部23による垂直走査ミラー21の揺動動作を起動する。次いで、垂直走査ミラー21の駆動周波数を線形領域へ向けて順次変化させていき、振れ角の増減の変曲点Cに達したら、駆動周波数の増減の方向を切り替える。その後、ヘッドマウントディスプレイ1は、駆動周波数を変化させている間に振れ角が最大となる駆動周波数を、垂直走査ミラー21の共振周波数として計測し、計測した共振周波数を駆動周波数に設定して垂直走査ミラー21を駆動する。従って、ヘッドマウントディスプレイ1は、使用環境の変化による共振周波数の変動を考慮して広い範囲で共振周波数を探索する必要はない。さらに、ヘッドマウントディスプレイ1は、駆動周波数を順次変化(上記実施の形態では「上昇」)させた場合の跳躍周波数Bをあらかじめ計測しておく必要がない。よって、ヘッドマウントディスプレイ1は、垂直走査ミラー21の共振周波数を短時間で容易に計測し、計測した共振周波数をその後の駆動周波数とすることができる。
【0065】
上記実施の形態で用いられている垂直走査ミラー21はメタルMEMSである。メタルMEMSを用いると、駆動周波数を徐々に下降させる場合の跳躍周波数Aは、駆動周波数を徐々に上昇させる場合の跳躍周波数Bよりも低くなる。共振周波数は、駆動周波数を徐々に下降させた場合における跳躍周波数Aと跳躍周波数Bの間に存在する。従って、ヘッドマウントディスプレイ1は、駆動周波数を増加させた後に減少させることによって、垂直走査ミラー21の特性に応じた適切な方法で共振周波数を計測することができる。
【0066】
ヘッドマウントディスプレイ1は、垂直走査ミラー21の温度と、温度に応じた共振周波数の変化量を示すパラメータと、前回停止直前データ(図8参照)とを用いて、起動用共振周波数を算出する。従って、ヘッドマウントディスプレイ1は、温度変化および経時変化の影響を受けて共振周波数が変化した場合でも、最適な駆動周波数から計測処理を開始することができる。共振周波数の計測に失敗する可能性も低い。
【0067】
ヘッドマウントディスプレイ1は、駆動周波数を順次下降させて共振周波数を計測する場合、振れ角の増加割合が小さい程、駆動周波数の下降量Yを小さくする。その結果、共振周波数をより正確に素早く計測し、最適な駆動周波数を設定することができる。また、ヘッドマウントディスプレイ1は、駆動周波数を順次上昇させて変曲点Cを検出する場合、振れ角の増加割合が大きい程、駆動周波数の上昇量Xを小さくする。その結果、変曲点Cをより正確に素早く計測することができる。
【0068】
ヘッドマウントディスプレイ1は、垂直走査ミラー21の共振周波数に応じて、最適な駆動周波数で垂直走査ミラー21を駆動しつつ、垂直走査ミラー21の振れ角を調整することができる。従って、ヘッドマウントディスプレイ1は、共振周波数に応じて的確に垂直走査ミラー21を駆動することができる。
【0069】
上記実施の形態において、垂直走査ミラー21が本発明の「走査ミラー」に相当する。垂直走査駆動部23が本発明の「駆動手段」に相当する。駆動信号コントローラ11のCPU111が、本発明の「駆動制御手段」として機能する。図6のS4,S12等で、BDセンサ31が出力するBD信号に基づいて垂直走査ミラー21の振れ角を検出するCPU111が、本発明の「検出手段」として機能する。図6のS2で垂直走査ミラー21の揺動動作を起動するCPU111が「起動手段」として機能する。図6のS3で駆動周波数を順次変化させるCPU111が「第一周波数変化手段」として機能する。図6のS11で駆動周波数を順次変化させるCPU111が「第二周波数変化手段」として機能する。図6のS13,S21,S22で共振周波数を計測して駆動周波数を設定するCPU111が「共振周波数設定手段」として機能する。
【0070】
図7のS33で垂直走査ミラー21の温度を取得するCPU111が「温度取得手段」として機能する。図7のS34で、起動時の駆動周波数である計測開始周波数を算出するCPU111が、「算出手段」として機能する。図6のS23で垂直走査ミラー21の振れ角を調整するCPU111が「振幅調整手段」として機能する。
【0071】
図6のS2で垂直走査ミラー21の揺動動作を起動する処理が「起動ステップ」に相当する。図6のS3で駆動周波数を順次変化させる処理が「第一周波数変化ステップ」に相当する。図6のS11で駆動周波数を順次変化させる処理が「第二周波数変化ステップ」に相当する。図6のS13,S21,S22で共振周波数を計測して駆動周波数を設定する処理が「共振周波数設定ステップ」に相当する。
【0072】
本発明は上記実施の形態に限定されることはなく、様々な変形が可能であることは言うまでもない。まず、メタルMEMS以外の走査ミラーを用いた場合、駆動周波数と振れ角との間の特性は、図5のグラフで例示した特性とは異なる場合がある。例えば、メタルMEMSの代わりに所謂シリコンMEMSを垂直走査ミラー21として使用すると、駆動周波数と振れ角との間の特性は、図5のグラフにおける駆動周波数の正負の方向を反転させた形状となる。
【0073】
シリコンMEMSの構造については、例えば特開2003−57586に例示されている。シリコンMEMSは、走査ミラーを基体に対し揺動可能に支持する捻りバネ部を有し、その捻りバネ部の少なくとも一部に設けられた振動体を振動させることで捻りバネ部を振動させ、その結果、走査ミラーを揺動させて光を走査する。より詳細には、シリコンMEMSは、基体、振動体、第一の捻りバネ部、および1対の第二の捻りバネ部で構成される。第二の捻りバネ部は、基体に支持されており、且つ、該基体に跨ぐように設けられた振動体によって振動する。第二の捻りバネ部は第一の捻りバネ部に連結しており、該第一の捻りバネ部に振動を伝える。第一の捻りバネ部では、第二の捻りバネ部から伝わった振動によって捻れ変位が発生し、第一の捻りバネ部に連結支持される走査ミラーが揺動する。振動体は、シリコンによって形成することが一般的である。
【0074】
シリコンMEMSを用いた場合、駆動周波数と振れ角との関係を示すグラフは、図5に例示したグラフの左右が反転したような形状となる。この場合でも、図6から図13を参照して説明した各種処理において上昇と下降とを入れ替えるだけで、上記実施の形態と同様に共振周波数を計測することができる。例えば、シリコンMEMSを用いた場合、図6のS3では駆動周波数を順次下降させればよい。S7では、増加割合が大きくなる程、駆動周波数の1回の下降量が小さくなるように、下降量を決定すればよい。S11では駆動周波数を順次上昇させればよい。S15では、増加割合が小さくなる程、駆動周波数の1回の上昇量が小さくなるように、上昇量を決定すればよい。つまり、アップスイープおよびダウンスイープのいずれを先に実行するかは、使用する走査ミラーの種類に応じて適宜決定すればよい。
【0075】
上記実施の形態は他の変更も可能である。例えば、上記実施の形態では、網膜走査型のヘッドマウントディスプレイ1を例示した。しかし、レーザ光を走査ミラーの共振揺動により主走査方向に走査させて画像を表示する画像表示装置であれば、本発明を適用できる。また、図6等に示した駆動処理を、画像表示装置に接続されたPC等の外部機器が行い、外部機器が画像表示装置の動作を制御してもよい。変化量パラメータテーブル(図8参照)、前回停止直前データ(図9参照)等を記憶する記憶装置は、フラッシュメモリ54以外の記憶装置に変更できることは言うまでもない。主走査方向を水平方向、副走査方向を垂直方向としてもよい。
【0076】
図7のS34に示す計測開始周波数の決定方法は変更できる。例えば、ヘッドマウントディスプレイ1は、図8に示す変化量パラメータテーブルにおいて、垂直走査ミラー21の現在の温度に対応付けられている共振周波数を取得し、計測開始周波数として決定してもよい。図8に示す変化量パラメータテーブルを更新せずに、パラメータを固定値としてもよい。
【0077】
上記実施の形態のヘッドマウントディスプレイ1は、振れ角の増加割合に応じて、駆動周波数の上昇量Xおよび下降量Yを決定する。しかし、駆動周波数の上昇量Xおよび下降量Yの決定方法は変更できる。例えば、一定の計測精度の低下を許容できる場合には、上昇量Xおよび下降量Yの少なくとも一方を固定値としてもよい。
【符号の説明】
【0078】
1 ヘッドマウントディスプレイ
11 駆動信号コントローラ
21 垂直走査ミラー
23 垂直走査駆動部
31 BDセンサ
33 温度センサ
36 垂直駆動信号
54 フラッシュメモリ
111 CPU
【技術分野】
【0001】
本発明は、走査ミラーの共振周波数を計測し、計測した共振周波数に応じて走査ミラーを駆動する光走査装置、および共振周波数設定方法に関する。
【背景技術】
【0002】
従来、走査ミラーを駆動(揺動)させてレーザ光を走査することで、被走査面に画像を形成する光走査装置が知られている。走査ミラーを安定して効率よく共振揺動させるためには、走査ミラーを駆動させるための駆動信号の周波数(以下、「駆動周波数」という。)を、走査ミラーの共振周波数に応じて設定することが必要である。例えば、特許文献1が開示している光走査装置は、駆動周波数と振幅とを共振周波数に応じて設定することで、省エネルギー化を図っている。
【0003】
同一の走査ミラーを用いる場合であっても、走査ミラーの共振周波数は、温度等の使用環境に伴って変動する。従って、走査ミラーを駆動させる場合、その時点における走査ミラーの共振周波数を計測し、計測した共振周波数に応じて駆動信号を制御することが望ましい。
【0004】
従来の共振周波数の計測方法について説明する。まず、走査ミラーの駆動周波数と振れ角との間の特性について述べる。駆動周波数を変化させながら走査ミラーを駆動すると、跳躍現象および履歴現象(ヒステリシス)が生じる。跳躍現象とは、駆動周波数を変化させた場合に、走査ミラーの振れ角が急激に増減する現象である。履歴現象とは、駆動周波数を徐々に上昇させる場合と徐々に下降させる場合とで、跳躍現象が生じる周波数(以下、「跳躍周波数」という。)に差が生じる現象である。
【0005】
走査ミラーが所謂メタルMEMS(詳細は後述する)である場合を例示する。走査ミラーがメタルMEMSであれば、駆動周波数を徐々に下降させる場合の跳躍周波数Aは、駆動周波数を徐々に上昇させる場合の跳躍周波数Bよりも低い。共振周波数は、駆動周波数を徐々に下降させながら振れ角を計測し、振れ角が最大となる駆動周波数を検出することで計測される。共振周波数は、駆動周波数を徐々に下降させる場合の跳躍周波数Aと、駆動周波数を徐々に上昇させる場合の跳躍周波数Bとの間の非線形領域内に存在する。従って、跳躍周波数Bから駆動周波数を徐々に下げながら計測を行えばよい。しかし、前述したように、共振周波数は温度等の使用環境に伴って変動する。よって、従来の光走査装置は、まず跳躍周波数Bを計測する。次いで、使用環境の変化による共振周波数の変動を考慮し、計測した跳躍周波数Bよりも高い周波数を、起動時の駆動周波数に設定する。起動時の駆動周波数から徐々に駆動周波数を下降させて、振れ角が最大となる駆動周波数を共振周波数として計測する。また、所謂シリコンMEMS(詳細は後述する)等を用いる場合でも、周波数の大小関係がメタルMEMSの場合と逆になる以外は、上記の特性に変わりはない。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2005−208460号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
従来の方法では、使用環境の変化や耐久性劣化による共振周波数の変動を考慮して、前記起動時の駆動周波数をかなり高めに設定する必要があるため、広い範囲で共振周波数を探索しなければならなかった。そのために、共振周波数の計測を開始する前に、跳躍周波数Bをあらかじめ計測しておかなければならなかった。従って、共振周波数を計測して駆動周波数を設定するために、多くの処理量および長い処理時間を要するという問題点があった。
【0008】
本発明は、走査ミラーの共振周波数を短時間で容易に計測して駆動周波数を設定することができる光走査装置、および共振周波数設定方法を提供することを目的とする。
【課題を解決するための手段】
【0009】
本発明の第一の態様に係る光走査装置は、揺動軸回りに揺動することでレーザ光を走査する走査ミラーと、前記走査ミラーを揺動させる駆動手段と、前記駆動手段に駆動信号を供給して前記駆動手段を制御する駆動制御手段と、前記走査ミラーの振れ角を検出する検出手段とを備え、前記走査ミラーの駆動周波数を変化させた場合に、振れ角が線形的に変化する駆動周波数の領域である線形領域と、前記走査ミラーの共振周波数を含み、且つ振れ角が非線形的に変化する駆動周波数の領域である非線形領域とが現れる光走査装置であって、前記駆動制御手段は、起動時点において予め設定された起動用共振周波数を起動時の駆動周波数として前記駆動手段を起動し、前記走査ミラーの揺動を開始させる起動手段と、前記起動手段によって前記駆動手段が起動された場合に、前記走査ミラーの駆動周波数を前記起動用周波数から前記線形領域に向けて一方向に順次変化させる第一周波数変化手段と、前記第一周波数変化手段が駆動周波数を順次変化させている場合に、前記検出手段によって検出された振れ角が増加から減少へ変化することを契機として、前記第一周波数変化手段によって変化していた方向とは逆の方向に駆動周波数を順次変化させる第二周波数変化手段と、前記第二周波数変化手段が駆動周波数を順次変化させている場合に、前記検出手段によって検出された振れ角が最大となる駆動周波数を前記走査ミラーの共振周波数として計測し、その後の駆動周波数とする共振周波数設定手段とを備えている。
【0010】
第一の態様に係る光走査装置は、予め設定された起動用共振周波数を起動時の駆動周波数として、走査ミラーの駆動手段を起動する。次いで、走査ミラーの駆動周波数を線形領域に向けて一方向に順次変化させていき、振れ角の増減の変曲点に達したら、変化させていた方向と逆の方向に駆動周波数を順次変化させていく。その後、光走査装置は、駆動周波数を変化させている間に振れ角が最大となる駆動周波数を、走査ミラーの共振周波数として計測し、計測した共振周波数を駆動周波数とする。従って、光走査装置は、使用環境の変化による共振周波数の変動を考慮して広い範囲で共振周波数を探索する必要はない。さらに、光走査装置は、跳躍現象が生じる周波数をあらかじめ計測しておく必要がない。よって、光走査装置は、走査ミラーの共振周波数を短時間で容易に計測し、計測した共振周波数をその後の駆動周波数とすることができる。
【0011】
前記光走査装置は、前記走査ミラーを支持する捻れ梁部と、前記捻れ梁部を支持する基板とをさらに備えてもよい。前記駆動手段は、前記基板に設けられ、電圧の印加によって振動することで前記基板に板波を誘起して前記ミラー部を揺動させる振動体であってもよい。この場合、前記第一周波数変化手段は駆動周波数を順次増加させ、前記第二周波数変化手段は駆動周波数を順次減少させるのが望ましい。上記の条件では、駆動周波数を徐々に下降させる場合の跳躍周波数Aは、駆動周波数を徐々に上昇させる場合の跳躍周波数Bよりも低くなる。共振周波数は、駆動周波数を徐々に下降させた場合における跳躍周波数Aと跳躍周波数Bの間に存在する。従って、光走査装置は、駆動周波数を増加させた後に減少させることによって、走査ミラーの特性に応じた適切な方法で共振周波数を計測することができる。
【0012】
前記駆動制御手段は、前記走査ミラーの温度を取得する温度取得手段と、前記走査ミラーの温度に応じた共振周波数の変化量を示すパラメータと、前記温度取得手段によって取得された前記走査ミラーの温度と、前記計測手段によって前回計測された共振周波数とを用いて、前記起動用共振周波数を算出して設定する算出手段とをさらに備えてもよい。前記起動手段は、前記算出手段によって設定された前記起動用共振周波数で前記駆動手段を起動してもよい。この場合、光走査装置は、温度変化および経時変化の影響を受けて共振周波数が変化した場合でも、最適な駆動周波数から計測処理を開始することができる。共振周波数の計測に失敗する可能性も低い。
【0013】
前記第二周波数変化手段は、駆動周波数を変化させることで増加する前記走査ミラーの振れ角の増加割合が小さい程、駆動周波数の1回の変化量を小さくしてもよい。共振周波数の近傍の非線形領域内では、駆動周波数が共振周波数に近くなる程、走査ミラーの振れ角の増加割合は小さくなる。従って、光走査装置は、振れ角の増加割合が小さい程、駆動周波数の1回の変化量を小さくすることで、共振周波数をより正確に計測し、最適な駆動周波数を設定することができる。
【0014】
前記第一周波数変化手段は、周波数を変化させることで増加する前記走査ミラーの振れ角の増加割合が大きい程、駆動周波数の1回の変化量を小さくしてもよい。第一周波数変化手段によって周波数を変化させながら、走査ミラーの振れ角が増加から減少へ変化することを検出する場合、増加から減少への変化が生じる前に跳躍現象が生じる。従って、駆動周波数を変化させる毎に振れ角の増加割合は大きくなる。よって、第一周波数変化手段は、振れ角の増加割合が大きい程、駆動周波数の1回の変化量を小さくすることで、振れ角の増加から減少への変化を正確に把握することができる。
【0015】
前記駆動制御手段は、前記共振周波数設定手段によって共振周波数が駆動周波数に設定された場合に、前記駆動信号の振幅を制御して前記走査ミラーの振れ角を所定条件に応じて調整する振幅調整手段をさらに備えてもよい。光走査装置は、走査ミラーの共振周波数に応じて最適な駆動周波数で走査ミラーを駆動しつつ、走査ミラーの振れ角を調整することができる。従って、光走査装置は、共振周波数に応じて的確に走査ミラーを駆動することができる。
【0016】
本発明の第二の態様に係る共振周波数設定方法は、揺動軸回りに揺動することでレーザ光を走査する走査ミラーと、前記走査ミラーを揺動させる駆動手段と、前記駆動手段に駆動信号を供給して前記駆動手段を制御する駆動制御手段と、前記走査ミラーの振れ角を検出する検出手段とを備え、前記走査ミラーの駆動周波数を変化させた場合に、振れ角が線形的に変化する駆動周波数の領域である線形領域と、前記走査ミラーの共振周波数を含み、且つ振れ角が非線形的に変化する駆動周波数の領域である非線形領域とが現れる光走査装置の前記駆動制御手段によって実行される共振周波数設定方法であって、起動時点において予め設定された起動用共振周波数を起動時の駆動周波数として前記駆動手段を起動し、前記走査ミラーの揺動を開始させる起動ステップと、前記起動ステップにおいて前記駆動手段が起動された場合に、前記走査ミラーの駆動周波数を前記起動用周波数から前記線形領域に向けて順次変化させる第一周波数変化ステップと、前記第一周波数変化ステップにおいて駆動周波数が順次変化している場合に、前記検出手段によって検出された振れ角が増加から減少へ変化することを契機として、前記第一周波数変化ステップにおいて変化していた方向とは逆の方向に駆動周波数を順次変化させる第二周波数変化ステップと、前記第二周波数変化ステップにおいて駆動周波数が順次変化している場合に、前記検出手段によって検出された振れ角が最大となる駆動周波数を前記走査ミラーの共振周波数として計測し、その後の駆動周波数とする共振周波数設定ステップとを備えている。
【0017】
第二の態様に係る共振周波数設定方法によると、光走査装置は、予め設定された起動用共振周波数を起動時の駆動周波数として、走査ミラーの駆動手段を起動する。次いで、走査ミラーの駆動周波数を線形領域に向けて一方向に順次変化させていき、振れ角の増減の変曲点に達したら、変化させていた方向と逆の方向に駆動周波数を順次変化させていく。その後、光走査装置は、駆動周波数を変化させている間に振れ角が最大となる駆動周波数を、走査ミラーの共振周波数として計測し、計測した共振周波数を駆動周波数とする。従って、光走査装置は、使用環境の変化による共振周波数の変動を考慮して広い範囲で共振周波数を探索する必要はない。さらに、光走査装置は、跳躍現象が生じる周波数をあらかじめ計測しておく必要がない。よって、光走査装置は、走査ミラーの共振周波数を短時間で容易に計測し、計測した共振周波数をその後の駆動周波数とすることができる。
【図面の簡単な説明】
【0018】
【図1】ヘッドマウントディスプレイ1の外観構成を示す図である。
【図2】ヘッドマウントディスプレイ1の電気的構成を示すブロック図である。
【図3】表示部10が画像光5を射出する過程を説明する説明図である。
【図4】垂直走査系20の斜視図である。
【図5】垂直走査ミラー21にメタルMEMSを用いた場合の駆動周波数と振れ角との関係を示すグラフである。
【図6】CPU111が実行する駆動処理のフローチャートである。
【図7】駆動処理中に実行される開始周波数算出処理のフローチャートである。
【図8】フラッシュメモリ54に記憶される変化量パラメータテーブルの説明図である。
【図9】フラッシュメモリ54に記憶される前回停止直前データの説明図である。
【図10】駆動周波数の上昇量および下降量と振れ角の増加量との関係を示す説明図である。
【図11】ROM112に記憶されている上昇量決定テーブルの説明図である。
【図12】ROM112に記憶されている下降量決定テーブルの説明図である。
【図13】駆動処理中に実行される駆動中処理のフローチャートである。
【発明を実施するための形態】
【0019】
以下、本発明の一実施の形態について、図面を参照して説明する。参照する図面は、本発明が採用し得る技術的特徴を説明するために用いられるものである。図面に記載されている装置の構成、各種処理のフローチャート等は、それのみに限定する趣旨ではなく、単なる説明例である。
【0020】
以下では、光走査装置の1つであるヘッドマウントディスプレイ1を例に挙げて説明を行う。ヘッドマウントディスプレイ1は、画像信号に応じて変調されたレーザ光を走査させて、画像光として射出し、ユーザの少なくとも一方の眼の網膜に画像を直接投影する網膜走査型ディスプレイである。しかし、本発明が適用できるのはヘッドマウントディスプレイ1に限られない。画像を表示するためのレーザ光を走査する光走査装置であれば、本発明は適用できる。例えば、走査したレーザ光を、投影対象となるスクリーン上に射出して投影するスクリーン走査型の画像表示装置にも、本発明は適用できる。
【0021】
図1を参照して、ヘッドマウントディスプレイ1の概略構成について説明する。ヘッドマウントディスプレイ1は、射出装置2と、接眼部3と、頭部装着部4とを少なくとも備える。射出装置2は、画像信号に応じて画像光5(図3参照)を接眼部3へ射出する。射出装置2に対する接眼部3の位置は固定されている。接眼部3は、ハーフミラー38(図3参照)を備えている。接眼部3は、ハーフミラー38によって、外界からの外光6を透過し、且つ、射出装置2から射出された画像光5をユーザの眼に向かって反射させる。つまり、接眼部3は、ユーザの側方から入射した画像光5と、外界から入射した外光6とを、共にユーザの眼に入射させる。その結果、ユーザは、実際の視界に加えて、射出装置2から射出された画像光に基づく画像を視認することができる。
【0022】
図2を参照して、ヘッドマウントディスプレイ1の電気的構成について説明する。ヘッドマウントディスプレイ1は、表示部10、入力部40、通信部43、制御部50、ビデオRAM53、フラッシュメモリ54、および電源部55を備える。
【0023】
表示部10は、ユーザに画像を視認させる部位である。表示部10は、駆動信号コントローラ11、レーザ群13、およびレーザドライバ群12を備える。駆動信号コントローラ11は、CPU111、ROM112、およびRAM113を備える。駆動信号コントローラ11では、ROM112に格納されたプログラムがCPU111によって読み出されることで、表示部10を駆動するための各種処理が行われる。具体的には、駆動信号コントローラ11は、制御部50から画像信号を入力し、入力した信号に応じて、レーザドライバ群12に駆動信号(輝度信号)を出力する。さらに、駆動信号コントローラ11は、後述する垂直走査ミラー21および水平走査ミラー26を揺動させるための条件(例えば、垂直走査ミラー21の駆動周波数および振れ角)を決定し、垂直走査駆動部23および水平走査駆動部28に駆動信号を出力する(詳細は後述する)。レーザ群13は、青色出力レーザ(Bレーザ)131、緑色出力レーザ(Gレーザ)132、および赤色出力レーザ(Rレーザ)133を含む。レーザ群13は、青色、緑色、および赤色のレーザ光を出力する。レーザドライバ群12は、駆動信号コントローラ11から受信した駆動信号に応じてレーザ群13を制御し、レーザ群13にレーザ光を出力させる。つまり、制御部50がヘッドマウントディスプレイ1の全体制御を司り、駆動信号コントローラ11は、制御部50から入力する画像信号に応じて画像表示の処理を制御する。
【0024】
表示部10は、垂直走査ミラー21、垂直走査駆動部23、水平走査ミラー26、および水平走査駆動部28を備える。垂直走査ミラー21は、揺動軸周りに揺動することで、レーザ群13から出力されたレーザ光を垂直方向(本実施の形態の主走査方向)に走査する。垂直走査駆動部23は、駆動信号コントローラ11から受信した駆動信号に応じて、垂直走査ミラー21を高速で共振揺動させる。水平走査ミラー26は、垂直走査ミラー21によって垂直方向に二次元走査されたレーザ光を、さらに水平方向(本実施の形態の副走査方向)に走査する。水平走査駆動部28は、駆動信号コントローラ11から受信した駆動信号に応じて、水平走査ミラー26を低速揺動させる。
【0025】
表示部10は、BD(ビームディテクト)センサ31、およびBD信号検出回路32を備える。BDセンサ31は、垂直走査ミラー21によって反射されたレーザ光(主走査方向に走査されたレーザ光)を検出する。つまり、BDセンサ31は、レーザ光の主走査方向における基準位置(基準タイミング)を検出するために設けられている。BD信号検出回路32は、レーザ光が所定の位置に到達したことがBDセンサ31によって検出された場合に、BD信号を駆動信号コントローラ11に出力する。駆動信号コントローラ11は、BD信号の入力結果に基づいて、垂直走査ミラー21の走査角の最大値である振れ角を検出する。さらに、駆動信号コントローラ11は、BD信号の入力結果に基づいて、レーザ群13からレーザ光を出力するタイミングを決定する。
【0026】
表示部10は、温度センサ33を備える。温度センサ33は、垂直走査ミラー21の周囲の温度を検出し、検出した温度を駆動信号コントローラ11に出力する。駆動信号コントローラ11は、垂直走査ミラー21の起動時の駆動周波数である起動用共振周波数を、温度センサ33から入力した温度に基づいて決定する。
【0027】
入力部40は、ユーザからの各種操作指示の入力を受け付ける部位である。入力部40は、操作ボタン群41および入力制御回路42を備える。入力制御回路42は、操作ボタン群41のボタンが操作されたことを検出する。入力制御回路42は、制御部50と電気的に接続されており、ボタン操作に関する情報を制御部50に出力する。
【0028】
通信部43は、画像情報等の送受信を行う部位である。通信部43は、通信モジュール44および通信制御回路45を備える。通信モジュール44は、外部機器との間の無線通信または有線通信によって、画像情報等の送受信を行う。通信制御回路45は、通信モジュール44の動作を制御する。通信制御回路45は、制御部50と電気的に接続されており、制御部50に画像情報を取得させる。
【0029】
制御部50は、ヘッドマウントディスプレイ1の全体の制御を司る。制御部50は、図示しないCPU、ROM、およびRAMを備える。制御部50では、ROMに格納されたプログラムがCPUによって読み出されることで、ヘッドマウントディスプレイ1の動作を制御するための各種処理が行われる。ビデオRAM53には、画像情報に含まれるイメージデータが展開される。フラッシュメモリ54は、ヘッドマウントディスプレイ1で使用される機能の各種設定値等を記憶する。
【0030】
電源部55は、電池56および充電制御回路57を備える。電池56は、ヘッドマウントディスプレイ1を駆動させるための電源となる充電式の電池である。充電制御回路57は、電池56からヘッドマウントディスプレイ1への電力供給の制御、および充電用アダプタ(図示せず)から電池56への充電の制御を行う。
【0031】
図3を参照して、表示部10が画像光5を射出する過程の概要について説明する。表示部10は、光源ユニット部18、コリメート光学系19、垂直走査系20、第一リレー光学系24、水平走査系25、および第二リレー光学系29を備える。
【0032】
光源ユニット部18は、駆動信号コントローラ11、レーザドライバ群12、レーザ群13、コリメート光学系14、ダイクロイックミラー群15、結合光学系16、およびBD信号検出回路32を備える。駆動信号コントローラ11は、例えば、制御部50によってビデオRAM53に展開されたイメージデータの画像信号を、表示すべき画像を構成する画素毎に読み出して、駆動信号である輝度信号35を生成すると共に、垂直駆動信号36、および水平駆動信号37を生成する。駆動信号コントローラ11は、生成した輝度信号35(B輝度信号351、G輝度信号352、およびR輝度信号353)をレーザドライバ群12(Bレーザドライバ121、Gレーザドライバ122、およびRレーザドライバ123)に出力する。さらに、垂直駆動信号36を垂直走査駆動部23に出力し、水平駆動信号37を水平走査駆動部28に出力する。ただし、駆動信号コントローラ11は、BD信号検出回路32からBD信号が入力されたタイミング(レーザ光が所定の位置に到達したタイミング)に基づいて、前記垂直駆動信号36および水平駆動信号37を制御すると共に、輝度信号35をレーザドライバ群12に出力するタイミングを決めている。
【0033】
レーザドライバ群12は、入力された輝度信号35に基づいて、強度変調されたレーザ光をレーザ群13に出力させる。レーザ群13が出力したレーザ光は、コリメート光学系14に入射する。コリメート光学系14の3つのコリメートレンズ141〜143は、レーザ群13が出力した3色(青色、緑色、赤色)のレーザ光のそれぞれを平行光にコリメートする。コリメート光学系14によってコリメートされたレーザ光は、ダイクロイックミラー群15に入射する。ダイクロイックミラー群15の3つのダイクロイックミラー151〜153は、コリメートされた3色のレーザ光を1つのレーザ光になるように合波する。合波されたレーザ光は、結合光学系16によって光ファイバ17に導かれる。
【0034】
光ファイバ17を伝達したレーザ光は、コリメート光学系19によって平行光にコリメートされて、垂直走査系20に入射する。本実施の形態の垂直走査系20は、表示すべき画像の1走査線ごとに、レーザ光を垂直方向(主走査方向)に走査する。垂直走査系20は、水平走査系25よりも高速に(すなわち、高周波数で)レーザ光を走査するように設計されている。垂直走査系20に入射したレーザ光は、垂直走査ミラー21の偏向面22に照射される。垂直走査駆動部23は、駆動信号コントローラ11から入力された垂直駆動信号36に従って、垂直走査ミラー21を共振揺動させる。その結果、偏向面22に照射されたレーザ光は、垂直方向に高速で走査される。前述したように、BDセンサ31は、垂直走査ミラー21によって垂直走査されたレーザ光を検出することで、レーザ光の主走査方向における基準位置(基準タイミング)を検出する。
【0035】
垂直走査されたレーザ光は、第一リレー光学系24を介して水平走査系25に入射する。本実施の形態の水平走査系25は、表示すべき画像の1フレーム毎に、レーザ光を最初の走査線から最後の走査線に向かう水平方向(副走査方向)に走査する。水平走査系25に入射したレーザ光は、水平走査ミラー26の偏向面27に照射される。水平走査駆動部28は、駆動信号コントローラ11から入力された水平駆動信号37に従って、水平走査ミラー26を揺動させる。その結果、偏向面27に照射されたレーザ光は、水平方向に走査される。
【0036】
垂直走査系20および水平走査系25によって二次元走査されたレーザ光のうち、画像を表示させるためのレーザ光である画像光5は、第二リレー光学系29を介してハーフミラー38に射出される。画像光5は、ハーフミラー38によって全反射されてユーザの瞳孔39に導かれる。その結果、ビデオRAM53(図2参照)に展開されたイメージデータに基づく画像が、ユーザの網膜上に形成される。ユーザは、二次元走査されて網膜上に投影されたレーザ光による画像を視認することができる。
【0037】
以上説明したように、ヘッドマウントディスプレイ1は、垂直走査ミラー21を高速で共振揺動させ、且つ水平走査ミラー26を垂直走査ミラー21よりも低速で揺動させることで、レーザ光を二次元走査させる。垂直走査ミラー21を効率よく共振揺動させるためには、垂直走査ミラー21を駆動させるための駆動周波数を、垂直走査ミラー21の共振周波数に近い値に設定する必要がある。垂直走査ミラー21を共振周波数に近い駆動周波数で駆動させて共振状態とすることで、駆動エネルギーが垂直走査ミラー21に対してロスなく出入りする。ここで、垂直走査ミラー21の共振周波数は、垂直走査ミラー21の温度、経時変化等の影響で変動する。従って、ヘッドマウントディスプレイ1は、その時点における垂直走査ミラー21の共振周波数を計測し、計測した共振周波数を駆動周波数に設定することが望ましい。
【0038】
図4を参照して、本実施の形態に係る垂直走査系20の種類について説明する。本実施の形態の垂直走査ミラー21は、所謂メタルMEMSである(例えば、特開2006−293116号公報参照)。図4に示すように、垂直走査系20は、基板63、垂直走査ミラー21、捻れ梁部64、および垂直走査駆動部23を備える。基板63は矩形板状であり、基板63の一端は支持部61に固定されている。本実施の形態では、基板63の材質としてSUSを用いることで、基板63を安価に製造している。しかし、インバー、コバール等の他の材質を用いてもよい。垂直走査ミラー21および捻れ梁部64は、基板63に中抜きを行うことで、基板63に一体形成されている。垂直走査ミラー21は、図4の左右方向に延びる揺動軸を中心として揺動する。2つの捻れ梁部64は、垂直走査ミラー21から左右に延び、基板63と垂直走査ミラー21とを接続する。
【0039】
垂直走査駆動部23は、基板63のうち、捻れ梁部64と垂直走査ミラー21と基板63とで形成される空間に対し垂直走査ミラー21と対峙する側の板面に配置されている。本実施の形態の垂直走査駆動部23は、電圧の印加によって振動する圧電膜である。しかし、圧電膜の代わりに、磁界の印加によって振動する磁歪体、永久磁石等を垂直走査駆動部23として用いてもよい。つまり、電圧または磁界が印加されることで振動する振動体であれば、垂直走査駆動部23として用いることができる。垂直走査駆動部23は、電圧または磁界の印加によって振動することで、基板63に板波を誘起する。基板63に板波が誘起されると、捻れ梁部64および垂直走査ミラー21は捻れ振動を起こし、レーザ光を走査する。
【0040】
図5を参照して、本実施の形態の垂直走査ミラー21における駆動周波数と振れ角との間の特性について説明する。駆動周波数を変化させながら垂直走査ミラー21を駆動すると、跳躍現象および履歴現象が生じる。跳躍現象とは、駆動周波数を変化させた場合に、垂直走査ミラー21の振れ角が急激に増減する現象である。履歴現象とは、駆動周波数を徐々に上昇させる場合と徐々に下降させる場合とで、跳躍現象が生じる周波数である跳躍周波数に差が生じる現象である。図5のグラフにおいて、黒色の線は、駆動周波数を徐々に下降させた場合(ダウンスイープ時)の垂直走査ミラー21の駆動周波数と振れ角との関係を示す。白色の線は、駆動周波数を徐々に上昇させた場合(アップスイープ時)の垂直走査ミラー21の駆動周波数と振れ角との関係を示す。
【0041】
図5に示すように、メタルMEMSである垂直走査ミラー21を用いた場合、ダウンスイープ時には、駆動周波数がA(跳躍周波数A)に達した際に、振れ角は急激に減少する。一方で、アップスイープ時には、駆動周波数がB(跳躍周波数B)に達した際に、振れ角は急激に増加する。このように、ダウンスイープ時の跳躍周波数Aは、アップスイープ時の跳躍周波数Bよりも低くなる。跳躍周波数Aと跳躍周波数Bの間の領域では、振れ角の増減の割合は一定ではなく、振れ角は非線形に変化する。従って、跳躍周波数Aと跳躍周波数Bの間の領域を非線形領域と呼ぶ。一方、駆動周波数が跳躍周波数Bよりも大きい領域では、振れ角の増減の割合は略一定となり、振れ角はほぼ線形に変化する。従って、駆動周波数が跳躍周波数Bよりも大きい領域を、線形領域と呼ぶ。
【0042】
メタルMEMSである垂直走査ミラー21を用いた場合、共振周波数は、駆動周波数を徐々に下降させながら振れ角を計測し、振れ角が最大となる駆動周波数を検出することで計測される。共振周波数は、ダウンスイープ時の跳躍周波数Aと、アップスイープ時の跳躍周波数Bとの間の非線形領域内に存在する。従って、跳躍周波数Bからダウンスイープすることで共振周波数を計測すればよい。しかし、前述したように、共振周波数は、温度、経時変化等の影響で変動する。共振周波数を計測する従来の手法では、まず跳躍周波数Bが計測される。次いで、使用環境の変化等による共振周波数の変動が考慮されて、跳躍周波数Bよりも高い周波数が、起動時の駆動周波数(計測開始周波数)に設定される。計測開始周波数から徐々に駆動周波数が下げられることで、振れ角が最大となる駆動周波数が共振周波数として計測される。従って、従来の手法では、跳躍周波数Bを計測する処理の負荷がかかり、且つ、共振周波数の変動を考慮して幅広い駆動周波数の範囲を探索する必要があった。本実施の形態のヘッドマウントディスプレイ1は、駆動時に跳躍周波数Bを計測することなく、且つ短時間で共振周波数を計測し、最適な駆動周波数を設定することができる。上記の処理の詳細について、以下説明する。
【0043】
図6から図13を参照して、駆動信号コントローラ11のCPU111が実行する駆動処理について説明する。以下では、レーザ群13等の複数のデバイスの駆動を制御するためにCPU111が実行する処理のうち、垂直走査ミラー21の駆動を制御する処理について説明する。駆動信号コントローラ11のCPU111は、画像の表示を開始させる指示を制御部50から入力すると、ROM112に記憶されているプログラムに従って、図5に示す駆動処理を開始する。
【0044】
図6に示すように、駆動処理が開始されると、垂直走査ミラー21の揺動を開始させるための処理(S1,S2)が行われる。まず、開始周波数算出処理が行われる(S1)。開始周波数算出処理では、垂直走査ミラー21の固有の共振周波数が、起動用共振周波数(計測開始周波数)として算出される。
【0045】
図7を参照して、開始周波数算出処理について説明する。開始周波数算出処理が開始されると、フラッシュメモリ54に記憶されている変化量パラメータが読み込まれる(S31)。変化量パラメータとは、走査ミラーの温度に応じた共振周波数の変化量を示すパラメータである。図8に示すように、フラッシュメモリ54には、変化量パラメータテーブルが記憶されている。変化量パラメータテーブルでは、温度センサ33によって検出された垂直走査ミラー21の温度と、この温度が検出された時点の垂直走査ミラー21の共振周波数とが対応付けられて、複数記憶されている。変化量パラメータテーブル内のパラメータを用いることで、垂直走査ミラー21の温度変化に対する共振周波数の変化割合を算出することができる。変化量パラメータテーブルの各値を記憶する処理については、図13を参照して後述する。
【0046】
次いで、フラッシュメモリ54に記憶されている前回停止直前データが読み込まれる(S32)。図9に示すように、前回停止直前データとは、垂直走査ミラー21の共振揺動が前回停止された直前の、垂直走査ミラー21の温度(停止直前温度T)および共振周波数(停止直前共振周波数F)のデータである。つまり、垂直走査ミラー21の駆動中に前回計測された温度および共振周波数が、前回停止直前データとして記憶されている。次いで、その時点で温度センサ33によって計測されている垂直走査ミラー21の現在温度Eが取得される(S33)。
【0047】
CPU111は、S31〜S33で取得した値から計測開始周波数を算出する(S34)。まず、変化量パラメータテーブル内のパラメータから、温度変化に対する共振周波数の変化割合Zが算出される。変化割合Zは、変化量パラメータテーブルにおいて前回の停止直前温度T(図8参照)の値に対応付けられている共振周波数の値から、垂直走査ミラー21の現在温度Eの値に対応付けられている共振周波数の値を引き、この値を(T−E)で割ることで算出される。次いで、以下の(式1)によって計測開始周波数が算出される。
計測開始周波数=停止直前共振周波数F+(停止直前温度T−現在温度E)×変化割合Z・・・(式1)
【0048】
つまり、CPU111は、過去に計測された垂直走査ミラー21の温度と共振周波数とを用いて、温度変化に対する共振周波数の変化割合Zを算出する。その結果、垂直走査ミラー21の共振周波数が経時変化等の影響を受けて変化した場合でも、経時変化等の影響を含めた適切な変化割合Zを算出することができる。CPU111は、算出した変化割合Zと、前回の共振揺動停止時の値(停止直前温度Tおよび停止直前共振周波数F)と、現在温度Eとを用いることで、温度変化および経時変化等の影響を考慮した適切な計測開始周波数を算出することができる。処理は駆動処理(図6参照)へ戻る。
【0049】
図6の説明に戻る。CPU111は、算出した計測開始周波数を起動時の駆動周波数に設定し、垂直走査ミラー21を起動する(S2)。算出した計測開始周波数は、垂直走査ミラー21の固有の共振周波数である。次いで、共振周波数の計測を行う(S3〜S21)。まず、非線形領域より上側(周波数の高い側)に現れる跳躍周波数Bよりも大きい線形領域に向けて、垂直走査ミラー21の駆動周波数をX上昇させる(S3)。上昇量Xの値は、起動直後であればあらかじめ定められた所定の値が用いられ、その後は後述するS7の処理で決定される。
【0050】
CPU111は、垂直走査ミラー21の走査角の最大値である振れ角を検出する(S4)。振れ角を検出する手法には、複数のフォトダイオードを走査方向に並べて配置することで検出する手法、垂直走査ミラー21を駆動する部材の変位を圧電素子等で検出する手法、BD信号の入力結果に基づいて検出する手法等、種々の手法があるが、いずれの手法を用いてもよい。前述したように、本実施の形態のヘッドマウントディスプレイ1は、BD信号を利用して振れ角を検出する。BD信号を利用して振れ角を検出する手法は公知である(例えば、特開2006−101306号参照)。BD信号は、レーザ光の主走査方向における位置が所定の位置に達した場合に出力される。垂直走査ミラー21は共振揺動しているため、CPU111は、レーザ光の位置が原点位置から所定の位置まで達するまでの時間を算出することで、垂直走査ミラー21の振れ角を検出することができる。
【0051】
CPU111は、振れ角が増加から減少に変化する点である変曲点Cを検出したか否かを判断する(S5)。メタルMEMSである垂直走査ミラー21を用いた場合、図10に示すように、垂直走査ミラー21の固有の共振周波数(起動用共振周波数)から駆動周波数を順次上昇させると、跳躍現象が生じた後に、振れ角は増加から減少に転じる。CPU111は、振れ角の増減の変化を検出することで、変曲点Cを検出することができる。
【0052】
変曲点Cが検出されなければ(S5:NO)、振れ角の増加割合が算出される(S6)。S6で算出される振れ角の増加割合は、駆動周波数の単位上昇量に対する振れ角の増加量である。振れ角の増加割合は、直前のS3の処理で駆動周波数を上昇させた結果増加した振れ角の増加量を、S3における駆動周波数の上昇量Xで割ることで算出される。
【0053】
図10に示すように、垂直走査ミラー21の固有の共振周波数から駆動周波数を順次上昇させると、変曲点Cの直前で跳躍現象が起こり、振れ角は急激に増加する。従って、図10に示すように、駆動周波数が変曲点Cの周波数に近づく程、振れ角の増加割合P1,P2,P3は徐々に増加する。つまり、振れ角の増加割合が大きい程、変曲点Cの周波数が近いことになる。よって、変曲点Cを正確に検出するためには、振れ角の増加割合が大きい程、駆動周波数の変化量である上昇量Xを小さくする必要がある。また、駆動周波数を変曲点Cの周波数に早急に効率よく近づけるためには、振れ角の増加割合が小さい程、駆動周波数の上昇量Xを大きくする必要がある。
【0054】
CPU111は、ROM112に記憶されている上昇量決定テーブル(図11参照)を参照することで、振れ角の増加割合に応じた駆動周波数の上昇量Xを決定する(S7)。図11に示すように、上昇量決定テーブルでは、振れ角の増加割合が大きくなる程、駆動周波数の上昇量Xが小さくなるように、振れ角の増加割合と上昇量Xとが対応付けられている。従って、CPU111は、上昇量決定テーブルを参照することで、効率よく正確に変曲点Cを検出するための上昇量Xを、容易に決定することができる。CPU111は、上昇量Xを決定すると、決定した上昇量Xだけ駆動周波数を再び上昇させて(S3)、変曲点Cを検出したか否かの判断を繰り返す(S4,S5)。
【0055】
CPU111は、変曲点Cを検出すると(S5:YES)、垂直走査ミラー21の駆動周波数をY下降させる(S11)。つまり、駆動周波数を変化させる方向を、上昇から下降に切り替える。下降量Yの値は、駆動周波数を上昇から下降に切り替えた直後であれば、あらかじめ定められた所定の値が用いられる。その後は、後述するS15の処理で下降量Yの値が決定される。CPU111は、駆動周波数を下降させた状態で、垂直走査ミラー21の振れ角を検出する(S12)。次いで、CPU111は、振れ角が最大となる駆動周波数を検出したか否かを判断する(S13)。図10に示すように、駆動周波数を変曲点Cの周波数から順次下降させると、跳躍現象が生じる前に、振れ角は増加から減少に転じる。増加から減少に転じる時点の振れ角が、最大の振れ角となる。CPU111は、振れ角の増減の変化を検出することで、振れ角が最大となる駆動周波数を検出することができる。振れ角が最大となる駆動周波数は、垂直走査ミラー21の共振周波数である。
【0056】
振れ角が最大となる駆動周波数が検出されなければ(S13:NO)、振れ角の増加割合が算出される(S14)。S14で算出される振れ角の増加割合は、駆動周波数の単位下降量に対する振れ角の増加量である。S14では、直前のS11で駆動周波数を下降させた結果増加した振れ角の増加量を、S11における駆動周波数の下降量Yで割ることで、増加割合が算出される。
【0057】
図10に示すように、変曲点Cの周波数から駆動周波数を順次下降させると、振れ角が最大となる直前の非線形領域内では、振れ角の増加割合Q1,Q2,Q3は徐々に減少する。つまり、振れ角の増加割合が小さい程、振れ角が最大となる駆動周波数(共振周波数)が近いことになる。よって、振れ角が最大となる駆動周波数を正確に検出するためには、振れ角の増加割合が小さい程、駆動周波数の下降量Yを小さくする必要がある。また、振れ角の増加割合が大きい程、駆動周波数の下降量Yを大きくすることで、振れ角が最大となる駆動周波数を効率よく早急に検出することができる。
【0058】
CPU111は、ROM112に記憶されている下降量決定テーブル(図12参照)を参照することで、振れ角の増加割合に応じた駆動周波数の下降量Yを決定する(S15)。図11に示すように、下降量決定テーブルでは、振れ角の増加割合が小さくなる程、駆動周波数の下降量Yが小さくなるように、振れ角の増加割合と下降量Yとが対応付けられている。従って、CPU111は、下降量決定テーブルを参照することで、振れ角が最大となる駆動周波数を効率よく正確に検出するための下降量Yを、容易に決定することができる。CPU111は、下降量Yを決定すると、決定した下降量Yだけ駆動周波数を再び下降させて(S11)、振れ角が最大となる駆動周波数の検出を繰り返す(S12,S13)。
【0059】
振れ角が最大となる駆動周波数が検出されると(S13:YES)、CPU111は、検出した駆動周波数を共振周波数として計測する(S21)。計測した共振周波数を、駆動中の垂直走査ミラー21の駆動周波数に設定する(S22)。次いで、CPU111は、垂直駆動信号36の振幅を制御し、垂直走査ミラー21の振れ角を調整する(S23)。具体的には、CPU111は、振れ角が所定値よりも小さければ、垂直駆動信号36の振幅を増加させて振れ角を増加させる。振れ角が所定値よりも大きい場合には、垂直駆動信号36の振幅を減少させて振れ角を減少させる。その後、駆動中処理が行われて(S24)、駆動処理は終了する。
【0060】
図13を参照して、駆動中処理について説明する。駆動中処理では、追従処理が開始される(S41)。追従処理とは、共振周波数の変化に応じて駆動周波数および駆動振幅を制御し、駆動周波数を共振周波数に追従させつつ、振れ角を最適値に調整する処理である。追従処理は、駆動が終了するまで継続して実行される。追従処理では、CPU111は、垂直走査ミラー21の共振揺動動作の位相の変化を監視することで、共振周波数および振れ角の変化を検出する。CPU111は、変化した共振周波数に駆動周波数を追従させると共に、駆動振幅を制御して振れ角を調整する。
【0061】
次いで、一定時間が経過したか否かが判断される(S42)。S42で判断される一定時間は、変化量パラメータテーブルを一定周期で更新するために計測されている。一定時間が経過していなければ(S42:NO)、ユーザによる駆動停止指示が入力部40(図2参照)に入力されたか否かが判断される(S43)。停止指示が入力されていなければ(S43:NO)、S42およびS43の判断が繰り返される。
【0062】
一定時間が経過すると(S42:YES)、追従処理において検出されている現在の共振周波数と、温度センサ33によって検出されている現在の温度とが取得される(S45)。取得された共振周波数と温度とが対応付けられて、フラッシュメモリ54の変化量パラメータテーブル(図8参照)に記憶され、変化量パラメータテーブルが更新される(S46)。CPU111は、変化量パラメータテーブルに記憶させてから所定時間経過したデータを削除する。従って、変化量パラメータテーブル内のパラメータは、経時変化等の影響も含む適切なパラメータとなる。処理はS42の判断へ戻る。
【0063】
ユーザによる駆動停止指示が入力されると(S43:YES)、S45の処理と同様に、追従処理において検出されている現在の共振周波数と、温度センサ33によって検出されている現在の温度とが取得される(S48)。取得された共振周波数および温度が、前回停止直前データ(図9参照)としてフラッシュメモリ54に記憶される。垂直走査ミラー21の駆動が停止されて、処理は図6に示す駆動処理へ戻り、駆動処理は終了する。
【0064】
以上説明したように、本実施の形態のヘッドマウントディスプレイ1は、垂直走査ミラー21の固有の共振周波数を起動時の駆動周波数として、垂直走査駆動部23による垂直走査ミラー21の揺動動作を起動する。次いで、垂直走査ミラー21の駆動周波数を線形領域へ向けて順次変化させていき、振れ角の増減の変曲点Cに達したら、駆動周波数の増減の方向を切り替える。その後、ヘッドマウントディスプレイ1は、駆動周波数を変化させている間に振れ角が最大となる駆動周波数を、垂直走査ミラー21の共振周波数として計測し、計測した共振周波数を駆動周波数に設定して垂直走査ミラー21を駆動する。従って、ヘッドマウントディスプレイ1は、使用環境の変化による共振周波数の変動を考慮して広い範囲で共振周波数を探索する必要はない。さらに、ヘッドマウントディスプレイ1は、駆動周波数を順次変化(上記実施の形態では「上昇」)させた場合の跳躍周波数Bをあらかじめ計測しておく必要がない。よって、ヘッドマウントディスプレイ1は、垂直走査ミラー21の共振周波数を短時間で容易に計測し、計測した共振周波数をその後の駆動周波数とすることができる。
【0065】
上記実施の形態で用いられている垂直走査ミラー21はメタルMEMSである。メタルMEMSを用いると、駆動周波数を徐々に下降させる場合の跳躍周波数Aは、駆動周波数を徐々に上昇させる場合の跳躍周波数Bよりも低くなる。共振周波数は、駆動周波数を徐々に下降させた場合における跳躍周波数Aと跳躍周波数Bの間に存在する。従って、ヘッドマウントディスプレイ1は、駆動周波数を増加させた後に減少させることによって、垂直走査ミラー21の特性に応じた適切な方法で共振周波数を計測することができる。
【0066】
ヘッドマウントディスプレイ1は、垂直走査ミラー21の温度と、温度に応じた共振周波数の変化量を示すパラメータと、前回停止直前データ(図8参照)とを用いて、起動用共振周波数を算出する。従って、ヘッドマウントディスプレイ1は、温度変化および経時変化の影響を受けて共振周波数が変化した場合でも、最適な駆動周波数から計測処理を開始することができる。共振周波数の計測に失敗する可能性も低い。
【0067】
ヘッドマウントディスプレイ1は、駆動周波数を順次下降させて共振周波数を計測する場合、振れ角の増加割合が小さい程、駆動周波数の下降量Yを小さくする。その結果、共振周波数をより正確に素早く計測し、最適な駆動周波数を設定することができる。また、ヘッドマウントディスプレイ1は、駆動周波数を順次上昇させて変曲点Cを検出する場合、振れ角の増加割合が大きい程、駆動周波数の上昇量Xを小さくする。その結果、変曲点Cをより正確に素早く計測することができる。
【0068】
ヘッドマウントディスプレイ1は、垂直走査ミラー21の共振周波数に応じて、最適な駆動周波数で垂直走査ミラー21を駆動しつつ、垂直走査ミラー21の振れ角を調整することができる。従って、ヘッドマウントディスプレイ1は、共振周波数に応じて的確に垂直走査ミラー21を駆動することができる。
【0069】
上記実施の形態において、垂直走査ミラー21が本発明の「走査ミラー」に相当する。垂直走査駆動部23が本発明の「駆動手段」に相当する。駆動信号コントローラ11のCPU111が、本発明の「駆動制御手段」として機能する。図6のS4,S12等で、BDセンサ31が出力するBD信号に基づいて垂直走査ミラー21の振れ角を検出するCPU111が、本発明の「検出手段」として機能する。図6のS2で垂直走査ミラー21の揺動動作を起動するCPU111が「起動手段」として機能する。図6のS3で駆動周波数を順次変化させるCPU111が「第一周波数変化手段」として機能する。図6のS11で駆動周波数を順次変化させるCPU111が「第二周波数変化手段」として機能する。図6のS13,S21,S22で共振周波数を計測して駆動周波数を設定するCPU111が「共振周波数設定手段」として機能する。
【0070】
図7のS33で垂直走査ミラー21の温度を取得するCPU111が「温度取得手段」として機能する。図7のS34で、起動時の駆動周波数である計測開始周波数を算出するCPU111が、「算出手段」として機能する。図6のS23で垂直走査ミラー21の振れ角を調整するCPU111が「振幅調整手段」として機能する。
【0071】
図6のS2で垂直走査ミラー21の揺動動作を起動する処理が「起動ステップ」に相当する。図6のS3で駆動周波数を順次変化させる処理が「第一周波数変化ステップ」に相当する。図6のS11で駆動周波数を順次変化させる処理が「第二周波数変化ステップ」に相当する。図6のS13,S21,S22で共振周波数を計測して駆動周波数を設定する処理が「共振周波数設定ステップ」に相当する。
【0072】
本発明は上記実施の形態に限定されることはなく、様々な変形が可能であることは言うまでもない。まず、メタルMEMS以外の走査ミラーを用いた場合、駆動周波数と振れ角との間の特性は、図5のグラフで例示した特性とは異なる場合がある。例えば、メタルMEMSの代わりに所謂シリコンMEMSを垂直走査ミラー21として使用すると、駆動周波数と振れ角との間の特性は、図5のグラフにおける駆動周波数の正負の方向を反転させた形状となる。
【0073】
シリコンMEMSの構造については、例えば特開2003−57586に例示されている。シリコンMEMSは、走査ミラーを基体に対し揺動可能に支持する捻りバネ部を有し、その捻りバネ部の少なくとも一部に設けられた振動体を振動させることで捻りバネ部を振動させ、その結果、走査ミラーを揺動させて光を走査する。より詳細には、シリコンMEMSは、基体、振動体、第一の捻りバネ部、および1対の第二の捻りバネ部で構成される。第二の捻りバネ部は、基体に支持されており、且つ、該基体に跨ぐように設けられた振動体によって振動する。第二の捻りバネ部は第一の捻りバネ部に連結しており、該第一の捻りバネ部に振動を伝える。第一の捻りバネ部では、第二の捻りバネ部から伝わった振動によって捻れ変位が発生し、第一の捻りバネ部に連結支持される走査ミラーが揺動する。振動体は、シリコンによって形成することが一般的である。
【0074】
シリコンMEMSを用いた場合、駆動周波数と振れ角との関係を示すグラフは、図5に例示したグラフの左右が反転したような形状となる。この場合でも、図6から図13を参照して説明した各種処理において上昇と下降とを入れ替えるだけで、上記実施の形態と同様に共振周波数を計測することができる。例えば、シリコンMEMSを用いた場合、図6のS3では駆動周波数を順次下降させればよい。S7では、増加割合が大きくなる程、駆動周波数の1回の下降量が小さくなるように、下降量を決定すればよい。S11では駆動周波数を順次上昇させればよい。S15では、増加割合が小さくなる程、駆動周波数の1回の上昇量が小さくなるように、上昇量を決定すればよい。つまり、アップスイープおよびダウンスイープのいずれを先に実行するかは、使用する走査ミラーの種類に応じて適宜決定すればよい。
【0075】
上記実施の形態は他の変更も可能である。例えば、上記実施の形態では、網膜走査型のヘッドマウントディスプレイ1を例示した。しかし、レーザ光を走査ミラーの共振揺動により主走査方向に走査させて画像を表示する画像表示装置であれば、本発明を適用できる。また、図6等に示した駆動処理を、画像表示装置に接続されたPC等の外部機器が行い、外部機器が画像表示装置の動作を制御してもよい。変化量パラメータテーブル(図8参照)、前回停止直前データ(図9参照)等を記憶する記憶装置は、フラッシュメモリ54以外の記憶装置に変更できることは言うまでもない。主走査方向を水平方向、副走査方向を垂直方向としてもよい。
【0076】
図7のS34に示す計測開始周波数の決定方法は変更できる。例えば、ヘッドマウントディスプレイ1は、図8に示す変化量パラメータテーブルにおいて、垂直走査ミラー21の現在の温度に対応付けられている共振周波数を取得し、計測開始周波数として決定してもよい。図8に示す変化量パラメータテーブルを更新せずに、パラメータを固定値としてもよい。
【0077】
上記実施の形態のヘッドマウントディスプレイ1は、振れ角の増加割合に応じて、駆動周波数の上昇量Xおよび下降量Yを決定する。しかし、駆動周波数の上昇量Xおよび下降量Yの決定方法は変更できる。例えば、一定の計測精度の低下を許容できる場合には、上昇量Xおよび下降量Yの少なくとも一方を固定値としてもよい。
【符号の説明】
【0078】
1 ヘッドマウントディスプレイ
11 駆動信号コントローラ
21 垂直走査ミラー
23 垂直走査駆動部
31 BDセンサ
33 温度センサ
36 垂直駆動信号
54 フラッシュメモリ
111 CPU
【特許請求の範囲】
【請求項1】
揺動軸回りに揺動することでレーザ光を走査する走査ミラーと、前記走査ミラーを揺動させる駆動手段と、前記駆動手段に駆動信号を供給して前記駆動手段を制御する駆動制御手段と、前記走査ミラーの振れ角を検出する検出手段とを備え、
前記走査ミラーの駆動周波数を変化させた場合に、
振れ角が線形的に変化する駆動周波数の領域である線形領域と、
前記走査ミラーの共振周波数を含み、且つ振れ角が非線形的に変化する駆動周波数の領域である非線形領域と
が現れる光走査装置であって、
前記駆動制御手段は、
起動時点において予め設定された起動用共振周波数を起動時の駆動周波数として前記駆動手段を起動し、前記走査ミラーの揺動を開始させる起動手段と、
前記起動手段によって前記駆動手段が起動された場合に、前記走査ミラーの駆動周波数を前記起動用周波数から前記線形領域に向けて一方向に順次変化させる第一周波数変化手段と、
前記第一周波数変化手段が駆動周波数を順次変化させている場合に、前記検出手段によって検出された振れ角が増加から減少へ変化することを契機として、前記第一周波数変化手段によって変化していた方向とは逆の方向に駆動周波数を順次変化させる第二周波数変化手段と、
前記第二周波数変化手段が駆動周波数を順次変化させている場合に、前記検出手段によって検出された振れ角が最大となる駆動周波数を前記走査ミラーの共振周波数として計測し、その後の駆動周波数とする共振周波数設定手段と
を備えたことを特徴とする光走査装置。
【請求項2】
前記走査ミラーを支持する捻れ梁部と、
前記捻れ梁部を支持する基板とをさらに備え、
前記駆動手段は、前記基板に設けられ、電圧または磁界の印加によって振動することで前記基板に板波を誘起して前記ミラー部を揺動させる振動体であって、
前記第一周波数変化手段は駆動周波数を順次増加させ、
前記第二周波数変化手段は駆動周波数を順次減少させることを特徴とする請求項1に記載の光走査装置。
【請求項3】
前記駆動制御手段は、
前記走査ミラーの温度を取得する温度取得手段と、
前記走査ミラーの温度に応じた共振周波数の変化量を示すパラメータと、前記温度取得手段によって取得された前記走査ミラーの温度と、前記計測手段によって前回計測された共振周波数とを用いて、前記起動用共振周波数を算出して設定する算出手段とをさらに備え、
前記起動手段は、前記算出手段によって設定された前記起動用共振周波数で前記駆動手段を起動することを特徴とする請求項1または2に記載の光走査装置。
【請求項4】
前記第二周波数変化手段は、駆動周波数を変化させることで増加する前記走査ミラーの振れ角の増加割合が小さい程、駆動周波数の1回の変化量を小さくすることを特徴とする請求項1から3のいずれかに記載の光走査装置。
【請求項5】
前記第一周波数変化手段は、周波数を変化させることで増加する前記走査ミラーの振れ角の増加割合が大きい程、駆動周波数の1回の変化量を小さくすることを特徴とする請求項1から4のいずれかに記載の光走査装置。
【請求項6】
前記駆動制御手段は、
前記共振周波数設定手段によって共振周波数が駆動周波数に設定された場合に、前記駆動信号の振幅を制御して前記走査ミラーの振れ角を所定条件に応じて調整する振幅調整手段をさらに備えたことを特徴とする請求項1から5のいずれかに記載の光走査装置。
【請求項7】
揺動軸回りに揺動することでレーザ光を走査する走査ミラーと、前記走査ミラーを揺動させる駆動手段と、前記駆動手段に駆動信号を供給して前記駆動手段を制御する駆動制御手段と、前記走査ミラーの振れ角を検出する検出手段とを備え、
前記走査ミラーの駆動周波数を変化させた場合に、
振れ角が線形的に変化する駆動周波数の領域である線形領域と、
前記走査ミラーの共振周波数を含み、且つ振れ角が非線形的に変化する駆動周波数の領域である非線形領域と
が現れる光走査装置の前記駆動制御手段によって実行される共振周波数設定方法であって、
起動時点において予め設定された起動用共振周波数を起動時の駆動周波数として前記駆動手段を起動し、前記走査ミラーの揺動を開始させる起動ステップと、
前記起動ステップにおいて前記駆動手段が起動された場合に、前記走査ミラーの駆動周波数を前記起動用周波数から前記線形領域に向けて一方向に順次変化させる第一周波数変化ステップと、
前記第一周波数変化ステップにおいて駆動周波数が順次変化している場合に、前記検出手段によって検出された振れ角が増加から減少へ変化することを契機として、前記第一周波数変化ステップにおいて変化していた方向とは逆の方向に駆動周波数を順次変化させる第二周波数変化ステップと、
前記第二周波数変化ステップにおいて駆動周波数が順次変化している場合に、前記検出手段によって検出された振れ角が最大となる駆動周波数を前記走査ミラーの共振周波数として計測し、その後の駆動周波数とする共振周波数設定ステップと
を備えたことを特徴とする共振周波数設定方法。
【請求項1】
揺動軸回りに揺動することでレーザ光を走査する走査ミラーと、前記走査ミラーを揺動させる駆動手段と、前記駆動手段に駆動信号を供給して前記駆動手段を制御する駆動制御手段と、前記走査ミラーの振れ角を検出する検出手段とを備え、
前記走査ミラーの駆動周波数を変化させた場合に、
振れ角が線形的に変化する駆動周波数の領域である線形領域と、
前記走査ミラーの共振周波数を含み、且つ振れ角が非線形的に変化する駆動周波数の領域である非線形領域と
が現れる光走査装置であって、
前記駆動制御手段は、
起動時点において予め設定された起動用共振周波数を起動時の駆動周波数として前記駆動手段を起動し、前記走査ミラーの揺動を開始させる起動手段と、
前記起動手段によって前記駆動手段が起動された場合に、前記走査ミラーの駆動周波数を前記起動用周波数から前記線形領域に向けて一方向に順次変化させる第一周波数変化手段と、
前記第一周波数変化手段が駆動周波数を順次変化させている場合に、前記検出手段によって検出された振れ角が増加から減少へ変化することを契機として、前記第一周波数変化手段によって変化していた方向とは逆の方向に駆動周波数を順次変化させる第二周波数変化手段と、
前記第二周波数変化手段が駆動周波数を順次変化させている場合に、前記検出手段によって検出された振れ角が最大となる駆動周波数を前記走査ミラーの共振周波数として計測し、その後の駆動周波数とする共振周波数設定手段と
を備えたことを特徴とする光走査装置。
【請求項2】
前記走査ミラーを支持する捻れ梁部と、
前記捻れ梁部を支持する基板とをさらに備え、
前記駆動手段は、前記基板に設けられ、電圧または磁界の印加によって振動することで前記基板に板波を誘起して前記ミラー部を揺動させる振動体であって、
前記第一周波数変化手段は駆動周波数を順次増加させ、
前記第二周波数変化手段は駆動周波数を順次減少させることを特徴とする請求項1に記載の光走査装置。
【請求項3】
前記駆動制御手段は、
前記走査ミラーの温度を取得する温度取得手段と、
前記走査ミラーの温度に応じた共振周波数の変化量を示すパラメータと、前記温度取得手段によって取得された前記走査ミラーの温度と、前記計測手段によって前回計測された共振周波数とを用いて、前記起動用共振周波数を算出して設定する算出手段とをさらに備え、
前記起動手段は、前記算出手段によって設定された前記起動用共振周波数で前記駆動手段を起動することを特徴とする請求項1または2に記載の光走査装置。
【請求項4】
前記第二周波数変化手段は、駆動周波数を変化させることで増加する前記走査ミラーの振れ角の増加割合が小さい程、駆動周波数の1回の変化量を小さくすることを特徴とする請求項1から3のいずれかに記載の光走査装置。
【請求項5】
前記第一周波数変化手段は、周波数を変化させることで増加する前記走査ミラーの振れ角の増加割合が大きい程、駆動周波数の1回の変化量を小さくすることを特徴とする請求項1から4のいずれかに記載の光走査装置。
【請求項6】
前記駆動制御手段は、
前記共振周波数設定手段によって共振周波数が駆動周波数に設定された場合に、前記駆動信号の振幅を制御して前記走査ミラーの振れ角を所定条件に応じて調整する振幅調整手段をさらに備えたことを特徴とする請求項1から5のいずれかに記載の光走査装置。
【請求項7】
揺動軸回りに揺動することでレーザ光を走査する走査ミラーと、前記走査ミラーを揺動させる駆動手段と、前記駆動手段に駆動信号を供給して前記駆動手段を制御する駆動制御手段と、前記走査ミラーの振れ角を検出する検出手段とを備え、
前記走査ミラーの駆動周波数を変化させた場合に、
振れ角が線形的に変化する駆動周波数の領域である線形領域と、
前記走査ミラーの共振周波数を含み、且つ振れ角が非線形的に変化する駆動周波数の領域である非線形領域と
が現れる光走査装置の前記駆動制御手段によって実行される共振周波数設定方法であって、
起動時点において予め設定された起動用共振周波数を起動時の駆動周波数として前記駆動手段を起動し、前記走査ミラーの揺動を開始させる起動ステップと、
前記起動ステップにおいて前記駆動手段が起動された場合に、前記走査ミラーの駆動周波数を前記起動用周波数から前記線形領域に向けて一方向に順次変化させる第一周波数変化ステップと、
前記第一周波数変化ステップにおいて駆動周波数が順次変化している場合に、前記検出手段によって検出された振れ角が増加から減少へ変化することを契機として、前記第一周波数変化ステップにおいて変化していた方向とは逆の方向に駆動周波数を順次変化させる第二周波数変化ステップと、
前記第二周波数変化ステップにおいて駆動周波数が順次変化している場合に、前記検出手段によって検出された振れ角が最大となる駆動周波数を前記走査ミラーの共振周波数として計測し、その後の駆動周波数とする共振周波数設定ステップと
を備えたことを特徴とする共振周波数設定方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2012−118290(P2012−118290A)
【公開日】平成24年6月21日(2012.6.21)
【国際特許分類】
【出願番号】特願2010−267812(P2010−267812)
【出願日】平成22年11月30日(2010.11.30)
【出願人】(000005267)ブラザー工業株式会社 (13,856)
【Fターム(参考)】
【公開日】平成24年6月21日(2012.6.21)
【国際特許分類】
【出願日】平成22年11月30日(2010.11.30)
【出願人】(000005267)ブラザー工業株式会社 (13,856)
【Fターム(参考)】
[ Back to top ]