(57)【要約】【課題】アイセーフ波長のレーザ光を用いて低コストかつ高精度に距離を測定する。【解決手段】レーザ光源２４からのアイセーフ波長のレーザ光は、ポリゴンミラー２１により走査されつつ測定対象に照射される。測定対象からの光はＧＬＶ３２へと導かれ、ＧＬＶ３２からの回折光が光検出器３５にて受光される。光検出器３５は単一のフォトダイオードを備える。ＧＬＶ３２からは可干渉性の強い光のみが光検出器３５へと導かれるため、レーザ光に由来する光のみが光検出器３５にて検出される。ＧＬＶ３２において回折光を出射する領域を移動することにより、レーザ光に由来する光の入射位置が求められる。これにより、背景光の影響を受けることなく精度よく距離を測定することができる。また、単一のフォトダイオードを用いることにより、アイセーフ波長の光を低コストにて検出することができる。【選択図】図１２
2011203156.tif 000002
【特許請求の範囲】
【請求項１】
距離測定装置であって、
測定対象に向けてレーザ光を照射する光照射部と、
回折格子型の空間光変調器と、
前記測定対象からの光を前記空間光変調器へと導く第１光学系と、
前記空間光変調器の複数の光変調素子を個別に駆動する変調器駆動部と、
光検出器と、
前記空間光変調器からの回折光を前記光検出器へと導く第２光学系と、
前記空間光変調器の状態および前記光検出器からの出力に基づいて、予め定められた測定基準位置から前記測定対象上の前記レーザ光の照射位置までの距離を求める演算部と、
を備えることを特徴とする距離測定装置。
【請求項２】
請求項１に記載の距離測定装置であって、
前記レーザ光の波長が、１．４μｍ以上４．０μｍ以下であることを特徴とする距離測定装置。
【請求項３】
請求項１または２に記載の距離測定装置であって、
前記レーザ光を走査する走査機構をさらに備えることを特徴とする距離測定装置。
【請求項４】
請求項３に記載の距離測定装置であって、
前記走査機構が、
ポリゴンミラーと、
中心軸を中心に前記ポリゴンミラーを回転するモータと、
を備え、
前記ポリゴンミラーの各ミラー面の前記中心軸に対する傾斜角が互いに異なり、前記レーザ光が前記ポリゴンミラーにて反射されることにより、前記レーザ光が前記ポリゴンミラーの回転方向に主走査されるとともに、主走査方向に垂直な副走査方向に副走査されることを特徴とする距離測定装置。
【請求項５】
請求項４に記載の距離測定装置であって、
前記光照射部が、複数のレーザ光源を備え、
前記複数のレーザ光源からの光の照射位置が、前記副走査方向にずれることを特徴とする距離測定装置。
【請求項６】
請求項３ないし５のいずれかに記載の距離測定装置であって、
前記空間光変調器が、所定の配列方向に交互に配列された固定反射面と可動反射面とを備え、
前記固定反射面および前記可動反射面のそれぞれが、ベース面に平行かつ前記配列方向に垂直な帯状であり、
前記固定反射面の前記ベース面からの高さが固定され、前記可動反射面の前記ベース面からの高さが可変であり、
前記測定基準位置から前記測定対象上の１点までの距離を測定する際に、前記変調器駆動部が、前記空間光変調器において前記配列方向に正反射光を出射する状態から、回折光を出射する状態、正反射光を出射する状態へと漸次変化する回折光出射領域を、前記配列方向に沿って移動し、
前記回折光出射領域が前記空間光変調器の一方の端部から他方の端部まで移動する時間が、前記一方の端部から前記他方の端部まで可動反射面を１つずつ一時的に回折光を出射する状態へと変更する際に要する時間より短いことを特徴とする距離測定装置。
【請求項７】
請求項１ないし５のいずれかに記載の距離測定装置であって、
前記空間光変調器が、所定の配列方向に交互に配列された固定反射面と可動反射面とを備え、
前記固定反射面および前記可動反射面のそれぞれが、ベース面に平行かつ前記配列方向に垂直な帯状であり、
前記固定反射面の前記ベース面からの高さが固定され、前記可動反射面の前記ベース面からの高さが可変であることを特徴とする距離測定装置。
【請求項８】
請求項１ないし７のいずれかに記載の距離測定装置であって、
前記演算部が、前記空間光変調器の複数の状態、および、前記複数の状態に対応する前記光検出器からの出力に基づいて、前記空間光変調器上における前記レーザ光に由来する光の光量分布を求め、前記光量分布から前記空間光変調器上における前記レーザ光に由来する光の入射位置を求めることを特徴とする距離測定装置。
【請求項９】
請求項８に記載の距離測定装置であって、
前記演算部が、前記光量分布の重心位置を、前記レーザ光に由来する光の前記入射位置として求めることを特徴とする距離測定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、レーザ光を測定対象に照射することにより測定対象までの距離を測定する技術に関連し、好ましくは、測定結果は２次元の距離情報として取得される。
【背景技術】
【０００２】
従来より、立体的な対象物の形状を把握するために、２次元に配列された距離情報を取得する様々な方法が知られている。代表的な方法として、ステレオ視を利用するもの（例えば、特許文献１参照）やレーザ光を対象物に照射する三角測距を利用するもの（例えば、特許文献２参照）を挙げることができる。
【０００３】
三角測距を利用する場合、レーザ光以外の背景光も受光部に入射する。そこで、ＣＣＤの前にバンドパスフィルタを設けたり、レーザ光がＯＮの状態の時に取得された画像からＯＦＦの状態の時に取得された画像を減算してレーザ光の照射位置を検出する手法が採用される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−１６５４６８号公報
【特許文献２】特開平１０−５４７０８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
レーザ光を対象物に照射してアクティブに距離を測定する技術をマシンビジョンに応用する場合、レーザ光として網膜まで到達しない長い波長の光の使用が望まれる。このような波長は、アイセーフ波長と呼ばれる。一方、ＣＣＤ、ＣＭＯＳ、ＰＳＤ等に通常使われるシリコンは、１０００ｎｍ強までの波長に対してしか感度を有さない。長波長の光に対して感度を有するものとしてブラックシリコンが開発されているが、アイセーフ波長の光の受光素子としては十分とはいえない。そのため、アイセーフ波長の光を受光するには、ＩｎＧａＡｓやＧｅ等の受光素子が必要となる。
【０００６】
三角測距では光の受光位置から距離情報を求めるため、多数の受光素子を配列する必要がある。ところが、アイセーフ波長の光に対して感度を有する素子は高価であり、三角測距を行うには、高価な受光デバイスが必要となる。また、このような多数の素子を有するデバイスでは、デバイスを所望の低温に維持する機構も必要となる。すなわち、アイセーフ波長の光を三角測距に利用する場合、実用的なデバイスは存在しない。
【０００７】
本発明は上記課題に鑑みなされたものであり、アイセーフ波長のレーザ光を用いて低コストかつ高精度に距離を測定することを目的としている。
【課題を解決するための手段】
【０００８】
請求項１に記載の発明は、距離測定装置であって、測定対象に向けてレーザ光を照射する光照射部と、回折格子型の空間光変調器と、前記測定対象からの光を前記空間光変調器へと導く第１光学系と、前記空間光変調器の複数の光変調素子を個別に駆動する変調器駆動部と、光検出器と、前記空間光変調器からの回折光を前記光検出器へと導く第２光学系と、前記空間光変調器の状態および前記光検出器からの出力に基づいて、予め定められた測定基準位置から前記測定対象上の前記レーザ光の照射位置までの距離を求める演算部とを備える。
【０００９】
請求項２に記載の発明は、請求項１に記載の距離測定装置であって、前記レーザ光の波長が、１．４μｍ以上４．０μｍ以下である。
【００１０】
請求項３に記載の発明は、請求項１または２に記載の距離測定装置であって、前記レーザ光を走査する走査機構をさらに備える。
【００１１】
請求項４に記載の発明は、請求項３に記載の距離測定装置であって、前記走査機構が、ポリゴンミラーと、中心軸を中心に前記ポリゴンミラーを回転するモータとを備え、前記ポリゴンミラーの各ミラー面の前記中心軸に対する傾斜角が互いに異なり、前記レーザ光が前記ポリゴンミラーにて反射されることにより、前記レーザ光が前記ポリゴンミラーの回転方向に主走査されるとともに、主走査方向に垂直な副走査方向に副走査される。
【００１２】
請求項５に記載の発明は、請求項４に記載の距離測定装置であって、前記光照射部が、複数のレーザ光源を備え、前記複数のレーザ光源からの光の照射位置が、前記副走査方向にずれる。
【００１３】
請求項６に記載の発明は、請求項３ないし５のいずれかに記載の距離測定装置であって、前記空間光変調器が、所定の配列方向に交互に配列された固定反射面と可動反射面とを備え、前記固定反射面および前記可動反射面のそれぞれが、ベース面に平行かつ前記配列方向に垂直な帯状であり、前記固定反射面の前記ベース面からの高さが固定され、前記可動反射面の前記ベース面からの高さが可変であり、前記測定基準位置から前記測定対象上の１点までの距離を測定する際に、前記変調器駆動部が、前記空間光変調器において前記配列方向に正反射光を出射する状態から、回折光を出射する状態、正反射光を出射する状態へと漸次変化する回折光出射領域を、前記配列方向に沿って移動し、前記回折光出射領域が前記空間光変調器の一方の端部から他方の端部まで移動する時間が、前記一方の端部から前記他方の端部まで可動反射面を１つずつ一時的に回折光を出射する状態へと変更する際に要する時間より短い。
【００１４】
請求項７に記載の発明は、請求項１ないし５のいずれかに記載の距離測定装置であって、前記空間光変調器が、所定の配列方向に交互に配列された固定反射面と可動反射面とを備え、前記固定反射面および前記可動反射面のそれぞれが、ベース面に平行かつ前記配列方向に垂直な帯状であり、前記固定反射面の前記ベース面からの高さが固定され、前記可動反射面の前記ベース面からの高さが可変である。
【００１５】
請求項８に記載の発明は、請求項１ないし７のいずれかに記載の距離測定装置であって、前記演算部が、前記空間光変調器の複数の状態、および、前記複数の状態に対応する前記光検出器からの出力に基づいて、前記空間光変調器上における前記レーザ光に由来する光の光量分布を求め、前記光量分布から前記空間光変調器上における前記レーザ光に由来する光の入射位置を求める。
【００１６】
請求項９に記載の発明は、請求項８に記載の距離測定装置であって、前記演算部が、前記光量分布の重心位置を、前記レーザ光に由来する光の前記入射位置として求める。
【発明の効果】
【００１７】
本発明によれば、高精度に距離を測定することができる。また、請求項２の発明では、アイセーフ波長のレーザ光を用いつつ低コストかつ高精度に距離を測定することができる。
【図面の簡単な説明】
【００１８】
【図１】距離測定装置の概略構成を示す図である。
【図２】光照射部の平面図である。
【図３】光照射部の側面図である。
【図４】受光部の平面図である。
【図５】受光部の側面図である。
【図６】ＧＬＶの拡大図である。
【図７】光変調素子の断面図である。
【図８】光変調素子の断面図である。
【図９】測定対象の例を示す図である。
【図１０】ＧＬＶを示す図である。
【図１１】背景光が除去される様子を示す概念図である。
【図１２】距離測定装置の構成を示すブロック図である。
【図１３】距離測定装置の動作の流れを示す図である。
【図１４】出力分布の取得の流れを示す図である。
【図１５】光量分布を示す図である。
【図１６】光量分布を示す図である。
【図１７】光量分布を示す図である。
【発明を実施するための形態】
【００１９】
図１は、本発明の一の実施の形態に係る距離測定装置１の概略構成を示す図である。距離測定装置１は、例えば、マニピュレータや自走ロボット等のマシンビジョンとして使用される。距離測定装置１は、測定対象９に向けてレーザ光を照射する光照射部１１、測定対象９にて乱反射した反射光の一部を受光する受光部１２、および、測定対象９の形状を示す距離情報を求める距離取得部１３を備える。光照射部１１からは、アイセーフ波長（１．４μｍ以上４．０μｍ以下の波長）のレーザ光が出射され、レーザ光は左右上下に走査される。距離取得部１３では、三角測距を利用して測定対象９上の各位置までの距離を２次元の距離情報（いわゆる、距離画像）として取得する。
【００２０】
図２は光照射部１１の平面図であり、図３は側面図である。光照射部１１は、ポリゴンミラー２１、モータ２２、エンコーダ２３および１０個の半導体レーザ光源２４を備える。ポリゴンミラー２１およびモータ２２は、レーザ光の測定対象９への照射位置を走査する走査機構２１ａである。レーザ光源２４は、例えば、ＩｎＧａＡｓの半導体レーザである。ポリゴンミラー２１は１０角形であり、側面である１０個のミラー面２１１を有する。モータ２２は中心軸２１２を中心にポリゴンミラー２１を回転する。エンコーダ２３は、モータ２２の回転位置を出力する。
【００２１】
レーザ光源２４は、図３に示すように円弧状に配列され、コリメートされたレーザ光の出射方向が水平方向に対して互いに異なる。図３では、レーザ光の傾斜を強調して示している。１０個のミラー面２１１は、中心軸２１２に対する傾斜角が互いに微小に異なる。これにより、例えば、図３の中央のレーザ光源２４からレーザ光が出射される状態でポリゴンミラー２１が１回転すると、図３中に符号Ｒ２を付す範囲の１０本のレーザ光が水平方向に走査されつつ上から下へと順番に出射される。換言すれば、レーザ光がポリゴンミラー２１にて反射されることにより、ポリゴンミラー２１の回転方向に主走査されるとともに、主走査方向に垂直な副走査方向に副走査される。
【００２２】
中央のレーザ光源２４の上に隣接するレーザ光源２４からレーザ光が出射される状態でポリゴンミラー２１が１回転する際には、符号Ｒ３を付す範囲の１０本のレーザ光が上から下へと順番に出射される。下に隣接するレーザ光源２４からレーザ光が出射される状態でポリゴンミラー２１が１回転する際には、符号Ｒ１を付す範囲の１０本のレーザ光が上から下へと順番に出射される。点灯するレーザ光源２４を最も下のものから上へと順番に切り替えることにより、レーザ光は上から漸次下方へと副走査され、やがて、範囲Ｒ１、Ｒ２、Ｒ３を経由してさらに下方へと副走査される。
【００２３】
このように、複数のレーザ光源２４からの光の照射位置が副走査方向にずれていることにより、光を出射するレーザ光源２４を切り替えつつポリゴンミラー２１を回転すると、水平方向に１００回レーザ光が主走査される間に、レーザ光が副走査方向にシフトされる。
【００２４】
図４は受光部１２の平面図であり、図５は側面図である。光軸Ａは、図５に示すように折れ曲がっているが、図４では展開して示している。
【００２５】
受光部１２は、光の入射側から、バンドパスフィルタ３１１、トロイダルレンズ３１、ＧＬＶ（グレーチング・ライト・バルブ）（シリコン・ライト・マシーンズ（サニーベール、カリフォルニア）の登録商標）３２、遮光部３３、集光レンズ３４および光検出器３５を備える。バンドパスフィルタ３１１は、レーザ光の波長の光を透過する。バンドパスフィルタ３１１およびトロイダルレンズ３１は、測定対象９からの光をＧＬＶ３２へと導く第１光学系３０ａの一部である。遮光部３３および集光レンズ３４は、ＧＬＶ３２からの回折光を光検出器３５へと導く第２光学系３０ｂの一部である。
【００２６】
図６は、ＧＬＶ３２の拡大図である。ＧＬＶ３２は反射型かつ回折格子型の空間光変調器であり、複数の光変調素子３２１は半導体装置製造技術を利用して製造される。各光変調素子３２１は、１つの可動リボン３２１ａおよび１つの固定リボン３２１ｂを備える。可動リボン３２１ａの上面および固定リボン３２１ｂの上面は、それぞれ背後のベース面に平行かつ光変調素子３２１の配列方向（以下、「素子配列方向」という。）に垂直な帯状の可動反射面３２２ａおよび固定反射面３２２ｂである。ＧＬＶ３２では、可動反射面３２２ａと固定反射面３２２ｂとが素子配列方向に交互に配列される。
【００２７】
可動リボン３２１ａは、背後のベース面に対して昇降移動可能であり、可動反射面３２２ａのベース面からの高さは可変である。固定リボン３２１ｂはベース面に対して固定され、固定反射面３２２ｂのベース面からの高さも固定される。可動リボン３２１ａおよび固定リボン３２１ｂの表面は、アイセーフ波長の光を反射するようにコーティングされている。
【００２８】
図７および図８は、可動リボン３２１ａおよび固定リボン３２１ｂに対して垂直な面における光変調素子３２１の断面を示す図である。図７に示すように可動リボン３２１ａおよび固定リボン３２１ｂがベース面３２１ｃに対して同じ高さに位置する（すなわち、可動リボン３２１ａが撓まない）場合には、光変調素子３２１の表面は面一となり、入射光Ｌ１の正反射光が０次回折光Ｌ２として導出される。一方、図８に示すように可動リボン３２１ａが固定リボン３２１ｂよりもベース面３２１ｃ側に撓む場合には、可動リボン３２１ａが回折格子の溝の底面となり、（＋１）次回折光および（−１）次回折光である１次回折光Ｌ３（正確には、１次以上の高次回折光も含む非０次回折光）が光変調素子３２１から導出され、０次回折光Ｌ２は消滅する。
【００２９】
図４および図５に示すトロイダルレンズ３１は、素子配列方向に関しては測定対象９の像を結び、素子配列方向および光軸Ａに垂直な方向に関しては測定対象９からの光を集光する。換言すれば、素子配列方向に沿って直線状に圧縮した測定対象９の像を、ＧＬＶ３２上に形成する。図９は、受光部１２から測定対象９を見た様子の例を示す図である。図９において、符号９１１は、レーザ光の照射位置を示す。図１０に示すように、ＧＬＶ３２上には、図９が上下方向に圧縮され、レーザ光の反射光が微小な領域９２１に集光され、測定対象９からの他の自然光（正確には、バンドパスフィルタ３１１を通過した自然光であり、以下、「背景光」という。）は線状の領域９２２に導かれる。なお、図１０では光変調素子３２１のリボンの図示を省略している。
【００３０】
ここで、光変調素子３２１の可動リボン３２１ａが撓んでいない状態では、入射する光は遮光部３３に向けて反射される。また、背景光は可干渉性が弱いため、可動リボン３２１ａが撓んだ状態においても、背景光は大部分が正反射され、遮光部３３へと導かれる。すなわち、背景光は、光変調素子３２１の状態に関わらず、遮光部３３へと導かれる。
【００３１】
これに対し、レーザ光は、測定対象９上にて散乱されることにより可干渉性が多少低下するが、背景光に比べて可干渉性が強いため、可動リボン３２１ａが撓む位置にて回折する。そして、遮光部３３の左右両側を通り抜けて集光レンズ３４へと導かれ、光検出器３５上に集光される。したがって、図１０における領域９２１に重なる可動リボン３２１ａが撓んでいる状態の時にのみ、光検出器３５にて光が検出されることとなる。換言すれば、ＧＬＶ３２により背景光を除去することにより、実質的に、受光部１２から測定対象９を見た様子が、図９に示す状態から図１１に示す状態となり、照射位置９１１のみが見える。
【００３２】
光検出器３５は、Ｇｅから製造された単一の素子であるフォトダイオードであり、安価である。アイセーフ波長の光に対して感度を有するのであれば、光検出器３５は他の材料（例えば、ＩｎＧａＡｓ、ＧａＡｓ）から製造されたものであってもよい。なお、ここでの「単一の素子」とは、受光する光の強度（光量）を検出する機能を有するが、受光位置を検出する機能を有さないことを指す。
【００３３】
距離測定装置１では、上記原理によりＧＬＶ３２上のレーザ光の集光位置を特定し、三角測距を利用して光照射部１１から照射位置９１１までの距離が求められる。距離測定の基準となる測定基準位置は光照射部１１には限定されず、受光部１２であってもよく、他の位置であってもよい。
【００３４】
図１２は、距離測定装置１の構成の詳細を示すブロック図である。光照射部１１では、レーザ光源２４はレーザドライバ２４１に接続され、モータ２２はモータドライバ２２１に接続される。レーザ光源２４はレーザドライバ２４１の制御によりパルス発光する。エンコーダ２３は回転位置カウンタ２３１に接続される。エンコーダ２３からの信号に基づいて、回転位置カウンタ２３１は、ポリゴンミラー２１の回転位置を示す信号を生成する。
【００３５】
受光部１２では、ＧＬＶ３２はＧＬＶドライバ３２３に接続され、ＧＬＶドライバ３２３は、正弦波テーブル３２５を記憶するメモリ３２４に接続される。ＧＬＶドライバ３２３は、複数の光変調素子３２１を個別に駆動する変調器駆動部であり、各光変調素子３２１の可動リボン３２１ａの撓み量を制御する。光検出器３５は、レジスタ３６に接続され、レジスタ３６は入射位置取得部３７に接続される。入射位置取得部３７は後述する方法にてレーザ光の反射光がＧＬＶ３２に入射する位置を求める。
【００３６】
距離取得部１３は、ＣＰＵ４１、クロック発生部４２、メモリ４３およびデュアルアクセスメモリ４４を備える。入射位置取得部３７および距離取得部１３が、距離測定装置１の演算部１３ａとして機能する。
【００３７】
クロック発生部４２からのクロック信号は、ＣＰＵ４１、レーザドライバ２４１およびモータドライバ２２１に入力され、これらの動作が同期する。回転位置カウンタ２３１からの信号はＣＰＵ４１およびＧＬＶドライバ３２３に入力され、ＣＰＵ４１における演算とＧＬＶ３２の動作とが同期する。メモリ４３には距離を求めるための距離ＬＵＴ（ルックアップテーブル）４３１が記憶される。デュアルアクセスメモリ４４は、ＣＰＵ４１からの演算結果を２次元距離情報４４１として記憶する。２次元距離情報４４１は、マニピュレータや他のアクチュエータ等を制御するロボット制御部８から参照される。２次元距離情報４４１は、例えば、各測定位置の距離情報を８ビットにて表す。
【００３８】
図１３は、距離測定装置１の動作の流れを示す図である。最初に、距離測定装置１の基本動作について説明する。なお、この基本動作では正弦波テーブル３２５は使用されない。
【００３９】
初期動作（ステップＳ１１）では、モータ２２の回転が開始され、回転位置カウンタ２３１からの信号に従ってポリゴンミラー２１が一定の速度にて回転する。また、レーザ光源２４のパルス発光も開始される。その他、各種設定値の初期化や準備等も行われる。図１３では初期動作に対応する終了動作の記載を省略している。
【００４０】
次に、ＧＬＶ３２上の位置に関連づけられた光検出器３５からの出力分布が取得される（ステップＳ１２）。後述するように、光検出器３５の出力分布は、ＧＬＶ３２上におけるレーザ光に由来する光（以下、単に「レーザ光」という。）の光量分布を反映した分布となる。出力分布の取得では、図１４に示すように、光変調素子３２１の位置（すなわち、アドレス）を示すカウンタ値（以下、単に「カウンタ値」という）が初期値１にリセットされる（ステップＳ２１）。なお、説明の都合上、アドレスは１から始まるものとする。そして、回転位置カウンタ２３１からの信号に基づいて、レーザ光を所望の方向へと出射する状態になった時点で（ステップＳ２２）、レーザ光源２４からの光の出射が開始される（ステップＳ２３）。
【００４１】
ＧＬＶ３２が駆動されると、カウンタ値に従ってアドレス１の光変調素子３２１の可動リボン３２１ａが撓み、この光変調素子３２１のみが非０次（主として±１次）回折光を出射する状態となる。光検出器３５からの出力は、ＧＬＶドライバ３２３からの信号に従ってレジスタ３６のアドレス１に記憶される（ステップＳ２５）。
【００４２】
次に、カウンタ値に１が加算され（ステップＳ２６）、ステップＳ２４〜Ｓ２６が実行される。これにより、アドレス２の光変調素子３２１の可動リボン３２１ａのみが撓んだ状態における光検出器３５からの出力がレジスタ３６のアドレス２に記憶される。ステップＳ２４〜Ｓ２６は、光変調素子３２１の数だけ繰り返される（ステップＳ２７）。その結果、ＧＬＶ３２の一方端から他方端に向かって各光変調素子３２１が順番に回折光出射状態となった場合の光検出器３５からの出力がレジスタ３６の各アドレスに記憶される。
【００４３】
既述のように、回折光出射状態の光変調素子３２１からは、レーザ光のみが光検出器３５へと導かれるため、レジスタ３６に記憶された情報は、実質的に、ＧＬＶ３２上におけるレーザ光の光量分布を示すこととなる。出力分布が取得されると、レーザ光の出射は停止される（ステップＳ２８）。上記動作は非常に短時間に行われ、レーザ光源２４の発光は短時間のパルス発光である。
【００４４】
１回の出力分布の取得が完了すると、入射位置取得部３７によりＧＬＶ３２上におけるレーザ光の入射位置が求められる（ステップＳ１３）。ここでは、最大出力値が記憶されているレジスタ３６のアドレスが、入射位置として求められる。入射位置の情報は、ＣＰＵ４１へと送られる。
【００４５】
メモリ４３に準備されている距離ＬＵＴ４３１には、光照射部１１からのレーザ光の出射方向と、レーザ光のＧＬＶ３２への入射位置とに関連づけて、測定基準位置から測定対象９上の照射位置までの距離が格納されている。ＣＰＵ４１は、回転位置カウンタ２３１からの信号、および、パルス発光したレーザ光源２４の番号からレーザ光の出射方向を特定し、出射方向とＧＬＶ３２上の入射位置とから距離ＬＵＴ４３１を参照して、測定基準位置から照射位置までの距離を求める（ステップＳ１４）。
【００４６】
求められた距離情報は、デュアルアクセスメモリ４４内のレーザ光の出射方向に対応するアドレスに記憶される。なお、既に距離情報が記憶されている場合は、この距離情報が更新される（ステップＳ１５）。
【００４７】
次に、ステップＳ１２へと戻り、ステップＳ２１〜Ｓ２８が繰り返される。すなわち、レーザ光の出射方向が次の距離情報を取得すべき方向に達すると（ステップＳ２２）、レーザ光が出射され、可動リボン３２１ａを順次撓ませて光検出器３５からの出力分布が取得される（ステップＳ２３〜Ｓ２８）。そして、レーザ光の入射位置および距離情報が順次求められてデュアルアクセスメモリ４４に記憶される（ステップＳ１３〜Ｓ１５）。
【００４８】
上記動作は、レーザ光の１回の主走査の間に１００回行われる。これにより、測定対象９上の１００個の照射位置における測定基準位置からの距離がデュアルアクセスメモリ４４に記憶される。ポリゴンミラー２１が１回転すると、主走査は１０回行われる。その後、使用するレーザ光源２４を切り替えて１０回の主走査が繰り返される。１００回の主走査が行われると、最初の主走査へと戻る。上記動作により、測定対象９上の１００×１００個の照射位置における測定基準位置からの距離が、２次元距離情報４４１としてデュアルアクセスメモリ４４に記憶される。
【００４９】
２次元距離情報４４１の取得は繰り返され、２次元距離情報４４１はリアルタイムに更新される。ロボット制御部８は、デュアルアクセスメモリ４４にアクセスすることにより、その時点での２次元距離情報４４１を参照することができる。これにより、測定対象９に含まれる物体の移動や形状の変化にリアルタイムに追従してロボットを制御することが可能となる。
【００５０】
以上に説明したように、距離測定装置１では、ＧＬＶ３２を用いることにより背景光を実質的に除去しつつレーザ光に由来する光を受光することができ、距離測定の精度を向上することができる。バンドパスフィルタ３１１を設けることにより、不要な自然光のＧＬＶ３２への入射が低減され、さらに測定精度が向上される。また、単一のフォトダイオードを光検出器３５として用いることができ、安価に距離測定装置１を製造することができる。特に、アイセーフ波長のレーザ光に対して感度を有する素子として単一のフォトダイオードを用いることにより、距離測定装置１の製造コストを大幅に削減することができる。
【００５１】
レーザ光は左右上下に走査されることにより、広範囲の距離測定を行うことができる。このような走査は、面倒れ角が異なるミラー面を有するポリゴンミラー２１を用いることにより、さらには、複数のレーザ光源２４を設けることにより、容易に実現される。また、広範囲に亘るレーザ光の走査が行われる場合であっても、トロイダルレンズ３１を設けることにより、広範囲から導かれるレーザ光を１つのＧＬＶ３２に導くことが実現される。トロイダルレンズ３１に代えてシリンドリカルレンズを含む複数のレンズが用いられてもよい。上記作用効果は、以下に説明する他の動作例においても同様である。
【００５２】
上記動作では、光検出器３５の出力分布を１回取得するために要する時間は、１つの可動リボン３２１ａが撓みを開始してから元の状態に戻るまでに要する時間に光変調素子３２１の数を乗じたものとなる。そのため、光変調素子３２１の数が多い場合、適切な周期で２次元距離情報４４１を更新することができない。次に、２次元距離情報４４１を高速に取得する他の動作例について説明する。
【００５３】
他の動作例では、１つの可動リボン３２１ａが１回の撓み動作を完了する前に、次の可動リボン３２１ａの撓み動作が開始される。これにより、１つの可動リボン３２１ａが撓みを開始してから元の状態に戻るまでに要する時間に光変調素子３２１の数を乗じた時間よりも短時間にて、１回の出力分布が取得される。
【００５４】
ＧＬＶドライバ３２３には、可動リボン３２１ａとベース面３２１ｃとの間に与えられる電位差を記憶するレジスタが設けられる。他の動作例では、ステップＳ２４の直前に、正弦波テーブル３２５の値がＧＬＶドライバ３２３のレジスタに記憶される。具体的には、アドレスｉに対応するレジスタに、数１にて示す値が記憶される。数１において、ｉｍａｘは光変調素子３２１の数であり、例えば、５１２である。ｙｍａｘは可動リボン３２１ａに付与される電位差の最大値である。
【００５５】
（数１）
（ｙｍａｘ／２）ｃｏｓ（ｉ・２π／ｉｍａｘ）＋ｙｍａｘ／２
【００５６】
これにより、複数の光変調素子３２１には、正弦波の１周期分の電位差が割り当てられる。そして、ステップＳ２５にて、光検出器３５からの出力がレジスタ３６のアドレス１に記憶される。
【００５７】
光検出器３５の出力が１回取得され、ステップＳ２４に戻ってＧＬＶ３２の次の駆動が行われる際には、ＧＬＶドライバ３２３に記憶される値が素子配列方向にシフトされる。すなわち、数１においてｉに（ｉ−１）が代入され、正弦波の１周期分の電位差が素子配列方向にシフトされる。ただし、（ｉ−１）が０以下の場合は、ｉｍａｘが加算される。ステップＳ２５では、光検出器３５からの出力がレジスタ３６のアドレス２に記憶される。
【００５８】
その後、電位差の分布を素子配列方向にシフトさせつつステップＳ２４〜Ｓ２６が繰り返される。これにより、正弦波の電位差分布が光変調素子３２１の配列を通過し、レジスタ３６には、アドレスに対応づけられた光検出器３５からの出力分布が記憶される（ステップＳ２７）。換言すれば、測定基準位置から測定対象９上の１点までの距離を測定する際に、ＧＬＶドライバ３２３が、ＧＬＶ３２上において、素子配列方向に正反射光を出射する状態から、回折光を出射する状態、正反射光を出射する状態へと漸次変化する回折光出射領域を、素子配列方向に沿って移動させ、この期間における光検出器３５からの出力分布が取得される。
【００５９】
ＧＬＶ３２に正弦波状の電位差分布を与える場合、出力分布はアドレスに対して緩やかに変化するものとなる。また、ＧＬＶ３２では両側の端部が同時に回折光出射状態となることから、ＧＬＶ３２の端に偏ってレーザ光が入射する場合は、レーザ光の入射位置を光検出器３５の出力から特定することができない。そこで、入射位置取得部３７では、ＧＬＶ３２上におけるレーザ光の光量分布を求める演算が行われる。
【００６０】
アドレスｉの光変調素子３２１に入射するレーザ光の光量をｆｉとすると、求めるべき光量分布ＦＦは数２で表現される。数２においてＴは転置行列を示す。
【００６１】
（数２）
ＦＦ＝［ｆ１，ｆ２，ｆ３，・・・，ｆｉｍａｘ］Ｔ
【００６２】
また、時刻ｊにおけるアドレスｉの光変調素子３２１において、入射するレーザ光に対する回折光の割合（以下、単に「反射率」という。）をｒｊｉとし、ＧＬＶ３２上における反射率の分布Ｒｊを数３にて表す。なお、Ｒｊは、予め測定により取得される。以下の説明を簡素化するために、ｊは１以上ｉｍａｘ以下の整数であり、時刻ｊにて光変調素子３２１に、数１のｉに（ｉ−ｊ＋１）を代入した電位差が与えられるものとする。
【００６３】
（数３）
Ｒｊ＝［ｒｊ１，ｒｊ２，ｒｊ３，・・・，ｒｊｉｍａｘ］
【００６４】
時刻ｊにて光検出器３５に入射する光の量をｓｊとすると、ｓｊは数４に示すものとなる。
【００６５】
（数４）
ｓｊ＝Ｒｊ・ＦＦ
＝ｒｊ１・ｆ１＋ｒｊ２・ｆ２＋ｒｊ３・ｆ３＋・・・
＋ｒｊｉｍａｘ・ｆｉｍａｘ
【００６６】
レジスタ３６に記憶される出力分布ＳＳは、数５にて表されることから、ＳＳは数６にて表される。ただし、数６におけるＲＲは、数７にて示される。
【００６７】
（数５）
ＳＳ＝［ｓ１，ｓ２，ｓ３，・・・，ｓｉｍａｘ］Ｔ
【００６８】
（数６）
ＳＳ＝ＲＲ・ＦＦ
【００６９】
【数７】
2011203156.tif 000003
【００７０】
したがって、ＦＦは数８により求められる。
【００７１】
（数８）
ＦＦ＝ＲＲ−１・ＳＳ
【００７２】
以上の原理に基づいて、入射位置取得部３７では、予め準備されている反射率分布ＲＲとステップＳ１２にて取得された出力分布ＳＳとに基づいて、ＧＬＶ３２上におけるレーザ光の光量分布ＦＦが求められる。そして、光量が最大となるアドレスが、レーザ光の入射位置として特定される（ステップＳ１３）。なお、上記から明らかなように、ＦＦが解かれるためには数４が互いに一次独立な方程式、つまり、ＲＲのランクがｉｍａｘであればよく、この条件を満たす限り、ＧＬＶ３２のリボンの駆動波形は正弦波には限定されず、任意の波形でよい。
【００７３】
ステップＳ１３では、光量分布ＦＦの重心位置を求めることによりさらに精度よくレーザ光の入射位置が求められることが好ましい。この場合、まず、図１５に示す光量分布が取得されると、図１６に示すように、予め定められたしきい値以下の部分がノイズ成分とみなされて消去される。次に、数９にて総光量Ｐｔを求め、数１０により入射位置ｘが求められる。
【００７４】
（数９）
Ｐｔ＝ｆ１＋ｆ２＋・・・＋ｆｉｍａｘ
【００７５】
（数１０）
ｘ＝（ｆ１・１＋ｆ２・２＋・・・＋ｆｉｍａｘ・ｉｍａｘ）／Ｐｔ
【００７６】
上記処理により、入射位置は光変調素子３２１のピッチ以上の精度にて求められる。例えば、図１７に示す光量分布の場合、入射位置が３１．０４７６と求められる。
【００７７】
入射位置が求められると、ステップＳ１４，Ｓ１５が実行されることにより、距離情報がデュアルアクセスメモリ４４に書き込まれる。また、ステップＳ１２〜Ｓ１５が繰り返されることにより、２次元距離情報４４１が更新される。
【００７８】
上記動作では、時刻１から時刻ｉｍａｘまでの時間は、１つの可動リボン３２１ａが正反射光を出射する状態から回折光を出射する状態へと変化し、正反射光を出射する状態へと戻るのに要する最短時間に近づけることができる。換言すれば、単位時間当たりに実行できる距離測定の回数を、可動リボン３２１ａの共振周波数に近づけることができる。その結果、非常に高速に２次元距離情報４４１を更新することが実現される。例えば、可動リボン３２１ａの共振周波数が３００ｋＨｚであり、１００×１００画素の２次元距離情報４４１（距離画像）を取得する場合、フレームレートは、３０Ｈｚ（＝３０００００／１００／１００）に近づけることができ、マシンビジョンとして十分な周波数が得られる。
【００７９】
以上、本発明の実施の形態について説明してきたが、本発明は上記実施の形態には限定されず、様々な変形が可能である。
【００８０】
上記他の動作例では、ＧＬＶ３２上の全体に亘って正弦波状の撓みが分布するが、正弦波状の撓み分布は複数の光変調素子３２１の一部のみに形成され、この撓み分布がＧＬＶ３２の一方の端部から他方の端部に向かって移動してもよい。また、撓み分布は撓み量が漸次変化するのであれば、正弦波状には限定されない。すなわち、測定基準位置から測定対象９上の１点までの距離を測定する際に、ＧＬＶドライバ３２３が、ＧＬＶ３２上において、素子配列方向に正反射光を出射する状態から回折光を出射する状態へと漸次変化し、正反射光を出射する状態へと漸次戻る回折光出射領域を、素子配列方向に沿って移動することにより、数８にて使用する出力分布ＳＳを取得することができる。
【００８１】
また、１つの可動リボン３２１ａの１回の撓み動作が完了する前に他の可動リボン３２１ａの撓み動作を開始することにより、回折光出射領域がＧＬＶ３２の一方の端部から他方の端部まで移動する時間が、一方の端部から他方の端部まで可動リボン３２１ａを１つずつ一時的に回折光を出射する状態へと変更する際に要する時間よりも短くなり、短時間にて各照射位置に対する測定を完了することができる。
【００８２】
なお、行列ＲＲの逆行列を求めて数８を導くことができるのであれば、撓み量は素子配列方向に沿って漸次変化するものでなくてもよい。例えば、連続して並ぶ複数個の可動リボン３２１ａが同時に撓んでもよく、不連続に並ぶ複数個の可動リボン３２１ａが互いにずれたタイミングで撓んでもよい。一般的には、ＧＬＶ３２の複数の状態、および、この複数の状態に対応する光検出器３５からの出力に基づいて、ＧＬＶ３２上におけるレーザ光に由来する光の光量分布を求めることができる。
【００８３】
以上のように、演算部１３ａでは、様々な手法によりＧＬＶ３２の状態および光検出器３５からの出力に基づいて、測定基準位置から測定対象９上の照射位置までの距離が求められてよい。
【００８４】
駆動の単位となる１つの光変調素子３２１は、複数対の可動リボン３２１ａおよび固定リボン３２１ｂであってもよい。この場合、駆動の単位となる１組の可動反射面が上記実施の形態にて説明した１つの可動反射面３２２ａに対応する。ＧＬＶ３２は、可動リボン３２１ａが撓んでいない状態で可動反射面３２２ａと固定反射面３２２ｂとのベース面３２１ｃからの高さが異なるものであってもよい。また、固定リボン３２１ｂを設けずに可動リボン３２１ａのみを設けてベース面３２１ｃに固定リボン３２１ｂの機能を代替させて光変調素子３２１を構成してもよい。全てのリボンを可動リボン３２１ａとして、隣接する可動リボン３２１ａの相互の撓み方向を逆にして光路差を設定するようにしてもよい。可動リボン３２１ａが撓んでいない状態で回折光が出射されるものであってもよい。さらに、他のタイプの回折格子型空間光変調器であってもよい。さらにまた、ＧＬＶ３２の素子配列方向を上述の実施の形態のような一次元に構成する代わりに二次元に構成してもよい。その場合、前段に設けられるトロイダルレンズ３１に代えて、球面レンズを設けてもよい。
【００８５】
走査機構２１ａでは、複数のレーザ光源２４に代えて、ガルバノミラー等によりレーザ光の副走査が行われてもよい。さらに、ポリゴンミラー２１以外の機構により、主走査が行われてもよい。レーザ光源２４は連続発振されてもよく、レーザ光は、アイセーフ波長として通常理解される波長よりも長い波長の光であってもよい。逆に、用途によってはアイセーフ波長よりも短い波長のレーザ光が使用されてもよい。さらに、距離測定装置１は、走査機構２１ａを省略して１つの測定点までの距離を測定する装置であってもよい。
【符号の説明】
【００８６】
１    距離測定装置
９    測定対象
１１    光照射部
１３ａ    演算部と、
２１    ポリゴンミラー
２１ａ    走査機構
２２    モータ
２４    レーザ光源
３０ａ    第１光学系
３０ｂ    第２光学系
３２    ＧＬＶ
３５    光検出器
３２１    光変調素子
３２１ｃ    ベース面
３２２ａ    可動反射面
３２２ｂ    固定反射面
３２３  ＧＬＶドライバ
Ｊ１    中心軸
【図１】
2011203156.tif 000004
【図２】
2011203156.tif 000005
【図３】
2011203156.tif 000006
【図４】
2011203156.tif 000007
【図５】
2011203156.tif 000008
【図６】
2011203156.tif 000009
【図７】
2011203156.tif 000010
【図８】
2011203156.tif 000011
【図９】
2011203156.tif 000012
【図１０】
2011203156.tif 000013
【図１１】
2011203156.tif 000014
【図１２】
2011203156.tif 000015
【図１３】
2011203156.tif 000016
【図１４】
2011203156.tif 000017
【図１５】
2011203156.tif 000018
【図１６】
2011203156.tif 000019
【図１７】
2011203156.tif 000020