(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024123843
(43)【公開日】2024-09-12
(54)【発明の名称】ミラー制御方法、ミラー制御プログラム及びミラー制御装置
(51)【国際特許分類】
G02B 26/08 20060101AFI20240905BHJP
G01S 7/481 20060101ALN20240905BHJP
【FI】
G02B26/08 E
G01S7/481 A
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2023031586
(22)【出願日】2023-03-02
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100107515
【弁理士】
【氏名又は名称】廣田 浩一
(72)【発明者】
【氏名】江尻 革
【テーマコード(参考)】
2H141
5J084
【Fターム(参考)】
2H141MB23
2H141MZ11
2H141MZ12
2H141MZ13
2H141MZ15
2H141MZ16
5J084AA05
5J084AD01
5J084BA04
5J084BA50
5J084BB02
5J084BB04
5J084BB28
5J084CA65
(57)【要約】
【課題】ミラーの角度をフィードバック制御する際のゲイン調整を容易にする。
【解決手段】ミラー制御方法は、ミラーの角度を測定した測定信号を分解し、正弦波振幅測定値と余弦波振幅測定値とを生成し、正弦波振幅目標値と前記正弦波振幅測定値との差分に応じた値と、余弦波振幅目標値と前記余弦波振幅測定値との差分に応じた値とに基づいて、正弦波振幅指令値と、余弦波振幅指令値とを算出し、前記正弦波振幅指令値と、前記余弦波振幅指令値とに基づき、前記ミラーの角度を制御する駆動信号の駆動波形を生成する、処理をコンピュータが実行する。
【選択図】
図10
【特許請求の範囲】
【請求項1】
ミラーの角度を測定した測定信号を分解し、正弦波振幅測定値と余弦波振幅測定値とを生成し、
正弦波振幅目標値と前記正弦波振幅測定値との差分に応じた値と、余弦波振幅目標値と前記余弦波振幅測定値との差分に応じた値とに基づいて、正弦波振幅指令値と、余弦波振幅指令値とを算出し、
前記正弦波振幅指令値と、前記余弦波振幅指令値とに基づき、前記ミラーの角度を制御する駆動信号の駆動波形を生成する、
処理をコンピュータが実行するミラー制御方法。
【請求項2】
前記ミラーの角度を制御する際の目標信号を取得し、
取得した前記目標信号を分解することで、前記正弦波振幅目標値と前記正弦波振幅目標値を生成する、請求項1に記載のミラー制御方法。
【請求項3】
前記正弦波振幅目標値と前記正弦波振幅測定値との差分に応じた値は、
前記正弦波振幅指令値に対してゼロ点を消去するための処理を行い、
ゼロ点を消去するための処理が行われた消去後の前記正弦波振幅指令値を用いて、前記正弦波振幅目標値を減算し、
ゼロ点を消去するための処理が行われた消去後の前記正弦波振幅指令値を用いて、前記正弦波振幅測定値を減算し、
減算後の前記正弦波振幅目標値と、減算後の前記正弦波振幅測定値との差分を算出する、
ことで算出される、請求項1に記載のミラー制御方法。
【請求項4】
前記余弦波振幅目標値と前記余弦波振幅測定値との差分に応じた値は、
前記余弦波振幅指令値に対してゼロ点を消去するための処理を行い、
ゼロ点を消去するための処理が行われた消去後の前記余弦波振幅指令値を用いて、前記余弦波振幅目標値を減算し、
ゼロ点を消去するための処理が行われた消去後の前記余弦波振幅指令値を用いて、前記余弦波振幅測定値を減算し、
減算後の前記余弦波振幅目標値と、減算後の前記余弦波振幅測定値との差分を算出する、
ことで算出される、請求項1に記載のミラー制御方法。
【請求項5】
前記正弦波振幅指令値は、
前記正弦波振幅目標値と前記正弦波振幅測定値との差分に応じた値に対して第1のPID制御を行うことで算出された値と、
前記余弦波振幅目標値と前記余弦波振幅測定値との差分に応じた値に対して第3のPID制御を行うことで算出された値と、
を加算することで算出され、
前記余弦波振幅指令値は、
前記正弦波振幅目標値と前記正弦波振幅測定値との差分に応じた値に対して第2のPID制御を行うことで算出された値と、
前記余弦波振幅目標値と前記余弦波振幅測定値との差分に応じた値に対して第4のPID制御を行うことで算出された値と、
を加算することで算出される、請求項1に記載のミラー制御方法。
【請求項6】
前記正弦波振幅指令値は、
前記正弦波振幅目標値と前記正弦波振幅測定値との差分に応じた値に対して第1のPID制御を行うことで算出された値を対角化フィルタに入力することで算出され、
前記余弦波振幅指令値は
前記余弦波振幅目標値と前記余弦波振幅測定値との差分に応じた値に対して第2のPID制御を行うことで算出された値を対角化フィルタに入力することで算出される、請求項1に記載のミラー制御方法。
【請求項7】
前記正弦波振幅目標値は、
前記目標信号から検出した振幅を用いることで算出され、
前記余弦波振幅目標値は、
前記目標信号から検出した位相と、前記目標信号から検出した振幅を用いることで算出された前記正弦波振幅目標値とを用いることで算出される、請求項2に記載のミラー制御方法。
【請求項8】
前記正弦波振幅測定値は、
前記ミラーの角度を測定した測定信号から検出した振幅を用いることで算出され、
前記余弦波振幅測定値は、
前記ミラーの角度を測定した測定信号から検出した位相と、前記ミラーの角度を測定した測定信号から検出した振幅を用いることで算出された前記正弦波振幅測定値とを用いることで算出される、請求項1に記載のミラー制御方法。
【請求項9】
前記正弦波振幅目標値及び前記余弦波振幅目標値は、前記ミラーの角度を制御する際の目標信号であって、現在の時間における目標信号と、現在の時間より所定時間前の時間における目標信号とを用いることで算出され、
前記正弦波振幅測定値及び前記余弦波振幅測定値は、前記ミラーの角度を測定した測定信号であって、現在の時間における測定信号と、現在の時間より所定時間前の時間における測定信号とを用いることで算出される、請求項1に記載のミラー制御方法。
【請求項10】
前記正弦波振幅目標値及び前記余弦波振幅目標値、または、前記正弦波振幅目標値及び前記余弦波振幅目標値を算出するのに用いられる値を、メモリから読み出す、または、ネットワークを介して受信することで取得する、請求項1に記載のミラー制御方法。
【請求項11】
ミラーの角度を測定した測定信号を分解し、正弦波振幅測定値と余弦波振幅測定値とを生成し、
正弦波振幅目標値と前記正弦波振幅測定値との差分に応じた値と、余弦波振幅目標値と前記余弦波振幅測定値との差分に応じた値とに基づいて、正弦波振幅指令値と、余弦波振幅指令値とを生成し、
前記正弦波振幅指令値と、前記余弦波振幅指令値とに基づき、前記ミラーの角度を制御する駆動信号の駆動波形を生成する、
処理をコンピュータに実行させるためのミラー制御プログラム。
【請求項12】
ミラーの角度を測定した測定信号を分解し、正弦波振幅測定値と余弦波振幅測定値とを生成する測定値生成部と、
正弦波振幅目標値と前記正弦波振幅測定値との差分に応じた値と、余弦波振幅目標値と前記余弦波振幅測定値との差分に応じた値とに基づいて、正弦波振幅指令値と、余弦波振幅指令値とを生成する指令値生成部と、
前記正弦波振幅指令値と、前記余弦波振幅指令値とに基づき、前記ミラーの角度を制御する駆動信号の駆動波形を生成する駆動波形生成部と
を有するミラー制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ミラー制御方法、ミラー制御プログラム及びミラー制御装置に関する。
【背景技術】
【0002】
レーザ距離計測装置において、MEMS(Micro Electro Mechanical Systems)ミラーを制御するミラー制御装置は、レーザを水平方向及び垂直方向に走査させるために、ミラーの2軸周りの角度を制御する。
【0003】
その際、ミラー制御装置では、MEMSミラーの水平方向の駆動信号について、例えば、温度変化等の影響による振幅及び位相の変動を低減させるために、角度センサにより測定された測定信号をフィードバックすることにより、振幅及び位相を制御している。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、フィードバックされる測定信号に対して、試行錯誤によりゲイン調整を行ったのでは、最適なゲインを導き出すのに時間がかかる。また、ゲイン調整によって駆動信号の振幅と位相の両方が変化する制御系の場合、振幅と位相の両方を最適化させるのは容易ではない。
【0006】
一つの側面では、ミラーの角度をフィードバック制御する際のゲイン調整を容易にすることを目的とする。
【課題を解決するための手段】
【0007】
一態様によれば、ミラー制御方法は、
ミラーの角度を測定した測定信号を分解し、正弦波振幅測定値と余弦波振幅測定値とを生成し、
正弦波振幅目標値と前記正弦波振幅測定値との差分に応じた値と、余弦波振幅目標値と前記余弦波振幅測定値との差分に応じた値とに基づいて、正弦波振幅指令値と、余弦波振幅指令値とを算出し、
前記正弦波振幅指令値と、前記余弦波振幅指令値とに基づき、前記ミラーの角度を制御する駆動信号の駆動波形を生成する、処理をコンピュータが実行する。
【発明の効果】
【0008】
ミラーの角度をフィードバック制御する際のゲイン調整が容易になる。
【図面の簡単な説明】
【0009】
【
図1】レーザ距離計測装置の構成例を示す第1の図である。
【
図2】ミラー制御装置が生成する駆動波形の一例を示す図である。
【
図3】ミラー制御装置のハードウェア構成の一例を示す図である。
【
図4】ミラー制御装置の機能構成の一例を示す図である。
【
図5】比較例の水平駆動波形制御部の機能構成の一例を示す図である。
【
図6】MEMSミラーの特性を示すモデルの一例を示す図である。
【
図7】MEMSミラーの特性を示すモデルの入出力関係を説明するための図である。
【
図8】MEMSミラーの特性を示すモデルの伝達関数においてゼロ点を消去した場合の、消去後のモデルの伝達関数の一例を示す図である。
【
図9】ゼロ点消去後のモデルの伝達関数において干渉成分を除去した場合の、干渉成分除去後のモデルの伝達関数の一例を示す図である。
【
図10】水平駆動波形制御部の機能構成の一例を示す第1の図である。
【
図11】正弦/余弦振幅変換部及び駆動波形生成部の詳細を示す図である。
【
図12】正弦/余弦振幅フィードバック制御部の詳細を示す第1の図である。
【
図13】水平駆動波形制御部による制御処理の流れを示すフローチャートである。
【
図14】正弦/余弦振幅フィードバック制御部の詳細を示す第2の図である。
【
図15】水平駆動波形制御部の機能構成の一例を示す第2の図である。
【
図16】正弦/余弦振幅検出部の詳細を示す図である。
【
図17】レーザ距離計測装置の構成例を示す第2の図である。
【発明を実施するための形態】
【0010】
以下、各実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省略する。
【0011】
[第1の実施形態]
<レーザ距離計測装置の構成>
はじめに、第1の実施形態に係るミラー制御装置を備えるレーザ距離計測装置の構成について説明する。
図1は、レーザ距離計測装置の構成例を示す第1の図である。
図1に示すように、レーザ距離計測装置100は、レーザ駆動回路110、レーザダイオード111、ミラー制御装置120、MEMSミラー121、投光レンズ122、センサ123を有する。また、レーザ距離計測装置100は、距離計測回路130、受光レンズ131、光検出器132、センサ駆動制御回路140、演算回路150を有する。
【0012】
レーザ駆動回路110は、センサ駆動制御回路140よりレーザダイオード111の発光タイミングを示す発光タイミング信号を取得する。また、レーザ駆動回路110は、取得した発光タイミング信号に従ってレーザダイオード111を発光させるよう、発光信号を出力する。また、レーザ駆動回路110は、取得した発光タイミング信号を、距離計測回路130に通知する。
【0013】
レーザダイオード111は、発光タイミング信号に従ってレーザ駆動回路110が出力する発光信号により発光する。レーザダイオード111が発光することで出射されたレーザ光はMEMSミラー121に照射され、MEMSミラー121にて反射した後、投光レンズ122を介して、測定対象に投光される。
【0014】
ミラー制御装置120は、センサ駆動制御回路140より、MEMSミラー121の角度を制御する際の基準となる基準信号(目標信号の一例)を取得する。また、ミラー制御装置120は、MEMSミラー121の角度を測定するセンサ123より、MEMSミラー121の角度を示すMEMSミラー角度信号(測定信号の一例)を取得する。更に、ミラー制御装置120は、取得した基準信号とMEMSミラー角度信号とに基づいて、MEMSミラー121を2軸の駆動信号で駆動するための2軸の駆動波形(水平駆動波形、垂直駆動波形)を生成し、出力する。
【0015】
例えば、MEMSミラー121の水平方向の駆動には、水平駆動波形が正弦波形である駆動信号が用いられ、水平方向と直交する垂直方向の駆動には、垂直駆動波形が鋸波形である駆動信号が用いられる。
【0016】
センサ123は、MEMSミラー121の角度を検出し、MEMSミラー角度信号をミラー制御装置120に送信する。
【0017】
MEMSミラー121は、ミラー制御装置120から出力された2軸の駆動波形(水平駆動波形、垂直駆動波形)の駆動信号に従って駆動する。これにより、レーザダイオード111から出射されたレーザ光は、MEMSミラー121で反射されて、投光レンズ122を介して走査角度範囲を水平方向及び垂直方向に走査するラスタ走査を行う。なお、投光レンズ122には、例えば、角度拡大レンズを用いることができる。
【0018】
光検出器132は、測定対象からの反射光を、受光レンズ131を介して検出する。なお、受光レンズ131には、例えば、集光レンズを用いることができる。光検出器132は、例えば、検出した反射光を表す受光信号を距離計測回路130に供給する受光素子である。
【0019】
距離計測回路130は、レーザ光が出射されてから、測定対象で反射され、光検出器132で検出されるまでの往復時間(TOF:Time of Flight)であるΔTを計測する。なお、レーザ光が出射されたタイミングは、発光タイミング信号として、レーザ駆動回路110から距離計測回路130に通知される。これにより、距離計測回路130は、測定対象までの距離を光学的に計測し、計測した距離を示す距離データを演算回路150に供給する。光速をc(約30万km/s)で表すと、測定対象までの距離は、例えば、(c×ΔT)/2から求めることができる。
【0020】
演算回路150は、ミラー制御装置120からMEMSミラー角度データを取得し、距離計測回路130から距離データを取得する。また、演算回路150は、取得したMEMSミラー角度データと距離データとに基づいて距離画像及び3次元データを生成する。具体的には、演算回路150は、距離データから距離画像を生成し、距離画像とMEMSミラー角度データとから3次元データを生成する。距離画像は、ラスタ走査された順に、各測距点における距離データが配列された画像である。
【0021】
なお、演算回路150は、MEMSミラー角度データから、レーザ光の投光角度を示す投光角度データを生成し、距離画像を、距離データと投光角度データとを用いて変換することで、3次元データを生成する。
【0022】
<ミラー制御装置が生成する駆動波形の具体例>
次に、ミラー制御装置120が生成する2軸の駆動波形(水平駆動波形、垂直駆動波形)の具体例について説明する。
図2は、ミラー制御装置が生成する駆動波形の一例を示す図であり、(a)、(b)は、それぞれMEMSミラー121の水平方向及び垂直方向の駆動波形(各時間における駆動角度)を示している。
【0023】
図2(a)、(b)に示すように、MEMSミラー121の水平方向の駆動には、水平駆動波形が正弦波形である駆動信号が用いられ、MEMSミラー121の垂直方向の駆動には、垂直駆動波形が鋸波形である駆動信号が用いられる。なお、
図2(a)、(b)において、破線は、レーザダイオード111の発光区間であるレーザ発光区間を示している。
【0024】
<ミラー制御装置のハードウェア構成>
次に、ミラー制御装置120のハードウェア構成について説明する。
図3は、ミラー制御装置のハードウェア構成の一例を示す図である。
図3に示すように、ミラー制御装置120は、プロセッサ310、メモリ320、入出力デバイス330を有する。なお、ミラー制御装置120の各ハードウェアは、バス340を介して相互に接続されている。
【0025】
プロセッサ310は、CPU(Central Processing Unit)等の各種演算デバイスを有する。プロセッサ310は、各種プログラム(例えば、ミラー制御プログラム等)をメモリ320上に読み出して実行する。
【0026】
メモリ320は、ROM(Read Only Memory)、RAM(Random Access Memory)等の主記憶デバイスを有する。プロセッサ310とメモリ320とは、いわゆるコンピュータを形成し、プロセッサ310が、メモリ320上に読み出した各種プログラムを実行することで、当該コンピュータは各種機能を実現する。
【0027】
入出力デバイス330は、レーザ距離計測装置100内の他のデバイス(ミラー制御装置120以外のデバイス)との間で信号を入出力する。ここでいうミラー制御装置120以外のデバイスには、例えば、MEMSミラー121、センサ123、センサ駆動制御回路140、演算回路150等が含まれる。
【0028】
<ミラー制御装置の機能構成>
次に、ミラー制御装置120の機能構成について説明する。
図4は、ミラー制御装置の機能構成の一例を示す図である。
図4に示すように、ミラー制御装置120は、ミラー制御プログラムを実行することで、水平駆動波形制御部410、垂直駆動波形制御部420として機能する。
【0029】
水平駆動波形制御部410は、センサ123から取得するMEMSミラー角度信号と、センサ駆動制御回路140から取得する基準信号との誤差(詳細は後述)を計算する。また、水平駆動波形制御部410は、計算した誤差に基づいて、水平方向の駆動に用いる駆動信号の水平駆動波形として、正弦波形を生成する。なお、水平駆動波形制御部410により生成される正弦波形は、MEMSミラー121の機械的な共振周波数と等しい周波数の正弦波形(ノンリニアな共振駆動波形)である。これにより、水平駆動波形制御部410では、入力電圧に対して高い利得で(つまり、効率的に)MEMSミラー121を動作させることができる。
【0030】
また、水平駆動波形制御部410によれば、計算した誤差に基づいて水平駆動波形を生成するため、温度変化などによりMEMSミラー121の機械的な共振周波数が変化した場合でも、水平駆動波形の振幅及び位相の変動を低減させることができる。この結果、例えば、演算回路150にて生成される画面において、歪みを低減させることができる。
【0031】
垂直駆動波形制御部420は、センサ駆動制御回路140から取得する基準信号に基づいて、垂直方向の駆動に用いる駆動信号の垂直駆動波形として、鋸波形(リニアな非共振駆動波形)を生成する。
【0032】
<水平駆動波形制御部の詳細>
次に、ミラー制御装置120がミラー制御プログラムを実行することで機能する、水平駆動波形制御部410と垂直駆動波形制御部420のうち、水平駆動波形制御部410の詳細について説明する。なお、説明にあたっては、まず、比較例の水平駆動波形制御部を挙げ、当該比較例の水平駆動波形制御部の詳細を示す。続いて、上記水平駆動波形制御部410を構築する際の検討過程を示したうえで、検討結果を踏まえて構築した上記水平駆動波形制御部410の詳細を示す。
【0033】
(1)比較例の水平駆動波形制御部の詳細
はじめに、比較例の水平駆動波形制御部の詳細について説明する。
図5は、比較例の水平駆動波形制御部の機能構成の一例を示す図である。
図5に示すように、比較例の水平駆動波形制御部500は、振幅検出部511、521、位相検出部512、522、減算部531、532、PID制御部541、542、駆動波形生成部550を有する。
【0034】
振幅検出部511は、センサ駆動制御回路からの基準信号が入力されると、基準信号の振幅を検出する。振幅検出部511により検出された振幅は、減算部531に入力される。
【0035】
位相検出部512は、センサ駆動制御回路からの基準信号が入力されると、基準信号の位相を検出する。位相検出部512により検出された位相は、減算部532に入力される。
【0036】
振幅検出部521は、センサからのMEMSミラー角度信号が入力されると、MEMSミラー角度信号の振幅を検出する。振幅検出部521により検出された振幅は、減算部531に入力される。
【0037】
位相検出部522は、センサからのMEMSミラー角度信号が入力されると、MEMSミラー角度信号の位相を検出する。位相検出部522により検出された位相は、減算部532に入力される。
【0038】
減算部531は、振幅検出部511からの振幅を振幅検出部521からの振幅で減算することで、振幅誤差を算出する。減算部531により算出された振幅誤差は、PID制御部541に入力される。
【0039】
減算部532は、位相検出部512からの位相を位相検出部522からの位相で減算することで、位相誤差を算出する。減算部532により算出された位相誤差は、PID制御部542に入力される。
【0040】
PID制御部541は、減算部531からの振幅誤差に対してPID制御を行い、振幅指令値を出力する。PID制御部541より出力された振幅指令値は、駆動波形生成部550に入力される。
【0041】
PID制御部542は、減算部532からの位相誤差に対してPID制御を行い、位相指令値を出力する。PID制御部542より出力された位相指令値は、駆動波形生成部550に入力される。
【0042】
駆動波形生成部550は、PID制御部541からの振幅指令値とPID制御部542からの位相指令値とに基づき、水平駆動波形として正弦波形を生成し、MEMSミラーに出力する。
【0043】
(2)水平駆動波形制御部410を構築する際の検討過程の説明
続いて、上記水平駆動波形制御部410を構築する際の検討過程について説明する。上記比較例の水平駆動波形制御部500では、制御対象となるMEMSミラーの特性が解析されておらず、PID制御部541、542のゲイン調整が試行錯誤的に行われていた。このため、最適なゲインを導き出すのに時間がかかっていた。また、上記比較例の水平駆動波形制御部500の場合、PID制御部541、542のゲイン調整を行うと、駆動波形において振幅と位相の両方に影響が出るため、ゲイン調整により振幅と位相の両方を最適化させるのは容易ではなかった。
【0044】
これらのことを踏まえ、水平駆動波形制御部410を構築するにあたっては、制御対象となるMEMSミラー121の特性を理論的に解析し、特性に応じた水平駆動波形制御部410を構築した。
【0045】
また、水平駆動波形制御部410を構築するにあたっては、振幅に対して支配的な信号と位相に対して支配的な信号とにわけて(具体的には、正弦波と余弦波とに分解して)PID制御を行うようにした。以下、水平駆動波形制御部410を構築する際の検討過程について詳細に説明する。
【0046】
図6は、MEMSミラーの特性を示すモデルの一例を示す図である。
図6に示すように、MEMSミラー121を駆動する際の時間tにおける駆動信号の水平駆動波形をu(t)、水平駆動波形u(t)の駆動信号が入力されることで駆動したMEMSミラー121の時間tにおける角度をx(t)とする。この場合、MEMSミラー121の特性を示すモデルは、符号610のように表すことができる。なお、符号610に示すMEMSミラー121の特性を示すモデルの微分方程式において、a
1、a
0、b
0は、所定の係数である。
【0047】
ここで、水平駆動波形を正弦波と余弦波とに分解してそれぞれを制御できるようにするために、水平駆動波形を、正弦波と余弦波との組み合わせにより表現する。
【0048】
具体的には、水平駆動波形u(t)をsinω
γtとおいて符号610に示すMEMSミラー121の特性を示すモデルの微分方程式を解くと、MEMSミラー121の時間tにおける角度x
1(t)は、
図6の式1のように表すことができる。また、水平駆動波形u(t)をcosω
γtとおいて符号610に示すMEMSミラー121の特性を示すモデルの微分方程式を解くと、MEMSミラー121の時間tにおける角度x
2(t)は、
図6の式2のように表すことができる。
【0049】
ただし、式1、式2において、"de"、"ωγ"は、それぞれ、符号621、622に示す通りである。
【0050】
更に、式1及び式2は、近似することで、
図7の符号710、符号720のように表すことができる。なお、
図7は、MEMSミラーの特性を示すモデルの入出力関係を説明するための図である。
【0051】
ここで、符号610に示すMEMSミラー121の特性を示すモデルの微分方程式への入力u(t)を符号730のように整理する。また、符号610に示すMEMSミラー121の特性を示すモデルの微分方程式からの出力x1(t)、x2(t)をy(t)として、符号740のように整理する。
【0052】
なお、符号730においてus(t)は、入力u(t)のうち、正弦波の項の振幅を表し、uc(t)は、入力u(t)のうち、余弦波の項の振幅を表す。また、符号740においてys(t)は、出力y(t)のうち、正弦波の項の振幅を表し、yc(t)は、出力y(t)のうち、余弦波の項の振幅を表す。
【0053】
この場合、符号610に示すMEMSミラー121の特性を示すモデルの微分方程式の入出力関係は、
図7の符号750のように表現することができる。そして、符号750に示す式をラプラス変換すると、符号610に示すMEMSミラー121の特性を示すモデルの微分方程式の入出力関係は、式3により表すことができる。
【0054】
ここで、式3により入出力関係が表される、符号610に示すMEMSミラー121の特性を示すモデルの微分方程式の場合、ラプラス変換した伝達関数の分子にs(ゼロ点)が含まれる。このため、当該モデルの微分方程式の出力をフィードバックして制御しようとすると不安定な制御系になりやすい。
【0055】
そこで、水平駆動波形制御部410において、MEMSミラー121の水平方向の駆動を制御するにあたっては、ゼロ点モデルを用いてゼロ点を消去し、ゼロ点を消去した出力をフィードバック制御に用いることとする。
【0056】
図8は、MEMSミラーの特性を示すモデルの伝達関数においてゼロ点を消去した場合の、消去後のモデルの伝達関数の一例を示す図である。
図8に示すように、符号610に示すMEMSミラー121の特性を示すモデルの伝達関数をPとおくと、
図7の式3は符号810のように表現することができる。更に、ゼロ点モデルの伝達関数をQ、ゼロ点モデルの伝達関数Qを用いてゼロ点を消去した修正モデルの伝達関数をRとおくと、符号810は、符号820のように表現することができる。
【0057】
ここで、符号820のP及びQに、符号810を代入すると、符号830が導出されるため、修正モデル(ゼロ点消去後のモデル)の出力は、最終的に、式4のように整理することができる。
【0058】
なお、式4は、干渉成分がゼロではないため、式4に対しては、対角化フィルタをかけ合わせることで、干渉成分を除去してもよい。
図9は、ゼロ点消去後のモデルの伝達関数において干渉成分を除去した場合の、干渉成分除去後のモデルの伝達関数の一例を示す図である。
【0059】
図9に示すように、対角化フィルタTを符号910のようにおき、
図8の式4に対角化フィルタTをかけ合わせると、符号920が導出されるため、干渉成分除去後のモデルの伝達関数は、最終的に式5のように整理することができる。
【0060】
以上のことから、水平駆動波形制御部410を構築するにあたっては、
・正弦波と余弦波とに分解してPID制御を行うこと、
・その際、MEMSミラーの特性解析の結果を踏まえたゼロ点消去処理及び対角フィルタ処理を行うこと、
が、ゲイン調整を容易にするうえで有効であるといえる。
【0061】
(3)水平駆動波形制御部410の詳細
続いて、上記検討過程を踏まえて構築した水平駆動波形制御部410の詳細について説明する。
図10は、水平駆動波形制御部の機能構成の一例を示す第1の図である。
図10に示すように、水平駆動波形制御部410は、振幅検出部1011、1021、位相検出部1012、1022、正弦/余弦振幅変換部1031、1032、正弦/余弦振幅フィードバック制御部1040、駆動波形生成部1050を有する。なお、振幅検出部1021、位相検出部1022、正弦/余弦振幅変換部1032は、測定値生成部の一例である。
【0062】
振幅検出部1011は、センサ駆動制御回路140からの基準信号が入力されると、基準信号の振幅を検出する。振幅検出部1011により検出された振幅は、正弦/余弦振幅変換部1031に入力される。
【0063】
位相検出部1012は、センサ駆動制御回路140からの基準信号が入力されると、基準信号の位相を検出する。位相検出部1012により検出された位相は、正弦/余弦振幅変換部1031に入力される。
【0064】
振幅検出部1021は、センサ123からのMEMSミラー角度信号が入力されると、MEMSミラー角度信号の振幅を検出する。振幅検出部1021により検出された振幅は、正弦/余弦振幅変換部1032に入力される。
【0065】
位相検出部1022は、センサ123からのMEMSミラー角度信号が入力されると、MEMSミラー角度信号の位相を検出する。位相検出部1022により検出された位相は、正弦/余弦振幅変換部1032に入力される。
【0066】
正弦/余弦振幅変換部1031は、振幅検出部1011からの振幅と位相検出部1012からの位相とを三角関数の合成の定理を用いて正弦波振幅及び余弦波振幅に変換する。正弦/余弦振幅変換部1031により変換された正弦波振幅及び余弦波振幅は、正弦波振幅目標値及び余弦波振幅目標値として、正弦/余弦振幅フィードバック制御部1040に入力される。
【0067】
正弦/余弦振幅変換部1032は、振幅検出部1021からの振幅と位相検出部1022からの位相とを三角関数の合成の定理を用いて正弦波振幅及び余弦波振幅に変換する。正弦/余弦振幅変換部1032により変換された正弦波振幅及び余弦波振幅は、正弦波振幅測定値及び余弦波振幅測定値として、正弦/余弦振幅フィードバック制御部1040に入力される。
【0068】
正弦/余弦振幅フィードバック制御部1040は指令値生成部の一例であり、正弦/余弦振幅変換部1031からの正弦波振幅目標値及び余弦波振幅目標値と、正弦/余弦振幅変換部1032からの正弦波振幅測定値及び余弦波振幅測定値とを取得する。
【0069】
また、正弦/余弦振幅フィードバック制御部1040は、正弦波振幅目標値及び余弦波振幅目標値と、正弦波振幅測定値及び余弦波振幅測定値とに基づいて、正弦波振幅指令値及び余弦波振幅指令値を算出する。正弦/余弦振幅フィードバック制御部1040により算出された正弦波振幅指令値及び余弦波振幅指令値は、駆動波形生成部1050に入力される。
【0070】
駆動波形生成部1050は、正弦/余弦振幅フィードバック制御部1040からの正弦波振幅指令値及び余弦波振幅指令値に基づき、水平駆動波形として正弦波形を生成し、MEMSミラー121に出力する。
【0071】
(4)水平駆動波形制御部410の各部の詳細
続いて、水平駆動波形制御部410の各部(ここでは、正弦/余弦振幅変換部1031、1032、正弦/余弦振幅フィードバック制御部1040、駆動波形生成部1050)の詳細について説明する。
【0072】
(4-1)正弦/余弦振幅変換部、駆動波形生成部の詳細
はじめに、正弦/余弦振幅変換部1031、1032、駆動波形生成部1050の詳細について
図11を用いて説明する。
図11は、正弦/余弦振幅変換部及び駆動波形生成部の詳細を示す図である。
【0073】
このうち、
図11(a)は、正弦/余弦振幅変換部1031、1032の詳細を示す図である。
図11(a)に示すように、ここでは、振幅検出部1011または振幅検出部1021より出力される振幅をx、位相検出部1012または位相検出部1022より出力される位相をφとする。この場合、三角関数の合成の定理により、正弦波振幅y
c及び余弦波振幅y
sは、それぞれ、符号1110に示す式により算出される。なお、振幅xが振幅検出部1011より出力され、位相φが位相検出部1012より出力された場合、正弦波振幅y
c及び余弦波振幅y
sは、それぞれ、正弦波振幅目標値及び余弦波振幅目標値として出力される。また、振幅xが振幅検出部1021より出力され、位相φが位相検出部1022より出力された場合、正弦波振幅y
c及び余弦波振幅y
sは、それぞれ、正弦波振幅測定値及び余弦波振幅測定値として出力される。
【0074】
また、
図11(b)は、駆動波形生成部1050の詳細を示す図である。
図11(b)に示すように、正弦波振幅指令値をu
s、余弦波振幅指令値u
cとすると、水平駆動波形u(t)は、符号1120に示す式により算出することができる。
【0075】
(4-2)正弦/余弦振幅フィードバック制御部の詳細
続いて、正弦/余弦振幅フィードバック制御部1040の詳細について
図12を用いて説明する。
図12は、正弦/余弦振幅フィードバック制御部の詳細を示す第1の図である。
図12に示すように、正弦/余弦振幅フィードバック制御部1040は、減算部1201~1203、1211~1213、PID制御部1204、1205、1214、1215、加算部1206、1216、ゼロ点モデル1220を有する。
【0076】
減算部1201は、正弦/余弦振幅変換部1031からの正弦波振幅目標値に対して、ゼロ点モデル1220を用いて正弦波振幅指令値からゼロ点が消去された消去後の正弦波振幅指令値を減算する。
【0077】
減算部1202は、正弦/余弦振幅変換部1032からの正弦波振幅測定値に対して、ゼロ点モデル1220を用いて正弦波振幅指令値からゼロ点が消去された消去後の正弦波振幅指令値を減算する。
【0078】
減算部1203は、ゼロ点が消去された消去後の正弦波振幅指令値によりそれぞれ減算された、減算後の正弦波振幅目標値と減算後の正弦波振幅測定値との差分を算出することで、正弦波振幅誤差を出力する。
【0079】
減算部1211は、正弦/余弦振幅変換部1031からの余弦波振幅目標値に対して、ゼロ点モデル1220を用いて余弦波振幅指令値からゼロ点が消去された消去後の余弦波振幅指令値を減算する。
【0080】
減算部1212は、正弦/余弦振幅変換部1032からの余弦波振幅測定値に対して、ゼロ点モデル1220を用いて余弦波振幅指令値からゼロ点が消去された消去後の余弦波振幅指令値を減算する。
【0081】
減算部1213は、ゼロ点が消去された消去後の余弦波振幅指令値によりそれぞれ減算された、減算後の余弦波振幅目標値と減算後の余弦波振幅測定値との差分を算出することで、余弦波振幅誤差を出力する。
【0082】
PID制御部1204は、減算部1203からの正弦波振幅誤差に対してPID制御を行い、第1指令値を加算部1206に出力する。
【0083】
PID制御部1205は、減算部1203からの正弦波振幅誤差に対してPID制御を行い、第2指令値を加算部1216に出力する。
【0084】
PID制御部1214は、減算部1213からの余弦波振幅誤差に対してPID制御を行い、第3指令値を加算部1206に出力する。
【0085】
PID制御部1215は、減算部1213からの余弦波振幅誤差に対してPID制御を行い、第4指令値を加算部1216に出力する。
【0086】
加算部1206は、PID制御部1204からの第1指令値と、PID制御部1214からの第3指令値とを加算し、正弦波振幅指令値を算出する。算出された正弦波振幅指令値は、駆動波形生成部1050に入力されるとともに、ゼロ点モデル1220に入力される。
【0087】
加算部1216は、PID制御部1205からの第2指令値と、PID制御部1215からの第4指令値とを加算し、余弦波振幅指令値を算出する。算出された余弦波振幅指令値は、駆動波形生成部1050に入力されるとともに、ゼロ点モデル1220に入力される。
【0088】
ゼロ点モデル1220は、加算部1206からの正弦波振幅指令値が入力されると、ゼロ点を消去し、消去後の正弦波振幅指令値を減算部1201、1202に出力する。また、ゼロ点モデル1220は、加算部1216からの余弦波振幅指令値が入力されると、ゼロ点を消去し、消去後の余弦波振幅指令値を減算部1211、1212に出力する。
【0089】
<水平駆動波形制御部の制御処理の流れ>
次に、水平駆動波形制御部410の制御処理の流れについて説明する。
図13は、水平駆動波形制御部による制御処理の流れを示すフローチャートである。
【0090】
ステップS1301において、水平駆動波形制御部410は、水平駆動波形の初期値及び基準信号を格納する。
【0091】
ステップS1302において、水平駆動波形制御部410は、水平駆動波形の初期値を設定する。
【0092】
ステップS1303において、水平駆動波形制御部410は、基準信号から振幅と位相を検出する。
【0093】
ステップS1304において、水平駆動波形制御部410は、MEMSミラー角度信号から、振幅と位相を検出する。
【0094】
ステップS1305において、水平駆動波形制御部410は、基準信号から検出した振幅及び位相を、正弦波振幅及び余弦波振幅に変換し、正弦波振幅目標値及び余弦波振幅目標値を算出する。また、水平駆動波形制御部410は、MEMSミラー角度信号から検出した振幅及び位相を、正弦波振幅及び余弦波振幅に変換し、正弦波振幅測定値及び余弦波振幅測定値を算出する。
【0095】
ステップS1306において、水平駆動波形制御部410は、ゼロ点を消去した正弦波振幅指令値を用いて、正弦波振幅目標値及び正弦波振幅測定値をそれぞれ減算する。また、水平駆動波形制御部410は、減算後の正弦波振幅目標値と減算後の正弦波振幅測定値との差分を算出し、正弦波振幅誤差を算出する。また、水平駆動波形制御部410は、ゼロ点を消去した余弦波振幅指令値を用いて、余弦波振幅目標値及び余弦波振幅測定値をそれぞれ減算する。また、水平駆動波形制御部410は、減算後の余弦波振幅目標値と減算後の余弦波振幅測定値との差分を算出し、余弦波振幅誤差を算出する。更に、水平駆動波形制御部410は、正弦波振幅誤差及び余弦波振幅誤差を用いてPID制御を行い、正弦波振幅指令値及び余弦波振幅指令値を算出する。
【0096】
ステップS1307において、水平駆動波形制御部410は、正弦波振幅指令値及び余弦波振幅指令値に基づいて、水平駆動波形(正弦波形)を生成し、生成した水平駆動波形を、MEMSミラー121に出力する。
【0097】
ステップS1308において、水平駆動波形制御部410は、制御処理を終了するか否かを判定し、制御処理を終了しないと判定した場合には(ステップS1308においてNOの場合には)、ステップS1303に戻る。一方、ステップS1308において、制御処理を終了すると判定した場合には(ステップS1308においてYESの場合には)、制御処理を終了する。
【0098】
<PID制御のゲイン調整について>
次に、水平駆動波形制御部410の正弦/余弦振幅フィードバック制御部1040におけるPID制御部1204、1205、1214、1215のゲイン調整について説明する。
図12に示したように、MEMSミラーの特性解析に伴うゼロ点モデル1220を配したことで、安定した制御系を構築することが可能になった。また、
図10、
図12に示したように、水平駆動波形制御部410において、基準信号を正弦波振幅目標値と余弦波振幅目標値とに分解し、MEMSミラー角度信号を正弦波振幅測定値と余弦波振幅目標値とに分解したことで、
・駆動信号の振幅に対しては、正弦波振幅指令値の影響が支配的となり、
・駆動信号の位相に対しては、余弦波振幅指令値の影響が支配的となる、
制御系を構築することが可能になった(駆動信号の振幅に影響を与える要素と、駆動信号の位相に影響を与える要素とを切り分けて制御系を構築することが可能になった)。
【0099】
この結果、安定した制御系のもと、
・駆動信号の振幅を調整する際には、正弦波振幅指令値を決定するPID制御部1204及び1214のゲインを調整すれば足り、
・駆動信号の位相を調整する際には、余弦波振幅指令値を決定するPID制御部1205及び1215のゲインを調整すれば足りる、
こととなり、駆動信号の振幅と位相のゲイン調整を容易に行うことが可能になった。
【0100】
以上の説明から明らかなように、第1の実施形態に係るミラー制御装置120は、制御対象となるMEMSミラーの特性を解析したうえで構築された水平駆動波形制御部410を有し、水平駆動波形制御部410は、
・MEMSミラー121の角度を制御する際の基準信号を分解し、正弦波振幅目標値と余弦波振幅目標値とを算出する。
・MEMSミラーの角度を測定したMEMSミラー角度信号を分解し、正弦波振幅測定値と余弦波振幅測定値とを算出する。
・正弦波振幅目標値と正弦波振幅測定値との差分に応じた指令値と、余弦波振幅目標値と余弦波振幅測定値との差分に応じた指令値とに基づいて、正弦波振幅指令値と、余弦波振幅指令値とを算出する。
・正弦波振幅指令値と、余弦波振幅指令値とに基づき、MEMSミラーの角度を制御する駆動信号の水平駆動波形を生成する。
【0101】
このように、第1の実施形態によれば、
・MEMSミラーの特性を解析したうえで、水平駆動波形制御部410を構築することで、安定した制御系を実現することができる。
・振幅への影響が支配的な正弦波振幅と、位相への影響が支配的な余弦波振幅とに分けてPID制御を行うことで、振幅と位相とに分けてゲイン調整を行うことが可能になる。
【0102】
この結果、第1の実施形態によれば、MEMSミラーの角度をフィードバック制御する際のゲイン調整を容易にすることができる。
【0103】
[第2の実施形態]
上記第1の実施形態では、PID制御部1204、1205、1214、1215を配し、正弦波振幅指令値を算出する際、第1指令値と第3指令値とを加算し、かつ、余弦波振幅指令値を算出する際、第2指令値と第4指令値とを加算する場合について説明した。
【0104】
しかしながら、上記第1の実施形態において検討した対角化フィルタを用いて干渉成分を除去すれば、正弦/余弦振幅フィードバック制御部を簡素化し、ゲイン調整を更に容易にすることができる。以下、第2の実施形態について、上記第1の実施形態との相違点を中心に説明する。
【0105】
<正弦/余弦振幅フィードバック制御部の詳細>
はじめに、第2の実施形態における正弦/余弦振幅フィードバック制御部の詳細について説明する。
図14は、正弦/余弦振幅フィードバック制御部の詳細を示す第2の図である。
図12を用いて説明した正弦/余弦振幅フィードバック制御部1040との相違点は、
図14の正弦/余弦振幅フィードバック制御部1400の場合、対角化フィルタ1420を有する点である。また、
図14の正弦/余弦振幅フィードバック制御部1400の場合、PID制御部1204、1205、1214、1215に代えて、PID制御部1401、1411が配されている点である。
【0106】
PID制御部1401は、減算部1203からの正弦波振幅誤差に対してPID制御を行い、第1指令値を対角化フィルタ1420に出力する。
【0107】
PID制御部1411は、減算部1213からの余弦波振幅誤差に対してPID制御を行い、第2指令値を対角化フィルタ1420に出力する。
【0108】
対角化フィルタ1420は、PID制御部1401からの第1指令値と、PID制御部1411からの第2指令値とに基づいて、正弦波振幅指令値及び余弦波振幅指令値を算出する。算出された正弦波振幅指令値は、駆動波形生成部1050に入力されるとともに、ゼロ点モデル1220に入力される。
【0109】
なお、対角化フィルタ1420における処理は、上記第1の実施形態において、
図9の式5として示したので、ここでは説明を省略する。
【0110】
<PID制御のゲイン調整について>
次に、水平駆動波形制御部410の正弦/余弦振幅フィードバック制御部1400におけるPID制御部1401、1411のゲイン調整について説明する。上記第1の実施形態同様、
図14に示したように、MEMSミラーの特性解析に伴うゼロ点モデル1220を配したことで、安定した制御系を構築することが可能になった。また、
図10に示したように、水平駆動波形制御部410において、基準信号を正弦波振幅目標値と余弦波振幅目標値とに分解し、MEMSミラー角度信号を正弦波振幅測定値と余弦波振幅目標値とに分解したことで、
・駆動信号の振幅に対しては、正弦波振幅指令値の影響が支配的となり、
・駆動信号の位相に対しては、余弦波振幅指令値の影響が支配的となる、
制御系を構築することが可能になった(駆動信号の振幅に影響を与える要素と、駆動信号の位相に影響を与える要素とを切り分けて制御系を構築することが可能になった)。
【0111】
更に、
図14に示したように、MEMSミラーの特性解析に伴う対角化フィルタ1420を配し、干渉成分を除去することで、安定した制御系のもと、
・駆動信号の振幅を調整する際には、正弦波振幅指令値(第1指令値)を決定するPID制御部1401のゲインを調整すれば足り、
・駆動信号の位相を調整する際には、余弦波振幅指令値(第2指令値)を決定するPID制御部1411のゲインを調整すれば足りる、
こととなり、駆動信号の振幅と位相のゲイン調整を更に容易に行うことが可能になった。
【0112】
以上の説明から明らかなように、第2の実施形態に係るミラー制御装置120は、制御対象となるMEMSミラーの特性を解析したうえで構築された水平駆動波形制御部410を有し、水平駆動波形制御部410は、
・MEMSミラーの角度を制御する際の基準信号を分解し、正弦波振幅目標値と余弦波振幅目標値とを算出する。
・MEMSミラーの角度を測定したMEMSミラー角度信号を分解し、正弦波振幅測定値と余弦波振幅測定値とを算出する。
・正弦波振幅目標値と正弦波振幅測定値との差分に応じた指令値と、余弦波振幅目標値と余弦波振幅測定値との差分に応じた指令値とを、対角化フィルタに入力することで、正弦波振幅指令値と、余弦波振幅指令値とを算出する。
・正弦波振幅指令値と、余弦波振幅指令値とに基づき、MEMSミラーの角度を制御する駆動信号の水平駆動波形を生成する。
【0113】
このように、第2の実施形態によれば、
・MEMSミラーの特性を解析したうえで、水平駆動波形制御部410を構築することで、安定した制御系を実現することができる。
・振幅への影響が支配的な正弦波振幅と、位相への影響が支配的な余弦波振幅とに分けてPID制御を行うことで、振幅と位相とに分けてゲイン調整を行うことが可能になる。
・MEMSミラーの特性解析に伴う対角化フィルタにより、干渉成分を除去することでPID制御部の数を削減することができる。
【0114】
この結果、第2の実施形態によれば、MEMSミラーの角度をフィードバック制御する際のゲイン調整を更に容易にすることができる。
【0115】
[第3の実施形態]
上記第1及び第2の実施形態では、基準信号から振幅及び位相を検出したうえで、正弦波振幅目標値及び余弦波振幅目標値を算出した。また、上記第1及び第2の実施形態では、MEMSミラー角度信号から振幅及び位相を検出したうえで、正弦波振幅測定値及び余弦波振幅目標値を算出した。しかしながら、正弦波振幅目標値及び余弦波振幅目標値の算出方法、及び、正弦波振幅測定値及び余弦波振幅目標値の算出方法はこれに限定されない。例えば、基準信号から(振幅及び位相を検出することなく)、直接、正弦波振幅目標値及び余弦波振幅目標値を算出してもよい。また、MEMSミラー角度信号から(振幅及び位相を検出することなく)、直接、正弦波振幅測定値及び余弦波振幅目標値を算出してもよい。以下、第3の実施形態について、上記第1の実施形態との相違点を中心に説明する。
【0116】
<水平駆動波形制御部の機能構成>
はじめに、第3の実施形態における水平駆動波形制御部の機能構成について説明する。
図15は、水平駆動波形制御部の機能構成の一例を示す第2の図である。
図10との相違点は、水平駆動波形制御部1500の場合、振幅検出部1011、1021、位相検出部1012、1022、正弦/余弦振幅変換部1031、1032に代えて、正弦/余弦振幅検出部1511、1512を有する点である。
【0117】
正弦/余弦振幅検出部1511は、センサ駆動制御回路140からの基準信号が入力されると、正弦波振幅目標値及び余弦波振幅目標値を算出する。正弦/余弦振幅検出部1511により算出された正弦波振幅目標値及び余弦波振幅目標値は、正弦/余弦振幅フィードバック制御部1040に入力される。
【0118】
正弦/余弦振幅検出部1512は測定値生成部の他の一例であり、センサ123からのMEMSミラー角度信号が入力されると、正弦波振幅測定値及び余弦波振幅測定値を算出する。正弦/余弦振幅検出部1512により算出された正弦波振幅測定値及び余弦波振幅測定値は、正弦/余弦振幅フィードバック制御部1040に入力される。
【0119】
<正弦/余弦振幅検出部の詳細>
続いて、水平駆動波形制御部1500の正弦/余弦振幅検出部1511、1512の詳細について説明する。
図16は、正弦/余弦振幅検出部の詳細を示す図である。
図16に示すように、ここでは、基準信号またはMEMSミラー角度信号の現在の時間における値をx(t)、基準信号またはMEMSミラー角度信号の現在の時間より所定時間(Δt)前の時間における値をx(t-Δt)とする。この場合、正弦波振幅y
c及び余弦波振幅y
sは、それぞれ、符号1610に示す式により算出される。なお、符号1610に示す式において、"A"は所定の係数を示している。
【0120】
具体的には、正弦/余弦振幅検出部1511の場合には、現在の時間における基準信号x(t)と、現在の時間よりΔtだけ前の時間における基準信号x(t-Δt)とが入力される。これにより、正弦/余弦振幅検出部1511では、符号1610に示す式を用いて、正弦波振幅yc及び余弦波振幅ysとして、正弦波振幅目標値及び余弦波振幅目標値を算出する。
【0121】
また、正弦/余弦振幅検出部1512の場合には、現在の時間におけるセンサ123からのMEMSミラー角度信号x(t)と、現在の時間よりΔtだけ前の時間におけるセンサ123からのMEMSミラー角度信号x(t-Δt)とが入力される。これにより、正弦/余弦振幅検出部1512では、符号1610に示す式を用いて、正弦波振幅yc及び余弦波振幅ysとして、正弦波振幅測定値及び余弦波振幅測定値を算出する。
【0122】
以上の説明から明らかなように、第3の実施形態に係るミラー制御装置120は、制御対象となるMEMSミラーの特性を解析したうえで構築された水平駆動波形制御部1500を有し、水平駆動波形制御部1500は、
・MEMSミラーの角度を制御する際の基準信号を分解し、正弦波振幅目標値と余弦波振幅目標値とを算出する。
・その際、現在の時間における値と、現在の時間より所定時間前の時間における値(Δtだけ前の時間における値)とを用いることで、基準信号から振幅及び位相を検出することなく、直接、正弦波振幅目標値及び余弦波振幅目標値を算出する。
・MEMSミラーの角度を測定したMEMSミラー角度信号を分解し、正弦波振幅測定値と余弦波振幅測定値とを算出する。
・その際、現在の時間における値と、現在の時間より所定時間前の時間における値(Δtだけ前の時間における値)とを用いることで、MEMSミラー角度信号から振幅及び位相を検出することなく、直接、正弦波振幅測定値及び余弦波振幅測定値を算出する。
【0123】
このように、第3の実施形態によれば、上記第1または第2の実施形態と同様の効果を享受しつつ、更に、直接、正弦波振幅及び余弦波振幅を算出することができるため、フィードバック制御時の応答を早くすることができる。
【0124】
[第4の実施形態]
上記各実施形態では、ミラー制御装置120に入力される基準信号が、センサ駆動制御回路140にて生成されるものとして説明した。しかしながら、ミラー制御装置120に入力される基準信号は、レーザ距離計測装置100が有するメモリに予め格納され、当該メモリから読み出されてもよい。
【0125】
図17は、レーザ距離計測装置の構成例を示す第2の図である。
図1との相違点は、
図17の場合、レーザ距離計測装置1700が基準信号格納部1710を有する点である。基準信号格納部1710は、レーザ距離計測装置1700が有するメモリ上(
図17において不図示)において実現される。レーザ距離計測装置1700の場合、ミラー制御装置120は、センサ駆動制御回路140から基準信号を取得する代わりに、基準信号格納部1710から読み出すことで取得する。
【0126】
なお、基準信号格納部1710に予め格納される基準信号は、例えば、センサ駆動制御回路140によって生成された基準信号であってもよいし、不図示のネットワークを介して受信された基準信号であってもよい。
【0127】
また、上記説明では、基準信号格納部1710には、予め基準信号が格納されているものとしたが、基準信号に代えて、基準信号の振幅及び位相が予め格納されていてもよい。この場合、水平駆動波形制御部410において、振幅検出部1011、位相検出部1012を省略することができる。
【0128】
あるいは、基準信号に代えて、正弦波振幅目標値及び余弦波振幅目標値が予め格納されていてもよい。この場合、水平駆動波形制御部410において、振幅検出部1011、位相検出部1012、正弦/余弦振幅変換部1031を省略することができる。また、水平駆動波形制御部1500において、正弦/余弦振幅検出部1511を省略することができる。
【0129】
つまり、レーザ距離計測装置100は、正弦波振幅目標値及び余弦波振幅目標値、または、正弦波振幅目標値及び余弦波振幅目標値を算出するのに用いられる値を、
・基準信号格納部1710から読み出すことで、または、
・ネットワークを介して受信することで、
ミラー制御装置120に入力するようにしてもよい。
【0130】
[その他の実施形態]
上記各実施形態では、正弦/余弦振幅フィードバック制御部1040または1400にPID制御部を配し、PID制御を行うものとして説明したが、フィードバック制御の制御方法は、PID制御に限定されない。例えば、PI制御であってもP制御であってもよい。
【0131】
なお、開示の技術では、以下に記載する付記のような形態が考えられる。
(付記1)
ミラーの角度を測定した測定信号を分解し、正弦波振幅測定値と余弦波振幅測定値とを生成し、
正弦波振幅目標値と前記正弦波振幅測定値との差分に応じた値と、余弦波振幅目標値と前記余弦波振幅測定値との差分に応じた値とに基づいて、正弦波振幅指令値と、余弦波振幅指令値とを算出し、
前記正弦波振幅指令値と、前記余弦波振幅指令値とに基づき、前記ミラーの角度を制御する駆動信号の駆動波形を生成する、
処理をコンピュータが実行するミラー制御方法。
(付記2)
前記ミラーの角度を制御する際の目標信号を取得し、
取得した前記目標信号を分解することで、前記正弦波振幅目標値と前記正弦波振幅目標値を生成する、付記1に記載のミラー制御方法。
(付記3)
前記正弦波振幅目標値と前記正弦波振幅測定値との差分に応じた値は、
前記正弦波振幅指令値に対してゼロ点を消去するための処理を行い、
ゼロ点を消去するための処理が行われた消去後の前記正弦波振幅指令値を用いて、前記正弦波振幅目標値を減算し、
ゼロ点を消去するための処理が行われた消去後の前記正弦波振幅指令値を用いて、前記正弦波振幅測定値を減算し、
減算後の前記正弦波振幅目標値と、減算後の前記正弦波振幅測定値との差分を算出する、
ことで算出される、付記1に記載のミラー制御方法。
(付記4)
前記余弦波振幅目標値と前記余弦波振幅測定値との差分に応じた値は、
前記余弦波振幅指令値に対してゼロ点を消去するための処理を行い、
ゼロ点を消去するための処理が行われた消去後の前記余弦波振幅指令値を用いて、前記余弦波振幅目標値を減算し、
ゼロ点を消去するための処理が行われた消去後の前記余弦波振幅指令値を用いて、前記余弦波振幅測定値を減算し、
減算後の前記余弦波振幅目標値と、減算後の前記余弦波振幅測定値との差分を算出する、
ことで算出される、付記1に記載のミラー制御方法。
(付記5)
前記正弦波振幅指令値は、
前記正弦波振幅目標値と前記正弦波振幅測定値との差分に応じた値に対して第1のPID制御を行うことで算出された値と、
前記余弦波振幅目標値と前記余弦波振幅測定値との差分に応じた値に対して第3のPID制御を行うことで算出された値と、
を加算することで算出され、
前記余弦波振幅指令値は、
前記正弦波振幅目標値と前記正弦波振幅測定値との差分に応じた値に対して第2のPID制御を行うことで算出された値と、
前記余弦波振幅目標値と前記余弦波振幅測定値との差分に応じた値に対して第4のPID制御を行うことで算出された値と、
を加算することで算出される、付記1に記載のミラー制御方法。
(付記6)
前記駆動信号の振幅を調整する場合、前記第1のPID制御のゲイン及び前記第3のPID制御のゲインを調整し、前記駆動信号の位相を調整する場合、前記第2のPID制御のゲイン及び前記第4のPID制御のゲインを調整する、付記5に記載のミラー制御方法。
(付記7)
前記正弦波振幅指令値は、
前記正弦波振幅目標値と前記正弦波振幅測定値との差分に応じた値に対して第1のPID制御を行うことで算出された値を対角化フィルタに入力することで算出され、
前記余弦波振幅指令値は
前記余弦波振幅目標値と前記余弦波振幅測定値との差分に応じた値に対して第2のPID制御を行うことで算出された値を対角化フィルタに入力することで算出される、付記1に記載のミラー制御方法。
(付記8)
前記駆動信号の振幅を調整する場合、前記第1のPID制御のゲインを調整し、前記駆動信号の位相を調整する場合、前記第2のPID制御のゲインを調整する、付記7に記載のミラー制御方法。
(付記9)
前記正弦波振幅目標値は、
前記目標信号から検出した振幅を用いることで算出され、
前記余弦波振幅目標値は、
前記目標信号から検出した位相と、前記目標信号から検出した振幅を用いることで算出された前記正弦波振幅目標値とを用いることで算出される、付記2に記載のミラー制御方法。
(付記10)
前記正弦波振幅測定値は、
前記ミラーの角度を測定した測定信号から検出した振幅を用いることで算出され、
前記余弦波振幅測定値は、
前記ミラーの角度を測定した測定信号から検出した位相と、前記ミラーの角度を測定した測定信号から検出した振幅を用いることで算出された前記正弦波振幅測定値とを用いることで算出される、付記1に記載のミラー制御方法。
(付記11)
前記正弦波振幅目標値及び前記余弦波振幅目標値は、前記ミラーの角度を制御する際の目標信号であって、現在の時間における目標信号と、現在の時間より所定時間前の時間における目標信号とを用いることで算出され、
前記正弦波振幅測定値及び前記余弦波振幅測定値は、前記ミラーの角度を測定した測定信号であって、現在の時間における測定信号と、現在の時間より所定時間前の時間における測定信号とを用いることで算出される、付記1に記載のミラー制御方法。
(付記12)
前記正弦波振幅目標値及び前記余弦波振幅目標値、または、前記正弦波振幅目標値及び前記余弦波振幅目標値を算出するのに用いられる値を、メモリから読み出す、または、ネットワークを介して受信することで取得する、付記1に記載のミラー制御方法。
(付記13)
ミラーの角度を測定した測定信号を分解し、正弦波振幅測定値と余弦波振幅測定値とを生成し、
正弦波振幅目標値と前記正弦波振幅測定値との差分に応じた値と、余弦波振幅目標値と前記余弦波振幅測定値との差分に応じた値とに基づいて、正弦波振幅指令値と、余弦波振幅指令値とを生成し、
前記正弦波振幅指令値と、前記余弦波振幅指令値とに基づき、前記ミラーの角度を制御する駆動信号の駆動波形を生成する、
処理をコンピュータに実行させるためのミラー制御プログラム。
(付記14)
ミラーの角度を測定した測定信号を分解し、正弦波振幅測定値と余弦波振幅測定値とを生成する測定値生成部と、
正弦波振幅目標値と前記正弦波振幅測定値との差分に応じた値と、余弦波振幅目標値と前記余弦波振幅測定値との差分に応じた値とに基づいて、正弦波振幅指令値と、余弦波振幅指令値とを生成する指令値生成部と、
前記正弦波振幅指令値と、前記余弦波振幅指令値とに基づき、前記ミラーの角度を制御する駆動信号の駆動波形を生成する駆動波形生成部と
を有するミラー制御装置。
【0132】
なお、上記実施形態に挙げた構成等に、その他の要素との組み合わせ等、ここで示した構成に本発明が限定されるものではない。これらの点に関しては、本発明の趣旨を逸脱しない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
【符号の説明】
【0133】
100 :レーザ距離計測装置
110 :レーザ駆動回路
111 :レーザダイオード
120 :ミラー制御装置
121 :MEMSミラー
122 :投光レンズ
123 :センサ
130 :距離計測回路
131 :受光レンズ
132 :光検出器
140 :センサ駆動制御回路
150 :演算回路
410 :水平駆動波形制御部
420 :垂直駆動波形制御部
1011、1021 :振幅検出部
1012、1022 :位相検出部
1031、1032 :正弦/余弦振幅変換部
1040 :正弦/余弦振幅フィードバック制御部
1050 :駆動波形生成部
1201~1203 :減算部
1211~1213 :減算部
1204、1205 :PID制御部
1214、1215 :PID制御部
1206、1216 :加算部
1220 :ゼロ点モデル
1401、1411 :PID制御部
1420 :対角化フィルタ
1500 :水平駆動波形制御部
1511、1512 :正弦/余弦振幅検出部