(57)【要約】【課題】ＭＥＭＳミラーを備えた複数のセンサにおける距離の測定タイミングを一致させる。【解決手段】距離測定装置は、情報収集部と、駆動周波数決定部と、制御信号生成部と、を備える。情報収集部は、レーザ光の出射方向を制御するＭＥＭＳミラーを備えた複数のセンサのそれぞれにおけるＭＥＭＳミラーを同一の駆動周波数で駆動させたときに所定の条件を満たすＭＥＭＳミラーの駆動電圧を収集する。駆動周波数決定部は、複数の駆動周波数のそれぞれについて収集した複数のＭＥＭＳミラーの駆動電圧に基づいて、複数のセンサにより距離の測定を行う際のＭＥＭＳミラーの駆動周波数を決定する。制御信号生成部は、決定した駆動周波数を複数のセンサのそれぞれにおけるＭＥＭＳミラーの駆動周波数に指定する情報を含む制御信号を生成して複数のセンサに送信する。【選択図】図３
2018063228.tif 000002
【特許請求の範囲】
【請求項１】
レーザ光の出射方向を制御するＭＥＭＳミラーを備えた複数のセンサのそれぞれにおける前記ＭＥＭＳミラーを同一の駆動周波数で駆動させたときに所定の条件を満たす前記ＭＥＭＳミラーの駆動電圧を収集する情報収集部と、
複数の駆動周波数のそれぞれについて収集した前記ＭＥＭＳミラーの前記駆動電圧に基づいて、前記複数のセンサによる距離の測定を行う際の前記ＭＥＭＳミラーの駆動周波数を決定する駆動周波数決定部と、
決定した前記駆動周波数を前記複数のセンサのそれぞれにおける前記ＭＥＭＳミラーの駆動周波数に指定する情報を含む制御信号を生成して前記複数のセンサに送信する制御信号生成部と、
を備えることを特徴とする距離測定装置。
【請求項２】
前記距離測定装置は、前記複数のセンサを含み、
前記複数のセンサは、それぞれ、前記制御信号により指定された前記駆動周波数で前記ＭＥＭＳミラーを駆動させたときの前記ＭＥＭＳミラーの搖動角度が所定の角度範囲以上となる駆動電圧、或いは予め設定した駆動電圧の上限値に基づいて前記ＭＥＭＳミラーの駆動信号を生成する駆動信号生成部を備え、
前記制御信号生成部は、前記複数の駆動周波数のそれぞれを前記ＭＥＭＳミラーの駆動周波数に指定する情報を含む制御信号を生成して前記複数のセンサに送信し、
前記情報収集部は、前記複数のセンサの前記駆動信号生成部において生成する前記駆動信号の前記駆動電圧を収集する、
ことを特徴とする請求項１に記載の距離測定装置。
【請求項３】
前記複数のセンサのいずれか１個のセンサは、前記制御信号に指定された駆動周波数と同じ周波数をもつマスタークロックを生成するマスタークロック生成部を備え、
前記複数のセンサは、前記ＭＥＭＳミラーを駆動させる駆動信号の生成に用いるセンサクロックの位相を、前記マスタークロックの位相と同期させる位相同期部とを備え、
前記制御信号生成部は、前記複数のセンサのうちの前記マスタークロック生成部を備えた１個の前記センサに前記制御信号を送信し、
前記制御信号を受信した前記センサは、生成した前記マスタークロックを他の前記センサに転送する、
ことを特徴とする請求項２に記載の距離測定装置。
【請求項４】
前記複数のセンサの前記駆動信号生成部は、それぞれ、第１の方向における前記ＭＥＭＳミラーの角度を前記駆動周波数で制御するとともに、前記第１の方向とは異なる第２の方向における前記ＭＥＭＳミラーの角度を１方向に制御する前記駆動信号を生成し、
前記複数のセンサは、それぞれ、前記第２の方向における前記ＭＥＭＳミラーの角度に基づいて前記センサクロックの位相をオフセット調整するオフセット調整部、を更に備える、
ことを特徴とする請求項３に記載の距離測定装置。
【請求項５】
前記複数のセンサは、それぞれ、前記第２の方向における前記ＭＥＭＳミラーの角度と、前記駆動信号における位相のずれ量との対応関係を示す補正量テーブルと、前記第２の方向における前記ＭＥＭＳミラーの角度と、前記補正量テーブルとに基づいて前記センサ信号の位相の補正量を算出するずれ量補正部、を更に備える、
ことを特徴とする請求項４に記載の距離測定装置。
【請求項６】
前記駆動周波数決定部は、前記複数のセンサの前記ＭＥＭＳミラーの駆動電力の総和が最小となる駆動周波数を決定する、
ことを特徴とする請求項１に記載の距離測定装置。
【請求項７】
コンピュータが、
レーザ光の出射方向を制御するＭＥＭＳミラーを備えた複数のセンサのそれぞれにおける前記ＭＥＭＳミラーを同一の駆動周波数で駆動させたときに所定の条件を満たす前記ＭＥＭＳミラーの駆動電圧を収集し、
複数の駆動周波数のそれぞれについて収集した前記ＭＥＭＳミラーの前記駆動電圧に基づいて、前記複数のセンサによる距離の測定を行う際の前記ＭＥＭＳミラーの駆動周波数を決定し、
決定した前記駆動周波数を前記複数のセンサのそれぞれにおける前記ＭＥＭＳミラーの駆動周波数に指定する情報を含む制御信号を生成して前記複数のセンサに送信し、
前記複数のセンサのそれぞれが前記ＭＥＭＳミラーを前記制御信号で指定された前記駆動周波数で駆動させて測定した前記センサから距離の測定対象である対象物までの距離の測定結果を取得する、
処理を実行する距離測定方法。
【請求項８】
前記制御信号を前記複数のセンサに送信する処理において、前記コンピュータは、
前記複数のセンサのうちの１個のセンサを選択し、
選択した前記センサに前記制御信号を送信し、当該センサに前記制御信号で指定した駆動周波数のマスタークロックを生成させるとともに、生成した前記マスタークロックを他のセンサに転送させ、
前記複数のセンサのそれぞれに、前記ＭＥＭＳミラーを駆動させる駆動信号の生成に用いるセンサクロックの位相を、前記マスタークロックの位相と同期させる、
ことを特徴とする請求項７に記載の距離測定方法。
【請求項９】
レーザ光の出射方向を制御するＭＥＭＳミラーを備えた複数のセンサのそれぞれにおける前記ＭＥＭＳミラーを同一の駆動周波数で駆動させたときに所定の条件を満たす前記ＭＥＭＳミラーの駆動電圧を収集し、
複数の駆動周波数のそれぞれについて収集した前記ＭＥＭＳミラーの前記駆動電圧に基づいて、前記複数のセンサによる距離の測定を行う際の前記ＭＥＭＳミラーの動周波数を決定し、
決定した前記駆動周波数を前記複数のセンサのそれぞれにおける前記ＭＥＭＳミラーの駆動周波数に指定する情報を含む制御信号を生成して前記複数のセンサに送信し、
前記複数のセンサのそれぞれが前記ＭＥＭＳミラーを前記制御信号で指定された前記駆動周波数で駆動させて測定した前記センサから距離の測定対象である対象物までの距離の測定結果を取得する、
処理をコンピュータに実行させる距離測定プログラム。
【請求項１０】
前記制御信号を前記複数のセンサに送信する処理は、
前記複数のセンサのうちの１個のセンサを選択し、
選択した前記センサに前記制御信号を送信し、当該センサに前記制御信号で指定した駆動周波数のマスタークロックを生成させるとともに、生成した前記マスタークロックを他のセンサに転送させ、
前記複数のセンサのそれぞれに、前記ＭＥＭＳミラーを駆動させる駆動信号の生成に用いるセンサクロックの位相を、前記マスタークロックの位相と同期させる、
ことを特徴とする請求項９に記載の距離測定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、距離測定装置、距離測定方法、及び距離測定プログラムに関する。
【背景技術】
【０００２】
レーザ光を利用した走査型の距離測定装置には、Micro Electro Mechanical Systems（ＭＥＭＳ）ミラーによりレーザ光の出射方向を制御するものがある。この種の距離測定装置では、ミラー面を水平方向及び垂直方向の２方向に搖動可能なＭＥＭＳミラーを利用し、レーザ光の出射方向を水平方向で搖動させながら垂直方向には一方向に一定速度で変化させる。すなわち、この種の距離測定装置では、ＭＥＭＳミラーを利用して、所望の測定範囲内でレーザ光の出射方向を２次元的に走査させる（ラスタースキャン）。この際、測定範囲内におけるレーザ光の出射方向の搖動は、共振周波数によりＭＥＭＳミラーを共振させて行う。
【０００３】
また、距離測定装置には、レーザ光の出射及び受光を行うセンサを複数備え、複数のセンサにより距離を同時に測定するものがある（例えば、特許文献１を参照。）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特表２００７−５０３００４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＭＥＭＳミラーは、製造時の加工精度に応じた形状や寸法のばらつきにより、共振周波数に個体差が生じる。このため、複数のセンサのそれぞれで備えているＭＥＭＳミラーをＭＥＭＳミラー毎の共振周波数で駆動させると、測定範囲内をレーザ光で１通り走査するのに要する周波数（フレームレート）に差異が生じる。したがって、ＭＥＭＳミラーをＭＥＭＳミラー毎の共振周波数で共振させてレーザの出射方向を制御する場合、複数のＭＥＭＳミラーの動作を同期させることが困難である。よって、ＭＥＭＳミラーを備えた複数のセンサによる距離の測定タイミングを一致させることが困難である。
【０００６】
１つの側面において、本発明は、ＭＥＭＳミラーを備えた複数のセンサにおける距離の測定タイミングを一致させることを目的とする。
【課題を解決するための手段】
【０００７】
１つの態様の距離測定装置は、情報収集部と、駆動周波数決定部と、制御信号生成部と、を備える。情報収集部は、レーザ光の出射方向を制御するＭＥＭＳミラーを備えた複数のセンサのそれぞれにおけるＭＥＭＳミラーを同一の駆動周波数で駆動させたときに所定の条件を満たすＭＥＭＳミラーの駆動電圧を収集する。駆動周波数決定部は、複数の駆動周波数で収集したそれぞれのＭＥＭＳミラーの駆動電圧に基づいて、複数のセンサによる距離の計測を行う際のＭＥＭＳミラーの駆動周波数を決定する。制御信号生成部は、決定した駆動周波数を複数のセンサのそれぞれにおけるＭＥＭＳミラーの駆動周波数に指定する情報を含む制御信号を生成して複数のセンサに送信する。
【発明の効果】
【０００８】
上述の態様によれば、ＭＥＭＳミラーを備えた複数のセンサにおける距離の測定タイミングを一致させることが可能となる。
【図面の簡単な説明】
【０００９】
【図１】第１の実施形態に係る距離測定装置の構成例を示す図である。
【図２】第１の実施形態に係る距離測定装置におけるセンサの機能的構成を示す図である。
【図３】第１の実施形態に係る距離測定装置における制御装置の機能的構成を示す図である。
【図４Ａ】第１の実施形態に係る距離測定装置が行う処理の内容を説明するシーケンス図（その１）である。
【図４Ｂ】第１の実施形態に係る距離測定装置が行う処理の内容を説明するシーケンス図（その２）である。
【図５】各センサが行う電圧調整処理の内容を説明するフローチャートである。
【図６】駆動周波数決定処理の内容を説明するフローチャートである。
【図７】各センサが行う同期処理の内容を説明するフローチャートである。
【図８】レーザ光の出射方向の時間変化を説明する図である。
【図９】ＭＥＭＳミラーの駆動周波数と搖動動角度との関係を示す図である。
【図１０】共振周波数とは異なる駆動周波数でＭＥＭＳミラーを駆動させた場合の搖動振幅の時間変化を説明する波形図である。
【図１１】垂直方向の角度と駆動信号の位相差との関係を説明するグラフ図である。
【図１２】センサのハードウェア構成を示す図である。
【図１３】同期制御回路の構成を示す図である。
【図１４】第２の実施形態に係る距離測定装置におけるセンサの機能的構成を示す図である。
【図１５】補正量テーブルを示す図である。
【図１６】第２の実施形態に係る距離測定装置における各センサが行う同期処理の内容を説明するフローチャートである。
【図１７】第２の実施形態に係るセンサにおける同期制御回路の構成を示す図である。
【図１８】第３の実施形態に係るセンサにおける同期制御回路の構成を示す図である。
【図１９】コンピュータのハードウェア構成を示す図である。
【発明を実施するための形態】
【００１０】
［第１の実施形態］
図１は、第１の実施形態に係る距離測定装置の構成例を示す図である。
【００１１】
図１に示すように、本実施形態に係る距離測定装置１は、複数個のセンサ２と、制御装置３とを備える。なお、図１には、本実施形態に係る距離測定装置１の一構成例として、４個のセンサ２Ａ〜２Ｄを備えた距離計測装置１を示している。
【００１２】
複数個のセンサ２は、それぞれ、レーザ光源で生成したレーザ光５を出射するとともに、レーザ光の出射方向から到来するレーザ光を検出する。本実施形態に係るセンサ２は、ＭＥＭＳミラーによりレーザ光の出射方向を制御する。複数個のセンサ２は、それぞれ、レーザ光５の出射方向を、所定の測定範囲ＳＡ内で２次元的な走査を行うよう制御する。
【００１３】
本実施形態の距離測定装置１における複数個のセンサ２は、所定のエリアＳ内に存在する人物４等の対象物までの距離を異なる方向から測定する態様で配置する。この際、複数個のセンサ２は、それぞれ、制御装置３と接続されており、各センサ２における測定結果は制御装置３に送信される。また、本実施形態に係る距離測定装置１における複数個のセンサ２同士は、ライン型のネットワークになっており、当該ネットワークの一端に位置するセンサ２（２Ａ）がマスターセンサに設定されている。マスターセンサ２Ａは、複数個のセンサ２のそれぞれにおけるＭＥＭＳミラーの駆動周波数の基準となるマスタークロックを生成する。マスターセンサ２Ａで生成したマスタークロックは、他のセンサ２Ｂ，２Ｃ，２Ｄに順次転送される。複数個のセンサ２は、マスターセンサ２Ａが生成したマスタークロックに従い、自センサにおけるレーザ光の走査が他のセンサにおけるレーザ光の走査と同期するよう、ＭＥＭＳミラーの動作等を制御する。
【００１４】
制御装置３は、複数個のセンサ２のそれぞれの動作を制御する。制御装置３は、複数個のセンサ２のうちのマスターセンサ２Ａに対し、マスタークロックの周波数を含む制御信号を送信する。また、制御装置３は、複数の駆動周波数のそれぞれで、同一の駆動周波数で動作する複数個のセンサ２のそれぞれからＭＥＭＳミラーの駆動電圧を含む情報を収集し、該収集した情報に基づいて、距離計測時の各センサ２の駆動周波数を決定する。ここで、各センサ２から収集する情報は、ＭＥＭＳミラーが共振方向（駆動周波数で搖動させる方向）に所定の角度以上の搖動角度で搖動する駆動電圧、或いは駆動電圧の上限値を示す情報を含む。更に、制御装置３は、マスタークロックに従って動作する複数個のセンサ２のそれぞれから距離の測定結果を取得する。
【００１５】
図２は、第１の実施形態に係る距離測定装置におけるセンサの機能的構成を示す図である。
【００１６】
図２に示すように、本実施形態の距離測定装置１におけるセンサ２は、投光部２１０と、受光部２２０と、レーザ駆動部２３０と、ミラー駆動部２４０と、飛行時間（距離）測定部２５０と、測定制御部２６０と、を備える。また、センサ２は、同期制御部２７０と、マスタークロック生成部２８０と、を更に備える。
【００１７】
投光部２１０は、対象物までの距離の測定に利用するレーザ光を生成し、所定の出射方向に出射させる。投光部２１０は、レーザダイオード等のレーザ光源２１１と、レーザ光の出射方向を制御するＭＥＭＳミラー２１２とを含む。
【００１８】
受光部２２０は、センサ２の外部からセンサ２に入射したレーザ光を受光し、該受光したレーザ光の強度に応じた電気信号を出力する。
【００１９】
レーザ駆動部２３０は、レーザ光源２１１を駆動させる。レーザ駆動部２３０は、例えば、測定制御部２６０からの制御信号に基づいて、レーザ光源２１１からレーザ光をパルス発光させる際の発光間隔時間等を制御するタイミング信号を生成し、レーザ光源２１１を駆動させる。
【００２０】
ミラー駆動部２４０は、ＭＥＭＳミラー２１２を駆動させる。ミラー駆動部２４０は、同期制御部２７０からの信号に基づいて、ＭＥＭＳミラー２１２の反射面の向きを制御する駆動信号を生成し、該駆動信号によりＭＥＭＳミラー２１２を駆動させる。ミラー駆動部２４０は、駆動信号生成部２４１と、角度検出部２４２とを含む。駆動信号生成部２４１は、ＭＥＭＳミラー２１２を駆動させる駆動信号を生成する。角度検出部２４２は、ＭＥＭＳミラー２１２の反射面の向きを表す角度情報と対応した電圧等の電気的な信号を検出する。
【００２１】
飛行時間（距離）測定部２５０は、レーザ光の飛行時間（言い換えると、レーザ光を出射し、対象物に当たって戻って受光するまでの時間）を測定する。飛行時間（距離）測定部２５０は、レーザ駆動部２３０から取得したレーザ光の発振時刻（出射時刻）と、受光部２２０でレーザ光を受光した時刻とに基づいて、レーザ光の飛行時間を計測し、対象物までの距離を算出する。以下の説明では、飛行時間（距離）測定部２５０のことを、飛行時間測定部２５０ともいう。
【００２２】
測定制御部２６０は、センサ２における距離の測定に関する動作を制御する。測定制御部２６０は、制御装置３からの制御信号に従い、レーザ駆動部２３０、及び同期制御部２７０の動作を制御する。また、測定制御部２６０は、飛行時間計測部２５０の計測結果を取得して制御装置３に送信するとともに、同期制御部２７０を介してミラー駆動部２４０で生成した駆動信号の駆動電圧を取得して制御装置に送信する。また、制御装置３からの制御信号に自センサ２をマスターセンサに指定する情報が含まれる場合、測定制御部２６０は、マスタークロック生成部２８０にマスタークロックを生成させる。マスターセンサに指定されたセンサ２の測定制御部２６０は、マスタークロック生成部２８０で生成したマスタークロックを他のセンサ２に転送する。また、マスターセンサに指定されたセンサ２を除く他のセンサ２の測定制御部２６０は、前段のセンサ２から受信したマスタークロックを同期制御部２７０に入力する。また、マスターセンサに指定されたセンサ２を除く他のセンサ２の測定制御部２７０は、後段のセンサ２が存在する場合には、マスタークロックを後段のセンサ２に転送する。
【００２３】
同期制御部２７０は、マスタークロック生成部２８０で生成したマスタークロック、或いは前段のセンサ２から転送されたマスタークロックに基づいて、自センサ２のミラー駆動部２４０の動作を、他のセンサ２のミラー駆動部２４０の動作と同期させる。本実施形態に係るセンサ２の同期制御部２７０は、センサクロック生成部２７１と、位相同期部２７２と、オフセット量算出部２７３と、オフセット調整部２７４と、を含む。センサクロック生成部２７１は、ミラー駆動部２４０の角度検出部２４２による共振方向の振幅（角度）の検出結果に基づいて、ＭＥＭＳミラー２１２の共振方向の搖動周波数と対応したセンサ信号（センサ内クロック）を生成する。位相同期部２７２は、生成したセンサ信号の位相を、マスタークロックの位相と同期させる。オフセット量算出部２７３は、ミラー駆動部２４０の角度検出部２４２による非共振方向の角度の検出結果に基づいて、センサ信号の位相についてのオフセット量を算出する。ここで、非共振方向は、共振方向と直交する方向とする。また、位相のオフセット量は、レーザ光の出射方向の非共振方向の角度変化により生じるセンサ信号の位相のずれ量とする。オフセット調整部２７４は、算出したオフセット量に基づいて、ミラー駆動部２４０に出力するセンサ信号の位相を調整する。
【００２４】
マスタークロック生成部２８０は、上記の通り、制御装置３からの制御信号に含まれるマスタークロックの周波数を示す情報に基づいて、マスタークロックを生成する。
【００２５】
図３は、第１の実施形態に係る距離測定装置における制御装置の機能的構成を示す図である。
【００２６】
図３に示すように、本実施形態の距離測定装置１における制御装置３は、制御信号生成部３１０と、情報収集部３２０と、駆動周波数決定部３３０と、通信部３４０と、記憶部３９０と、を備える。
【００２７】
制御信号生成部３１０は、各センサ２の動作を制御する各種制御信号を生成する。制御信号生成部３１０が生成する制御信号は、マスタークロックの周波数を示す情報と、各センサ２が行う処理を指定する情報とを含む。マスタークロックの周波数を示す情報は、マスターセンサに指定するセンサ２のみに送信する。各センサ２が行う処理を指定する情報は、駆動周波数を決定するための事前処理、及び距離の測定処理のいずれを行うかを指定する情報を含む。駆動周波数を決定するための事前処理を行っている間、制御信号生成部３１０は、マスタークロックの周波数を示す情報を含む制御信号として、所定の周波数範囲内から選択した周波数を示す情報を含む制御信号を生成する。また、距離の測定処理を開始する際には、制御信号生成部３１０は、マスタークロックの周波数を示す情報を含む制御信号として、駆動周波数決定部３３０で決定した周波数を示す情報を含む制御信号を生成する。
【００２８】
情報収集部３２０は、各センサ２から、センサ２内で行った処理の結果を収集する。各センサ２に駆動周波数を決定するための事前処理を行わせている場合、情報収集部３２０は、マスタークロックの周波数に応じた駆動周波数でＭＥＭＳミラー２１２を駆動させたときの駆動電圧についての情報を各センサ２から取得する。各センサ２に距離の測定処理を行わせている場合、情報収集部３２０は、距離の測定結果を各センサ２から取得する。情報収集部３２０は、各センサ２から取得した処理結果を記憶部３９０に記憶させる。本実施形態では、各センサ２に事前処理を行わせている間に情報収集部３２０が各センサ２から収集する情報をＭＥＭＳミラー２１２の駆動電圧とする。しかしながら、各センサ２に事前処理を行わせている間に情報収集部３２０が収集する情報は、ＭＥＭＳミラー２１２の駆動電圧に限らず、電力等であってもよい。
【００２９】
駆動周波数決定部３３０は、各センサ２に事前処理を行わせて取得した、ＭＥＭＳミラー２１２の駆動周波数と駆動電圧との関係を示す情報を記憶部３９０から読み出し、センサ２の駆動電力の総和が最小となる駆動周波数を決定する。本記載では電力を最小としているが基準は任意に設定することが可能である。
【００３０】
通信部３４０は、制御信号生成部３１０で生成した制御信号を複数個のセンサ２（第１のセンサ２Ａ〜第４のセンサ２Ｄ）のそれぞれに送信する。また、通信部３４０は、マスタークロックの周波数を示す情報を含む制御信号を、マスターに指定したセンサ２（２Ａ）に送信する。更に、通信部３４０は、複数個のセンサ２のそれぞれから処理結果を受信する。
【００３１】
記憶部３９０は、複数個のセンサ２から取得した処理結果（収集した情報）を記憶する。
【００３２】
図４Ａは、第１の実施形態に係る距離測定装置が行う処理の内容を説明するシーケンス図（その１）である。図４Ｂは、第１の実施形態に係る距離測定装置が行う処理の内容を説明するシーケンス図（その２）である。なお、図４Ａ及び図４Ｂには、第１のセンサ２Ａと、第２のセンサ２Ｂとの２個のセンサ２を備えた距離測定装置１において、第１のセンサ２Ａをマスターセンサとして行う処理の内容を示している。
【００３３】
本実施形態に係る距離測定装置１では、まず、図４Ａに示すように、制御装置３がマスタークロックの周波数を選択し（ステップＳ１）、当該選択した周波数を示す情報と、事前処理を行うことを示す情報とを含む制御信号を生成する（ステップＳ２）。ステップＳ１，Ｓ２の処理は、制御装置３の制御信号生成部３１０が行う。制御信号生成部３１０は、例えば、第１のセンサ２Ａ及び第２のセンサ２ＢにおけるＭＥＭＳミラー２１２の共振周波数の設計値に基づく所定の周波数範囲の中から、所定の選択規則に従ってマスタークロックの周波数を選択する。
【００３４】
制御信号を生成した後、距離測定装置１は、生成した制御信号を第１のセンサ２Ａに送信する（ステップＳ３）。ステップＳ３の処理は、距離測定装置１の通信部３４０が行う。通信部３４０は、ステップＳ２で生成した制御信号を、マスターに指定した第１のセンサ２Ａに送信する。ステップＳ３の処理を終えると、制御装置３は、各センサ２からの処理結果を受信するまで待機状態となる。
【００３５】
制御装置３からの制御信号を受信すると、第１のセンサ２Ａは、制御信号に基づいてマスタークロックを生成し（ステップＳ４）、生成したマスタークロックを第２のセンサ２Ｂに転送する（ステップＳ５）。ステップＳ４の処理は、第１のセンサ２Ａのマスタークロック生成部２８０が行う。ステップＳ５の処理は、例えば、第１のセンサ２Ａの測定制御部２６０が行う。
【００３６】
マスタークロックを第２のセンサ２Ｂに転送した後、第１のセンサ２Ａは、生成したマスタークロックを利用して電圧調整処理（ステップＳ６）を行い、処理結果を制御装置３に送信する（ステップＳ７）。同様に、第１のセンサ２Ａからマスタークロックを受信した第２のセンサ２Ｂは、受信したマスタークロックを利用して電圧調整処理（ステップＳ６）を行い、処理結果を制御装置３に送信する（ステップＳ７）。ステップＳ６の電圧調整処理において、第１のセンサ２Ａ及び第２のセンサ２Ｂは、それぞれ、マスタークロックの周波数を駆動周波数としてＭＥＭＳミラー２１２を駆動させたときの共振方向の搖動角度が所定の角度以上となるよう駆動電圧を調整する。また、本実施形態では、駆動電圧に上限値を設定しておき、駆動電圧を上限値まで上昇させてもＭＥＭＳミラー２１２の共振方向の搖動角度が所定の角度に満たない場合、当該駆動電圧の上限値を、現在の駆動周波数に対する駆動電圧の値とする。ステップＳ７では、第１のセンサ２Ａ及び第２のセンサ２Ｂは、それぞれ、電圧調整処理の結果（駆動電圧）を制御装置３に送信する。この際、第１のセンサ２Ａ及び第２のセンサ２Ｂでは、それぞれ、測定制御部２６０が、同期制御部２７０を介してＭＥＭＳミラーの駆動電圧を取得し、制御装置３に送信する。
【００３７】
第１のセンサ２Ａ及び第２のセンサ２Ｂから電圧調整処理の結果を受信した制御装置３は、受信した処理結果を駆動周波数と対応付けて記憶部３９０に記憶させた後、全周波数を掃引したか否かを判定する（ステップＳ８）。所定の周波数範囲内で選択可能な周波数の中にステップＳ１で選択していない周波数がある場合（ステップＳ８；ＮＯ）、制御装置３は、ステップＳ１〜Ｓ３の処理を行い、第１のセンサ２Ａ及び第２のセンサ２Ｂから電圧調整処理の結果を取得する（収集する）。
【００３８】
所定の周波数範囲内で選択可能な周波数の全てで第１のセンサ２Ａ及び第２のセンサ２Ｂから電圧調整処理の結果を取得した場合（ステップＳ８；ＹＥＳ）、制御装置３は、次に、図４Ｂに示すように、駆動周波数決定処理（ステップＳ９）を行う。ステップＳ９の処理は、制御装置３の駆動周波数決定部３３０が行う。駆動周波数決定部３３０は、駆動周波数毎に第１のセンサ２Ａ及び第２のセンサ２Ｂの駆動電圧に基づいて駆動電力の総和を算出し、駆動電力の総和が最小値となる駆動周波数を、距離測定時のＭＥＭＳミラー２１２の駆動周波数に決定する。
【００３９】
制御装置３がステップＳ９の駆動周波数決定処理を終えると、距離測定装置１における事前処理が終了する。事前処理が終了すると、距離測定装置１は、対象物までの距離を測定する処理を開始する。
【００４０】
距離を測定する処理を開始すると、まず、制御装置３が、ステップＳ９で決定した駆動周波数をマスタークロックの周波数とする制御信号を生成し（ステップＳ１０）、生成した制御信号を第１のセンサ２Ａに送信する（ステップＳ１１）。ステップＳ１０の処理は、制御装置３の制御信号生成部３１０が行う。ステップＳ１０において、制御信号生成部３１０は、ステップＳ９で決定した駆動周波数を示す情報と、距離の測定処理を行うことを示す情報とを含む制御信号を生成する。ステップＳ１１の処理を終えると、制御装置３は、各センサ２からの処理結果を受信するまで待機状態となる。
【００４１】
制御装置３からの制御信号を受信すると、第１のセンサ２Ａは、制御信号に基づいてマスタークロックを生成し（ステップＳ１２）、生成したマスタークロックを第２のセンサ２Ｂに転送する（ステップＳ１３）。ステップＳ１２の処理は、第１のセンサ２Ａのマスタークロック生成部２８０が行う。
【００４２】
マスタークロックを第２のセンサ２Ｂに転送した後、第１のセンサ２Ａは、生成したマスタークロックを利用して同期処理（ステップＳ１４）、及び測定処理（ステップＳ１５）を行い、測定処理の結果を制御装置３に送信する。同様に、第１のセンサ２Ａからマスタークロックを受信した第２のセンサ２Ｂは、受信したマスタークロックを利用して同期処理（ステップＳ１４）、及び測定処理（ステップＳ１５）を行い、測定処理の結果を制御装置３に送信する。ステップＳ１４の同期処理において、第１のセンサ２Ａ及び第２のセンサ２Ｂは、それぞれ、マスタークロックの周波数を駆動周波数としてＭＥＭＳミラー２１２を駆動させたときの共振方向の搖動角度が所定の角度以上となるよう駆動電圧を調整する。また、本実施形態では、駆動電圧に上限値を設定しておき、駆動電圧を上限値まで上昇させてもＭＥＭＳミラー２１２の共振方向の搖動角度が所定の角度に満たない場合、当該駆動電圧の上限値を、ＭＥＭＳミラー２１２駆動電圧の値とする。更に、ステップＳ１４において、第１のセンサ２Ａ及び第２のセンサ２Ｂは、それぞれ、上記の処理により決定した周波数及び電圧で駆動するＭＥＭＳミラー２１２の搖動周期に基づいて生成するセンサクロックの位相と、マスタークロックの位相とを同期させる。
【００４３】
その後、図示は省略するが、第１のセンサ２Ａ及び第２のセンサ２Ｂは、それぞれ、制御装置３から測定処理を終了することを示す情報を含む制御信号を受信するまで、同期処理Ｓ１４及び測定処理Ｓ１５を繰り返す。
【００４４】
このように、本実施形態に係る距離測定装置１は、複数個のセンサ２により距離の測定を開始する前に、各センサ２のＭＥＭＳミラーの駆動周波数を決定する事前処理を行う。この事前処理において、複数個のセンサ２は、それぞれ、マスタークロックに基づく駆動周波数でＭＥＭＳミラー２１２を駆動させる場合の駆動電圧を調整する電圧調整処理（ステップＳ６）を行う。ステップＳ６の電圧調整処理として、各センサ２は、それぞれ、例えば、図５に示した処理を行う。
【００４５】
図５は、各センサが行う電圧調整処理の内容を説明するフローチャートである。
電圧調整処理を開始すると、センサ２は、まず、ＭＥＭＳミラー２１２の駆動電圧を初期値に設定する（ステップＳ６０１）。ステップＳ６０１の処理は、例えば、センサ２のミラー駆動部２４０の駆動信号生成部２４１が行う。
【００４６】
次に、センサ２は、マスタークロックに応じた駆動周波数でＭＥＭＳミラーを搖動させる（ステップＳ６０２）。ステップＳ６０２の処理は、同期制御部２７０と、ミラー駆動部２４０の駆動信号生成部２４１とが行う。同期制御部２７０は、マスタークロックをミラー駆動部２４０の駆動信号生成部２４１に入力する。駆動信号生成部２４１は、マスタークロックの周波数をＭＥＭＳミラー２１２の駆動周波数とし、現在設定されている駆動電圧でＭＥＭＳミラー２１２を駆動させる。
【００４７】
次に、センサ２は、ＭＥＭＳミラー２１２の搖動角度を取得する（ステップＳ６０３）。ステップＳ６０３の処理は、ミラー駆動部２４０の角度検出部２４２が行う。角度検出部２４２は、ＭＥＭＳミラー２１２を共振周波数で駆動させたときの共振方向に対するＭＥＭＳミラー２１２の角度の変化量に基づいて、ＭＥＭＳミラー２１２の搖動角度を取得する。
【００４８】
次に、センサ２は、ＭＥＭＳミラー２１２の搖動角度が閾値以上であるか否かを判定する（ステップＳ４０４）。ステップＳ４０４の判定は、例えば、ミラー駆動部２４０の角度検出部２４２が行う。搖動角度の閾値は、例えば、ＭＥＭＳミラー２１２を共振周波数で駆動させたときの共振方向に対する搖動角度に基づいて設定する。搖動角度の閾値は、任意であり、ＭＥＭＳミラー２１２を共振周波数と駆動電圧で駆動させたときの共振方向に対する搖動角度としてもよいし、搖動角度の最大値の８０〜９０％程度としてもよい。
【００４９】
ＭＥＭＳミラー２１２の搖動角度が閾値以上である場合（ステップＳ６０４；ＹＥＳ）、センサ２は、現在の駆動電圧を現在の駆動周波数に対する駆動電圧に決定する（ステップＳ６０５）。ステップＳ６０５の処理は、例えば、ミラー駆動部２４０の駆動信号生成部２４１が行う。ステップＳ６０５により駆動電圧を決定すると、センサ２は、電圧調整処理を終了し、決定した駆動電圧を含む処理結果を制御装置３に送信する。
【００５０】
一方、ＭＥＭＳミラー２１２の搖動角度が閾値よりも小さい場合（ステップＳ６０４；ＮＯ）、センサ２は、次に、駆動電圧を所定の電位だけ上昇させ（ステップＳ６０６）、上昇後の駆動電圧が閾値以下であるか否かを判定する（ステップＳ６０７）。ステップＳ６０６及びＳ６０７の処理は、ミラー駆動部２４０の駆動信号生成部２４１が行う。上昇後の駆動電圧が閾値以下である場合（ステップＳ６０７；ＹＥＳ）、センサ２のミラー駆動部２４０は、ステップＳ６０２以降の処理を繰り返す。
【００５１】
これに対し、上昇後の駆動電圧が閾値よりも高い場合（ステップＳ６０７；ＮＯ）、センサ２は、駆動電圧の閾値（上限値）を現在の駆動周波数に対する駆動電圧に決定する（ステップＳ６０８）。ステップＳ６０５の処理は、例えば、ミラー駆動部２４０の駆動信号生成部２４１が行う。ステップＳ６０５により駆動電圧を決定すると、センサ２は、電圧調整処理を終了し、決定した駆動電圧を含む処理結果を制御装置３に送信する。
【００５２】
本実施形態に係る距離測定装置１では、複数の駆動周波数のそれぞれで、各センサ２が図５に示した処理を行い、決定した駆動電圧を制御装置３に送信する。そして、所定の周波数範囲内で選択可能な周波数の全てに対する、各センサ２が決定した駆動電圧を取得すると、制御装置３は、駆動周波数決定処理（ステップＳ９）を行う。駆動周波数決定処理として、制御装置３は、例えば、図６に示した処理を行う。
【００５３】
図６は、駆動周波数決定処理の内容を説明するフローチャートである。
図６の駆動周波数決定処理は、制御装置３の駆動周波数決定部３３０が行う。駆動周波数決定処理を開始すると、駆動周波数決定部３３０は、まず、駆動周波数Ｆ０〜ＦＮ−１のうちの駆動周波数Ｆ０で各センサを駆動させたときの駆動電力の総和Ｗ０を算出する（ステップＳ９０１）。
【００５４】
次に、駆動周波数決定部３３０は、駆動電力の総和の最小値Ｗ、及び駆動電力の総和が最小となる駆動周波数Ｆを、それぞれ、Ｗ＝Ｗ０，Ｆ＝Ｆ０にするとともに、変数ｎを１に設定する（ステップＳ９０２）。
【００５５】
次に、駆動周波数決定部３３０は、駆動周波数Ｆｎで各センサ２を駆動させたときの駆動電力の総和Ｗｎを算出し（ステップＳ９０３）、Ｗｎ＜Ｗであるか否かを判定する（Ｓ９０４）。Ｗｎ＜Ｗである場合（ステップＳ９０４；ＹＥＳ）、駆動周波数決定部３３０は、駆動電力の総和の最小値Ｗ、及び駆動電力の総和が最小となる駆動周波数Ｆを、それぞれ、Ｗ＝Ｗｎ，Ｆ＝Ｆｎに更新する（ステップＳ９０５）。
【００５６】
Ｗｎ≧Ｗである場合（ステップＳ９０４；ＮＯ）、或いはステップＳ９０５の処理を行った場合、駆動周波数決定部３３０は、次に、変数ｎがｎ＞Ｎ＋１であるか否かを判定する（ステップＳ９０６）。ｎ＜Ｎ−１である場合（ステップＳ９０６；ＮＯ）、駆動周波数決定部３３０は、変数ｎをｎ＋１に更新し（ステップＳ９０７）、ステップＳ９０３以降の処理を繰り返す。
【００５７】
そして、変数ｎがｎ≧Ｎ＋１となった場合（ステップＳ９０６；ＹＥＳ）、駆動周波数決定部３３０は、駆動電力の総和が最小値Ｗとなる駆動周波数Ｆを、各センサのＭＥＭＳミラーの駆動周波数に決定する（ステップＳ９０８）。駆動周波数決定部３３０は、ステップＳ９０８で決定した駆動周波数を制御信号生成部３１０に通知し、駆動周波数決定処理を終了する。
【００５８】
ステップＳ９で各センサ２の駆動周波数を決定した後、制御装置３は、決定した駆動周波数のマスタークロックでＭＥＭＳミラーを駆動させて距離の測定処理を行うことを示す制御信号を生成し、第１のセンサ２Ａに送信する（ステップＳ１０及びＳ１１）。第１のセンサ２Ａは、制御装置３から受信した制御信号に基づいてマスタークロックを生成し、生成したマスタークロックを第２のセンサ２Ｂに転送する（ステップＳ１２及びＳ１３）。その後、第１のセンサ２Ａ及び第２のセンサ２Ｂは、それぞれ、マスタークロックに応じた駆動周波数でＭＥＭＳミラー２１２を駆動させながら距離の計測を行う（ステップＳ１４及びＳ１５）。この際、各センサ２は、ＭＥＭＳミラー２１２の動作を同期させる同期処理（ステップＳ１４）を行う。同期処理は、各センサ２のミラー駆動部２４０と、同期制御部２７０とが行う。センサ２のミラー駆動部２４０及び同期制御部２７０は、同期処理として、例えば、図７に示した処理を行う。
【００５９】
図７は、各センサが行う同期処理の内容を説明するフローチャートである。
同期処理を開始すると、センサ２は、まず、マスタークロックに応じた駆動周波数でＭＥＭＳミラー２１２を駆動させる（ステップＳ１４０１）。ステップＳ１４０１の処理は、センサ２のミラー駆動部２４０が行う。この際、同期制御部２７０は、マスタークロックをセンサクロックとしてミラー駆動部２４０の駆動信号生成部２４１に出力する。駆動信号生成部２４１は、マスタークロックの周波数及び位相に基づいて、ＭＥＭＳミラー２１２に対する駆動信号を生成し、ＭＥＭＳミラー２１２に出力する。
【００６０】
次に、センサ２は、ＭＥＭＳミラー２１２の搖動角度が所定の角度になるよう駆動電圧を調整する（ステップＳ１４０２）。ステップＳ１４０２の処理は、ミラー駆動部２４０が行う。ステップＳ１４０２の処理として、ミラー駆動部２４０は、例えば、図５に示したステップＳ６０１〜Ｓ６０８の電圧調整処理を行う。
【００６１】
次に、センサ２は、ＭＥＭＳミラー２１２の搖動周期に基づいてセンサクロックを取得する（ステップＳ１４０３）。ステップＳ１４０３は、ミラー駆動部２４０の角度検出部２４２と、同期制御部２７０のセンサクロック生成部２７１とが行う。角度検出部２４２は、ＭＥＭＳミラー２１２を共振周波数で動作させるときの共振方向に対するＭＥＭＳミラー２１２の搖動角度を検出し、搖動角度の時間変化を示すサイン波を同期制御部２７０に出力する。同期制御部２７０は、センサクロック生成部２７１において、搖動角度の時間変化を示すサイン波を、当該サイン波と同一周波数の矩形波（センサクロック）に変換する。
【００６２】
次に、センサ２は、センサクロックの位相をマスタークロックの位相と同期させる（ステップＳ１４０４）。ステップＳ１４０４の処理は、同期制御部２７０の位相同期部２７２が行う。位相同期部２７２は、センサクロックの位相をマスタークロックの位相と同期させるように駆動信号の位相をPhase Locked Loop（ＰＬＬ）等によって調整する。
【００６３】
次に、センサ２は、センサ信号の位相のオフセット調整を行う（ステップＳ１４０５）。ステップＳ１４０５の処理は、同期制御部２７０のオフセット量算出部２７３と、オフセット調整部２７４とが行う。オフセット量算出部２７３は、ＭＥＭＳミラー２１２の非共振方向の角度に基づいてマスタークロックと位相を同期させたセンサクロックに対する位相のオフセット量を算出する。また、オフセット調整部２７４は、算出したオフセット量に基づいてセンサ信号の位相をオフセット調整する。オフセット調整部２７４がオフセット調整後のセンサ信号をミラー駆動部２４０に出力すると、同期処理が終了する。
【００６４】
同期処理が終了した後、各センサ２は、同期処理により得られたセンサクロックに基づいてＭＥＭＳミラー２１２を駆動させながら、距離の測定処理（ステップＳ１５）を行う。各センサ２は、例えば、水平方向を共振方向としてレーザ光を走査させて対象物までの距離を測定する。この際、各センサ２は、例えば、水平方向のレーザ光の走査を１回終える毎に、図７の同期処理を行い、センサ信号の位相をマスタークロックとの位相と同期させ、更に非共振方向のずれ量に基づくオフセット調整を行ったセンサ信号を生成する。
【００６５】
このように、本実施形態に係る距離測定装置１は、複数の駆動周波数のそれぞれで、各センサのＭＥＭＳミラーを駆動させたときの駆動電圧と搖動角度との関係を調べ、搖動角度が大きく、かつ駆動電力の総和が最小となる駆動周波数を決定する。また、本実施形態においては、複数のセンサ２のうちのマスターセンサに指定された１個のセンサ２で生成したマスタークロックに応じた駆動周波数で、各センサ２におけるＭＥＭＳミラー２１２を駆動する。このため、各センサにおけるＭＥＭＳミラー２１２の共振周波数が異なる場合にも、十分な測定範囲を確保した状態で、各センサ２の測定動作を容易に同期させることが可能となる。よって、本実施形態によれば、各センサ２における距離の測定動作を高精度で同期させることが可能となり、１個（又は１組）の対象物までの距離を複数の方向から同時に測定することが可能となる。
【００６６】
図８は、レーザ光の出射方向の時間変化を説明する図である。
レーザ光を利用して対象物までの距離を測定する場合、図８の（ａ）に示すように、レーザ光５の出射方向を測定範囲ＳＡ内で走査する。図８の（ａ）に示した例では、矩形の測定範囲ＳＡにおける左下角部を走査開始点ＳＳとし、水平方向（第１の方向）でレーザ光５の出射方向を搖動させながら、垂直方向（第２の方向）の角度を上向きに変化させる。そして、レーザ光５の出射方向が測定範囲ＳＡにおける右上角部（走査終了点ＳＥ）に到達すると、センサ２は、１フレーム分の走査を終了する。その後、センサ２は、レーザ光５の出射方向を走査開始点ＳＳの方向に変化させ、次の１フレーム分の走査を開始する。
【００６７】
図８の（ａ）に示した手順でレーザ光５の出射方向の走査する場合、センサ２では、例えば、水平方向の出射方向の制御にＭＥＭＳの共振現象を利用する。ＭＥＭＳの共振周波数を駆動周波数としてＭＥＭＳを搖動させることで、水平面内におけるレーザ光の出射方向を高速で変化させるとともに、レーザ光の出射方向の角度範囲を広くすることが可能となる。
【００６８】
ところが、ＭＥＭＳミラー２１２の共振周波数には、製造時の加工精度に応じて生じる寸法のばらつき等による個体差がある。そのため、複数のセンサのそれぞれで、ＭＥＭＳによる水平方向の走査に共振を利用するラスタスキャンを行った場合、各センサにおける水平方向の走査速度に差異が生じる。よって、複数のセンサのそれぞれで、ＭＥＭＳによる水平方向の走査に共振を利用するラスタスキャンを行った場合、例えば、図８の（ｂ）に示すように、第１のセンサ２Ａにおける１フレーム期間（フレームレート）と、第２のセンサ２Ｂにおける１フレーム期間とに時間差が生じる。ここで、フレームレートは、センサ２において走査開始点ＳＳから、走査終了点ＳＥまでレーザ光５を走査し、走査開始点ＳＳへ戻るまでに要する時間である。
【００６９】
このように、各センサ２のＭＥＭＳミラー２１２を共振周波数で駆動させた場合、測定範囲内の測定に要する時間が異なるため、１個又は１組の対象物までの距離を複数の方向から同時に測定することは困難である。よって、１個又は１組の対象物までの距離を複数の方向から同時に測定するため、本実施形態では、各センサ２のＭＥＭＳミラー２１２を同一駆動周波数で駆動させる。
【００７０】
図９は、ＭＥＭＳミラーの駆動周波数と搖動動角度との関係を示す図である。
図９の（ａ）には、第１のセンサ２ＡのＭＥＭＳミラー２１２についての駆動周波数と搖動角度との関係を示す曲線ＰＡと、第２のセンサ２ＢのＭＥＭＳミラー２１２についての駆動周波数と搖動角度との関係を示す曲線ＰＢとを示している。
【００７１】
ＭＥＭＳミラー２１２における駆動周波数と搖動角度との間には、次のような関係がある。ＭＥＭＳミラー２１２は、駆動電圧が一定である場合、共振周波数で駆動させたときの搖動角度が最大値となり、駆動周波数と共振周波数との差が大きくなると搖動角度が小さくなる。すなわち、図９の（ａ）に示した例では、第１のセンサ２ＡのＭＥＭＳミラー２１２についての共振周波数は駆動周波数Ｆ１であり、第２のセンサ２ＢのＭＥＭＳミラー２１２についての共振周波数は駆動周波数Ｆ２（＞Ｆ１）である。このため、第１のセンサ２ＡのＭＥＭＳミラー２１２及び第２のセンサ２ＢのＭＥＭＳミラー２１２をそれぞれ共振周波数で駆動させた場合、図８の（ｂ）に示したように、１フレーム期間に時間差が生じ、対象物までの距離を同時に測定することができない。
【００７２】
また、第１のセンサ２ＡのＭＥＭＳミラー２１２と、第２のセンサ２ＢのＭＥＭＳミラー２１２とを同一周波数（例えば、共振周波数の平均値Ｆａｖｅ）で駆動させた場合、各ＭＥＭＳミラー２１２の搖動角度は、最大値と比べて小さくなる。
【００７３】
これに対し、例えば、１個のセンサ２ＡのＭＥＭＳミラー２１２の同一の駆動周波数で駆動電圧を変えて駆動させた場合、駆動周波数と搖動角度との関係は、図９の（ｂ）に示したような関係となる。すなわち、駆動周波数が一定である場合、駆動電圧を高くすることで、搖動角度を大きくすることが可能となる。なお、図９の（ｂ）における搖動角度θｍａｘは、ＭＥＭＳミラー２１２の搖動可能な角度範囲の上限値である。
【００７４】
よって、本実施形態に係る電圧調整処理では、上記のように、複数の駆動周波数のそれぞれで、ＭＥＭＳミラー２１２を駆動させたときの搖動角度が閾値以上となるまで駆動電圧を上昇させる。そして、各センサ２のＭＥＭＳミラー２１２を同一駆動周波数で駆動させたときに駆動電力が最小値となる周波数を、各センサ２のＭＥＭＳミラー２１２の駆動周波数に決定する。これにより、共振周波数が異なる複数のＭＥＭＳミラー２１２を同一周波数で駆動させることが可能となり、ＭＥＭＳミラーを備えた複数のセンサにおける距離の測定タイミングを一致させることが可能となる。また、本実施形態に係る駆動周波数の決定方法によれば、搖動角度が狭くなることと、消費電力の増大することとを抑制しつつ、各センサ２における距離の測定タイミングを一致させることが可能となる。
【００７５】
図１０は、共振周波数とは異なる駆動周波数でＭＥＭＳミラーを駆動させた場合の搖動振幅の時間変化を説明する波形図である。
【００７６】
本実施形態に係る距離測定装置１では、上記のように、搖動角度が狭くなることと、消費電力の増大することとを抑制しつつ、各センサ２のＭＥＭＳミラー２１２の動作を同期させることが可能な駆動周波数を決定する。しかしながら、本実施形態に係る距離測定装置１では、個々のＭＥＭＳミラー２１２の駆動周波数が共振周波数から外れるため、ＭＥＭＳミラー２１２毎の駆動周波数の位相に差異が生じる。例えば、図１０には、共振周波数と異なる駆動周波数で第１のセンサ２Ａ及び第２のセンサ２Ｂを駆動させた場合の、第１のセンサ２Ａにおける搖動振幅の時間変化を示す曲線Ｍ１と、第２のセンサ２における搖動振幅の時間変化を示す曲線Ｍ２とを示している。また、図１０には、周波数Ｆの駆動信号Ｄ（Ｆ）を示している。このように、共振周波数とは異なる駆動周波数でＭＥＭＳミラー２１２を動作させた場合、共振周波数からの差に応じて位相にずれが生じる。
【００７７】
よって、本実施形態では、上記の同期処理を行い、各センサ２においてＭＥＭＳミラー２１２の駆動信号の生成に利用するセンサ信号（センサクロック）の周波数をマスタークロックに同期させるとともに、センサ信号の位相を一致させる。本実施形態に係る距離測定装置１では、上記のように、複数のセンサ２のうちのマスターセンサに指定したセンサ２Ａにおいて、駆動周波数と対応するマスタークロックを生成し、当該マスタークロックを他のセンサ２に送信する。これにより、マスターセンサ２Ａを含む複数のセンサ２は、それぞれ、同一のマスタークロックに基づいて、自センサ２における角度検出部２４２から出力されるモニター信号に基づいて生成したセンサ信号（センサクロック）の位相を調整することが可能となる。
【００７８】
更に、本実施形態では、ＭＥＭＳミラー２１２の非共振方向についての角度の変化量に基づいて位相オフセット量を算出し、算出したオフセット量に基づいてセンサ信号の位相をオフセット調整する。
【００７９】
図１１は、垂直方向の角度と駆動信号の位相差との関係を説明するグラフ図である。
ＭＥＭＳミラー２１２におけるレーザ光５の走査は、例えば、図８の（ａ）に示したようなラスタスキャンで行われる。このため、例えば、レーザ光５の出射方向を走査終了点ＳＥから走査開始点ＳＳに戻すのに要する時間の影響等により、駆動信号の位相が変動してしまうことがある。図１１に示した太い点線は、ＭＥＭＳミラー２１２における垂直方向（非共振方向）の駆動角度の時間変化を示している。また、図１１に示した太い曲線は、オフセット量算出部２７２で算出されるセンサ信号の位相のオフセット量（位相差）を示している。図１１に示したように、ＭＥＭＳミラー２１２の垂直方向の駆動角度が減少している時間Ｔ１〜Ｔ２では、位相差が局所的に変動し上昇している。本実施形態では、このようなＭＥＭＳミラー２１２の垂直方向の駆動角度の変化により生じる局所的な位相差の変動に対してもオフセット量を算出し、センサ信号の位相のオフセット調整を行う。このため、本実施形態によれば、距離測定装置１の立ち上げ時や、温度変化等による比較的長い周期に対する位相差の調整だけでなく、１フレーム内の比較的高速な位相変動を調整することも可能となる。
【００８０】
なお、本実施形態に係るセンサ２の機能的構成は、図２に示した構成に限らず、適宜変更可能である。同様に、本実施形態に係る制御装置３の機能的構成は、図３に示した構成に限らず、適宜変更可能である。例えば、センサ２は、１フレーム期間分のレーザ光の走査を行う際に、垂直方向を共振方向とし、水平方向を非共振方向としてＭＥＭＳミラー２１２を駆動させるものであってもよい。
【００８１】
また、本実施形態に係る距離測定装置１が行う処理は、図４Ａ，図４Ｂ，及び図５〜図７に示した処理に限らず、適宜変更可能である。例えば、電圧調整処理（ステップＳ６）において掃引する周波数範囲は、複数のセンサ２のそれぞれにおける共振周波数のうちの、最小周波数から最大周波数までとしてもよい。
【００８２】
更に、本実施形態に係る距離測定装置１におけるセンサ２の個数は、図１等に示した４個に限らず、２個又は３個であってもよいし、５個以上であってもよい。
【００８３】
図１２は、センサのハードウェア構成を示す図である。図１３は、同期制御回路の構成を示す図である。
【００８４】
図１２に示すように、本実施形態に係るセンサ２は、投光部２１０として機能する、レーザダイオード２０１１と、ＭＥＭＳミラー２０１２とを備える。レーザダイオード２０１１から出射したレーザ光５は、ＭＥＭＳミラー２０１２で反射した後、所定の出射方向に進行する。また、センサ２は、受光部２２０として機能する、受光素子２０２０と、バンドパスフィルタ２０２１と、集光レンズ２０２２とを備える。対象物等で反射したレーザ光５’は、バンドパスフィルタ２０２１、及び集光レンズ２０２２を通過し、受光素子２０２０に入射する。受光素子２０２０は、入射したレーザ光５’の強度に応じた電気信号を出力する。
【００８５】
また、センサ２は、レーザ駆動部２３０として機能するレーザ駆動回路２０３０と、ミラー駆動部２４０として機能するミラー駆動回路２０４０と、飛行時間測定部２５０として機能する飛行時間測定回路２０５０とを備える。このうち、ミラー駆動回路２０４０は、駆動信号生成部２４１として機能する駆動信号生成回路２０４１と、角度検出部２４２として機能する角度センサ２０４２とを含む。ここで、角度センサ２０４０は、図１３に示すように、ＭＥＭＳミラー２０１２の水平方向（共振方向）の角度を検出する水平方向センサ２０４２−１と、ＭＥＭＳミラー２０１２の垂直方向（非共振方向）の角度を検出する垂直方向センサ２０４２−２とを含む。
【００８６】
更に、センサ２は、測定制御部２６０として機能する測定制御回路２０６０と、同期制御部２７０として機能する同期制御回路２０７０と、マスタークロック生成部２８０として機能するクロック生成回路２０８０とを備える。
【００８７】
センサ２の同期制御回路２０７０は、図１３に示すように、矩形波変換回路２０７１と、位相同期回路２０７２と、位相オフセット量算出回路２０７３と、位相オフセット調整回路２０７４とを含む。矩形波変換回路２０７１はセンサクロック生成部２７１として機能し、位相同期回路２０７２は、位相同期部２７２として機能する。位相オフセット量算出回路２０７３はオフセット量算出部２７３として機能し、位相オフセット調整回路２０７４はオフセット調整部２７４として機能する。
【００８８】
なお、本実施形態に係るセンサ２のハードウェア構成は、図１２及び図１３に示した構成に限らず、適宜変更可能である。例えば、センサ２における上記の回路は、それぞれ、別個の回路装置（回路部品）であってもよいし、１個の回路装置に内蔵されていてもよい。
【００８９】
［第２の実施形態］
図１４は、第２の実施形態に係る距離測定装置におけるセンサの機能的構成を示す図である。
【００９０】
図１４に示すように、本実施形態の距離測定装置１におけるセンサ２は、投光部２１０と、受光部２２０と、レーザ駆動部２３０と、ミラー駆動部２４０と、飛行時間（距離）測定部２５０と、測定制御部２６０と、を備える。また、センサ２は、同期制御部２７０と、マスタークロック生成部２８０と、を更に備える。本実施形態に係るセンサ２のうち、同期制御部２７０を除く他の機能ブロックは、それぞれ、第１の実施形態に係るセンサ２の機能ブロックと同様の機能をもつ。
【００９１】
本実施形態に係るセンサ２の同期制御部２７０は、マスタークロック生成部２８０で生成したマスタークロック、或いは前段のセンサ２から転送されたマスタークロックに基づいて、自センサ２のミラー駆動部２４０の動作を、他のセンサ２のミラー駆動部２４０の動作と同期させる。本実施形態に係るセンサ２の同期制御部２７０は、センサクロック生成部２７１と、位相同期部２７２と、オフセット量算出部２７３と、オフセット調整部２７４と、垂直ずれ量補正部２７５と、補正量テーブル２７９とを含む。センサクロック生成部２７１は、ミラー駆動部２４０の角度検出部２４２による共振方向の振幅の検出結果に基づいて、ＭＥＭＳミラー２１２の共振方向の搖動周波数と対応したセンサクロック（センサ内クロック）を生成する。位相同期部２７２は、生成したセンサ信号の位相を、マスタークロックの位相と同期させる。オフセット量算出部２７３は、ミラー駆動部２４０の角度検出部２４２による非共振方向の角度の検出結果に基づいて、センサ信号の位相についてのオフセット量を算出する。ここで、非共振方向は、共振方向と直交する方向とする。また、位相のオフセット量は、レーザ光の出射方向の非共振方向の角度変化により生じるセンサ信号の位相のずれ量とする。垂直ずれ量補正部２７５は、予め用意した補正量テーブル２７９に基づいて、１フレーム内におけるＭＥＭＳミラー２１２の垂直方向の角度変化に対する位相の補正量を算出する。オフセット調整部２７４は、オフセット量産出部２７３で算出したオフセット量と、垂直ずれ量補正部２７５で算出した補正量とに基づいて、ミラー駆動部２４０に出力するセンサ信号の位相を調整する。
【００９２】
図１５は、補正量テーブルを示す図である。
本実施形態に係るセンサ２の補正量テーブル２７９は、例えば、図１５に示すように、ＭＥＭＳミラー２１２の垂直方向（非共振方向）の角度と、補正時間（位相の補正量）との対応関係が登録されたテーブルである。すなわち、本実施形態に係る距離計測装置１では、第１の実施形態で説明した位相のオフセット量と、ＭＥＭＳミラー２１２の垂直方向（非共振方向）の角度とに基づいて、センサ信号の位相を調整する。補正量テーブル２７９は、例えば、予め各センサ２のＭＥＭＳミラー２１２を共振周波数等の所定の駆動周波数で駆動させたときのＭＥＭＳミラー２１２の非共振方向の角度と、センサ信号の位相のずれ量とに基づいて作成しておく。ここで、センサ信号の位相のずれ量は、例えば、１フレーム期間における実測値と、ＭＥＭＳミラー２１２の仕様に基づいて算出した理論値との差とする。
【００９３】
本実施形態に係る距離測定装置１は、第１の実施形態の距離測定装置１と同様、図４Ａ及び図４Ｂに示した処理を行う。この際、各センサ２のＭＥＭＳミラー２１２の駆動周波数を決定する事前処理（ステップＳ１〜Ｓ９）は、第１の実施形態で説明した手順で行う。これに対し、事前処理で決定した駆動周波数でＭＥＭＳミラー２１２を駆動させて距離の測定を行う際の同期処理（ステップＳ１４）として、各センサ２は、例えば、図１６に示したような処理を行う。
【００９４】
図１６は、第２の実施形態に係る距離測定装置における各センサが行う同期処理の内容を説明するフローチャートである。
【００９５】
本実施形態に係るセンサ２は、同期処理を開始すると、まず、マスタークロックに応じた駆動周波数でＭＥＭＳミラー２１２を駆動させる（ステップＳ１４０１）。ステップＳ１４０１の処理は、センサ２のミラー駆動部２４０が行う。この際、同期制御部２７０は、マスタークロックをセンサ信号としてミラー駆動部２４０の駆動信号生成部２４１に出力する。駆動信号生成部２４１は、マスタークロックの周波数及び位相に基づいて、ＭＥＭＳミラー２１２に対する駆動信号を生成し、ＭＥＭＳミラー２１２に出力する。
【００９６】
次に、センサ２は、ＭＥＭＳミラー２１２の搖動角度が所定の角度になるよう駆動電圧を調整する（ステップＳ１４０２）。ステップＳ１４０２の処理は、ミラー駆動部２４０が行う。ステップＳ１４０２の処理として、ミラー駆動部２４０は、例えば、図５に示したステップＳ６０１〜Ｓ６０８の電圧調整処理を行う。
【００９７】
次に、センサ２は、ＭＥＭＳミラーの搖動周期に基づいてセンサ信号を取得する（ステップＳ１４０３）。ステップＳ１４０３は、ミラー駆動部２４０の角度検出部２４２と、同期制御部２７０のセンサクロック生成部２７１とが行う。角度検出部２４２は、ＭＥＭＳミラー２１２を共振周波数で動作させるときの共振方向に対するＭＥＭＳミラー２１２の搖動角度を検出し、搖動角度の時間変化を示すサイン波を同期制御部２７０に出力する。同期制御部２７０は、センサクロック生成部２７１において、搖動角度の時間変化を示すサイン波を、当該サイン波と同一周波数の矩形波（センサクロック）に変換する。
【００９８】
次に、センサ２は、センサクロックの位相をマスタークロックの位相と同期させる（ステップＳ１４０４）。ステップＳ１４０４の処理は、同期制御部２７０の位相同期部２７２が行う。位相同期部２７２は、センサクロックの位相をマスタークロックの位相と同期させるように駆動信号の位相をＰＬＬ等によって調整する。
【００９９】
次に、センサ２は、ＭＥＭＳミラー２１２の垂直方向の角度と、補正量テーブル２７９とに基づいて、垂直方向の角度の変化に伴う位相ずれに対する補正量を算出する（ステップＳ１４０６）。ステップＳ１４０６の処理は、垂直ずれ量補正部２７５が行う。
【０１００】
次に、センサ２は、センサ信号の位相のオフセット調整を行う（ステップＳ１４０５）。ステップＳ１４０５の処理は、同期制御部２７０のオフセット量算出部２７３と、オフセット調整部２７４とが行う。オフセット量算出部２７３は、ＭＥＭＳミラー２１２の非共振方向の角度に基づいてマスタークロックと位相を同期させたセンサ信号に対する位相のオフセット量を算出する。オフセット調整部２７４は、オフセット量算出部２７３で算出したオフセット量と、垂直ずれ量補正部２７５で算出した補正量とに基づいてセンサ信号の位相をオフセット調整する。オフセット調整部２７４がオフセット調整後のセンサ信号をミラー駆動部２４０に出力すると、同期処理が終了する。
【０１０１】
同期処理が終了した後、各センサ２は、同期処理により得られたセンサ信号に基づいてＭＥＭＳミラー２１２を駆動させながら、距離の測定処理（ステップＳ１５）を行う。各センサ２は、例えば、水平方向を共振方向としてレーザ光を操作させて対象物までの距離を測定する。この際、各センサ２は、例えば、水平方向のレーザ光の走査を１回終える毎に、図１６の同期処理を行い、マスタークロックと位相を同期させ、更に非共振方向のずれ量に基づくオフセット調整を行ったセンサ信号を生成する。
【０１０２】
このように、本実施形態に係る距離測定装置１の各センサ２は、例えば、水平方向のレーザ光の走査を１回終える毎に、図１６の同期処理を行い、マスタークロックと位相を同期させ、更に非共振方向のずれ量に基づくオフセット調整を行ったセンサ信号を生成する。このため、本実施形態によれば、１フレーム期間内においてＭＥＭＳミラー２１２の垂直方向の角度変化により生じる位相のずれを抑制することが可能となり、複数のセンサ２の同期精度を更に向上させることが可能となる。
【０１０３】
本実施形態に係るセンサ２のハードウェア構成は、図１２に示したハードウェア構成と同様である。ただし、本実施形態に係るセンサ２において同期制御部２７０として機能する同期回路２０７０は、図１７に示すような回路構成となる。
【０１０４】
図１７は、第２の実施形態に係るセンサにおける同期制御回路の構成を示す図である。
図１７に示すように、本実施形態に係るセンサ２の同期制御回路２０７０は、矩形波変換回路２０７１と、位相同期回路２０７２と、位相オフセット量算出回路２０７３と、位相オフセット調整回路２０７４とを含む。矩形波変換回路２０７１はセンサクロック生成部２７１として機能し、位相同期回路２０７２は、位相同期部２７２として機能する。位相オフセット量算出回路２０７３はオフセット量算出部２７３として機能し、位相オフセット調整回路２０７４はオフセット調整部２７４として機能する。
【０１０５】
また、本実施形態に係るセンサ２の同期制御回路２０７０は、更に、位相ずれ補正量算出回路２０７５と、補正量テーブル２７９とを含む。位相ずれ補正量算出回路２０７５は、垂直ずれ量補正部２７５として機能する。
【０１０６】
［第３の実施形態］
本実施形態では、センサ２の同期制御部２７０（同期制御回路２０７０）においてマスタークロックの位相を調整可能にした距離測定装置１について説明する。
【０１０７】
本実施形態に係る距離測定装置１におけるセンサ２のハードウェア構成は、図１２に示したハードウェア構成と同様である。ただし、本実施形態に係るセンサ２において同期制御部２７０として機能する同期回路２０７０は、図１８に示すような回路構成となる。
【０１０８】
図１８は、第３の実施形態に係るセンサにおける同期制御回路の構成を示す図である。
図１８に示すように、本実施形態に係るセンサ２の同期制御回路２０７０は、矩形波変換回路２０７１と、位相同期回路２０７２と、位相オフセット量算出回路２０７３と、位相オフセット調整回路２０７４とを含む。矩形波変換回路２０７１はセンサクロック生成部２７１として機能し、位相同期回路２０７２は、位相同期部２７２として機能する。位相オフセット量算出回路２０７３はオフセット量算出部２７３として機能し、位相オフセット調整回路２０７４はオフセット調整部２７４として機能する。
【０１０９】
また、本実施形態に係るセンサ２の同期制御回路２０７０は、更に、位相調整回路２０７６を含む。センサ２がマスターセンサに指定されたセンサである場合、位相調整回路２０７６は、クロック生成回路２０８０で生成したマスタークロックの位相を調整する。また、センサ２がマスターセンサに指定されたセンサを除く他のセンサである場合、位相調整回路２０７６は、マスターセンサから転送されたマスタークロックの位相を調整する。位相調整回路２０７６は、例えば、マスターセンサから自センサ２までの伝送路において生じるマスタークロックの遅延によるセンサ間でのマスタークロックの位相のずれを補正する調整等を行う。また、位相調整回路２０７６は、例えば、各センサ２による距離の測定処理の態様に応じて、センサ２毎に独立してマスタークロックの位相を調整してもよい。
【０１１０】
上記の各実施形態で説明した距離測定装置１における制御装置３は、例えば、コンピュータと、該コンピュータに実行させる制御プログラムとにより実現可能である。以下、図１９を参照して、コンピュータとプログラムとにより実現される制御装置３について説明する。
【０１１１】
図１９は、コンピュータのハードウェア構成を示す図である。
図１９に示すように、コンピュータ９は、プロセッサ９０１と、主記憶装置９０２と、補助記憶装置９０３と、入力装置９０４と、出力装置９０５と、入出力インタフェース９０６と、通信制御装置９０７と、媒体駆動装置９０８と、を備える。コンピュータ９におけるこれらの要素９０１〜９０８は、バス９１０により相互に接続されており、要素間でのデータの受け渡しが可能になっている。
【０１１２】
プロセッサ９０１は、Central Processing Unit（ＣＰＵ）やMicro Processing Unit（ＭＰＵ）等である。プロセッサ９０１は、オペレーティングシステムを含む各種のプログラムを実行することにより、コンピュータ９の全体の動作を制御する。また、プロセッサ９０１は、例えば、図４Ａ及び図４Ｂに示したシーケンス図において制御装置３が行う各処理を含む制御プログラムを実行する。プロセッサ９０１が実行する制御プログラムにおける駆動周波数決定処理（ステップＳ９）は、例えば、図６のフローチャートに示したステップＳ９０１〜Ｓ９０８を含む。
【０１１３】
主記憶装置９０２は、図示しないRead Only Memory（ＲＯＭ）及びRandom Access Memory（ＲＡＭ）を含む。主記憶装置９０２のＲＯＭには、例えば、コンピュータ９の起動時にプロセッサ９０１が読み出す所定の基本制御プログラム等が予め記録されている。一方、主記憶装置９０２のＲＡＭは、プロセッサ９０１が、各種のプログラムを実行する際に必要に応じて作業用記憶領域として使用する。主記憶装置９０２のＲＡＭは、例えば、図３に示した距離測定装置１における記憶部３９０として利用可能である。
【０１１４】
補助記憶装置９０３は、主記憶装置９０２のＲＡＭと比べて容量の大きい記憶装置であり、例えば、Hard Disk Drive（ＨＤＤ）や、フラッシュメモリのような不揮発性メモリ（Solid State Drive（ＳＳＤ）を含む）等である。補助記憶装置９０３は、プロセッサ９０１によって実行される各種のプログラムや各種のデータ等の記憶に利用可能である。補助記憶装置９０３は、例えば、図４Ａ及び図４Ｂに示したシーケンス図において制御装置３が行う各処理を含む制御プログラムを等の記憶に利用可能である。また、補助記憶装置９０３は、例えば、図３の制御装置３における記憶部３９０として利用可能である。
【０１１５】
入力装置９０４は、例えば、キーボード装置やタッチパネル装置等である。コンピュータ９のオペレータ（利用者）が入力装置９０４に対して所定の操作を行うと、入力装置９０４は、その操作内容に対応付けられている入力情報をプロセッサ９０１に送信する。入力装置９０４は、例えば、事前処理や距離の測定を開始させる命令、コンピュータ９が実行可能な他の処理に関する命令等の入力や、各種設定値の入力等に利用可能である。
【０１１６】
出力装置９０５は、例えば、液晶表示装置等の表示装置やプリンタである。出力装置９０５は、例えば、事前処理の結果（駆動周波数決定処理で決定した駆動周波数）や、対象物までの距離の測定結果等を可視化してオペレータに提示することに利用可能である。
【０１１７】
入出力インタフェース９０６は、コンピュータ９と、他の電子機器とを接続する。入出力インタフェース９０６は、例えば、Universal Serial Bus（ＵＳＢ）規格のコネクタ等を備える。入出力インタフェース９０６は、例えば、コンピュータ９とＮ個のセンサ２Ａ〜２Ｎとの接続等に利用可能である。
【０１１８】
通信制御装置９０７は、コンピュータ９をインターネット等のネットワークに接続し、ネットワークを介したコンピュータ９と他の通信機器との各種通信を制御する装置である。通信制御装置９０７は、例えば、コンピュータ９と、コンピュータ９で算出した距離情報を集約して管理するサーバ装置等との通信に利用可能である。また、通信制御装置９０７は、例えば、コンピュータ９と、複数個のセンサ２との接続にも利用可能である。
【０１１９】
媒体駆動装置９０８は、可搬型記憶媒体１０に記録されているプログラムやデータの読み出し、補助記憶装置９０３に記憶されたデータ等の可搬型記憶媒体１０への書き込みを行う。媒体駆動装置９０８には、例えば、１種類又は複数種類の規格に対応したメモリカード用リーダ／ライタが利用可能である。媒体駆動装置９０８としてメモリカード用リーダ／ライタを用いる場合、可搬型記憶媒体１０としては、メモリカード用リーダ／ライタが対応している規格、例えば、Secure  Digital（ＳＤ）規格のメモリカード（フラッシュメモリ）等を利用可能である。また、可搬型記録媒体１０としては、例えば、ＵＳＢ規格のコネクタを備えたフラッシュメモリが利用可能である。更に、コンピュータ９が媒体駆動装置９０８として利用可能な光ディスクドライブを搭載している場合、当該光ディスクドライブで認識可能な各種の光ディスクを可搬型記録媒体１０として利用可能である。可搬型記録媒体１０として利用可能な光ディスクには、例えば、Compact Disc（ＣＤ）、Digital Versatile Disc（ＤＶＤ）、Blu-ray Disc（Blu-rayは登録商標）等がある。可搬型記録媒体１０は、例えば、図４Ａ及び図４Ｂに示したシーケンス図において制御装置３が行う各処理を含む制御プログラムを等の記憶に利用可能である。また、補助記憶装置９０３は、例えば、図３の制御装置３における記憶部３９０として利用可能である。
【０１２０】
オペレータが入力装置９０４等を利用して距離の測定を開始する命令をコンピュータ９に入力すると、プロセッサ９０１が、補助記憶装置９０３等の非一時的な記録媒体に記憶させた制御プログラムを読み出して実行する。この処理において、プロセッサ９０１は、図３の制御装置３における制御信号生成部３１０、情報収集部３２０、及び駆動周波数決定部３３０として機能する。また、コンピュータ９の入出力インタフェース９０６は、制御装置３の通信部３０５として機能する。更に、コンピュータ９の主記憶装置９０２、補助記憶装置９０３、及び可搬型記録媒体１０等は、制御装置３の記憶部３９０として機能する。
【０１２１】
なお、距離測定装置１として動作させるコンピュータ９は、図１０に示した全ての要素９０１〜９０８を含む必要はなく、用途や条件に応じて一部の要素を省略することも可能である。例えば、コンピュータ９は、通信制御装置９０７や媒体駆動装置９０８が省略されたものであってもよい。
【０１２２】
以上記載した各実施形態に関し、更に以下の付記を開示する。
（付記１）
レーザ光の出射方向を制御するＭＥＭＳミラーを備えた複数のセンサのそれぞれにおける前記ＭＥＭＳミラーを同一の駆動周波数で駆動させたときに所定の条件を満たす前記ＭＥＭＳミラーの駆動電圧を収集する情報収集部と、
複数の駆動周波数のそれぞれについて収集した前記ＭＥＭＳミラーの前記駆動電圧に基づいて、前記複数のセンサによる距離の測定を行う際の前記ＭＥＭＳミラーの駆動周波数を決定する駆動周波数決定部と、
決定した前記駆動周波数を前記複数のセンサのそれぞれにおける前記ＭＥＭＳミラーの駆動周波数に指定する情報を含む制御信号を生成して前記複数のセンサに送信する制御信号生成部と、
を備えることを特徴とする距離測定装置。
（付記２）
前記所定の条件を満たす駆動電圧は、前記ＭＥＭＳミラーの搖動角度が閾値以上となる最小駆動電圧、或いは予め設定された駆動電圧の上限値である、
ことを特徴とする付記１に記載の距離測定装置。
（付記３）
前記距離測定装置は、前記複数のセンサを含み、
前記複数のセンサは、それぞれ、前記制御信号により指定された前記駆動周波数で前記ＭＥＭＳミラーを駆動させたときの前記ＭＥＭＳミラーの搖動角度が所定の角度範囲以上となる駆動電圧に基づいて、或いは予め設定した駆動電圧の上限値に基づいて、前記ＭＥＭＳミラーの駆動信号を生成する駆動信号生成部を備え、
前記制御信号生成部は、前記複数の駆動周波数のそれぞれを前記ＭＥＭＳミラーの駆動周波数に指定する情報を含む制御信号を生成して前記複数のセンサに送信し、
前記情報収集部は、前記複数のセンサの前記駆動信号生成部において生成する前記駆動信号の前記駆動電圧を収集する、
ことを特徴とする付記１に記載の距離測定装置。
（付記４）
前記複数のセンサの少なくとも１個のセンサは、前記制御信号に指定された駆動周波数のマスタークロックを生成するマスタークロック生成部を備え、
前記複数のセンサは、前記ＭＥＭＳミラーを駆動させる駆動信号の生成に用いるセンサクロックの位相を、前記マスタークロックの位相と同期させる位相同期部とを備え、
前記制御信号生成部は、前記複数のセンサのうちの前記マスタークロック生成部を備えた１個の前記センサに前記制御信号を送信し、
前記制御信号を受信した前記センサは、生成した前記マスタークロックを他の前記センサに転送する、
ことを特徴とする付記３に記載の距離測定装置。
（付記５）
前記複数のセンサの前記駆動信号生成部は、それぞれ、第１の方向における前記ＭＥＭＳミラーの角度を前記駆動周波数で制御するとともに、前記第１の方向とは異なる第２の方向における前記ＭＥＭＳミラーの角度を１方向に制御する前記駆動信号を生成し、
前記複数のセンサは、それぞれ、前記第２の方向における前記ＭＥＭＳミラーの角度に基づいて前記センサクロックの位相をオフセット調整するオフセット調整部、を更に備える、
ことを特徴とする付記４に記載の距離測定装置。
（付記６）
前記複数のセンサは、それぞれ、前記第２の方向における前記ＭＥＭＳミラーの角度と、前記駆動信号における位相のずれ量との対応関係を示す補正量テーブルと、前記第２の方向における前記ＭＥＭＳミラーの角度と、前記補正量テーブルとに基づいて前記センサクロックの位相の補正量を算出するずれ量補正部、を更に備える、
ことを特徴とする付記５に記載の距離測定装置。
（付記７）
前記複数のセンサは、それぞれ、前記マスタークロックの位相を調整する位相調整部、を更に備える、
ことを特徴とする付記５に記載の距離測定装置。
（付記８）
前記ＭＥＭＳミラーの前記駆動電圧を収集する前記複数の駆動周波数は、複数の前記ＭＥＭＳミラーの共振周波数のうちの最小周波数と、最大周波数との間の周波数とする、
ことを特徴とする付記１に記載の距離測定装置。
（付記９）
前記駆動周波数決定部は、前記複数のセンサの前記ＭＥＭＳミラーの駆動電力の総和が最小となる駆動周波数を決定する、
ことを特徴とする付記１に記載の距離測定装置。
（付記１０）
コンピュータが、
レーザ光の出射方向を制御するＭＥＭＳミラーを備えた複数のセンサのそれぞれにおける前記ＭＥＭＳミラーを同一の駆動周波数で駆動させたときに所定の条件を満たす前記ＭＥＭＳミラーの駆動電圧を収集し、
複数の駆動周波数のそれぞれについて収集した前記ＭＥＭＳミラーの前記駆動電圧に基づいて、前記複数のセンサによる距離の測定を行う際の前記ＭＥＭＳミラーの駆動周波数を決定し、
決定した前記駆動周波数を前記複数のセンサのそれぞれにおける前記ＭＥＭＳミラーの駆動周波数に指定する情報を含む制御信号を生成して前記複数のセンサに送信し、
前記複数のセンサのそれぞれが前記ＭＥＭＳミラーを前記制御信号で指定された前記駆動周波数で駆動させて測定した前記センサから距離の測定対象である対象物までの距離の測定結果を取得する、
処理を実行する距離測定方法。
（付記１１）
前記制御信号を前記複数のセンサに送信する処理において、前記コンピュータは、
前記複数のセンサのうちの１個のセンサを選択し、
選択した前記センサに前記制御信号を送信し、当該センサに前記制御信号で指定した駆動周波数のマスタークロックを生成させるとともに、生成した前記マスタークロックを他のセンサに転送させ、
前記複数のセンサのそれぞれに、前記ＭＥＭＳミラーを駆動させる駆動信号の生成に用いるセンサクロックの位相を、前記マスタークロックの位相と同期させる、
ことを特徴とする付記１０に記載の距離測定方法。
（付記１２）
前記複数のセンサは、それぞれ、第１の方向における前記ＭＥＭＳミラーの角度を前記駆動周波数で制御するとともに、前記第１の方向とは異なる第２の方向における前記ＭＥＭＳミラーの角度を１方向に制御し、
前記複数のセンサは、それぞれ、前記第２の方向における前記ＭＥＭＳミラーの角度と、前記センサクロックにおける位相のずれ量との対応関係を示す補正量テーブルを参照して前記センサクロックの位相の補正量を算出する、
ことを特徴とする付記１１に記載の距離測定方法。
（付記１３）
前記駆動周波数を決定する処理において、前記コンピュータは、前記複数のセンサの前記ＭＥＭＳミラーの駆動電力の総和が最小となる駆動周波数を決定する、
ことを特徴とする付記１０に記載の距離測定方法。
（付記１４）
レーザ光の出射方向を制御するＭＥＭＳミラーを備えた複数のセンサのそれぞれにおける前記ＭＥＭＳミラーを同一の駆動周波数で駆動させたときに所定の条件を満たす前記ＭＥＭＳミラーの駆動電圧を収集し、
複数の駆動周波数のそれぞれについて収集した前記ＭＥＭＳミラーの前記駆動電圧に基づいて、前記複数のセンサによる距離の測定を行う際の前記ＭＥＭＳミラーの駆動周波数を決定し、
決定した前記駆動周波数を前記複数のセンサのそれぞれにおける前記ＭＥＭＳミラーの駆動周波数に指定する情報を含む制御信号を生成して前記複数のセンサに送信し、
前記複数のセンサのそれぞれが前記ＭＥＭＳミラーを前記制御信号で指定された前記駆動周波数で駆動させて測定した前記センサから距離の測定対象である対象物までの距離の測定結果を取得する、
処理をコンピュータに実行させる距離測定プログラム。
（付記１５）
前記制御信号を前記複数のセンサに送信する処理は、
前記複数のセンサのうちの１個のセンサを選択し、
選択した前記センサに前記制御信号を送信し、当該センサに前記制御信号で指定した駆動周波数のマスタークロックを生成させるとともに、生成した前記マスタークロックを他のセンサに転送させ、
前記複数のセンサのそれぞれに、前記ＭＥＭＳミラーを駆動させる駆動信号の生成に用いるセンサクロックの位相を、前記マスタークロックの位相と同期させる、
ことを特徴とする付記１４に記載の距離測定プログラム。
（付記１６）
前記駆動周波数を決定する処理では、前記複数のセンサの前記ＭＥＭＳミラーの駆動電力の総和が最小となる駆動周波数を決定する、
ことを特徴とする付記１４に記載の距離測定プログラム。
【符号の説明】
【０１２３】
１  距離測定装置
２，２Ａ〜２Ｄ  センサ
３  制御装置
４  対象物
５，５’  レーザ光
９  コンピュータ
１０  可搬型記録媒体
２１０  投光部
２１１，２０１１  レーザ光源
２１２，２０１２  ＭＥＭＳミラー
２２０  受光素子
２３０  レーザ駆動部
２４０  ミラー駆動部
２４１  駆動信号生成部
２４２  角度検出角度検出部
２５０  飛行時間（距離）測定部
２６０  測定制御部
２７０  同期制御部
２７１  センサクロック生成部
２７２  位相同期部
２７３  オフセット量算出部
２７４  オフセット調整部
２７５  垂直ずれ量補正部
２７９  補正量テーブル
２８０  マスタークロック生成部
２０４０  ミラー駆動回路
２０４１  駆動信号生成回路
２０４２  角度センサ
２０５０  飛行時間測定回路
２０６０  走査制御回路
２０７０  同期制御回路
２０７１  矩形波変換回路
２０７２  位相同期回路
２０７３  位相オフセット量算出回路
２０７４  位相オフセット調整回路
３１０  制御信号生成部
３２０  情報収集部
３３０  駆動周波数決定部
３４０  通信部
３９０  記憶部
【図１】
2018063228.tif 000003
【図２】
2018063228.tif 000004
【図３】
2018063228.tif 000005
【図４Ａ】
2018063228.tif 000006
【図４Ｂ】
2018063228.tif 000007
【図５】
2018063228.tif 000008
【図６】
2018063228.tif 000009
【図７】
2018063228.tif 000010
【図８】
2018063228.tif 000011
【図９】
2018063228.tif 000012
【図１０】
2018063228.tif 000013
【図１１】
2018063228.tif 000014
【図１２】
2018063228.tif 000015
【図１３】
2018063228.tif 000016
【図１４】
2018063228.tif 000017
【図１５】
2018063228.tif 000018
【図１６】
2018063228.tif 000019
【図１７】
2018063228.tif 000020
【図１８】
2018063228.tif 000021
【図１９】
2018063228.tif 000022